umbrelOS leest per store één repo, dus twee apps in twee repo's kan niet. Deze repo is de store en bevat vanaf nu Electrum Gate en het werk aan Evolu Relay. Opgezet als verse repo op verzoek van de gebruiker: de historie van ElectrumTLS en van EvoluRelay komt niet mee. Dat heeft één gevolg dat verder gaat dan opruimen. In de historie van ElectrumTLS staat het domein van de gebruiker en het certificaatpad, van vóór de opschoning van 19-08. Die komt hier niet in. Zolang die repo op de Git-server blijft staan verandert dat niets, dus het weghalen ervan is het laatste stuk van open punt 3 van het plan Appstore, en geen bijzaak. De store zelf hoefde niet te veranderen: store-id whatsnext, en dus blijft het app-id whatsnext-electrum-gate. Dat hangt aan het store-id en niet aan de URL, dus voor umbrelOS is dit dezelfde app in een andere store. Dat de store op 19-08 naar de maker genoemd werd in plaats van naar deze ene app, betaalt zich hier uit. Wat de documentatie betreft is dit één wortel voor beide apps, en dat was de reden om samen te voegen en niet de prijs ervan: de appstore-spec, het pinnen van images en de werkwijze golden al voor allebei en stonden in twee repo's naast elkaar. De kruisverwijzing die daarvoor nodig was (Referenties/Umbrel-appstore.md in de oude EvoluRelay-repo) is verdwenen; wat daarin stond over de plekken waar de relay een ander geval is, staat nu als ontwerp in het masterplan Umbrelapp §4. Botsende namen kregen een achtervoegsel met de app, en alleen die: Publicatie werd Publicatie-Gate en Publicatie-Relay, CHANGELOG.md werd CHANGELOG-electrum-gate.md. Proefopstelling kreeg 007, tussen de twee bestaande nummers, zodat de bovenkant van de reeks op tier-orde blijft staan. CONTINUE_HERE.md heeft een kolom App, maar de tiers lopen over beide apps heen: er is één volgorde van werken. Electrum Gate gaat naar 0.0.15, want website, repo, support, submission en icon wijzen nu naar UmbrelApps en zonder versieverhoging rolt dat niet uit. De release notes leggen aan de gebruiker uit dat hij de store opnieuw moet toevoegen. Of een geïnstalleerde app een wisseling van store-URL overleeft is nog steeds niet uitgezocht; dat blijkt bij het omzetten. Twee dingen in de plannen van Electrum Gate waren door deze verhuizing niet meer waar en zijn bijgewerkt: de taak "de repo hernoemen" in fase 7 is afgevinkt, en de repo-vorm in PLAN.md §4a toonde nog de store-id electrumtls, die al sinds fase 7 achterhaald was. Tests: 39 goed 0 fout en 54 goed 0 fout, niets overgeslagen. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
9.8 KiB
Open punten - Appstore
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.
Nog te beslissen
-
Wat gebeurt er met de bestaande handmatige installatie? - In twee stappen, en de eerste is niet meer uit te stellen (bijgewerkt 20-08-2026).
De container is gestopt maar de compose staat er nog: een
alpine:latestmet eenapk add stunnelbij elke start, metrestart: unless-stoppeden een mount op de certificaten van Zoraxy. Wat er nu aan de orde is:- de container weghalen, nu. Hij bindt poort 50002, en dat is precies de poort die Fulcrum op de
host wil. Zolang hij bestaat kan het omschakelen naar Fulcrum niet slagen, en dat staat in fase 6 als
taak.
restart: unless-stoppedbetekent bovendien dat hij een herstart van de Umbrel overleeft; - de map laten staan tot de herstart-controle gedaan is. Dat is een compose plus een
entrypoint.shen het kost niets. Het is de gedocumenteerde weg terug, en die vervalt pas als bewezen is dat de app na een herstart vanzelf terugkomt. Let op de volgorde: de container mount zijnentrypoint.shuit die map, dus eerst de container weg en dan de map.
Moment: stap 1 nu, stap 2 na de herstart-controle · Eigenaar: gebruiker
- de container weghalen, nu. Hij bindt poort 50002, en dat is precies de poort die Fulcrum op de
host wil. Zolang hij bestaat kan het omschakelen naar Fulcrum niet slagen, en dat staat in fase 6 als
taak.
-
Eigen icoon en gallery. Het manifest wijst nu naar het Electrs-icoon en een screenshot van Electrs in
getumbrel/umbrel-apps, dus naar andermans bestanden en naar plaatjes van een andere app. Er moet een eigen SVG komen. De gallery is minder dringend: die is er voor een winkelpagina die hier niemand bezoekt, zie KNOWLEDGE.md. Vraag is wie het icoon maakt en of het in de repo komt of extern gehost wordt. Moment: fase 5 · Eigenaar: gebruiker -
Hoe wordt de herstart-controle alsnog gedaan? Dit is de controle waar het hele plan om begon: komt de app na een herstart van de Umbrel vanzelf terug. Hij is op 18-08-2026 uitgesteld omdat de Umbrel een productiemachine is en niet op verzoek herstart wordt. Dat is een geldige reden, maar het betekent wel dat het plan niet afgerond kan worden: alles wat er nu ligt is een sterke aanwijzing en geen bewijs.
Wat er specifiek niet mee getest is, en waar de enige echte twijfel zit: de volgorde bij het opstarten. Zoraxy kan later klaar zijn dan deze app, en dan bestaat het certificaat nog niet.
Bijgewerkt op 20-08-2026: hier stond dat de compose daarvoor een wachtlus heeft. Die is er niet meer, want juist die lus was de klem van 0.0.3. De opvolger is de vangnettak in de herlaadlus, die TLS aanzet zodra
cert.confverschijnt zonder dat er een vlag bij hoort. Dat is precies het Zoraxy-is-later-klaar-geval, en het is nog nooit echt voorgekomen; alleen getoetst tegen tijdelijke bestanden.Moment: bij de eerstvolgende herstart die er toch komt, bijvoorbeeld een umbrelOS-update of een stroomonderbreking. Noteer de uitkomst dan in
PROGRESS.md. · Eigenaar: gebruiker -
Volgt de app-map de conventie van andere apps? Gevraagd door de gebruiker op 20-08-2026, die opmerkte dat hij bij andere apps geen app-code in
app-dataziet. Uitgezocht en vastgelegd in Umbrel-appstore-spec.md; de korte versie is dat config-in-app-data een bestaand patroon is (electrsmount zijntorrczo) en dat code-in-app-data het gevolg is van geen eigen image bouwen, wat een besluit is en geen ongeluk.Beide vervolgpunten zijn diezelfde dag gedaan in 0.0.9, nadat de gebruiker zei dat hij de app wil publiceren als standaard-app: de data staat onder
data/met een.gitkeepper map, enbackupIgnorenoemt de sessielog enstatus.json. Nietdata/runtime/config, want daar zit de certificaatkeuze.Wat het uitzoeken daarna opleverde is groter dan dit punt en staat daarom in een eigen masterplan Publicatie: de eisen van de officiële store, wat er al aan voldoet, en het risico dat niet in een checklist staat, namelijk de leesmount op de certificaten van Zoraxy. Moment: afgerond · Eigenaar: –
Beslist
-
Wordt de repo hernoemd, en wat wordt dan het store-id? - Store-id
whatsnext, app-idwhatsnext-electrum-gate, repo-naam nog niet (19-08-2026, gebruiker).Het app-id moet met het store-id beginnen en de mapnaam moet gelijk zijn aan het app-id (zie Umbrel-appstore-spec.md). De aanname bij het stellen van deze vraag was dat de repo-naam daar ook in zat, want de store-URL ís de repo-URL. Dat klopte niet: het store-id is gewoon een veld in
umbrel-app-store.ymlen staat los van de naam van de repo. Daardoor kon het store-id meteen goed gezet worden en kan de repo-naam wachten.De store heet nu naar de maker en niet naar deze ene app. Dat is de variant die later een tweede app toelaat zonder opnieuw te hernoemen, en dat weegt hier zwaarder dan de kosten, want die zijn nul: de gebruiker gaf aan de app zonder bezwaar opnieuw te kunnen installeren.
Afgerond op 25-08-2026, en eerder dan gedacht. Hier stond dat de repo nog
ElectrumTLSheette en dat het hernoemen zou meeliften op een publieke versie op GitHub. Wat het versnelde was Evolu Relay: umbrelOS leest per store één repo, dus een tweede app dwong de vraag af. De repo isUmbrelAppsgeworden, metwebsite,repo,support,submissioneniconmee, in 0.0.15.Het app-id is niet meegegaan en dat is de reden dat dit goedkoop was:
whatsnext-electrum-gatehangt aan het store-id en niet aan de URL. Voor umbrelOS is het dus dezelfde app in een andere store.Wat er wél open blijft, en nu voor het eerst echt aan de orde is: of een geïnstalleerde app een wisseling van store-URL overleeft, of dat de store verwijderd en opnieuw toegevoegd moet worden en de app daarna opnieuw geïnstalleerd. Niet uitgezocht, en niet aannemen dat het meevalt. Eigenaar: gebruiker, bij het omzetten van de store in umbrelOS.
-
Draait
nginx:alpinemet destream- enstream_ssl-module? - Ja (18-08-2026). Op de Umbrel gecontroleerd metdocker run --rm nginx:alpine nginx -V. Aanwezig zijn--with-stream,--with-stream_realip_module,--with-stream_ssl_moduleen--with-stream_ssl_preread_module, alle vier statisch meegebouwd, dus zonderload_module.Daarmee gaat het ontwerp uit PLAN.md §4c door in de kleine variant: één container die de web-UI serveert én TLS termineert, geen stunnel-installatie bij het starten, geen losse
cert-monitor, en de Docker-socket-mount vervalt.Twee dingen die deze uitkomst meebracht en die het opschrijven waard zijn. nginx wil de volledige keten in
ssl_certificate, terwijl stunnel het gesplitst wilde; deawk-splitsing uitentrypoint.shis daarmee overbodig in plaats van overgenomen. En dit antwoord geldt voor de tagnginx:alpinevan vandaag: bij het pinnen op een digest wordt dezelfde controle op díe digest herhaald, anders is er iets anders bewezen dan er uitgeleverd wordt. -
Hoe komen
entrypoint.shenweb/in${APP_DATA_DIR}? - Bij installatie automatisch, bij een update niet (18-08-2026). umbreld doet bij installatiersync --archivevan de hele app-map naar${APP_DATA_DIR}, dus de mounts in de compose kloppen. Bij een update wordt alleen een whitelist ververst:docker-compose.yml,*.template,exports.sh,torrc,hooksenumbrel-app.yml.Gevolg dat het ontwerp stuurt: een gewijzigde
entrypoint.shbereikt een bestaande installatie nooit, zonder foutmelding. Logica die later nog moet kunnen wijzigen hoort daarom in de compose, in de image, of in een*.template-bestand; dat laatste staat in de whitelist én wordt bij elke start met de omgevingsvariabelen ingevuld. Zie de naslag Umbrel-appstore-spec.md. -
Wanneer wordt er voor het eerst gepusht? - Meteen, vóór de opschoning (18-08-2026). De repo staat sindsdien publiek op
https://sc.kamenier-hamer.nl/sysop/ElectrumTLS.git, met het domein en het certificaatpad er nog in. Publiek zijn was geen keuze (umbreld kloont anoniem), alleen de volgorde was dat. Afweging van de gebruiker: de repo is voor eigen gebruik en wordt niet aangekondigd, dus vindbaarheid is laag. Gevolg dat vastligt: die waarden staan nu in de historie. Het plan Configuratie haalt ze uit de bestanden, niet uit de historie; dat laatste zou een herschrijving vragen. Behandel het domein dus als bekend, en laat het geen reden zijn om Configuratie uit te stellen of juist te haasten.Bijgewerkt 25-08-2026: die historie is bij de verhuizing achtergebleven.
UmbrelAppsis als lege repo begonnen met alleen de huidige toestand erin, op verzoek van de gebruiker die de historie niet nodig had. Daarmee vervalt de vaststelling hierboven, maar pas als de oude repo weg is: zolangElectrumTLSop de Git-server staat, staat het domein daar nog in de historie. Dat weghalen is dus geen opruimwerk maar het laatste stuk van deze beslissing. Eigenaar: gebruiker -
Mag de app-id later nog wijzigen? - Ja (18-08-2026). Er zijn geen andere installaties, dus achterwaartse compatibiliteit is geen eis. Een wijziging kost één keer opnieuw installeren. Genoteerd omdat de prefix-regel anders zwaarder lijkt dan hij is: de keuze
electrumtls-electrum-tlsmag herzien worden zolang dat vóór fase 6 gebeurt.