merge
This commit is contained in:
@@ -0,0 +1,102 @@
|
||||
{
|
||||
config,
|
||||
lib,
|
||||
pkgs,
|
||||
...
|
||||
}:
|
||||
let
|
||||
font = "BerkeleyMono Nerd Font Mono";
|
||||
|
||||
bg1 = "#3c3836"; # button fill
|
||||
bg2 = "#504945"; # button border / hover fill
|
||||
fg = "#ebdbb2"; # icon + text
|
||||
orange = "#fe8019"; # accent — matches hyprlock/rofi
|
||||
|
||||
icons = "${config.programs.wlogout.package}/share/wlogout/icons";
|
||||
in
|
||||
{
|
||||
options.custom = {
|
||||
wlogout.enable = lib.mkEnableOption "enable wlogout - logout menu";
|
||||
};
|
||||
|
||||
config = lib.mkIf config.custom.wlogout.enable {
|
||||
programs.wlogout = {
|
||||
enable = true;
|
||||
layout = [
|
||||
{
|
||||
label = "lock";
|
||||
action = "loginctl lock-session";
|
||||
text = "Lock [l]";
|
||||
keybind = "l";
|
||||
}
|
||||
{
|
||||
label = "logout";
|
||||
action = "loginctl terminate-user $USER";
|
||||
text = "Logout [e]";
|
||||
keybind = "e";
|
||||
}
|
||||
{
|
||||
label = "shutdown";
|
||||
action = "hyprshutdown -t 'Shutting down...' --post-cmd 'shutdown -P 0'";
|
||||
text = "Shutdown [s]";
|
||||
keybind = "s";
|
||||
}
|
||||
{
|
||||
label = "suspend";
|
||||
action = "systemctl suspend";
|
||||
text = "Suspend [u]";
|
||||
keybind = "u";
|
||||
}
|
||||
{
|
||||
label = "reboot";
|
||||
action = "hyprshutdown -t 'Restarting...' --post-cmd 'reboot'";
|
||||
text = "Reboot [r]";
|
||||
keybind = "r";
|
||||
}
|
||||
];
|
||||
style = ''
|
||||
* {
|
||||
font-family: "${font}";
|
||||
background-image: none;
|
||||
box-shadow: none;
|
||||
}
|
||||
|
||||
window {
|
||||
background-color: rgba(29, 32, 33, 0.6); /* gruvbox bg0_hard @ 60% */
|
||||
}
|
||||
|
||||
button {
|
||||
color: ${fg};
|
||||
background-color: ${bg1};
|
||||
border: 2px solid ${bg2};
|
||||
border-radius: 16px;
|
||||
margin: 1rem;
|
||||
font-size: 1.1rem;
|
||||
|
||||
background-repeat: no-repeat;
|
||||
background-position: center;
|
||||
background-size: 25%;
|
||||
|
||||
transition: all 0.2s ease-in-out;
|
||||
}
|
||||
|
||||
button:focus,
|
||||
button:active,
|
||||
button:hover {
|
||||
color: ${orange};
|
||||
background-color: ${bg2};
|
||||
border-color: ${orange};
|
||||
background-size: 30%;
|
||||
box-shadow: inset 0 0 0 2px ${orange}; /* clean inner ring, no bleed */
|
||||
outline: none;
|
||||
}
|
||||
|
||||
#lock { background-image: url("${icons}/lock.png"); }
|
||||
#logout { background-image: url("${icons}/logout.png"); }
|
||||
#shutdown { background-image: url("${icons}/shutdown.png"); }
|
||||
#suspend { background-image: url("${icons}/suspend.png"); }
|
||||
#reboot { background-image: url("${icons}/reboot.png"); }
|
||||
'';
|
||||
};
|
||||
};
|
||||
}
|
||||
Reference in New Issue
Block a user