Fedora 33 Accepted System-Wide Changes
These changes have been accepted by the Fedora Engineering Steering Committee for the Fedora 33 Release as System-Wide Changes.
Aarch64 Pointer Authentication & Branch Target Enablement
Arm Pointer Authentication (PAC) is a method of hardening code from Return Oriented Programming (ROP) attacks. It uses a tag in a pointer to sign and verify pointers. Branch Target Identification (BTI) is another code hardening method, where the branch/jump target is identified with a special landing pad instruction. Outside of some system support in glibc+kernel, packages gain the additional hardening by compiling with the -mbranch-protection= flag available in recent versions of GCC. In particular -mbranch-protection=standard enables both BTI and PAC, with backwards compatible to armv8.0 code sequences that activate on v8.3 (PAC) & v8.5 (BTI) enabled Arm machines.
Owners
- Owner: Jeremy Linton & ARM SIG
Tracking
Binutils 2.34
Rebase the binutils package from version 2.33 to version 2.34.
Owners
- Owner: Nick Clifton [1]
Tracking
Make btrfs the default file system for desktop variants
For laptop and workstation installs of Fedora, we want to provide file system features to users in a transparent fashion. We want to add new features, while reducing the amount of expertise needed to deal with situations like running out of disk space. Btrfs is well adapted to this role by design philosophy, let's make it the default.
Owners
- Owner: Chris Murphy, Neal Gompa, Josef Bacik, Michel Alexandre Salim, Davide Cavalca, Erich Eickmeyer, Igor Raits, Wolfgang Ulbrich, Zamir SUN, Rex Dieter, Dan Book, Mukundan Ragavan
Tracking
Cleanup GNOME Hidden Boot Menu Integration
GNOME integrates with Fedora's hidden boot menu feature to signal to the bootloader that boot was successful and to request the menu to be shown the next boot when "Boot Options" is selected in the Shutdown/Reboot dialog. Currently Fedora carries downstream patches for this, which directly call the Fedora specific grub2-set-bootflag helper. The goal of this change is to replace these downstream patches with a clean bootloader agnostic solution which can be submitted upstream.
Owners
- Owner: Hans de Goede
Tracking
CMake to do out-of-source builds
%cmake and %cmake_kf5 macros will be adjusted (-B parameter) to use separate build folder (already standardized %{_vpath_builddir} macro). Additionally, %cmake_build, %cmake_install and %ctest macro will be created (and backported to the older supported Fedora releases) to perform various operations that are commonly used with CMake in a backend-agnostic (Makefiles, Ninja, etc.) way.
Owners
- Owner: Igor Raits, Björn Esser, Neal Gompa
Tracking
Disable dmraid-activation.service on first run if no dmraid sets are found
The Fedora workstation livecd is the default Fedora variant getfedora.org advices people to download. As such most Fedora workstation installs will be done from the livecd. This means that any package which is part of the livecd will be part of the default install for most users.
Owners
- Owner: Hans de Goede
Tracking
ELN Buildroot and Compose
ELN is a new buildroot and compose process for Fedora that will take Fedora Rawhide dist-git sources and emulate a Red Hat Enterprise Linux compose. Feedback from this build, compose and integration testing will be provided to Fedora packagers so that they can see the potential impact of their changes on RHEL development.
Owners
- Owner: Stephen Gallagher
Tracking
Boost 1.73 upgrade
This change brings Boost 1.73 to Fedora. This will mean Fedora ships with a recent upstream Boost release.
Owners
- Owner: Jonathan Wakely
Tracking
Changes/MinGW environment and toolchain update
Update the MinGW base environment and toolchain to the latest upstream stable releases.
Owners
- Owner: Sandro Mani
Tracking
FlexiBLAS as BLAS/LAPACK manager
BLAS/LAPACK packages will be compiled against the FlexiBLAS wrapper library, which will set OpenBLAS as system-wide default backend, and at the same time will provide a proper switching mechanism that currently Fedora lacks.
Owners
- Owner: Iñaki Úcar
Tracking
- Last updated: 2020-07-24
- Tracking bug: #1860504
- Release Notes tracker: 539 phttps://pagure.io/fedora-docs/release-notes/issue/539 #539]]
- Status: Change accepted
The GNU C Library version 2.32
Switch glibc in Fedora 33 to glibc version 2.32.
Owners
- Owner: Carlos O'Donell
Tracking
Golang 1.15
Rebase of Golang package to upcoming version 1.15 in Fedora 33, including rebuild of all dependent packages(pre-release version of Go will be used for rebuild, if released version will not be available at the time of the mass rebuild).
Owners
- Owner: Jakub Čajka, Alejandro Sáez Morollón
Tracking
- Last updated: 2020-07-21
- Tracking bug: #1859241
- Release Notes tracker:
- Status: 100% code completed
java-11-openjdk as system JDK in F33
Update the system JDK in Fedora from java-1.8.0-openjdk to java-11-openjdk.
Owners
- Owner: Jiri Vanek
Tracking
Mark libdb as deprecated
This change should inform maintainers and developers about effort to remove libdb (with all subpackages) in future.
Owners
- Owner: Filip Januš
Tracking
LLVM 11
Update all llvm sub-projects in Fedora to version 11.
Owners
- Owner: Tom Stellard
Tracking
GNU Make version 4.3
Rebase GNU make in Fedora 33 from make version 4.2 to make version 4.3.
Owners
- Owner: DJ Delorie
Tracking
Introduce module Obsoletes and EOL
Fix Fedora upgradability issues when upgrading systems with module streams enabled.
Owners
- Owner: Daniel Mach
Tracking
Modules In Non-Modular Buildroot
This Change (colloquially referred to as "Ursa Prime") enables the Koji build-system to include the RPM artifacts provided by module default streams in the buildroot when building non-modular (or "traditional") RPMs.
Owners
- Owner: Stephen Gallagher
Tracking
- Last updated: 2020-02-17
- Tracking bug: #1771932
- Release Notes tracker: required) (not required)
- Status: Change accepted
NetworkManager keyfile instead of ifcfg-rh
Change the default settings plugin of NetworkManager so that new profiles will be created in keyfile format instead of ifcfg-rh format.
Owners
- Owner: Thomas Haller
Tracking
- Last updated: 2020-07-15
- Tracking bug: #1857391
- Release Notes tracker: #529
- Status: 100% code completed
Node.js 14.x by default
The latest release of Node.js to carry a 30-month lifecycle is the 14.x series. As with 12.x, 10.x and 8.x before it, Fedora 33 will carry 14.x as the default Node.js interpreter for the system. The 12.x interpreter will remain available as a non-default module stream.
Owners
- Owner: Stephen Gallagher
Tracking
OpenLDAP without Non-threaded Libraries
OpenLDAP will not ship non-threaded version of libldap. Instead, symlinks will be provided for runtime libraries to keep working, and all software built with libldap will be effectively built with libldap_r.
Owners
- Owner: Matus Honek
Tracking
Perl 5.32
A new perl 5.32 version brings a lot of changes done over a year of development. Perl 5.32 was released in June 20th 2020. See 5.32.0 perldelta for more details about new release.
Owners
- Owner: Petr Písař
Tracking
Python 3.9
Update the Python stack in Fedora from Python 3.8 to Python 3.9.
Owners
- Owner: Charalampos Stratakis
Tracking
- Last updated: 2020-06-13
- Tracking bug: #1785415
- Release Notes tracker: #424
- Status: 100% code completed
Remove device-mapper-multipath from the Fedora workstation livecd
The Fedora workstation livecd is the default Fedora variant getfedora.org advices people to download. As such most Fedora workstation installs will be done from the livecd. This means that any package which is part of the livecd will be part of the default install for most users.
Owners
- Owner: Hans de Goede
Tracking
Removal of the glibc-headers package
Replace the glibc-headers.i686 and glibc-headers.x86_64 package with a glibc-headers-x86.noarch package, and merge glibc-headers into glibc-devel on the other architectures.
Owners
- Owner: Florian Weimer
Tracking
- Last updated: 2020-07-21
- Tracking bug: #1828332
- Release Notes tracker: #499
- Status: 100% code completed
Restart services at end of rpm transaction
Scriptlets to restart each service that should be restarted in each rpm package will be replaced by a declaration in the unit file and an rpm transaction trigger that fires at the end and restarts all services.
Owners
- Owner: Zbigniew Jędrzejewski-Szmek
Tracking
RPM 4.16
Update RPM to the 4.16.0 release.
Owners
- Owner: User:pmatilai, User:ffesti
Tracking
Sqlite RpmDB
Change format of the RPM database from Berkeley DB to a new Sqlite format.
Owners
- Owner: Panu Matilainen Florian Festi
Tracking
Strong crypto settings: phase 2
We update the current system-wide crypto policy to further disable legacy cryptographic protocols (TLS 1.0 and TLS 1.1), weak Diffie-Hellman key exchange sizes (1024 bit), and use of the SHA-1 hash in signatures.
Owners
- Owner: Tomáš Mráz
Tracking
swap on zram
Swap is useful, except when it's slow. zram is a RAM drive that uses compression. Create a swap-on-zram during start-up. And no longer use swap partitions by default.
Owners
- Owner: Chris Murphy
Tracking
- Last updated: 2020-07-10
- Tracking bug: #1850218
- Release Notes tracker: #515
- Status: 100% code completed
systemd-resolved
Enable systemd-resolved by default. glibc will perform name resolution using nss-resolve rather than nss-dns.
Owners
- Owner: Zbigniew Jędrzejewski-Szmek
Tracking
Use update-alternatives for /usr/bin/cc and /usr/bin/c++
Modify the gcc package so that the /usr/bin/cc and /usr/bin/c++ symlinks are managed by update-alternatives.
Owners
- Owner: Tom Stellard
Tracking
Use %make_build and %make_install macros
This change will increase the use of the %make_build and %make_install macros in spec files.
Owners
- Owner: Tom Stellard
Tracking
Make nano the default editor
Let's make Fedora more approachable, by having a default editor that doesn't require specialist knowledge to use.
Owners
- Owner: Chris Murphy
Tracking
Zanata Removal
While most Fedora project migrated to Weblate, the old translation platform still exists and needs to be removed (the community shouldn't have to go to multiple place to contribute, and nobody assume Zanata maintenance).
Owners
- Owner: Jean-Baptiste Holcroft
Tracking
Changes/LTO by default for package builds
This is a proposal to enable link time optimization (LTO) of packages built with rpmbuild by default. It's an over-simplification, but think of LTO as deferring analysis, optimization and code generation until creation of an executable or dynamic shared object.
Owners
- Owner: Jeff Law
Tracking
Fedora 33 Accepted Self-Contained Changes
Cloud Provider Image Updates
Provide monthly updates to cloud provider images.
- Owner: Joe Doss
- Last updated: 2020-05-12
- Completed: no
Default animated background for Fedora Workstation
Fedora Workstation 33 uses animated background (time-of-day slideshow with hue changes) as default.
- Owner: Luya Tshimbalanga
- Last updated: 2020-07-01
- Completed: no
Deprecate python-pytoml
The python-pytoml (python3-pytoml) package will be deprecated in Fedora 33. Pytoml is deprecated upstream in favor of toml (python-toml), but existing Fedora packages depend on it, so we cannot remove it yet. Packagers are encouraged to work with upstream to switch to python-toml, but python-pytoml remains available until it is a leaf package, it will be removed then (possibly not yet in Fedora 33).
- Owner: Miro Hrončok
- Last updated: 2020-07-07
- Completed: no
Drop mod_php
mod_php (apache2handler) is an optional httpd module to execute PHP scripts, not used.
- Owner: Remi Collet
- Last updated: 2020-06-15
- Completed: yes
Erlang 23
Update Erlang/OTP to version 23.
- Owner: Peter Lemenkov, Fedora Erlang SIG, Randy Barlow, Jeremy Cline
- Last updated: 2020-04-13
- Completed: no
GHC 8.8 and Haskell Stackage LTS 16
The GHC Haskell compiler will be updated from major version 8.6 to 8.8, and Haskell packages will be updated from Stackage LTS 14 to LTS 16 versions.
- Owner: Jens Petersen
- Last updated: 2020-07-07
- Completed: no
glibc 32 Build Adjustments
The glibc32 package is a special package used by gcc and a few other packages to work around the lack of RPM multilib repository support in Koji. It is difficult to maintain, and the current approach raises questions regarding (L)GPL compliance.
- Owner: Florian Weimer
- Last updated: 2020-02-28
- Completed: no
LXQt 0.15.0
Update LXQt to 0.15.0 or later in Fedora.
- Owner: Zamir SUN
- Last updated: 2020-06-29
- Completed: no
Distribute .repo files for modular repositories from a separate package
Reintroduce the fedora-repos-modular package. Have the /etc/yum.repos.d/*-modular.repo files in it instead of fedora-repos. We install/keep fedora-repos-modular by default, users (admins) can uninstall it if desired. No defaults are changed.
- Owner: Miro Hrončok
- Last updated: 2020-06-29
- Completed: no
Network Time Security
Support for the Network Time Security (NTS) authentication mechanism in the NTP client/server (chrony) and installer (anaconda).
- Owner: Miroslav Lichvar, Martin Kolman
- Last updated: 2020-05-12
- Completed: no
No more automagic Python bytecompilation (phase 3)
See Changes/No_more_automagic_Python_bytecompilation and Changes/No_more_automagic_Python_bytecompilation_phase_2. Now, %global _python_bytecompile_extra 1 won't be allowed anymore and raises an error with a link to this change.
- Owner: Lumír Balhar
- Last updated: 2020-06-15
- Completed: yes
Ship BerkleyDB backend as a module
Change the openldap-servers package so that BDB and HDB backends are required to be dynamically loaded.
- Owner: Matus Honek
- Last updated: 2020-02-24
- Completed: no
Automatic RPM dependencies on Python Extras
The Python RPM dependency generator (that generates python3.Xdist(foo) requirements) will be adapted to also generate requirements on Python extras (e.g. python3.Xdist(foo[bar])) whenever upstream metadata indicate such dependency. An easy opt out mechanism will exist. A supported way of adding metapackages that provide such Python extras (e.g. python3.Xdist(foo[bar])) will be introduced. Change owners will add the missing metapackages that would otherwise cause broken dependencies (in non-modular packages).
- Owner: Miro Hrončok
- Last updated: 2020-07-07
- Completed: no
Retire python26
The python26 package will be retired without replacement from Fedora 33. Python 2.6 has been End of Life since October 2013 and was kept around only to test software targeting RHEL/EPEL 6. The removal is aligned with EPEL 6 EOL.
- Owner: Miro Hrončok
- Last updated: 2020-01-27
- Completed: no
Retire python34
The python34 package will be retired without replacement from Fedora 33. Python 3.4 has been End of Life since March 2019 and was kept around only to test software targeting EPEL 6 and Debian 8 “Jessie”. The removal is aligned with EPEL 6 EOL and happens after the EOL of Debian 8.
- Owner: Miro Hrončok
- Last updated: 2020-01-27
- Completed: no