URI:
       pack: Update with latest, more versatile version - scripts - various script and utils
  HTML git clone git://z3bra.org/scripts
   DIR Log
   DIR Files
   DIR Refs
       ---
   DIR commit 5a91b75eb90e6069d0ebb8ae5ad3061cf9bdfcb7
   DIR parent ad357d6bf774f8fe765ecdf9162d81eed89bcf09
  HTML Author: Willy Goiffon <dev@z3bra.org>
       Date:   Thu, 20 Aug 2026 22:09:05 +0000
       
       pack: Update with latest, more versatile version
       
       Diffstat:
         M pack                                |      71 ++++++++++++++++++-------------
       
       1 file changed, 42 insertions(+), 29 deletions(-)
       ---
   DIR diff --git a/pack b/pack
       @@ -1,40 +1,53 @@
        #!/bin/sh
        
       -SICKKEY=$HOME/.sick.d/$USER.key
       -DIR=$(basename `pwd`)
       -TAG=$(git tag | sed -n '$p' | tr -d a-z)
       -REPO=$HOME/data/repository
       +set -e
        
       -#prefix=/usr/local
       +if [ -f got.conf ]; then
       +        b=~/build/$(basename $PWD .git)
       +        [ ! -d $b ] && got checkout $PWD $b
       +        cd $b
       +fi
        
       -CONFIGURE_OPT="
       ---prefix=${prefix}
       ---mandir=/share/man
       -"
       +d=$(basename $PWD)
       +n=${d%%-*}
       +tag=${d#*-}
       +[ "$tag" = "$n" ] && tag=""
        
       -PKG=${1:-$DIR}
       -VER=${TAG:-0.0}
       +got_tag() {
       +        base=$(got info|sed -rn 's/.*base commit: ([a-f0-9]{10}).*/\1/p')
       +        got tag -ls|grep "commit:$base"|cut -d: -f2|cut -d' ' -f2|tr -d vV:
       +}
        
       -MK=make
       +[ -d .git ] && tag=$(git describe --abbrev=0 --tags|tr -d vV:)
       +[ -d .got ] && tag=$(got_tag)
        
       -test -f mkfile && MK=mk
       +v="${tag:-0.0}"
       +t="${n}@${v}.tbz"
        
       -case $MK in
       -        make) MAKEFLAGS="-e" ;;
       -        *)    MAKEFLAGS="" ;;
       -esac
       +export PREFIX=/usr/local
       +export MANPREFIX=${PREFIX}/man
       +export MANDIR=${MANPREFIX}
       +export DESTDIR=$(mktemp -d)
        
       -mkdir /tmp/rootfs
       -test -f configure && ./configure $CONFIGURE_OPT
       -$MK $MAKEFLAGS PREFIX="$prefix"
       -$MK $MAKEFLAGS DESTDIR=/tmp/rootfs PREFIX="$prefix" MANDIR=/share/man install
       -(
       -        cd /tmp/rootfs
       -        mkdir -p $REPO
       -        tar cvj * | sick -asf ${SICKKEY} > $REPO/${PKG}@${VER}.tbz
       -)
       -rm -rf /tmp/rootfs
       +trap 'rm -rf $DESTDIR' EXIT QUIT INT TERM
       +
       +# configure
       +[ -f ./autogen.sh ]  && ./autogen.sh
       +[ -f ./configure ]   && ./configure --prefix=$PREFIX --mandir=$MANDIR "$@"
       +[ -f ./meson.build ] && meson _ --prefix=$PREFIX --mandir=$MANDIR --libdir=lib "$@"
       +
       +# build / install
       +if   [ -f ./mkfile      ]; then mk PREFIX=$PREFIX MANPREFIX=$MANPREFIX MANDIR=$MANDIR DESTDIR=$DESTDIR install
       +elif [ -f ./[mM]akefile ]; then make PREFIX=$PREFIX MANPREFIX=$MANPREFIX MANDIR=$MANDIR DESTDIR=$DESTDIR install
       +elif [ -f ./GNUmakefile ]; then make PREFIX=$PREFIX MANPREFIX=$MANPREFIX MANDIR=$MANDIR DESTDIR=$DESTDIR install
       +elif [ -f _/build.ninja ]; then DESTDIR=$DESTDIR ninja -C _ install
       +elif [ -f ./build.zig   ]; then zig build --prefix "$PREFIX" install
       +elif [ -f ./Cargo.toml  ]; then cargo install --path . --root "${DESTDIR}${PREFIX}"
       +fi
       +
       +(cd "$DESTDIR"; tar -cvj *) > /tmp/$t
       +
       +printf '\n\t> %s\n' $(readlink -f /tmp/$t)
        
        echo
       -#ls $REPO/${PKG}@${VER}.tbz
       -repogen $REPO
       +doas pm -avf /tmp/$t