diff options
author | sinanmohd <sinan@sinanmohd.com> | 2024-06-03 20:50:58 +0530 |
---|---|---|
committer | sinanmohd <sinan@sinanmohd.com> | 2024-06-03 21:25:00 +0530 |
commit | d4f7650cd0735d1fe9173530cc31c24b65ed44ff (patch) | |
tree | 82086000936fed44120734ce2308207478d73954 /global/common | |
parent | 279ff6251173e161cc50d8ae03cb3cd2e90a61a4 (diff) |
global/font: init
Diffstat (limited to 'global/common')
-rw-r--r-- | global/common/default.nix | 6 | ||||
-rw-r--r-- | global/common/modules/font.nix | 36 | ||||
-rw-r--r-- | global/common/modules/userdata.nix | 26 |
3 files changed, 68 insertions, 0 deletions
diff --git a/global/common/default.nix b/global/common/default.nix new file mode 100644 index 0000000..329963d --- /dev/null +++ b/global/common/default.nix @@ -0,0 +1,6 @@ +{ ... }: { + imports = [ + ./modules/font.nix + ./modules/userdata.nix + ]; +} diff --git a/global/common/modules/font.nix b/global/common/modules/font.nix new file mode 100644 index 0000000..cf0ea61 --- /dev/null +++ b/global/common/modules/font.nix @@ -0,0 +1,36 @@ +{ pkgs, lib, ... }: let + name = { + type = lib.types.str; + example = "Terminess Nerd Font"; + }; + size = { + type = with lib.types; nullOr int; + default = null; + }; + packages = { + type = with lib.types; listOf path; + example = "[ pkgs.terminus-nerdfont ]"; + }; +in { + options.global.font = { + sans = { + size = lib.mkOption size; + name = lib.mkOption (name // { + default = "DeepMind Sans"; + }); + packages = lib.mkOption (packages // { + default = [ pkgs.dm-sans ]; + }); + }; + + monospace = { + size = lib.mkOption size; + name = lib.mkOption (name // { + default = "Terminess Nerd Font"; + }); + packages = lib.mkOption (packages // { + default = [ pkgs.terminus-nerdfont ]; + }); + }; + }; +} diff --git a/global/common/modules/userdata.nix b/global/common/modules/userdata.nix new file mode 100644 index 0000000..d591920 --- /dev/null +++ b/global/common/modules/userdata.nix @@ -0,0 +1,26 @@ +{ config, lib, ... }: let + cfg = config.global.userdata; +in { + options.global.userdata = { + name = lib.mkOption { + type = lib.types.str; + default = "sinan"; + description = "Owner's username"; + }; + nameFq = lib.mkOption { + type = lib.types.str; + default = "sinanmohd"; + description = "Owner's fully qualified username"; + }; + domain = lib.mkOption { + type = lib.types.str; + default = "sinanmohd.com"; + description = "Owner's domain"; + }; + email = lib.mkOption { + type = lib.types.str; + default = "${cfg.name}@${cfg.domain}"; + description = "Owner's email"; + }; + }; +} |