chore: add release infrastructure and packaging support
Rust / build (macos-latest, stable) (push) Canceled after 0s
Rust / build (ubuntu-latest, stable) (push) Canceled after 0s
Rust / build (windows-latest, stable) (push) Canceled after 0s

Add GitHub Actions workflows for CI and release builds, packaging
scripts for Windows, macOS, Linux, and Flatpak/Snap distribution,
application icons, desktop files, and release metadata resources.
This commit is contained in:
2026-09-07 12:44:35 +07:00
parent 02a0134164
commit 1af4c66566
31 changed files with 1508 additions and 2 deletions
+26
View File
@@ -0,0 +1,26 @@
#!/usr/bin/env bash
# This script is intended to be run after `script/bundle-snap`.
#
# It expects a version to be passed as the first argument, and expects the
# built `.snap` for that version to be in the current directory. bundle-snap
# names it `signed_<version>_amd64.snap` (Snap's canonical amd64/arm64 naming).
#
# This will uninstall the current `signed` snap, replacing it with a snap
# that directly uses the `snap/unpacked` directory.
set -euxo pipefail
if [ "$#" -ne 1 ]; then
echo "Usage: $0 <release_version>"
exit 1
fi
# Rerun as root
[ "$UID" -eq 0 ] || exec sudo bash -e "$0" "$@"
snap remove signed || true
mkdir -p snap
rm -rf snap/unpacked
unsquashfs -dest snap/unpacked "signed_$1_amd64.snap"
snap try --classic snap/unpacked