Blog posts tagged
"snapcraft"

185 posts


Igor Ljubuncic
5 June 2020

Fabrica – Your self-hosted snap factory

Article Cloud and server

There are many ways one can go about building snaps. You can do it on your local system, by manually running commands in a terminal window. If you have a developer account in the Snap Store, you can use the integrated build functionality to create snaps. You can also use Launchpad, Electron Builder or a

Igor Ljubuncic
5 June 2020


Igor Ljubuncic
29 May 2020

Snapcraft development tips: how to troubleshoot snaps with services

Article Cloud and server

In the past, we have discussed various ways on how to debug and troubleshoot potential issues during snap development. The ability to quickly iterate, resolve build process hurdles and publish the application in a timely manner is essential to a robust, positive development experience. Today, we would like to outline a...

Igor Ljubuncic
29 May 2020


Igor Ljubuncic
20 May 2020

Experimental feature: progressive releases

Article Cloud and server

“No plan survives contact with the enemy.” This is a quote famously attributed to the Prussian field marshal Helmuth von Moltke. It is also quite applicable to software development: “No code survives contact with the user.” In mission-critical environments, staggered deployments of software are a crucial part of...

Igor Ljubuncic
20 May 2020


Luke Wesley-Holley
26 April 2020

We are changing the way you build snaps from GitHub repos

Article Desktop

On 11 March 2020 we introduced a new process for building a snap using GitHub repos to snapcraft.io. Here is all you need to know about this update. What is build.snapcraft.io? Build.snapcraft.io allows you to automatically build and release snaps from a GitHub repository. This means you can build your snaps for...

Luke Wesley-Holley
26 April 2020


Heather Ellsworth
17 April 2020

GNOME 3.34 snapcraft extension

Article Desktop

We constantly strive to empower developers. Part of that aim extends to making development easier, for example improving build tools and documentation. As an element of this continued effort, we would like to introduce the new gnome-3-34 snapcraft extension! What is the GNOME snapcraft extension? The gnome-3-34...

Heather Ellsworth
17 April 2020


Igor Ljubuncic
27 March 2020

Learn snapcraft by example – multi-app client-server snap

Article DevOps

Over the past few months, we published a number of articles showing how to snap desktop applications written in different languages – Rust, Java, C/C++, and others. In each one of these zero-to-hero guides, we went through a representative snapcraft.yaml file and highlighted the specific bits and pieces developers need...

Igor Ljubuncic
27 March 2020


Igor Ljubuncic
19 March 2020

Snapcraft tricks: Improve release flexibility with pull and build overrides

Article Desktop

Sometimes, software projects are simple – one architecture, one version, one release. But often, they can be complex, targeting multiple platforms, and with different versions at that. If you are packaging your apps as snaps, you might wonder about the optimal way to accommodate a multi-dimensional release matrix. One...

Igor Ljubuncic
19 March 2020


Alan Pope
8 March 2020

Safely Backup Google Photos

Article Desktop

With a smart phones in their pocket, most people don’t bother carrying a traditional camera anymore. For most, the single, double or even triple cameras on modern phones are great for making memories. Many Android and some iOS users have chosen to store their photos in the free or paid Google Photos service. In the

Alan Pope
8 March 2020


Igor Ljubuncic
20 February 2020

Parallel installs for classic snaps

Article Ubuntu

For a while now, snapd has supported the ability to install and use multiple instances of the same snap in parallel. This allows users to test features in new software releases side by side with the stable, production versions. Similarly, users can distribute their work or perhaps use custom settings across several...

Igor Ljubuncic
20 February 2020


Alan Pope
6 February 2020

Building a Java snap by example

Article Ubuntu

Following up on the previous example of building a rust and C based snaps, I thought we’d take a look at bundling a Java application as a snap. In this example we’ll use an open source game called “Shattered Pixel Dungeon“. It’s a little more complex than some more common snaps, which helps highlight some

Alan Pope
6 February 2020


Igor Ljubuncic
19 December 2019

Building a C snap by example

Article Desktop

Quite often, getting started with new technologies is a chicken and an egg problem. You want to fall back and rely upon work done by others, so you can learn from it, and yet, as a technological pioneer, you will be facing first-of-kind issues that won’t have readily available answers. We are fully aware of

Igor Ljubuncic
19 December 2019


Ted Kern
14 December 2019

How to build ROS 2 Eloquent Snaps

Article Internet of Things

The end of 2019 brings about the latest ROS 2 release – Eloquent Elusor. Despite an ever growing set of features and some changes throughout the ecosystem, packaging with snaps is as easy as always. Let’s go through a quick example! Prerequisites You’ll need two tools: “snapcraft,” the program that builds snaps, and...

Ted Kern
14 December 2019


Alan Pope
13 December 2019

Building a Rust snap by Example

Article Desktop

There’s plenty of official documentation which details how to create snaps. We live in the copy/paste generation though. So lets walk through a real-world example you can use as a template, or selectively yoink sections from. This is the first in a series of posts which break down how to build snaps based on published

Alan Pope
13 December 2019


Igor Ljubuncic
5 December 2019

Snapcraft now auto-detects missing dependencies

Article Desktop

When you build snaps, the process of composing a complete snapcraft.yaml file will usually revolve around three main activities: parts, build requirements and runtime components. Sometimes, you may discover that you’re missing certain libraries in the compilation stage, or that they are required for your application to...

Igor Ljubuncic
5 December 2019