/
/
/
Ansible role that sets up sane defaults based on a simple host configuration.
1# System
2
3Baseline Debian/Ubuntu system configuration.
4
5## Key Parameters
6
7| Variable | Default | Description |
8|----------|---------|-------------|
9| `system_hostname` | inventory hostname | Set the system hostname |
10| `system_timezone` | `Europe/Amsterdam` | System timezone |
11| `system_auto_upgrades` | `false` | Disable unattended-upgrades (prevents surprise reboots) |
12| `system_passwordless_sudo` | `true` | Allow sudo group to run commands without password |
13| `system_umask` | `002` | Default UMASK for new files |
14| `system_upgrade_mode` | `dist` | Package upgrade mode: `dist`, `full`, or `safe` |
15| `system_extra_packages` | `[]` | Additional APT packages to install |
16| `system_wifi_powersave_disable` | `false` | Disable WiFi power saving via systemd oneshot |
17| `system_wifi_auto_reconnect` | `false` | Periodic LAN check; bounce interface on failure |
18| `system_wifi_interface` | `wlan0` | WiFi interface name |
19| `system_wifi_check_interval_sec` | `60` | Reconnect check interval (seconds) |
20| `system_wifi_lan_target` | `""` | LAN ping target. **This decides whether to reconnect.** Empty discovers the default gateway at run time |
21| `system_wifi_wan_target` | `1.1.1.1` | WAN ping target â **logged only**, never a reason to reconnect |
22| `system_wifi_check_count` | `2` | Echo requests per probe |
23| `system_wifi_check_timeout` | `3` | Per-probe timeout (seconds) |
24
25> The reconnect is driven by the **LAN** check alone. These devices talk to the
26> broker, the registry and the runner on the local subnet; an internet outage is
27> not a reason to bounce a working link, and a LAN failure behind a working
28> internet connection is the case the unit exists for. `system_wifi_check_target`
29> (a single internet-only target) was replaced by the pair above.
30
31## Workflow
32
331. Set hostname (if `system_manage_hostname` is true)
342. Configure passwordless sudo for the sudo group
353. Set system-wide UMASK
364. Disable automatic updates
375. Run full package upgrade
386. Install extra packages
397. WiFi reliability: disable power saving and/or enable auto-reconnect (if either flag is true)
40