8 Give me a git sha or source tar to mint a release from.
14 pk_pem
="$(ls /media/msdosfs/*/seppo.priv.pem 2>/dev/null)" ; readonly pk_pem
15 wd
="/var/spool/build/src/seppo" ; readonly wd
16 emul_path
="$(sysctl compat.linux.emul_path | cut -d : -f 2 | tr -d ' ')" ; readonly emul_path
17 ls -d "$emul_path$(dirname "$wd")" > /dev
/null
19 src
="$emul_path$(dirname "$wd")/source.tar.gz" ; readonly src
22 if tar tzf
"$1" > /dev
/null
2>&1
29 --location "https://codeberg.org/seppo/seppo/archive/$GIT_SHA.tar.gz"
34 tar tzf
"$src" > /dev
/null
35 echo "a tar $(ls "$src")"
37 echo "one source for two builds"
38 rm -rf "${emul_path:?}${wd:?}/"
39 tar xzf
"$src" -C "$emul_path/$(dirname "$wd")"
42 gmake
-C "$emul_path$wd" clean
test final
43 cat <<EOF > "$emul_path$wd/chroot.make.sh"
46 rsync -qaP --delete --exclude _build "$wd" .
50 doas chroot
"$emul_path" su
- "$USER" -c "GIT_SHA="$GIT_SHA" sh $wd/chroot.make.sh clean test final"
52 echo "collect results"
53 cd "$emul_path/$wd/_build"
54 rsync
-aP "$src" "$emul_path/$HOME/seppo/_build/"*.cgi .
55 ver
="$(grep -hoE "^\
(version
[^\
)]+" ../dune-project | cut -d ' ' -f2)"
58 export ver
date GIT_SHA
59 envsubst
< ..
/README.txt.tpl
> README.txt
62 for f
in README.txt
*.cgi
source.
tar.gz
64 # https://stackoverflow.com/a/18359743
65 openssl dgst
-sha256 -sign "$pk_pem" -out "$f.signature" "$f"
68 dst
="seppo-${ver}_$(date +%Y%m%d).tar.gz"
70 tar czf
"$dst" -- README.txt
* *.cgi
* source.
tar.gz
*