This is a fun way to kill a few days learning nixos and setting up a home media stack.
I have done a tremendous amount of bikeshedding playing with this project. great fun
Finally justifying my home network over-building - all I had to do was try to move around 100gib objects constantly!
this module wraps a VPN namespace around (Seerr, Prowlarr, Sonarr/Radarr, (torrent/nzb), jellyfin), it's pretty declarative, there are some things that still manually need to be setup by hand (not the fault of nixos).
For extra complexity - My nixos is a thin os backed by NFS over 10g fibre, on a isolated vlan that can only egress the network to known wireguard ports.
I spent so much time trying to optimize bandwidth I ran out of things to download!
That is the beauty of nixarr, they already prefucked it, so it's done out of fucks!
I've aggressively been monitoring the nixos vm, and nothing is leaking at all. Qubes would be a fun way to do it too, but ain't nobody got time for that.
so you nest the VPNs A(B()) or you run them in parallel A()+B()? I suppose parallel. I had but this on my test network so it was A(B()) for awhile (test network is forced over a vpn), but now I'm pretty happy with vlan firewall +A()+B() based on namespaces and packet tagging in the kernel.
It's parallel, yeah - the anti government von is only for the download clients, my access from everywhere VPN is for, will, the machine itself - with the docker bridge having two interfaces.
In effect it's a gluetun docker network and Zerotier for the rest.