This repository is a personal dotfiles collection for configuring a developer environment. It provides a cohesive setup across Linux distributions using Nix flakes and Home Manager for declarative configuration, with fallback scripts for other systems. The environment integrates Zsh shell, Neovim editor, terminal emulators (Wezterm/Alacritty), and window managers (i3/Sway) with consistent keybindings and productivity enhancements. Configuration is modular, with isolated plugin setups for Neovim and Zsh, utility scripts for cross-tool functionality, and version management via mise. The repository emphasizes reproducibility through lock files and structured installation processes.
Zinit is a Zsh plugin manager that provides fast, asynchronous (turbo) loading of plugins and snippets with a unique ice modifier system for declarative configuration. The architecture is a monolithic shell-script library with the primary entry point `zinit.zsh` sourced from `.zshrc`. Key subcommands include `load`, `light`, `snippet`, `update`, `delete`, `compile`, and `unload`. The ice modifiers allow transient options like `wait`, `atclone`, `atpull`, `make`, and `extract` to control how plugins are fetched, compiled, and sourced. The project uses an annex system for extensibility and includes comprehensive completion management, reporting, and diff tracking. The codebase is written entirely in Zsh and relies on common Unix tools (git, curl, tar, etc.). While not a general-purpose application, it is a well-crafted tool for Zsh users, with reusable standalone utilities like `share/git-process-output.zsh` and `share/rpm2cpio.zsh`. The test infrastructure (`tests/_support/bootstrap`) provides a sandbox pattern for integration testing Zsh plugins.