fix: Linux-build eist ayatana-appindicator3 + kapotte docslink #1762

Merged
brenno merged 2 commits from fix/spiegel-ci-groen into main 2026-08-24 08:04:55 +00:00
Owner

Waarom

De GitHub-spiegel gaf op v0.4.9 drie rode jobs. Deze PR neemt er twee weg; de
derde (Windows-suite) komt apart.

1. Gate (Linux) — en, belangrijker, Linux bouwen op de forge. Sinds de
nativeapi-migratie (#1741) doet cnativeapi op Linux vier pkg_check_modules:
gtk+-3.0, x11, xi en ayatana-appindicator3-0.1. De eerste drie komen met
libgtk-3-dev mee, de vierde niet — en hij staat op REQUIRED. Daardoor viel
flutter build linux al om tijdens het genereren van de buildbestanden, nog
voor er iets gecompileerd werd. Op de spiegel kostte dat de Linux-poort; op de
forge faalde de job Linux bouwen (taak 3233, twee keer), en omdat publiceren
daarop needt is er geen v0.4.9-release verschenen.

libayatana-appindicator3-dev staat nu in alle drie de buildomgevingen
(.github/workflows/ci.yml, .forgejo/workflows/release.yml,
.forgejo/workflows/linux-build.yml) en in de opzetgids, die daarnaast ook
libsecret-1-dev miste.

De bibliotheek wordt gelinkt, niet gebundeld, dus de pakketten moeten hem als
runtime-eis noemen — anders installeert het pakket keurig en start de app daarna
niet. libayatana-appindicator3-1 in de .deb-Depends,
libayatana-appindicator in de AUR-PKGBUILD. De rpm leidt zijn soname-eisen
zelf af.

2. Docs links. lychee meldde precies één fout: de verwijzing naar
EditorTextController in CHANGELOG.md linkte met ../lib/…, wat vanuit een
CHANGELOG in de wortel een pad naast de werkkopie is.

Toetsing

  • make check groen (exit 0, 87,2% regeldekking, per-bestandsvloer 0).
  • De reparatie draagt tests: de bestaande lijsttests in
    test/linux_packaging_test.dart (.deb-Depends en AUR-depends) dragen de
    nieuwe naam, zodat een volgende verwijdering opvalt.
  • De CMake-eis zelf is niet lokaal te toetsen (macOS bouwt geen Linux) — de
    Linux-poort van deze PR is de proef. Daarom staat de reden ook in de
    workflow-commentaren en niet alleen hier.
  • make check-secrets en make sast heb ik hier niet gedraaid; de
    scans-workflow doet ze op deze PR. De wijziging voegt geen code toe die een
    geheim kan dragen (drie apt-regels, twee pakketlijsten, documentatie).

Bewaker

Overgeslagen, expliciet: dit voegt geen afhankelijkheid toe. De binding aan
libayatana bestaat sinds #1741 in de gelinkte binary; deze PR maakt haar alleen
waarheidsgetrouw zichtbaar in de buildomgeving en de pakketmetadata. Dat een
tray-bibliotheek een harde eis is voor een Linux-installatie is wél een
weegpunt, maar dat hoort bij cnativeapi, niet bij deze reparatie.

## Waarom De GitHub-spiegel gaf op `v0.4.9` drie rode jobs. Deze PR neemt er twee weg; de derde (Windows-suite) komt apart. **1. `Gate (Linux)` — en, belangrijker, `Linux bouwen` op de forge.** Sinds de nativeapi-migratie (#1741) doet `cnativeapi` op Linux vier `pkg_check_modules`: `gtk+-3.0`, `x11`, `xi` en `ayatana-appindicator3-0.1`. De eerste drie komen met `libgtk-3-dev` mee, de vierde niet — en hij staat op `REQUIRED`. Daardoor viel `flutter build linux` al om tijdens het genereren van de buildbestanden, nog voor er iets gecompileerd werd. Op de spiegel kostte dat de Linux-poort; op de forge faalde de job `Linux bouwen` (taak 3233, twee keer), en omdat `publiceren` daarop needt **is er geen v0.4.9-release verschenen**. `libayatana-appindicator3-dev` staat nu in alle drie de buildomgevingen (`.github/workflows/ci.yml`, `.forgejo/workflows/release.yml`, `.forgejo/workflows/linux-build.yml`) en in de opzetgids, die daarnaast ook `libsecret-1-dev` miste. De bibliotheek wordt **gelinkt, niet gebundeld**, dus de pakketten moeten hem als runtime-eis noemen — anders installeert het pakket keurig en start de app daarna niet. `libayatana-appindicator3-1` in de `.deb`-`Depends`, `libayatana-appindicator` in de AUR-PKGBUILD. De rpm leidt zijn soname-eisen zelf af. **2. `Docs links`.** lychee meldde precies één fout: de verwijzing naar `EditorTextController` in `CHANGELOG.md` linkte met `../lib/…`, wat vanuit een CHANGELOG in de wortel een pad naast de werkkopie is. ## Toetsing - `make check` groen (exit 0, 87,2% regeldekking, per-bestandsvloer 0). - De reparatie draagt tests: de bestaande lijsttests in `test/linux_packaging_test.dart` (`.deb`-`Depends` en AUR-`depends`) dragen de nieuwe naam, zodat een volgende verwijdering opvalt. - De CMake-eis zelf is niet lokaal te toetsen (macOS bouwt geen Linux) — de Linux-poort van deze PR is de proef. Daarom staat de reden ook in de workflow-commentaren en niet alleen hier. - `make check-secrets` en `make sast` heb ik hier **niet** gedraaid; de `scans`-workflow doet ze op deze PR. De wijziging voegt geen code toe die een geheim kan dragen (drie apt-regels, twee pakketlijsten, documentatie). ## Bewaker Overgeslagen, expliciet: dit voegt geen afhankelijkheid toe. De binding aan libayatana bestaat sinds #1741 in de gelinkte binary; deze PR maakt haar alleen waarheidsgetrouw zichtbaar in de buildomgeving en de pakketmetadata. Dat een tray-bibliotheek een harde eis is voor een Linux-installatie is wél een weegpunt, maar dat hoort bij `cnativeapi`, niet bij deze reparatie.
`cnativeapi` (via nativeapi, #1741) doet op Linux vier `pkg_check_modules`:
gtk+-3.0, x11, xi en ayatana-appindicator3-0.1. De eerste drie komen met
libgtk-3-dev mee, de vierde niet — en hij is REQUIRED. Daardoor viel bij
v0.4.9 `flutter build linux` al om tijdens het genereren van de buildbestanden:
de Linux-job van de releaseketen faalde (dus geen release), en op de spiegel
viel de Linux-poort met dezelfde CMake-fout.

libayatana-appindicator3-dev staat nu in alle drie de buildomgevingen
(.github/workflows/ci.yml, .forgejo/workflows/release.yml en linux-build.yml)
en in de opzetgids, die ook libsecret-1-dev miste.

De bibliotheek wordt gelinkt, niet gebundeld, dus de pakketten moeten hem als
runtime-eis noemen: `libayatana-appindicator3-1` in de .deb-Depends en
`libayatana-appindicator` in de AUR-PKGBUILD. De rpm leidt zijn soname-eisen
zelf af. De bestaande lijsttests in test/linux_packaging_test.dart dragen de
nieuwe naam, zodat een volgende verwijdering opvalt.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
fix(docs): kapotte verwijzing in CHANGELOG.md liet de linkpoort vallen
All checks were successful
scans / scans (pull_request) Successful in 2m34s
static-gate / static-gate (pull_request) Successful in 5m53s
b2ed0c9f38
De regel over `EditorTextController` linkte met `../lib/…`, wat vanuit een
CHANGELOG in de wortel een pad naast de werkkopie is. lychee (`Docs links` op
de spiegel) meldde precies deze ene fout en zette de job rood.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
brenno merged commit 21fd7e09ad into main 2026-08-24 08:04:55 +00:00
Sign in to join this conversation.
No description provided.