summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Bex <peter@more-magic.net>2015-05-03 14:02:10 +0200
committerPeter Bex <peter@more-magic.net>2015-05-03 14:02:10 +0200
commit83d97440e387692de00f3dbd5c05fd28e00ee78d (patch)
tree35481334d284d0b76a34562e7a98c3752478c23d
parentf27f047eba4a3c7619f2df13d8c31f804f35a8c4 (diff)
downloadhenrietta-cache-83d97440e387692de00f3dbd5c05fd28e00ee78d.tar.gz
Use gunzip and bunzip instead of zcat and bzcat, for compatibility reasons
As reported by Jim Ursetto, the version of zcat shipped with OS X doesn't handle gzipped files, and gzcat doesn't exist on many Linuxen. However, gunzip has a -c option which does the same. For consistency, use bunzip2 -c as well.
-rw-r--r--henrietta-cache.scm8
1 files changed, 4 insertions, 4 deletions
diff --git a/henrietta-cache.scm b/henrietta-cache.scm
index a08ae6a..ba99aa2 100644
--- a/henrietta-cache.scm
+++ b/henrietta-cache.scm
@@ -166,11 +166,11 @@ EOF
(download-and-extract
distribution-file-type uri cache-dir
(lambda (archive dir)
- ;; Instead of messing about with tar, zcat, bzcat, unzip etc,
- ;; we should use libarchive.
+ ;; Instead of messing about with tar, gunzip, bunzip2, unzip
+ ;; etc, we should use libarchive.
(case distribution-file-type
- ((targz) (sprintf "(cd ~A && zcat ~A | tar xf -)" (qs dir) (qs archive)))
- ((tarbz2) (sprintf "(cd ~A && bzcat ~A | tar xf -)" (qs dir) (qs archive)))
+ ((targz) (sprintf "(cd ~A && gunzip -c ~A | tar xf -)" (qs dir) (qs archive)))
+ ((tarbz2) (sprintf "(cd ~A && bunzip2 -c ~A | tar xf -)" (qs dir) (qs archive)))
((zip) (sprintf "unzip -d ~A -o -qq ~A" (qs dir) (qs archive)))
(else (error (sprintf "Unknown archive type `~S' (shouldn't happen!)"
distribution-file-type)))))))