diff options
Diffstat (limited to 'hosts/common/optional/services')
-rw-r--r-- | hosts/common/optional/services/xorg.nix | 81 |
1 files changed, 81 insertions, 0 deletions
diff --git a/hosts/common/optional/services/xorg.nix b/hosts/common/optional/services/xorg.nix index e513c74..ae8eb13 100644 --- a/hosts/common/optional/services/xorg.nix +++ b/hosts/common/optional/services/xorg.nix @@ -1,10 +1,74 @@ +{ pkgs, ... }: { + #environment.systemPackages = builtins.attrValues { + # inherit (pkgs) + environment.systemPackages = with pkgs; [ + evince + feh + gcr + geeqie + #gimp-with-plugins + gimp + google-chrome + gv + inkscape + libreoffice + libva-utils + mesa-demos + mpv + polkit_gnome + rdesktop + read-edid + signal-desktop + st + sxiv + tigervnc + turbovnc + vdpauinfo + vlc + vulkan-tools + x11vnc + xclip + xdotool + xorg.xdpyinfo + xorg.xev + xscreensaver + xsnow + xterm#; + ]; + #}; + + programs.firefox.enable = true; + + security.polkit = { + enable = true; + extraConfig = '' + polkit.addRule(function(action, subject) { + if ( + subject.isInGroup("users") + && ( + action.id == "org.freedesktop.login1.reboot" || + action.id == "org.freedesktop.login1.reboot-multiple-sessions" || + action.id == "org.freedesktop.login1.power-off" || + action.id == "org.freedesktop.login1.power-off-multiple-sessions" + ) + ) + { + return polkit.Result.YES; + } + }) + ''; + }; + + services.blueman.enable = true; + services.printing.enable = true; services.displayManager.defaultSession = "xsession"; services.xserver = { displayManager.lightdm = { enable = true; extraSeatDefaults = ''greeter-hide-users=true''; }; + displayManager.session = [ { manage = "desktop"; @@ -12,10 +76,27 @@ start = ''exec $HOME/.xsession''; } ]; + enable = true; libinput.enable = true; videoDrivers = [ "amdgpu" ]; xkb.layout = "us"; xkb.options = "caps:super,compose:ralt"; }; + + systemd = { + user.services.polkit-gnome-authentication-agent-1 = { + description = "polkit-gnome-authentication-agent-1"; + wantedBy = [ "graphical-session.target" ]; + wants = [ "graphical-session.target" ]; + after = [ "graphical-session.target" ]; + serviceConfig = { + Type = "simple"; + ExecStart = "${pkgs.polkit_gnome}/libexec/polkit-gnome-authentication-agent-1"; + Restart = "on-failure"; + RestartSec = 1; + TimeoutStopSec = 10; + }; + }; + }; } |