Dotfiles bug fixes and optimizations#47
Merged
Merged
Conversation
chmod -R 755 .. was recursively chmod-ing the parent directory (e.g. ~/projects) instead of the repo itself. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
killall exits non-zero when a process isn't running, aborting the script under set -e. Also removes the duplicate "Setting up OSX defaults" log that appeared twice. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…edundant node/npm - Replace hardcoded /Users/jimsegal/.zprofile with $HOME/.zprofile - Add RUNZSH=no to Oh My Zsh installer so it doesn't replace the current shell and halt script execution - Remove node and npm from brew PACKAGES; asdf manages nodejs (which includes npm), so the brew versions are redundant and can shadow asdf-managed binaries if PATH is ordered incorrectly Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…thon URL - Unquote $asdf_plugin in plugin-add so name and URL word-split into separate arguments (quoting passed the whole string as one arg) - Skip plugin-add if the plugin is already installed to avoid non-zero exit under set -e on re-runs - Add explicit URL for python plugin to match the pattern used for the other three plugins and remove reliance on asdf's shortname registry Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
…or cd - Skip cloning and installing Powerline fonts if they're already present - Use a subshell (cd fonts && ./install.sh) instead of cd/cd.. so a failure inside install.sh can't leave the script in the wrong directory Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
set -e alone doesn't catch failures in the left side of a pipeline (e.g. cmd1 | cmd2 succeeds even if cmd1 fails). pipefail surfaces those. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
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
chmod -R 755 ..→.infresh-setup.sh(was chmoding the parent directory)killallcalls inapple/main.shwith|| trueso they don't abort underset -e; remove duplicate log line/Users/jimsegal/.zprofile→$HOME/.zprofileinbrew/main.shRUNZSH=noto Oh My Zsh installer so it doesn't replace the shell and halt the scriptnode/npmfrom brew packages — asdf manages nodejs, brew versions shadow asdf shimsasdf/main.shplugin-add loop; make plugin installs idempotent; add explicit URL for python pluginzsh/main.sh; use subshell forcd fontsset -o pipefailto all scriptsfirefoxforbrave-browserin brew casksghCLI to brew packagesdocs/postgres-14-to-16-upgrade.md)Test plan
shellcheckpasses on all scripts (shellcheck apple/main.sh asdf/main.sh brew/main.sh zsh/main.sh fresh-setup.sh utils/main.sh)fresh-setup.shexits cleanly with no re-install failureswhich noderesolves to~/.asdf/shims/node, not/usr/local/bin/node🤖 Generated with Claude Code