The comitup service establishes wifi connectivity for a headless Linux system, using wifi as the only access mechanism to the system.
If the computer cannot automatically connect to a local wifi access point, comitup will create a custom hotspot, and establish a comitup-web web service on that network. The web service can be used to remotely select and authenticate a visible wifi connection.
The hotspot is named comitup-<nnn>, where <nnn> is a persistent number. The website is accessible on that hotspot as http://comitup-<nnn>.local from any device which supports Bonjour/ZeroConf/Avahi. For other devices, use a Zeroconf browser (Android, Windows) to determine the IP address of the "Comitup Service", and browse to http://<ipaddress>. This address will be http://10.41.0.1/
The comitup service implements a captive portal while in HOTSPOT mode. On supported systems (IOS, Android, MacOS, Linux, or anything running Firefox), the connection web page will come up automatically when connecting to the access point.
Comitup can remember multiple upstream connections, and will search among them in the connection attempt, making it easier to move your device to different locations.
If two wifi interfaces are available, the first will persistently remain the hotspot, and the second will get the external connection. When both are connected, forwarding and masquerading are enabled so that hotspot-connected devices can access external networks.
The comitup-cli utility is available to interact with comitup from a local terminal session.
comitup requires NetworkManager and systemd.