Catanzaro: Fedora must (carefully) embrace Flathub
GNOME and Fedora contributor Michael Catanzaro has written a
lengthy blog
post about the future of Fedora Workstation as an image-based
release and the need to enable Flathub by default. He writes that the
Fedora Workstation of the future must be "safe and image-based by
default
", with applications provided through Flathub:
Flathub is drastically more popular than Fedora Flatpaks even among the most hardcore Fedora community members who participate in change proposal debate on Fedora Discussion. (At time of writing, nearly 80% of discussion participants favor filtering out Fedora Flatpaks.)
This is the most important point. Flathub has already won.
He notes that Fedora should not force users to install an
image-based OS if they do not want to, and there will be a
package-based version for users who prefer or require it: "so no
need to panic
".
Posted Jul 23, 2025 5:03 UTC (Wed)
by numgmt (guest, #167446)
[Link] (1 responses)
They were as frustrated as I was when they realized this, and immediately removed the Fedora Flatpaks repository and reinstalled everything via Flathub.
If anything, I'm a proponent of hosting your own Flatpak repository. I help maintain a Flatpak bundle that isn't hosted on any repositories, and I'm glad Flatpak is flexible enough to allow for that. But Fedora Flatpaks is a bad, confusing user experience that unintentionally creates more work for upstream developers/packagers in some cases.
Posted Jul 23, 2025 5:09 UTC (Wed)
by numgmt (guest, #167446)
[Link]
Posted Jul 23, 2025 7:17 UTC (Wed)
by epa (subscriber, #39769)
[Link] (3 responses)
But this is all free software we are talking about. If Flathub has a useful package, surely you can pull down the source code (and manifest file giving dependencies, etc) and build it. Fully bit-for-bit reproducible builds might not be there yet, but the work done on that ought to apply to Flatpaks too.
In any case it seems sensible to have a second source for the images, and a check that they really can be built from their claimed source code and build scripts.
That doesn’t mean duplicating the work that Flathub and the upstream packagers do, although Fedora would have the option to make local patches and build a slightly different image (just as RPM source packages can include patches), or occasionally to maintain its own version of an application if there are reasons the Flatpak one isn’t appropriate.
Posted Jul 23, 2025 7:45 UTC (Wed)
by taladar (subscriber, #68407)
[Link] (2 responses)
Posted Jul 23, 2025 17:42 UTC (Wed)
by pizza (subscriber, #46)
[Link] (1 responses)
It's worth mentioning that at least some of that "badly" is because Fedora cannot ship patent-encumbered multimedia codecs.
Posted Jul 25, 2025 20:56 UTC (Fri)
by JoeBuck (subscriber, #2330)
[Link]
Posted Jul 23, 2025 9:35 UTC (Wed)
by aragilar (subscriber, #122569)
[Link] (4 responses)
Posted Jul 23, 2025 11:26 UTC (Wed)
by mathstuf (subscriber, #69389)
[Link]
Posted Jul 23, 2025 13:47 UTC (Wed)
by rjones (subscriber, #159862)
[Link] (2 responses)
Silverblue is still rpm-based. It uses the same rpms as Fedora Workstation does for the most part. The difference is how they are managed to provide the "Atomic" features. And in the future when bootc becomes adopted then the OS itself is distributed as a OCI container image.
One of the things I like about the "containerized desktop" approach is that it creates a clean separation between "OS" and "Application". (Note that your OS doesn't have to be Atomic or Immutable to take advantage of containerized applications.)
Like in Networking we have the TCP/IP stack, which divides the network protocols up into layers (link, internet, transport, application). That way different layers can be swapped out without impacting too much the layers above or below it. The same application data can ride over ethernet, cable internet, etc. With the traditional Linux distro you have only two layers... "Kernel" and "Userland". Were Userland is just a tangled mush of interdependent dependencies with no real distinction between what makes a system level service vs a desktop application.
If you end up with separate "OS" and "Applications" layers then that, theoretically, should free up the OS part considerably. They should be able to make more radical changes and accelerate development at that level without expending a great deal of resources on maintain applications and their compatibility. Similar to how the Linux kernel is able to iterate separate from Linux distributions. Especially when it comes to the Desktop Environment part of the OS.
Like how many dozens of groups maintain their own version of "Firefox Browser". There has to be a different set of volunteers for each major distribution that modifies how it is built and packages to conform to their specific vision of how OS should be laid out and packaging policies. That is a lot of work put into doing things in slightly different ways only to end up with the ideal situation that there is no discernible difference at all in how the application behaves on any of these distributions. But in the end we only really need to have it packaged once.
It is a nice experience when upgrading, say Fedora 41 to 42, that all my desktop applications remained the same before as after. It is a lot less worry about some of the more cantankerous proprietary ones that I need for work, like "Zoom desktop". Dealing with small differences in OSes after upgrades is not something I look forward to on my workstation when faced with deadlines, so it is nice when the applications I use don't all change along with it.
So hopefully it should allow Fedora to be the even-more-faster-paced rpm-based distro.
Posted Jul 24, 2025 11:51 UTC (Thu)
by aragilar (subscriber, #122569)
[Link] (1 responses)
Posted Jul 24, 2025 21:01 UTC (Thu)
by raven667 (subscriber, #5198)
[Link]
Posted Jul 24, 2025 0:41 UTC (Thu)
by davecb (subscriber, #1574)
[Link]
For even more nerditude, see https://leaflessca.wordpress.com/2017/02/12/dll-hell-and-... It's something I've written a lot about.
--dave
Posted Jul 24, 2025 2:30 UTC (Thu)
by pabs (subscriber, #43278)
[Link]
Posted Jul 24, 2025 19:22 UTC (Thu)
by swilmet (subscriber, #98424)
[Link]
> There are important technical differences between Fedora’s Flatpaks, built from Fedora RPMs, vs. Flathub’s Flatpaks, which are usually built on top of freedesktop-sdk. But I will not discuss those, because the social differences are more important than the technical differences.
The technical differences *will* matter though (at some later point in time): does it make sense to maintain a whole infrastructure and a different way to build Flatpaks for just a few apps (the core apps that are installed by default) ? Ok these apps are important to polish, but it's doable for Fedora to use the same way to build Flatpaks as Flathub: by using freedesktop-sdk and flatpak-builder.
This would slightly duplicate the work: creating the relevant RPMs for the traditional package-based Fedora Workstation variant, plus creating the few Flatpaks for the core apps.
I think the problem of maintaining a different way to *build* Flatpaks will come in the discussion as well. As any software, it requires maintenance and has its own bugs.
Posted Jul 24, 2025 21:59 UTC (Thu)
by tlb (subscriber, #178072)
[Link]
Fedora Flatpaks creates more work
Fedora Flatpaks creates more work
If Flatpaks are reproducible why not build them?
If Flatpaks are reproducible why not build them?
If Flatpaks are reproducible why not build them?
If Flatpaks are reproducible why not build them?
Container images?
Container images?
Container images?
Container images?
Container images?
Bah, Humbug (:-))
(spoiler: don't work around it, make it impossible. That's been independently rediscovered three time, including by the glibc folks)
Flathub Must Improve
Phasing out Fedora Flatpaks ... completely?
Single point of failure?
