aboutsummaryrefslogtreecommitdiff
path: root/hosts/nyaan/home.nix
blob: 3a886275c44ccada4537a0764bba296c21c92742 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
{
  flakeRoot,
  inputs,
  pkgs,
  config,
  ...
}:
{
  home-manager = {
    useGlobalPkgs = true;
    useUserPackages = true;
    sharedModules = [ { programs.fish.enable = true; } ];
    extraSpecialArgs = {
      inherit inputs;
    };
  };

  home-manager.users.isabella = {
    imports = [
      (flakeRoot + /share/cfg)
      (flakeRoot + /share/home/minimal.nix)
      (flakeRoot + /share/home/dev-stuff.nix)
      (flakeRoot + /share/home/shell.nix)
      (flakeRoot + /share/home/gui-tools.nix)
      # (flakeRoot + /share/home/gaming.nix)
      # (flakeRoot + /share/home/niri.nix)
    ];

    programs.tofi.enable = true;

    xdg = {
      systemDirs.data =
        let
          gds = pkgs.gsettings-desktop-schemas;
          gtk3 = pkgs.gtk3;
        in
        [
          "${gds}/share/gsettings-schemas/${gds.name}"
          "${gtk3}/share/gsettings-schemas/${gtk3.name}"
        ];
      userDirs =
        let
          home = config.home-manager.users.isabella.home.homeDirectory;
          annex = "${home}/Annex";
        in
        {
          enable = true;
          createDirectories = true;

          # Disable dirs that I don't use
          desktop = null;
          publicShare = null;
          templates = null;
          pictures = "${annex}/Pictures";
          music = "${annex}/Music";
          documents = "${annex}/Documents";
          download = "${home}/Downloads";
        };
      portal.xdgOpenUsePortal = true;
    };

    home.stateVersion = "25.11";
  };

  home-manager.users.root.home.stateVersion = "25.11";
}