Gimp/build/linux/snap
Bruno Lopes 3e8fa656bc
build/linux: Take Snap version: from meson.build
This reduces the burden over the project maintainer.
2025-10-11 15:34:46 -03:00
..
patches build/linux: Port 3P binaries plugins support from Snapcrafters 2025-10-06 12:46:09 -03:00
1_build-deps-snapcraft.sh build/linux: Restore comment of '--destructive-mode'/host mode on Snap script 2025-08-12 16:07:16 -03:00
2_build-gimp-snapcraft.sh build/linux: Fix snap premature packaging after 72a1ba81 2025-10-10 14:37:54 -03:00
3_dist-gimp-snapcraft.sh build/linux: Take Snap version: from meson.build 2025-10-11 15:34:46 -03:00
README.md build/linux: Take Snap version: from meson.build 2025-10-11 15:34:46 -03:00
snapcraft.yaml build/linux: Take Snap version: from meson.build 2025-10-11 15:34:46 -03:00

GIMP Snap HowTo

Stable and Development releases

The Snap Store hosts our stable and development point releases: https://snapcraft.io/gimp

Base rule to update the "GNU Image Manipulation Program" entry:

  • Regularly, a .snap will be generated at each tagged commit. In the process, it will be auto submitted to Snap Store. (Any case, please double-check on Snapcraft if everything is done.)

Maintaining the packages

  • Similarly to our Flatpak, GIMP Snap uses a GNOME runtime, which contains a base of libraries, some of which are dependencies of GIMP. The runtime version is determined by the base: snap version in snapcraft.yaml. It is recommended to update that key value following Ubuntu release cycle. (Don't forget to notify the 3P plugins developers on https://forum.snapcraft.io/c/snapcrafters and/or https://discourse.ubuntu.com/c/project/app-center)

  • Other GIMP dependencies which are not available in the GNOME runtime snap should be listed in build-packages: and/or stage-packages: keys if gimp-meson-log.tar artifact shows as necessary. You can take a look at the deps-debian job from the in .gitlab-ci.yml as reference.

  • On the other hand, if we increased the base version in particular (so as consequence the GNOME runtime too), some packages may no longer be necessary and can be removed from our manifest.

    You can find the installed dependencies by running:

ls "$(echo /snap/gnome*-sdk/current/usr/lib/$(gcc -print-multiarch)/pkgconfig)"

Versioning the snap

Unlike the flatpak, we do not need to manually set babl, gegl or GIMP tags, just:

  • For a nightly build, set "devel" on "grade" and use "experimental" on build-id at gimp part "meson-parameters".

  • For a new development series, set "stable" on "grade" and use "preview" on build-id at gimp part "meson-parameters".

  • For a new stable series, set "stable" on "grade" and use "latest" on build-id at gimp part "meson-parameters".