Home Explore Blog CI



nixpkgs

8th chunk of `nixos/doc/manual/release-notes/rl-2405.section.md`
8637e636113620b487977cbfd1ad38bbcd674946711618710000000100000fbd
  This can be disabled by overriding `withImmutableConfig = false` when building `azure-cli`.

- `boot.supportedFilesystems` and `boot.initrd.supportedFilesystems` are now attribute sets instead of lists. Assignment from lists as done previously is still supported, but checking whether a filesystem is enabled must now by done using `supportedFilesystems.fs or false` instead of using `lib.elem "fs" supportedFilesystems` as was done previously.

- `buildGoModule` now throws an error when `vendorHash` is not specified. `vendorSha256`, deprecated in Nixpkgs 23.11, is now ignored and is no longer a `vendorHash` alias.

- `chromium` and `ungoogled-chromium` had a long-standing issue regarding Widevine DRM handling in nixpkgs fixed.
  `chromium` now no longer automatically downloads Widevine when encountering DRM protected content.
  To be able to play DRM protected content in `chromium`, you now have to explicitly opt-in as originally intended using `chromium.override { enableWideVine = true; }`.
  This override was added almost 10 years ago.

- `craftos-pc` package has been updated to v2.8, which includes [breaking changes](https://github.com/MCJack123/craftos2/releases/tag/v2.8).
  - Files are now handled in binary mode; this could break programs with embedded UTF-8 characters.
  - The ROM was updated to match ComputerCraft version v1.109.2.
  - The bundled Lua was updated to Lua v5.2, which includes breaking changes. See the [Lua manual](https://www.lua.org/manual/5.2/manual.html#8) for more information.
  - The WebSocket API [was rewritten](https://github.com/MCJack123/craftos2/issues/337), which introduced breaking changes.

- `cryptsetup` has been upgraded from 2.6.1 to 2.7.0. Cryptsetup is a critical component enabling LUKS-based (but not only) full disk encryption.
  Take the time to review [the release notes](https://gitlab.com/cryptsetup/cryptsetup/-/raw/v2.7.0/docs/v2.7.0-ReleaseNotes).
  One of the highlights is that it is now possible to use hardware OPAL-based encryption of your disk with `cryptsetup`. It has a lot of caveats, see the above notes for the full details.

- `crystal` package has been updated to 1.11.x, which has some breaking changes.
  Refer to crystal's changelog for more information. ([v1.10](https://github.com/crystal-lang/crystal/blob/master/CHANGELOG.md#1100-2023-10-09), [v1.11](https://github.com/crystal-lang/crystal/blob/master/CHANGELOG.md#1110-2024-01-08))

- `cudaPackages` package scope has been updated to `cudaPackages_12`.

- `cudaPackages.autoAddOpenGLRunpathHook` and `cudaPackages.autoAddDriverRunpath` have been deprecated for `pkgs.autoAddDriverRunpath`. Functionality has not changed, but the setuphook has been renamed and moved to the top-level package scope.

- `cudaPackages.cudatoolkit` has been deprecated and replaced with a
  symlink-based wrapper for the splayed redistributable CUDA packages. The
  wrapper only includes tools and libraries necessary to build common packages
  such as tensorflow. The original runfile-based `cudatoolkit` is still
  available as `cudatoolkit-legacy-runfile`.

- `cudaPackages.nsight_systems` now has most vendored third-party libraries removed, though we now only ship it for `cudaPackages_11_8` and later, due to outdated dependencies. Users comfortable with the vendored dependencies may use `overrideAttrs` to amend the `postPatch` phase and the `meta.broken` correspondingly. Alternatively, one could package the deprecated `boost170` locally, as required for `cudaPackages_11_4.nsight_systems`.

- `cudaPackages.autoFixElfFiles` has been deprecated for `pkgs.autoFixElfFiles`. Functionality has not changed, but the setuphook has been renamed and moved to the top-level package scope.

- `davfs2`'s `services.davfs2.extraConfig` setting has been deprecated and converted to the free-form type option named `services.davfs2.settings` according to RFC42.

- `dwarf-fortress` has been updated to version 50, which is identical to the version on Steam, but without the paid elements like tilepacks.

Title: NixOS 24.05: Backward Incompatibilities (Continued)
Summary
This section continues detailing backward incompatibilities in NixOS 24.05. It covers changes to: azure-cli (immutable config option), boot.supportedFilesystems (now attribute sets), buildGoModule (requires vendorHash), chromium/ungoogled-chromium (Widevine DRM handling), craftos-pc (updated to v2.8 with breaking changes), cryptsetup (upgraded to 2.7.0), crystal (updated to 1.11.x), cudaPackages (updated to cudaPackages_12), cudaPackages.autoAddOpenGLRunpathHook & cudaPackages.autoAddDriverRunpath (deprecated in favor of pkgs.autoAddDriverRunpath), cudaPackages.cudatoolkit (deprecated), cudaPackages.nsight_systems (vendored libraries removed), cudaPackages.autoFixElfFiles (deprecated in favor of pkgs.autoFixElfFiles), davfs2 (extraConfig deprecated and replaced with settings), and dwarf-fortress (updated to version 50).