Description
Add a console-first setup helper (/usr/sbin/setup) that guides administrators through basic initial configuration using an interactive whiptail menu interface.
This tool is essential for headless deployments where web UI access is not yet available. It enables:
- Keyboard layout selection (it/us, applied immediately)
- LAN interface configuration (device, protocol, IPv4)
- WAN interface configuration (device, protocol, IPv4, gateway)
The tool reads current network configuration via the ns.devices RPCD API and applies changes via ns.commit.
Use case
On first boot with console-only access, administrators can set keyboard layout, configure LAN/WAN interfaces, and commit changes atomically.
Alternative solutions
- Manual UCI file editing (not user-friendly)
- Pre-configured images (inflexible for different topologies)
- DHCP for all interfaces (may not work in all environments)
References
- API: ns.devices (configure-device)
- API: ns.commit (atomic transactions)
Description
Add a console-first setup helper (/usr/sbin/setup) that guides administrators through basic initial configuration using an interactive whiptail menu interface.
This tool is essential for headless deployments where web UI access is not yet available. It enables:
The tool reads current network configuration via the ns.devices RPCD API and applies changes via ns.commit.
Use case
On first boot with console-only access, administrators can set keyboard layout, configure LAN/WAN interfaces, and commit changes atomically.
Alternative solutions
References