Snapcraft through the eyes of its biggest community contributor
by Sarah Dickinson on 16 February 2018
If you’ve spent any time in the Snapcraft forum, it’s quite likely you’ve come across Dan Llewellyn – a keen community advocate or self-proclaimed Snapcrafter. Dan has always had a passion for computing and is completely self-taught. Outside of the community, Dan is a freelance WordPress developer. After getting into the open source world around 1998, he has switched between various Linux distros including Suse, RedHat, Gentoo before settling on Ubuntu from the 5.04 release onwards. A longtime participant in the UK Ubuntu chatroom – where he met Canonical’s Alan Pope – Dan admits he was never that active before Snapcraft came along.
It was spending time in the UK chatroom around 2016 that he discovered snaps which piqued his interest. “I saw the movement of changing Clicks to snaps and thought it was an interesting idea. It’s more widely focused than a mobile app delivery system and I’ve always liked things that also worked on the server, IoT and elsewhere” Dan comments. With a previous desire to get into mobile app development and seeing the move away from Ubuntu Touch, Dan was eager to see Snapcraft succeed and felt like it was something he could contribute to.
Being such a regular presence in the Snapcraft forum, Dan is close to what the most commonly covered topics are and where the trends are forming. “Aside from the basics like ‘how do I build a snap?’, there are lots of discussions around documentation. Games are always a popular demand as it is entertainment which is often one of the first things adopted” adds Dan. Other observations include a natural weighting towards desktop snaps although notes Nextcloud is a nice example of a server snap. Audacity and a non-beta version of picture editing tool Gimp are among the most demanded, as well as a Git snap which Dan is working on himself. Outside of Ubuntu users, Arch is the most vocal alternative Linux distro present in the forum.
Dan is also in the perfect position to identify himself and also gather opinion on what’s good and what could be good additions to the snap world. Initially, the idea of a transactional update system outside of the standard distro release process was an appeal personally. Allowing snaps to define their own interfaces on a per snap basis along the lines of how a non-auto connected interface, where store admins vote whether it is acceptable, would be an interesting addition to consider according to Dan. Arbitrary interfaces will allow snap developers to move faster than the current fixed interfaces allow by being able to define own confinement rules. The store admin vote requirement will retain security by denying inappropriate land-grab interfaces.
Dan believes people can come to the format with pre-conceived ideas which tend not to be accurate. “We need to show it is easy, although there are always steps to make it easier. The Canonical team are aware that documentation improvements could be made” says Dan. The onboarding process has seen improvement in Dan’s eyes highlighted by the Google Summer of Code and Google Code-in programmes where dozens of participants quickly got snaps out the door.
With that in mind, what is the main piece of advice he would give to someone investigating snaps for the first time? “If you’re running Ubuntu, then running ‘snap install chromium’ is an easy start and gets you a full web browser that works out the box” Dan states.
The last few weeks has seen some significant snap additions with Spotify, Skype and Slack all joining the store which sets the snaps ecosystem up nicely for the year ahead. Dan highlights the importance of these three; “Attracting these big corporations will light the way for others. They’ve clearly seen snaps can enable them to target as much of the Linux eco-system in one go as possible. As well as showcasing a commercial product is viable as a snap, it could also encourage some that haven’t bothered with Linux in the past to reconsider.”
The store presence is key to the adoption and discoverability of all snaps. Dan has seen the Spotify snap go from strength to strength following the promotion capabilities in the GNOME software centre – while noting it’s just as important for smaller developers who may not have the same resource. Another subtle benefit is the simple fact that people like stores as it provides a sense of gatekeeping to prevent ‘nasty stuff’ appearing.
Dan further embedded himself within the Snapcraft world by joining the recent Snapcraft Summit in Seattle. Despite being one of the most regular contributors in the Snapcraft community, this week-long event helped Dan understand other use cases for snaps that he hadn’t anticipated. Summing up the event, Dan concludes, “It was great to get to know everyone in one room face to face. I’d love to see more of them occur. To be invited, I feel valued, I really do.”