Files
dotfiles/macos
David F GliddenandClaude 0838f1cf8c Initial commit: Complete macOS dotfiles system
🖖 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>
2025-07-27 13:17:01 +02:00
..

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 configurations
  • defaults.sh - Complete system defaults (automatic)
  • defaults-interactive.sh - Interactive system defaults
  • security.sh - Security and privacy settings
  • keyboard-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:

  1. Offer to backup current settings
  2. Let you choose how to apply defaults
  3. Configure security settings
  4. 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 orientation value
  • Key repeat speed: Adjust KeyRepeat and InitialKeyRepeat
  • Screenshot location: Modify screencapture location

Adding New Settings

  1. Find the setting: defaults read domain
  2. Test the change: defaults write domain key value
  3. Add to appropriate script
  4. 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:

  1. System Preferences > Security & Privacy

    • FileVault encryption
    • App permissions (Camera, Microphone, etc.)
    • Privacy settings
  2. System Preferences > Keyboard > Shortcuts

    • Some Mission Control shortcuts
    • Service shortcuts
  3. App-specific settings

    • Third-party app preferences
    • Login items

Troubleshooting

Settings Not Taking Effect

  • Some changes require logout/restart
  • Try: killall SystemUIServer or killall 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

References