Release Management
Whenever a new version of Kando is released, several steps need to be performed. This document describes these steps in detail. This is mostly for the maintainers of Kando, so that we do not forget anything, but maybe it will be interesting for you as well.
Updating the Main Repository
-
Check for any pending translation updates on Weblate and merge them if necessary.
-
Bump the version number in
package.json
. -
Run
npm install
to update the lock file. -
Commit the changes to the two files with a message like
:tada: Bump version number
to themain
branch. -
Set the release date and the version name in
changelog.md
. -
Add the new release also to the
menu.kando.Kando.metainfo.xml
file. -
Commit the changes to the changelog and the appstream file with a message like
:tada: Set release date
. -
Run the following:
Terminal window git tag vX.Y.Zgit push origin vX.Y.ZReplace
vX.Y.Z
with the new version number. -
This will automatically release all the assets as a pre-release via GitHub actions. Make sure everything is good and then add some text to the new release and publish it!
Updating the Website
Not much needs to be done for the website. Maybe some soon! badges can be replaced with new! badges. Also, if there is a new video, it can be linked on the landing page.
Updating the Flatpak package
Kandoβs flatpak manifest is maintained in this repository. To update this to a new version, the following steps need to be performed:
- Download the new AppImage and get its sha256:
Terminal window wget https://github.com/kando-menu/kando/releases/download/vX.Y.Z/Kando-X.Y.Z-x86_64.AppImagesha256sum Kando-X.Y.Z-x86_64.AppImage - Edit
menu.kando.Kando.yml
to include the new link to the AppImage and the new sha256. menu.kando.Kando.metainfo.xml
needs to be updated as well as it now contains the new release date and the new version number. Go here and press y to change the URL to the commit hash variant. Copy the hash.- Run this:
Terminal window wget https://raw.githubusercontent.com/kando-menu/kando/<hash>/appstream/menu.kando.Kando.metainfo.xmlsha256sum menu.kando.Kando.metainfo.xml - Edit the
menu.kando.Kando.yml
file again and replace the commit hash and the sha256 for themenu.kando.Kando.metainfo.xml
accordingly. - If
menu.kando.Kando.svg
ormenu.kando.Kando.desktop
had been changed since the last release, you need to update them as well. You can do this in the same manner as above. - Commit the changes to the
menu.kando.Kando.yml
file to a new branch and create a pull request.
Updating the winget package
Kando is also available on Windows via the winget package manager. To publish a new version there, the following steps need to be performed:
- Update our fork of the winget-pkgs repository.
- Manually dispatch the deploy workflow.