22 lines
865 B
Bash
Executable File
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)"
|