Working on core parts of Ubuntu


If you’re interested in packaging software and have technical skill in being a programmer, you can contribute to Ubuntu by packaging applications as snaps, and advocating for snap packaging in the upstream community.

Snaps are quick to install, easy to create, safe to run, and they update automatically and transactionally so apps are always fresh and never broken. They also aim to work on any distribution or device, from IoT devices to servers, and desktops.

You can get started by learning to write a simple snapcraft recipe that will allow you to automatically package software into a snap at


If you’re interested in Ubuntu Development but not packaging and have technical skill in being a devop or system administrator you can contribute to Ubuntu by submitting and improving Juju charms.

Juju charms are deployment and service orchestration scripts that enable people to deploy services onto Ubuntu clouds on EC2, HP Cloud, and OpenStack (among others). Since Juju charms can be written in any language, it’s a good way for the devops expertx to share deployment and management scripts with the community.

You can get started with Juju and check out our instructions for writing a charm here.


Some of this info has become stale over the last few years. What is the process for updating it?