My personal setup scripts for Mac, Linux, and Omarchy machines. Clone the repo, run one command, and you're done.
Caution
This is my personal config. It makes lots of assumptions about how I like things set up. Feel free to browse and borrow ideas, but don't expect it to work for you out of the box.
- Installs your preferred CLI tools and apps
- Sets up shell configs (Fish, Zsh, Bash)
- Manages dotfiles with GNU Stow
- Configures system settings
- Sets up SSH keys
| Platform | Version |
|---|---|
| macOS | 10.15 (Catalina) or later |
| Linux | Debian-based (Ubuntu, Pop!_OS, etc.) |
| Arch | Omarchy or vanilla Arch |
macOS:
xcode-select --installUbuntu/Debian:
sudo apt update && sudo apt install -y git curlOmarchy/Arch: No prerequisites — git, curl, stow, and yay are already installed.
macOS:
curl -o ~/.dotfilesrc https://raw.githubusercontent.com/steveclarke/dotfiles/master/.dotfilesrc.templateLinux:
wget -qO ~/.dotfilesrc https://raw.githubusercontent.com/steveclarke/dotfiles/master/.dotfilesrc.templateEdit ~/.dotfilesrc to match your preferences.
git clone https://github.com/steveclarke/dotfiles.git ~/.local/share/dotfiles
cd ~/.local/share/dotfiles
bash install.shNote
The script detects your OS. It uses Homebrew on macOS, apt on Ubuntu/Debian, and omarchy-pkg-add on Arch/Omarchy.
macOS:
- Homebrew (if missing)
- GNU Stow
- CLI tools from Brewfile
- GUI apps (if enabled)
- SSH keys (if set up)
- System settings
- Shell configs
Linux:
- Build tools
- GNU Stow
- CLI tools
- GUI apps (if enabled)
- SSH keys (if set up)
- Shell configs
| Folder | What It Contains |
|---|---|
ai/ |
AI prompts, skills, and agents. See AI README. |
configs/ |
Stow packages for app configs. Fonts live here too. |
docs/ |
Guides and reference docs. |
fixes/ |
Scripts to fix issues. Run by hand when needed. |
install/ |
Install scripts by category (see below). |
setups/ |
Config scripts for things Stow can't handle. |
| Folder | Purpose |
|---|---|
install/prereq/ |
Tools needed by other scripts |
install/cli/ |
Command line tools |
install/apps/ |
GUI apps |
install/desktop-entries/ |
.desktop files (web app wrappers) |
install/optional/ |
Extra software. Run by hand. |
Pull the latest changes:
git pullUpdate configs and packages:
dotfiles stow # Update symlinks
dotfiles brew # Update Homebrew packages
dotfiles update # Run bothNew install scripts don't run on their own. Run them by hand:
bash install/cli/some-tool.sh
bash install/optional/steam.shThe ~/.dotfilesrc file holds your settings and secrets. Fish and Zsh load it on startup.
Important
This file is NOT tracked in git. It's safe for secrets and machine-specific settings.
Add secrets like this:
# API keys
export MY_API_KEY="your-secret-key"
export GITHUB_TOKEN="ghp_..."
# Database credentials
export DATABASE_URL="postgresql://user:pass@host/db"| Guide | Description |
|---|---|
| ZSH Shell Guide | Shell startup files, shell types, OS differences |
| AI Resources | Prompts, skills, and agents for AI coding tools |
- Repo goes in
~/.local/share/dotfiles(or set a custom path in.dotfilesrc) - macOS: Xcode Command Line Tools
- Linux: Debian-based distro (apt) or Arch-based (Omarchy)