diff options
| author | Caroline Larimore <caroline@larimo.re> | 2025-02-07 05:31:59 -0800 |
|---|---|---|
| committer | Caroline Larimore <caroline@larimo.re> | 2025-04-14 18:58:47 -0700 |
| commit | eb16a7d8d9a90e88a1ec8d5c65d91db021b4e1e1 (patch) | |
| tree | 341c6c91c64f68c85210e8f20c493991ceaba3b7 /snowfall | |
| parent | 4e0d8adb6fb1bb143a15b2b0ed80a82c58fbb317 (diff) | |
migration: git config
Diffstat (limited to 'snowfall')
| -rw-r--r-- | snowfall/homes/x86_64-linux/c/default.nix | 13 | ||||
| -rw-r--r-- | snowfall/modules/home/suites/common/default.nix | 18 | ||||
| -rw-r--r-- | snowfall/modules/home/tools/git/default.nix | 46 |
3 files changed, 76 insertions, 1 deletions
diff --git a/snowfall/homes/x86_64-linux/c/default.nix b/snowfall/homes/x86_64-linux/c/default.nix index dabe340..f24778e 100644 --- a/snowfall/homes/x86_64-linux/c/default.nix +++ b/snowfall/homes/x86_64-linux/c/default.nix @@ -2,9 +2,20 @@ with lib; with lib.${namespace}; { cxl = { + suites = { + common.enable = true; + desktop.enable = true; + }; + desktop.background = "shinobu.png"; - suites.desktop.enable = true; + + tools.git = { + name = "Caroline Larimore"; + email = "caroline@larimo.re"; + key = "314C14641E707B68"; + }; }; home.stateVersion = "23.11"; } + diff --git a/snowfall/modules/home/suites/common/default.nix b/snowfall/modules/home/suites/common/default.nix new file mode 100644 index 0000000..c4620ee --- /dev/null +++ b/snowfall/modules/home/suites/common/default.nix @@ -0,0 +1,18 @@ +{ options, config, lib, namespace, ... }: + +with lib; with lib.${namespace}; let + cfg = config.${namespace}.suites.common; +in { + options.${namespace}.suites.common = with types; { + enable = mkEnableOption "common"; + }; + + config = mkIf cfg.enable { + cxl = { + tools = { + git.enable = true; + }; + }; + }; +} + diff --git a/snowfall/modules/home/tools/git/default.nix b/snowfall/modules/home/tools/git/default.nix new file mode 100644 index 0000000..8aebfd8 --- /dev/null +++ b/snowfall/modules/home/tools/git/default.nix @@ -0,0 +1,46 @@ +{ options, config, lib, namespace, ... }: + +with lib; with lib.${namespace}; let + cfg = config.${namespace}.tools.git; +in { + options.${namespace}.tools.git = with types; { + enable = mkEnableOption "git"; + + name = mkOption { + type = str; + }; + + email = mkOption { + type = str; + }; + + key = mkOption { + type = nullOr str; + }; + + sign = mkOption { + type = bool; + default = true; + }; + }; + + config = mkIf cfg.enable { + programs.git = { + enable = true; + + userName = cfg.name; + userEmail = cfg.email; + + signing = { + key = cfg.key; + signByDefault = cfg.sign; + }; + + ignores = [ + "*~" + "*.swp" + ]; + }; + }; +} + |