54 lines
1.5 KiB
Markdown
54 lines
1.5 KiB
Markdown
## [bootstrap_setup](../../scripts/bootstrap_setup)
|
|
|
|
Bootstraps a new development machine by installing essential tools and setting up the development environment.
|
|
|
|
## Description
|
|
|
|
This script automates the initial setup of a new development machine by:
|
|
- Installing essential tools (git, stow, curl)
|
|
- Installing package manager (Homebrew on macOS)
|
|
- Cloning the dotfiles repository
|
|
- Setting up development scripts
|
|
|
|
**Platform Support:** macOS (Homebrew), Linux (apt)
|
|
|
|
## Usage
|
|
|
|
```bash
|
|
./bootstrap_setup.sh [--dry-run]
|
|
```
|
|
|
|
## Options
|
|
|
|
- `--dry-run`: Enable dry run mode. Commands will be echoed but not executed.
|
|
|
|
## What It Does
|
|
|
|
1. **Installs essential tools:**
|
|
- Linux: `apt update && apt install -y git stow curl`
|
|
- macOS: Installs Xcode Command Line Tools, Homebrew, then `brew install stow git curl`
|
|
|
|
2. **Clones dotfiles repository:**
|
|
- Clones `https://github.com/jfrays/dotfiles.git` to `~/.dotfiles`
|
|
- Runs the dotfiles setup script
|
|
|
|
3. **Sets up development scripts:**
|
|
- Creates `~/.local/bin/scripts` directory
|
|
- Clones scripts repository to the scripts directory
|
|
- Runs `setup_dev_env.sh` to complete the environment setup
|
|
|
|
## Example
|
|
|
|
```bash
|
|
# Run the bootstrap normally
|
|
./bootstrap_setup.sh
|
|
|
|
# Preview what would happen without making changes
|
|
./bootstrap_setup.sh --dry-run
|
|
```
|
|
|
|
## Notes
|
|
|
|
- The script uses `set -e` to exit immediately if any command fails
|
|
- Ensure you have sudo access on Linux systems
|
|
- On macOS, you may need to approve Xcode license after command line tools installation
|