aboutsummaryrefslogtreecommitdiff
path: root/home-manager/doc/release-notes/rl-2003.adoc
diff options
context:
space:
mode:
Diffstat (limited to 'home-manager/doc/release-notes/rl-2003.adoc')
-rw-r--r--home-manager/doc/release-notes/rl-2003.adoc66
1 files changed, 64 insertions, 2 deletions
diff --git a/home-manager/doc/release-notes/rl-2003.adoc b/home-manager/doc/release-notes/rl-2003.adoc
index ff6d9325bd7..fc1dcd7cfe2 100644
--- a/home-manager/doc/release-notes/rl-2003.adoc
+++ b/home-manager/doc/release-notes/rl-2003.adoc
@@ -9,7 +9,65 @@ section is therefore not final.
This release has the following notable changes:
-* Nothing has happened.
+* Assigning a list to the <<opt-home.file>>, <<opt-xdg.configFile>>,
+and <<opt-xdg.dataFile>> options is now deprecated and will produce a
+warning message if used. Specifically, if your configuration currently
+contains something like
++
+[source,nix]
+----
+home.file = [
+ {
+ target = ".config/foo.txt";
+ text = "bar";
+ }
+]
+----
++
+then it should be updated to instead use the equivalent attribute set form
++
+[source,nix]
+----
+home.file = {
+ ".config/foo.txt".text = "bar";
+}
+----
++
+Support for the list form will be removed in Home Manager version
+20.09.
+
+* The `lib` function attribute given to modules is now enriched with
+an attribute `hm` containing extra library functions specific for Home
+Manager. More specifically, `lib.hm` is now the same as `config.lib`
+and should be the preferred choice since it is more robust.
++
+Therefore, if your configuration makes use of, for example,
+`config.lib.dag` to create activation script blocks, it is recommended
+to change to `lib.hm.dag`.
++
+Note, in the unlikely case that you are
++
+** using Home Manager's NixOS or nix-darwin module,
+** have made your own Home Manager module containing an top-level
+ option named `config` or `options`, and
+** assign to this option in your system configuration inside a plain
+ attribute set, i.e., without a function argument,
+
++
+then you must update your configuration to perform the option
+assignment inside a `config` attribute. For example, instead of
++
+[source,nix]
+----
+home-manager.users.jane = { config = "foo"; };
+----
++
+use
++
+[source,nix]
+----
+home-manager.users.jane = { config.config = "foo"; };
+----
[[sec-release-20.03-state-version-changes]]
=== State Version Changes
@@ -18,4 +76,8 @@ The state version in this release includes the changes below. These
changes are only active if the `home.stateVersion` option is set to
"20.03" or later.
-* Nothing has happened.
+* The <<opt-programs.zsh.history.path>> option is no longer prepended
+ by `$HOME`, which allows specifying absolute paths, for example,
+ using the xdg module. Also, the default value is fixed to
+ `$HOME/.zsh_history` and `dotDir` path is not prepended to it
+ anymore.