Perfectly Formed Snaps Challenge

by Alan Pope on 18 July 2018

Summer is here (sorry Southern hemisphere), and with the World Cup and Wimbledon over, it’s time for a new challenge!

Background

Snaps are universal Linux software packages. That means they can work anywhere, and contain anything. Whether you’re a Pythonista, a Golang developer or if C++ is your bag, Snapcraft can package your software as a snap.

Recently we’ve seen leading developers such as Spotify, Microsoft and Slack deliver their flagship applications on Linux as snaps. These snaps ship with all necessary libraries and assets required to run on any modern Linux distribution.

Small-Scale Snaps

Snaps are perfect for the smaller things in life too. Looking away from the graphical flagship apps, the snap store hosts lightweight server daemons, command line utilities, developer tools and even tiny games.

Recently, a couple of petite snaps were published in the store. Sparky is a simple game played in a terminal, and a modest 32KB on disk. Bash-Shell-RPG is similarly diminutive at only 8KB. Neither contain an excess of additional libraries, just the absolute minimum needed to function everywhere.

The Challenge

This got us wondering just how much it’s possible to pack in a snap, so we kicked off a challenge over on the snapcraft forums. Create as small a snap as possible, containing something fun, functional or interesting. Preferably something new that you’ve created. We all know the demo scene are able to code amazing things in small spaces, but we’re not looking to snap all of pouet.net. Also, we’re not after a hundred more ‘hello world’ apps. We’re sure you can come up with something more compelling.

The goal of the challenge is to get new, interesting and fun things available to Linux users as snaps, but in the smallest, tightest package possible. It could be a script or handy utility you’ve developed, or a fully-fledged application. There’s no hard size limit or requirements, but consider a 1.44MB floppy disk as a soft size guideline. Go larger or smaller though, it’s up to you.

For those who haven’t created snaps before, we recommend consulting the documentation. Perhaps take a look at the snapcraft.yaml for Sparky and Bash-Shell-RPG to get an idea for how simple they can be.

If you’re a developer and have some time over the summer, we’d love to see what you come up with There’s no prize other than your sense of achievement and the wonder from your peers!

Build your snap, register an account in the store, publish your snap, and share your creation on the forum.

Lacking inspiration? Take a look through the expansive snapcraft wishlist to see what other users are asking for!

We’re looking forward to seeing what pocket-sized snaps you come up with!

Newsletter Signup

Related posts

We wish you RISC-V holidays!

There are three types of computer users: the end user, the system administrator, and the involuntary system administrator. As it happens, everyone has found themselves in the last group at some point or another; you sit down to perform a task relevant to your needs or duties, but suddenly the machine does not work as […]

Improving snap maintenance with automation

Co-written with Sergio Costas Rodríguez. As the number of snaps increases, the need for automation grows. Any automation to help us maintain a group of snaps is welcome and necessary for us to be able to scale. The solution detailed in this article has two main benefits: Any users of snaps that have adopted this […]

Snapcraft 8.0 and the respectable end of core18

‘E’s not pinin’! ‘E’s passed on! This base is no more! He has ceased to be! ‘E’s expired and gone to meet ‘is maker! ‘E’s a stiff! Bereft of life, ‘e rests in peace! If you hadn’t nailed ‘im to the perch ‘e’d be pushing up the daisies! ‘Is software processes are now ‘istory! ‘E’s […]