nixos/hypridle: init
This commit is contained in:
@@ -1326,6 +1326,7 @@
|
|||||||
./services/video/unifi-video.nix
|
./services/video/unifi-video.nix
|
||||||
./services/video/v4l2-relayd.nix
|
./services/video/v4l2-relayd.nix
|
||||||
./services/wayland/cage.nix
|
./services/wayland/cage.nix
|
||||||
|
./services/wayland/hypridle.nix
|
||||||
./services/web-apps/akkoma.nix
|
./services/web-apps/akkoma.nix
|
||||||
./services/web-apps/alps.nix
|
./services/web-apps/alps.nix
|
||||||
./services/web-apps/anuko-time-tracker.nix
|
./services/web-apps/anuko-time-tracker.nix
|
||||||
|
|||||||
@@ -7,22 +7,15 @@ in
|
|||||||
options.programs.hyprlock = {
|
options.programs.hyprlock = {
|
||||||
enable = lib.mkEnableOption "hyprlock, Hyprland's GPU-accelerated screen locking utility";
|
enable = lib.mkEnableOption "hyprlock, Hyprland's GPU-accelerated screen locking utility";
|
||||||
package = lib.mkPackageOption pkgs "hyprlock" { };
|
package = lib.mkPackageOption pkgs "hyprlock" { };
|
||||||
hypridlePackage = lib.mkPackageOption pkgs "hypridle" { };
|
|
||||||
};
|
};
|
||||||
|
|
||||||
config = lib.mkIf cfg.enable {
|
config = lib.mkIf cfg.enable {
|
||||||
environment.systemPackages = [
|
environment.systemPackages = [
|
||||||
cfg.package
|
cfg.package
|
||||||
cfg.hypridlePackage
|
|
||||||
];
|
];
|
||||||
|
|
||||||
# Hyprlock needs Hypridle systemd service to be running to detect idle time
|
# Hyprlock needs Hypridle systemd service to be running to detect idle time
|
||||||
systemd.user.services.hypridle = {
|
services.hypridle.enable = true;
|
||||||
description = "Hypridle idle daemon";
|
|
||||||
wantedBy = [ "graphical-session.target" ];
|
|
||||||
partOf = [ "graphical-session.target" ];
|
|
||||||
script = lib.getExe cfg.hypridlePackage;
|
|
||||||
};
|
|
||||||
|
|
||||||
# Hyprlock needs PAM access to authenticate, else it fallbacks to su
|
# Hyprlock needs PAM access to authenticate, else it fallbacks to su
|
||||||
security.pam.services.hyprlock = {};
|
security.pam.services.hyprlock = {};
|
||||||
|
|||||||
26
nixos/modules/services/wayland/hypridle.nix
Normal file
26
nixos/modules/services/wayland/hypridle.nix
Normal file
@@ -0,0 +1,26 @@
|
|||||||
|
{ lib, pkgs, config, ... }:
|
||||||
|
|
||||||
|
let
|
||||||
|
cfg = config.services.hypridle;
|
||||||
|
in
|
||||||
|
{
|
||||||
|
options.services.hypridle = {
|
||||||
|
enable = lib.mkEnableOption "hypridle, Hyprland's idle daemon";
|
||||||
|
package = lib.mkPackageOption pkgs "hypridle" { };
|
||||||
|
};
|
||||||
|
|
||||||
|
config = lib.mkIf cfg.enable {
|
||||||
|
environment.systemPackages = [
|
||||||
|
cfg.package
|
||||||
|
];
|
||||||
|
|
||||||
|
systemd.user.services.hypridle = {
|
||||||
|
description = "Hypridle idle daemon";
|
||||||
|
wantedBy = [ "graphical-session.target" ];
|
||||||
|
partOf = [ "graphical-session.target" ];
|
||||||
|
script = lib.getExe cfg.package;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
meta.maintainers = with lib.maintainers; [ johnrtitor ];
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user