It’s 20th November 2016, so today marks another Ubuntu Community Appreciation Day. The idea for the event was put together by Ahmed Shams in 2011 and it’s simple but brilliant: once a year (at least), take the time to thank some specific people for their work in Ubuntu.
As I’m at UbuCon Europe this weekend, it’s incredibly easy to pick somebody whose work I’m grateful for. Today I’d like to thank all the event organisers in the Ubuntu world. Without people like Sujeevan Vijayakumaran (in the case of UbuCon Europe), we as a community, wouldn’t be able to get together, learn from each other and have fun together. It takes a set of special skills to organise big and small events, plan ahead, talk to various people and companies, organise sponsors and helpers and it’s something we often take too much for granted.
Thank you everyone who organised the Ubuntu events I’ve been to over the years, no matter if it’s the small meetings in a bar or the crazy big events, like UDSes (thanks Claire, Marianna and Michelle!). You are incredible rockstars and I had some of my best times thanks to you!
Earlier this week the Ubuntu community was busy with the Ubuntu Online Summit. If you head to the schedule page, you can watch all the sessions which happened.
As I’m interested in snaps a lot, I’d like to highlight some of the sessions which happened there, so if you missed them, you can go back and see what happened there:
Intro and keynote by Gustavo Niemeyer
Gustavo (amongst others projects he is involved with) is one of the lead developers of snapd. During his keynote he gives an overview over what the team has been working on in the last time and explains which features all landed in the snap world recently. It quickly gives you an idea of the pace of development and the breadth of new features which landed.
Creating your first snap
This is a session I gave. Unfortunately Didier couldn’t make it as he had lost his voice in the days before. We both worked together on the content for this. Basically, if you’re new to using and creating snaps, watch this. It’s a series of very simple steps you can follow along and gives you enough background to see the bigger picture.
Snap roadmap and Q&A
This was a fun session with Michael Vogt and Zygmunt Krynicki. They are also both lead developers of snapd and they share a lot of their thoughts in their own very fun and very interesting way. After some discussion of the roadmap, they dived right into the almost endless stream of questions. If you want to get an idea of what’s coming up and some of the more general decisions behind snaps, watch this one.
Building snaps in Launchpad
Colin Watson gave this demo of a beautiful new feature in Launchpad. Starting from a github repo (the source could live elsewhere too), the source is pulled into Launchpad, snaps are built for selected releases of Ubuntu and selected architectures and directly pushed to the store. It’s incredibly easy to set up, complements your CI process and makes building on various architectures and publishing the snaps trivial. Thanks a lot for everybody’s work on this!
The other sessions were great too, this is just what I picked up from the world of snaps.
Ubuntu 16.04 LTS, aka the Xenial Xerus, has just been released. It’s incredible that it’s already the 24th Ubuntu release and the 6th LTS release. If you have been around for a while and need a blast from the past, check out this video:
You would think that after such a long time releases get somewhat inflationary and less important and while I’d very likely always say on release day “yes, this one is the best of all so far”, Ubuntu 16.04 is indeed very special to me.
Snappy Ubuntu Core 2.0 landing just in time for the 16.04 LTS release only happened due to the great and very hard work of many teams and individuals. I also see it as the implementation of lots of feedback we have been getting from third party app developers, ISVs and upstream projects over the years. Basically what all of them wanted was in a nutshell: a solid Ubuntu base, flexibility in handling their app and the relevant stack, independence from distro freezes, dead-simple packaging, bullet-proof upgrades and rollbacks, and an app store model established with the rise of the smartphones. Snappy Ubuntu Core is exactly that and more. What it also brings to Ubuntu is a clear isolation between apps and a universal trust model.
As most of you know, I’ve been trying to teach people how to do packaging for Ubuntu for years and it continued to improve and get easier, but all in all, it still is hard to get right. snapcraft makes this so much easier. It’s just beautiful. If you have been doing some packaging in the past, just take a look at some of the examples.
Landing a well-working and stable snapd with clear-cut and stable set of APIs was the most important aspect, especially considering that almost everyone will be basing their work on 16.04 LTS, which is going to be supported for five years. This includes being able to use snapcraft on the LTS.
Today you can build a snap, upload it to the store using snapcraft upload, having it automatically reviewed and published by the store and Desktop users can install it on their system. This brings you in a position where you can easily share your software with millions of users, without having to wait for somebody to upload it to the distro for you, without having your users add yet another PPA, etc.
So, what’s still missing? Quite a few things actually. Because you have to bundle your dependencies, packages are still quite big. This will change as soon as the specifics of OS and library snaps are figured out. Apart from that many new interfaces will need to be added to make Ubuntu Core really useful and versatile. There are also still a few bugs which need figuring out.
If you generally like what you’re reading here, come and talk to us. Introduce yourselves, talk to us and we’ll figure out if anything you need it still missing.
If you’re curious you can also check out some blog posts written by people who worked on this relentlessly in the last weeks:
I can’t wait for UbuCon Summit to start. The list of attendees is growing and with some of the folks it’s been ages since I met them in person the last time. For me that’s the number one reason to be there. Catching up with everyone will be great.
The schedule for UbuCon Summit is looking fantastic as well. We have many many great talks and demos lined up from a really broad spectrum, there’s going to be much to learn about and there’s going to be more surprises coming up in the unconference part of UbuCon.
Among the changes: a nil plugin, support of pip packages, support globs in the copy plugin, a nodejs plugin, add go-packages to the go plugin, countless bugfixes and tests, a more beautiful interface and more documentation.
The above and to get Sergio Schvezov on camera are reasons enough for us to have another Snappy Clinic
This morning I chatted with Laura Czajkowski and we quickly figured out that wily is our 23rd Ubuntu release. Crazy in a way – 23 releases, who would’ve thought? But on the other hand, Ubuntu is a constant evolution of great stuff becoming even better. Even after 11 years of Ubuntu I can still easily get excited about what’s new in Ubuntu and what is getting better. If you have read any of my recent blog entries you will know that snappy and snapcraft are a combination too good to be true. Shipping software on Ubuntu has never been that easy and I can’t wait for snappy and snapcraft to reach into further parts of Ubuntu. The 16.04 (‘xenial‘) cycle is going to deliver much more of this. Awesome!
But for now: enjoy the great work wrapped up in our wily 15.10 package. Take it, install it, give it to friends and family and spread great open source software in the world. 🙂
We already received a number of good nominations so far, but I thought it’d be good to try to convince a few more of you to nominate yourself or nominate a friend of yours. If flavours and other important teams would get some more representation on the CC, that’d be great.
What I love about the CC is that you get to hear from many parts of the community first-hand what’s happening, what’s new and that you can often help out by connecting people in various parts of the community. This is one of the many things I always enjoyed the most.
Of course there are also disputes and conflicts to deal with at times. In the past some of them were harder (and took longer) to resolve, but they provided a learning experience for us as a community and everyone individually. So while this is probably nothing you would immediately be looking forward to, it’s an important part of keeping our community working well.
I’m grateful for the time I spent on the CC and everyone who worked together with me here. I look forward to seeing how many nominations we have by Friday. (Read all the details in either of the two posts mentioned at the top.)
I have some very exciting news, but wanted to share some thoughts I had earlier today.
Since I joined the Ubuntu community I’ve always had to do with people who want to ship their software in Ubuntu and as I’m a generally excitable guy I always thought “finally, it became so much easier – we’re there”! Over the past years we got better documentation, PPAs in Launchpad, the dh command, bzr-builddeb, daily builds in Launchpad, pkgme, the ARB process, translated documentation and lots of other initiatives which always felt like we made the world a better place for ISVs, third party app developers, upstream developers and whoever else wanted their software to be in Ubuntu.
Fast-forward to Ubuntu on the phone and click. Suddenly it became SUPER easy, even easier to ship software. Write a manifest, run “click build“, upload it to the store where it gets auto-reviewed and you’re golden. This was possible because apparmor and friends were so tightly integrated into the phone experience and confinement fully worked, so we could trust apps to be safe and trust our automatic reviews. Finally!
snappy, the evolution of click, has a much broader scope and is finally moving into the center of attention of many and will at some stage also get on the phone and elsewhere. It shares the concept of a central software store with confined apps but brings atomic upgrades, rollbacks and lots of other goodness.
From the point of view of somebody who’s shipping software some things were still missing though. How do you easily do repeatable builds, especially if they involve bundling other software?
Enter snapcraft. A thing of beauty. Finally you can specify all relevant meta-data in one file, define which parts make up your app and snapcraft’s plugins (Go, Java, autotools, etc.) will take care of pulling and building sources and binaries, which files to ship exactly and everything else. It’s magic.
We just shipped 0.2 of snapcraft and the amount of new tests, bug fixes and goodness which landed is staggering. Even more importantly: the syntax of snapcraft.yaml is now very likely going to be stable.
we are going to have our first of many Ubuntu Snappy Clinics brought to you by Sergio Schvezov, Michael Vogt and myself. The topics of these clinics are going to change, but will always be centered around snappy and the technologies around it and will give enough opportunities to ask your questions and work on things together.
Now is a brilliant time to involved with snapcraft.
Thanks to Nathan Haines and José Antonio Rey we have the Ubuntu Free Culture Showcase again. It’s Ubuntu’s way of acknowledging that there’s not just “free software”, but a wider movement which wants to make sharing the fruits of our labour an obvious and straight-forward reality.
You still have some time to submit your works for the competition. The winners are going to get their free culture works included in Ubuntu itself. Please share this with all your producer and artist friends who are into free culture.
This is a 0.1 release, so there are bugs and there might be bigger changes coming your way, but there will also be more docs, more plugins and more good stuff in general. If you’re curious, you might want to sign up for the daily build (just add the ppa:snappy-dev/snapcraft-daily PPA).