diff --git a/CHANGELOG.md b/CHANGELOG.md index e732a16..fe076b3 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,14 @@ +## glance: a fresh install lands on a start page instead of a crash loop (2026-09-13, R-473) + +The image ships no default config and exits at once without `/app/config/glance.yml`, so every +fresh install crash-looped (measured 2026-09-13 on demo-hp: 13 restarts, the card showing +„restarting"). First boot now seeds a small Hungarian start page — clock, calendar, weather for +Budapest, a link to the box's own dashboard, two news feeds — the way `gokapi` seeds its +`config.json`: an `entrypoint` wrapper that writes the file only when it is absent and then execs +the image's own command (`/app/glance --config /app/config/glance.yml`, read from the image). An +existing config is never touched. The seed was validated with the image's own `config:validate`. +No version moved (v0.8.5 stays). + ## adventurelog: Django DEBUG off on the public origin (2026-09-13, R-482) **Found by the first nightly rotation walk on demo-hp** (`felhom.eu` `audits/nightly-2026-09-13-adventurelog/`): diff --git a/templates/glance/docker-compose.yml b/templates/glance/docker-compose.yml index 75c537f..0bbe8d8 100644 --- a/templates/glance/docker-compose.yml +++ b/templates/glance/docker-compose.yml @@ -13,6 +13,52 @@ services: restart: unless-stopped environment: - TZ=Europe/Budapest + # R-473: the image ships NO default config and exits at once without /app/config/glance.yml, so + # every fresh install crash-looped (measured 2026-09-13 on demo-hp: 13 restarts). First boot now + # seeds a small Hungarian start page (clock, calendar, weather, news, a link to the box's own + # dashboard); the customer edits it afterwards in the Fájlok app or through the config volume. + # The seed is written ONLY when the file is absent — an existing config is never touched. + entrypoint: + - /bin/sh + - -c + - | + if [ ! -f /app/config/glance.yml ]; then + echo "[felhom] first boot — seeding a default glance.yml" + cat > /app/config/glance.yml <<'GLANCE' + pages: + - name: Kezdőlap + columns: + - size: small + widgets: + - type: clock + hour-format: 24h + timezones: + - timezone: Europe/Budapest + label: Budapest + - type: calendar + - type: weather + location: Budapest, Hungary + units: metric + hour-format: 24h + - size: full + widgets: + - type: bookmarks + groups: + - title: Saját szolgáltatások + links: + - title: Felhom vezérlőpult + url: https://felhom.${DOMAIN} + - type: rss + title: Hírek + limit: 10 + feeds: + - url: https://telex.hu/rss + title: Telex + - url: https://hvg.hu/rss + title: HVG + GLANCE + fi + exec /app/glance --config /app/config/glance.yml volumes: - glance_config:/app/config networks: