diff options
Diffstat (limited to '')
-rw-r--r-- | home/nipsy/caladan.nix | 2 | ||||
-rw-r--r-- | hosts/caladan/default.nix | 3 | ||||
-rw-r--r-- | hosts/common/optional/services/wayland.nix | 147 | ||||
-rw-r--r-- | overlays/default.nix | 20 |
4 files changed, 160 insertions, 12 deletions
diff --git a/home/nipsy/caladan.nix b/home/nipsy/caladan.nix index d5afbce..c2d8539 100644 --- a/home/nipsy/caladan.nix +++ b/home/nipsy/caladan.nix @@ -3,7 +3,7 @@ imports = [ common/core common/optional/desktops - common/optional/desktops/services/xscreensaver.nix + #common/optional/desktops/services/xscreensaver.nix common/optional/desktops/xdg.nix common/optional/secrets.nix #inputs.sops-nix.homeManagerModules.sops diff --git a/hosts/caladan/default.nix b/hosts/caladan/default.nix index 0ff9b33..0010569 100644 --- a/hosts/caladan/default.nix +++ b/hosts/caladan/default.nix @@ -69,7 +69,8 @@ ../common/optional/sdr.nix ../common/optional/services/chrony.nix ../common/optional/services/openssh.nix - ../common/optional/services/xorg.nix + ../common/optional/services/wayland.nix + #../common/optional/services/xorg.nix ../common/optional/sound.nix ../common/optional/wdt.nix ../common/optional/zfs.nix diff --git a/hosts/common/optional/services/wayland.nix b/hosts/common/optional/services/wayland.nix new file mode 100644 index 0000000..f512b29 --- /dev/null +++ b/hosts/common/optional/services/wayland.nix @@ -0,0 +1,147 @@ +{ config, lib, pkgs, ... }: +{ + environment.systemPackages = [ + pkgs.chafa + pkgs.evince + pkgs.feh + pkgs.gcr + pkgs.geeqie + pkgs.ghostty + pkgs.gimp + #pkgs.gimp-with-plugins + pkgs.google-chrome + pkgs.grim + pkgs.gv + pkgs.inkscape + pkgs.kdePackages.okular + pkgs.libreoffice + pkgs.libva-utils + pkgs.mako + pkgs.mesa-demos + pkgs.mpv + pkgs.polkit_gnome + pkgs.rdesktop + pkgs.read-edid + pkgs.slurp + pkgs.st + pkgs.sxiv + pkgs.tigervnc + pkgs.turbovnc + pkgs.vdpauinfo + pkgs.vlc + pkgs.vulkan-tools + pkgs.wireshark + pkgs.wl-clipboard + 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; + }; + + #regreet= { + # enable = true; + # settings = { + # GTK = { + # application_prefer_dark_theme = true; + # cursor_theme_name = "catppuccin-mocha-blue-cursors"; + # font_name = "Work Sans 16"; + # icon_theme_name = "Papirus-Dark"; + # theme_name = "catppuccin-mocha-blue-standard"; + # }; + # }; + #}; + + sway = { + enable = true; + wrapperFeatures.gtk = true; + }; + + waybar.enable = true; + }; + + #services.greetd = { + # enable = true; + # #settings = { + # # default_session = { + # # command = "${pkgs.greetd.tuigreet}/bin/tuigreet --time --cmd sway"; + # # user = "greeter"; + # # }; + # #}; + #}; + + security = { + pam = { + loginLimits = [ + { domain = "@users"; item = "rtprio"; type = "-"; value = 1; } + ]; + + services.sddm-greeter.googleAuthenticator = { + enable = true; + forwardPass = true; + }; + }; + + 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; + + displayManager.sddm = { + enable = true; + wayland = { + compositor = "kwin"; + 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/overlays/default.nix b/overlays/default.nix index a4e3a06..c59e38f 100644 --- a/overlays/default.nix +++ b/overlays/default.nix @@ -22,16 +22,16 @@ # example = prev.example.overrideAttrs (oldAttrs: rec { # ... # }); - #linux-firmware = prev.linux-firmware.overrideAttrs (old: rec { - # pname = "linux-firmware"; - # version = "20250613"; - # src = prev.fetchFromGitLab { - # owner = "kernel-firmware"; - # repo = "linux-firmware"; - # rev = "12fe085fa4096dedd82a9af0901fb8721379011f"; - # hash = "sha256-qygwQNl99oeHiCksaPqxxeH+H7hqRjbqN++Hf9X+gzs="; - # }; - #}); + linux-firmware = prev.linux-firmware.overrideAttrs (old: rec { + pname = "linux-firmware"; + version = "20250627"; + src = prev.fetchFromGitLab { + owner = "kernel-firmware"; + repo = "linux-firmware"; + rev = "f40eafe216833d083f4e5598b7f45e894c373ad1"; + hash = "sha256-mNjCl+HtvvFxyLjlBFsyfyu2TAf6D/9lbRiouKC/vVY="; + }; + }); }; #"67e692392-packages" = final: _prev: { |