summaryrefslogtreecommitdiffstats
path: root/functions
diff options
context:
space:
mode:
authorOtavio Salvador <otavio@debian.org>2009-11-16 17:21:38 (GMT)
committerOtavio Salvador <otavio@debian.org>2009-11-16 17:21:38 (GMT)
commit9b211870ed35fcb9ec64812b28b2ca0220700807 (patch)
tree22bcf922f83cbdfd6b3be652e56b26dd81070f1c /functions
parent5132a55b7eb6224fd0a96e3eee048cf12e03ff2e (diff)
downloaddebootstrap-9b211870ed35fcb9ec64812b28b2ca0220700807.zip
debootstrap-9b211870ed35fcb9ec64812b28b2ca0220700807.tar.gz
debootstrap-9b211870ed35fcb9ec64812b28b2ca0220700807.tar.bz2
Apply patch from Clint Adams <schizo@debian.org> to add support for
gz/bz2/xz data.tar (closes: #458663). r61323
Diffstat (limited to 'functions')
-rw-r--r--functions10
1 files changed, 8 insertions, 2 deletions
diff --git a/functions b/functions
index 1e52dd1..1427274 100644
--- a/functions
+++ b/functions
@@ -719,13 +719,19 @@ get_debs () {
extract () { (
cd "$TARGET"
- local p=0
+ local p=0 tarball
for pkg in $(debfor "$@"); do
p="$(($p + 1))"
progress "$p" "$#" EXTRACTPKGS "Extracting packages"
packagename="$(echo "$pkg" | sed 's,^.*/,,;s,_.*$,,')"
info EXTRACTING "Extracting %s..." "$packagename"
- ar -p "./$pkg" data.tar.gz | zcat | tar -xf -
+ tarball=$(ar -t "./$pkg" | grep "^data.tar.[bgx]z")
+ case "$tarball" in
+ data.tar.gz) ar -p "./$pkg" data.tar.gz | zcat | tar -xf - ;;
+ data.tar.bz2) ar -p "./$pkg" data.tar.bz2 | bzcat | tar -xf - ;;
+ data.tar.xz) ar -p "./$pkg" data.tar.xz | xzcat | tar -xf - ;;
+ *) error 1 UNKNOWNDATACOMP "Unknown compression type for %s in %s" "$tarball" "$pkg" ;;
+ esac
done
); }