Supported extensions

Snapcraft extensions enable snap developers to easily incorporate a set of common requirements into a snap. For more information on how to use extensions, see Snapcraft extensions.

The following extensions are available in the latest version of Snapcraft.

Extension name Description Supported base
env-injector Experimental support for passing user-defined environment variables to snaps core24
flutter-stable Create snaps that track the stable channel of the Flutter UI toolkit core18
flutter-beta Create snaps that track the beta channel of the Flutter UI toolkit core18
flutter-dev Create snaps that track the dev channel of the Flutter UI toolkit core18
flutter-master Create snaps that track the master channel of the Flutter UI toolkit core18
gnome Create snaps that integrate with GNOME and GTK. Also useful for general desktop applications. core24
core22
gnome-3-38 This older version of the gnome extension supports GTK 3.38 and core20 core20
gnome-3-34 This older version of the gnome extension supports GTK 3.34 and core18 core18
gnome-3-28 This older version of the gnome extension supports GTK 3.28 and core18 core18
kde-neon Create snaps of desktop applications that use Qt5 and/or KDE Frameworks core22
kde-neon-6 Create snaps of desktop applications that use Qt6 and/or KDE Neon 6 Frameworks core22
ros1-noetic This extension helps you snap ROS 1 applications for the Noetic Ninjemys distribution core20
ros1-noetic-* These extensions help you snap ROS 1 applications for the Noetic Ninjemys distribution using content-sharing core20
ros2-foxy This extension helps you snap ROS 2 applications for the Foxy Fitzroy distribution core20
ros2-foxy-* These extensions help you snap ROS 2 applications for the Foxy Fitzroy distribution using content-sharing core20
ros2-humble This extension helps you snap ROS 2 applications for the Humble Hawksbill distribution core22
ros2-humble-* These extensions help you snap ROS 2 applications for the Humble Hawksbill distribution using content-sharing core22
ros2-jazzy This extension helps you snap ROS 2 applications for the Jazzy Jalisco distribution core24
ros2-jazzy-* These extensions help you snap ROS 2 applications for the Jazzy Jalisco distribution using content-sharing core24

The snapcraft extensions command lists which extensions are supported by the installed version of snapcraft.

Experimental extensions

To enable the use of experimental extensions in Snapcraft, set the environment variable SNAPCRAFT_ENABLE_EXPERIMENTAL_EXTENSIONS to 1.

3 Likes

Is there a doc that explains how to write extensions? Or at least how to interpret them?

This list doesn’t include the newer core22 extensions – gnome and ros2-humble.

This page is missing the core22 ros2-humble extension.

Added core22 ros2-humble extension, thanks.

kde-neon is now supported in core22

Brilliant, thank you for letting us know!

1 Like

The article seems to be missing some information when it comes to gnome and kde-neon.

The command lists that gnome supports core22 and core24 (still experimental though), but the article only lists core22.

The command lists that kde-neon supports core18, core20, and core24, but the article only lists core22.