Update cloud-init scripts and documentation for enhanced DNS management and provisioning steps</message>

<message>Modify the first-boot.sh script to include an additional step for managing screen brightness during the provisioning process. Update user-data.bootstrap to improve DNS configuration by ensuring NetworkManager manages /etc/resolv.conf correctly, and remove obsolete scripts related to systemd-resolved. Enhance documentation to reflect these changes and clarify the setup process for users, improving overall network boot functionality and user experience.
This commit is contained in:
nearxos
2026-03-06 14:45:23 +02:00
parent 8233304ee2
commit 0844adbcbe
22 changed files with 2021 additions and 86 deletions

View File

@@ -0,0 +1,62 @@
# Screen Brightness Control — Summary
Short overview of how the reTerminal DM brightness system works.
---
## What it does
---
## Components
| Component | Role |
|-----------|------|
| **screen-brightness** (daemon) | Reads sensor and override, drives backlight and buzzer; writes `/run/screen-brightness/state`. |
| **brightness-api** (HTTP) | Listens on `127.0.0.1:8765`. POST sets override (level 15 or auto); GET returns current state. |
| **brightness-overlay** (UI) | Small icon in bottom-right of screen; click to expand/collapse panel with buttons 15 and Auto. Talks to the API. |
---
## Levels and modes
- **Levels 15:** 1 = dimmest, 5 = brightest. Written to `/sys/class/backlight/lcd_backlight/brightness` (0 is never used).
- **Auto:** Override file set to `auto` (or missing). Daemon uses ambient light to pick level.
- **Manual:** Override file contains `1``5`. Daemon keeps that level until user switches back to Auto.
Override file: `/run/screen-brightness/override`
State file (read-only): `/run/screen-brightness/state` (mode, level, lux, override=0|1).
---
## On-screen overlay
- **Icon:** Brightness (sun) icon in the bottom-right corner; transparent when retracted.
- **Click icon:** Panel expands with “Brightness”, buttons **1 2 3 4 5**, and **Auto**. Semi-transparent background behind the buttons.
- **Active state:** The current level or Auto is highlighted so you can see which is active.
- **Click again:** Panel retracts to icon only.
Overlay uses the local API; if GtkLayerShell is available (Wayland), it stays on top of fullscreen apps.
---
## Services and boot
- **screen-brightness.service** — Starts the daemon. `ExecStartPre` writes `auto` into the override file so every boot starts in Auto.
- **brightness-api.service** — Starts the HTTP API (after `screen-brightness`).
- **brightness-overlay** — Started from the user session (e.g. autostart) so it appears on the desktop.
---
## Quick reference
| Action | How |
|--------|-----|
| Set level 3 | Overlay: expand → click **3**. Or: `echo 3 > /run/screen-brightness/override` (root). |
| Set Auto | Overlay: expand → click **Auto**. Or: `echo auto > /run/screen-brightness/override`. |
| Read state | `curl http://127.0.0.1:8765/state` or `cat /run/screen-brightness/state`. |
| Config | `/etc/screen-brightness.conf` (optional); `systemctl reload screen-brightness` to apply. |
For full setup and regulations, see [SCREEN-BRIGHTNESS-MANUAL-SETUP.md](SCREEN-BRIGHTNESS-MANUAL-SETUP.md) and [SCREEN-BRIGHTNESS-REGULATIONS.md](SCREEN-BRIGHTNESS-REGULATIONS.md).