🖖 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>
2.7 KiB
2.7 KiB
Application Configuration Management
This document explains how application configurations are managed in this dotfiles repository.
Strategy Overview
We use a hybrid approach:
- Direct file management for simple configs (.npmrc, .ssh/config)
- Custom backup scripts for complex macOS apps (LaunchBar, Hazel, Bartender)
- Mackup as an optional automated solution
Configuration Locations
Simple Configs (Symlinked)
.npmrc→~/dotfiles/.npmrc.ssh/config→~/dotfiles/ssh/config(template)
macOS Application Configs
- LaunchBar:
~/Library/Application Support/LaunchBar/ - Hazel:
~/Library/Application Support/Hazel/ - Bartender:
~/Library/Preferences/com.surteesstudios.Bartender.plist
Backup Methods
Method 1: Manual Script (Recommended)
# Run the backup script
~/dotfiles/macos-apps/backup-app-configs.sh
This script:
- Backs up LaunchBar configuration and custom actions
- Exports Hazel rules database
- Saves Bartender preferences
- Converts plists to readable XML format
Method 2: Mackup (Automated)
# First time setup
mackup backup
# On new machine
mackup restore
Mackup advantages:
- Automatic detection of supported apps
- Creates symlinks for live sync
- Supports 300+ applications
SSH Config
We maintain a template at ~/dotfiles/ssh/config.example with:
- Sanitized host configurations
- Best practice settings
- Examples for common scenarios
Never commit:
- Private keys
- Actual hostnames/IPs
- Usernames
- Sensitive paths
NPM Configuration
The .npmrc file includes:
- Author defaults for
npm init - Performance optimizations
- Security settings
- Registry configuration (if needed)
Restore Process
Quick Restore
-
Install applications via Homebrew:
brew bundle install -
Restore configs:
# NPM ln -sf ~/dotfiles/.npmrc ~/.npmrc # SSH (edit first!) cp ~/dotfiles/ssh/config.example ~/.ssh/config chmod 600 ~/.ssh/config # macOS apps ~/dotfiles/macos-apps/restore-app-configs.sh
Using Mackup
# After installing apps
mackup restore
Adding New Applications
To add config management for a new app:
-
Find config location:
find ~/Library -name "*AppName*" -type d -
Add to backup script or configure Mackup
-
Document the process here
Troubleshooting
- Permissions issues: Some apps need to be quit before restoring
- License/authorization: Most apps need re-activation after restore
- Preferences cache: May need to
killall cfprefsdafter restoring plists - Mackup conflicts: Check
~/.mackup/for conflicting symlinks