diff --git a/index.xhtml b/index.xhtml index e266b9a78..fc0a84baf 100644 --- a/index.xhtml +++ b/index.xhtml @@ -33,7 +33,7 @@
-

Table of Contents

Preface
Installing Home Manager
Standalone installation
NixOS module
nix-darwin module
Using Home Manager
Configuration Example
Rollbacks
Keeping your ~ safe from harm
Graphical services
Updating
Nix Flakes
Prerequisites
Standalone setup
NixOS module
nix-darwin module
Writing Home Manager Modules
Option Types
Contributing
Getting started
Guidelines
News
Tests
Third-Party Tools and Extensions
Module Collections
Frequently Asked Questions (FAQ)
Why is there a collision error when switching generation?
Why are the session variables not set?
How to set up a configuration for multiple users/machines?
Why do I get an error message about ca.desrt.dconf or dconf.service?
How do I install packages from Nixpkgs unstable?
How do I override the package used by a module?
A. Home Manager Configuration Options
B. NixOS Configuration Options
C. nix-darwin Configuration Options
D. Release Notes
+

Table of Contents

Preface
Installing Home Manager
Standalone installation
NixOS module
nix-darwin module
Using Home Manager
Configuration Example
Rollbacks
Keeping your ~ safe from harm
Graphical services
Updating
Nix Flakes
Prerequisites
Standalone setup
NixOS module
nix-darwin module
Writing Home Manager Modules
Option Types
Contributing
Getting started
Guidelines
News
Tests
Third-Party Tools and Extensions
Module Collections
Frequently Asked Questions (FAQ)
Why is there a collision error when switching generation?
Why are the session variables not set?
How to set up a configuration for multiple users/machines?
Why do I get an error message about ca.desrt.dconf or dconf.service?
How do I install packages from Nixpkgs unstable?
How do I change the package used by a module?
A. Home Manager Configuration Options
B. NixOS Configuration Options
C. nix-darwin Configuration Options
D. Release Notes

Preface

This manual will eventually describe how to install, use, and extend Home Manager.

If you encounter problems then please reach out on the IRC channel #home-manager @@ -830,7 +830,7 @@ are encouraged to create a PR that expands this chapter.

A collection of modules maintained by Anselm Schüler.

  • Stylix — System-wide colorscheming and typography

    Configure your applications to get coherent color scheme and font.

  • -

    Frequently Asked Questions (FAQ)

    Why is there a collision error when switching generation?

    Home Manager currently installs packages into the user environment, +

    Frequently Asked Questions (FAQ)

    Why is there a collision error when switching generation?

    Home Manager currently installs packages into the user environment, precisely as if the packages were installed through nix-env --install. This means that you will get a collision error if your Home Manager configuration attempts to install a package that you already have @@ -914,12 +914,27 @@ in $ nix-channel --update

    Note, the package will not be affected by any package overrides, overlays, etc.

    -

    How do I override the package used by a module?

    By default Home Manager will install the package provided by your chosen +

    How do I change the package used by a module?

    By default Home Manager will install the package provided by your chosen nixpkgs channel but occasionally you might end up needing to change this package. This can typically be done in two ways.

    1. If the module provides a package option, such as programs.beets.package, then this is the recommended way to -perform the override. For example,

      programs.beets.package = pkgs.beets.override { enableCheck = true; };
      -
    2. If no package option is available then you can typically override +perform the change. For example,

      programs.beets.package = pkgs.beets.override { pluginOverrides = { beatport.enable = false; }; };
      +

      See Nix pill 17 +for more information on package overrides. Alternatively, if you want +to use the beets package from Nixpkgs unstable, then a configuration like

      { pkgs, config, ... }:
      +
      +let
      +
      +  pkgsUnstable = import <nixpkgs-unstable> {};
      +
      +in
      +
      +{
      +  programs.beets.package = pkgsUnstable.beets;
      +
      +  # …
      +}
      +

      should work OK.

    3. If no package option is available then you can typically change the relevant package using an overlay.

      For example, if you want to use the programs.skim module but use the skim package from Nixpkgs unstable, then a configuration like

      { pkgs, config, ... }:
      diff --git a/options.xhtml b/options.xhtml
      index 4166dd85e..2ac4e3dd1 100644
      --- a/options.xhtml
      +++ b/options.xhtml
      @@ -14187,7 +14187,7 @@ package

      pkgs.beets

      Example: -(pkgs.beets.override { enableCheck = true; })

      +(pkgs.beets.override { pluginOverrides = { beatport.enable = false; }; })

      Declared by: