Add macOS system preferences and fix package installations

- Fix claude-code package name (was incorrectly listed as claude-cli)
- Remove Node.js from installer (still required by gemini-cli)
- Add macOS system preferences configuration: auto-hide Dock, show hard disks, show all file extensions, auto-empty trash after 30 days
- Add Touch ID for sudo support (artginzburg/tap/sudo-touchid)
- Add automatic Homebrew updates (every 12 hours with upgrade and cleanup)
- Add new 's' option to configure system preferences separately

Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This commit is contained in:
Andreas Düren
2026-01-09 19:14:23 -06:00
parent bf255df1ff
commit a35b6baaa5
6 changed files with 116 additions and 17 deletions

38
bin/configure_macos Executable file
View File

@@ -0,0 +1,38 @@
#! /usr/bin/env bash
# Configures macOS system preferences.
set -o nounset
set -o errexit
set -o pipefail
IFS=$'\n\t'
printf "\n🔧 Configuring macOS system preferences...\n\n"
# Hide the Dock
printf " • Hiding Dock automatically...\n"
defaults write com.apple.dock autohide -bool true
# Show hard disks on desktop
printf " • Showing hard disks on desktop...\n"
defaults write com.apple.finder ShowHardDrivesOnDesktop -bool true
defaults write com.apple.finder ShowExternalHardDrivesOnDesktop -bool true
# Show user home folder in Finder sidebar
printf " • Adding user home folder to Finder sidebar...\n"
defaults write com.apple.sidebarlists systemitems -dict-add ShowUserHome -bool true
# Show all file extensions
printf " • Showing all file extensions...\n"
defaults write NSGlobalDomain AppleShowAllExtensions -bool true
# Remove items from trash after 30 days
printf " • Setting trash to empty after 30 days...\n"
defaults write com.apple.finder FXRemoveOldTrashItems -bool true
# Restart affected applications
printf "\n🔄 Restarting Finder and Dock to apply changes...\n"
killall Finder
killall Dock
printf "\n✅ macOS system preferences configured successfully!\n"