Why are snaps good for Go projects?

Easy to discover and install by millions using the Snap Store or command-line every day

Automatically updated to the latest stable version of your app

Revert to the previous version if an update fails, preserving data

Programming in Go makes it easy to create a zip of your app that runs across Linux, without dependencies.
However, end user discovery and update management remain a challenge.
Snaps fill this gap, letting you distribute a Go app in an app store experience for end users.

Why are snaps good for Java projects?

Distributing a Java application for Linux and reaching the widest possible audience is complicated. Typically, the user has to make sure the JRE/SDK version and their environment are configured correctly. When a Linux distribution changes the delivered JRE, this can be problematic for applications. Snapcraft ensures the correct JRE is shipped alongside the application at all times.

In just a few steps, you’ll have an example Java app in the Snap Store.

Why are snaps good for pre-built apps?

Easy to discover and install by millions using the Snap Store or command-line every day

Automatically updated to the latest stable version of your app

Revert to the previous version if an update fails, preserving data

Isolation ensures no conflicts between applications

Identical behaviour across Linux distributions, even with library dependencies

Distributing the Linux build of your app as a zip lets you provide one download and set of instructions for all of Linux.
However, end user discovery and update management remain a challenge.
Snaps fill this gap, letting you wrap your existing Linux build in an app store experience for end users.

In just a few steps, you’ll have an example pre-built app in the Snap Store.

Why are snaps good for Python projects?

Easy to discover and install by millions using the Snap Store or command-line every day

Automatically updated to the latest stable version of your app

Revert to the previous version if an update fails, preserving data

Isolation ensures no conflicts between applications

Identical behaviour across Linux distributions, even with library dependencies

With PyPI you can distribute apps to other developers, but it’s not tailored to end users.
Virtualenv lets you install an app’s dependencies in isolation, but it’s not automatically used for installs from PyPI.
Snaps let you distribute a dependency-isolated Python app in an app store experience for end users.

In just a few steps, you’ll have an example Python app in the Snap Store.

Linux install instructions for Ruby applications often get complicated. To prevent modules from different Ruby applications clashing with each other, developer tools like rvm or rbenv must be used. With snapcraft, it’s one command to produce a bundle that works anywhere.

In just a few steps, you’ll have an example Ruby app in the Snap Store.

Why are snaps good for Rust projects?

Easy to discover and install by millions using the Snap Store or command-line every day.

Automatically updated to the latest stable version of your app.

Revert to the previous version if an update fails, preserving data.

You can distribute your apps across Linux using a musl-enabled version of Rust, with all the dependencies satisfied. However, end user discovery and update management remain a challenge. Snaps fill this gap, letting you distribute a Rust app in an app store experience for end users.

In just a few steps, you’ll have an example Rust app in the Snap Store.

“Starting with snaps is easy”

We definitely find Snapcraft easier as it is yaml based and provides details of what artifacts are needed. Debian packaging has things that need to be followed which can be distribution specific, which creates complication.

The modular containment is what appealed about snaps and [we] can see it will be a lot more flexible. Starting with snaps is easy and the resources that are provided are clean and structured which aids adoption.

“A major software discovery tool”

The Snap store provides additional exposure to our tools for many of our existing and potential users. The decision to use it came quite naturally. We believe the store will be a major software discovery tool on Linux, so the more people find out about our tools naturally and install them more easily, the better for everyone.