summaryrefslogtreecommitdiff
path: root/modules/desktop/common.nix
blob: 2632a19f8bcccb55937488fdc80dadb67a6b7a65 (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
{
  pkgs,
  config,
  lib,
  ...
}:
{
  options.addons.desktop.enable = lib.mkEnableOption "On if the machine needs a desktop";

  config = lib.mkIf config.addons.desktop.enable {
    programs = {
      dconf.enable = true;
      thunar = {
        enable = true;
        plugins = with pkgs.xfce; [
          thunar-archive-plugin
          thunar-media-tags-plugin
          thunar-volman
        ];
      };
    };

    environment.systemPackages = with pkgs; [
      xdg-user-dirs
      zathura
      sioyek
      vlc
      mpv
      gparted
      kitty
      # qalculate
      networkmanagerapplet
      (catppuccin-sddm.override {
        flavor = "mocha";
        accent = "pink";
        font = "Noto Sans";
        fontSize = "11";
        background = "${../sddm_bg.png}";
        loginBackground = true;
      })
      # disabled because it imports a unsafe package
      # surf # A basic browser in case we don't want to import a larger browser
    ];

    # Enable CUPS to print documents.
    # services.printing.enable = true;

    # Enable touchpad support (enabled default in most desktopManager).
    services.libinput.enable = true;

    services = {
      blueman.enable = true;
      # Enable sound
      pipewire = {
        enable = true;
        pulse.enable = true;
      };

      displayManager.sddm = {
        enable = true;
        theme = "catppuccin-mocha-pink";
      };
    };

    fonts.packages = with pkgs; [
      noto-fonts
      font-awesome
      nerd-fonts.hurmit
      minecraftia
    ];
  };
}