Fedora 33 was released on 2020-10-27. The release notes are on docs.fedoraproject.org.
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
- Last updated: 2020-07-20
- Tracking bug: #1847148
- Release Notes tracker: #512
- Contingency deadline:
- Status: Testable
Binutils 2.34
Rebase the binutils package from version 2.33 to version 2.34.
Owners
- Owner: Nick Clifton [1]
Tracking
- Last updated: 2020-01-20
- Tracking bug: #1793098
- Release Notes tracker: #439
- Contingency deadline:
- Status: Testable
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
- Last updated: 2020-07-27
- Tracking bug: #1851166
- Release Notes tracker: #530
- Contingency deadline: Beta freeze
- Status: 100% code completed
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
- Last updated: 2020-08-11
- Tracking bug: #1857389
- Release Notes tracker: #527
- Contingency deadline:
- Status: 100% code completed
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
- Last updated: 2020-07-18
- Tracking bug: #1852036
- Release Notes tracker: #519
- Contingency deadline: Beta freeze.
- Status: Testable
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
- Last updated: 2020-07-23
- Tracking bug: #1857390
- Release Notes tracker: #528
- Contingency deadline:
- Status: 100% code completed
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
- Last updated: 2020-05-05
- Tracking bug: #1823414
- Release Notes tracker: #480
- Contingency deadline: Fedora 33 Branch (2020-08-11)
- Status: Finished
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
- Last updated: 2020-05-29
- Tracking bug: #1835963
- Release Notes tracker: #509
- Contingency deadline: We will know whether the change can be made once the rebuilds in the side tag are done, which will be July 2020, ideally before the mass rebuild.
- Status: Finished
Changes/MinGW environment and toolchain update
Update the MinGW base environment and toolchain to the latest upstream stable releases.
Owners
- Owner: Sandro Mani
Tracking
- Last updated: 2020-04-07
- Tracking bug: #1821868
- Release Notes tracker: #468
- Contingency deadline: Before release
- Status: Finished
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-25
- Tracking bug: #1860504
- Release Notes tracker: #539
- Contingency deadline: Beta freeze.
- Status: 100% code completed
The GNU C Library version 2.32
Switch glibc in Fedora 33 to glibc version 2.32.
Owners
- Owner: Carlos O'Donell
Tracking
- Last updated: 2020-07-07
- Tracking bug: #1854439
- Release Notes tracker: #520
- Contingency deadline: Upstream ABI freeze deadline of 2020-07-01.
- Status: 100% code completed
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:
- Contingency deadline: Beta Freeze(?)
- Status: 100% code completed
Promote IoT to an Edition
Promote Fedora IoT to an official Fedora Edition.
Owners
- Owner: Peter Robinson
Tracking
- Last updated: 2020-08-13
- Tracking bug: #1868747
- Release Notes tracker: #550
- Contingency deadline: F33 Final release date
- 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
- Last updated: 2020-07-22
- Tracking bug: #1825969
- Release Notes tracker: #495
- Contingency deadline: beta freeze
- Status: Testable
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
- Last updated: 2020-05-12
- Tracking bug: #1834842
- Release Notes tracker: #505
- Contingency deadline: N/A (not a System Wide Change)
- Status: 100% code completed
LLVM 11
Update all llvm sub-projects in Fedora to version 11.
Owners
- Owner: Tom Stellard
Tracking
- Last updated: 2020-07-07
- Tracking bug: #1854440
- Release Notes tracker: #521
- Contingency deadline: Beta Freeze
- Status: Change accepted
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
- Last updated: 2020-04-07
- Tracking bug: #1821871
- Release Notes tracker: #469
- Contingency deadline: Beta freeze. If there is a mass rebuild, preferably before then.
- Status: 100% code completed
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
- Contingency deadline: beta freeze
- 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
- Last updated: 2020-06-09
- Tracking bug: #1845643
- Release Notes tracker: #511
- Contingency deadline:
- Status: Finished
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
- Last updated: 2020-08-24
- Tracking bug: #1827798
- Release Notes tracker: #497
- Contingency deadline:
- Status: Finished
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
- Contingency deadline: TBD
- 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
- Last updated: 2020-07-15
- Tracking bug: #1857393
- Release Notes tracker: #531
- Contingency deadline:
- Status: 100% code completed
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
- Contingency deadline: before Beta
- Status: 100% code completed
RPM 4.16
Update RPM to the 4.16.0 release.
Owners
- Owner: User:pmatilai, User:ffesti
Tracking
- Last updated: 2020-06-01
- Tracking bug: #1818907
- Release Notes tracker: #461
- Contingency deadline: Beta freeze.
- Status: 100% code completed
Sqlite RpmDB
Change format of the RPM database from Berkeley DB to a new Sqlite format.
Owners
- Owner: Panu Matilainen Florian Festi
Tracking
- Last updated: 2020-05-25
- Tracking bug: #1818910
- Release Notes tracker: #462
- Contingency deadline: Beta freeze
- Status: 100% code completed
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
- Last updated: 2020-04-07
- Tracking bug: #1821875
- Release Notes tracker: #470
- Contingency deadline:
- Status: 100% code completed
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-29
- Tracking bug: #1850218
- Release Notes tracker: #515
- Contingency deadline: Beta freeze
- 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
- Last updated: 2020-07-26
- Tracking bug: #1834846
- Release Notes tracker: #507
- Contingency deadline:
- Status: 100% code completed
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
- Last updated: 2020-07-17
- Tracking bug: #1858398
- Release Notes tracker: #536
- Contingency deadline: All work will be done in the rawhide branch, and will not be backported into the f33 branch once it is created, so whatever gets done before the branch date will make it into the release.
- Status: Change accepted
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
- Last updated: 2020-07-07
- Tracking bug: #1854444
- Release Notes tracker: #522
- Contingency deadline: probably the beta? It's an easy change to revert.
- Status: 100% code completed
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
- Last updated: 2020-07-07
- Tracking bug: #1854445
- Release Notes tracker: #523
- Contingency deadline: none
- Status: 100% code completed
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
- Last updated: 2020-04-21
- Tracking bug: #1789115
- Release Notes tracker: #429
- Contingency deadline: Beta freeze, but shooting for prior to mass rebuilds starting
- Status: Testable
Fedora 33 Accepted Self-Contained Changes
.NET Core on Aarch64
.NET Core will now be available on Fedora on aarch64, in addition to x86_64.
- Owner: Omair Majid, DotNet SIG
- Last updated: 2020-08-03
- Status: 100% code completed
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-08-15
- Status: Change accepted
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
- Status: Finished
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
- Status: 100% code completed
DXVK as default wined3d backend on VK capable hardware
Proposal to replace default wined3d backend with DXVK, A Vulkan-based translation layer for Direct3D 9/10/11 which allows running 3D applications on Linux using Wine.
- Owner: Frantisek Zatloukal , Michael Cronenworth
- Last updated: 2020-08-07
- Status: 100% code completed
Erlang 23
Update Erlang/OTP to version 23.
- Owner: Peter Lemenkov, Fedora Erlang SIG, Randy Barlow, Jeremy Cline
- Last updated: 2020-04-13
- Status: 100% code completed
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-21
- Status: 100% code completed
IBus 1.5.23
IBus 1.5.23 will replace the allowlist of XKB engines with the denylist of XKB ones.
- Owner: Takao Fujiwara
- Last updated: 2020-07-16
- Status: 100% code completed
Enable EarlyOOM on Fedora KDE
As Fedora Workstation did in F32, install earlyoom package, and enable it by default. If RAM goes below 4% free and swap below 10% free, earlyoom issues SIGTERM to the process with the largest oom_score. If RAM goes below 2% free and swap goes below 5% free, earlyoom issues SIGKILL to the process with the largest oom_score. The idea is to recover from out of memory situations sooner, rather than the typical complete system hang in which the user has no other choice but to force power off.
- Owner: Ben Cotton
- Last updated: 2020-07-16
- Status: Finished
LXQt 0.15.0
Update LXQt to 0.15.0 or later in Fedora.
- Owner: Zamir SUN
- Last updated: 2020-06-29
- Status: 100% code completed
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-07-10
- Status: 100% code completed
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-08-26
- Status: 100% code completed
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
- Status: Finished
NSS dbm support removal
Network Security Services (NSS) historically supports 2 different database backends, based on SQLite and dbm. Since Fedora 28, the SQLite backend has been used by default and the dbm backend has been deprecated (NSS Default File Format SQL). This Change is about removing the support for the dbm backend entirely.
- Owner: Daiki Ueno
- Last updated: 2020-07-27
- Status: Testable
Support PARSEC
PARSEC is the Platform AbstRaction for SECurity, an open-source initiative to provide a common API to hardware security and cryptographic services in a platform-agnostic way. This abstraction layer keeps workloads decoupled from physical platform details, enabling cloud-native delivery flows within the data center and at the edge. From a hardware perspective the PARSEC daemon can currerntly use a TPM2, HSM or an Arm TrustZone secure world application.
- Owner: Peter Robinson, Patrick Uiterwijk
- Last updated: 2020-07-23
- Status: Change accepted
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-10
- Status: 100% code completed
Make the unversioned %{__python} macro error by default
The %{__python} RPM macro (currently defined to /usr/bin/python for backwards compatibility reasons) will be defined to raise an error when used. Any derived macros (%{python}, %{python_version}, %{python_sitleib} etc.) will propagate the error. Packagers can redefine the macro to any actual value to suppress the error. This is consistent with RHEL 8 behavior. Using /usr/bin/python in Fedora packages remains forbidden.
- Owner: Miro Hrončok
- Last updated: 2020-07-16
- Status: 100% code completed
Reserve resources for active users (Workstation)
This proposal adds cgroup based resource protections for the active graphical session. This is done by passing a memory protection of 250MiB to active users (capped at 10% of system memory) and by enabling other cgroup controllers (CPU, IO) to ensure important session processes get the resources they need.
- Owner: Benjamin Berg
- Last updated: 2020-08-07
- Status: Testable
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
- Status: Finished
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
- Status: Finished
Ruby on Rails 6.0
Ruby on Rails 6.0 is the latest version of well known web framework written in Ruby.
- Owner: Pavel Valena, Vít Ondruch, Jun Aruga
- Last updated: 2020-08-07
- Status: Testable
Introduce Storage Instantiation Daemon
Introduce Storage Instantiation Daemon (SID) that aims to provide a central event-driven engine to write modules for identifying specific Linux storage devices, their dependencies, collecting information and state tracking while being aware of device groups forming layers and layers forming whole stacks or simply creating custom groups of enumerated devices. SID will provide mechanisms to retrieve and query collected information and a possibility to bind predefined or custom triggers with actions for each group.
- Owner: Peter Rajnoha
- Last updated: 2020-07-16
- Status: Change accepted
Stratis 2.1.0
Stratis now supports per-pool encryption of the devices that form a pool's data tier. A pool may be encrypted, or its constituent encrypted devices may be activated, by means of a key stored in the kernel keyring.
- Owner: Dennis Keefe, Anne Mulhern, John Baublitz
- Last updated: 2020-08-05
- Status: Testable
Better Thermal Management for the Workstation
Better thermal management and peak performance on Intel CPUs by including thermald in the default install.
- Owner: Christian J. Kellner
- Last updated: 2020-07-28
- Status: 100% code completed
- Status: Change accepted