nix: collapse tools into single package

This commit is contained in:
DJTBOT 2026-01-07 15:54:02 +01:00
parent 2aaf9b47a6
commit b66501789e
5 changed files with 11 additions and 17 deletions

View File

@ -677,6 +677,7 @@ home-manager switch --rollback # revert
| --- | --- |
| `clawdbot` (default) | macOS: gateway + app + tools · Linux: gateway + tools (headless) |
| `clawdbot-gateway` | Gateway CLI only |
| `clawdbot-tools` | Toolchain bundle (gateway helpers + CLIs) |
| `clawdbot-app` | macOS app only |
| `clawdbot-docker` | OCI image tarball (gateway + tools) |
| `clawdbot-docker-stream` | OCI image stream (fast load) |

View File

@ -66,8 +66,7 @@ Nongoals:
- `packages.<system>.clawdbot` (default batteriesincluded bundle)
- `packages.<system>.clawdbot-gateway`
- `packages.<system>.clawdbot-app`
- `packages.<system>.clawdbot-tools-base`
- `packages.<system>.clawdbot-tools-extended`
- `packages.<system>.clawdbot-tools`
- `homeManagerModules.clawdbot`
- `darwinModules.clawdbot` (if needed)
@ -135,4 +134,3 @@ This RFC is complete when:
- App DMG pinned to `v2.0.0-beta4`.
- Batteriesincluded package output is wired in the flake.
- README is the single onboarding source.

View File

@ -7,7 +7,7 @@ let
dontUnpack = true;
installPhase = "${../scripts/docker-entrypoint-install.sh}";
};
toolsBase = pkgs.clawdbot-tools-base;
toolsBase = pkgs.clawdbot-tools;
baseContents = [
pkgs.bash
pkgs.coreutils

View File

@ -13,22 +13,17 @@ let
pnpmDepsHash = sourceInfo.pnpmDepsHash or null;
};
clawdbotApp = if isDarwin then pkgs.callPackage ./clawdbot-app.nix { } else null;
clawdbotToolsBase = pkgs.buildEnv {
name = "clawdbot-tools-base";
paths = toolSets.base;
};
clawdbotToolsExtended = pkgs.buildEnv {
name = "clawdbot-tools-extended";
paths = toolSets.extended;
clawdbotTools = pkgs.buildEnv {
name = "clawdbot-tools";
paths = toolSets.tools;
};
clawdbotBundle = pkgs.callPackage ./clawdbot-batteries.nix {
clawdbot-gateway = clawdbotGateway;
clawdbot-app = clawdbotApp;
extendedTools = toolSets.base;
extendedTools = toolSets.tools;
};
in {
clawdbot-gateway = clawdbotGateway;
clawdbot = clawdbotBundle;
clawdbot-tools-base = clawdbotToolsBase;
clawdbot-tools-extended = clawdbotToolsExtended;
clawdbot-tools = clawdbotTools;
} // (if isDarwin then { clawdbot-app = clawdbotApp; } else {})

View File

@ -25,7 +25,7 @@ let
"ripgrep"
];
extendedNames = baseNames ++ [
extraNames = [
"go"
"uv"
"openai-whisper"
@ -48,8 +48,8 @@ let
"qmd"
"nano-pdf"
];
toolNames = baseNames ++ extraNames;
in {
base = ensure baseNames;
extended = ensure extendedNames;
tools = ensure toolNames;
}