Code is like humor. When you have to explain it, it’s bad. - Cory House
This repository houses the codebase for my dotfiles. Nix all the things!
- Nix/NixOS. Keep it declarative and reproducible.
- Agenix. Keep secrets well-kept.
- Home-manager. A separate, fully configurable home configuration.
- Org-babel. Literate configuration for any application, written in Org-mode and exported with Org-babel.
- Doom Emacs. (To the dark side!)
- WSL NixOS. For an optimal development environment on Windows.
- Devshell + Direnv. Automatically enter a fully-fledged, pure development environment.
- … and more!
This repository is a huge digga flake that provides outputs for all of my hosts, users, etc.
In order to manage secrets, I use ryantm’s agenix. It conveniently encrypts everything - even in the Nix store - until my user signs in and has been recognized. I have previously used git-crypt, but unfortunately, all secrets are decrypted in the nix store, which is dangerous - especially when share stores to, say, Cachix. This supported my migration to agenix.
Any non-Nix configuration is actually written in Org-mode. This adds the convenience of writing any configuration literately, and being able to export them during compiletime. More can be found on this topic here.
- Gytis Ivaskevicius’ flake-utils-plus
- Terlar’s nixfiles for the inspiration on how to modularize his
home/
. - Chris Warbo’s “Useful Nix Hacks”
- David O’Toole Org Tutorial
- “Advanced Emacs” but not really advanced
- Will Bush’s beautiful template emacs.nix
- rememberYou’s .emacs.d and usual r/emacs TIP of the week posts