1
0
Fork 0
mirror of https://github.com/nix-community/home-manager synced 2024-11-27 05:29:46 +01:00
This commit is contained in:
rycee 2024-05-25 20:25:10 +00:00
parent 86bb01f4d9
commit ac0a38c0f3
2 changed files with 19 additions and 13 deletions

View file

@ -73,7 +73,7 @@ Nix option. On NixOS you can control this option using the
system option.</p></li><li class="listitem"><p>Add the appropriate Home Manager channel. If you are following system option.</p></li><li class="listitem"><p>Add the appropriate Home Manager channel. If you are following
Nixpkgs master or an unstable channel you can run</p><pre><code class="programlisting shell">$ nix-channel --add https://github.com/nix-community/home-manager/archive/master.tar.gz home-manager Nixpkgs master or an unstable channel you can run</p><pre><code class="programlisting shell">$ nix-channel --add https://github.com/nix-community/home-manager/archive/master.tar.gz home-manager
$ nix-channel --update $ nix-channel --update
</code></pre><p>and if you follow a Nixpkgs version 23.11 channel you can run</p><pre><code class="programlisting shell">$ nix-channel --add https://github.com/nix-community/home-manager/archive/release-23.11.tar.gz home-manager </code></pre><p>and if you follow a Nixpkgs version 24.05 channel you can run</p><pre><code class="programlisting shell">$ nix-channel --add https://github.com/nix-community/home-manager/archive/release-24.05.tar.gz home-manager
$ nix-channel --update $ nix-channel --update
</code></pre></li><li class="listitem"><p>Run the Home Manager installation command and create the first Home </code></pre></li><li class="listitem"><p>Run the Home Manager installation command and create the first Home
Manager generation:</p><pre><code class="programlisting shell">$ nix-shell &#x27;&lt;home-manager&gt;&#x27; -A install Manager generation:</p><pre><code class="programlisting shell">$ nix-shell &#x27;&lt;home-manager&gt;&#x27; -A install
@ -102,7 +102,7 @@ your system configuration. This is most conveniently done by adding a
Home Manager channel to the root user. For example, if you are following Home Manager channel to the root user. For example, if you are following
Nixpkgs master or an unstable channel, you can run</p><pre><code class="programlisting shell">$ sudo nix-channel --add https://github.com/nix-community/home-manager/archive/master.tar.gz home-manager Nixpkgs master or an unstable channel, you can run</p><pre><code class="programlisting shell">$ sudo nix-channel --add https://github.com/nix-community/home-manager/archive/master.tar.gz home-manager
$ sudo nix-channel --update $ sudo nix-channel --update
</code></pre><p>and if you follow a Nixpkgs version 23.11 channel, you can run</p><pre><code class="programlisting shell">$ sudo nix-channel --add https://github.com/nix-community/home-manager/archive/release-23.11.tar.gz home-manager </code></pre><p>and if you follow a Nixpkgs version 24.05 channel, you can run</p><pre><code class="programlisting shell">$ sudo nix-channel --add https://github.com/nix-community/home-manager/archive/release-24.05.tar.gz home-manager
$ sudo nix-channel --update $ sudo nix-channel --update
</code></pre><p>It is then possible to add</p><pre><code class="programlisting nix">imports = [ &lt;home-manager/nixos&gt; ]; </code></pre><p>It is then possible to add</p><pre><code class="programlisting nix">imports = [ &lt;home-manager/nixos&gt; ];
</code></pre><p>to your system <code class="literal">configuration.nix</code> file, which will introduce a new </code></pre><p>to your system <code class="literal">configuration.nix</code> file, which will introduce a new
@ -114,7 +114,7 @@ home-manager.users.eve = { pkgs, ... }: {
# The state version is required and should stay at the version you # The state version is required and should stay at the version you
# originally installed. # originally installed.
home.stateVersion = &quot;23.11&quot;; home.stateVersion = &quot;24.05&quot;;
}; };
</code></pre><p>and after a <code class="literal">sudo nixos-rebuild switch</code> the user eves environment </code></pre><p>and after a <code class="literal">sudo nixos-rebuild switch</code> the user eves environment
should include a basic Bash configuration and the packages atool and should include a basic Bash configuration and the packages atool and
@ -153,7 +153,7 @@ your system configuration. This is most conveniently done by adding a
Home Manager channel. For example, if you are following Nixpkgs master Home Manager channel. For example, if you are following Nixpkgs master
or an unstable channel, you can run</p><pre><code class="programlisting shell">$ nix-channel --add https://github.com/nix-community/home-manager/archive/master.tar.gz home-manager or an unstable channel, you can run</p><pre><code class="programlisting shell">$ nix-channel --add https://github.com/nix-community/home-manager/archive/master.tar.gz home-manager
$ nix-channel --update $ nix-channel --update
</code></pre><p>and if you follow a Nixpkgs version 23.11 channel, you can run</p><pre><code class="programlisting shell">$ nix-channel --add https://github.com/nix-community/home-manager/archive/release-23.11.tar.gz home-manager </code></pre><p>and if you follow a Nixpkgs version 24.05 channel, you can run</p><pre><code class="programlisting shell">$ nix-channel --add https://github.com/nix-community/home-manager/archive/release-24.05.tar.gz home-manager
$ nix-channel --update $ nix-channel --update
</code></pre><p>It is then possible to add</p><pre><code class="programlisting nix">imports = [ &lt;home-manager/nix-darwin&gt; ]; </code></pre><p>It is then possible to add</p><pre><code class="programlisting nix">imports = [ &lt;home-manager/nix-darwin&gt; ];
</code></pre><p>to your nix-darwin <code class="literal">configuration.nix</code> file, which will introduce a new </code></pre><p>to your nix-darwin <code class="literal">configuration.nix</code> file, which will introduce a new
@ -168,7 +168,7 @@ home-manager.users.eve = { pkgs, ... }: {
# The state version is required and should stay at the version you # The state version is required and should stay at the version you
# originally installed. # originally installed.
home.stateVersion = &quot;23.11&quot;; home.stateVersion = &quot;24.05&quot;;
}; };
</code></pre><p>and after a <code class="literal">darwin-rebuild switch</code> the user eves environment should </code></pre><p>and after a <code class="literal">darwin-rebuild switch</code> the user eves environment should
include a basic Bash configuration and the packages atool and httpie.</p><p>If you do not plan on having Home Manager manage your shell include a basic Bash configuration and the packages atool and httpie.</p><p>If you do not plan on having Home Manager manage your shell
@ -240,7 +240,7 @@ command performs a combined build and activation.</p><div class="toc"> <p><stron
# You can update Home Manager without changing this value. See # You can update Home Manager without changing this value. See
# the Home Manager release notes for a list of state version # the Home Manager release notes for a list of state version
# changes in each release. # changes in each release.
home.stateVersion = &quot;23.11&quot;; home.stateVersion = &quot;24.05&quot;;
# Let Home Manager install and manage itself. # Let Home Manager install and manage itself.
programs.home-manager.enable = true; programs.home-manager.enable = true;
@ -272,7 +272,7 @@ follows:</p><pre><code class="programlisting nix">{ config, pkgs, ... }:
# You can update Home Manager without changing this value. See # You can update Home Manager without changing this value. See
# the Home Manager release notes for a list of state version # the Home Manager release notes for a list of state version
# changes in each release. # changes in each release.
home.stateVersion = &quot;23.11&quot;; home.stateVersion = &quot;24.05&quot;;
# Let Home Manager install and manage itself. # Let Home Manager install and manage itself.
programs.home-manager.enable = true; programs.home-manager.enable = true;
@ -402,14 +402,14 @@ introduction about writing a Home Manager configuration.</p></li></ul></div>
user, you can run the Home Manager <code class="literal">init</code> command directly from its user, you can run the Home Manager <code class="literal">init</code> command directly from its
flake.</p><p>For example, if you are using the unstable version of Nixpkgs or NixOS, flake.</p><p>For example, if you are using the unstable version of Nixpkgs or NixOS,
then to generate and activate a basic configuration run the command</p><pre><code class="programlisting shell">$ nix run home-manager/master -- init --switch then to generate and activate a basic configuration run the command</p><pre><code class="programlisting shell">$ nix run home-manager/master -- init --switch
</code></pre><p>For Nixpkgs or NixOS version 23.11 run</p><pre><code class="programlisting shell">$ nix run home-manager/release-23.11 -- init --switch </code></pre><p>For Nixpkgs or NixOS version 24.05 run</p><pre><code class="programlisting shell">$ nix run home-manager/release-24.05 -- init --switch
</code></pre><p>This will generate a <code class="literal">flake.nix</code> and a <code class="literal">home.nix</code> file in </code></pre><p>This will generate a <code class="literal">flake.nix</code> and a <code class="literal">home.nix</code> file in
<code class="literal">~/.config/home-manager</code>, creating the directory if it does not exist.</p><p>If you omit the <code class="literal">--switch</code> option then the activation will not happen. <code class="literal">~/.config/home-manager</code>, creating the directory if it does not exist.</p><p>If you omit the <code class="literal">--switch</code> option then the activation will not happen.
This is useful if you want to inspect and edit the configuration before This is useful if you want to inspect and edit the configuration before
activating it.</p><pre><code class="programlisting shell">$ nix run home-manager/$branch -- init activating it.</p><pre><code class="programlisting shell">$ nix run home-manager/$branch -- init
$ # Edit files in ~/.config/home-manager $ # Edit files in ~/.config/home-manager
$ nix run home-manager/$branch -- init --switch $ nix run home-manager/$branch -- init --switch
</code></pre><p>Where <code class="literal">$branch</code> is one of <code class="literal">master</code> or <code class="literal">release-23.11</code>.</p><p>After the initial activation has completed successfully then building </code></pre><p>Where <code class="literal">$branch</code> is one of <code class="literal">master</code> or <code class="literal">release-24.05</code>.</p><p>After the initial activation has completed successfully then building
and activating your flake-based configuration is as simple as</p><pre><code class="programlisting shell">$ home-manager switch and activating your flake-based configuration is as simple as</p><pre><code class="programlisting shell">$ home-manager switch
</code></pre><p>It is possible to override the default configuration directory, if you </code></pre><p>It is possible to override the default configuration directory, if you
want. For example,</p><pre><code class="programlisting shell">$ nix run home-manager/$branch -- init --switch ~/hmconf want. For example,</p><pre><code class="programlisting shell">$ nix run home-manager/$branch -- init --switch ~/hmconf

