diff options
author | merakor <cem@ckyln.com> | 2020-07-24 09:45:05 +0000 |
---|---|---|
committer | merakor <cem@ckyln.com> | 2020-07-24 09:45:05 +0000 |
commit | a5742ec0d46f60fcbeec141744a2e35a9e5dd6d5 (patch) | |
tree | 653077a372cea7a5842db627546d2fab72c5f7e2 /contrib/cpt-export | |
parent | 453a27cc1b956246c9639555268631abf0687e40 (diff) | |
download | cpt-a5742ec0d46f60fcbeec141744a2e35a9e5dd6d5.tar.gz |
contrib: rename scripts
FossilOrigin-Name: d35a756a5d603ac894873aeb0a30826cb4b3fe9e257ecf21298225e07f517ddd
Diffstat (limited to 'contrib/cpt-export')
-rwxr-xr-x | contrib/cpt-export | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/contrib/cpt-export b/contrib/cpt-export new file mode 100755 index 0000000..c124822 --- /dev/null +++ b/contrib/cpt-export @@ -0,0 +1,31 @@ +#!/bin/sh -ef +# Turn an installed package into a KISS tarball + +case "$1" in ''|--help|-h) printf '\033[1;33m-> \033[m%s\n' "usage: ${0##*/} [pkg]" ; exit 0 ; esac + +kiss l "${1:-null}" >/dev/null + +# Grab the package's version.. +read -r ver rel 2>/dev/null < \ + "$KISS_ROOT/var/db/kiss/installed/$1/version" + +# Reset the argument list. +pkg=$1 +set -- + +# Construct the argument list using each file. +while read -r file; do + [ -d "$KISS_ROOT/$file" ] || set -- "$@" ".$file" +done < "$KISS_ROOT/var/db/kiss/installed/$pkg/manifest" + +# Turn the list of files back into a package. +: "${KISS_COMPRESS:=gz}" +tar cf - -C / -- "$@" | case "$KISS_COMPRESS" in + bz2) bzip2 -z ;; + gz) gzip -6 ;; + xz) xz -zT 0 ;; + zst) zstd -3 ;; + *) gzip -6 ;; # Fallback to gzip +esac > "$pkg#$ver-$rel.tar.$KISS_COMPRESS" + +printf 'tarball created in %s\n' "$PWD/$pkg#$ver-$rel.tar.$KISS_COMPRESS" |