diff --git a/home/hosts/andromache/default.nix b/home/hosts/andromache/default.nix index 2f47d90..dab67d8 100644 --- a/home/hosts/andromache/default.nix +++ b/home/hosts/andromache/default.nix @@ -37,8 +37,11 @@ devenv.enable = true; direnv.enable = true; gaming.enable = true; - git.enable = true; - git.github.enable = true; + git = { + enable = true; + gitea.enable = true; + github.enable = true; + }; k8s.k9s.enable = true; keepassxc.enable = true; music.enable = true; diff --git a/home/hosts/astyanax/default.nix b/home/hosts/astyanax/default.nix index 8bc4fe7..7f0a666 100644 --- a/home/hosts/astyanax/default.nix +++ b/home/hosts/astyanax/default.nix @@ -35,8 +35,11 @@ desktop.niri.enable = true; devenv.enable = true; direnv.enable = true; - git.enable = true; - git.github.enable = true; + git = { + enable = true; + gitea.enable = true; + github.enable = true; + }; k8s.k9s.enable = true; keepassxc.enable = true; music.enable = true; diff --git a/home/modules/git/default.nix b/home/modules/git/default.nix index 2743609..2f83e2b 100644 --- a/home/modules/git/default.nix +++ b/home/modules/git/default.nix @@ -1,17 +1,18 @@ { config, lib, - pkgs, dotsPath, ... }: { - options.git = { - enable = lib.mkEnableOption "git"; - github.enable = lib.mkEnableOption "Github CLI"; - gitlab.enable = lib.mkEnableOption "Gitlab CLI"; - }; + imports = [ + ./gitea.nix + ./github.nix + ./gitlab.nix + ]; + + options.git.enable = lib.mkEnableOption "git"; config = lib.mkIf config.git.enable { assertions = [ @@ -26,8 +27,5 @@ ".gitconfig.work".source = dotsPath + "/.gitconfig.work"; ".gitignore".source = dotsPath + "/.gitignore"; }; - - programs.gh.enable = config.git.github.enable; - home.packages = lib.optionals config.git.gitlab.enable [ pkgs.glab ]; }; } diff --git a/home/modules/git/gitea.nix b/home/modules/git/gitea.nix new file mode 100644 index 0000000..42cc694 --- /dev/null +++ b/home/modules/git/gitea.nix @@ -0,0 +1,17 @@ +{ + config, + lib, + pkgs, + ... +}: + +let + cfg = config.git.gitea; +in +{ + options.git.gitea.enable = lib.mkEnableOption "Gitea CLI"; + + config = lib.mkIf (config.git.enable && cfg.enable) { + home.packages = [ pkgs.tea ]; + }; +} diff --git a/home/modules/git/github.nix b/home/modules/git/github.nix new file mode 100644 index 0000000..b89bf8f --- /dev/null +++ b/home/modules/git/github.nix @@ -0,0 +1,16 @@ +{ + config, + lib, + ... +}: + +let + cfg = config.git.github; +in +{ + options.git.github.enable = lib.mkEnableOption "Github CLI"; + + config = lib.mkIf (config.git.enable && cfg.enable) { + programs.gh.enable = true; + }; +} diff --git a/home/modules/git/gitlab.nix b/home/modules/git/gitlab.nix new file mode 100644 index 0000000..68cbaac --- /dev/null +++ b/home/modules/git/gitlab.nix @@ -0,0 +1,17 @@ +{ + config, + lib, + pkgs, + ... +}: + +let + cfg = config.git.gitlab; +in +{ + options.git.gitlab.enable = lib.mkEnableOption "Gitlab CLI"; + + config = lib.mkIf (config.git.enable && cfg.enable) { + home.packages = [ pkgs.glab ]; + }; +}