A comprehensive dotfiles setup that configures development environments for macOS, Linux, and Windows.
Basic installation:
curl -L https://raw.githubusercontent.com/luanquangminh/dotfiles/master/setup.sh | bashWith command line options:
curl -L https://raw.githubusercontent.com/luanquangminh/dotfiles/master/setup.sh | bash -s -- [OPTIONS]-m, --minimal: Minimal installation with fewer packages and tools-n, --no-sudo: Install without sudo privileges-h, --help: Display help message
Examples:
# Minimal installation
curl -L https://raw.githubusercontent.com/luanquangminh/dotfiles/master/setup.sh | bash -s -- -m
# Installation without sudo
curl -L https://raw.githubusercontent.com/luanquangminh/dotfiles/master/setup.sh | bash -s -- -n
# Minimal installation without sudo
curl -L https://raw.githubusercontent.com/luanquangminh/dotfiles/master/setup.sh | bash -s -- -m -nIn PowerShell (no admin required):
irm https://raw.githubusercontent.com/luanquangminh/dotfiles/master/setup.ps1 | iexThis installs chezmoi + Scoop, applies the cross-platform configs
(git, neovim, mise, Claude/ccp, ideavim), installs CLI tools (neovim, fzf, ripgrep, fd,
bat, eza, zoxide, starship, jq, mise) and PowerShell 7, then writes a PowerShell profile
(mise activation, starship prompt, aliases). Unix-only configs (zsh, tmux, kitty, rofi,
terminator, ranger) are skipped automatically via .chezmoiignore.
For Windows + WSL2, use the Linux instructions above inside your WSL distro instead.
- XDG base directory structure
- Git configuration
- ZSH as default shell (Linux)
- Homebrew (macOS)
- Rosetta 2 (macOS ARM)
- chezmoi for dotfiles management
- fzf for fuzzy finding
- mise for runtime version management
- tmux with plugin manager (full installation)
- Miniconda for Python environment management (full installation)
- Development tools and build essentials
- Python pip and related packages
- FiraCode Nerd Font (Linux)
- Additional system utilities
- macOS, Linux (Debian/Ubuntu-based), or Windows 10/11
- Internet connection
- macOS/Linux: Git + curl
- Windows: PowerShell 5.1+ (PowerShell 7 is installed automatically)
The script automatically detects your operating system and installs the appropriate packages and configurations. Use the minimal installation option (-m) for a lighter setup or the no-sudo option (-n) when you don't have sudo privileges.