nixos: rework font options
This commit is contained in:
parent
c9f7e6b53c
commit
1fa7ae2a66
6 changed files with 107 additions and 41 deletions
|
|
@ -1,12 +1,32 @@
|
|||
{lib, ...}: let
|
||||
inherit (lib) mkOption;
|
||||
inherit (lib.types) str package path int bool;
|
||||
inherit (lib.types) str package path int bool submodule nullOr;
|
||||
|
||||
mkFontOption = {
|
||||
mkVariantOption = {
|
||||
regular = mkOption {
|
||||
type = str;
|
||||
default = "";
|
||||
};
|
||||
bold = mkOption {
|
||||
type = str;
|
||||
default = "";
|
||||
};
|
||||
italic = mkOption {
|
||||
type = str;
|
||||
default = "";
|
||||
};
|
||||
boldItalic = mkOption {
|
||||
type = str;
|
||||
default = "";
|
||||
};
|
||||
};
|
||||
|
||||
mkBaseFontOption = {
|
||||
family = mkOption {
|
||||
type = str;
|
||||
default = "";
|
||||
};
|
||||
variants = mkVariantOption;
|
||||
package = mkOption {
|
||||
type = package;
|
||||
default = null;
|
||||
|
|
@ -19,21 +39,15 @@
|
|||
type = bool;
|
||||
default = false;
|
||||
};
|
||||
fallback = {
|
||||
family = mkOption {
|
||||
type = str;
|
||||
default = "";
|
||||
};
|
||||
package = mkOption {
|
||||
type = package;
|
||||
default = null;
|
||||
};
|
||||
size = mkOption {
|
||||
type = int;
|
||||
};
|
||||
mkFontOption =
|
||||
mkBaseFontOption
|
||||
// {
|
||||
fallback = mkOption {
|
||||
type = nullOr (submodule {options = mkBaseFontOption;});
|
||||
default = null;
|
||||
};
|
||||
};
|
||||
};
|
||||
in {
|
||||
# imports = [./palettes];
|
||||
options.ooknet.appearance = {
|
||||
|
|
|
|||
|
|
@ -13,17 +13,36 @@ in {
|
|||
ooknet.appearance = {
|
||||
fonts = {
|
||||
monospace = {
|
||||
family = "CozetteHiDpi";
|
||||
package = pkgs.cozette;
|
||||
size = 22;
|
||||
bitmap = true;
|
||||
package = pkgs.monocraft;
|
||||
size = 18;
|
||||
family = "Monocraft";
|
||||
variants = {
|
||||
regular = "Monocraft:style=Medium";
|
||||
bold = "Monocraft:style=Medium";
|
||||
italic = "Monocraft:style=Medium";
|
||||
boldItalic = "Monocraft:style=Medium";
|
||||
};
|
||||
fallback = {
|
||||
family = "JetBrainsMono Nerd Font";
|
||||
package = pkgs.nerfonts.override {fonts = ["JetBrainsMono"];};
|
||||
family = "JetBrainsMono NFM";
|
||||
variants = {
|
||||
regular = "JetBrainsMono NFM:style=Regular";
|
||||
bold = "JetBrainsMono NFM:style=Bold";
|
||||
italic = "JetBrainsMono NFM:style=Italic";
|
||||
boldItalic = "JetBrainsMono NFM:style=Bold Italic";
|
||||
};
|
||||
package = pkgs.nerdfonts.override {fonts = ["JetBrainsMono"];};
|
||||
size = 18;
|
||||
};
|
||||
};
|
||||
regular = {
|
||||
family = "Fira Sans";
|
||||
variants = {
|
||||
regular = "Fira Sans:style=Regular";
|
||||
bold = "Fira Sans:style=Bold";
|
||||
italic = "Fira Sans:style=Italic";
|
||||
boldItalic = "Fira Sans:style=Bold Italic";
|
||||
};
|
||||
package = pkgs.fira;
|
||||
};
|
||||
};
|
||||
|
|
|
|||
|
|
@ -13,12 +13,25 @@ in {
|
|||
ooknet.appearance = {
|
||||
fonts = {
|
||||
monospace = {
|
||||
family = "JetBrainsMono Nerd Font";
|
||||
package = pkgs.nerdfonts.override {fonts = ["JetBrainsMono"];};
|
||||
size = 18;
|
||||
family = "JetBrainsMono NF";
|
||||
variants = {
|
||||
regular = "JetBrainsMono NF:style=Regular";
|
||||
bold = "JetBrainsMono NF:style=Bold";
|
||||
italic = "JetBrainsMono NF:style=Italic";
|
||||
boldItalic = "JetBrainsMono NF:style=Bold Italic";
|
||||
};
|
||||
};
|
||||
regular = {
|
||||
family = "Fira Sans";
|
||||
package = pkgs.fira;
|
||||
family = "Fira Sans";
|
||||
variants = {
|
||||
regular = "Fira Sans:style=Regular";
|
||||
bold = "Fira Sans:style=Bold";
|
||||
italic = "Fira Sans:style=Italic";
|
||||
boldItalic = "Fira Sans:style=Bold Italic";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue