dotfiles/home/dot_config/metapac/groups/common.toml
Felipe M. 6eed7af69f
Manage Claude Code settings and status line
The status line script was already in the repo but inert: chezmoi ignores source
paths beginning with a dot, so home/.claude/ was never part of the source state.
Moved to home/dot_claude/ with the executable_ attribute, since the statusLine
command is invoked directly and a 0644 file cannot run.

Settings are merged rather than replaced. Claude Code writes to settings.json
itself -- autoMode.environment is regenerated per machine and /config edits land
there -- so a managed file would revert its work on every apply. The keys we
assert live in .chezmoitemplates/claude-settings.json as plain JSON; the
modify_ script folds them in with jq's recursive merge, leaving unmanaged keys
intact at any depth.

Fixed a locale bug in the status line: under LC_NUMERIC=es_ES, printf rendered
the cost as "1,23" and rejected the rate-limit percentage outright with
"invalid number" on stderr. It now forces LC_NUMERIC=C.

jq is a hard dependency of both the status line and the settings merge, so it
joins the common group.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
2026-08-18 14:36:44 +02:00

20 lines
414 B
TOML

arch = {
packages = [
"chezmoi",
"jq",
"1password",
"1password-cli",
{
name = "syncthing",
hooks = {
after_sync = [
"systemctl",
"--user",
"enable",
"--now",
"syncthing.service",
]
}
},
]
}