{ options, config, lib, pkgs, inputs, ... }: let cfg = config.modules.desktop.addons.gtklock; inherit (inputs.nix-colors.colorschemes.${builtins.toString config.modules.desktop.colorscheme}) palette ; in { options.modules.desktop.addons.gtklock = with lib.frajul; with lib.types; { enable = mkBoolOpt false "Enable or disable the gtklock screen locker."; }; config = lib.mkIf cfg.enable { home.packages = with pkgs; [ gtklock ]; xdg.configFile."gtklock/style.css".text = '' window { background-size: cover; background-repeat: no-repeat; background-position: center; background-color: #${palette.base00}; } clock-label { color: #${palette.base05}; } ''; }; }