home-manager/docs/manual/nix-flakes/prerequisites.md
Viktor Kronvall 80ac72bf03 docs: render without deprecated optionsDocBook
The `optionsDocBook` function is deprecated in nixpkgs since
nixos-23.11. This commit updates the manual and manpages to
use commonmark formatted documentation instead of the deprecated
docbook format.
2023-12-07 21:27:38 +09:00

1.4 KiB

Prerequisites

  • Install Nix 2.4 or later, or have it in nix-shell.

  • Enable experimental features nix-command and flakes.

    • When using NixOS, add the following to your configuration.nix and rebuild your system.

      nix = {
        package = pkgs.nixFlakes;
        extraOptions = ''
          experimental-features = nix-command flakes
        '';
      };
      
    • If you are not using NixOS, add the following to nix.conf (located at ~/.config/nix/ or /etc/nix/nix.conf).

      experimental-features = nix-command flakes
      

      You may need to restart the Nix daemon with, for example, sudo systemctl restart nix-daemon.service.

    • Alternatively, you can enable flakes on a per-command basis with the following additional flags to nix and home-manager:

      $ nix --extra-experimental-features "nix-command flakes" <sub-commands>
      $ home-manager --extra-experimental-features "nix-command flakes" <sub-commands>
      
  • Prepare your Home Manager configuration (home.nix).

    Unlike the channel-based setup, home.nix will be evaluated when the flake is built, so it must be present before bootstrap of Home Manager from the flake. See Configuration Example for introduction about writing a Home Manager configuration.