]> arthur.barton.de Git - bup.git/commitdiff
rm: convert to internal command
authorRob Browning <rlb@defaultvalue.org>
Mon, 8 Feb 2021 03:50:55 +0000 (21:50 -0600)
committerRob Browning <rlb@defaultvalue.org>
Sat, 6 Mar 2021 18:29:38 +0000 (12:29 -0600)
Signed-off-by: Rob Browning <rlb@defaultvalue.org>
lib/bup/cmd/rm.py
lib/cmd/bup

index 72f8fb97bca96d9d1cae7c455400929eb57fe302..75d35a2af9f2b3c6474f9d5ccdbd33cbeae140fb 100755 (executable)
@@ -1,26 +1,6 @@
-#!/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 bup import compat
 from bup.compat import argv_bytes
 from bup.git import check_repo_or_die
 from bup.options import Options
@@ -36,19 +16,18 @@ v,verbose    increase verbosity (can be specified multiple times)
 unsafe       use the command even though it may be DANGEROUS
 """
 
-handle_ctrl_c()
-
-o = Options(optspec)
-opt, flags, extra = o.parse(compat.argv[1:])
+def main(argv):
+    o = Options(optspec)
+    opt, flags, extra = o.parse_bytes(argv[1:])
 
-if not opt.unsafe:
-    o.fatal('refusing to run dangerous, experimental command without --unsafe')
+    if not opt.unsafe:
+        o.fatal('refusing to run dangerous, experimental command without --unsafe')
 
-if len(extra) < 1:
-    o.fatal('no paths specified')
+    if len(extra) < 1:
+        o.fatal('no paths specified')
 
-check_repo_or_die()
-repo = LocalRepo()
-bup_rm(repo, [argv_bytes(x) for x in extra],
-       compression=opt.compress, verbosity=opt.verbose)
-die_if_errors()
+    check_repo_or_die()
+    repo = LocalRepo()
+    bup_rm(repo, [argv_bytes(x) for x in extra],
+           compression=opt.compress, verbosity=opt.verbose)
+    die_if_errors()
index 2d24e68b6e327f359d76578494a9993d49135472..627785375981d266d286ff1e2d3a64fd2f2422b0 100755 (executable)
@@ -192,6 +192,7 @@ try:
                            b'join',
                            b'ls',
                            b'meta',
+                           b'rm',
                            b'version',
                            b'xstat'):
         raise ModuleNotFoundError()