🖖 Features: - Master 'engage' script for one-command setup - 120+ CLI tools via Homebrew - 40+ Applications (casks + MAS apps) - Complete macOS system configuration - Security hardening and privacy settings - Obsidian knowledge vault setup - Comprehensive backup strategies - Automated symlink management Live long and prosper\! 🚀 🤖 Generated with Claude Code (https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
macOS System Configuration
This directory contains scripts to configure macOS system preferences, security settings, and keyboard shortcuts.
Scripts Overview
Main Scripts
setup-macos.sh- Master script that runs all configurationsdefaults.sh- Complete system defaults (automatic)defaults-interactive.sh- Interactive system defaultssecurity.sh- Security and privacy settingskeyboard-shortcuts.sh- Custom keyboard shortcuts
Utility Scripts
backup-defaults.sh- Backup current settings before changes
Quick Start
Run the master setup script:
~/dotfiles/macos/setup-macos.sh
This will:
- Offer to backup current settings
- Let you choose how to apply defaults
- Configure security settings
- Set up keyboard shortcuts
Individual Scripts
System Defaults
# Interactive mode (recommended)
~/dotfiles/macos/defaults-interactive.sh
# Apply all at once
~/dotfiles/macos/defaults.sh
Security Settings
~/dotfiles/macos/security.sh
Backup Current Settings
~/dotfiles/macos/backup-defaults.sh
What Gets Configured
System Defaults
- General UI/UX: Save panels, auto-correct, smart quotes
- Keyboard: Key repeat, full keyboard access
- Trackpad: Tap to click, gestures
- Finder: Show extensions, path bar, status bar, search settings
- Dock: Position, size, animations, auto-hide
- Screen: Screenshots location/format, screen saver
- Safari: Developer tools, privacy, security
- Other apps: Mail, Terminal, Activity Monitor, TextEdit
Security Settings
- Screen lock immediately after sleep
- Firewall enabled with stealth mode
- Disable analytics and tracking
- Secure Safari settings
- Disable unnecessary services
- Gatekeeper enabled
- FileVault check
Keyboard Shortcuts
- Mission Control shortcuts
- App-specific shortcuts
- Custom service shortcuts
Customization
Modifying Defaults
Edit the scripts to match your preferences:
- Dock position: Change
orientationvalue - Key repeat speed: Adjust
KeyRepeatandInitialKeyRepeat - Screenshot location: Modify
screencapture location
Adding New Settings
- Find the setting:
defaults read domain - Test the change:
defaults write domain key value - Add to appropriate script
- Test with a backup
Useful Commands
# Find current setting
defaults read com.apple.dock orientation
# Test a change
defaults write com.apple.dock tilesize -int 64
# Reset to default
defaults delete com.apple.dock tilesize
# List all domains
defaults domains
# Read entire domain
defaults read com.apple.dock
Manual Configuration Still Required
Some settings must be configured manually:
-
System Preferences > Security & Privacy
- FileVault encryption
- App permissions (Camera, Microphone, etc.)
- Privacy settings
-
System Preferences > Keyboard > Shortcuts
- Some Mission Control shortcuts
- Service shortcuts
-
App-specific settings
- Third-party app preferences
- Login items
Troubleshooting
Settings Not Taking Effect
- Some changes require logout/restart
- Try:
killall SystemUIServerorkillall Dock - Clear preferences cache:
killall cfprefsd
Backing Out Changes
- Restore from backup: Run backup script first
- Reset specific domains:
defaults delete domain - System reset: System Preferences > General > Reset
Finding Setting Names
- Use GUI first, then check
defaults domains - Monitor changes:
defaults read domain > before.txt, make change,defaults read domain > after.txt,diff before.txt after.txt