β New script: sd-world: perform a full system upgrade
β’ 176 words β’ 1 min β’ updated
Whenever I want to upgrade any one of my systems, I run
sd-world.
Now the script has evolved, being hosted in pancake:
- it handles interruptions (Ctrl-C) more efficiently (it was my biggest gripe)
- the output is more user-friendly
Preview:
% ./sd_world.sh
Starting system upgrade...
Detected macOS system
Upgrading Homebrew...
==> Updating Homebrew...
Already up-to-date.
==> Upgrading 2 outdated packages:
node@18, python@3.11
==> Upgrading node@18 18.17.0 -> 18.19.0
==> Upgrading python@3.11 3.11.6 -> 3.11.7
β Homebrew upgrade completed successfully
Upgrading Mac App Store...
β Mac App Store upgrade completed successfully
Upgrading System Updates...
Software Update Tool
Finding available software
No new software available.
β System Updates upgrade completed successfully
Upgrading Claude Code...
Checking for updates...
claude-code v0.8.2 β v0.8.3 (latest)
Updated successfully! π
β Claude Code upgrade completed successfully
Upgrading myrepos...
mr update: /Users/username/repos/project1
From github.com:user/project1
abc1234..def5678 main -> origin/main
Updating abc1234..def5678
Fast-forward
README.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
mr update: finished (1 ok)
β myrepos upgrade completed successfully
Upgrade Summary:
Successfully upgraded: 5/5 package managers
All package managers upgraded successfully!Backlinks
- Topgrade (Mar 12, 2026)