BF: add --force-local ONLY to tar invocation

bsdtar apparently does not provide it, and I am not aware of the
other ones
This commit is contained in:
Yaroslav Halchenko 2018-09-11 23:31:49 -04:00
parent cd8d80c314
commit c412699f66
1 changed files with 5 additions and 3 deletions

View File

@ -19,14 +19,14 @@ import os
def extract_tar (archive, compression, cmd, verbosity, interactive, outdir): def extract_tar (archive, compression, cmd, verbosity, interactive, outdir):
"""Extract a TAR archive.""" """Extract a TAR archive."""
cmdlist = [cmd, '--force-local', '--extract'] cmdlist = [cmd, '--extract']
add_tar_opts(cmdlist, compression, verbosity) add_tar_opts(cmdlist, compression, verbosity)
cmdlist.extend(["--file", archive, '--directory', outdir]) cmdlist.extend(["--file", archive, '--directory', outdir])
return cmdlist return cmdlist
def list_tar (archive, compression, cmd, verbosity, interactive): def list_tar (archive, compression, cmd, verbosity, interactive):
"""List a TAR archive.""" """List a TAR archive."""
cmdlist = [cmd, '--force-local', '--list'] cmdlist = [cmd, '--list']
add_tar_opts(cmdlist, compression, verbosity) add_tar_opts(cmdlist, compression, verbosity)
cmdlist.extend(["--file", archive]) cmdlist.extend(["--file", archive])
return cmdlist return cmdlist
@ -35,7 +35,7 @@ test_tar = list_tar
def create_tar (archive, compression, cmd, verbosity, interactive, filenames): def create_tar (archive, compression, cmd, verbosity, interactive, filenames):
"""Create a TAR archive.""" """Create a TAR archive."""
cmdlist = [cmd, '--force-local', '--create'] cmdlist = [cmd, '--create']
add_tar_opts(cmdlist, compression, verbosity) add_tar_opts(cmdlist, compression, verbosity)
cmdlist.extend(["--file", archive, '--']) cmdlist.extend(["--file", archive, '--'])
cmdlist.extend(filenames) cmdlist.extend(filenames)
@ -60,3 +60,5 @@ def add_tar_opts (cmdlist, compression, verbosity):
cmdlist.extend(['--use-compress-program', program]) cmdlist.extend(['--use-compress-program', program])
if verbosity > 1: if verbosity > 1:
cmdlist.append('--verbose') cmdlist.append('--verbose')
if progname == 'tar':
cmdlist.append('--force-local')