summaryrefslogtreecommitdiffstats
path: root/usecases/desktop/graphical.nix
blob: 7c262f6709b722f3d230f439b8e30a3fbb892b4b (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
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
inputs: {
  pkgs,
  ...
}: {
  imports = [
    (import ./graphical/alacritty.nix inputs)
    (import ./graphical/firefox.nix inputs)
    ./graphical/ghostty.nix
    ./graphical/greetd.nix
    (import ./graphical/gtk.nix inputs)
    # ./graphical/librewolf.nix
    (import ./graphical/mpv.nix inputs)
    ./graphical/niri.nix
    (import ./graphical/plymouth.nix inputs)
    (import ./graphical/rofi.nix inputs)
    (import ./graphical/sway.nix inputs)
    ./graphical/swaylock.nix
    ./graphical/swaync.nix
    ./graphical/waybar.nix
    ./graphical/wlsunset.nix
    (import ./graphical/wpaperd.nix inputs)
    (import ./graphical/zathura.nix inputs)
  ];

  users.extraUsers.minijackson.packages = with pkgs; [
    arandr
    dconf
    eog
    evince
    file-roller
    gnome-disk-utility
    gucharmap
    nautilus
    qutebrowser
    xdg-utils
    xsel

    unstable.planify
  ];

  programs.evolution.enable = true;
  services.gvfs.enable = true;

  fonts = {
    enableDefaultPackages = true;
    packages = with pkgs; [
      fira
      fira-mono
      dejavu_fonts
      freefont_ttf
      liberation_ttf
      libertinus
      noto-fonts-cjk-sans
      #fira-mono-italic
      lmodern
      # Symbols
      unifont
      siji
      font-awesome_5
      #joypixels

      pkgs.unstable.atkinson-hyperlegible-next
      pkgs.unstable.atkinson-hyperlegible-mono
      manrope
      open-fonts

      alegreya
      alegreya-sans

      # Collections
      league-of-moveable-type
      dotcolon-fonts
      nerdfonts

      # Compatibility fonts
      carlito
    ];

    fontconfig = {
      #ultimate.enable = true;

      defaultFonts = {
        serif = ["DejaVu Serif"];
        sansSerif = ["Atkinson Hyperlegible Next"];
        monospace = ["FiraMono Nerd Font"];
        #emoji = [ "JoyPixels" ];
      };
    };
  };

  hardware.graphics.enable = true;
  programs.dconf.enable = true;

  qt = {
    enable = true;
    style = "adwaita-dark";
    platformTheme = "gnome";
  };
  environment.systemPackages = with pkgs; [qgnomeplatform adwaita-qt];

  xdg = {
    sounds.enable = true;
    portal = {
      enable = true;
      # xdgOpenUsePortal = true;
      extraPortals = with pkgs; [
        xdg-desktop-portal-gtk
      ];
    };
  };

  programs.gnupg.agent.pinentryPackage = pkgs.pinentry-gnome3;

  # For KDEConnect
  networking.firewall.allowedTCPPortRanges = [
    {
      from = 1714;
      to = 1764;
    }
  ];
  networking.firewall.allowedUDPPortRanges = [
    {
      from = 1714;
      to = 1764;
    }
  ];

  home-manager.users.minijackson = {config, ...}: {
    services.kdeconnect = {
      enable = true;
      indicator = true;
    };

    home.sessionVariables.BOGOFILTER_DIR = "${config.xdg.dataHome}/bogofilter";
  };
}