diff options
author | Ansgar Burchardt <ansgar@debian.org> | 2016-09-20 21:52:31 (GMT) |
---|---|---|
committer | Ansgar Burchardt <ansgar@debian.org> | 2016-10-18 22:01:48 (GMT) |
commit | 316b677defc78f8e4410d047bc1e1a314abcd666 (patch) | |
tree | a42c06836f740442bdfbc8b5d0bd8e5f59be2826 /scripts/sid | |
parent | 51a5fa009aaa4f9703b770bff9b613b06597cfeb (diff) | |
download | debootstrap-316b677defc78f8e4410d047bc1e1a314abcd666.zip debootstrap-316b677defc78f8e4410d047bc1e1a314abcd666.tar.gz debootstrap-316b677defc78f8e4410d047bc1e1a314abcd666.tar.bz2 |
Only use `tar -k` for new releases
In old releases, notably in Debian 6 (Squeeze), multiple packages ship
the same files using diversions (e.g. bash/dash). As debootstrap
naively extracts packages without implementing diversions itself, it
relies on tar replacing the files without an error.
Ideally we could use `tar --keep-directory-symlink`, but this is
likely not portable enough. So continue to use `tar -k`, but only for
future releases. Note that this requires no file conflicts among
packages debootstrap installs (which is a good idea anyway as they
might be extracted in the wrong order).
Bug: https://bugs.debian.org/838388
Diffstat (limited to '')
-rw-r--r-- | scripts/sid | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/scripts/sid b/scripts/sid index b359d3b..511cebf 100644 --- a/scripts/sid +++ b/scripts/sid @@ -43,7 +43,10 @@ work_out_debs () { first_stage_install () { case "$CODENAME" in etch|etch-m68k|jessie|jessie-kfreebsd|lenny|squeeze|wheezy) ;; - *) setup_merged_usr ;; + *) + EXTRACT_DEB_TAR_OPTIONS="$EXTRACT_DEB_TAR_OPTIONS -k" + setup_merged_usr + ;; esac extract $required |