Files
nixpkgs/doc/release-notes/rl-2605.section.md
2026-05-30 14:45:18 +02:00

34 KiB
Raw Permalink Blame History

Nixpkgs 26.05 ("Yarara", 2026.05/30)

Highlights

  • GCC has been updated from GCC 14 to GCC 15. This introduces some backwards incompatible changes; Refer to the upstream porting guide for details.

  • glibc has been updated to version 2.42.

    This version no longer makes the stack executable when a shared library requires this. A symptom is an error like

    cannot enable executable stack as shared object requires: Invalid argument

    This is usually a bug. Please consider reporting it to the software maintainers.

    In a lot of cases, the library requires the execstack by mistake only. The following workarounds exist:

    • When building the shared library in question from source, use the following linker flags to force turning off the executable flag:

      mkDerivation {
        # …
      
        env.NIX_LDFLAGS = "-z,noexecstack";
      }
      
    • If the sources are not available, the execstack-flag can be cleared with patchelf:

      patchelf --clear-execstack binary-only.so
      
    • If the shared library to be loaded actually requires an executable stack and it isn't turned on by the application loading it, you may force allowing that behavior by setting the following environment variable:

      GLIBC_TUNABLES=glibc.rtld.execstack=2
      

      Do not set this globally! This makes your setup inherently less secure.

  • Node.js default version has been updated from 22 LTS to 24 LTS. This introduces some breaking changes; Refer to the upstream migration article for details.

  • Ruby default version has been updated from 3.3 to 3.4. Refer to the upstream release announcement for details.

  • []{#x86_64-darwin-26.05}

    This will be the last release of Nixpkgs to support x86_64-darwin. Platform support will be maintained and binaries built until Nixpkgs 26.05 goes out of support at the end of 2026. For 26.11, due to Apples deprecation of the platform and limited build infrastructure and developer time, we will no longer build packages for x86_64-darwin or support building them from source.

    By the time of 26.11s release, Homebrew will offer only limited Tier 3 support for the platform, but MacPorts will likely continue to support it for a long time. We also recommend users consider installing NixOS, which should continue to run on essentially all Intel Macs, especially after Apple stops security support for macOS 26 in 2028.

    A warning will be displayed for x86_64-darwin users; you can set in the Nixpkgs configuration to silence it. The {file}~/.config/nixpkgs/config.nix file will not work for users of flakes, who can instead replace nixpkgs.legacyPackages.x86_64-darwin with

    import nixpkgs {
      system = "x86_64-darwin";
      config.allowDeprecatedx86_64Darwin = true;
    }
    

    nix-darwin users can set nixpkgs.config.allowDeprecatedx86_64Darwin in their system configurations.

  • The Factor programming language has been updated to Version 0.101 bringing various improvements to UI rendering and HiDPI support as well as support for Unicode 17.0.0. Starting from Version 0.100, the Factor VM is compiled with Clang.

    This brings along some backwards compatibility issues in the language further detailed here. Additionally, the FUEL Emacs module is no longer part of the factor-lang package. It is part of the MELPA package set for a while already and must be taken from there. This does not affect factor-lang packages Version 0.99 and 0.100. Using the official MELPA package now puts the burden of providing the path to /lib/factor in factor-root-dir on the user. Make sure to use the extraVocabs package attribute to compose a special vocabulary tree if necessary. You can refer to the generated tree of vocabulary roots via the newly exposed vocabTree attribute, as described in the documentation.

  • Nixpkgs configuration, specified for NixOS using nixpkgs.config, or using the config argument when importing nixpkgs, has learned to accept a lib argument as well as pkgs, which allows the configuration to be computed without depending on the pkgs fixed point. If you are referencing licenses in lib.licenses by having this configuration be a function taking a pkgs arg, you may wish to change to using lib for faster computation and to avoid infinite recursion errors if pkgs depends on parts of the computed configuration in future.

    For example, if you currently have configuration that looks like this:

      { pkgs, ... }:
      {
        allowlistedLicenses = [ pkgs.lib.licenses.nasa13 ];
        blocklistedLicenses = with pkgs.lib.licenses; [ gpl3Only gpl3Plus ];
      }
    

    You may wish to update it to something like this:

      { lib, ... }:
      {
        allowlistedLicenses = [ lib.licenses.nasa13 ];
        blocklistedLicenses = with lib.licenses; [ gpl3Only gpl3Plus ];
      }
    

    Or, if you need configuration that works with both 26.05 and 25.11:

      { pkgs, lib ? pkgs.lib, ... }:
      {
        allowlistedLicenses = [ lib.licenses.nasa13 ];
        blocklistedLicenses = with lib.licenses; [ gpl3Only gpl3Plus ];
      }
    

Backward Incompatibilities

  • mdbook-linkcheck has been removed as it is unmaintained and incompatible with the latest version of mdbook. Users can instead migrate to mdbook-linkcheck2.

  • The nodePackages package set has been removed entirely from nixpkgs. This package set was created to ease the maintenance burden of maintaining lots of NodeJS-based packages within nixpkgs, but became a burden itself. Over the past several releases, there has been a focus on removing it in favor of the more modern nixpkgs packaging strategies. After a long time, this package set has been deprecated and removed. If you are using its package set in your own config, please use the top-level packages instead.(i.e pkgs.package-name instead of pkgs.nodePackages.package-name).

  • Note that the above nodePackages removal also coincides with the removal of node2nix and its tooling, which have been deprecated for a long time.

  • buildEnv-constructed packages now take only structured attributes ({ __structuredAttrs = true; }).

  • xfce.mkXfceDerivation has been deprecated (i.e. conditioned behind nixpkgs.config.allowAliases) and will be removed in NixOS 26.11, please use stdenv.mkDerivation directly. You can migrate by adding pkg-config, xfce4-dev-tools, and wrapGAppsHook3 to your nativeBuildInputs and --enable-maintainer-mode to your configureFlags.

  • yarn2nix/yarn2nix-moretea and its tooling(mkYarnPackage, mkYarnModules, and fixup_yarn_lock) have been removed as they were unmaintainable in nixpkgs. If you want to build with Yarn V1 going forward, use the hooks instead(yarnBuildHook, yarnConfigHook, and yarnInstallHook). See the yarn v1 documentation in the nixpkgs manual for more details.

  • albert has been updated to version 34.0.5. This release redesigns the query system to support stateful asynchronous handlers and infinite scrolling, and adds internationalized tokenization. This update introduces several breaking changes: the Python plugin interface is now v5.0, the PATH plugin has been renamed to Commandline, and the QStylesheets-based widgets box model frontend has been removed. For more information read the changelog for 34.0.0.

  • asciinema_3 is now renamed to asciinema and the old asciinema version 2.x.x written in python was removed.

  • sing-box has been updated to 1.13.0, which has removed some deprecated options. See upstream documentation for details and migration options.

  • cargo-codspeed has been updated from 3.0.5 to 4.2.0. Version 4.0.0 includes breaking changes. For more information read the changelog for 4.0.0.

  • commafeed has been updated to version 7.0.0, which includes changes impacting its security. Please see upstream's release notes for details.

  • corepack_latest has been removed, as Corepack is no longer distributed with Node.js.

  • spoof has been removed, as there are many issues upstream with it working on modern OS versions, and it appears to be unmaintained.

  • duckstation package has been removed, as it was requested by upstream and build sources were changed to be incompatible with NixOS.

  • nodePackages.coc-go and nodePackages.coc-tsserver, along with their vim plugins, have been removed from nixpkgs due to being unmaintained.

  • nodePackages.wavedrom-cli has been removed, as it was unmaintained within nixpkgs.

  • MATE packages have been moved to top level (e.g. if you previously added pkgs.mate.caja to environment.systemPackages, you will need to change it to pkgs.caja).

  • kratos has been updated from 1.3.1 to 25.4.0. Upstream switched to a new versioning scheme (year.major.minor). Notable breaking changes:

    • The migrate sql CLI command is now migrate sql up
    • OIDC registration validation errors are now placed in the default node group instead of oidc
    • Failed OIDC account linking returns HTTP 400 instead of 200
  • pdns has been updated to version v5.0.x, which introduces breaking changes. Check out the Upgrade Notes for details.

  • geph package's built-in GUI geph5-client-gui has been removed by the upstream. All users who wish to continue using the GUI should install the gephgui-wry, which is consistent with the official release version.

  • xfsprogs was updated to version 6.18.0, which enables parent pointers and exchange-range by default. Upstream recommends not to use these features with kernels older than 6.18. GRUB2 is likely unable to boot from filesystems with these features enabled.

  • lunarvim package has been removed, as it was abandoned upstream and relied on an old version of neovim to work properly.

  • requireFile now treats any message or url argument as a literal string, rather than subjecting it to Bash here-doc expansion. This allows including strings like $PWD in the message without needing to know about and handle the undocumented Bash expansion.

  • nodePackages.browserify has been removed, as it was unmaintained within nixpkgs.

  • command-not-found package will be enabled by default if the source of nixpkgs contains the file programs.sqlite. This is the case if a nixpkgs tarball from https://channels.nixos.org is used. This usage will also make the database of command-not-found stateless.

  • nodePackages.sass has been removed, as it was unmaintained within nixpkgs.

  • All @tailwindcss packages in the nodePackages set have been removed, as they are libraries that should instead be locked by JS projects that utilize them.

  • arti has been updated to major version 2, which removed the long-deprecated proxy.socks_port and proxy.dns_port and the legacy syntax for specifying directory authorities. For more information, see the changelog for 2.0.0.

  • kanata now requires karabiner-dk version 6.0+ or later. The package has been updated to use the new karabiner-dk package and the darwinDriver output stays at the version defined in the package.

  • Keycloak has been updated to 26.6.X, bringing a lot of new features like federated client authentication, JWT authorization grants, workflows and the ability to do zero-downtime patch releases. Read more about all the exciting new capabilities in keycloak 26.6 here and consult the migration guide to 26.6 to find out whether this is a breaking change for your keycloak instance.

  • elegant-sddm has been updated to be Qt6 compatible. Themes for SDDM are slightly different so read the wiki for more.

  • forgejo-lts has been updated to major version 15. For more information, see the release blog post and full release notes

  • pulsar has finally migrated from electron v12 to v30, backup ~/.pulsar before upgrading. See Pulsar on Electron 30: what it means for you.

  • mactracker has been updated to major version 8, which now requires macOS 11 Big Sur or later. The previous version supported Mac OS X 10.6.8 or later.

  • net-news-wire has been updated from 6.x to 7.x, which now requires macOS 15 (Sequoia) or newer. The previous version supported macOS 13 and newer.

  • bartender has been updated to major version 6. This removes support for MacOS Sonoma (and adds support for Tahoe). For more information, see the release notes or the Bartender 6 support page.

  • lima has been updated from 1.x to 2.x. This major update includes several breaking changes, such as /tmp/lima no longer being mounted by default.

  • Varnish Cache has been updated to major version 8, varnish now refers to varnish80. That release contains breaking changes, see Upgrading to Varnish-Cache 8.0. Note that the Varnish 6 LTS release remains available as varnish60. The Varnish Cache open-source project renamed itself to Vinyl Cache. Please migrate to vinyl-cache. See the vinyl-cache release notes entry for more information. Varnish 8 is not supported for the entire NixOS 26.05 release cycle.

  • Vinyl Cache has been introduced with the major version 9 as the Varnish Cache open source project renamed itself to Vinyl Cache. Please migrate to Vinyl Cache 9 when you still use Varnish Cache. A new module has also been introduced for this migration: services.vinyl-cache. This release contains breaking changes, see Upgrading to Vinyl Cache 9.0. The varnish-modules project is currently not packaged for Vinyl Cache, as it is incompatible.

  • eslint has been updated from version 9 to version 10. Please see https://eslint.org/blog/2026/02/eslint-v10.0.0-released/ for details about the breaking changes included in the update.

  • minio has been abandoned by upstream and security issues won't be fixed. minio_legacy_fs has also been removed. Both are scheduled for full removal in 26.11. Users should migrate to alternatives such as Garage, SeaweedFS, or Ceph. S3-compatible clients such as rclone can be used to move data.

  • mercure has been updated to 0.21.4 (or later). Version 0.21.0 and 0.21.2 introduce breaking changes to the package.

  • mozc and mozc-ut no longer contain the IBus front-end, which is now provided by ibus-engines.mozc and ibus-engines.mozc-ut.

  • nemorosa has been updated from 0.4.3 to 0.5.0. Version 0.5.0 introduced breaking changes to the package configuration.

  • n8n has been updated to version 2. You can find the breaking changes here: https://docs.n8n.io/2-0-breaking-changes/.

  • nomad has been updated to v1.11. Refer to the release note for more details. Once a new Nomad version has started and upgraded its data directory, it generally cannot be downgraded to the previous version.

  • The default NVIDIA drivers no longer support Maxwell (GTX 1xxx) or older GPUs. Pin the nvidia package to config.boot.kernelPackages.nvidiaPackages.legacy_580 for continued support.

  • gurk-rs has been updated from 0.6.4 to 0.8.0. Version 0.8.0 includes breaking changes. For more information read the release notes for 0.8.0.

  • iroh has been removed and split up into iroh-dns-server and iroh-relay.

  • The xorg package set has been deprecated, packages have moved to the top level.

  • python3Packages.buildPythonPackage and python3Packages.buildPythonApplication now throw errors in the presence of pytestFlagsArray. Please use pytestFlags and (enabled|disabled)(TestPaths|Tests|TestMarks) instead. If modifying the Nix expression is not feasible, users can remediate the error by overriding pytestFlagsArray with null or [ ].

  • python3Packages.pygame has been renamed to python3Packages.pygame-original, the attribute python3Packages.pygame will from python 3.14 default to the more actively maintained python3Packages.pygame-ce.

  • fastly has been updated to major version 14. For more information, you can check the release notes.

  • peertube has been updated from 7.3.0 to 8.0.2, introducing several breaking changes. Some notable new features include channel collaboration and video player redesign with a new theme. For details on how to upgrade, see the IMPORTANT NOTES section of the v8.0.0 CHANGELOG entry.

  • python3Packages.gradio has been updated to version 6. See upstream's migration guide at https://www.gradio.app/main/guides/gradio-6-migration-guide.

  • python3Packages.pikepdf no longer builds with mupdf support by default, which may be nice in Jupyter and iPython. Build with withMupdf = true if this is required.

  • olive-editor has been dropped as upstream development ceased and no longer builds.

  • python3Packages.django-mdeditor has been removed, as it was unmaintained upstream and the latest release was vulnerable to a critical security vulnerability.

  • vicinae has been updated to v0.20. This includes, among several other breaking changes, a complete overhaul of the configuration system. For update instructions, see the upstream configuration documentation.

  • percona-server_8_4 has been removed. Please update to percona-server_8_0, mysql84 or mariadb.

  • The man-pages package's outputs have been split. The manual pages are installed into the man output, which is installed by default. Binaries (including diffman-git, mansect, pdfman, and sortman) are installed into the out output, which is not installed by default.

  • All Log4Shell vulnerability scanners were removed, as they were all unmaintained upstream and are no longer relevant given that the vulnerability has been fixed upstream for several years.

  • Plugins for the JetBrains IDEs have been removed from Nixpkgs.

  • spacetimedb has been updated from 1.12.0 to 2.0.3. Breaking changes and migration notes from 1.0 to 2.0 can be found here.

  • jetbrains.plugins.addPlugins no longer supports plugin names or ID strings. You can still use addPlugins with plugin derivations, such as plugins packaged outside of Nixpkgs.

  • NetBox was updated to >= 4.5.5. Have a look at the breaking changes of the 4.5 release, make the required changes to your database, if needed, then upgrade by setting services.netbox.package = pkgs.netbox_4_5; in your configuration.

  • pocket-id has been updated to version 2 that contains breaking changes.

  • asio (standalone version of boost::asio) has been updated from 1.24.0 to 1.36.0. Some breaking changes were introduced between these two versions, and the one affected most was the removal of asio::io_service in favor of asio::io_context in 1.33.0. asio_1_32_0 is retained for packages that have not completed migration. asio_1_10 has been removed as no packages depend on it anymore. asio also no longer propagates boost as it is used independent from boost in most cases.

  • docker-color-output has been updated from major version 2 to 3. One breaking change is, that they switched to YAML-based configuration files.

  • dasel has been updated from v2.8.1 to v3. There were significant breaking changes:

    • The put and delete commands have been removed. Use the new query syntax with expressions to modify data in-place.
    • The --version flag is now a subcommand: dasel version
    • CLI framework migrated from Cobra to Kong, changing flag parsing behavior
    • Selector syntax has been revamped, see dasel v3 documentation for migration guide.

    Example migration:

    • Old: echo '{"my":{"favourites":{"colour":"blue"}}}' | dasel put -t json -r json -t string -v "red" "my.favourites.colour"
    • New: echo '{"my":{"favourites":{"colour":"blue"}}}' | dasel query -i json -o json --root 'my.favourites.colour = "red"'
  • stalwart-mail has been renamed to stalwart

  • Ethercalc and its associated module have been removed, as the package is unmaintained and cannot be installed from source with npm now.

  • coreth has been removed, as upstream has moved it into avalanchego.

  • nodePackages.prebuild-install was removed because it appeared to be unmaintained upstream. See upstream's recommendations for alternatives.

  • davis made changes to the IMAP_AUTH_URL option. The flags are now standalone parameters that you need to fill:

    • Before:
      IMAP_AUTH_URL={imap.gmail.com:993/imap/ssl/novalidate-cert}
      
    • After:
      IMAP_AUTH_URL=imap.mydomain.com:993
      IMAP_ENCRYPTION_METHOD=ssl
      IMAP_CERTIFICATE_VALIDATION=false
      
  • python3Packages.pillow-avif-plugin has been removed as the functionality is included in python3Packages.pillow directly since version 11.3.

  • wasistlos (previously known as whatsapp-for-linux) has been removed because it was unmaintained and archived upstream. Multiple alternatives exist: karere, whatsie and zapzap among others.

  • light has been removed because it was unmaintained. brightnessctl and acpilight provide similar functionality.

  • opensmtpd-filter-dkimsign is now installed into libexec/smtpd instead of libexec/opensmtpd so that now it is properly linked into the environment built by services.opensmtpd.procPackages. If you hardcoded path to filter-dkimsign please consider using this option.

  • shisho has been removed because it's archived. semgrep, opengrep, and ast-grep provide similar functionality.

  • All Xfce packages have been moved to top level (e.g. if you previously added pkgs.xfce.xfce4-whiskermenu-plugin to environment.systemPackages, you will need to change it to pkgs.xfce4-whiskermenu-plugin). The xfce scope will be removed in NixOS 26.11.

  • The Dovecot IMAP server has been updated to version 2.4, with the dovecot attribute now referring to this backwards-incompatible version. The attribute dovecot_2_3 refers to the previous version. The Pigeonhole plugin has been similarly updated to 2.4, with the version compatible with Dovecot 2.3 being at dovecot_pigeonhole_0_5. See https://doc.dovecot.org/latest/installation/upgrade/2.3-to-2.4.html for more information on how to upgrade.

  • spacefm was removed because it appeared to be unmaintained upstream.

  • neofetch has been removed because it was unmaintained upstream. Consider using the updated fork neowofetch provided by the hyfetch package or the alternative fastfetch instead.

  • vimPlugins.nvim-treesitter has been updated to main branch, which is a full and incompatible rewrite. If you can't or don't want to update, you should use vimPlugins.nvim-treesitter-legacy.

  • Package jellyseerr has been renamed to seerr following the upstream rename.

  • The pie hardening flag has been removed and will now error, after being deprecated in 25.11. Compilers are expected to enable PIE by default, as has been common practice since 2016 outside of Nixpkgs. If a package needs pie disabled pass -no-pie in CFLAGS. It is unlikely this will be necessary in many cases; due to the prevalence of default PIE toolchains, most packages incompatible with PIE already pass -no-pie.

  • pqos-wrapper was removed as it has been unmaintained since 2022 and not widely used.

Other Notable Changes

  • nvidia-x11 proprietary kernel modules are now provided separately as nvidia_x11.mod, while nvidia_x11.open remains the open-source kernel module package.

  • linuxPackages.nvidiaPackages now follows NVIDIA's official release branches by exposing production, new_feature, and beta. The convenience aliases latest (newer of production and new_feature) and bleeding_edge (newer of latest and beta) are provided; note that beta now refers strictly to the beta branch.

  • stestrCheckHook was added: This test hook runs stestr run. You can disable tests with disabledTests and disabledTestsRegex.

  • balatro now supports the Google Play and Xbox PC versions of the game. Pass the apk or Assets.zip as balatro.override { src = "…" }.

  • uptime-kuma has been updated to v2, which requires an automated migration that can take a few hours. A backup is highly recommended. If your SQLite database is corrupted, the migration might fail and require manual intervention. See the migration guide for more information.

  • incus-lts has been updated from v6 to v7

  • The libcxxhardeningextensive hardening flag has been disabled by default. Enabling it by default in 25.11 was unintentional and may have had a negative effect on performance in some cases. libcxxhardeningfast remains enabled by default.

  • Wine has been updated to the 11.0 branch. Please check the upstream announcement for more details.

  • Cinnamon has been updated to 6.6, please check the upstream announcement for more details.

  • rspamd has been updated to 4.0. Please check the upstream migration documentation, especially if you run a sharded Redis deployment.

  • hyphen now supports over 40 language variants through hyphenDicts and now allows to enable all supported languages through hyphenDicts.all.

  • budgie has been updated to 10.10, please check the upstream announcement for more details.

  • The packages ibtool, actool and re-plistbuddy have been added, providing reimplementations of the corresponding proprietary Apple tools. They are more compatible with the originals than the previously existing xcbuild package, and should enable more darwin software to be built from source.

  • GNU Taler has been updated to version 1.3. This release focuses on getting everything ready for a deployment of GNU Taler by Magnet bank. For more details, see the upstream release notes.

  • collabora-desktop The desktop version of Collabora Office is now available, package version 25.05.9.2-2.

  • fetchPnpmDeps and pnpmConfigHook were added as top-level attributes, replacing the now deprecated pnpm.fetchDeps and pnpm.configHook attributes.

  • fetchPnpmDeps' fetcherVersion = 1 and fetcherVersion = 2 are deprecated and scheduled for removal in the 26.11 release. A deprecation warning has been added. Packages still on fetcherVersion = 1 or fetcherVersion = 2 should migrate to fetcherVersion = 3 and regenerate their hashes. See the pnpm fetcherVersion section of the manual for details.

  • buildNpmPackage now supports npmDepsFetcherVersion (and fetchNpmDeps now supports fetcherVersion). Set to 2 to enable packument caching, which fixes builds for projects using npm workspaces.

  • Added dell-bios-fan-control package and service.

  • Added lovr package, a Lua-based game engine for VR and XR applications.

  • Updated wsjtx from 2.7.0 to 3.0.0 for amateur radio hobbyists who use FT8 and other related digital modes. See the release notes for the changelog.

  • openrgb was updated to 1.0rc2, which now uses Plugin API version 4. Some existing OpenRGB plugins may be incompatible or require updates.

  • wrapNeovimUnstable now sets provider-related configuration in its generated config rather than as wrapper arguments. It should not affect configuration unless you set wrapRc to false or are using the legacyWrapper.

  • Neovim Lua dependencies are now set in the generated init.lua instead of modifying LUA_PATH in the wrapper. Commands run pre-vimrc via nvim --cmd "require'LUA_MODULE'" may not find their lua dependencies anymore. Use nvim -c "lua require'LUA_MODULE'" instead to run these commands after loading init.lua. If you use wrapNeovim with wrapRc set to false, you may lose the lua dependencies if you are not loading the generated init.lua.

  • We now use the upstream wrapper script for Gradle, supporting both the JAVA_HOME and GRADLE_OPTS environment variables.

  • Updated gonic to 0.21.0. A full ("slow") scan is recommended after upgrading to v0.21.0 to pick up the newly scanned fields (contributors, ISRCs, record labels, per-track years, ARTIST_CREDIT).

  • Added haskell.packages.microhs, a set of Haskell packages built with MicroHs.

  • gnuradio: Overriding the .pkgs package set is now possible with a packageOverrides function, like with python.pkgs and other language-specific package sets. Example:

gnuradioMinimal.override {
  packageOverrides = grSelf: grSuper: {
    osmosdr = grSuper.osmosdr.override {
      airspy = null;
      hackrf = null;
      libbladeRF = null;
      soapysdr-with-plugins = null;
    };
  };
}

Nixpkgs Library

Breaking changes

  • The nodejs_latest alias now points to nodejs_26 instead of nodejs_24.

  • nodejs-slim no longer exposes a corepack executable, it has been moved to an ad-hoc output; to restore the previous behavior, nodejs-slim.corepack must be explicitly included.

  • nodejs is now a simple wrapper for nodejs-slim+nodejs-slim.npm+nodejs-slim.corepack, meaning it is no longer possible to reference or override its attributes or outputs (e.g. nodejs.libv8 must be replaced with nodejs-slim.libv8, nodejs.nativeBuildInputs with nodejs-slim.nativeBuildInputs, etc.).

  • navidrome has removed the built-in Spotify integration. See v0.61.0 for details on optional replacements.

  • mold is now wrapped by default.

  • The neovim package and module now disable by default the python3 and ruby providers, unused by most users and reducing closure size from 365MiB to 240MiB. Host provider executables are not exposed anymore along with the neovim wrapper. You can still refer to those using the neovim provider variables (e.g., python3_host_prog).

  • canokey-qemu support for qemu was restored (although disabled by default), after being marked as broken since nixpkgs 25.11. Please note that the format of canokey files has changed, and that some data created with older canokey-qemu release cannot be read by the current version. See the documentation for details.

Deprecations

  • mpv-unwrapped.scripts and mpv-unwrapped.wrapper have been removed. Please use mpvScripts and mpv.override accordingly.

  • fetchFromSavannah is now deprecated and is expected to be fully removed in a future release. From now on, use fetchgit or a Savannah releases mirror when applicable.

  • Using nested lists in build/runtime inputs in mkDerivation is now deprecated.

Additions and Improvements

  • The builder php.buildComposerProject2 for PHP applications has been improved for better reliability and stability.