Created
July 6, 2026 02:00
-
-
Save jeanlucaslima/39b8b89185b7d5568d585ebb25d1afef to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| /bin/bash <<'EOF' | |
| set -euo pipefail | |
| echo "==> Fresh Mac developer setup" | |
| echo "==> Installing Homebrew" | |
| /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" | |
| if [[ -x /opt/homebrew/bin/brew ]]; then | |
| eval "$(/opt/homebrew/bin/brew shellenv)" | |
| echo 'eval "$(/opt/homebrew/bin/brew shellenv)"' >> ~/.zprofile | |
| elif [[ -x /usr/local/bin/brew ]]; then | |
| eval "$(/usr/local/bin/brew shellenv)" | |
| echo 'eval "$(/usr/local/bin/brew shellenv)"' >> ~/.zprofile | |
| fi | |
| echo "==> Updating Homebrew" | |
| brew update | |
| echo "==> Installing dotfiles prerequisites" | |
| brew install \ | |
| git \ | |
| stow \ | |
| zsh \ | |
| powerlevel10k \ | |
| mise \ | |
| curl \ | |
| wget \ | |
| jq \ | |
| unzip | |
| echo "==> Installing useful dev tools" | |
| brew install \ | |
| gh \ | |
| tree \ | |
| fzf \ | |
| zoxide \ | |
| ripgrep \ | |
| fd \ | |
| bat \ | |
| eza \ | |
| git-delta \ | |
| neovim \ | |
| tmux \ | |
| htop \ | |
| btop \ | |
| uv \ | |
| just \ | |
| watchman | |
| echo "==> Installing fun terminal tools" | |
| brew install \ | |
| fastfetch \ | |
| glow \ | |
| gum \ | |
| asciinema \ | |
| cowsay \ | |
| fortune \ | |
| lolcat \ | |
| figlet \ | |
| toilet \ | |
| cmatrix \ | |
| sl \ | |
| nyancat \ | |
| pipes-sh | |
| echo "==> Installing apps and fonts" | |
| brew install --cask \ | |
| ghostty \ | |
| font-meslo-lg-nerd-font \ | |
| font-jetbrains-mono-nerd-font | |
| echo "==> Installing Oh My Zsh" | |
| if [[ ! -d "$HOME/.oh-my-zsh" ]]; then | |
| RUNZSH=no CHSH=no KEEP_ZSHRC=yes \ | |
| sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" "" --unattended | |
| fi | |
| echo "==> Installing runtimes with mise" | |
| mise use --global node@24 python@3.14 rust@stable | |
| mise install | |
| echo "==> Enabling mise for this setup session" | |
| eval "$(mise activate bash)" | |
| echo "==> Installing AI coding CLIs" | |
| npm install -g @anthropic-ai/claude-code | |
| brew install --cask codex | |
| echo "==> Cloning dotfiles" | |
| if [[ ! -d "$HOME/dotfiles" ]]; then | |
| git clone https://github.com/jeanlucaslima/dotfiles.git "$HOME/dotfiles" | |
| fi | |
| echo "==> Running dotfiles bootstrap" | |
| cd "$HOME/dotfiles" | |
| chmod +x ./bootstrap.sh ./install.sh 2>/dev/null || true | |
| ./bootstrap.sh | |
| echo "==> Done" | |
| echo "" | |
| echo "Open Ghostty, then test:" | |
| echo " git --version" | |
| echo " python --version" | |
| echo " node --version" | |
| echo " claude --version" | |
| echo " codex --version" | |
| echo "" | |
| EOF |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment