63 lines
1.3 KiB
Nix
63 lines
1.3 KiB
Nix
{
|
|
lib,
|
|
config,
|
|
pkgs,
|
|
system,
|
|
...
|
|
}: let
|
|
inherit (lib) mkEnableOption mkIf;
|
|
inherit (lib.snowfall.system) is-linux;
|
|
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
|
|
];
|
|
|
|
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";
|
|
};
|
|
|
|
pinentry =
|
|
if isDesktop
|
|
then pkgs.pinentry-gtk2
|
|
else pkgs.pinentry-curses;
|
|
};
|
|
|
|
fonts.fontconfig = mkIf (is-linux system) {
|
|
enable = true;
|
|
defaultFonts = {
|
|
monospace = ["Maple Mono NF"];
|
|
sansSerif = ["DeepMind Sans"]; # dm-sans
|
|
serif = ["EB Garamond"];
|
|
};
|
|
};
|
|
};
|
|
}
|