mirror of
https://github.com/moons-14/dotfiles.git
synced 2026-10-06 06:28:11 +09:00
35 lines
934 B
Nix
35 lines
934 B
Nix
{ pkgs, lib, inputs, ... }:
|
|
|
|
let
|
|
noctaliaPkg = inputs.noctalia.packages.${pkgs.system}.default;
|
|
noctaliaExe = lib.getExe noctaliaPkg;
|
|
|
|
lockCmd = "${noctaliaExe} ipc call sessionMenu lock";
|
|
lockAndSuspendCmd= "${noctaliaExe} ipc call sessionMenu lockAndSuspend";
|
|
|
|
dpmsOff = "${pkgs.niri}/bin/niri msg action power-off-monitors";
|
|
dpmsOn = "${pkgs.niri}/bin/niri msg action power-on-monitors";
|
|
in
|
|
{
|
|
services.swayidle = {
|
|
enable = true;
|
|
systemdTarget = "graphical-session.target";
|
|
|
|
timeouts = [
|
|
{ timeout = 300; command = lockAndSuspendCmd; }
|
|
];
|
|
|
|
events = [
|
|
{ event = "lock"; command = lockCmd; }
|
|
{ event = "before-sleep"; command = lockCmd; }
|
|
{ event = "after-resume"; command = dpmsOn; }
|
|
];
|
|
};
|
|
|
|
systemd.user.services.swayidle = {
|
|
Service = {
|
|
PassEnvironment = [ "WAYLAND_DISPLAY" "XDG_RUNTIME_DIR" "DBUS_SESSION_BUS_ADDRESS" ];
|
|
};
|
|
};
|
|
}
|