summaryrefslogtreecommitdiff
path: root/modules/desktop/common.nix
blob: ca43c5f6dca0f22c4e98438611c869981457a853 (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
{
  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
      # 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";
      };

    };

    # fcitx is broken for now
    i18n.inputMethod = {
      type = "fcitx5";
      enable = false;
      fcitx5 = { 
        waylandFrontend = true;
        addons = with pkgs; [
          # fcitx5-gtk
          # fcitx5-lua
          # fcitx5-mozc
          # catppuccin-fcitx5
          # fcitx5-table-other
          # fcitx5-gtk
          # libsForQt5.fcitx5-qt
          # kdePackages.fcitx5-qt
        ];
      };
    };

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