My personal macOS dotfiles crafted with love - version-controlled, Everforest-themed, XDG-compliant where possible.
dotfiles/
├── packages/
│ └── <pkg>/
│ ├── link/ # files to symlink (mirrored structure, optional)
│ ├── shell/ # <pkg>.zsh sourced from ~/.config/zsh/source/ (optional)
│ ├── copy/ # files to copy (optional)
│ └── setup.toml # install conditions and copy/link target (optional)
└── setup/
├── _lib.zsh # shared utilities (colors, logging)
├── Brewfile # Homebrew formulae, casks, mas apps and vscode extensions
├── bootstrap.zsh # full machine setup
├── sync.zsh # symlinks dotfiles and copies assets
└── macos.zsh # sensible macOS defaults
Each package may optionally include a setup.toml. Packages without one are always processed, symlinking link/ to ~ by default.
# Skip this package if the CLI tool/GUI app is not installed
[requires]
command = "bat" # checked via command -v
app = "Ghostty" # checked via /Applications/Ghostty.app
# Override symlink destination (defaults to ~)
[link]
target = "~"
# Copy files from copy/ to this directory
[copy]
target = "~/Library/..."[requires] accepts command, app, or both. [link] is rarely needed since ~ is the default. [copy] is only used by packages that can't be symlinked because of macOS sandboxing (e.g. coteditor).
Warning
Works on my machine! Review the installation scripts and dotfiles before adopting.
- Clone the repo:
git clone https://github.com/vasylromanets/dotfiles.git ~/.dotfiles- Run the bootstrap script:
~/.dotfiles/setup/bootstrap.zsh
# or: cd ~/.dotfiles && make bootstrapThis will:
- Install Xcode Command Line Tools
- Install Homebrew
- Install formulae, casks, App Store apps and VS Code extensions from Brewfile
- Symlink dotfiles and copy assets
- Configure Git and SSH
- Apply macOS defaults
You'll be prompted before each step.
After adding or modifying dotfiles, re-run sync.zsh to apply them:
~/.dotfiles/setup/sync.zsh
# or: cd ~/.dotfiles && make sync- Theme: Most tools are themed with Everforest Dark Hard for a warm, low-fatigue aesthetic.
- Font: The terminal and editors use Meslo LG Nerd Font Mono.
Many thanks to the dotfiles community for sharing their insights and configurations over the years.
setup/bootstrap.zsh is based on Denys Dovhan's bootstrap.sh.
setup/macos.zsh is inspired by Mathias Bynens' .macos.

