F37 Change: Encourage Dropping Unused / Leaf Packages on i686 (Self-Contained Change proposal)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval

== Summary ==

Package maintainers are encouraged to actively stop building their
packages for i686, especially if supporting this architecture requires
significant investment of time or resources, for no benefit. This will
not apply to packages which are still depended on by other i686
packages, or which get used in a "multilib" context (i.e. for running
32-bit applications on x86_64).

== Owner ==

* Name: [[User:Decathorpe| Fabio Valentini]]
* Email: decathorpe [AT] gmail [DOT] com


== Detailed Description ==

Fedora does no longer ship any deliverables for i686, not even RPM
repositories for i686 are published any longer. The kernel package
itself also [[Changes/Stop Building i686 Kernels|dropped support for
i686]] in Fedora 31, so there has not been any way to run Fedora on
32-bit x86 systems for years. Only a tiny fraction of all packages
that are built on i686 are actually used (i.e. "multilib" support for
Wine, Steam, etc. on x86_64).

== Feedback ==

(none yet)

== Benefit to Fedora ==

Stopping to run unnecessary package builds on i686 will free up no
small amount of resources. In particular, stopping to build for i686
could potentially free up almost half of the existing x86 builder
resources in koji.

Additionally, support for building on 32-bit targets is starting to
get dropped by upstream projects, and resource constraints of 32-bit
architectures (i.e. per-process and total memory limits) also make
building large libraries or applications increasingly difficult. With
ARMv7 support having been removed from Fedora 37 already, i686 is the
only remaining supported 32-bit architecture.

Encouraging package maintainers to drop i686 support from their
packages (if possible), instead of requiring them to work around those
resource constraints or missing upstream support, will significantly
lower the maintenance burden, especially for some problematic
packages.

== Scope ==

* Proposal owners:

Proposal owners will provide convenience scripts for checking whether
a given package is a leaf package on i686, and will help with
identifying potential candidate packages.

* Other developers:

Package maintainers who are affected by 32-bit architecture / i686
specific problems are encouraged to investigate dropping support for
i686 entirely, instead of having to invest time to fix or work around
those issues, for very little benefit to Fedora. This can be done
incrementally, as dropping support for i686 from some packages will in
turn make other packages leaves on i686.

* Release engineering: N/A

There are already no deliverables for i686, so there should be no
impact on Release engineering.

* Policies and guidelines:

Packages that drop support for i686 will no longer need to file a
tracking bug and block the
[https://bugzilla.redhat.com/show_bug.cgi?id=179258 32-bit x86
ExcludeArch tracker bug].

* Trademark approval: N/A (not needed for this Change)

* Alignment with Objectives: N/A

== Upgrade/compatibility impact ==

This Change only affects unused / leaf packages that are never
installed on user systems (particularly because it has not been
possible to install i686-based Fedora for years).

== How To Test ==

The remaining use cases of i686 packages (i.e. "multilib") for popular
32-bit applications should continue to work. For example, installing
the Steam client (steam.i686), Wine, or other applications that
require 32-bit compatibility libraries should still be possible, and
not fail due to broken dependencies.

== User Experience ==

N/A

== Dependencies ==

N/A

== Contingency Plan ==

This Change is supposed to only affect unused components / leaf
packages. However, if a package maintainer accidentally stops building
a package on i686 despite it still being required for something else,
this should be easy to revert - by adding back i686 architecture
support to the affected packages, in reverse order. Since removal of
support for i686 will happen slowly and incrementally, this should be
relatively straightforward.

* Contingency deadline: N/A (not a System Wide Change)

* Blocks release? N/A (not a System Wide Change)

== Documentation ==

N/A (not a System Wide Change)

== Release Notes ==

Fedora packages will incrementally drop support for the i686
architecture (32-bit x86), where this support is no longer required.
This is intended to reduce resource consumption of build servers.
Additionally, it will make package maintenance for Fedora easier,
because a growing number of projects already either no longer provide
support for - or fail to build due to resource constraints on - 32-bit
architectures.


-- 
Ben Cotton
He / Him / His
Fedora Program Manager
Red Hat
TZ=America/Indiana/Indianapolis
_______________________________________________
devel mailing list -- devel@xxxxxxxxxxxxxxxxxxxxxxx
To unsubscribe send an email to devel-leave@xxxxxxxxxxxxxxxxxxxxxxx
Fedora Code of Conduct: https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: https://lists.fedoraproject.org/archives/list/devel@xxxxxxxxxxxxxxxxxxxxxxx
Do not reply to spam on the list, report it: https://pagure.io/fedora-infrastructure




[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Fedora Announce]     [Fedora Users]     [Fedora Kernel]     [Fedora Testing]     [Fedora Formulas]     [Fedora PHP Devel]     [Kernel Development]     [Fedora Legacy]     [Fedora Maintainers]     [Fedora Desktop]     [PAM]     [Red Hat Development]     [Gimp]     [Yosemite News]

  Powered by Linux