feat(toolkit): bundle the baseline interactive toolset

Add modules.toolkit, an aggregator that enables fish, tmux, nvim, git,
and direnv as one unit, and makes fish the login shell, so any Host or
Guest shell feels identical. Each member is set via mkDefault, so a Host
can still override any single piece while the one flag brings up the
whole bundle.

neogaia now enables the bundle as a single line in place of its five
individual enables and its explicit default-shell line, keeping the Host
a flat checklist.

Also lands the domain model, ADR 0006, and the guests spec: the toolkit
is the first piece of the wider guests work, and the guest-base will
auto-enable this bundle.
This commit was merged in pull request #27.
This commit is contained in:
2026-07-25 12:15:19 -04:00
parent 582800d548
commit 8cd59cb292
6 changed files with 240 additions and 8 deletions

View File

@@ -42,14 +42,8 @@
# A machine the operator works from, so it admits the workstation keys alone.
modules.ssh.authorizedKeys = config.modules.ssh.workstationKeys;
# fish as the login shell.
modules.fish.enable = true;
modules.fish.defaultShell = true;
modules.toolkit.enable = true;
modules.git.enable = true;
modules.direnv.enable = true;
modules.tmux.enable = true;
modules.nvim.enable = true;
modules.agents.claude-code.enable = true;
modules.agents.tools.gitea-axi.enable = true;
modules.agents.pi.enable = true;