2023-09-09 00:06:30 +02:00
|
|
|
{
|
2023-10-13 21:04:24 +02:00
|
|
|
config,
|
|
|
|
lib,
|
|
|
|
pkgs,
|
2023-09-09 00:06:30 +02:00
|
|
|
...
|
2024-05-05 12:38:40 +02:00
|
|
|
}: let
|
2023-10-13 21:04:24 +02:00
|
|
|
cfg = config.myOptions.programs.gtklock;
|
2024-04-14 18:49:29 +02:00
|
|
|
inherit (config.myOptions.other.system) username;
|
2024-05-05 12:38:40 +02:00
|
|
|
|
2024-07-25 11:45:44 +02:00
|
|
|
inherit (lib.modules) mkIf;
|
|
|
|
inherit (lib.options) mkEnableOption;
|
2023-10-13 21:04:24 +02:00
|
|
|
in {
|
2024-04-05 22:59:32 +02:00
|
|
|
options.myOptions.programs.gtklock.enable = mkEnableOption "gtklock";
|
2024-07-24 18:47:53 +02:00
|
|
|
|
2023-10-13 21:04:24 +02:00
|
|
|
config = mkIf cfg.enable {
|
2023-11-25 19:16:22 +01:00
|
|
|
# https://github.com/NixOS/nixpkgs/issues/158025
|
|
|
|
security.pam.services.gtklock.text = "auth include login";
|
|
|
|
|
2024-02-29 00:29:56 +01:00
|
|
|
home-manager.users.${username} = {
|
2023-10-13 21:04:24 +02:00
|
|
|
home.packages = with pkgs; [
|
|
|
|
gtklock
|
|
|
|
];
|
2023-09-09 00:06:30 +02:00
|
|
|
|
2023-10-13 21:04:24 +02:00
|
|
|
xdg.configFile."gtklock/config.ini".text = ''
|
|
|
|
[main]
|
|
|
|
gtk-theme=${config.myOptions.themes.gtk.name}
|
|
|
|
'';
|
|
|
|
};
|
|
|
|
};
|
2023-09-09 00:06:30 +02:00
|
|
|
}
|