{ config, pkgs, lib, hostName, ... }: { environment.systemPackages = with pkgs; [ mako # notification system developed by swaywm maintainer rofi libinput libinput-gestures wmctrl seahorse libsecret gnome-text-editor nautilus playerctl libnotify ]; # enable Sway window manager programs = { sway = { enable = true; wrapperFeatures.base = true; wrapperFeatures.gtk = true; extraOptions = [ "--unsupported-gpu" ]; extraPackages = with pkgs; [ swayidle swaylock swayimg swaybg grim slurp wl-clipboard pulseaudio sway-contrib.grimshot kitty kitty-themes ]; }; # end sway uwsm = { enable = true; waylandCompositors = { sway = { prettyName = "Sway"; comment = "Sway compositor managed by UWSM"; binPath = "${pkgs.sway}/bin/sway"; extraArgs = [ "--unsupported-gpu" ]; }; }; }; # end uwsm light = { enable = true; }; # end light dconf.enable = true; seahorse.enable = true; }; # end programs security = { polkit.enable = true; pam.services = { greetd.enableGnomeKeyring = true; greetd-password.enableGnomeKeyring = true; login.enableGnomeKeyring = true; swaylock = { text = '' auth sufficient pam_unix.so try_first_pass likeauth nullok auth sufficient pam_fprintd.so auth include login ''; }; # end swaylock }; # end pam.services }; # end security services = { greetd = { enable = true; settings = { default_session = { command = "${pkgs.tuigreet}/bin/tuigreet --time --cmd 'uwsm start -- sway-uwsm.desktop' --remember --asterisks''"; user = "greeter"; }; # end default_session }; # end settings }; # end greetd logind = { settings = { Login = { HandleLidSwitch = "suspend"; HandleLidSwitchExternalPower = "suspend"; }; }; }; # end logind dbus.packages = [ pkgs.seahorse pkgs.gnome-keyring pkgs.gcr ]; gnome.gcr-ssh-agent.enable = true; }; # end services users.users.alisceon.extraGroups = [ "video" "input" ]; }