Contribute to Application Development


As the developers’ choice of operating systems, Ubuntu provides numerous avenues for creating new software. Developers can pursue traditional debian package development, build universal and sandboxed Snap applications or even create Juju Charms for container orchestration.

Snaps Applications

Snaps are application packages for desktop, cloud and IoT that are easy to install, secure, cross‐platform and dependency‐free. Snaps are discoverable and installable from the Snap Store, the app store for Linux with an audience of millions.

Learn the art of snapcraft by making your very first Snap.

Debian Packages

The majority of source packages in Ubuntu are copied unmodified from Debian, therefore the best route for getting packages into Ubuntu is through Debian. Not only will this help ensure your application is available to Ubuntu users, but to those using Debian and the many Ubuntu flavors, remixes and derivatives.

Follow the Debian Packaging Tutorial and learn the Ubuntu New Package Process.

Discover the relationship between Ubuntu and Debian

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 experts to share deployment and management scripts with the community. Developers can share their charms on Charmhub, a repository of ready-to-use charms.

Get started by writing your first Juju charm.


Application Development IRC Channels

#ubuntu-app-devel IRC Channel

Application Development Mailing Lists

Ubuntu App Development Mailing List