Hi!
I have made a python script [1] to setup batman-adv networks using systemd-networkd. It requires iwd and systemd-networkd v248 or above.
It starts an adhoc network on wlan0 (or any other wireless interface) and adds it to bat0. To allow non-mesh clients to connect to the mesh, if there are two WiFi adapters, the script starts an AP on one of the adapters.
The script is supposed to be run as a systemd service, since it can ensure that the dependencies are started before it is run. The network is configured with systemd-networkd runtime configs (since it has not implemented configuration via D-Bus) and the iwd D-Bus API.
All suggestions, criticism and contributions are welcome.