pkgutils .. and zst(d)
Hello. Works fine, and zstd:threads=0 seems to at least have an issue. Please do this! Super fast by default, and almost as good compression as xz with -22. Btw.: #?0|kent:core$ git grep -i http:|grep -v ^COPY|grep :source=|wc -l 12 ^ Especially this would be nice, since who really does check GPG or whatever signature of upstream when updating the package. #?0|kent:core$ cd ../opt/ #?0|kent:opt$ git grep -i http:|grep -v ^COPY|grep :source=|wc -l 59 #?0|kent:opt$ cd ../contrib/ #?0|kent:contrib$ git grep -i http:|grep -v ^COPY|grep :source=|wc -l 52 Thanks for CRUX everybody! I love it each and every day!! diff -u pkgutils-5.40.10.old/pkgmk.8.in pkgutils-5.40.10/pkgmk.8.in --- pkgutils-5.40.10.old/pkgmk.8.in 2023-02-03 17:32:32.000000000 +0100 +++ pkgutils-5.40.10/pkgmk.8.in 2024-03-29 23:19:17.967541141 +0100 @@ -5,7 +5,8 @@ \fBpkgmk [options]\fP .SH DESCRIPTION \fBpkgmk\fP is a \fIpackage management\fP utility, which makes -a software package. A \fIpackage\fP is an archive of files (.pkg.tar.gz, .pkg.tar.bz2 or .pkg.tar.xz) +a software package. A \fIpackage\fP is an archive of files +(.pkg.tar.gz, .pkg.tar.bz2, .pkg.tar.xz, or .pkg.tar.zst) that can be installed using pkgadd(8). To prepare to use pkgmk, you must write a file named \fIPkgfile\fP @@ -151,6 +152,7 @@ .SH SEE ALSO pkgmk.conf(5), pkgadd(8), pkgrm(8), pkginfo(8), rejmerge(8), signify(1), curl(1), wget(1) .SH COPYRIGHT -pkgmk (pkgutils) is Copyright (c) 2000-2005 Per Liden and Copyright (c) 2006-2021 CRUX team (http://crux.nu). +pkgmk (pkgutils) is Copyright (c) 2000-2005 Per Liden +and Copyright (c) 2006-2024 CRUX team (https://crux.nu). pkgmk (pkgutils) is licensed through the GNU General Public License. Read the COPYING file for the complete license. diff -u pkgutils-5.40.10.old/pkgmk.conf pkgutils-5.40.10/pkgmk.conf --- pkgutils-5.40.10.old/pkgmk.conf 2023-02-03 17:32:32.000000000 +0100 +++ pkgutils-5.40.10/pkgmk.conf 2024-03-29 23:15:47.774211828 +0100 @@ -38,4 +38,10 @@ # PKGMK_CURL_OPTS="" # PKGMK_COMPRESSION_MODE="gz" +#if [ "$PKGMK_COMPRESSION_MODE" = xz ]; then +# export TAR_WRITER_OPTIONS=xz:threads=${JOBS} +#elif [ "$PKGMK_COMPRESSION_MODE" = zst ]; then +# export TAR_WRITER_OPTIONS=zstd:threads=${JOBS},zstd:compression-level=22 +#fi + # End of file diff -u pkgutils-5.40.10.old/pkgmk.conf.5.in pkgutils-5.40.10/pkgmk.conf.5.in --- pkgutils-5.40.10.old/pkgmk.conf.5.in 2023-02-03 17:32:32.000000000 +0100 +++ pkgutils-5.40.10/pkgmk.conf.5.in 2024-03-29 23:19:01.924208113 +0100 @@ -84,12 +84,14 @@ Default: 'no' .TP \fBPKGMK_COMPRESSION_MODE='STRING'\fP -Option to select the mode used to compress the packages. Valid strings are gz, bz2, xz and lz. +Option to select the mode used to compress the packages. +Valid strings are gz, bz2, xz, lz and zst. .br Default: 'gz' .SH SEE ALSO pkgmk(8) .SH COPYRIGHT -pkgmk (pkgutils) is Copyright (c) 2000-2005 Per Liden and Copyright (c) 2006-2021 CRUX team (http://crux.nu). +pkgmk (pkgutils) is Copyright (c) 2000-2005 Per Liden +and Copyright (c) 2006-2024 CRUX team (https://crux.nu). pkgmk (pkgutils) is licensed through the GNU General Public License. Read the COPYING file for the complete license. diff -u pkgutils-5.40.10.old/pkgmk.in pkgutils-5.40.10/pkgmk.in --- pkgutils-5.40.10.old/pkgmk.in 2023-02-03 17:32:32.000000000 +0100 +++ pkgutils-5.40.10/pkgmk.in 2024-03-29 23:18:13.227542376 +0100 @@ -3,7 +3,7 @@ # pkgutils # # Copyright (c) 2000-2005 Per Liden -# Copyright (c) 2006-2021 by CRUX team (http://crux.nu) +# Copyright (c) 2006-2024 by CRUX team (https://crux.nu) # # This program is free software; you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by @@ -208,7 +208,7 @@ RENAME="${renames[$srcind]}" [ -n "$RENAME" -a "$RENAME" != "SKIP" ] && LOCAL_FILE="$PKGMK_SOURCE_DIR/$RENAME" case $LOCAL_FILE in - *.tar|*.tar.gz|*.tar.Z|*.tgz|*.tar.bz2|*.tbz2|*.tar.xz|*.txz|*.tar.lzma|*.tar.lz|*.zip|*.rpm|*.7z) + *.tar|*.tar.gz|*.tar.Z|*.tgz|*.tar.bz2|*.tbz2|*.tar.xz|*.txz|*.tar.lzma|*.tar.lz|*.tar.zst|*.tzst|**.zip|*.rpm|*.7z) COMMAND="bsdtar -p -o -C $SRC -xf $LOCAL_FILE" ;; *) COMMAND="cp $LOCAL_FILE $SRC" ;; @@ -591,6 +591,7 @@ bz2) COMPRESSION="-j" ;; xz) COMPRESSION="-J" ;; lz) COMPRESSION="--lzip" ;; + zst) COMPRESSION=--zstd;; esac bsdtar --format=gnutar -c $COMPRESSION -f $TARGET * && bsdtar -t -v -f $TARGET @@ -879,7 +880,7 @@ check_pkgfile case $PKGMK_COMPRESSION_MODE in - gz|bz2|xz|lz) + gz|bz2|xz|lz|zst) TARGET="$PKGMK_PACKAGE_DIR/$name#$version-$release.pkg.tar.$PKGMK_COMPRESSION_MODE" ;; *) diff -u pkgutils-5.40.10.old/pkgutil.cc pkgutils-5.40.10/pkgutil.cc --- pkgutils-5.40.10.old/pkgutil.cc 2023-02-03 17:32:32.000000000 +0100 +++ pkgutils-5.40.10/pkgutil.cc 2024-03-29 23:17:45.570876238 +0100 @@ -2,7 +2,7 @@ // pkgutils // // Copyright (c) 2000-2005 Per Liden -// Copyright (c) 2006-2021 by CRUX team (http://crux.nu) +// Copyright (c) 2006-2024 by CRUX team (https://crux.nu) // // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU General Public License as published by @@ -48,6 +48,7 @@ archive_read_support_filter_bzip2((ar)); \ archive_read_support_filter_xz((ar)); \ archive_read_support_filter_lzip((ar)); \ + archive_read_support_filter_zstd((ar)); \ archive_read_support_format_tar((ar)) #define DEFAULT_BYTES_PER_BLOCK (20 * 512) --steffen | |Der Kragenbaer, The moon bear, |der holt sich munter he cheerfully and one by one |einen nach dem anderen runter wa.ks himself off |(By Robert Gernhardt)
Oh! It came through!! Thank you. Btw, a bug sneaked in: Steffen Nurpmeso wrote in <20240329223127.8InWs-XG@steffen%sdaoden.eu>: ... |--- pkgutils-5.40.10.old/pkgmk.in 2023-02-03 17:32:32.000000000 +0100 |+++ pkgutils-5.40.10/pkgmk.in 2024-03-29 23:18:13.227542376 +0100 ... |- *.tar|*.tar.gz|*.tar.Z|*.tgz|*.tar.bz2|*.tbz2|*.ta\ |r.xz|*.txz|*.tar.lzma|*.tar.lz|*.zip|*.rpm|*.7z) |+ *.tar|*.tar.gz|*.tar.Z|*.tgz|*.tar.bz2|*.tbz2|*.ta\ |r.xz|*.txz|*.tar.lzma|*.tar.lz|*.tar.zst|*.tzst|**.zip|*.rpm|*.7z) ^ *.zip turned to **.zip. Ciao, --steffen | |Der Kragenbaer, The moon bear, |der holt sich munter he cheerfully and one by one |einen nach dem anderen runter wa.ks himself off |(By Robert Gernhardt)
participants (1)
-
Steffen Nurpmeso