vapor.systems nixos configuration
All our server configuration managed by a git flake.
Structure
-
lib: library functions
-
machines: hardware definitions for each server
-
modules: service slices for specific purposes
-
pkgs: custom package definitons
-
secrets: submodule for sensitive information
-
flake.nix: main entrypoint
Servers
-
ettves: main server for webshit & games
-
phaenn: storage server for media
-
DNS & CDN:
-
fra01.ns
-
nyc01.ns
-
sin01.ns
Usage
This project uses a slightly modified version of nixinate to
provide easy to use deployment scripts. You can show what is available to run with nix flake
show. One caveat exists: to include the required secrets submodule you have to invoke nix run like
this:
$ nix run '.?submodules=1#ettves'
Each server each server has three targets server, server-boot and server-dry-run that
each correspond to nixos-rebuild switch, boot and dry-run.
