-#!/bin/sh
-"""": # -*-python-*-
-# https://sourceware.org/bugzilla/show_bug.cgi?id=26034
-export "BUP_ARGV_0"="$0"
-arg_i=1
-for arg in "$@"; do
- export "BUP_ARGV_${arg_i}"="$arg"
- shift
- arg_i=$((arg_i + 1))
-done
-# Here to end of preamble replaced during install
-bup_python="$(dirname "$0")/../../../config/bin/python" || exit $?
-exec "$bup_python" "$0"
-"""
-# end of bup preamble
-from __future__ import absolute_import
-
-# Intentionally replace the dirname "$0" that python prepends
-import os, sys
-sys.path[0] = os.path.dirname(os.path.realpath(__file__)) + '/../..'
+from __future__ import absolute_import, print_function
+import os.path, sys
from bup import compat, git, ls
from bup.io import byte_stream
+def main(argv):
+ git.check_repo_or_die()
-git.check_repo_or_die()
-
-sys.stdout.flush()
-out = byte_stream(sys.stdout)
-# Check out lib/bup/ls.py for the opt spec
-rc = ls.via_cmdline(compat.argv[1:], out=out)
-sys.exit(rc)
+ sys.stdout.flush()
+ out = byte_stream(sys.stdout)
+ # Check out lib/bup/ls.py for the opt spec
+ rc = ls.via_cmdline(argv[1:], out=out)
+ sys.exit(rc)
"""
if onabort:
- opt, flags, extra = Options(optspec, onabort=onabort).parse(args)
+ opt, flags, extra = Options(optspec, onabort=onabort).parse_bytes(args)
else:
- opt, flags, extra = Options(optspec).parse(args)
+ opt, flags, extra = Options(optspec).parse_bytes(args)
opt.paths = [argv_bytes(x) for x in extra] or (b'/',)
opt.long_listing = opt.l
usage()
try:
- if subcmd_name not in (b'cat-file',):
+ if subcmd_name not in (b'cat-file',
+ b'ls'):
raise ModuleNotFoundError()
cmd_module = import_module('bup.cmd.'
+ subcmd_name.decode('ascii').replace('-', '_'))
def do_ls(repo, args, out):
try:
- opt = ls.opts_from_cmdline([fsdecode(arg) for arg in args],
- onabort=OptionError)
+ opt = ls.opts_from_cmdline(args, onabort=OptionError)
except OptionError as e:
log('error: %s' % e)
return