Score:1

Why does Canonical organize Launchpad as separate PPAs for each author, rather than as a single repository?

US flag
user199972

The popularity of Ubuntu has encouraged many authors to ensure that their applications are distributed as APT packages that function under Ubuntu releases. However, the infrastructure and tools provided by Canonical are based on PPAs, separate Debian repositories for each publisher.

The system requires administrators to add a separate repository to the local configuration for each individual publisher, and publishers to maintain individual PPAs with separately issued keys for signing. The inconvenience associated with these operations has attracted some criticism.

An alternative system might be one that aggregates the contributions of all publishers into a single repository, with mediators to resolve any disputes over name conflicts or concerns over software quality, while still giving publishers direct control over updating packages.

A repository operating through a similar kind of approach, often called a community repository, is common for many Linux-based operating systems, often serving as a testing ground for packages seeking adoption by the distribution maintainers into one of the official repositories.

What is the reason for Canonical choosing and maintaining PPAs? Is the system associated with advantages that might make it more compelling than certain alternatives?

Artur Meinild avatar
vn flag
I don't have a definite answer, but some thoughts: Aside from PPA's, you have the Universe repository (which is maintained by vetted community members - [MOTU](https://wiki.ubuntu.com/MOTU)), as well as the community initative [Pacstall](https://github.com/pacstall/pacstall) (which is somewhat similar to AUR).
Artur Meinild avatar
vn flag
The Universe and Multiverse repos are maintained by the community, and not Canonical. But yes, they're still only for stable packages, and Universe is where default Debian packages go.
Artur Meinild avatar
vn flag
Which Linux distros have community repositories that allow *any* package to be added by *any* person, as you suggest? Can you include examples in the post?
andrew.46 avatar
in flag
Slackware has slackbuilds.org which is somewhat similar to what you are suggesting, and Arch has AUR. These could be added to the question as examples?
Artur Meinild avatar
vn flag
Unless I'm wrong, both Slackbuilds, AUR and Pacstall are build script systems rather than package repos. And maybe what you're after are in fact best suited as such, and not as "open" repos. It could seem that way from what others are doing at least.
Score:3
cn flag

What is the reason for Canonical choosing and maintaining PPAs?

PPAs were originally intended for testing purposes when they were introduced around 2006 or so.

Very quickly, many folks realized that they could use PPAs as a method of independent distribution instead of contributing the code to Debian or Ubuntu, and it has been so used by some ever since. But that was unanticipated. That desire of some developers to cut distros out of the process was also one of the criteria for Snap package development a decade later.

Is the system associated with advantages that might make it more compelling than certain alternatives?

Yes, for the original purpose of testing: It's still a great way to incrementally test fixes and new features with the goal of pushing those improvements to Debian or Ubuntu.

No, as a method of widely distributing software. It's easier than meeting Debian standards, but those standards are there for very good quality-related reasons

An alternative system might be one that aggregates the contributions of all publishers into a single repository

It exists. It's Debian Unstable. Anyone who meets Debian's standards of trust can upload their software to Debian. The resulting packages will merge to Ubuntu automatically when it enters Debian Testing.

The Debian method and standards provide two major benefits:

  • Quality: Software is mostly independent of the OS on other platforms. But not in a Debian-based system. OS and applications are tightly integrated, and a huge amount of volunteer testing and patching occurs to ensure applications work as intended in the desired environment.

  • Trust: The uploader has a reputation for trustworthiness and competence. Users are likelier to get software that is safe and secure.

Quality and Trust cannot be assumed or handwaved. They are critical components of any kind of repository system. Any serious proposal must address them realistically.

Ubuntu was designed from the beginning to be a complement to Debian. We draw packages from Debian and we feed back volunteers and developers and code. We help and support each other. The venn diagram showing Ubuntu Developers and Debian Developers has a large overlap.

A community Ubuntu repo would duplicate the quality and trust efforts already being done by Debian...for no significant benefit. Here at AskUbuntu, when developers ask how to upload their software to Ubuntu, we often send them to Debian as their starting point.

mangohost

Post an answer

Most people don’t grasp that asking a lot of questions unlocks learning and improves interpersonal bonding. In Alison’s studies, for example, though people could accurately recall how many questions had been asked in their conversations, they didn’t intuit the link between questions and liking. Across four studies, in which participants were engaged in conversations themselves or read transcripts of others’ conversations, people tended not to realize that question asking would influence—or had influenced—the level of amity between the conversationalists.