Cross-platform development environment setup script.
Supports: Ubuntu/Debian, macOS (Intel/Apple Silicon), WSL2, Fedora, Arch Linux
# One-liner install (no clone required)
curl -fsSL https://raw.githubusercontent.com/uniaevum/initial-setup-automation/main/install.sh | bash
# Or with options
curl -fsSL https://raw.githubusercontent.com/uniaevum/initial-setup-automation/main/install.sh | bash -s -- --skip-packages
# Or clone and run
git clone https://github.com/uniaevum/initial-setup-automation.git
cd initial-setup-automation
./install.sh| Category | Packages |
|---|---|
| Core utilities | curl, wget, git, vim, jq, yq, tree, htop |
| Modern CLI | ripgrep, fd, bat, eza, delta |
| Development | shellcheck, shfmt, gh (GitHub CLI) |
| Tool | Description |
|---|---|
| node | JavaScript runtime (v22 LTS) |
| python | Python (latest) |
./install.sh # Full installation
./install.sh --skip-packages # Skip apt/brew packages
./install.sh --skip-mise # Skip mise installation
./install.sh --mise-only # Only install mise
./install.sh --help # Show helpAfter installation, restart your shell:
source ~/.bashrcIf you skipped mise tools installation during setup:
mise installmise list # Show installed tools
mise install # Install tools from config
mise use node@20 # Switch Node.js version
mise doctor # Check mise health
mise upgrade # Upgrade all toolsEdit ~/.config/mise/config.toml:
[tools]
go = "latest"
deno = "latest"Then run:
mise installThe script sets basic git defaults only if not already configured:
core.editor = viminit.defaultBranch = mainpull.rebase = truepush.autoSetupRemote = true
To set your name and email:
git config --global user.name "Your Name"
git config --global user.email "your.email@example.com".
├── install.sh # Main setup script
└── README.md # This file
- Docker should be installed on Windows with WSL integration enabled
- The script detects WSL automatically
- Homebrew will be installed automatically if not present
- Works on both Intel and Apple Silicon
- Supports apt (Ubuntu/Debian), dnf (Fedora), pacman (Arch)
- Modern CLI tools are installed from GitHub releases on apt-based systems
export PATH="$HOME/.local/bin:$PATH"
source ~/.bashrcmise trust ~/.config/mise/config.toml
mise installmise doctorMIT