Welcome to my Nix-ified infrastructure and personal monorepo.
Flake dependency diagram generated with nikitawootten/flake-graph
.
This repository contains my Nix-related experiments. Beyond managing dotfiles, I have also experimented with packaging some of my commonly used applications and managing a homelab worth of services.
Common operations are defined in the root Makefile
.
To list Makefile targets run make help
.
make directory
can help if you're lost:
$ make directory
.
├── darwinHosts
│ └── persephone
│ { Mac Mini, mostly used for work
├── darwinModules
│ └── personal
├── homeModules
│ └── personal
│ ⎧ Misc. config, dotfiles, applications, and hacky utilities
│ ⎨ Makes every computer it infects feel like home
│ ⎩ Note: Look around before using unless you want to become me
├── hostModules
│ ├── dslr-webcam
│ │ { Module I use to configure my Olympus OM-D camera as a webcam
│ ├── homelab
│ │ { Re-usable homelab modules for media, observability, and more
│ ├── personal
│ │ { Misc. server and desktop config
│ └── raspi4sd
│ { Raspberry Pi 4 SD card configuration
├── hosts
│ ├── cochrane
│ │ { GPD Pocket 2 mini-computer, neglected & seldom used
│ ├── dionysus
│ │ { Custom-build workhorse (Ryzen 2920X, NVIDIA 2080ti)
│ ├── hades
│ │ { Dell PowerEdge R720XD, primary home server
│ ├── iris
│ │ { Raspberry Pi 4, secondary home server
│ └── voyager
│ { Framework 13 (11th Gen Intel), primary laptop
├── packages
│ ├── oscal-cli
│ ├── oscal-deep-diff
│ └── xspec
└── secrets
{ Age secrets managed by AgeNix
This flake contains several packages that I rely on day to day:
These packages are UNOFFICIAL, experimental, potentially transient, and come with no guarantees or warranty. If you would like to see these packages submitted upstream or to the NUR, please open an issue on this repository as a signal of interest.
Network diagram generated with oddlama/nix-topology
.
The homelab
NixOS module packages most of my homelab-specific configuration, including media management and monitoring.
For usage examples, refer to the hades
and iris
host configurations: