summaryrefslogtreecommitdiff
path: root/users/seth/desktop/gnome/default.nix
blob: 6c2d4821a2fdbd38abcded61b32f7b70bdd5cad7 (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
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
{
  lib,
  pkgs,
  osConfig,
  ...
}:
let
  enable = osConfig.services.xserver.desktopManager.gnome.enable or false;
in
{
  config = lib.mkIf enable {
    dconf = {
      enable = true;
      settings = {
        "org/gnome/shell" = {
          disable-user-extensions = false;

          enabled-extensions = [ "[email protected]" ];

          favorite-apps = [
            "chromium-browser.desktop"
            "org.gnome.Nautilus.desktop"
            "discord.desktop"
          ];
        };

        "org/gnome/desktop/interface" = {
          color-scheme = "prefer-dark";
          document-font-name = "Noto Sans 11";
          font-antialiasing = "rgba";
          font-name = "Noto Sans 11";
          monospace-font-name = "NotoMono Nerd Font 10";
        };

        "org/gnome/desktop/peripherals/mouse" = {
          accel-profile = "flat";
        };

        "org/gnome/desktop/wm/preferences" = {
          titlebar-font = "Noto Sans Bold 11";
        };

        "org/gnome/settings-daemon/plugins/media-keys/custom-keybindings/custom0" = {
          name = "blackbox";
          command = "blackbox";
          binding = "<Control><Alt>t";
        };

        "com/raggesilver/BlackBox" = {
          font = "NotoMono Nerd Font 11";
          theme-dark = "Catppuccin-Mocha";
          remember-window-size = true;
        };
      };
    };

    # Required for adwaita-ize
    gtk.enable = true;

    home.packages = [
      # Matrix client
      pkgs.fractal

      # Torrent client
      pkgs.fragments

      # Keep my screen awake
      pkgs.gnomeExtensions.caffeine

      # Mastodon client
      pkgs.tuba
    ];

    # See comment for spot
    services.spotifyd.enable = true;

    seth.tweaks.adwaita-ize.enable = true;

    xdg.dataFile."blackbox/schemes/Catppuccin-Mocha.json".source =
      pkgs.fetchFromGitHub {
        owner = "catppuccin";
        repo = "tilix";
        rev = "3fd05e03419321f2f2a6aad6da733b28be1765ef";
        sha256 = "sha256-SI7QxQ+WBHzeuXbTye+s8pi4tDVZOV4Aa33mRYO276k=";
      }
      + "/src/Catppuccin-Mocha.json";
  };
}