Home Explore Blog CI



nixpkgs

1st chunk of `nixos/doc/manual/release-notes/rl-2105.section.md`
c49c6c5e7d8c084c7b748226244b8f050e64b35f48fd2874000000010000103d
# Release 21.05 ("Okapi", 2021.05/31) {#sec-release-21.05}

Support is planned until the end of December 2021, handing over to 21.11.

## Highlights {#sec-release-21.05-highlights}

In addition to numerous new and upgraded packages, this release has the following highlights:

- Core version changes:

  - gcc: 9.3.0 -\> 10.3.0

  - glibc: 2.30 -\> 2.32

  - default linux: 5.4 -\> 5.10, all supported kernels available

  - mesa: 20.1.7 -\> 21.0.1

- Desktop Environments:

  - GNOME: 3.36 -\> 40, see its [release notes](https://help.gnome.org/misc/release-notes/40.0/)

  - Plasma5: 5.18.5 -\> 5.21.3

  - kdeApplications: 20.08.1 -\> 20.12.3

  - cinnamon: 4.6 -\> 4.8.1

- Programming Languages and Frameworks:

  - Python optimizations were disabled again. Builds with optimizations enabled are not reproducible. Optimizations can now be enabled with an option.

- The linux_latest kernel was updated to the 5.13 series. It currently is not officially supported for use with the zfs filesystem. If you use zfs, you should use a different kernel version (either the LTS kernel, or track a specific one).

## New Services {#sec-release-21.05-new-services}

The following new services were added since the last release:

- [GNURadio](https://www.gnuradio.org/) 3.8 and 3.9 were [finally](https://github.com/NixOS/nixpkgs/issues/82263) packaged, along with a rewrite to the Nix expressions, allowing users to override the features upstream supports selecting to compile or not to. Additionally, the attribute `gnuradio` (3.9), `gnuradio3_8` and `gnuradio3_7` now point to an externally wrapped by default derivations, that allow you to also add \`extraPythonPackages\` to the Python interpreter used by GNURadio. Missing environmental variables needed for operational GUI were also added ([\#75478](https://github.com/NixOS/nixpkgs/issues/75478)).

- [Keycloak](https://www.keycloak.org/), an open source identity and access management server with support for [OpenID Connect](https://openid.net/connect/), [OAUTH 2.0](https://oauth.net/2/) and [SAML 2.0](https://en.wikipedia.org/wiki/SAML_2.0).

  See the [Keycloak section of the NixOS manual](#module-services-keycloak) for more information.

- [services.samba-wsdd.enable](options.html#opt-services.samba-wsdd.enable) Web Services Dynamic Discovery host daemon

- [Discourse](https://www.discourse.org/), a modern and open source discussion platform.

  See the [Discourse section of the NixOS manual](#module-services-discourse) for more information.

- [services.nebula.networks](options.html#opt-services.nebula.networks) [Nebula VPN](https://github.com/slackhq/nebula)

## Backward Incompatibilities {#sec-release-21.05-incompatibilities}

When upgrading from a previous release, please be aware of the following incompatible changes:

- GNOME desktop environment was upgraded to 40, see the release notes for [40.0](https://help.gnome.org/misc/release-notes/40.0/) and [3.38](https://help.gnome.org/misc/release-notes/3.38/). The `gnome3` attribute set has been renamed to `gnome` and so have been the NixOS options.

- If you are using `services.udev.extraRules` to assign custom names to network interfaces, this may stop working due to a change in the initialisation of dhcpcd and systemd networkd. To avoid this, either move them to `services.udev.initrdRules` or see the new [Assigning custom names](#sec-custom-ifnames) section of the NixOS manual for an example using networkd links.

- The `security.hideProcessInformation` module has been removed. It was broken since the switch to cgroups-v2.

- The `linuxPackages.ati_drivers_x11` kernel modules have been removed. The drivers only supported kernels prior to 4.2, and thus have become obsolete.

- The `systemConfig` kernel parameter is no longer added to boot loader entries. It has been unused since September 2010, but if do have a system generation from that era, you will now be unable to boot into them.

- `systemd-journal2gelf` no longer parses json and expects the receiving system to handle it. How to achieve this with Graylog is described in this [GitHub issue](https://github.com/parse-nl/SystemdJournal2Gelf/issues/10).

Title: NixOS Release 21.05 ("Okapi") Highlights, New Services, and Incompatibilities
Summary
NixOS Release 21.05 ("Okapi") features updated core versions (gcc, glibc, linux, mesa), desktop environments (GNOME, Plasma5, kdeApplications, cinnamon), and introduces new services like GNURadio, Keycloak, samba-wsdd, Discourse, and Nebula VPN. It also outlines several backward incompatibilities, including changes to GNOME, network interface naming, the removal of the `security.hideProcessInformation` module, obsolete ATI drivers, the removal of the `systemConfig` kernel parameter, and changes to `systemd-journal2gelf`.