alexion 3294876681 Address PR review: read the non-trivial fish snippets from files (task 0005)
Move the interactiveShellInit block and the copy function body into
modules/fish/*.fish and pull them in with builtins.readFile, so the
non-trivial fish lives in real fish files (highlighting, fish_indent)
instead of inline Nix strings. The Auto-loader only collects .nix, so
the new .fish files are ignored by it. Rendered config is unchanged.
2026-07-19 07:57:21 -04:00

dotfiles

Dotfiles managed as a bare git repo checked out over $HOME, for machines running CachyOS with KDE Plasma.

Bootstrapping a new machine

mkdir -p ~/.config/fish/functions
curl -fsSL https://git.alexion.dev/alexion/dotfiles/raw/branch/main/.config/fish/functions/dot.fish \
    -o ~/.config/fish/functions/dot.fish
fish -c 'dot init'

Commands

Command Description
dot help Lists available commands.
dot init Bootstraps the dotfiles repo on a new machine.
dot install <pkgs> Installs the given pacman packages and appends them to the tracked list (~/.config/dot/packages/pacman).
dot install --restore Reinstalls every package from the tracked list.
dot kde apply Pushes every manifest entry's declared value onto the live system.
dot kde diff Reports every schema-backed setting whose live value differs from its default, tagged declared or undeclared.
dot kde help Lists dot kde's subcommands.
dot kde save <identifier> Reads a KDE setting's current live value and declares it in the manifest (~/.config/dot/kde-manifest).
dot kde save Refreshes every already-declared manifest entry's value from the live system.
dot setup Runs every machine-setup task (currently just folders).
dot setup folders Brings the 8 standard XDG user directories (~/Desktop, ~/Documents, ...) under a fixed short-name convention (~/.desktop, ~/doc, ...).
dot vpn up Brings the UDM-PRO-Laptop WireGuard connection up via NetworkManager.
dot vpn down Brings the UDM-PRO-Laptop WireGuard connection down.
dot <git> Everything else is passed to git.

See CLAUDE.md for the dot tool's internal architecture, bootstrap logic, subcommand dispatch, and test suite.

Keybindings

See keybindings.md for custom and useful default keybindings across configured tools (currently: tmux).

Description
My NixOS configuration(s)
Readme 2.2 MiB
Languages
Nix 50.5%
TypeScript 48%
Shell 1.2%
Lua 0.3%