From Fedora Project Wiki

Filter Fedora Flatpaks for Atomic Desktops

This is a rejected Change proposal for Fedora Linux.
This document represents a proposed Change that has been rejected or withdrawn as part of the Changes process. This page is preserved for historical record.

Summary

For the Fedora Atomic Desktops (and only those), we will keep pre-installing a set of Fedora Flatpaks by default but filter the Fedora Flatpak remote to a limited set of applications (the ones pre-installed from the ISO and the runtimes).

Owner

Current status

Detailed Description

With this change, we want to make the availability of a Fedora Flatpak an explicit decision for the Fedora Atomic Desktops. Fedora contributors may package any application as Fedora Flatpak, but those Flatpaks will not be made available immediately to Atomic Desktops users. Users that want to have access to all Flatpaks from Fedora can remove the filter.

Why not use Flathub Flatpaks instead?

The most popular derivatives of the Fedora Atomic Desktops (Universal Blue, Bazzite, Bluefin, etc.) do not use Fedora Flatpaks and enable the Flathub ones by default instead.

Moving the Fedora Atomic Desktops to using Flathub Flatpaks would potentially require legal work and infrastructure changes. Completely removing the Fedora Flatpak remote from the Atomic Desktops would mean that the default installation would appear very bare bone in terms of available applications.

This change is thus trying to reach a middle ground between those two options, keeping Fedora Flatpaks where they are convenient and valuable.

What are the problems with Fedora's Flatpaks?

The Fedora Flatpaks have disadvantages that are either structural, or hard to fix:

  • They see little maintenance and traction in the community, and are generally not maintained nor desired by their upstream developers.
  • There is no documentation on how to build, maintain, and update a Fedora Flatpak.
  • There are no procedure to remove or deprecate a Fedora Flatpak.
  • Building a Fedora Flatpak is different from upstream Flatpak builds and Flathub ones.
  • The OCI format used to transport the Fedora Flatpak has many downsides at the moment:

The only advantages that the Fedora Flatpaks have are:

Which Flatpaks will be added to the filter?

The list of Fedora Flatpak enabled for the Fedora Atomic Desktops will be maintained by the Fedora Atomic Desktop SIG, with input from the desktops working groups (Workstation Working Group, KDE SIG, etc.) and the Flatpak SIG. We will populate the filter with the list of pre-installed Flatpaks (and the runtimes) as a starting point.

Feedback

There has been a lot of feedback that Fedora Flatpaks are not what the community and upstream want installed, enabled and offered by default as this notably creates a lot of confusion for users when some features are missing:

The Workstation working group discussed the issue and landed on a decision, which is close to what is proposed in this change: https://pagure.io/fedora-workstation/issue/463#comment-963702

Benefit to Fedora

  • Less confusion for Fedora users of Atomic Desktops
  • Less confusion for upstream developers when responding to bug reports about "their" Flatpak'ed application
  • Stronger focus on what makes Fedora better: upstream contribution and collaboration with other communities
  • Less work and pressure for the Flatpak maintainers in Fedora
  • More focus and testing on the Flatpaks installed by default on the Atomic Desktops

Scope

  • Proposal owners: Add a filter to the Fedora Flatpak remote for Atomic Desktops
  • Other developers: N/A
  • Release engineering: N/A
  • Policies and guidelines: N/A (not needed for this Change)
  • Trademark approval: N/A (not needed for this Change)
  • Alignment with the Fedora Strategy: Aligns with the goal of making the Fedora Atomic Desktops more attractive to new users

Upgrade/compatibility impact

This change is intended to apply to all Fedora Atomic Desktops users on update. Users that are using Fedora Flatpaks may have to update the filter to keep receiving updates or move to Flathub packages instead.

Early Testing (Optional)

Do you require 'QA Blueprint' support? N

How To Test

Remove Fedora Flatpak remote, enable filtered Fedora Flatpak remote, enable Flathub remote. Commands to be added here.

The implementation will likely look like this previous work:

Once the change is implemented, new installation ISOs for Atomic Desktops will let users tests this more easily.

User Experience

Users installing applications from the GNOME Software and Plasma Discover store will get fully featured Flatpaks by defaults, usually maintained directly by their own developers. We will still install a set of core applications by default on the system as Fedora Flatpaks.

Dependencies

N/A.

Contingency Plan

  • Contingency mechanism: Keep things as is
  • Contingency deadline: Beta/Final freeze
  • Blocks release? N/A (not a System Wide Change)

Documentation

We will have to document how to remove the filter for users that want to use all Fedora Flatpaks.

Release Notes

To be written.