{ lib, config, namespace, pkgs, ... }: let inherit (lib) mkIf; inherit (lib.${namespace}) mkEnableModule enabled; cfg = config.${namespace}.appearance.base; inherit (config.${namespace}) theme; in { options.appearance = mkEnableModule "base"; config = mkIf cfg.enable { home.packages = with pkgs; [ maple-mono-NF ]; ${theme.colors.base}.pointerCursor = enabled; ${namespace}.theme = { default = "dark"; dark = { base = "rose-pine"; flavor = "main"; }; light = { base = "rose-pine"; flavor = "dawn"; }; }; ${namespace}.theme.icons = { package = pkgs.kora-icon-theme; name = "kora"; }; # TODO: package font with harfbuzz features. fonts.fontconfig.defaultFonts.monospace = [ "Maple Mono NF" ]; }; }