aboutsummaryrefslogtreecommitdiff
path: root/home-manager/doc
diff options
context:
space:
mode:
authorKatharina Fey <kookie@spacekookie.de>2020-02-03 10:05:30 +0100
committerKatharina Fey <kookie@spacekookie.de>2020-02-03 10:05:30 +0100
commitc488527c95c874d3b8743c915173ad7bfb05d5af (patch)
tree2b874dc5606a9dff44096a5e8557f00dc52ac2b6 /home-manager/doc
parent899a451e08f7d6d2c8214d119c2a0316849a0ed4 (diff)
parent6cc4fd6ede4909226cb81d3475834251ed1b7210 (diff)
Merge commit '6cc4fd6ede4909226cb81d3475834251ed1b7210'
Diffstat (limited to 'home-manager/doc')
-rw-r--r--home-manager/doc/default.nix41
-rw-r--r--home-manager/doc/installation.xml12
-rw-r--r--home-manager/doc/man-home-manager.xml16
-rw-r--r--home-manager/doc/release-notes/rl-2003.adoc66
4 files changed, 104 insertions, 31 deletions
diff --git a/home-manager/doc/default.nix b/home-manager/doc/default.nix
index acfa1f1e49c..638027b0a78 100644
--- a/home-manager/doc/default.nix
+++ b/home-manager/doc/default.nix
@@ -1,36 +1,35 @@
-{ pkgs }:
+{
+# Note, this should be "the standard library" + HM extensions.
+lib, pkgs }:
let
- lib = pkgs.lib;
-
nmdSrc = pkgs.fetchFromGitLab {
name = "nmd";
owner = "rycee";
repo = "nmd";
- rev = "9751ca5ef6eb2ef27470010208d4c0a20e89443d";
- sha256 = "0rbx10n8kk0bvp1nl5c8q79lz1w0p1b8103asbvwps3gmqd070hi";
+ rev = "b437898c2b137c39d9c5f9a1cf62ec630f14d9fc";
+ sha256 = "18j1nh53cfpjpdiwn99x9kqpvr0s7hwngyc0a93xf4sg88ww93lq";
};
- nmd = import nmdSrc { inherit pkgs; };
+ nmd = import nmdSrc { inherit lib pkgs; };
# Make sure the used package is scrubbed to avoid actually
# instantiating derivations.
scrubbedPkgsModule = {
- imports = [
- {
- _module.args = {
- pkgs = lib.mkForce (nmd.scrubDerivations "pkgs" pkgs);
- pkgs_i686 = lib.mkForce { };
- };
- }
- ];
+ imports = [{
+ _module.args = {
+ pkgs = lib.mkForce (nmd.scrubDerivations "pkgs" pkgs);
+ pkgs_i686 = lib.mkForce { };
+ };
+ }];
};
hmModulesDocs = nmd.buildModulesDocs {
- modules =
- import ../modules/modules.nix { inherit lib pkgs; }
- ++ [ scrubbedPkgsModule ];
+ modules = import ../modules/modules.nix {
+ inherit lib pkgs;
+ check = false;
+ } ++ [ scrubbedPkgsModule ];
moduleRootPaths = [ ./.. ];
mkModuleUrl = path:
"https://github.com/rycee/home-manager/blob/master/${path}#blob-path";
@@ -53,9 +52,7 @@ let
'';
};
-in
-
-{
+in {
inherit nmdSrc;
options = {
@@ -66,7 +63,5 @@ in
manPages = docs.manPages;
- manual = {
- inherit (docs) html htmlOpenTool;
- };
+ manual = { inherit (docs) html htmlOpenTool; };
}
diff --git a/home-manager/doc/installation.xml b/home-manager/doc/installation.xml
index 0e4c904e570..52119886800 100644
--- a/home-manager/doc/installation.xml
+++ b/home-manager/doc/installation.xml
@@ -79,11 +79,11 @@
if you are following Nixpkgs master or an unstable channel and
</para>
<screen>
-<prompt>$</prompt> <userinput>nix-channel --add https://github.com/rycee/home-manager/archive/release-19.03.tar.gz home-manager</userinput>
+<prompt>$</prompt> <userinput>nix-channel --add https://github.com/rycee/home-manager/archive/release-19.09.tar.gz home-manager</userinput>
<prompt>$</prompt> <userinput>nix-channel --update</userinput>
</screen>
<para>
- if you follow a Nixpkgs version 19.03 channel.
+ if you follow a Nixpkgs version 19.09 channel.
</para>
<para>
On NixOS you may need to log out and back in for the channel to become
@@ -169,12 +169,12 @@ $HOME/.nix-profile/etc/profile.d/hm-session-vars.sh
</para>
<screen>
-<prompt>#</prompt> <userinput>nix-channel --add https://github.com/rycee/home-manager/archive/release-19.03.tar.gz home-manager</userinput>
+<prompt>#</prompt> <userinput>nix-channel --add https://github.com/rycee/home-manager/archive/release-19.09.tar.gz home-manager</userinput>
<prompt>#</prompt> <userinput>nix-channel --update</userinput>
</screen>
<para>
- if you follow a Nixpkgs version 19.03 channel.
+ if you follow a Nixpkgs version 19.09 channel.
</para>
<para>
@@ -251,12 +251,12 @@ home-manager.useUserPackages = true;
</para>
<screen>
-<prompt>#</prompt> <userinput>nix-channel --add https://github.com/rycee/home-manager/archive/release-19.03.tar.gz home-manager</userinput>
+<prompt>#</prompt> <userinput>nix-channel --add https://github.com/rycee/home-manager/archive/release-19.09.tar.gz home-manager</userinput>
<prompt>#</prompt> <userinput>nix-channel --update</userinput>
</screen>
<para>
- if you follow a Nixpkgs version 19.03 channel.
+ if you follow a Nixpkgs version 19.09 channel.
</para>
<para>
diff --git a/home-manager/doc/man-home-manager.xml b/home-manager/doc/man-home-manager.xml
index a0f55d1106a..117bc494687 100644
--- a/home-manager/doc/man-home-manager.xml
+++ b/home-manager/doc/man-home-manager.xml
@@ -127,6 +127,10 @@
</arg>
<arg>
+ --(no-)substitute
+ </arg>
+
+ <arg>
<group choice="req">
<arg choice="plain">
-v
@@ -448,6 +452,18 @@
</varlistentry>
<varlistentry>
<term>
+ <option>--(no-)substitute</option>
+ </term>
+ <listitem>
+ <para>
+ Passed on to <citerefentry>
+ <refentrytitle>nix-build</refentrytitle>
+ <manvolnum>1</manvolnum> </citerefentry>.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term>
<option>-v</option>
</term>
<term>
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.