Ubuntu Flavor Packaging Defaults

Ubuntu flavors offer a unique way to experience Ubuntu, and are part of what makes Ubuntu not just an operating system, but an ecosystem of Linux variations that promote choice and diversity. Flavors build around a common core experience, where it is immediately clear that you are using Ubuntu, and provide their own finesse on top.

Through its flavors and many other interesting projects, Ubuntu is a community of communities. True to the meaning of the word Ubuntu we all can achieve more than we would individually. We regularly collaborate to further our joint mission, directing our combined efforts toward the fundamental technologies that drive it.

One such fundamental aspect of any Linux distribution is packaging. Major distributions have all made opinionated choices to provide consistency in their ecosystem. Ubuntu builds on a foundation of deb packages and believes in the advantages of snaps. We aim to provide a secure and simple user experience and to make it easy to maintain packages. We collaborate with contributors from around the world to improve snaps and address remaining shortcomings, as they are an increasing part of the experience in Ubuntu. However, we also believe in a culture of openness where other packaging technologies are available and allow developers and users to explore different approaches.

In an ideal world, users experience a single way to install software. When they do so, they can expect that this mechanism is supported by the community and receives the majority of attention when it comes to resolving issues in software packages. When a new packaging technology is provided by default, there is an expectation that the distribution provides community support and is invested in contributing to development to resolve issues. This creates fragmentation instead of focusing on improving the technologies chosen for the distribution.

To maintain this focus while also providing user choice, Ubuntu and its flavors consider debs and snaps the default experience. Users have the freedom of choice to get their software from other sources, including Flatpak. A way to install these alternatives is, and will continue to be, available for installation from the Ubuntu archive with a simple command.

As part of our combined efforts, the Ubuntu flavors have made a joint decision to adjust some of the default packages on Ubuntu: Going forward, the Flatpak package as well as the packages to integrate Flatpak into the respective software center will no longer be installed by default in the next release due in April 2023, Lunar Lobster. Users who have used Flatpak will not be affected on upgrade, as flavors are including a special migration that takes this into account. Those who haven’t interacted with Flatpak will be presented with software from the Ubuntu repositories and the Snap Store.

We think this will improve the out-of-the-box Ubuntu experience for new users while respecting how existing users personalize their own experiences. However, we don’t want this to come as a surprise. If you have comments specific to this change you are welcome to respond here on discourse.

This message was written and published in collaboration with all official Ubuntu flavors.

FAQ

I will be adding some questions that have come up more regularly here. There are further questions I’ve acknowledged and am working on a response for, please stay tuned.

Does this mean I won’t be able to use other technologies aside from deb packages and snaps? Will my existing Flatpaks be removed?

You are welcome to install other package managers using the software center or command line. These packages will continue to be available for installation, and we have no intention of changing that now or in the future.

We’ve added a special migration that checks if you have Flatpak packages installed or remotes configured. If so, flatpak and related software centre plugins won’t be auto-removed on an upgrade to Lunar Lobster. Therefore, you don’t need to be concerned about this change.

Does Flatpak being in the “archive” imply that it is going to be dropped?

No, the “archive” is the location where all Ubuntu packages live. We did not use the term “repository” here to avoid confusion with Flatpak repositories. The Flatpak package on Ubuntu is available in the universe repository of Ubuntu.

Does this mean Flatpak is being removed from older releases such as 22.04 and 22.10?

No, flavors are not actively removing package managers from the current or older releases. This change is for the upgrade to Lunar Lobster and beyond, where it is available but will not be installed by default in new installations.

I’m using a distro that is based on Ubuntu but not a flavor. Will these be affected as well?

While we appreciate if there is a focus on snaps and debs to contribute to Ubuntu’s foundational choices, this is a decision for each downstream distribution to make. There are no changes in availability of the packages that would impact distros without action on their own part.

What would you say the project’s position is on Ubuntu flavours as innovators, as ground breakers in trying out new technologies vs. a having a consistent foundational experience across all flavours? See this question in context
Flavors certainly have the opportunity to innovate in their field and try new technology, though there are practical limitations to this. One flavor requirement is that “[their] intention and goals are aligned with the goals of the Ubuntu project”. Given the breadth of technology in a Linux distribution it will be impossible to draw a clear-cut line or create a checklist policy. The more Ubuntu’s community governance bodies such as the Technical Board and Community Council describe these goals, the easier it will be for flavors to apply their own judgment on which technological choices should be included.

As technology becomes more experimental or may not align with Ubuntu’s goals, we welcome and encourage contributors creating remixes that go a step further, and even be in conflict with Ubuntu’s direction. Taking these alternative paths is healthy, because the userbase benefits from the competition. If experiments are successful, this is a good opportunity to bring the positive changes back into Ubuntu and its flavors, or use the results to influence design decisions. Ultimately this leads to better open source software for everyone.

This also applies to alternative choices in software package management. We welcome that others are exploring different approaches in their own distributions and are looking forward to seeing which design decisions will prevail.

