mirror of
https://github.com/prdlk/dotfiles.git
synced 2026-11-02 11:32:42 +00:00
Keep starship prompt (omp migration rejected). cpy/pst aliases branch on wl-copy vs pbcopy; functions use the aliases. BROWSER/CHROME_EXECUTABLE guarded on binary existence. auto-Niri.fish and cp-appid.fish are linux-only (gated in .chezmoiignore). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
6.8 KiB
6.8 KiB
dotstate → chezmoi Migration Notes (Pass 1)
Source of truth for content: live $HOME on rogz (dotstate storage snapshot may be stale).
dotstate repo: ~/.config/dotstate/storage (profiles: Noctalia, Inir, Rogz, Vertical-Rogz_AppleStudio, CachyOS).
Live ~/.config entries were symlinks into dotstate storage; content copied with chezmoi add --follow.
Disposition table — every dotstate synced path
| Path | Profiles | Decision | Notes |
|---|---|---|---|
.config/fish |
Noctalia, Inir, Rogz | universal | Live (Rogz storage) is the superset and canonical in practice; Noctalia conf.d only had atuin.env, deno, inir-env, rustup — stale subset. secrets.fish → secret (age). Delta: Noctalia carries deno.fish (source ~/.deno/env.fish) absent from live — folded into universal conf.d with existence guard |
.config/nvim (+init.lua) |
Noctalia | universal | AstroNvim; static, no templating |
.config/tmux/tmux.conf |
Vertical-Rogz_AppleStudio | universal | Only dotstate source for tmux; verified against live. No vertical-display geometry found in it — nothing to gate |
.config/kitty |
Noctalia, Inir, Rogz | universal | Live wins (has goliath.conf, newer kitty.conf); Noctalia-only koda-*.conf, kitty.conf.old, get_layout.py dropped as stale |
.config/yazi |
Noctalia | universal | Opener rules OS-branched (xdg-open vs open); plugins/, flavors/ stay unmanaged (package-managed by ya pack) |
.config/lazygit |
Noctalia | universal | Static |
.gitconfig |
all | universal | Templated: email/name from chezmoi data. Live (simpler) wins; Noctalia extras (sonr.org credential helper, coderabbit machineId, safe.directory) are machine-state — dropped |
.config/starship.toml |
Noctalia, Inir, Rogz | universal | Kept (user decision; omp migration rejected). Noctalia auto-regenerates the palette block in place on linux — acceptable drift |
.config/niri |
Noctalia, Inir, Rogz | arch-gated | config.d/ split preserved via exact_ dir |
.config/noctalia |
Noctalia, Rogz, Vertical | arch-gated | Live symlink points at Vertical storage (active profile) — live wins |
.config/niri-dynamic-workspaces |
Inir, Rogz | arch-gated | Single config.toml, part of niri stack |
.config/fontconfig |
Inir, Rogz | arch-gated | |
.config/mimeapps.list |
Noctalia, Inir, Rogz | arch-gated | |
.config/systemd/user |
Noctalia, Inir, Rogz | arch-gated | Unit files only; *.wants/ enable-state not managed. Enable script only handles session-critical units; personal automation (brain-lens, omp-loop, rclone, hermes, voxtype) ships as files, enabled manually per-machine |
.local/bins |
Noctalia | arch-gated | Contains only niri-launch (referenced by niri binds) → dot_local/bin/executable_niri-launch |
.bash_profile .bashrc .bash_logout |
all | drop | Fish is the shell; bash files are distro defaults |
.zshrc .zprofile .zshenv .p10k.zsh |
Noctalia, Inir, Rogz | drop | zsh managed by cachyos-zsh-config package |
.profile |
Noctalia | drop | Distro default |
.ssh/known_hosts |
all | drop | Machine state, not config |
.config/alacritty |
Noctalia, Inir, Rogz | drop | kitty is the terminal (niri spawns kitty only); alacritty not live |
.config/foot |
Inir, Rogz | drop | Same — not live |
.config/ghostty |
Noctalia | defer | Installed but not primary; revisit pass 2 |
.config/glance |
Noctalia | defer | |
.config/mods |
Noctalia, Rogz | defer | mods config carries API endpoint config; audit before adding |
.config/opencode/* |
Noctalia | defer | antigravity-accounts.json is account state — secret risk; whole tree deferred |
.config/vicinae |
Noctalia, Vertical | defer | Arch desktop launcher; pass 2 |
.config/television |
Vertical | defer | Vertical profile deferred |
.config/mango |
Vertical | defer | Vertical profile deferred |
.config/illogical-impulse |
Inir | defer | Inir profile deferred (future .role value) |
.agents/skills |
Inir, Rogz | defer | Agent tooling, pass 2 |
.omp/agent/config.yml |
Vertical | defer | Not oh-my-posh — separate agent tool; deferred |
.npmrc |
Inir, Rogz | secret | Contains _auth registry token — deferred from pass 1, goes encrypted if needed later |
.yarnrc |
Noctalia | defer | |
Pictures/Wallpapers/wallhaven-k81776.jpg |
Inir, Rogz | defer | Binary asset; not config |
.ssh/known_hosts |
all | drop | (dup, listed once above) |
Universal additions not tracked by dotstate (from live $HOME)
| Path | Decision | Notes |
|---|---|---|
.config/lazydocker |
universal | |
.config/gh/config.yml |
universal | hosts.yml excluded — contains OAuth token (secret) |
| gh extensions | universal | Declarative list in packages.yaml (shared.gh_extensions): clean-branches, commit, dash, notify |
.claude/ subset |
universal | settings.json, CLAUDE.md, commands/, hooks/, skills/ only. Never .credentials.json, history.jsonl, projects/, sessions/, caches |
.ssh/config |
universal | private_dot_ssh/config, mode 0600 |
Decisions
- starship stays: the migration plan called for porting starship → oh-my-posh; user rejected this during pass 1.
starship.tomlships as universal, fish keepsstarship init fish+ transient prompt. oh-my-posh is not installed and not managed. - Terminal: kitty only in pass 1. foot/alacritty configs exist in dotstate but nothing live references them.
- Rogz vs Noctalia: live machine is Rogz-backed for fish/niri/gitconfig; Noctalia storage was stale for every diverging path inspected (fish conf.d subset, older kitty.conf, gitconfig with dead credential helpers). Pass 1 content = live. Noctalia-only artifacts worth revisiting:
kitty/koda-{dark,light}.confthemes,fish/conf.d/deno.fish(folded in). - Inir / Vertical-Rogz_AppleStudio / CachyOS: deferred entirely (except tmux.conf, claimed above). Future
.rolevalues. - systemd user units: unit files managed, enable-state not (except session-critical via
run_oncescript). - Compiled tools in
~/.local/bin: never vendored; installed viapackages.yaml. Only hand-written scripts ship indot_local/bin/.
Secrets audit results
fish/conf.d/secrets.fish: live API keys (OpenAI, Groq, GitLab PAT, Linear, Tavily, etc.) →encrypted_secrets.fish.agevia age. Key at~/.config/chezmoi/key.txt, distributed manually.gh/hosts.yml:oauth_token→ excluded from repo (gh re-auths per machine viagh auth login)..npmrc:_authtoken → deferred, not added.opencode/antigravity-accounts.json: account state → deferred, not added.- Full grep for
sk-,ghp_,glpat-,Bearer,token,key =run across all added content before commit; see secrets-audit issue.