2024-05-15 01:36:40 +02:00
|
|
|
{
|
|
|
|
config,
|
|
|
|
lib,
|
|
|
|
pkgs,
|
|
|
|
...
|
|
|
|
}:
|
2024-05-15 01:31:08 +02:00
|
|
|
|
|
|
|
let
|
|
|
|
palette = config.colorScheme.palette;
|
2024-05-15 01:36:40 +02:00
|
|
|
in
|
|
|
|
{
|
2024-05-15 01:31:08 +02:00
|
|
|
programs.wlogout = {
|
|
|
|
enable = true;
|
|
|
|
layout = [
|
|
|
|
{
|
|
|
|
label = "shutdown";
|
|
|
|
action = "sleep 1; systemctl poweroff";
|
|
|
|
text = "Shutdown";
|
|
|
|
keybind = "s";
|
|
|
|
}
|
|
|
|
{
|
|
|
|
"label" = "reboot";
|
|
|
|
"action" = "sleep 1; systemctl reboot";
|
|
|
|
"text" = "Reboot";
|
|
|
|
"keybind" = "r";
|
|
|
|
}
|
|
|
|
{
|
|
|
|
"label" = "logout";
|
|
|
|
"action" = "sleep 1; hyprctl dispatch exit";
|
|
|
|
"text" = "Exit";
|
|
|
|
"keybind" = "e";
|
|
|
|
}
|
|
|
|
{
|
|
|
|
"label" = "suspend";
|
|
|
|
"action" = "sleep 1; systemctl suspend";
|
|
|
|
"text" = "Suspend";
|
|
|
|
"keybind" = "u";
|
|
|
|
}
|
|
|
|
{
|
|
|
|
"label" = "lock";
|
|
|
|
"action" = "sleep 1; hyprlock";
|
|
|
|
"text" = "Lock";
|
|
|
|
"keybind" = "l";
|
|
|
|
}
|
|
|
|
{
|
|
|
|
"label" = "hibernate";
|
|
|
|
"action" = "sleep 1; systemctl hibernate";
|
|
|
|
"text" = "Hibernate";
|
|
|
|
"keybind" = "h";
|
2024-05-15 01:36:40 +02:00
|
|
|
}
|
2024-05-15 01:31:08 +02:00
|
|
|
];
|
|
|
|
style = ''
|
2024-05-17 11:31:50 +02:00
|
|
|
* {
|
|
|
|
font-family: "JetBrainsMono NF", FontAwesome, sans-serif;
|
2024-05-15 01:36:40 +02:00
|
|
|
background-image: none;
|
|
|
|
transition: 20ms;
|
2024-05-17 11:31:50 +02:00
|
|
|
}
|
|
|
|
window {
|
2024-05-15 01:36:40 +02:00
|
|
|
background-color: rgba(12, 12, 12, 0.1);
|
2024-05-17 11:31:50 +02:00
|
|
|
}
|
|
|
|
button {
|
2024-05-15 01:36:40 +02:00
|
|
|
color: #${palette.base05};
|
2024-05-17 11:31:50 +02:00
|
|
|
font-size:20px;
|
|
|
|
background-repeat: no-repeat;
|
2024-05-15 01:36:40 +02:00
|
|
|
background-position: center;
|
|
|
|
background-size: 25%;
|
|
|
|
border-style: solid;
|
|
|
|
background-color: rgba(12, 12, 12, 0.3);
|
|
|
|
border: 3px solid #${palette.base05};
|
2024-05-17 11:31:50 +02:00
|
|
|
box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
|
|
|
|
}
|
|
|
|
button:focus,
|
|
|
|
button:active,
|
|
|
|
button:hover {
|
|
|
|
color: #${palette.base0E};
|
|
|
|
background-color: rgba(12, 12, 12, 0.5);
|
|
|
|
border: 3px solid #${palette.base0E};
|
|
|
|
}
|
|
|
|
#logout {
|
2024-05-15 01:36:40 +02:00
|
|
|
margin: 10px;
|
|
|
|
border-radius: 20px;
|
|
|
|
background-image: image(url("icons/logout.png"));
|
2024-05-17 11:31:50 +02:00
|
|
|
}
|
|
|
|
#suspend {
|
2024-05-15 01:36:40 +02:00
|
|
|
margin: 10px;
|
|
|
|
border-radius: 20px;
|
|
|
|
background-image: image(url("icons/suspend.png"));
|
2024-05-17 11:31:50 +02:00
|
|
|
}
|
|
|
|
#shutdown {
|
2024-05-15 01:36:40 +02:00
|
|
|
margin: 10px;
|
|
|
|
border-radius: 20px;
|
|
|
|
background-image: image(url("icons/shutdown.png"));
|
2024-05-17 11:31:50 +02:00
|
|
|
}
|
|
|
|
#reboot {
|
2024-05-15 01:36:40 +02:00
|
|
|
margin: 10px;
|
|
|
|
border-radius: 20px;
|
|
|
|
background-image: image(url("icons/reboot.png"));
|
2024-05-17 11:31:50 +02:00
|
|
|
}
|
|
|
|
#lock {
|
2024-05-15 01:36:40 +02:00
|
|
|
margin: 10px;
|
|
|
|
border-radius: 20px;
|
|
|
|
background-image: image(url("icons/lock.png"));
|
2024-05-17 11:31:50 +02:00
|
|
|
}
|
|
|
|
#hibernate {
|
2024-05-15 01:36:40 +02:00
|
|
|
margin: 10px;
|
|
|
|
border-radius: 20px;
|
|
|
|
background-image: image(url("icons/hibernate.png"));
|
2024-05-17 11:31:50 +02:00
|
|
|
}
|
2024-05-15 01:31:08 +02:00
|
|
|
'';
|
|
|
|
};
|
|
|
|
}
|