nixfleet/hmModules/swayidle/default.nix
Andrea Ciceri 2d3e4844b7
Start refactoring
- remove emacs
- remove inputs
- trying to speed up evaluation
- update inputs
2024-09-19 14:34:37 +02:00

54 lines
1.2 KiB
Nix

{
pkgs,
lib,
...
}: {
services.swayidle = let
swaylockWithArgs = pkgs.writeScriptBin "swaylockWithArgs" ''
${pkgs.swaylock-effects}/bin/swaylock \
--daemonize \
--screenshots \
--clock \
--indicator \
--indicator-radius 100 \
--indicator-thickness 7 \
--effect-blur 7x5 \
--effect-vignette 0.5:0.5 \
--ring-color bb00cc \
--key-hl-color 880033 \
--line-color 00000000 \
--inside-color 00000088 \
--separator-color 00000000 \
--fade-in 0.2
'';
swaylockCommand = "${swaylockWithArgs}/bin/swaylockWithArgs";
in {
enable = true;
events = [
{
event = "before-sleep";
command = swaylockCommand;
}
{
event = "lock";
command = swaylockCommand;
}
];
timeouts = [
{
timeout = 600;
command = swaylockCommand;
}
{
timeout = 720;
command = "${pkgs.systemd}/bin/systemctl suspend";
}
];
};
# Otherwise it will start only after Sway and will not work with Hyprland
systemd.user.services.swayidle = {
Unit.PartOf = lib.mkForce [];
Install.WantedBy = lib.mkForce ["hyprland-session.target"];
};
}