Files

22 lines
865 B
Bash
Executable File

#!/usr/bin/env bash
# Build only committed sources; generated artifacts never include local secrets.
set -euo pipefail
cd -- "$(dirname -- "${BASH_SOURCE[0]}")/.."
if ! git diff --quiet || ! git diff --cached --quiet; then
printf 'Commit tracked changes before building a release.\n' >&2
exit 1
fi
VERSION="$(git show HEAD:VERSION)"
[[ "$VERSION" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]] || { printf 'Invalid VERSION\n' >&2; exit 1; }
NAME="hyprland-hdmi-revive-$VERSION"
mkdir -p dist
git archive --format=tar --prefix="$NAME/" HEAD | gzip -n > "dist/$NAME.tar.gz"
git archive --format=zip --prefix="$NAME/" HEAD > "dist/$NAME.zip"
base64 -w 64 "dist/$NAME.zip" > "dist/$NAME.zip.b64"
(
cd dist
sha256sum "$NAME.tar.gz" "$NAME.zip" "$NAME.zip.b64" > SHA256SUMS
sha256sum -c SHA256SUMS
)
printf 'Built %s from commit %s\n' "$NAME" "$(git rev-parse HEAD)"