nixos/docs/home_manager/HOME.md
2023-02-01 23:36:03 +01:00

1.8 KiB

Home manager

Installation

!!! Inutile si on utilise Flakes et que l'on install home-manager avec

sudo si l'on souhaite utiliser le module NixOS depuis /etc/nixos/configuration.nix

nix-channel --add https://github.com/nix-community/home-manager/archive/master.tar.gz home-manager

or

nix-channel --add https://github.com/nix-community/home-manager/archive/release-${NIX_VERSION}.tar.gz home-manager
nix-channel --update

Relancer la session pour reload les channels pour le user courant.

La version root non requis si on utilise flakes et nix-shell

nix-shell '<home-manager>' -A install

Configuration

$HOME/.config/nixpkgs/home.nix

{
...

  home.packages = with pkgs; [ htop ];

  services.dunst = {
    enable = true;
  };

  home.file = {
    ".config/alacritty/alacritty.yml".text = ''
        {"font":{"bold":{"style":"Bold"}}}
    '';
  };

  home.file.".doom.d" = {
    source = ./doom.d;
    recursive = true;
    onChange = builtins.readFile ./doom.sh;
  };

  home.file.".config/polybar/script/mic.sh" = {
    source = ./mic.sh;
    executable = true;
  };
}

Cette exemple va générer le fichier .config/bspwm/bspwmrc

{
    xsession = {
        windowManager = {
            bspwm = {
                enable = true;
                rules = {
                    "Emacs" = {
                        desktop = "3";
                        follow = true;
                        state = "tiled";
                    };
                    ".blueman-manager-wrapped" = {
                        state = "floating";
                        sticky = true;
                    };
                };
            };
        };
    };
}

Mettre à jour les modifications

home-manager switch
man home-configuration.nix