This Repository contains NixOS modules to configure Freifunk Infrastructure not just for a single Community.
It's designed for communities with a "typical" setup around gluon Node firmware.
This currently means fastd and B.A.T.M.A.N. Advanced IV.
Other software in use includes:
- kea for DHCPv4
- bird for IPv6 Router Advertisements
- systemd-networkd for network interface configuration
- nftables as firewall
and then there is a bit more freifunk specific software:
- mesh-announce for respondd
- yanic for collecting respondd queries
- meshviewer for displaying collected respondd data
The mechanisms arround automatically interconnecting Gatewys via VXLAN currently most likely only works if you're using colmena as your deployment tool.
If you haven't yet used NixOS it's probably best to start with a simple VM where you install NixOS with local config and get to know it a bit (setup a small webserver or something like it).
Then a good next step could be deploying that config from a tool like colmena.
After all that is working you might want to carefully start looking at the gateway.nix which (currently) contains all the gateway related options. In conjunction with the example repos it is hopefully possible to somewhat get a feel for how this all could work. 😅
Just add this repo via niv within your config repo
niv add nix-freifunk/nixos-freifunk
And then import it to make the options available:
imports = [
(import (import ../../nix/sources.nix).nixos-freifunk)
];