## [setup_dev_environment](../../scripts/setup_dev_env) This script automates the setup of a development environment by installing essential tools, configuring common settings, and providing options for customization. **Platform Support:** macOS (Homebrew), Linux (apt-get, yum) ## Options - `-a` or `--disable-auto-update`: Disable Homebrew auto-updates (macOS only). - `-n` or `--disable-notification`: Disable notifications during setup. - `-d` or `--dependencies `: Install dependencies from a list file. ## Usage ```bash ./setup_dev_environment [-a|--disable-auto-update] [-n|--disable-notification] [-d|--dependencies ] ``` ## Features ### Package Manager Detection - **macOS**: Uses Homebrew (installs if not present) - **Linux**: Detects apt-get or yum ### Installed Components - **Essential Tools**: curl, unzip, git, fd, ripgrep, fzf, tree, neovim - **Shell**: zsh (installed and set as default shell on both macOS and Linux) - **Programming Languages**: Go, Python (via pyenv) with Poetry - **Fonts**: MesloLGS Nerd Font ### Shell Configuration - Installs zsh if not present (using the appropriate package manager on Linux) - Sets zsh as the default login shell via `chsh` ## Examples Basic setup: ```bash ./setup_dev_environment ``` Disable auto-updates: ```bash ./setup_dev_environment -a ``` Install from dependency list: ```bash ./setup_dev_environment -d dependencies.txt ```