diff options
| author | Mark Nipper <nipsy@bitgnome.net> | 2026-01-27 16:31:09 -0800 |
|---|---|---|
| committer | Mark Nipper <nipsy@bitgnome.net> | 2026-01-27 16:31:09 -0800 |
| commit | a959a4470bda92234a63bbac8a312a49fe864edc (patch) | |
| tree | 3e4df3bb6613828abb5fc9b75a3a0364f6c917fa /hosts/common | |
| parent | 4f81ff3994851d85e2404f95197623d5c4bf8c9e (diff) | |
| download | nix-a959a4470bda92234a63bbac8a312a49fe864edc.tar nix-a959a4470bda92234a63bbac8a312a49fe864edc.tar.gz nix-a959a4470bda92234a63bbac8a312a49fe864edc.tar.bz2 nix-a959a4470bda92234a63bbac8a312a49fe864edc.tar.lz nix-a959a4470bda92234a63bbac8a312a49fe864edc.tar.xz nix-a959a4470bda92234a63bbac8a312a49fe864edc.tar.zst nix-a959a4470bda92234a63bbac8a312a49fe864edc.zip | |
Break out GUI options from display server
Diffstat (limited to 'hosts/common')
| -rw-r--r-- | hosts/common/optional/gui.nix | 76 | ||||
| -rw-r--r-- | hosts/common/optional/services/wayland.nix | 83 | ||||
| -rw-r--r-- | hosts/common/optional/services/xorg.nix | 108 |
3 files changed, 95 insertions, 172 deletions
diff --git a/hosts/common/optional/gui.nix b/hosts/common/optional/gui.nix new file mode 100644 index 0000000..eb6242d --- /dev/null +++ b/hosts/common/optional/gui.nix @@ -0,0 +1,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" ]; + }; +} diff --git a/hosts/common/optional/services/wayland.nix b/hosts/common/optional/services/wayland.nix index 493e0e4..501e173 100644 --- a/hosts/common/optional/services/wayland.nix +++ b/hosts/common/optional/services/wayland.nix @@ -1,95 +1,16 @@ -{ config, lib, pkgs, ... }: +{ 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.grim - 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.tigervnc - #pkgs.turbovnc - pkgs.vdpauinfo - pkgs.vlc - pkgs.vulkan-tools - pkgs.wireshark + pkgs.wev pkgs.wl-clipboard pkgs.wlvncc - #pkgs.x11vnc - pkgs.xclip - pkgs.xdotool - pkgs.xorg.appres - pkgs.xorg.editres - pkgs.xorg.xdpyinfo - pkgs.xorg.xev - pkgs.xscreensaver - pkgs.xsnow - pkgs.xterm ]; programs = { - firefox = { - enable = true; - #package = pkgs.master.firefox; - }; - - gamemode.enable = true; - - steam.gamescopeSession.enable = true; - sway = { enable = true; wrapperFeatures.gtk = 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 = { - 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; - }; - }; - }; } diff --git a/hosts/common/optional/services/xorg.nix b/hosts/common/optional/services/xorg.nix index 0c5ca0c..9852a51 100644 --- a/hosts/common/optional/services/xorg.nix +++ b/hosts/common/optional/services/xorg.nix @@ -1,95 +1,37 @@ { config, lib, 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.mangohud - pkgs.mesa-demos - pkgs.mpv - pkgs.polkit_gnome - pkgs.rdesktop - pkgs.read-edid - pkgs.st - pkgs.sxiv #pkgs.tigervnc pkgs.turbovnc - pkgs.vdpauinfo - pkgs.vlc - pkgs.vulkan-tools - pkgs.wireshark pkgs.x11vnc - pkgs.xclip - pkgs.xdotool - pkgs.xorg.appres - pkgs.xorg.editres - pkgs.xorg.xdpyinfo - pkgs.xorg.xev pkgs.xscreensaver - pkgs.xsnow - pkgs.xterm ]; - programs = { - dconf = { - enable = true; - profiles.user.databases = [{ - settings."org/gnome/desktop/interface".color-scheme = "prefer-dark"; - }]; - }; - - firefox = { - enable = true; - #package = pkgs.master.firefox; - }; - }; - - security = { - pam = { - loginLimits = [ - { domain = "@users"; item = "rtprio"; type = "-"; value = 1; } - ]; - }; - 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" - ) + 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; - } - }) - ''; - }; + ) + { + return polkit.Result.YES; + } + }) + ''; }; services = { - blueman.enable = true; displayManager = lib.mkIf (config.networking.hostName != "fangorn") { defaultSession = "xsession"; }; - libinput.enable = true; picom.enable = true; - printing.enable = true; xserver = { displayManager.lightdm = lib.mkMerge [ (lib.mkIf (config.networking.hostName == "fangorn") { @@ -114,20 +56,4 @@ 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; - }; - }; - }; } |
