fix: dotfiles audit β symlink bug, remove opencode/rust, add neotest, update docs - #1
Merged
Merged
Conversation
β¦Makefile - Remove broken tmux plugin gitlinks (.config/tmux/plugins/*) β already gitignored, TPM handles runtime install; .gitmodules had no entries for them - Remove dead sort-mail.sh symlink β points to email-manager repo which may not be present - Set HOMEBREW_PREFIX explicitly in .zshenv so zsh-syntax-highlighting and fzf bindings load reliably on a fresh macOS install - Fix GREP_COLOR β GREP_COLORS (deprecated variable) - Remove duplicate HISTFILE export from .zshrc β .zshenv is canonical - Rename git() "switch" case β "gh-switch" to avoid colliding with `git switch` - Fix `while read p` β `while IFS= read -r p` in aws profiles - Replace GNU-only `realpath --relative-to` in Makefile with pure shell string op - Add test-opencode to .PHONY in Makefile - CI: add .config/common/aliases to path filter and shellcheck step - CI: remove `|| true` from zsh config shellcheck (failures were silently swallowed) - CI: add tests job that runs make test-opencode on shell changes Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
β¦, dead code
- Fix HOMEBREW_PREFIX to use uname -m check (arm64 vs x86_64) β was hardcoded to
/opt/homebrew which silently breaks on Intel Macs
- Add shellcheck disable directives so CI lint steps actually pass:
- .zshrc: SC1009/SC1036/SC1072/SC1073 (zsh extended glob qualifier)
- aliases: SC2154 ($os from .zshenv), SC2162 (zsh read syntax), SC2139 (intentional
expand-at-definition aliases), SC2012 (ls -t for mtime sort)
- test-opencode.sh: SC1071 (zsh shebang)
- lock.sh: SC2034 (colour vars kept for reference)
- Fix SC2046 in polybar-xautolock-status.sh and xautolock-start.sh: quote $(<pidFile)
- Fix SC2164 in git clone alias: cd || return 1
- Remove dead _wt_pick_add() function (was never called after wt() refactor)
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
docs/tools.md covers every tool, CLI, LSP, formatter, linter, debug adapter, Neovim plugin, and binary in the repo β with identified gaps (missing Go debugger, unwired C++ formatter, no kubectl/terraform/act install targets, no test runner, etc). Linked from README. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
β¦neovim bump Makefile: - Add install-terraform, install-kubectl, install-ripgrep, install-act, install-ansible-lint β all wired into install + setup aggregates Aliases: - Add k=kubectl shorthand Neovim submodule bumped to include: - delve + nvim-dap-go (Go debugger) - clang_format wired in conform (C/C++) - psscriptanalyzer in mason + lint (PowerShell) - yamllint in mason + lint (generic YAML) - rust_analyzer with clippy Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
β¦wns them Both are in mason.lua ensure_installed and auto-install when Neovim first opens. Mason's bin dir is on PATH via .zshenv so they're available system-wide. Keeping Makefile install targets for these was redundant duplication. Added comments to the install/setup aggregates explaining the intentional omission. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Documents the Makefile/Mason boundary, what belongs here vs not, Neovim submodule workflow, shell file responsibilities, and Makefile conventions. Ensures future Claude Code sessions stay aligned with the simplicity-first design goal. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Jordan Cleal <jordan.cleal@gmail.com>
Co-Authored-By: Jordan Cleal <jordan.cleal@gmail.com>
β¦surrect-claude scripts + update docs - Makefile: remove redundant $(PWD)/ prefix in configure-common loop β $$f is already absolute, so $(PWD)/$$f produced broken double-path symlinks written into the repo dir - Remove ~/bin -> repo symlink; ~/bin is now a real directory so configure-common writes symlinks there correctly without polluting the repo working tree - Commit resurrect-claude.sh + its two test scripts β load-bearing, referenced by tmux.conf resurrect hook and popup keybind A - docs/tools.md: add kubectl + ripgrep to their respective tables, add Custom Shell Scripts section documenting all bin/*.sh scripts, record fixes in gap analysis Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- Add @resurrect-processes inline strategy for claude and opencode - Add post-restore hook calling resurrect-claude.sh - Bind Ctrl+B A to AI session inspector popup Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Rust is not used on this machine. Removes rust-analyzer, rustfmt, rust_analyzer LSP, Rust DAP config, and Rust treesitter grammar. Also removes Rust from docs/tools.md. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Remove opencode install/configure Makefile targets, resurrect-claude.sh AI_PROCS entry, tmux.conf resurrect-processes entry, Neovim toggleterm integration, and all docs references. Also bump neovim submodule. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Bump neovim submodule, update tools.md: add neotest to Language-Specific table, fix toggleterm description, move neotest gap to Previously fixed. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
configure-commondouble-path symlink bug β$(PWD)/$$fwhere$$fis already absolute produced broken symlinks written back into the repo dir;~/binconverted from a repo symlink to a real directoryresurrect-claude.shand its two test scripts β load-bearing (called bytmux.confresurrect hook andCtrl+B Apopup), were untrackedtmux.confresurrect hook and keybind forresurrect-claude.shrust-analyzer,rustfmt, LSP config, DAP filetype, and treesitter grammarconfigure-iterm2β symlinks from iTerm2 app bundle into~/bin/on fresh installsdocs/tools.mdβ add kubectl, ripgrep, custom bin scripts section, neotest; close all open gap analysis itemsTest plan
make configure-commonβ verify~/bin/symlinks resolve correctly, no broken links<leader>ttruns nearest testCtrl+B Ain tmux opens the resurrect-claude popupterraform versionworksπ€ Generated with Claude Code