refactor(ai-tools): move options into 'default.nix'

This commit is contained in:
2026-09-28 23:25:17 +02:00
parent 5b480bd0d6
commit 48f484cb85
5 changed files with 29 additions and 25 deletions
-2
View File
@@ -9,8 +9,6 @@ let
rtk-version = "0.18.1";
in
{
options.ai-tools.claude-code.enable = lib.mkEnableOption "claude code with rtk and ccline";
config = lib.mkIf cfg.enable {
programs.claude-code.enable = true;
+29
View File
@@ -1,4 +1,33 @@
{ lib, ... }:
let
skillType = lib.types.submodule {
options = {
owner = lib.mkOption { type = lib.types.str; };
repo = lib.mkOption { type = lib.types.str; };
rev = lib.mkOption { type = lib.types.str; };
hash = lib.mkOption { type = lib.types.str; };
skill = lib.mkOption { type = lib.types.str; };
};
};
in
{
options.ai-tools = {
claude-code = {
enable = lib.mkEnableOption "claude code with rtk and ccline";
skills = lib.mkOption {
type = lib.types.listOf skillType;
default = [ ];
};
};
opencode = {
enable = lib.mkEnableOption "opencode";
};
tirith = {
enable = lib.mkEnableOption "tirith";
};
};
imports = [
./claude-code.nix
./opencode.nix
-4
View File
@@ -8,10 +8,6 @@ let
cfg = config.ai-tools.opencode;
in
{
options.ai-tools.opencode = {
enable = lib.mkEnableOption "opencode";
};
config = lib.mkIf cfg.enable {
home.packages = [ pkgs.opencode ];
-15
View File
@@ -7,16 +7,6 @@
let
cfg = config.ai-tools.claude-code;
skillType = lib.types.submodule {
options = {
owner = lib.mkOption { type = lib.types.str; };
repo = lib.mkOption { type = lib.types.str; };
rev = lib.mkOption { type = lib.types.str; };
hash = lib.mkOption { type = lib.types.str; };
skill = lib.mkOption { type = lib.types.str; };
};
};
fetchSkill =
skill:
let
@@ -38,11 +28,6 @@ let
};
in
{
options.ai-tools.claude-code.skills = lib.mkOption {
type = lib.types.listOf skillType;
default = [ ];
};
config = lib.mkIf cfg.enable {
home.file = builtins.listToAttrs (map fetchSkill cfg.skills);
};
-4
View File
@@ -8,10 +8,6 @@ let
cfg = config.ai-tools.tirith;
in
{
options.ai-tools.tirith = {
enable = lib.mkEnableOption "tirith";
};
config = lib.mkMerge [
(lib.mkIf cfg.enable {
home.packages = [ pkgs.tirith ];