My chezmoi source directory โ single source of truth for dotfiles across machines.
chezmoi apply
dot_config/bash/rcโ bashrc: aliases, prompt,$EDITOR=microdot_config/foot/foot.iniโ foot terminal configdot_config/readline/inputrcโ readline keybindsdot_config/sway/configโ sway WM config (hardcoded monitor outputs, per-machine)dot_claude/settings.jsonโ Claude Code settingsdot_config/etc/keyd/*.conf,dot_config/etc/systemd/logind.conf.d/*.confโ copies only, not live (see caveat below)dot_config/aerospace/aerospace.tomlโ macOS tiling WM (Sway analog)dot_config/karabiner/karabiner.jsonโ macOS keyboard remapping (keyd analog)
Shared between a macOS laptop and this Arch Linux laptop. .chezmoiignore.tmpl skips
Linux-only configs (sway, keyd, logind) on macOS, and macOS-only configs (aerospace,
karabiner) on Linux.
keyd and systemd-logind read from /etc/keyd/ and /etc/systemd/logind.conf.d/, which
are outside $HOME and outside what chezmoi can target here. These files are kept as
reference copies only โ chezmoi apply does not sync them. Edit /etc/... directly, then
manually copy changes back into this repo.