Plan Eigenimage, fase 1 tot en met 3. De vier templates verhuizen naar tools/electrum-gate/ zonder extensie; daarnaast Dockerfile (nginx:1.30-alpine plus python3), entrypoint.sh (het command-blok van de compose, zonder $$) en build.sh naar het voorbeeld van Evolu Relay. Een image voor beide containers, gebouwd op de Umbrel; open punt 2 en 3 daarmee beslist. Inhoudelijk anders dan alleen verplaatst: het log_format staat in stream.conf zelf, het backend-adres komt via twee plaatshouders zonder dollarteken uit de omgeving (ook in de server-service), en de pagina haalt versie en adres uit status.json via GATE_APP_VERSION. Tests mee verhuisd en uitgebreid: entrypoint.sh en Dockerfile in plaats van het command-blok, en de tag in de compose gelijk aan VERSION in build.sh voor elke eigen image. Mutatie-getest met drie ingrepen. Nog niet gebouwd: er is hier geen Docker. De tag staat ongepind tot de eerste push; dat is fase 4 en die is van de gebruiker. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
3.3 KiB
Open punten - Eigenimage
Beslissingen die nog een eigenaar of een moment nodig hebben. Staat een punt hier zonder allebei, dan is dat de eerste fout om op te lossen. Wordt een punt een taak, dan verhuist het naar TAKEN.md.
Nummers blijven staan, ook als een punt beslist is: er kan elders naar verwezen worden, ook vanuit codecommentaar. Beslissen betekent verplaatsen naar de kop hieronder, niet hernummeren.
Deze drie punten stonden als §7 in het masterplan en zijn bij de promotie op 27-08-2026 hierheen verhuisd.
Nog te beslissen
Niets.
Beslist
-
Eén image of twee? - Eén (07-09-2026, sessie, volgens het voorstel in PLAN.md §6). De agent en nginx blijven twee containers met dezelfde image; de compose geeft de agent een eigen
command. Basis isnginx:1.30-alpinemetpython3uit apk, en niet andersom: de officiële nginx-image heeft de stream-module ingebouwd, bij alpine's eigen nginx is dat een los pakket. Moment: afgerond · Eigenaar: – -
Waar wordt gebouwd? - Op de Umbrel (07-09-2026), om een eenvoudige reden: het is de enige machine met Docker; de werkplek heeft het niet. Dat het een productiemachine is weegt minder dan dat het de plek is waar Evolu Relay ook al gebouwd wordt. Gevolg: één architectuur, amd64, en dat is voor eigen gebruik genoeg. Multi-arch zit in
build.shals schakelaar (PLATFORMS=...) en is werk voor Publicatie-Gate; het is nog nooit geprobeerd. Moment: afgerond · Eigenaar: – -
Blijft het Gitea-register ook bij publicatie de bron? - Voor nu Gitea, bij inlevering opnieuw kijken (27-08-2026, gebruiker).
De twee bezwaren die dit punt opriep gelden allebei pas bij inlevering, en dat is niet aan de orde: "dit is echt mijn eigen app voor eigen gebruik, ik ben nog niet toe aan publiceren." Het domein van de gebruiker staat dan in een pakket dat niemand aangeboden krijgt, en de enige die een image van zijn thuisserver haalt is hij zelf. Daarmee vervallen ze niet, ze zijn alleen nog niet actueel.
Wat dat voor dit plan betekent:
build.shduwt naarsc.kamenier-hamer.nl/sysop/..., net als bij Evolu Relay, en de compose pint op een digest daaruit. Het bouwrecept hoeft er niet omheen ontworpen te worden dat het register later kan wisselen; een register wisselen is één regel inbuild.shen één in de compose, plus een versieverhoging.Wat er wél voor terugkomt is een taak in Publicatie-Gate en niet hier. Bij inlevering moet het register opnieuw beoordeeld worden, samen met het kaal maken van het app-id en het pinnen; dat zijn toch al drie dingen die een herinstallatie vragen en die je één keer wilt doen. De gebruiker noemde er nog iets bij dat de moeite van het uitzoeken waard is voordat het zover is: umbrelOS zou een eigen register toestaan. Dat is niet nagetrokken, en het is precies het soort aanname dat je niet wilt ontdekken op het moment van inleveren.
De spec zoals we hem kennen eist alleen
registry/repo:versie-of-commit@sha256:<digest>met beide architecturen erin, en zegt niets over wélk register. Naar de letter mag Gitea dus ook dan. Moment: afgerond voor dit plan; het vervolg hoort bij Publicatie-Gate · Eigenaar: –