How did this decision come to be? Was it Canonical imposing a direction?
The decision announced here is a result of building consensus among flavors. Canonical’s community team had reached out to flavor leads for an open discussion on default packaging in Ubuntu flavors. In each conversation, we presented our point of view regarding these changes and were open to discussion. While there were differences in initial agreement, in most cases the flavor representatives signaled willingness to make the changes by the end of the conversation. Some flavor leads had requested a joint announcement regarding these changes, to avoid a later surprise during or after the Lunar Lobster release.

We created an initial draft, and consequently asked each flavor lead and the Community Council for feedback and to suggest changes. They provided elaborate feedback which has substantially improved the clarity of the messaging. As a final step, we asked each flavor to sign off to signal they feel the content is accurate and are willing to stand behind the message.

As such, the decision to remove Flatpak from the default set was made together, not as a policy set by Canonical or Ubuntu’s Technical Board. We appreciate that flavors were open to making these changes, and look forward to collaborating with them further.

23 Likes

Hey, thanks for the communication. It’s nice this was done transparently rather than slipped in.

I’ve got a question which this raises in my mind, and it’s about Ubuntu as a place for distribution makers to try and innovate.

What would you say the project’s position is on Ubuntu flavours as innovators, as ground breakers in trying out new technologies vs. a having a consistent foundational experience across all flavours? Not only in packaging . A theme I noticed - which I’m raising as an example only - at FOSDEM this year was people exploring new ways of booting their Linux systems (UKI, read-only root filesystems, TPM to unlock LUKS). To some extent this is playing in the same space but with a different implementation to Ubuntu Core. Would the Ubuntu project be a place for trying out such innovation or would you recommend folks look elsewhere?

Thanks @kewisch!

3 Likes

For some reason, this reminds me to… YouTube’s decision to remove the dislike button.
All for “greater user experience”, peace, and harmony.

A simple voting system regarding this decision would have been amazing to see.
Since this rather seems a Canonical way or highway.

6 Likes

this is dissapointing. Linux Mint doesn’t like snaps. Pop-os default is also flatpak

4 Likes

both of them decided to not want to be flavours (with all the drawbacks and incompatibilities and support issues on the ubuntu side that brings along), so they were not involved in the discussion at all and will not be affected by this either …

10 Likes

Would make more sence if ubuntu didn’t have gnome as a default as snaps will never be native in gnome

1 Like

This is one of the reasons I actually stopped being a moderator at askubuntu. Not because of inactivity, but because I started to see that you guys are not really listening to the community and would make what I believe about Ubuntu harder and harder to promote, like it was around Ubuntu 10.10.

BTW removing flatpak is not at all related to the phrase:

“Ubuntu is a community of communities. True to the meaning of the word Ubuntu we all can achieve more than we would individually.”

It is in fact the opposite. If someone wanted to use something that is on flatpak because it is more updated than a snap or deb version, they should not need to do an extra step for it. Also the package is very small compared to other ones found natively in Ubuntu.

It is stuff like this which makes people that promote and defend Ubuntu for years, turn their life even harder to keep on promoting it.

"We think this will improve the out-of-the-box Ubuntu experience for new users while respecting how existing users personalize their own experiences. "

Really? How so? How is this improving the out of the box Ubuntu experience for new users.

Too many nice words for simply marketing the fact that flatpak is going away because it directly competes against snap. On top of it, the elephant of the room which is snap that gets a lot of criticism is not even addressed. Ubuntu was supposed to be a guidance force for many distros, instead, little by little it is turning into something completely different from the times of Ubuntu 10.10 or before.

Not listening to the community, literally doing the opposite, even during public voting sessions, knowing all to well about community problems but focusing on something else.

13 Likes

As a developer, it might help to see a bit of the standpoint I have on this issue, as I actually agree with the decision to not include Flatpak by default. I may simply be reiterating what @kewisch has already said, but I don’t have to talk in “official language” so it might be a bit easier to swallow.

It may be easily overlooked, but one of the core features of Ubuntu is that package versions change very, very rarely. If at all possible, bug fixes are taken from the (openly viewable) source code of an application, carefully tweaked to make them compatible with an older version of the software, patched in, tested, and only then deployed. There are a few packages where this is impractical (Firefox for instance), and there are some closed-source packages in the Restricted repo that we can’t backport patches into since we don’t have the code. But for the most part, if you install an app into Ubuntu, that’s the app you get, and that will be the app you continue to use for the rest of that release’s lifespan.

This is a powerful feature since it makes Ubuntu unlikely to randomly break your important data as often as that other OS that you hear get a lot of grief from Linux geeks, but it also requires that Canonical and the Ubuntu community have near-total control over the software repository.

That’s only possible if Canonical actually has the necessary control.

Canonical does have total and complete control over the Ubuntu archive that apt uses. And Canonical has total and complete control over the Snap repository. If something goes wrong and Canonical must step it, they can.

