Gentleman.Dots offers two installation approaches. The automatic installer is recommended for most users, while manual installation gives you complete control over every component.
Automatic Installation
Quick, interactive, handles everything for you (5-10 minutes)
Manual Installation
Step-by-step control over each component (20-30 minutes)
The automatic installer is an interactive bash script that detects your OS, asks for your preferences, and installs everything with progress indicators.
This downloads the install-linux-mac.sh script to your current directory.
2
Make it executable
Grant execute permissions to the script:
sudo chmod +x install-linux-mac.sh
3
Run the installer
Execute the installation script:
bash ./install-linux-mac.sh
The script maintains sudo privileges automatically during installation. You’ll only need to enter your password once at the beginning.
4
Answer the prompts
The installer will ask you to choose:
Operating System: mac or linux
Terminal Emulator: alacritty, wezterm, kitty, ghostty, or none
Font Installation: Whether you already have Iosevka Term Nerd Font
Shell: fish, zsh, or nushell
Window Manager: tmux or zellij
Neovim: Whether to install and configure Neovim with AI
Which operating system are you using?1) mac2) linux#? 1Which terminal emulator do you want to install?1) alacritty2) wezterm3) kitty4) ghostty5) none#? 2Do you already have Iosevka Term Nerd Font installed?1) Yes2) No#? 2Which shell do you want to install?1) fish2) zsh3) nushell#? 3Which window manager do you want to install?1) tmux2) zellij#? 1Do you want to install Neovim?1) Yes2) No#? 1
5
Wait for installation
The script will:
Clone the repository to ./Gentleman.Dots
Install Homebrew (if not present)
Install your chosen components
Copy configuration files to the correct locations
Set up AI tools (OpenCode, Claude Code, Gemini)
Configure your default shell
Clean up temporary files
Progress indicators show the status of each installation step.
6
Restart your shell
After installation completes, the script attempts to restart your shell automatically:
Configuration complete. Restarting shell...
If the shell doesn’t restart automatically:
# Restart your terminal or run:exec $SHELL# Or on Windows WSL, restart your terminal application
# Cancel the script (Ctrl+C) and install Homebrew manually:/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"# Then re-run the installerbash ./install-linux-mac.sh
Shell doesn't change after install
If the script couldn’t change your default shell:
# Manually change to your chosen shell# For fish:chsh -s $(which fish)# For zsh:chsh -s $(which zsh)# For nushell:chsh -s $(which nu)# Verify:echo $SHELL
Tmux plugins not installing
If Tmux plugins failed to install:
# Start tmuxtmux# Inside tmux, press: Ctrl+a then I (capital i)# This triggers TPM to install all plugins
Neovim errors on first launch
First launch might show errors while plugins install:
# Open Neovimnvim# Wait for Lazy.nvim to install all plugins# Then quit and reopen::qnvim
Update the Obsidian plugin configuration with your vault path:
# Edit the config filenvim ~/.config/nvim/lua/plugins/obsidian.lua# Change this line:# path = "/your/notes/path",# To your actual path, for example:# path = "~/.config/obsidian",
8
Launch Neovim
nvim
Lazy.nvim will automatically install all plugins on first launch. This may take a few minutes.
# For Fishwhich fish# For Zshwhich zsh# For Nushellwhich nu
2
Add shell to /etc/shells
# Replace SHELL_PATH with output from previous stepSHELL_PATH=$(which fish) # or zsh, or nusudo sh -c "grep -Fxq \"$SHELL_PATH\" /etc/shells || echo \"$SHELL_PATH\" >> /etc/shells"
3
Change default shell
sudo chsh -s $SHELL_PATH $USER
On some systems, you may need to log out and back in for the change to take effect.
Learn how to use your new development environment with practical examples
If you encounter any issues during installation, check the repository’s GitHub Issues or open a new issue with details about your system and the error.