Supported plugins

The following plugins are currently supported by Snapcraft. See Snapcraft plugins for more details in how they’re used, and to create your own, see Writing local plugins.

With Snapcraft 4.0, if the working directory contains a Snapcraft project, the default behaviour is to show only the plugins available for either its specified base or the latest available supported base (currently core20 ). See Base snaps for more details.

Programming languages

Go

Plugin name Description Base support
go integrates projects written in Go and using the go get package installer core20
core/18
godeps integrates projects written in Go and using the godep dependency tool core/18

Java

Plugin name Description Base support
ant Ant build system integration, commonly used by Java projects core/18
gradle integrate projects built using the Gradle build tool with your snaps core/18
maven build system integration with Maven, commonly used by Java projects core/18

Node.js/JavaScript

Plugin name Description Base support
gulp build parts from projects using the gulp.js streaming build system core/18
npm create parts that use Node.js and/or the JavaScript package manager, npm core20
nodejs create parts that use Node.js and/or the JavaScript package manager, npm core/18

Python

Plugin name Description Base support
conda used for parts incorporating the Conda open source package manager system core/18
python used for parts incorporating projects written with Python 2 or Python 3 core20
core/18

Other languages

Plugin name Description Base support
crystal build parts from projects written in the Ruby-like Crystal language core/18
dotnet integrates with the Microsoft’s .NET SDK to build core runtime parts core/18
flutter easily build and deploy parts for the expressive Flutter UI toolkit core/18
ruby built parts from projects written in Ruby and its Gemfile dependency bundler core/18
rust build parts from projects written in Rust and using Cargo for dependency management core20
core/18

Build tools

Plugin name Description Base support
autotools integrates projects that use the common Autotools suite with your snaps core20
core/18
cmake integrates projects that use the common CMake build tool with your snaps core20
core/18
make integrates projects using the commonly found make build system core20
core/18
meson integrate projects build using the Meson build system into your snap core20
core/18
qmake integrates projects using the qmake build tool, commonly by Qt-based projects core/18
scons integrates projects that use the SCons construction tool core/18
waf integrate projects using the Waf build automation tool core/18

Platforms

Linux kernel

Plugin name Description Base support
kbuild build parts that use the Linux kernel build system (kBuild) core/18
kernel derived from the kbuild plugin and used to build your own kernel core/18

Robot Operating System (ROS)

Plugin name Description Base support
catkin build catkin-based parts, typically used with version 1 of the Robot Operating System (ROS 1) core20
core/18
catkin-tools alternative method for building projects using version 1 of the Robot Operating System (ROS 1) core20
core/18
colcon build colcon-based parts, typically used with version 2 of the Robot Operating System (ROS 2) core20
core/18

Tools

Plugin name Description Base support
dump simply dumps the contents from the specified source core20
core/18
nil useful for parts with no source to import core20
core/18
plainbox-provider create parts containing a Plainbox test collection known as a provider core/18

Last updated 2 months ago. Help improve this document in the forum.