Launchpad

Launchpad is a software collaboration and hosting platform similar to platforms like GitHub. Launchpad is also the platform where the Ubuntu project lives. This is one of the major differences between the Ubuntu and Debian infrastructure.

Note

Although the Ubuntu project is probably the largest user base of Launchpad, Launchpad can be used by anyone.

Launchpad features, among others, are:

While platforms like GitHub put users and groups at the top level, Launchpad puts projects at the top level. If you take Ubuntu as an example, you can see that you can access it at the top level: https://launchpad.net/ubuntu. Users and groups begin with a ~, for instance https://launchpad.net/~ubuntu-foundations-team.

Why not use platforms like GitHub?

Although Launchpad’s UI and UX are a bit dated, Launchpad offers an unparalleled Ubuntu package building and hosting infrastructure that no other platform offers. Even simple requirements like building for architectures like PowerPC, s390x, or RISC-V cannot be fulfilled by GitHub or similar platforms.

Personal Package Archive (PPA)

Launchpad PPA repositories allow you to build installable Ubuntu packages for multiple architectures and to host them in your own software repository.

Using a PPA is straightforward; you don’t need the approval of anyone, therefore users have to enable it manually. See how to Install packages from a PPA.

This is useful when you want to test a change, or to show others that a change builds successfully or is installable. Some people have special permission to trigger the autopkgtests for packages in a PPA.

Tip

You can ask in the IRC channel #ubuntu-devel if someone can trigger autopkgtests in your PPA if you don’t have the permission.

Git-based workflow for the development of Ubuntu source packages

Launchpad hosts a git-ubuntu importer service, which maintains a view of the entire packaging version history of Ubuntu source packages using Git repositories with a common branching and tagging scheme. The git-ubuntu CLI provides tooling and automation that understands these repositories to make the development of Ubuntu itself easier.

To see the web-view of these repositories, click the Code tab of any source package on Launchpad.

Text markup

Launchpad has some markup features that you can use when you e.g. report bugs, write comments, create merge proposals.

See the TODO: add link to new LP docs reference for more details.

Getting help

For help with Launchpad, choose any of the following methods:

IRC chat rooms

On the irc.libera.chat IRC server, find the #launchpad channel, where you can ask the Launchpad team and the Ubuntu community for help.

Mailing lists

To ask for help via email, write to the launchpad-users mailing list (launchpad-users@lists.launchpad.net).

Ask a question

As mentioned above, Launchpad has a community FAQ feature (called “Answers”) where you can see other people’s questions or ask one yourself. Use the Answers feature of the Launchpad project on Launchpad itself.

Report a bug

To submit a bug related to Launchpad, use the Bug Tracking System of the Launchpad project on Launchpad itself.

Staging environment

Before new features are deployed to the production environment, they are deployed to a staging environment where the changes can get tested.

Use the staging environment, to try out Launchpad features.

API

Launchpad has a web API to interact with its services. This allows developer communities to automate specific workflows.

The reference documentation for the web API on Launchpad.

The Launchpad team created an open source Python library, launchpadlib.

Further reading