Add release packaging script
This commit is contained in:
Executable
+42
@@ -0,0 +1,42 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
|
||||
if [[ $# -ne 1 || ! $1 =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
|
||||
echo "usage: $0 VERSION" >&2
|
||||
exit 2
|
||||
fi
|
||||
|
||||
release_version=$1
|
||||
release_tag="v${release_version}"
|
||||
repo_root=$(git rev-parse --show-toplevel)
|
||||
publisher="$HOME/.agents/skills/publish-gitea-release/scripts/gitea-publish-asset.sh"
|
||||
release_dir=$(mktemp -d "${TMPDIR:-/tmp}/arrowvortex-wine-release.XXXXXX")
|
||||
asset="$release_dir/arrowvortex-wine-${release_tag}-source.tar.gz"
|
||||
notes="$release_dir/release-notes.md"
|
||||
|
||||
cleanup() {
|
||||
rm -rf "$release_dir"
|
||||
}
|
||||
trap cleanup EXIT
|
||||
|
||||
cd "$repo_root"
|
||||
git diff --check
|
||||
nix build .
|
||||
nix flake check
|
||||
|
||||
git archive --format=tar.gz --prefix="arrowvortex-wine-${release_tag}/" HEAD >"$asset"
|
||||
|
||||
cat >"$notes" <<EOF
|
||||
## File dialog fixed
|
||||
|
||||
- The ArrowVortex Wine launcher now uses a fresh Wine-versioned prefix by default.
|
||||
- **File → Open** and **Ctrl+O** now show Wine's native file picker on KDE Plasma Wayland.
|
||||
- The old unversioned prefix is preserved, and `WINEPREFIX` remains available for custom prefixes.
|
||||
EOF
|
||||
|
||||
sha256sum "$asset"
|
||||
"$publisher" \
|
||||
--tag "$release_tag" \
|
||||
--asset "$asset" \
|
||||
--title "ArrowVortex Wine ${release_tag}" \
|
||||
--body-file "$notes"
|
||||
Reference in New Issue
Block a user