- Update PO template with
just update-translations-templateand wait for Weblate to apply it - Update the German translation and commit/push in the Weblate interface
- Merge the translation PR
- Let the Github Action update the "Chinese Traditional" translation from "Chinese Simplified"
- Reset the Weblate repo
- Update Wust dependencies by running
cargo updateand update dependencies in flatpak dev YAML manifest - Update the flatpak dev JSON manifest from YAML with
just generate-json-flatpak-manifest - Commit the changes and push
- Release commit: Update the changelog in the appdata file, replace all version numbers in the project and build,
install and run all tests:
just installjust lintjust testjust test-file-compatibility
- Wait for CI to run successfully
- Create a release with tag
vX.Y.Zon Github - the installer and tarball will be created by Github Actions CD - For Flathub:
- Create a new release branch, update the Flathub flatpak manifest with the new tarball download URL and update the dependencies. Create a PR, and wait for completion of the Flathub builder CI.
- Create the new beta PR as well by copying the updated manifest from the new release branch
- Merge both beta and release PRs. Optionally publish the builds on Flathub's runner web interface manually for a faster release
Create a tarball by running:
just create-tarballThis recipe uses the meson dist command.
Pass the --no-tests flag to skip tests and building when it has been made sure that it would build successfully.
just create-tarball --no-testsA source tarball and checksum file should now be in directory _mesonbuild/meson-dist/.
- Do the same first steps as for a regular release
- Add the suffix
-beta.<x>to the app version suffix in meson and commit this to main. - Checkout and rebase/merge the
betabranch withmain. - Make a beta release on Github just like a regular one, but with
-beta.<x>appended to the tag. - In the Flathub app repo, all releases need to be made with a PR, so checkout a new branch from
betaand update the flatpak manifest. - Then create a PR on Github against
betaand merge it as soon as the flathub runner runs successfully.
To view all released flatpak versions:
flatpak remote-info --log flathub com.github.flxzt.rnoteTo roll back and pin/unpin:
sudo flatpak update --commit=<version-hash> com.github.flxzt.rnote
flatpak mask com.github.flxzt.rnote
flatpak mask --remove com.github.flxzt.rnoteA manifest .json is maintained in addition to the .yaml, because Gnome Builder currently only supports JSON Flatpak
manifests. To generate the JSON from YAML, yq is used. Run:
just generate-json-flatpak-manifestRegenerate the .pot file in the translations folder. Note that all entries with strings starting and ending like this "@<..>@" must be removed, they are templated variables and will be replaced in the build process of the app. All changelog entries should be removed as well.
just update-translations-templateThe PO files can then be updated with:
meson compile rnote-update-po -C _mesonbuildUsually Weblate updates them automatically, so this is not really needed unless one would want to reset and overwrite the translation files on Weblate.
Before merging the weblate translation PR, the Weblate repository should be locked. Then merge the PR, reset and then unlock the weblate repo to resynchronize with upstream.
The package providing the opencc tool (opencc-tools on Fedora) needs to be installed to regenerate the translation.
To autogenerate chinese traditional translation (zh_Hant) from chinese simplified (zh_Hans)
use the following recipe:
just update-translationsThis is discussed in issue 220
Install cargo-edit
Show outdated dependencies with:
just check-outdated-dependenciesWith this output, update the dependencies manually in Cargo.toml where it makes sense.