Learn snapping! - Interactive Snap Workshops

Do you want to learn how to package applications as Snaps (aka snapping the applications)? To make the application(s) you are maintaining available as Snaps, or to snap applications of other free software projects, perhaps you also want to join the Snapcrafters project?

Naturally you can read the excellent documentation here on snapcraft.io. But reading documentation for learning something new is not everybody’s cup of tea …

You can also come to one of the many conferences where Snap workshops are given, by me, by @lucyllewy, or others …

But if you do not want to wait for the next opportunity or not shell out the money for traveling, conference contributions get recorded, and workshop slides and examples downloadable, at least for my workshops.

So there is no need to meet me giving a workshop on a conference, you can do them all at any time. Click the links below and get a great snapper … Snapcrafters and many upstream application projects need you …

Workshop overview

  1. Your app everywhere, just in a Snap!: Introduction into Snap packaging (snapping) with simple GNOME/GTK applications as example (video, slides as PDF and ODP)
  2. Daemon Snapper’s Workshop: Snapping daemons and system applications (slides as PDF and ODP)
  3. Improving Snap maintenance: Automating tag updates on new upstream releases of the app: GitHub workflow to automatically update your Snap when an upstream source has a new release (video, slides as PDF and ODP)

Links to the exercises and examples are on the slides. You need to have snapcraft installed and working on your machine, follow the instructions in the “Setup” section on the slides of the first workshop or use the virtual machine (~6 GB, *.qcow2) if needed.

Also, the slides often contain valuable extra topics which did not get presented on the conferences, due to time limitations, so go through all of them to learn many useful extra tricks.

And if you want to give a Snap workshop on a conference, feel free to make use of these materials. There are also links to the sources of the slides, the LibreOffice ODP files.

How I got into giving Snap workshops

Back in mid-2022 when I joined the organization team of the Ubuntu Summit 2022 in Prague, I had a 3.5-hour 1:1 video call with the leader of the organization team, Mauro Gaspari (@ilvipero), exchanging ideas of what we can do in this first Ubuntu Summit. And as he brought in that we could do 2-hour interactive workshops where attendees can try out the subject matter on their own laptops, I was immediately sold on that and formed the idea to do a workshop series on how to package applications as Snaps. Mauro liked this idea and I started to work on making it reality.

And on the Ubuntu Summit 2022 in Prague, one year ago, it actually has taken place: One introduction panel and 5 workshops. All the speakers, including me, have put a lot of effort in designing the workshops and especially also the accompanying examples/exercises. Too much for presenting this only one single time …

The first workshop, the one to learn the basics, “Snapping like hell(sworth)”, originally given by Heather Ellsworth (@hellsworth1) and Lucy Llewellyn (@lucyllewy), got already re-enacted as “Snapping with Lucy” soon after, only by Lucy on the DORS/CLUC in May 2023, in Zagrep, Croatia.

Not actually knowing about Lucy’s edition I also formed the idea to give Snap workshops on further conferences. So I submitted “Snapping like hell(sworth)”, renamed to “Your app everywhere, just in a Snap!” (the original name of the whole workshop series) on the Linux App Summit 2023 in Brno, the GUADEC 2023 in Riga, and the Ubuntu Summit 2023 in Riga, the latter 2 together with Heather. Only on the GUADEC it got accepted, but due to lack of audience I could not actually give it.

But I have also organized my own conference this year, the Opportunity Open Source in the Indian Institute of Technology (IIT) Mandi in northern India. And there, after having done a quick pre-check, finding out that the 3 other employees of Canonical who also attended are interested and so I had an assured base audience, I actually gave it, but only the first half, as time restrictions only gave me a 60-min slot. I got a total audience of 12, what was very good, probably several got motivated by my talk introducing into Snap (video, slides).

And finally I got the opportunity to give the workshop (video, slides) in its entirety on Canonical’s internal Engineering Sprint, which happened in the week after the Ubuntu Summit 2023, also in Riga. Having ~700 engineers from Canonical on the event it was easy to get a significant audience, actually around 25 to 30 people showed up to get great snappers. And as there are only Canonical people, everyone had a suitable Ubuntu version on their laptop where they could install snapcraft and do the exercises. Nobody needed the virtual machine (~6 GB) which I have prepared already before the GUADEC. And so I found out how long the complete workshop actually takes. I made it in 2:10 hours.

And on the Ubuntu Summit 2023 I actually got accepted for a Snap workshop, but for a more advanced one, “Improving Snap maintenance: Automating tag updates on new upstream releases of the app” (video, slides). I originally submitted it together with Heather, who originally created the update automation, but as she left Canonical, she was not on the Summit and I had to replace her by Jesús Soto (@jssotomdz).

Some people were complaining that we had no beginner’s workshop for Snap on this year’s Summit. We are looking into fixing this in 2024 …

So together with the “Daemon Snapper’s Workshop” (slides) I have now a repertoire of 3 (see below) and I will continue to give them on conferences and Engineering Sprints.