diff --git a/modules/_home/niri.nix b/modules/_home/niri.nix index ef309d0..8e2062f 100644 --- a/modules/_home/niri.nix +++ b/modules/_home/niri.nix @@ -64,6 +64,21 @@ in { ''; }; + home.file.".local/bin/power-menu" = { + executable = true; + text = '' + #!/usr/bin/env bash + CHOICE=$(printf "Lock\nSuspend\nReboot\nShutdown\nLogout" | fuzzel --dmenu --prompt "Power: " --lines 5) + case "$CHOICE" in + Lock) swaylock -f -i ${wallpaper} ;; + Suspend) systemctl suspend ;; + Reboot) systemctl reboot ;; + Shutdown) systemctl poweroff ;; + Logout) niri msg action quit ;; + esac + ''; + }; + home.file.".local/bin/swww-init" = { executable = true; text = '' @@ -113,9 +128,11 @@ in { binds { // Applications - Mod+Return { spawn "kitty"; } - Mod+D { spawn "fuzzel"; } - Mod+Q { close-window; } + Mod+Return { spawn "kitty"; } + Mod+D { spawn "fuzzel"; } + Mod+Q { close-window; } + Mod+Period { spawn "rofimoji" "--selector" "fuzzel" "--clipboarder" "wl-copy"; } + Mod+Shift+P { spawn "bash" "-c" "$HOME/.local/bin/power-menu"; } // Focus Mod+Left { focus-column-left; } diff --git a/modules/niri.nix b/modules/niri.nix index f2bc5bf..0df25ea 100644 --- a/modules/niri.nix +++ b/modules/niri.nix @@ -28,7 +28,9 @@ kdePackages.xdg-desktop-portal-kde xwayland-satellite gpu-screen-recorder-gtk - libnotify + libnotify + qalculate-gtk + rofimoji ]; xdg.portal = {