Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1# Nixpkgs 25.11 ("Xantusia", 2025.11/??) {#sec-nixpkgs-release-25.11} 2 3## Highlights {#sec-nixpkgs-release-25.11-highlights} 4<!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. --> 5 6- The initial work to support native compilation on LoongArch64 has completed, with further changes currently 7 in preparation. In accordance with the [Software Development and Build Convention for LoongArch Architectures](https://github.com/loongson/la-softdev-convention), 8 this release sets the default march level to `la64v1.0`, covering the desktop and server processors of 3X5000 9 and newer series. However, embedded chips without LSX (Loongson SIMD eXtension), such as 2K0300 SoC, are not 10 supported. `pkgsCross.loongarch64-linux-embedded` can be used to build software and systems for these platforms. 11- The official Nix formatter `nixfmt` is now stable and available as `pkgs.nixfmt`, deprecating the temporary `pkgs.nixfmt-rfc-style` attribute. The classic `nixfmt` will stay available for some more time as `pkgs.nixfmt-classic`. 12 13## Backward Incompatibilities {#sec-nixpkgs-release-25.11-incompatibilities} 14 15<!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. --> 16 17- The `offrss` package was removed due to lack of upstream maintenance since 2012. It's recommended for users to migrate to another RSS reader 18 19- `base16-builder` node package has been removed due to lack of upstream maintenance. 20- `gentium` package now provides `Gentium-*.ttf` files, and not `GentiumPlus-*.ttf` files like before. The font identifiers `Gentium Plus*` are available in the `gentium-plus` package, and if you want to use the more recently updated package `gentium` [by sil](https://software.sil.org/gentium/), you should update your configuration files to use the `Gentium` font identifier. 21- `space-orbit` package has been removed due to lack of upstream maintenance. Debian upstream stopped tracking it in 2011. 22- `command-not-found` package is now disabled by default; it works only for nix-channels based systems, and requires setup for it to work. 23 24- Derivations setting both `separateDebugInfo` and one of `allowedReferences`, `allowedRequistes`, `disallowedReferences` or `disallowedRequisites` must now set `__structuredAttrs` to `true`. The effect of reference whitelisting or blacklisting will be disabled on the `debug` output created by `separateDebugInfo`. 25 26- `victoriametrics` no longer contains VictoriaLogs components. These have been separated into the new package `victorialogs`. 27 28- `mx-puppet-discord` was removed from nixpkgs along with its NixOS module as it was unmaintained and was the only user of sha1 hashes in tree. 29 30- `gnome-keyring` no longer ships with an SSH agent anymore because it has been deprecated upstream. You should use `gcr_4` instead, which provides the same features. More information on why this was done can be found on [the relevant GCR upstream PR](https://gitlab.gnome.org/GNOME/gcr/-/merge_requests/67). 31 32- `stdenv.mkDerivation` and other derivation builders that use it no longer allow the value of `env` to be anything but an attribute set, for the purpose of setting environment variables that are available to the [builder](https://nix.dev/manual/nix/latest/store/derivation/#builder) process. An environment variable called `env` can still be provided by means of `mkDerivation { env.env = ...; }`, though we recommend to use a more specific name than "env". 33 34- `conftest` since `0.60.0` has moved to use rego `v1` as default. To continue using `v0` use `--rego-version v0`. For more information about upgrading to Rego v1 syntax, see the [upstream docs](https://www.openpolicyagent.org/docs/latest/v0-upgrade/). 35 36- `stalwart-mail` since `0.13.0` "introduces a significant redesign of the MTA’s delivery and queueing subsystem". See [the upgrading announcement for the `0.13.0` release](https://github.com/stalwartlabs/stalwart/blob/89b561b5ca1c5a11f2a768b4a2cfef0f473b7a01/UPGRADING.md#upgrading-from-v012x-and-v011x-to-v013x). 37 38- The `archipelago-minecraft` package was removed, as upstream no longer provides support for the Minecraft APWorld. 39 40- `navidrome` 0.58.0 introduces [multi-library support](https://www.navidrome.org/docs/usage/multi-library/) 41 and backwards incompatible database migrations. Ensure backups are valid and run a Full Scan after 42 starting the new version. 43 44- `tooling-language-server` has been renamed to `deputy` (both the package and binary), following the rename of the upstream project. 45 46- `webfontkitgenerator` has been renamed to `webfont-bundler`, following the rename of the upstream project. 47 The binary name remains `webfontkitgenerator`. 48 The `webfontkitgenerator` package is an alias to `webfont-bundler`. 49 50- `lima` package now only includes the guest agent for the host's architecture by default. If your guest VM's architecture differs from your Lima host's, you'll need to enable the `lima-additional-guestagents` package by setting `withAdditionalGuestAgents = true` when overriding lima with this input. 51 52- `vmware-horizon-client` was renamed to `omnissa-horizon-client`, following [VMware's sale of their end-user business to Omnissa](https://www.omnissa.com/insights/introducing-omnissa-the-former-vmware-end-user-computing-business/). The binary has been renamed from `vmware-view` to `horizon-client`. 53 54- `neovimUtils.makeNeovimConfig` now uses `customLuaRC` parameter instead of accepting `luaRcContent`. The old usage is deprecated but still works with a warning. 55 56- `telegram-desktop` packages now uses `Telegram` for its binary. The previous name was `telegram-desktop`. This is due to [an upstream decision](https://github.com/telegramdesktop/tdesktop/commit/56ff5808a3d766f892bc3c3305afb106b629ef6f) to make the name consistent with other platforms. 57 58- `podofo` has been updated from `0.9.8` to `1.0.0`. These releases are by nature very incompatable due to major api changes. The legacy versions can be found under `podofo_0_10` and `podofo_0_9`. 59 Changelog: https://github.com/podofo/podofo/blob/1.0.0/CHANGELOG.md, API-Migration-Guide: https://github.com/podofo/podofo/blob/1.0.0/API-MIGRATION.md. 60 61- NetBox was updated to `>= 4.3.0`. Have a look at the breaking changes 62 of the [4.3 release](https://github.com/netbox-community/netbox/releases/tag/v4.2.0), 63 make the required changes to your database, if needed, then upgrade by setting `services.netbox.package = pkgs.netbox_4_3;` in your configuration. 64 65- `go-mockery` has been updated to v3. For migration instructions see the [upstream documentation](https://vektra.github.io/mockery/latest/v3/). If v2 is still required `go-mockery_v2` has been added but will be removed on or before 2029-12-31 in-line with it's [upstream support lifecycle](https://vektra.github.io/mockery/ 66 67- [private-gpt](https://github.com/zylon-ai/private-gpt) service has been removed by lack of maintenance upstream. 68 69## Other Notable Changes {#sec-nixpkgs-release-25.11-notable-changes} 70 71<!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. --> 72 73- Added `rewriteURL` attribute to the nixpkgs `config`, to allow for rewriting the URLs downloaded by `fetchurl`. 74 75- The systemd initrd will now respect `x-systemd.wants` and `x-systemd.requires` for reliably unlocking multi-disk bcachefs volumes. 76 77- [`homebox` 0.20.0](https://github.com/sysadminsmedia/homebox/releases/tag/v0.20.0) changed how assets are stored and hashed. It is recommended to back up your database before this update. 78 79- New hardening flags, `strictflexarrays1` and `strictflexarrays3` were made available, corresponding to the gcc/clang options `-fstrict-flex-arrays=1` and `-fstrict-flex-arrays=3` respectively. 80 81- `gramps` has been updated to 6.0.0 82 Upstream recommends [backing up your Family Trees](https://gramps-project.org/wiki/index.php/Gramps_6.0_Wiki_Manual_-_Manage_Family_Trees#Backing_up_a_Family_Tree) before upgrading. 83 84- `meta.mainProgram`: Changing this `meta` entry can lead to a package rebuild due to being used to determine the `NIX_MAIN_PROGRAM` environment variable. 85 86- `searx` was updated to use `envsubst` instead of `sed` for parsing secrets from environment variables. 87 If your previous configuration included a secret reference like `server.secret_key = "@SEARX_SECRET_KEY@"`, you must migrate to the new envsubst syntax: `server.secret_key = "$SEARX_SECRET_KEY"`. 88 89- `versionCheckHook`: Packages that previously relied solely on `pname` to locate the program used to version check, but have a differing `meta.mainProgram` entry, might now fail. 90 91 92- The debug outputs produced by `separateDebugInfo = true;` now contain symlinks mapping build-ids to the original source and ELF file. 93 Specifically, if `$out/bin/ninja` has build-id `483bd7f7229bdb06462222e1e353e4f37e15c293`, then 94 * `$debug/lib/debug/.build-id/48/3bd7f7229bdb06462222e1e353e4f37e15c293.executable` is a symlink to `$out/bin/ninja` 95 * `$debug/lib/debug/.build-id/48/3bd7f7229bdb06462222e1e353e4f37e15c293.source` is a symlink to the value of `$src` during build 96 * `$debug/lib/debug/.build-id/48/3bd7f7229bdb06462222e1e353e4f37e15c293.sourceoverlay` is a symlink to a directory with the same structure as the expanded `$sourceRoot` but containing only a copy of files which were patched during the build 97 * `$debug/lib/debug/.build-id/48/3bd7f7229bdb06462222e1e353e4f37e15c293.debug` is the file containing debug symbols (like before). 98 99 100## Nixpkgs Library {#sec-nixpkgs-release-25.11-lib} 101 102<!-- To avoid merge conflicts, consider adding your item at an arbitrary place in the list instead. --> 103 104- `mealie` has been updated to 3.0.2: This update introduces breaking changes in some API endpoints (see the [release changelog](https://github.com/mealie-recipes/mealie/releases/tag/v3.0.0)) 105 106### Breaking changes {#sec-nixpkgs-release-25.11-lib-breaking} 107 108- `reaction` has been updated to version 2, which includes some breaking changes. 109 For more information, [check the release article](https://blog.ppom.me/en-reaction-v2). 110 111- The `buildPythonPackage` and `buildPythonApplication` functions now require 112 an explicit `format` attribute. Previously the default format used setuptools 113 and called `setup.py` from the source tree, which is deprecated. 114 The modern alternative is to configure `pyproject = true` with `build-system = [ setuptools ]`. 115 116### Deprecations {#sec-nixpkgs-release-25.11-lib-deprecations} 117 118- Create the first release note entry in this section! 119 120 121### Additions and Improvements {#sec-nixpkgs-release-25.11-lib-additions-improvements} 122 123- `neovim`: Added support for the `vim.o.exrc` option, the `VIMINIT` environment variable, and sourcing of `sysinit.vim`. 124 125 See the neovim help page [`:help startup`](https://neovim.io/doc/user/starting.html#startup) for more information, as well as [the nixpkgs neovim wrapper documentation](#neovim-custom-configuration).