Configuración inicial de Mac para desarrolladores: la primera hora después de desempacar
Una ruta de configuración única para Mac con Apple Silicon en macOS 14+. De cero a listo para git push en 30–60 minutos.
Un Mac nuevo puede estar listo para trabajo de desarrollo real en 30 a 60 minutos. Esta guía está dirigida a Apple Silicon + macOS 14 (Sonoma) o más reciente y te lleva al punto de «abrir un terminal y hacer git push» — nada más.
Las herramientas de productividad (Raycast/Rectangle), editores y runtimes de lenguajes están cubiertos por guías separadas. Aquí solo instalamos lo necesario para llegar a un terminal funcional.
TL;DR
- Cinco configuraciones del sistema macOS (repetición de teclas, trackpad, Finder, Dock, capturas de pantalla)
- Xcode Command Line Tools → Homebrew → siete herramientas CLI esenciales (una línea de
brew) - Configuración global de Git + clave SSH (ed25519) → registrar en GitHub →
gh auth login
Script de automatización (opcional)
Si prefieres ejecutar un único script en lugar de seguir cada paso — siempre descarga → verifica SHA-256 → inspecciona → ejecuta.
setup-mac.sh# 1. Descargar
curl -fsSL https://devalice.jaceclub.com/assets/mac/initial-setup/setup-mac.sh -o setup-mac.sh
# 2. Verificar SHA-256
shasum -a 256 setup-mac.sh
# esperado: d6b501f8fa1986d980c70525d1d4476bef444bc0dd2c62fb13f2e5a9128c63cf
# 3. Inspeccionar
less setup-mac.sh
# 4. Ejecutar
bash setup-mac.shEl script es idempotente — seguro para volver a ejecutar tras una completación parcial o un fallo. Automatiza las primeras seis secciones a continuación; el registro de la clave SSH en GitHub y gh auth login aún requieren confirmación manual en un navegador.
Si prefieres entender cada paso, recorre las secciones manuales a continuación.
Requisitos previos
- macOS 14 (Sonoma) o más reciente — macOS 12 (Monterey) y anteriores tienen problemas con algunos paquetes recientes de Homebrew
- Apple Silicon (M1–M4) recomendado — el Mac Intel funciona, pero el prefijo de Homebrew difiere (
/opt/homebrewvs/usr/local). Se indica en cada lugar. - Cuenta de administrador (
sudodisponible) - Conexión a internet y Apple ID con sesión iniciada
Usuarios de Mac Intel: recuerda que tu prefijo de Homebrew es
/usr/local. Por lo demás, esta guía aplica tal cual.
1. Configuración del sistema macOS — 5 minutos
Aplica vía Configuración del Sistema o comandos de terminal. Hazlo una vez y notarás la diferencia cada día.
1.1 Repetición de teclas: el cambio de mayor impacto
Los valores predeterminados son demasiado lentos y frenan la escritura sin que lo notes. Llévalos al máximo.
# Repetición de tecla (velocidad después de la primera repetición) — más rápido que el máximo del deslizador
defaults write -g KeyRepeat -int 1
# Repetición inicial de tecla (retraso antes de la primera repetición) — más corto que el mínimo del deslizador
defaults write -g InitialKeyRepeat -int 10Cierra sesión y vuelve a iniciarla para que esto surta efecto. (Un reinicio también funciona.)
1.2 Trackpad — clic con toque + arrastre con tres dedos
# Habilitar clic con toque
defaults write com.apple.AppleMultitouchTrackpad Clicking -bool true
defaults -currentHost write -g com.apple.mouse.tapBehavior -int 1El arrastre con tres dedos es solo GUI: Configuración del Sistema → Accesibilidad → Control del puntero → Opciones del trackpad → «Usar trackpad para arrastrar» → «Arrastre con tres dedos».
1.3 Finder — mostrar archivos ocultos, rutas completas, extensiones
defaults write com.apple.finder AppleShowAllFiles -bool true
defaults write com.apple.finder _FXShowPosixPathInTitle -bool true
defaults write -g AppleShowAllExtensions -bool true
killall Finder1.4 Dock — ocultamiento automático, sin animación
Recupera espacio en pantalla y haz que el Dock aparezca más rápido.
defaults write com.apple.dock autohide -bool true
defaults write com.apple.dock autohide-delay -float 0
defaults write com.apple.dock autohide-time-modifier -float 0.15
killall Dock1.5 Capturas de pantalla — mantén el escritorio limpio
La ubicación predeterminada es el escritorio, que se llena rápido. Cámbiala.
mkdir -p ~/Pictures/Screenshots
defaults write com.apple.screencapture location ~/Pictures/Screenshots
defaults write com.apple.screencapture type png
killall SystemUIServer2. Xcode Command Line Tools — 5 minutos
Homebrew, Git y los compiladores dependen de esto.
xcode-select --installAparece un diálogo GUI → Instalar → acepta la licencia → espera ~5 minutos (~100 MB).
Verificar
xcode-select -p
# /Library/Developer/CommandLineTools ← esperadoSi ya tienes Xcode.app completo, verás
/Applications/Xcode.app/Contents/Developer— también está bien.
3. Homebrew + CLIs esenciales — 10 minutos
3.1 Instalar Homebrew
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"Cuando termine, el instalador imprime instrucciones de PATH. Apple Silicon — añade estas dos líneas a ~/.zprofile:
echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zprofile
eval "$(/opt/homebrew/bin/brew shellenv)"⚠️ Mac Intel: usa
/usr/localen lugar de/opt/homebrew. Las instrucciones impresas del instalador son correctas para tu máquina — síguelas.
Verificar
brew --version
# Homebrew 4.x.x
brew doctor
# Your system is ready to brew.3.2 Siete CLIs esenciales en una línea
Las herramientas que usarás diariamente:
brew install git gh mise jq ripgrep fzf eza| Herramienta | Propósito |
|---|---|
git | Más reciente que el git incluido de Apple; funciona con LFS y plugins modernos |
gh | CLI de GitHub (PRs, clonar repos, autenticación) |
mise | Gestor polivalente de runtimes (sucesor de asdf) — Node, Python, Ruby, etc. |
jq | Análisis y transformación de JSON desde la CLI |
ripgrep | Reemplazo más rápido de grep que respeta .gitignore (rg) |
fzf | Buscador fuzzy interactivo (Ctrl-R para búsqueda en historial del shell) |
eza | Reemplazo moderno de ls (sucesor de exa) con estado git y vista de árbol |
Integración del shell de fzf (opcional)
Habilita la búsqueda en historial con Ctrl+R:
$(brew --prefix)/opt/fzf/install --all4. Configuración de Git + clave SSH — 10 minutos
4.1 Globales de Git
Usa el mismo email que tu cuenta de GitHub.
git config --global user.name "Your Name"
git config --global user.email "you@example.com"
git config --global init.defaultBranch main
git config --global pull.rebase false
git config --global core.editor "code --wait" # si usarás VS Codecode --wait requiere que VS Code esté instalado. Omítelo por ahora si aún no lo tienes.
4.2 Clave SSH — prefiere ed25519
Más corta y segura que RSA 4096.
ssh-keygen -t ed25519 -C "you@example.com"
# Enter file in which to save: [Enter] (usa el predeterminado ~/.ssh/id_ed25519)
# Enter passphrase: [opcional pero recomendado]Registra con ssh-agent y macOS Keychain:
eval "$(ssh-agent -s)"
cat <<'EOF' >> ~/.ssh/config
Host github.com
AddKeysToAgent yes
UseKeychain yes
IdentityFile ~/.ssh/id_ed25519
EOF
ssh-add --apple-use-keychain ~/.ssh/id_ed255194.3 Añadir la clave pública a GitHub + autenticarse
Copia la clave pública al portapapeles:
pbcopy < ~/.ssh/id_ed25519.pubAbre https://github.com/settings/ssh/new en un navegador → Título: «Mac (modelo)» → Clave: pega → Add SSH key.
Autentica gh para operaciones HTTPS (creación de PRs, etc.):
gh auth login
# GitHub.com → HTTPS → Y (auth Git with GitHub credentials) → Login with a web browserSe abrirá un navegador con un código de un solo uso. Ingrésalo, luego autoriza.
5. Verificar — ¿todo se instaló correctamente?
Comprobación de una sola vez:
echo "--- Versiones ---"
sw_vers | head -2
brew --version | head -1
git --version
gh --version | head -1
mise --version
echo "--- Auth de GitHub ---"
ssh -T git@github.com 2>&1 | head -1
gh auth status 2>&1 | head -3Salida esperada:
--- Versiones ---
ProductName: macOS
ProductVersion: 14.5
Homebrew 4.x.x
git version 2.46.x
gh version 2.x.x
mise 2026.x.x
--- Auth de GitHub ---
Hi <tu-usuario>! You've successfully authenticated, but GitHub does not provide shell access.
github.com
✓ Logged in to github.com account <tu-usuario>
Si todo se imprime correctamente, has terminado. Ya puedes ejecutar git clone <repo> y empezar a trabajar.
6. Solución de problemas
«command not found: brew» — PATH no cargado
Verifica que ~/.zprofile contenga eval "$(/opt/homebrew/bin/brew shellenv)". Abre un terminal nuevo e intenta de nuevo.
«xcrun: error: invalid active developer path»
Las Command Line Tools están rotas. Reinstálalas:
sudo rm -rf /Library/Developer/CommandLineTools
xcode-select --installInstalación de Homebrew «Permission denied»
Problema de permisos en /opt/homebrew o /usr/local. Ejecuta el comando chown que el instalador sugirió literalmente.
SSH «Permission denied (publickey)»
ssh-add -l # ¿está la clave en el agente?
ssh -vT git@github.com 2>&1 | tail -20 # salida verboseSi falta la clave, vuelve a ejecutar ssh-add --apple-use-keychain ~/.ssh/id_ed25519. Si sigue fallando, verifica que la clave esté registrada en GitHub.
git push sigue pidiendo contraseña
Clonaste por HTTPS. Cambia el remote a SSH:
git remote set-url origin git@github.com:<user>/<repo>.gitAlgunos paquetes de Homebrew fallan en Apple Silicon
Algunos paquetes antiguos solo se ejecutan bajo Rosetta 2:
softwareupdate --install-rosetta --agree-to-license
arch -x86_64 brew install <package>Qué sigue
Esta guía termina en «el terminal funciona de verdad». A continuación:
- Herramientas de desarrollo: editores, runtimes (Node, Python, Ruby) —
/mac/dev-toolchain - Herramientas de productividad: Raycast, Rectangle, Karabiner —
/mac/productivity - Entorno de agente IA: Claude Code, Cursor —
/ai-agents/claude-code - El script de automatización está disponible al principio de esta página
Referencias
- Homebrew oficial
- Registro de clave SSH en GitHub
miseoficial — gestor de versiones de runtime- Manual del CLI
gh
Historial de cambios
- 2026-05-12: Versión inicial (semilla i18n devAlice M2)