summaryrefslogtreecommitdiff
path: root/modules/home-manager/personal/gui/default.nix
blob: c0d63ce04b91e03dd1da2f323f0d3d252d7b4f2d (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
{
  config,
  lib,
  pkgs,
  ...
} @ extraArgs: let
  cfg = config.personal.gui;
in {
  imports = [./redshift.nix ./safeeyes.nix ./x];

  options.personal.gui = {
    enable =
      lib.mkEnableOption "GUI"
      // {
        default = extraArgs.osConfig.personal.gui.enable or false;
      };
  };

  config = lib.mkIf cfg.enable {
    services.kdeconnect.indicator = lib.mkDefault true;

    home.pointerCursor = lib.mkDefault {
      name = "Numix-Cursor-Light";
      package = pkgs.numix-cursor-theme;
    };

    dconf.enable = lib.mkDefault true;
    gtk = {
      enable = lib.mkDefault true;
      theme = lib.mkDefault {
        name = "Arc-Dark";
        package = pkgs.arc-theme;
      };
      iconTheme = lib.mkDefault {
        name = "breeze-dark";
        package = pkgs.kdePackages.breeze-icons;
      };
    };
    qt = {
      enable = lib.mkDefault true;
      platformTheme.name = lib.mkDefault "gtk";
    };

    home.packages =
      lib.optional config.dconf.enable pkgs.dconf
      ++ (with pkgs; [keepassxc pavucontrol]);
    programs.firefox.enable = true;
  };
}