But Canonical has zero control over the Flatpak repositories. They do not host a Flatpak repo of their own (Snap does the near-equivalent job), nor do they control Flathub or any of the other Flatpak repos (at least as far as I know). This means that if something goes awry with a Flatpak, the user is pretty much left to figure it out for themselves.

What’s worse, most of the Ubuntu flavors (and Ubuntu itself) provide free technical support via forums and IRC channels. Most of our users are using software from the Ubuntu repos or Snap Store and we are equipped to help them. We know what to expect from the software our users run and can give targeted and efficient advice on how to resolve issues. Some of us can even kick things into shape in the archives if there’s a legitimate problem with our packages, or we know who to talk to.

With Flatpaks, the situation is much more dismal from a technical support perspective. We have little-to-no clue what quirks the software vendor(s) will have introduced since we don’t work closely with them. We have no way to reach in and fix legitimate bugs aside from filing bug reports and hoping that they will be answered. We’re going to end up with frustrated support staff and even more frustrated users. And all because they didn’t know that if they clicked a particular button in their flavor’s app store, they would be downloading unsupported software.

Yuck. No thanks.

Ubuntu provides plenty enough software for most people in the apt archives and in the Snap Store. In the rare instances that someone needs a Flatpak, they have to go out of their way to enable Flatpak support, which gives them a clue that what they’re doing might not end well. If they enable Flatpak, install an app, it fails, and then they come ask for help, they’ll at least expect it when we say “sorry, we don’t support Flatpaks, that’s why they require extra steps to enable”. They’re exactly like PPAs from an Ubuntu support perspective. And I’m sure we can agree that providing official support for arbitrary PPAs is a bad idea.

That, in a nutshell, is why Canonical and the Ubuntu flavors have gone ahead and agreed to not include Flatpak on the default ISOs, at least as I understand it. As a regular supporter in the IRC channels and many of the Ubuntu-related forums, I heartily agree with this decision.

(For the record, I don’t hate Flatpaks, just like I don’t hate PPAs. In fact I have Flatpak enabled on my personal system and have nn app installed from Flathub that I use. I just don’t expect that the official Ubuntu support venues are going to help me if that app goes berzerk.)

24 Likes

snaps are not (and have never been) tied to any desktop env … in fact i’d say the majority of snaps in the snap store are rather server/cloud, CLI and IoT focused, only a fraction are actually desktop apps … snaps are not flatpak (which is a nice mechanism to deliver desktop-only apps, but nothing more), they are a fully fledged packaging system (there are even snapped kernels and bootloaders) …

14 Likes

That is one big huge correct answer. Thank you for that. You actually ended up answering OTHER questions people had between the differences at the current time between flatpak and snaps, as well as from the point of view of developers. I think I got carried away with my tantrum, probably because I have dedicated so many years (I started using Ubuntu around 2005 and did almost 9 years on Askubuntu, and promoted Ubuntu more than 15 years already). So stuff like this hits me hard when I am trying to mention Ubuntu as the go to.

Your comment helped me understand other things as well in regards to other points about maintainability. Greatly appreciated.

13 Likes

The decision to use snap as the default application packaging, dropping flatpak on ubuntu flavours brings a question: is there any discussion on how to make more applications available as a snap by default, with wider community support/faster updates? It seems many popular packages (such as OBS, Krita, …) have more flatpak version releases, and that makes it seem like the snap has been “cast aside”.

6 Likes

if you feel like helping out, there is the snapcrafters team (the MOTU of snaps) that is always seeking new members to help maintaining the group-maintained snap packages and keeping them up to date …

you can find more info at:

11 Likes

Thank you so much for this! Makes the situation absolutely clear for anybody (who might be confused but seek to understand).

4 Likes

Thank you for the reply; i have seen the name “snapcrafters” in some apps and knew that it was part of contributions, but did not know that anyone could help. I will be checking out on that for sure!

7 Likes

Why can’t you just have both by default? It’s clear to see the community doesn’t like snap but the choice to drop flatpak just means less software available out of the box and another step for users to do to get software. Out of all the projects Canonical has started and then gave up on they just had to stick with snap. It’s useful I’ll give it that but your approach of force-feeding it to users is just disgusting it might as well be malware.

1 Like

I assume you didn’t read this post just a little above yours?

3 Likes

7 posts were split to a new topic: How much work is required to configure Flatpak

Detailed discussion about whether Flatpak configuration is onerous or not is moved to a new topic, since folks seem to want to discuss it.

I do hope you guys step up your game with Snaps. Right now, the “app awareness refresh” is still annoying as I’m not sure if the Snap was getting updated after I close it. Sometimes I close Firefox, then wait for few min to grab coffee, then it still tells me that it needs to update. Got to the point that I just stopped caring if it needed to update, like if I see it I filter it out of my mind.

I do respect your decision, and I totally get it, but public perception just isn’t the best and I hope you try to improve on that.

3 Likes

I believe that this (the “close the app to avoid disruptions” notice) is actively being worked on.

(Also, this is off-topic here, but you can run sudo snap refresh in a terminal to make Firefox update for sure after you turn it off.)

2 Likes