aboutsummaryrefslogtreecommitdiffstats
path: root/hosts/common/optional/gui.nix
blob: eb6242da8c7e25c849f24798e5f98dfe40d3f639 (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
{ pkgs, ... }:
{
  environment.systemPackages = [
    pkgs.chafa
    pkgs.evince
    pkgs.feh
    pkgs.gcr
    #pkgs.geeqie
    pkgs.ghostty
    pkgs.gimp3
    #pkgs.gimp-with-plugins
    pkgs.google-chrome
    pkgs.gv
    pkgs.inkscape
    pkgs.kdePackages.okular
    pkgs.libreoffice
    pkgs.libva-utils
    pkgs.mako
    pkgs.mangohud
    pkgs.mesa-demos
    pkgs.mpv
    pkgs.polkit_gnome
    pkgs.rdesktop
    pkgs.read-edid
    pkgs.slurp
    pkgs.st
    pkgs.swayimg
    pkgs.sxiv
    pkgs.vdpauinfo
    pkgs.vlc
    pkgs.vulkan-tools
    pkgs.wireshark
    pkgs.xclip
    pkgs.xdotool
    pkgs.xorg.appres
    pkgs.xorg.editres
    pkgs.xorg.xdpyinfo
    pkgs.xorg.xev
    pkgs.xsnow
    pkgs.xterm
  ];

  programs = {
    firefox = {
      enable = true;
      #package = pkgs.master.firefox;
    };

    #gamemode.enable = true;
    #steam.gamescopeSession.enable = true;
  };

  security.pam.loginLimits = [
    { domain = "@users"; item = "rtprio"; type = "-"; value = 1; }
  ];

  services = {
    blueman.enable = true;
    libinput.enable = true;
    printing.enable = true;
  };

  systemd.user.services.polkit-gnome-authentication-agent-1 = {
    after = [ "graphical-session.target" ];
    description = "polkit-gnome-authentication-agent-1";
    serviceConfig = {
      Type = "simple";
      ExecStart = "${pkgs.polkit_gnome}/libexec/polkit-gnome-authentication-agent-1";
      Restart = "on-failure";
      RestartSec = 1;
      TimeoutStopSec = 10;
    };
    wantedBy = [ "graphical-session.target" ];
    wants = [ "graphical-session.target" ];
  };
}