marleyos/modules/home/appearance/base/default.nix

71 lines
1.4 KiB
Nix

{
lib,
config,
pkgs,
...
}: let
inherit (lib) mkEnableOption mkIf;
inherit (lib.marleyos) enabled;
cfg = config.marleyos.appearance.base;
inherit (config.marleyos.theme) colors;
inherit (config.marleyos) isDesktop;
in {
options.marleyos.appearance.base.enable = mkEnableOption "base";
config = mkIf cfg.enable {
home.packages = with pkgs; [
# TODO: package font with harfbuzz features.
maple-mono-NF
dm-sans
eb-garamond
whatsapp-emoji-font
];
rose-pine.pointerCursor = mkIf colors.isRosePine enabled;
marleyos = {
theme = {
colors = {
default = "dark";
dark = {
base = "rose-pine";
flavor = "main";
};
light = {
base = "rose-pine";
flavor = "dawn";
};
};
icons = {
package = pkgs.kora-icon-theme;
name = "kora";
};
fonts = {
monospace = {
package = pkgs.maple-mono-NF;
name = "Maple Mono NF";
ligatures = [
"cv02"
"ss01"
"ss02"
"ss03"
"ss04"
"ss05"
];
};
};
};
apps = {
pinentry =
if isDesktop
then pkgs.pinentry-gtk2
else pkgs.pinentry-curses;
};
};
};
}