{ config, lib, pkgs, ... }: with lib; let cfg = config.myOptions.programs.gtklock; username = config.myOptions.other.system.username; in { options.myOptions.programs.gtklock.enable = mkEnableOption "enable gtklock"; config = mkIf cfg.enable { # https://github.com/NixOS/nixpkgs/issues/158025 security.pam.services.gtklock.text = "auth include login"; home-manager.users.${username} = { home.packages = with pkgs; [ gtklock ]; xdg.configFile."gtklock/config.ini".text = '' [main] gtk-theme=${config.myOptions.themes.gtk.name} ''; }; }; }