View file

@ -24,9 +24,15 @@
</tr> </tr>
</table> </table>
<hr /> <hr />
</div><div class="appendix"> <div class="titlepage"> <div> <div> <h1 id="ch-release-notes" class="title" >Appendix D. Release Notes </h1> </div> </div></div><div class="toc"> <p><strong>Table of Contents</strong></p> <dl class="toc"> <dt> <span class="chapter"> <a href="release-notes.xhtml#sec-release-24.05">Release 24.05</a> </span></dt><dt> <span class="chapter"> <a href="release-notes.xhtml#sec-release-23.11">Release 23.11</a> </span></dt><dt> <span class="chapter"> <a href="release-notes.xhtml#sec-release-23.05">Release 23.05</a> </span></dt><dt> <span class="chapter"> <a href="release-notes.xhtml#sec-release-22.11">Release 22.11</a> </span></dt><dt> <span class="chapter"> <a href="release-notes.xhtml#sec-release-22.05">Release 22.05</a> </span></dt><dt> <span class="chapter"> <a href="release-notes.xhtml#sec-release-21.11">Release 21.11</a> </span></dt><dt> <span class="chapter"> <a href="release-notes.xhtml#sec-release-21.05">Release 21.05</a> </span></dt><dt> <span class="chapter"> <a href="release-notes.xhtml#sec-release-20.09">Release 20.09</a> </span></dt><dt> <span class="chapter"> <a href="release-notes.xhtml#sec-release-20.03">Release 20.03</a> </span></dt><dt> <span class="chapter"> <a href="release-notes.xhtml#sec-release-19.09">Release 19.09</a> </span></dt><dt> <span class="chapter"> <a href="release-notes.xhtml#sec-release-19.03">Release 19.03</a> </span></dt><dt> <span class="chapter"> <a href="release-notes.xhtml#sec-release-18.09">Release 18.09</a> </span></dt> </dl></div><p>This section lists the release notes for stable versions of Home Manager </div><div class="appendix"> <div class="titlepage"> <div> <div> <h1 id="ch-release-notes" class="title" >Appendix D. Release Notes </h1> </div> </div></div><div class="toc"> <p><strong>Table of Contents</strong></p> <dl class="toc"> <dt> <span class="chapter"> <a href="release-notes.xhtml#sec-release-24.11">Release 24.11</a> </span></dt><dt> <span class="chapter"> <a href="release-notes.xhtml#sec-release-24.05">Release 24.05</a> </span></dt><dt> <span class="chapter"> <a href="release-notes.xhtml#sec-release-23.11">Release 23.11</a> </span></dt><dt> <span class="chapter"> <a href="release-notes.xhtml#sec-release-23.05">Release 23.05</a> </span></dt><dt> <span class="chapter"> <a href="release-notes.xhtml#sec-release-22.11">Release 22.11</a> </span></dt><dt> <span class="chapter"> <a href="release-notes.xhtml#sec-release-22.05">Release 22.05</a> </span></dt><dt> <span class="chapter"> <a href="release-notes.xhtml#sec-release-21.11">Release 21.11</a> </span></dt><dt> <span class="chapter"> <a href="release-notes.xhtml#sec-release-21.05">Release 21.05</a> </span></dt><dt> <span class="chapter"> <a href="release-notes.xhtml#sec-release-20.09">Release 20.09</a> </span></dt><dt> <span class="chapter"> <a href="release-notes.xhtml#sec-release-20.03">Release 20.03</a> </span></dt><dt> <span class="chapter"> <a href="release-notes.xhtml#sec-release-19.09">Release 19.09</a> </span></dt><dt> <span class="chapter"> <a href="release-notes.xhtml#sec-release-19.03">Release 19.03</a> </span></dt><dt> <span class="chapter"> <a href="release-notes.xhtml#sec-release-18.09">Release 18.09</a> </span></dt> </dl></div><p>This section lists the release notes for stable versions of Home Manager
and the current unstable version.</p><div class="chapter"> <div class="titlepage"> <div> <div> <h2 id="sec-release-24.05" class="title" >Release 24.05 </h2> </div> </div></div><div class="toc"> <p><strong>Table of Contents</strong></p> <dl class="toc"> <dt> <span class="section"> <a href="release-notes.xhtml#sec-release-24.05-highlights">Highlights</a> </span></dt><dt> <span class="section"> <a href="release-notes.xhtml#sec-release-24.05-state-version-changes">State Version Changes</a> </span></dt> </dl></div><p>This is the current unstable branch and the information in this section and the current unstable version.</p><div class="chapter"> <div class="titlepage"> <div> <div> <h2 id="sec-release-24.11" class="title" >Release 24.11 </h2> </div> </div></div><div class="toc"> <p><strong>Table of Contents</strong></p> <dl class="toc"> <dt> <span class="section"> <a href="release-notes.xhtml#sec-release-24.11-highlights">Highlights</a> </span></dt><dt> <span class="section"> <a href="release-notes.xhtml#sec-release-24.11-state-version-changes">State Version Changes</a> </span></dt> </dl></div><p>This is the current unstable branch and the information in this section
is therefore not final.</p><div class="section"> <div class="titlepage"> <div> <div> <h2 id="sec-release-24.05-highlights" class="title" style="clear: both">Highlights </h2> </div> </div></div><p>This release has the following notable changes:</p><div class="itemizedlist"><ul class="itemizedlist " style="list-style-type: disc;"><li class="listitem"><p>The <code class="literal">.release</code> file in the Home Manager project root has been is therefore not final.</p><div class="section"> <div class="titlepage"> <div> <div> <h2 id="sec-release-24.11-highlights" class="title" style="clear: both">Highlights </h2> </div> </div></div><p>This release has the following notable changes:</p><div class="itemizedlist"><ul class="itemizedlist compact" style="list-style-type: disc;"><li class="listitem"><p>No changes.</p></li></ul></div>
</div><div class="section"> <div class="titlepage"> <div> <div> <h2 id="sec-release-24.11-state-version-changes" class="title" style="clear: both">State Version Changes </h2> </div> </div></div><p>The state version in this release includes the changes below. These
changes are only active if the <code class="literal">home.stateVersion</code> option is set to
&quot;24.11&quot; or later.</p><div class="itemizedlist"><ul class="itemizedlist compact" style="list-style-type: disc;"><li class="listitem"><p>No changes.</p></li></ul></div>
</div>
</div><div class="chapter"> <div class="titlepage"> <div> <div> <h2 id="sec-release-24.05" class="title" >Release 24.05 </h2> </div> </div></div><div class="toc"> <p><strong>Table of Contents</strong></p> <dl class="toc"> <dt> <span class="section"> <a href="release-notes.xhtml#sec-release-24.05-highlights">Highlights</a> </span></dt><dt> <span class="section"> <a href="release-notes.xhtml#sec-release-24.05-state-version-changes">State Version Changes</a> </span></dt> </dl></div><p>The 24.05 release branch became stable in May, 2024.</p><div class="section"> <div class="titlepage"> <div> <div> <h2 id="sec-release-24.05-highlights" class="title" style="clear: both">Highlights </h2> </div> </div></div><p>This release has the following notable changes:</p><div class="itemizedlist"><ul class="itemizedlist " style="list-style-type: disc;"><li class="listitem"><p>The <code class="literal">.release</code> file in the Home Manager project root has been
removed. Please use the <code class="literal">release.json</code> file instead.</p></li><li class="listitem"><p>The <span class="command"><strong>home-manager uninstall</strong></span> command has been reworked to, removed. Please use the <code class="literal">release.json</code> file instead.</p></li><li class="listitem"><p>The <span class="command"><strong>home-manager uninstall</strong></span> command has been reworked to,
hopefully, be more robust. The new implementation makes use of a new hopefully, be more robust. The new implementation makes use of a new
Boolean configuration option <a class="link" href="options.xhtml#opt-uninstall" >uninstall</a> that can Boolean configuration option <a class="link" href="options.xhtml#opt-uninstall" >uninstall</a> that can
@ -68,7 +74,7 @@ use may in the future trigger a warning message and eventually it
may be removed entirely.</p></li></ul></div> may be removed entirely.</p></li></ul></div>
</div><div class="section"> <div class="titlepage"> <div> <div> <h2 id="sec-release-24.05-state-version-changes" class="title" style="clear: both">State Version Changes </h2> </div> </div></div><p>The state version in this release includes the changes below. These </div><div class="section"> <div class="titlepage"> <div> <div> <h2 id="sec-release-24.05-state-version-changes" class="title" style="clear: both">State Version Changes </h2> </div> </div></div><p>The state version in this release includes the changes below. These
changes are only active if the <code class="literal">home.stateVersion</code> option is set to changes are only active if the <code class="literal">home.stateVersion</code> option is set to
&quot;24.05&quot; or later.</p><div class="itemizedlist"><ul class="itemizedlist compact" style="list-style-type: disc;"><li class="listitem"><p>Nothing, yet.</p></li></ul></div> &quot;24.05&quot; or later.</p><div class="itemizedlist"><ul class="itemizedlist compact" style="list-style-type: disc;"><li class="listitem"><p>There was no state version change in this release.</p></li></ul></div>
</div> </div>
</div><div class="chapter"> <div class="titlepage"> <div> <div> <h2 id="sec-release-23.11" class="title" >Release 23.11 </h2> </div> </div></div><div class="toc"> <p><strong>Table of Contents</strong></p> <dl class="toc"> <dt> <span class="section"> <a href="release-notes.xhtml#sec-release-23.11-highlights">Highlights</a> </span></dt><dt> <span class="section"> <a href="release-notes.xhtml#sec-release-23.11-state-version-changes">State Version Changes</a> </span></dt> </dl></div><p>The 23.11 release branch became stable in November, 2023.</p><div class="section"> <div class="titlepage"> <div> <div> <h2 id="sec-release-23.11-highlights" class="title" style="clear: both">Highlights </h2> </div> </div></div><p>This release has the following notable changes:</p><div class="itemizedlist"><ul class="itemizedlist " style="list-style-type: disc;"><li class="listitem"><p>When using <a class="link" href="options.xhtml#opt-programs.fish.enable" >programs.fish.enable</a>, the setup code for </div><div class="chapter"> <div class="titlepage"> <div> <div> <h2 id="sec-release-23.11" class="title" >Release 23.11 </h2> </div> </div></div><div class="toc"> <p><strong>Table of Contents</strong></p> <dl class="toc"> <dt> <span class="section"> <a href="release-notes.xhtml#sec-release-23.11-highlights">Highlights</a> </span></dt><dt> <span class="section"> <a href="release-notes.xhtml#sec-release-23.11-state-version-changes">State Version Changes</a> </span></dt> </dl></div><p>The 23.11 release branch became stable in November, 2023.</p><div class="section"> <div class="titlepage"> <div> <div> <h2 id="sec-release-23.11-highlights" class="title" style="clear: both">Highlights </h2> </div> </div></div><p>This release has the following notable changes:</p><div class="itemizedlist"><ul class="itemizedlist " style="list-style-type: disc;"><li class="listitem"><p>When using <a class="link" href="options.xhtml#opt-programs.fish.enable" >programs.fish.enable</a>, the setup code for