Files
MusicPlayer/RELEASING.md
T
Sansan 390da577d7 Name popups *Popup and give scripts, scenes and classes matching names
Every popup is now called *Popup instead of *Window in its file, root node,
node name, class and variable, and PopupWindow becomes BasePopup. Player is
PlayerRow, SongListObject is SongRow and Character is CharacterCard. Script
files are snake_case and scene files PascalCase, each matching its class or
root node, and LightGrayTheme.tres is light_gray_theme.tres.
2026-10-06 11:22:39 +02:00

1.3 KiB

Releasing

Releases are made from the version in project.godot (Project > Project Settings > Application > Config > Version). The game shows the same version in the About window.

  1. Bump the version, e.g. from 1.9.0 to 1.10.0, and add a WHATS_NEW entry in about_popup.gd.
  2. Merge to main and push.

The Build workflow (.gitea/workflows/gitea-build.yaml) then:

  1. runs the tests,
  2. exports the Windows and Linux builds, and packages Linux as MusicPlayer_<version>_linux.tar.gz with the icon, an app menu entry and install.sh (Linux programs can't carry their own icon the way a Windows .exe does),
  3. if no tag exists for the version yet: uploads the builds to the package registry under MusicPlayer/<version>/, and creates the <version> tag and Gitea release with the builds attached.

Pushes that don't change the version, and pushes to develop, only test and export. Don't create tags or 1.x.y branches by hand; the workflow makes the tag.

Installing on Linux

Unpack MusicPlayer_<version>_linux.tar.gz and run ./install.sh inside the MusicPlayer folder. It installs the game to ~/.local/bin and adds it, with its icon, to the app menu. The bare MusicPlayer_<version>.x86_64 is still published for anyone who just wants to run the file.