github.com/cprussin/dotfiles ↗
Configure all the things!
Open this visualization on its own page →
Contributors
1
Lines of Code
3,221
From
2019-06-26
To
2021-02-15
About cprussin/dotfiles
This is a personal dotfiles repository written in Nix that manages complete system configurations across multiple machines. The project uses NixOS and Home Manager to declaratively configure operating systems, services, and applications, organized into reusable modules and profiles that can be composed together for different machines.
The repository is structured hierarchically with machine-specific configurations that import from a library of modular components. It includes custom Nix modules for programs and systems not yet available in NixOS or Home Manager, custom packages, and Nix overlays. Notably, the project manages nixpkgs versions through Niv rather than traditional NixOS channels, ensuring consistent package versions across all machines and providing a deployment workflow that can push configurations to multiple systems via a simple command-line interface.
The codebase demonstrates advanced Nix patterns and includes experimental configuration ideas like a system-wide color theme module. The author welcomes others to use and adapt these configurations for their own purposes, and the repository indicates plans to potentially contribute some modules upstream to the NixOS project once they're sufficiently polished.