Access & deployment login required

Reaching a box

  1. Connect to the box's own WiFi hotspot (bikebox_hotspot_<N>).
  2. SSH in: ssh kal@10.42.0.1 — this address is fixed regardless of which box's hotspot you're on.

The SSH/sudo password isn't published here. Ask whoever manages the fleet directly (password manager entry or a message), not by editing this page.

kal does not have blanket passwordless sudo — only two narrow NOPASSWD rules exist (nmcli, for the Network page's WiFi-connect feature, and systemctl poweroff, for the app's remote shutdown button). Everything else prompts for a password.

Deploying code changes

From this repo, while connected to the target box's WiFi:

./deploy_bikebox.sh                # pushes arcteryxpi/ + hotspot scripts, restarts services
./deploy_bikebox.sh --restart-hotspot   # also restarts the hotspot itself (drops your WiFi link)

--restart-hotspot is opt-in on purpose: this laptop is connected to the box through that hotspot, so restarting it drops your own connection, and the SSID may come back under a different name if box_number changed.

A single-file push (rather than the full tree) risks leaving a box in a broken mixed state if two files are tightly coupled — prefer the full script unless you're certain a lone file is self-contained.

Systemd changes

After editing any .service file:

sudo systemctl daemon-reload
sudo systemctl enable --now <service>

Checking a NOPASSWD rule without triggering the real action

Some authorized commands (like poweroff) are disruptive to actually run just to test permissions. Use:

sudo -n -l systemctl poweroff

This lists whether kal is authorized, with no password prompt and without executing anything. Run sudo -k first if a password was entered recently in the same session — sudo caches authorization per-user for a few minutes across all sessions, which can make a still-missing rule look like it's already working.