comitup(8)

✨ comitup β€” the wifi-wrangling bestie ✨

okay so real talk, this is comitup(8) from the System Manager's Manual, and bestie, it is literally the girlboss of headless networking. πŸŽ€

πŸ’– NAME πŸ’–

comitup β€” Manage wifi connections on headless, unconnected systems


🌸 SYNOPSIS 🌸

comitup [options]

πŸ¦‹ DESCRIPTION πŸ¦‹

So here's the vibe: the comitup service is how you get a computer talking to a wifi access point when wifi is the only way in. Like, no monitor, no keyboard, no ethernet, just vibes and a wifi card. 🫢

On startup, the service tries to connect to wifi using the connections already set up by networkmanager(8). If that slays, great, we're done. If it does not work? Comitup spins up its own wifi hotspot named comitup-<nnn>, where <nnn> is a persistent number β€” same number every time, she's consistent. πŸ’…

While that hotspot is active, a comitup-web(8) service is up and running so you can manage connecting to an actual access point. Comitup also sets up a captive portal environment to help you find that web service (because a girl needs to be discoverable). ✨

Now, if you've got two wifi interfaces, the hotspot stays active on the first interface and the internet connection gets made on the second. If you've only got one? Then the hotspot gets replaced with the internet connection. It's giving "you can't have both unless you have two." 😭

In all states, avahi-daemon(8) is used to publish the mdns host name comitup-<nnn>.local, which makes the web service reachable at like http://comitup-123.local β€” that's for systems supporting Zeroconf, iykyk. For other systems, a comitup Workstation entry is published, which shows up in Zeroconf browsing applications, so you can manually figure out the IP address. The web service address is http://10.41.0.1. πŸ‘‘

And comitup logs to /var/log/comitup.log.


⭐ OPTIONS ⭐

  • -h, --help β€” Print help and exit. Simple, iconic.
  • -c, --check β€” Check the wifi device configuration and then exit.
  • -i, --info β€” Print info about the current configuration, and exit.
  • -v, --verbose β€” Turn the logging volume up on /var/log/comitup.log.

🧚 D-BUS INTERFACE 🧚

Comitup provides a D-Bus object that claims the name com.github.davesteele.comitup on the path /com/github/davesteele/comitup, supporting the interface com.github.davesteele.comitup. (Say that three times fast. πŸ’€) The interface includes the following methods:

πŸ’œ get_info()

  • Input: None
  • Output: DICT_ENTRY

Returns information about the current Comitup service. The keys are as follows:

  • version β€” the package version.
  • apname β€” the currently configured AP hotspot name.
  • hostnames β€” a list of host names that are published for the service IP address.
  • imode β€” the current interface mode for comitup. This returns the string single or router. In single mode, the hotspot is terminated when CONNECTED. In router mode, the hotspot is retained, the upstream connection is made with the other wifi device, and traffic is routed between them. The web service is terminated when CONNECTED.

🌈 access_points()

  • Input: None
  • Output: Array of DICT_ENTRY

Returns a list of visible access points. This is represented as an array of D-Bus DICT_ENTRY. Each DICT_ENTRY contains strings associated with the following keys: ssid, strength (0 to 100), and security (encrypted or unencrypted).

πŸ”₯ state()

  • Input: None
  • Output: state, connection

This returns strings for the current comitup state (either HOTSPOT, CONNECTING, or CONNECTED) and the ssid name for the current connection on the wifi device.

πŸ’… connect()

  • Input: ssid, password
  • Output: None

Deletes any existing connection for ssid, creates a new connection, and attempts to connect to it. The password may be a zero length string if it's not needed. (No password? No problem. πŸ“)

πŸŽ€ delete_connection()

  • Input: ssid
  • Output: None

Deletes the connection for ssid. The system will not be able to reconnect using this connection β€” so like, that's it for that one, fr fr.

πŸ’€ nuke()

  • Input: None
  • Output: None

Performs a factory reset of Comitup information on the device. That consists of removing all WiFi connections and restarting the service. She's gone. 🫢

⚠️ Heads up bestie: enable_nuke must be enabled in comitup.conf for this to succeed. Otherwise, no nuke for you.

Comitup is Copyright (C) 2016-2019 David Steele <steele@debian.org>.


🌟 SEE ALSO 🌟

comitup-conf(5), comitup-cli(1), comitup-web(8), comitup-watch(1)


and that's the whole page, bestie β€” this one's from April 2026, version comitup(8), and honestly? It ate. πŸ’–βœ¨πŸŒΈπŸ¦‹

πŸ“¦ where this page comes from