2.7 KiB
2.7 KiB
rootiest dotfiles
Personal system configuration for Arch-based Linux, managed with chezmoi.
Overview
This repository is the single source of truth for my system configuration. Rather than tracking config files directly, it uses chezmoi's externals feature to declaratively reference each config as its own versioned git repository. Chezmoi handles cloning and updating them automatically.
| Config | Repository | Destination |
|---|---|---|
| Fish Shell | fish-config |
~/.config/fish |
| Kitty Terminal | kitty-conf |
~/.config/kitty |
| Neovim | neovim-config |
~/.config/nvim |
Highlights
- Fish Shell — Catppuccin Mocha theme, Starship prompt, Fisher plugins, smart CLI wrappers, and extensive abbreviations for keyboard-driven workflows
- Kitty Terminal — Deeply customized GPU-accelerated terminal with scripted layouts, splits, and Neovim integration
- Neovim — Modular, high-performance config using native
vim.packfor plugin management, blink.cmp completion, and GitHub Copilot LSP
Prerequisites
Installation
Fresh setup
# 1. Clone this repo and initialize chezmoi against it
chezmoi init --source=~/projects/dotfiles
# 2. Apply — chezmoi will clone each external config repo into place
chezmoi apply -v
Or initialize directly from this repository
chezmoi init https://git.rootiest.dev/rootiest/dotfiles.git
chezmoi apply -v
Keeping up to date
Each config repo is maintained independently. To pull the latest changes from all of them at once:
chezmoi update -v
This runs git pull in each external repo and reapplies any changes.
Repository structure
dotfiles/
├── .chezmoiexternal.toml # Declares the three external config repos
├── .chezmoiignore # Excludes repo-only files from the home directory
└── README.md
Related repositories
- fish-config — Fish shell configuration
- kitty-conf — Kitty terminal configuration
- neovim-config — Neovim configuration
License
Each configuration repository carries its own license. See the individual repos for details.