1.6 KiB
1.6 KiB
Releasing
Build locally
./scripts/build-release.sh [version] # ZIP with binary + docs
./scripts/build-app.sh [version] # RemminaMac.app (bundle, ad-hoc signed, icon + ctty-run)
./scripts/build-dmg.sh [version] # DMG with app + Applications link
./scripts/generate-icon.sh # re-render AppIcon.icns (Dracula terminal)
# Example:
./scripts/build-release.sh 0.7.0
./scripts/build-app.sh 0.7.0
./scripts/build-dmg.sh 0.7.0
# Output:
# dist/RemminaMac-0.7.0-macos-arm64.zip (+ .sha256)
# dist/RemminaMac.app/ (with ctty-run helper + icon)
# dist/RemminaMac-0.7.0-macos-arm64.dmg (+ .sha256)
Bump AppInfo.version in Views/AboutView.swift with each release.
What the scripts do
swift build -c release(builds bothRemminaMacandctty-run)- Copy binaries into
dist/RemminaMac-<ver>-macos-arm64/ - Add
README.md+docs/+LICENSE - ZIP + SHA256
build-app.sh also copies AppIcon.icns and ctty-run into the bundle and
signs ad-hoc (codesign --deep). build-dmg.sh creates the drag-and-drop DMG
via hdiutil (no extra tools).
Publish a Gitea release
export GITEA_HOST="https://git.sysdaemon.xyz"
export GITEA_OWNER="<owner>"
export GITEA_REPO="remmina-mac"
export GITEA_TOKEN="<token>" # not password: user → Settings → Applications → token
export VERSION="0.7.0"
./scripts/publish-gitea-release.sh
The script creates the release (if needed) and uploads ZIP + SHA256 as attachments.
Manual API
curl -u "user:pass" -H "Content-Type: application/json" \
-d '{"tag_name":"v0.7.0","name":"v0.7.0","body":"..."}' \
"$GITEA_HOST/api/v1/repos/$OWNER/$REPO/releases"