40 lines
752 B
Nix
40 lines
752 B
Nix
|
{
|
||
|
pkgs,
|
||
|
psCfg,
|
||
|
...
|
||
|
}:
|
||
|
''
|
||
|
# Set shut down, restart and locking features
|
||
|
''
|
||
|
+ (
|
||
|
if psCfg.core.hibernation.enable
|
||
|
then ''
|
||
|
set $mode_system (e)xit, (h)ibernate, (r)eboot, (Shift+s)hutdown
|
||
|
''
|
||
|
else ''
|
||
|
set $mode_system (e)xit, (r)eboot, (Shift+s)hutdown
|
||
|
''
|
||
|
)
|
||
|
+ ''
|
||
|
bindsym $mod+0 mode "$mode_system"
|
||
|
|
||
|
mode "$mode_system" {
|
||
|
bindsym e exec swaymsg exit, mode "default"
|
||
|
''
|
||
|
+ (
|
||
|
if psCfg.core.hibernation.enable
|
||
|
then ''
|
||
|
bindsym h exec systemctl hibernate, mode "default"
|
||
|
''
|
||
|
else ""
|
||
|
)
|
||
|
+ ''
|
||
|
bindsym r exec systemctl reboot, mode "default"
|
||
|
bindsym Shift+s exec systemctl poweroff, mode "default"
|
||
|
|
||
|
# exit system mode: "Enter" or "Escape"
|
||
|
bindsym Return mode "default"
|
||
|
bindsym Escape mode "default"
|
||
|
}
|
||
|
''
|