// the find
mitchellh/nixos-config
My NixOS configurations.
Mitchell Hashimoto's personal NixOS config for a macOS-host + NixOS-VM dev workflow, where graphical apps run on Mac and everything dev-related runs in a VMware Fusion or UTM VM. This is a real working config from someone who built Vagrant, Terraform, and Vault — not a demo. It targets aarch64 Apple Silicon as the primary hardware.
The Makefile bootstrap flow (bootstrap0 → bootstrap) is genuinely well thought out: SSH in, partition, install, configure, done. No manual fiddling inside the VM after the first boot. The specialization modules for i3/GNOME/Plasma show clean use of NixOS's specialisation feature rather than duplicating machine configs. Cross-compilation to x86_64 for WSL tarballs is handled transparently by the aarch64 VM config, which is a nice detail. The split between machines/ (hardware-specific) and users/ (home-manager config) is clear and easy to follow even for Nix beginners.
This is explicitly one person's config, not a framework — you will be copying and adapting, not inheriting. The alacritty config is still YAML (deprecated upstream in favor of TOML), which signals some parts don't get updated until the author personally needs them. There's no flake module interface: nothing is exported for others to consume as an overlay or module, so sharing specific pieces requires copying files. The WSL path is a second-class citizen — it requires a separate Linux machine to build the tarball, which breaks the self-contained story for Windows-primary developers.