tazpkg annotate modules/recompress @ rev 846

Remove "busybox" "prefixes" (thanks llev)
We used "busybox wget", etc. to be sure we called Busybox's "wget", not any other "wget". Workaround already done in "getenv" module.
author Aleksej Bobylev <al.bobylev@gmail.com>
date Fri Oct 09 13:14:01 2015 +0300 (2015-10-09)
parents d6cbd0c5f273
children
rev   line source
al@844 1 #!/bin/sh
al@844 2 # TazPkg - Tiny autonomous zone packages manager, hg.slitaz.org/tazpkg
al@844 3 # recompress - TazPkg module
al@844 4 # Recompress .tazpkg cpio archive with lzma
al@844 5
al@844 6
al@844 7 # Connect function libraries
al@844 8 . /lib/libtaz.sh
al@844 9
al@844 10 # Get TazPkg working environment
al@844 11 . @@MODULES@@/getenv
al@844 12
al@844 13
al@844 14
al@844 15
al@844 16 # Extract a package with cpio and gzip/lzma.
al@844 17
al@844 18 extract_package() {
al@844 19 action 'Extracting package...'
al@844 20 cpio -idm --quiet < "${PACKAGE_FILE##*/}" && rm -f "${PACKAGE_FILE##*/}"
al@844 21 if [ -f fs.cpio.lzma ]; then
al@844 22 unlzma < fs.cpio.lzma | cpio -idm --quiet && rm fs.cpio.lzma
al@844 23 elif [ -f fs.cpio.gz ]; then
al@844 24 zcat fs.cpio.gz | cpio -idm --quiet && rm fs.cpio.gz
al@844 25 fi
al@844 26 status
al@844 27 }
al@844 28
al@844 29
al@844 30 PACKAGE_FILE="$1"
al@844 31
al@844 32 title 'Recompressing package "%s"' "$(basename "$PACKAGE_FILE" .tazpkg)"
al@844 33 TMP_DIR="$(mktemp -d)"
al@844 34
al@844 35 action "Copying original package..."
al@844 36 cp "$PACKAGE_FILE" "$TMP_DIR"
al@844 37 status
al@844 38
al@844 39 cd "$TMP_DIR"
al@844 40 extract_package
al@844 41
al@844 42 action "Recompressing the FS..."
al@846 43 find fs | cpio -o -H newc --quiet | lzma e fs.cpio.lzma -si
al@844 44 rm -rf fs
al@844 45 status
al@844 46
al@844 47 action "Creating new package..."
al@846 48 find | cpio -o -H newc --quiet > "$PACKAGE_FILE"
al@844 49 status
al@844 50
al@844 51 rm -rf "$TMP_DIR"
al@844 52 separator; newline