feat(git): add enable option

This commit is contained in:
2026-05-22 10:57:51 +02:00
parent 1255083ad6
commit 6c9bbc27a0
5 changed files with 31 additions and 23 deletions

View File

@@ -56,6 +56,7 @@
browser.primary = "librewolf"; browser.primary = "librewolf";
cloud.hetzner.enable = true; cloud.hetzner.enable = true;
comms.signal.enable = true; comms.signal.enable = true;
git.enable = true;
git.github.enable = true; git.github.enable = true;
shell = { shell = {
enable = true; enable = true;

View File

@@ -52,6 +52,7 @@
browser.primary = "librewolf"; browser.primary = "librewolf";
cloud.hetzner.enable = true; cloud.hetzner.enable = true;
comms.signal.enable = true; comms.signal.enable = true;
git.enable = true;
git.github.enable = true; git.github.enable = true;
shell = { shell = {
enable = true; enable = true;

View File

@@ -94,8 +94,11 @@
k8s.enable = true; k8s.enable = true;
shell.enable = true; shell.enable = true;
my.stylix.enable = true; my.stylix.enable = true;
git.github.enable = true; git = {
git.gitlab.enable = true; enable = true;
github.enable = true;
gitlab.enable = true;
};
secrets.enable = true; secrets.enable = true;
secrets.vault.enable = true; secrets.vault.enable = true;
bruno.enable = true; bruno.enable = true;

View File

@@ -8,11 +8,12 @@
{ {
options.git = { options.git = {
enable = lib.mkEnableOption "git";
github.enable = lib.mkEnableOption "Github CLI"; github.enable = lib.mkEnableOption "Github CLI";
gitlab.enable = lib.mkEnableOption "Gitlab CLI"; gitlab.enable = lib.mkEnableOption "Gitlab CLI";
}; };
config = { config = lib.mkIf config.git.enable {
programs.git.enable = true; programs.git.enable = true;
home.file = { home.file = {
".gitconfig".source = dotsPath + "/.gitconfig"; ".gitconfig".source = dotsPath + "/.gitconfig";

View File

@@ -1,29 +1,31 @@
{ { lib, config, ... }:
config,
...
}:
let let
cfg = config.git;
inherit (config.host) username; inherit (config.host) username;
owner = config.users.users.${username}.name; owner = config.users.users.${username}.name;
in in
{ {
config.sops.templates = { options.git.enable = lib.mkEnableOption "git";
".gitconfig.email" = {
inherit owner; config = lib.mkIf cfg.enable {
path = "/home/${username}/.gitconfig.email"; sops.templates = {
content = '' ".gitconfig.email" = {
[user] inherit owner;
email = ${config.sops.placeholder."email/personal"} path = "/home/${username}/.gitconfig.email";
''; content = ''
}; [user]
".gitconfig.work.email" = { email = ${config.sops.placeholder."email/personal"}
inherit owner; '';
path = "/home/${username}/.gitconfig.work.email"; };
content = '' ".gitconfig.work.email" = {
[user] inherit owner;
email = ${config.sops.placeholder."email/work"} path = "/home/${username}/.gitconfig.work.email";
''; content = ''
[user]
email = ${config.sops.placeholder."email/work"}
'';
};
}; };
}; };
} }