Cross-platform chezmoi dotfiles for a tiling River / Wayland desktop on Arch Linux — with a matching setup on Windows.
🎨 Themed colors2 — neutral grays + a green accent (#56c92b), calmer borders (#44a022) — unified across Alacritty, Waybar, Fuzzel, River & mako.
| 🪟 WM · River | 📊 Bar · Waybar | 🚀 Launcher · Fuzzel |
| 🔔 Notifications · mako | 🐚 Shell · ZSH | ✨ Prompt · Spaceship |
| 🖥️ Terminal · Alacritty | 📝 Editor · NeoVim / LazyVim | 🌿 VCS · Git |
git clone <repo-url> ~/dotfiles
# pin chezmoi to the local repo (one-time; --source does not persist)
mkdir -p ~/.config/chezmoi
echo 'sourceDir = "~/dotfiles"' > ~/.config/chezmoi/chezmoi.toml
chezmoi diff # 👀 preview
chezmoi apply # ✍️ write configs into placeImportant
chezmoi writes real files and won't clobber existing symlinks — if migrating from the
old Make setup, remove the old ~/.config/* and ~/.* symlinks before the first apply.
On Linux, apply also installs any missing system packages declared in
home/.chezmoidata/packages.yaml — a run_onchange
script that re-runs only when that list changes and is a no-op once everything is present.
Note
Prerequisites it can't bootstrap itself: chezmoi, yay (for the AUR packages), and zplug
(git clone https://github.com/zplug/zplug ~/.zplug).
Root-level pieces chezmoi doesn't manage (LY display manager, anacron):
sh ~/dotfiles/bootstrap/linux-system.shchezmoi init --apply <repo-url>The run_once script sets XDG_CONFIG_HOME so Neovim and Alacritty read from ~/.config
(relog afterward). Only the cross-platform configs (Alacritty, Neovim, Git) are applied;
the Wayland stack is skipped automatically via .chezmoiignore. Install the
mononoki nerd font separately.
| Path | What lives here |
|---|---|
📁 home/ |
chezmoi source (.chezmoiroot points here) — see CLAUDE.md for naming conventions. Includes .chezmoidata/packages.yaml (the package manifest) and run_onchange_install-packages.sh.tmpl. |
🐚 shell/ |
runtime libs sourced by ~/.zshrc (aliases, history, themes) |
🥾 bootstrap/ |
one-time Linux system installers |
🔧 dm/, jobs/, swaylock/assets/ |
Linux system configs / assets |