_____ __ __ .__
_/ ____\___________ | | ___/ |_| |
\ __\\_ __ \__ \ | |/ /\ __\ |
| | | | \// __ \| < | | | |__
|__| |__| (____ /__|_ \ |__| |____/
\/ \/
fraktl
^help me make a backronym for that lol
seems like nix + nixos enables the workflow i wanted back when we worked on GTFO (git tool for orchestration) (can't find the git repo for that project, riplol)
this is heavily inspired by the work of close friends on https://git.cyberia.club/cyberia/shrapnl that has lived in my head rent free for years now
automagically building a bunch of declarative microvms atop of junk computers, and doing it with functional programming is fun as hell.
Usage: deploy-rs git+https://git.cyberia.club/fack/fraktl
Repo overview:
./flake.nix - the entrypoint to the infrastructure/deployment
./nodes - where node configs/flakes/modules are defined
./nodes/common - config that should be common across nodes
./services - where flakes denoting microvms running services are defined (subject to change, idk, might flatten into ./nodes ?)
./hosts - legacy version of ./nodes, flakes defined per host, written prior to incorporating deploy-rs
Tools used:
deploy-rs - https://github.com/serokell/deploy-rs
flakes - https://nixos.wiki/wiki/Flakes
disko - https://github.com/nix-community/disko
agenix - https://github.com/ryantm/agenix
nixos-rebuild - https://nixos.wiki/wiki/Nixos-rebuild
microvm.nix - https://github.com/astro/microvm.nix
Consult the contributing.txt for next steps.