As you can see in
this thread on the Info-Zip forums, UID/GID restoration is broken by default (that thread also includes a patch, as does this
Debian bug report). Could this be fixed in -current?
As an additional request, it would be nice if bzip2 compression support was added to the Slackware infozip package by default as I have started to encounter more zips that use this method from Windows using friends. No other application included in Slackware can currently open these files so without support in the official Slackware package a user must either recompile infozip themselves or install pz7ip from SBo.
When recompiling infozip recently with bzip2 support I made the following change to the infozip.SlackBuild and dumped the bzip2-1.0.6.tar.gz in the directory alongside it.
Code:
--- infozip.SlackBuild.orig 2013-09-11 10:38:17.000000000 +0200
+++ infozip.SlackBuild 2013-09-11 10:39:55.000000000 +0200
@@ -45,6 +45,10 @@
rm -rf zip$(echo $ZIP | tr -d .)
tar xvf $CWD/zip$(echo $ZIP | tr -d .).tar.?z* || exit 1
cd zip$(echo $ZIP | tr -d .)
+if /bin/ls $CWD/bzip2-*.tar.gz &> /dev/null; then
+ tar xf $CWD/bzip2-*.tar.gz -C bzip2 --strip 1 || exit 1
+ BZ2SUPPORT="IZ_BZIP2=$(pwd)/bzip2"
+fi
chown -R root:root .
mkdir -p $PKG/usr/doc/zip-$ZIP
cp -a BUGS CHANGES INSTALL LICENSE README* TODO US* WHATSNEW WHERE \
@@ -70,7 +74,7 @@
cp -a BUGS COPYING* Contents History.* INSTALL LICENSE README ToDo WHERE \
$PKG/usr/doc/unzip-$VERSION
chmod 644 $PKG/usr/doc/unzip-$VERSION/*
-make -f unix/Makefile generic || exit 1
+make -f unix/Makefile generic $BZ2SUPPORT || exit 1
cat unzip > $PKG/usr/bin/unzip
cat unzipsfx > $PKG/usr/bin/unzipsfx
cat funzip > $PKG/usr/bin/funzip
There is probably a neater way to add support, though in my own testing I was not able to use bzlib.h and libbz2.a from the Slackware bzip2 package as libbz2.a was not built with BZ_NO_STDIO (Zip prefers this and UnZip
requires it to add bzip2 compression support).
P.S. There is also
this thread started by me on the UID/GID problems, here in LQ).