zaphyra's git: nixfiles

zaphyra's nixfiles

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 
{
  inputs,
  pov,
  config,
  lib,
  ...
}:
let
  inherit (lib) types;
  cfg = lib.getAttrFromPath pov config;

in
{

  config = lib.mkIf (cfg.enable && (cfg.type == "gnomeMinimal")) {
    nixpkgs.overlays = [
      (final: prev: {
        # patch gdm to automaticly select the first user
        gnome-shell = prev.gnome-shell.overrideAttrs (prevAttrs: {
          patches = prevAttrs.patches ++ [ inputs.self.resources.patches.gdm-autoselect-user ];
        });
      })
    ];

    modules.filesystem.impermanence.system.dirs = [
      {
        directory = "/var/lib/colord";
        mode = "u=rwx,g=rx,o=";
        user = "colord";
        group = "colord";
      }
    ];

    modules = {
      gnomeMinimal.enable = true;
      hardware.bluetooth.enable = true;
      networking.NetworkManager.enable = true;
      services = {
        upower.enable = true;
        power-profiles-daemon.enable = true;
        earlyoom.avoid = [
          "gnome-shell"
          "gdm"
          "mutter"
        ];
      };
    };

  };

}