Changes in Fedora 44 For System Administrators

Installer updates

Updates to the Anaconda installer and its related components are available in the upstream release notes for Anaconda (as well as the more in-depth explanation of the change in default network profiles on the Fedora Wiki) and the release notes for the Web UI.

Nix package tool

The Nix package tool is now available in Fedora.

Nix is a cross-platform package manager for Unix-like systems with its own package ecosystem. It is also the package manager for the NixOS Linux operating system. The nix package tool provides access to the nixpkgs ecosystem with over 100,000 packages. Packages and environments can be specified in nix’s declarative functional programming language using so-called derivations. Nix flakes provide a newer way to specify these project development environments.

Nix has two main modes of installation/setup: multi-user mode (with nix-daemon) and single-user mode (below these are abbreviated as "multiuser" and "singleuser" respectively). The Fedora package tries to support both of them, though multiuser mode setup where available is more seamless. It does this by providing nix-daemon and nix-system subpackages which both require nix-filesystem. The /nix toplevel directory is defined with tmpfiles.d and can be a Btrfs subvolume if setup.

Nix-managed packages will not become part of the Fedora distribution, and no QA or support will be provided for them. This is similar to how e.g. pip can be used to install Python packages from external locations, or how flatpak can install flatpaks not produced by Fedora.

For additional documentation, see the upstream docs, tutorials, and reference manual.

Bootloader updates - phase 1

In order to make boot loader updates in all environments (such as rpm mode, image mode, etc.) safer and more reliable, Fedora shim and grub2 packages are now installing content in /usr/lib/`instead of `/boot and /boot/efi directly. This is a part of a larger effort which will continue in subsequent Fedora releases. See the Wiki page for details.

MariaDB 11.8

  • By default, MariaDB 11.8 uses the utf8mb4 character set instead of latin1 and legacy utf8 to ensure full Unicode support.

  • Vector support was added to support machine learning. This includes the VECTOR(N) data type and the following functions: *\* VEC_DISTANCE() *\* VEC_DISTANCE_EUCLIDEAN() *\* VEC_DISTANCE_COSINE() *\* Vec_FromText(json_array) *\* Vec_ToText(vector_column)

  • The mariadb-dump and mariadb-import utilities natively support parallel operations. Specify the --dir and --parallel options to dump or load multiple databases simultaneously.

  • The upper limit of the TIMESTAMP data type was increased from 2038-01-19 to 2106-02-07 while still using 4 bytes of storage.

  • The UUID_v4() and UUID_v7() functions were added.

  • The JSON handling was improved. This includes new functions, such as JSON_SCHEMA_VALID() and JSON_EQUALS().

Also see upstream release notes at:

Automatic DTB selection for aarch64 EFI systems

Fedora 44 contains changes to make it easier to boot Fedora live media on aarch64 Windows on ARM laptops.

Although things are improved unfortunately installing Fedora on these laptops is still not entirely plug and play. See Snapdragon WoA Laptop Install for instructions for installing Fedora on these laptops.

Stratis 3.9.0

Stratis 3.9.0, which consists of stratisd 3.9.0 and stratis-cli 3.9.0 introduces two major new features.

Online Encryption, Decryption, and Reencryption

With Stratis 3.9.0 it is now possible to perform in-place encryption, decryption, and reencryption of Stratis pools. Previously, the decision whether or not a pool should be encrypted had to be made when the pool was created. With Stratis 3.9.0 the storage administrator may choose to encrypt a pool after it has been put into use. Moreover, with Stratis 3.9.0, it is possible to reencrypt a pool, i.e., to change the key used to encrypt the pool, a task that may be performed as a housekeeping measure or in the case a key is known to have been compromised.

Starting a Stratis Pool Without its Cache

With Stratis 3.9.0 it is now possible to start a pool while explicitly instructing stratisd not to set up the pool’s cache. This facility can be useful if the pool’s cache devices are missing or otherwise unusable. Once the pool is set up, it is a pool without a cache; restoring the cache requires adding new cache devices to the pool.

PackageKit now uses DNF5

PackageKit has been updated to use DNF version 5 for software management. This offers a more uniform and reliable software management experience across the various software management frontends (such as Cockpit, Plasma Discover, and GNOME Software).

Ansible 13 & Ansible Core 2.20

Fedora 44 provides Ansible 13 and Ansible Core 2.20, which include major changes to the jinja2 templating engine and other breaking changes.

For more information about this release, see:

Switch Fedora Cloud to /boot as a Btrfs subvolume

Fedora Cloud images (except the UEFI-UKI images) on all architectures except IBM Z systems no longer have a separate /boot partition, and instead now ship /boot as a subvolume in the main Btrfs operating system volume. This allows for much better space utilization and smaller images.

Drop QEMU 32-bit host builds

Fedora 44 drops support for 32-bit (i686) builds of QEMU. This change follows a drop of support in the QEMU upstream.

For additional information, see the Fedora Wiki page.