1
0
Fork 0
mirror of https://github.com/nix-community/home-manager.git synced 2025-12-02 15:11:03 +01:00
home-manager/docs/release-notes/rl-2511.md
Austin Horstman f47d2e3821 home-manager: set 25.11 as stable
Signed-off-by: Austin Horstman <khaneliman12@gmail.com>
2025-11-26 10:43:01 -06:00

3.4 KiB

Release 25.11

The 25.11 release branch became stable in November, 2025.

Highlights

This release has the following notable changes:

  • Updating the home-manager Nix profile inside the activation script now deprecated. The profile update is instead the responsibility of the software calling the activation script, such as the home-manager tool.

    The legacy behavior remains the default for backwards compatibility but may emit a deprecation warning in the future and in the longer term removed all together. If you have developed tooling that directly call the generated activation script, then you are encouraged to adapt to the new behavior. See the Activation section in the manual for details on how to call the activation script.

  • The home-manager switch command now offers a --rollback option. When given, the switch performs a rollback to the Home Manager generation prior to the current before activating. While it was previously possible to accomplish this by manually activating an old generation, it always created a new profile generation. The new behavior mirrors the behavior of nixos-rebuild switch --rollback. See the Rollbacks section for more.

  • The home-manager switch command now offers a --specialisation NAME option. When given, the switch activates the named specialisation. While it was previously possible to accomplish this by manually running the specialisation activate script it was quite cumbersome and always created a new profile generation. The new behavior mirrors the behavior of nixos-rebuild switch --specialisation.

  • When using Home Manager as a NixOS or nix-darwin module we previously created an unnecessary home-manager per-user "shadow profile" for the user. This no longer happens. You can restore the old behavior by adding

    home-manager.enableLegacyProfileManagement = true;
    

    to your configuration. This option is likely to be deprecated in the future.

  • By default, Home Manager imports all modules, which leads to increased evaluation time. Some users may wish to only import the modules they actually use. To accomodate this, a new option home-manager.minimal has been added. When this option is enabled, Home Manager will only import the basic set of modules it requires to function. Other modules will have to be enabled manually, like this:

      imports = [
        "${modulesPath}/programs/fzf.nix"
      ];
    

    This entrypoint is only recommended for advanced users, who are comfortable maintaining a personal list of modules to import.

  • The use of services.syncthing.tray as a Boolean option was removed after being deprecated in 2021. You are now expected to use to enable the Syncthing tray service.

State Version Changes

The state version in this release includes the changes below. These changes are only active if the home.stateVersion option is set to "25.11" or later.

  • The programs.password-store.settings option does not set { PASSWORD_STORE_DIR = $XDG_DATA_HOME/password-store; } anymore by its default value. This will revert to the default behaviour of the program, namely $HOME/.password-store to be used as the store path.