From 07fe1b987bb6c47dd43fb03c61cc0dea648145b7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Thalheim?= Date: Wed, 30 Nov 2022 17:34:42 +0100 Subject: [PATCH] nixos/doc/rl-2211: cleanup --- .../from_md/release-notes/rl-2211.section.xml | 271 +++++++++--------- .../manual/release-notes/rl-2211.section.md | 96 +++---- 2 files changed, 180 insertions(+), 187 deletions(-) diff --git a/nixos/doc/manual/from_md/release-notes/rl-2211.section.xml b/nixos/doc/manual/from_md/release-notes/rl-2211.section.xml index 54e40a8fba78..6689d2389eb2 100644 --- a/nixos/doc/manual/from_md/release-notes/rl-2211.section.xml +++ b/nixos/doc/manual/from_md/release-notes/rl-2211.section.xml @@ -1,9 +1,18 @@
Release 22.11 (“Raccoon”, 2022.11/??) + + The NixOS release team is happy to announce a new version of NixOS + 22.11. NixOS is both a linux distribution, and a set of packages + usable on other Linux systems and macOS. + This release is supported until the end of June 2023, handing over to NixOS 23.05. + + To upgrade to the latest release follow the + upgrade chapter. +
Highlights @@ -69,87 +78,72 @@ - GNOME has been upgraded to version 43. Please take a look at - their Release - Notes for details. + The NixOS documentation is now generated from markdown. While + docbook is still part of the documentation build process, it’s + a big step towards the full migration. - KDE Plasma has been upgraded from v5.24 to v5.26. Please see - the release notes for - v5.25 - and - v5.26 - for more details on the included changes. + aarch64-linux is now included in the + nixos-22.11 and + nixos-22.11-small channels. This means that + when those channel update, both + x86_64-linux and + aarch64-linux will be available in the + binary cache. - Cinnamon has been updated to 5.4, and the Cinnamon module now - defaults to Blueman as the Bluetooth manager and slick-greeter - as the LightDM greeter, to match upstream. + aarch64-linux ISOs are now available on the + downloads + page. - OpenSSL now defaults to OpenSSL 3, updated from 1.1.1. + nsncd is now available as a replacement of + nscd. - - - PHP now defaults to PHP 8.1, updated from 8.0. + nscd is responsible for resolving + hostnames, users and more in NixOS and has been a long + standing source of bugs, such as sporadic network freezes. - - - PHP is now built in NTS (Non-Thread Safe) - mode by default. + More context in this + issue. - - - - For Apache and mod_php usage, we enable - ZTS (Zend Thread Safe) mode. This has - been a common practice for a long time in other - distributions. - - - - - - Perl has been updated to 5.36, and its core module - HTTP::Tiny was patched to verify SSL/TLS - certificates by default. - - - - - nscd functionality, necessary to provide - non-glibc-builtin NSS modules (such as - nss_systemd or nss_ldap) - can now be provided by nsncd, by setting + Help us test the new implementation by setting services.nscd.enableNsncd to true. - - The nscd daemon provided by glibc, which is - currently used by NixOS isn’t very reliable. For example, it’s - not - fully possible to disable caching functionality, - causing various issues and failed lookups. - - - In contrast to nscd’s behavior of caching module responses on - its own, nsncd merely forwards requests to NSS modules, which - might cache or not. - We plan to use nsncd by default in NixOS 23.05. + + + Linode cloud images are now supported by importing + ${modulesPath}/virtualisation/linode-image.nix + and accessing system.build.linodeImage on + the output. + + + + + hardware.nvidia has a new option, + hardware.nvidia.open, that can be used to + enable the usage of NVIDIA’s open-source kernel driver. Note + that the driver’s support for GeForce and Workstation GPUs is + still alpha quality, see + the + release announcement for more information. + + The emacs package now makes use of native @@ -178,61 +172,6 @@ - - - nixos-generate-config now generates - configurations that can be built in pure mode. This is - achieved by setting the new - nixpkgs.hostPlatform option. - - - You may have to unset the system parameter - in lib.nixosSystem, or similarly remove - definitions of the - nixpkgs.{system,localSystem,crossSystem} - options. - - - Alternatively, you can remove the - hostPlatform line and use NixOS like you - would in NixOS 22.05 and earlier. - - - - - It is now possible to generate NixOS images for the Linode - cloud provider, via - system.build.linodeImage. - - - - - hardware.nvidia has a new option, - hardware.nvidia.open, that can be used to - enable the usage of NVIDIA’s open-source kernel driver. Note - that the driver’s support for GeForce and Workstation GPUs is - still alpha quality, see - the - release announcement for more information. - - - - - aarch64-linux is now included in the - nixos-22.11 and - nixos-22.11-small channels. This means that - x86_64-linux and - aarch64-linux will recieve updates at the - same time. - - - - - aarch64-linux ISOs are now available on the - downloads - page. - -
@@ -240,38 +179,28 @@ - Improved performances of - lib.closePropagation which was previously - quadratic. This is used in e.g. - ghcWithPackages. Please see backward - incompatibilities notes below. + Haskell ghcWithPackages is now up to 15 + times faster to evaluate, thanks to changing + lib.closePropagation from a quadratic to + linear complexity. Please see backward incompatibilities notes + below. + https://github.com/NixOS/nixpkgs/pull/194391 - During cross-compilation, tests are now executed if the test - suite can be executed by the build platform. This is the case - when doing “native” cross-compilation where the build and host - platforms are largely the same, but the nixpkgs’ cross - compilation infrastructure is used, e.g. - pkgsStatic and pkgsLLVM. - Another possibility is that the build platform is a superset - of the host platform, e.g. when cross-compiling from - x86_64-unknown-linux to - i686-unknown-linux. The predicate gating - test suite execution is the newly added - canExecute predicate: You can e.g. check if - stdenv.buildPlatform can execute binaries - built for stdenv.hostPlatform (i.e. - produced by stdenv.cc) by evaluating - stdenv.buildPlatform.canExecute stdenv.hostPlatform. + For cross-compilation targets that can also run on the + building machine, we also enabled running tests now. This is + for example the case for the pkgsStatic and pkgsLLVm package + sets or i686 packages on x86_64 machine. - The nixpkgs.hostPlatform and - nixpkgs.buildPlatform options have been - added. These cover and override the + To simplify cross-compilation in NixOS, this release + introduces the nixpkgs.hostPlatform and + nixpkgs.buildPlatform options. These cover + and override the nixpkgs.{system,localSystem,crossSystem} options. @@ -308,6 +237,64 @@
+
+ Notable version updates + + + + Nix has been upgraded from + v2.8.1 + to v2.11.0 + + + + + OpenSSL now defaults to OpenSSL 3, updated from 1.1.1. + + + + + GNOME has been upgraded to version 43. Please take a look at + their Release + Notes for details. + + + + + KDE Plasma has been upgraded from v5.24 to v5.26. Please see + the release notes for + v5.25 + and + v5.26 + for more details on the included changes. + + + + + Cinnamon has been updated to 5.4, and the Cinnamon module now + defaults to Blueman as the Bluetooth manager and slick-greeter + as the LightDM greeter, to match upstream. + + + + + PHP now defaults to PHP 8.1, updated from 8.0. + + + + + Perl has been updated to 5.36, and its core module + HTTP::Tiny was patched to verify SSL/TLS + certificates by default. + + + + + Python now defalts to 3.10, updated from 3.9. + + + +
Backward Incompatibilities @@ -908,6 +895,22 @@ services.github-runner.serviceOverrides.SupplementaryGroups = [
Other Notable Changes + + + PHP is now built in NTS (Non-Thread Safe) + mode by default. + + + + + For Apache and mod_php usage, we enable + ZTS (Zend Thread Safe) mode. This has + been a common practice for a long time in other + distributions. + + + + firefox, thunderbird and diff --git a/nixos/doc/manual/release-notes/rl-2211.section.md b/nixos/doc/manual/release-notes/rl-2211.section.md index 941bd0521eaf..00e815fa66ac 100644 --- a/nixos/doc/manual/release-notes/rl-2211.section.md +++ b/nixos/doc/manual/release-notes/rl-2211.section.md @@ -1,7 +1,11 @@ # Release 22.11 (“Raccoon”, 2022.11/??) {#sec-release-22.11} +The NixOS release team is happy to announce a new version of NixOS 22.11. NixOS is both a linux distribution, and a set of packages usable on other Linux systems and macOS. + This release is supported until the end of June 2023, handing over to NixOS 23.05. +To upgrade to the latest release follow the [upgrade chapter](#sec-upgrading). + ## Highlights {#sec-release-22.11-highlights} In addition to numerous new and upgraded packages, this release includes the following highlights: @@ -13,74 +17,37 @@ In addition to numerous new and upgraded packages, this release includes the fol - On the other hand, for interactively configured user passwords, simply re-set the passwords for all users with `passwd`. - This release introduces warnings for the use of deprecated hash algorithms for both methods of configuring passwords. To make sure you migrated correctly, run `nixos-rebuild switch`. -- GNOME has been upgraded to version 43. Please take a look at their [Release Notes](https://release.gnome.org/43/) for details. +- The NixOS documentation is now generated from markdown. While docbook is still part of the documentation build process, it's a big step towards the full migration. -- KDE Plasma has been upgraded from v5.24 to v5.26. Please see the release notes for [v5.25](https://kde.org/announcements/plasma/5/5.25.0/) and [v5.26](https://kde.org/announcements/plasma/5/5.26.0/) for more details on the included changes. +- `aarch64-linux` is now included in the `nixos-22.11` and `nixos-22.11-small` channels. This means that when those channel update, both `x86_64-linux` and `aarch64-linux` will be available in the binary cache. -- Cinnamon has been updated to 5.4, and the Cinnamon module now defaults to - Blueman as the Bluetooth manager and slick-greeter as the LightDM greeter, to match upstream. +- `aarch64-linux` ISOs are now available on the [downloads page](https://nixos.org/download.html). -- OpenSSL now defaults to OpenSSL 3, updated from 1.1.1. +- `nsncd` is now available as a replacement of `nscd`. -- PHP now defaults to PHP 8.1, updated from 8.0. + `nscd` is responsible for resolving hostnames, users and more in NixOS and has been a long standing source of bugs, such as sporadic network freezes. + + More context in this [issue](https://github.com/NixOS/nixpkgs/issues/135888). + + Help us test the new implementation by setting `services.nscd.enableNsncd` to `true`. -- PHP is now built in `NTS` (Non-Thread Safe) mode by default. - - For Apache and `mod_php` usage, we enable `ZTS` (Zend Thread Safe) mode. This has been a - common practice for a long time in other distributions. + We plan to use `nsncd` by default in NixOS 23.05. -- Perl has been updated to 5.36, and its core module `HTTP::Tiny` was patched to verify SSL/TLS certificates by default. +- Linode cloud images are now supported by importing `${modulesPath}/virtualisation/linode-image.nix` and accessing `system.build.linodeImage` on the output. -- `nscd` functionality, necessary to provide non-glibc-builtin NSS - modules (such as `nss_systemd` or `nss_ldap`) can now be provided by - `nsncd`, by setting `services.nscd.enableNsncd` to `true`. - - The `nscd` daemon provided by glibc, which is currently used by NixOS isn't - very reliable. For example, it's [not fully possible to disable caching - functionality](https://github.com/NixOS/nixpkgs/issues/135888), causing - various issues and failed lookups. - - In contrast to nscd's behavior of caching module responses on its own, - nsncd merely forwards requests to NSS modules, which might cache or not. - - We plan to use `nsncd` by default in NixOS 23.05. +- `hardware.nvidia` has a new option, `hardware.nvidia.open`, that can be used to enable the usage of NVIDIA's open-source kernel driver. Note that the driver's support for GeForce and Workstation GPUs is still alpha quality, see [the release announcement](https://developer.nvidia.com/blog/nvidia-releases-open-source-gpu-kernel-modules/) for more information. - The `emacs` package now makes use of native compilation which means: - Emacs packages from Nixpkgs, builtin or not, will do native compilation ahead of time so you can enjoy the benefit of native compilation without compiling them on you machine; - Emacs packages from somewhere else, e.g. `package-install`, will perform asynchronously deferred native compilation. If you do not want this, maybe to avoid CPU consumption for compilation, you can use `(setq native-comp-deferred-compilation nil)` to disable it while still benefiting from native compilation for packages from Nixpkgs. -- `nixos-generate-config` now generates configurations that can be built in pure - mode. This is achieved by setting the new `nixpkgs.hostPlatform` option. - - You may have to unset the `system` parameter in `lib.nixosSystem`, or similarly - remove definitions of the `nixpkgs.{system,localSystem,crossSystem}` options. - - Alternatively, you can remove the `hostPlatform` line and use NixOS like you - would in NixOS 22.05 and earlier. - -- It is now possible to generate NixOS images for the Linode cloud provider, via `system.build.linodeImage`. - -- `hardware.nvidia` has a new option, `hardware.nvidia.open`, that can be used to enable the usage of NVIDIA's open-source kernel driver. Note that the driver's support for GeForce and Workstation GPUs is still alpha quality, see [the release announcement](https://developer.nvidia.com/blog/nvidia-releases-open-source-gpu-kernel-modules/) for more information. - -- `aarch64-linux` is now included in the `nixos-22.11` and `nixos-22.11-small` channels. This means that `x86_64-linux` and `aarch64-linux` will recieve updates at the same time. - -- `aarch64-linux` ISOs are now available on the [downloads page](https://nixos.org/download.html). - ## Internal changes {#sec-release-22.11-internal} -- Improved performances of `lib.closePropagation` which was previously quadratic. This is used in e.g. `ghcWithPackages`. Please see backward incompatibilities notes below. -- During cross-compilation, tests are now executed if the test suite can be executed - by the build platform. This is the case when doing “native” cross-compilation - where the build and host platforms are largely the same, but the nixpkgs' cross - compilation infrastructure is used, e.g. `pkgsStatic` and `pkgsLLVM`. Another - possibility is that the build platform is a superset of the host platform, e.g. when - cross-compiling from `x86_64-unknown-linux` to `i686-unknown-linux`. - The predicate gating test suite execution is the newly added `canExecute` - predicate: You can e.g. check if `stdenv.buildPlatform` can execute binaries - built for `stdenv.hostPlatform` (i.e. produced by `stdenv.cc`) by evaluating - `stdenv.buildPlatform.canExecute stdenv.hostPlatform`. +- Haskell `ghcWithPackages` is now up to 15 times faster to evaluate, thanks to changing `lib.closePropagation` from a quadratic to linear complexity. Please see backward incompatibilities notes below. -- The `nixpkgs.hostPlatform` and `nixpkgs.buildPlatform` options have been added. - These cover and override the `nixpkgs.{system,localSystem,crossSystem}` options. +- For cross-compilation targets that can also run on the building machine, we also enabled running tests now. This is for example the case for the pkgsStatic and pkgsLLVm package sets or i686 packages on `x86_64` machine. + +- To simplify cross-compilation in NixOS, this release introduces the `nixpkgs.hostPlatform` and `nixpkgs.buildPlatform` options. These cover and override the `nixpkgs.{system,localSystem,crossSystem}` options. - `hostPlatform` is the platform or "`system`" string of the NixOS system described by the configuration. @@ -97,6 +64,25 @@ In addition to numerous new and upgraded packages, this release includes the fol for a transition period so that in time the ecosystem can switch without breaking compatibility with any supported NixOS release. +## Notable version updates {#sec-release-22.11-version-updates} + +- Nix has been upgraded from [v2.8.1 to v2.11.0](https://github.com/NixOS/nix/compare/2.8.1...2.11.0) + +- OpenSSL now defaults to OpenSSL 3, updated from 1.1.1. + +- GNOME has been upgraded to version 43. Please take a look at their [Release Notes](https://release.gnome.org/43/) for details. + +- KDE Plasma has been upgraded from v5.24 to v5.26. Please see the release notes for [v5.25](https://kde.org/announcements/plasma/5/5.25.0/) and [v5.26](https://kde.org/announcements/plasma/5/5.26.0/) for more details on the included changes. + +- Cinnamon has been updated to 5.4, and the Cinnamon module now defaults to + Blueman as the Bluetooth manager and slick-greeter as the LightDM greeter, to match upstream. + +- PHP now defaults to PHP 8.1, updated from 8.0. + +- Perl has been updated to 5.36, and its core module `HTTP::Tiny` was patched to verify SSL/TLS certificates by default. + +- Python now defalts to 3.10, updated from 3.9. + ## Backward Incompatibilities {#sec-release-22.11-incompatibilities} - Nixpkgs now requires Nix 2.3 or newer. @@ -279,6 +265,10 @@ In addition to numerous new and upgraded packages, this release includes the fol ## Other Notable Changes {#sec-release-22.11-notable-changes} +- PHP is now built in `NTS` (Non-Thread Safe) mode by default. + - For Apache and `mod_php` usage, we enable `ZTS` (Zend Thread Safe) mode. This has been a + common practice for a long time in other distributions. + - `firefox`, `thunderbird` and `librewolf` now come with Wayland support by default. The `firefox-wayland`, `firefox-esr-wayland`, `thunderbird-wayland` and `librewolf-wayland` attributes are obsolete and have been aliased to their generic attribute. - The `xplr` package has been updated from 0.18.0 to 0.19.0, which brings some breaking changes. See the [upstream release notes](https://github.com/sayanarijit/xplr/releases/tag/v0.19.0) for more details.