This commit deprecates profile management from the activation script. The profile management is instead the responsibility of the driving software, for example, the `home-manager` tool in the case of standalone installs. The legacy behavior is still available for backwards compatibility but may be removed in the future. The new behavior resolves (or moves us closer to resolving) a number of long standing open issues: - `home-manager switch --rollback`, which performs a rollback to the previous Home Manager generation before activating. While it was previously possible to accomplish this by activating an old generation, it did always create a new profile generation. This option has been implemented as part of this commit. - `home-manager switch --test`, which activates the configuration but does not create a new profile generation. This option has _not_ been implemented here since it relies on the current configuration being activated on login, which we do not currently do. - When using the "Home Manager as a NixOS module" installation method we previously created an odd `home-manager` per-user "shadow profile" for the user. This is no longer necessary. This has been implemented as part of this commit. Fixes #3450
1.7 KiB
Release 24.11
This is the current unstable branch and the information in this section is therefore not final.
Highlights
This release has the following notable changes:
-
The
home-manager
Nix profile update that the Home Manager activation script has previously performed is now deprecated. The profile update is instead the responsibility of the software calling the activation script, such as thehome-manager
tool..The legacy behavior is the default for backwards compatibility but may be emit a deprecation warning in the future, for eventual removal. If you have developed tooling that directly call the generated activation script, then you are encouraged to adapt to the new behavior. See Activation 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 ofnixos-rebuild switch --rollback
. See the Rollbacks section for more. -
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.
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
"24.11" or later.
- No changes.