mirror of
https://github.com/nix-community/home-manager
synced 2024-12-28 20:59:47 +01:00
f26946858e
Remove `stateVersion`, `username`, and `homeDirectory` as they can be set in the configuration directly. Together with the previous commit, this makes setting `stateVersion` explicitly mandatory. Also replace `configuration` by `modules`, which expects a list of Home Manager modules. Also remove `system` which was made useless by #3028.
84 lines
2 KiB
Text
84 lines
2 KiB
Text
[[sec-release-22.11]]
|
|
== Release 22.11
|
|
|
|
This is the current unstable branch and the information in this section is therefore not final.
|
|
|
|
[[sec-release-22.11-highlights]]
|
|
=== Highlights
|
|
|
|
This release has the following notable changes:
|
|
|
|
* The <<opt-home.stateVersion>> option no longer has a default value.
|
|
It used to default to ``18.09'', which was the Home Manager version
|
|
that introduced the option. If your configuration does not explicitly
|
|
set this option then you need to add
|
|
+
|
|
[source,nix]
|
|
home.stateVersion = "18.09";
|
|
+
|
|
to your configuration.
|
|
|
|
* The Flake function `homeManagerConfiguration` has been simplified.
|
|
Specifically, the arguments
|
|
+
|
|
--
|
|
- `configuration`,
|
|
- `username`,
|
|
- `homeDirectory`,
|
|
- `stateVersion`,
|
|
- `extraModules`, and
|
|
- `system`
|
|
--
|
|
+
|
|
have been removed. Instead use the new `modules` argument, which
|
|
accepts a list of NixOS modules.
|
|
+
|
|
Further, the `pkgs` argument is now mandatory and should be set to
|
|
`nixpkgs.legacyPackages.${system}` where `nixpkgs` is the Nixpkgs
|
|
input of your choice.
|
|
+
|
|
For example, if your Flake currently contains
|
|
+
|
|
[source,nix]
|
|
----
|
|
homeManagerConfiguration {
|
|
configuration = import ./home.nix;
|
|
system = "x86_64-linux";
|
|
username = "jdoe";
|
|
homeDirectory = "/home/jdoe";
|
|
stateVersion = "22.05";
|
|
extraModules = [ ./some-extra-module.nix ];
|
|
}
|
|
----
|
|
+
|
|
then you can change it to
|
|
+
|
|
[source,nix]
|
|
----
|
|
homeManagerConfiguration {
|
|
pkgs = nixpkgs.legacyPackages.${system};
|
|
modules = [
|
|
./home.nix
|
|
./some-extra-module.nix
|
|
{
|
|
home = {
|
|
username = "jdoe";
|
|
homeDirectory = "/home/jdoe";
|
|
stateVersion = "22.05";
|
|
};
|
|
}
|
|
];
|
|
}
|
|
----
|
|
+
|
|
Of course, you can move the assignment of <<opt-home.username>>,
|
|
<<opt-home.homeDirectory>>, and <<opt-home.stateVersion>> to some
|
|
other file or simply place them in your `home.nix`.
|
|
|
|
[[sec-release-22.11-state-version-changes]]
|
|
=== 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 "22.11" or later.
|
|
|
|
* No changes.
|