CR: Tmuxinator Nvim Config Migration to domus-nvim
Change Summary
Change ID |
CR-2026-04-01-tmuxinator-nvim-migration |
Type |
Configuration / Technical Debt |
Priority |
P3 - Standard |
Status |
Implemented |
Requested |
2026-04-01 |
Owner |
Evan Rosado |
Risk Level |
Low |
Rollback Time |
< 2 minutes (git checkout) |
Systems Affected |
tmuxinator ( |
Background
The Neovim configuration was migrated from instrumentum-nvim (symlinked at ~/.config/nvim) to domus-nvim (symlinked at ~/.config/nvim-domus), launched via NVIM_APPNAME=nvim-domus nvim (alias v).
Three tmuxinator session files still referenced the old paths and old plugin repos that no longer exist:
-
cfg-nvim-lsp.yml— rooted at~/.config/nvim(old instrumentum-nvim) -
train-nvim.yml— rooted at~/.config/nvimwith~/.local/share/nvim/lazyplugin path -
test-nvim-plugins.yml— referencedmodulus-nvim,modulus-fidus-nvim,nvim-core(all deleted)
Additionally, cfg-dotfiles.yml displayed ~/.config/nvim in its overview echo.
Current State vs Target State
| Component | Current (Before) | Target (After) |
|---|---|---|
cfg-nvim-lsp.yml root |
|
|
train-nvim.yml root |
|
|
train-nvim.yml plugin path |
|
|
test-nvim-plugins.yml modulus window |
|
|
test-nvim-plugins.yml docs window |
|
|
All nvim pane commands |
|
|
cfg-nvim-lsp.yml plugin path |
|
|
cfg-dotfiles.yml overview |
|
|
Scope
In Scope
-
Update root paths in 3 nvim-focused tmuxinator configs
-
Replace all bare
nvimcommands withNVIM_APPNAME=nvim-domus nvim -
Remove references to deleted repos (
modulus-nvim,modulus-fidus-nvim,nvim-core) -
Update
lua/plugins/tolua/domus/plugins(new namespace) -
Update lazy plugin data path from
nvimtonvim-domus -
Fix cosmetic reference in
cfg-dotfiles.yml -
Add
configwindow tocfg-nvim-lsp.ymlforlua/domus/config
Out of Scope
-
Other tmuxinator files that use
nvimas an editor command (these open nvim in project dirs, not edit nvim config) -
Removing dead symlinks at
~/.config/nvim-core,~/.config/nvim-fidus,~/.config/nvim-modulus -
Changing
~/.config/nvimsymlink from instrumentum-nvim to domus-nvim
Dead References Found
| Reference | Location | Status |
|---|---|---|
|
test-nvim-plugins.yml:37 |
Directory does not exist |
|
test-nvim-plugins.yml:19-20 |
Directory does not exist |
|
test-nvim-plugins.yml:22 |
Directory does not exist |
|
Dead symlink |
Target missing |
|
Dead symlink |
Target missing |
|
Dead symlink |
Target missing |
|
test-nvim-plugins.yml:73 |
Legacy Principia path |
Implementation Plan
Files Changed
| File | Changes |
|---|---|
|
Root → domus-nvim, all pane commands → |
|
Root → domus-nvim, all |
|
Removed modulus/fidus/nvim-core refs, |
|
Overview echo: |
Post-Change Verification
# Validate YAML syntax (yq requires jq on PATH)
for f in cfg-nvim-lsp train-nvim test-nvim-plugins; do
yq '.' ~/.config/tmuxinator/${f}.yml > /dev/null 2>&1 && echo "${f}: OK" || echo "${f}: FAIL"
done
# Verify no stale ~/.config/nvim references (expect: no output)
grep -n 'root:.*~/.config/nvim[^-]' ~/.config/tmuxinator/{cfg-nvim-lsp,train-nvim,test-nvim-plugins}.yml
# Verify no dead repo references (expect: no output)
grep -rn 'modulus-nvim\|modulus-fidus\|nvim-core' ~/.config/tmuxinator/{cfg-nvim-lsp,train-nvim,test-nvim-plugins}.yml
# Verify dead symlinks before removal
file ~/.config/nvim-core ~/.config/nvim-fidus ~/.config/nvim-modulus
# Remove dead symlinks (run after confirming broken above)
rm ~/.config/nvim-core ~/.config/nvim-fidus ~/.config/nvim-modulus
# Functional test - start each session
tmuxinator start CFG-NVIM-LSP
tmuxinator start TRAIN-NVIM
tmuxinator start TEST-NVIM-PLUGINS
Rollback Procedure
Trigger Conditions
Rollback if:
-
Tmuxinator sessions fail to start
-
Nvim opens with wrong config (not domus-nvim)
-
YAML parse errors
Rollback Steps
These files are not git-tracked in a single repo. Revert by restoring from the conversation diff or re-editing manually.
Alternatively, the old content can be restored by changing:
-
Root paths back to
~/.config/nvim -
NVIM_APPNAME=nvim-domus nvimback tonvim -
~/.local/share/nvim-domus/lazyback to~/.local/share/nvim/lazy
Risk Assessment
| Risk | Likelihood | Impact | Mitigation |
|---|---|---|---|
YAML syntax error prevents session start |
Low |
Low |
Validate with |
NVIM_APPNAME not recognized in pane |
Low |
Low |
Alias |
instrumentum-nvim still needed |
Low |
Low |
|
Recommended Follow-Up
Not in scope for this CR:
| Item | Description |
|---|---|
Remove dead symlinks |
|
Update |
Point to |
Audit other tmuxinator files |
Some files use bare |
Changelog
| Date | Author | Change |
|---|---|---|
2026-04-01 |
Evan Rosado |
CR created and implemented — migrated 3 tmuxinator configs from old nvim paths to domus-nvim |