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>
3.7 KiB
Bereikbaarheid - masterplan
App: Evolu Relay. Status: nog niet actief. Dit is één bestand en dat is bewust: er wordt nog niet aan gewerkt. Bij promotie naar
Plannen/Actief/NNN-Bereikbaarheid/worden de paragrafen hieronder over de vier bestanden verdeeld; zieHomeGit/Docs/Werkproces.md§1b.Afhankelijk van: Umbrelapp. Er valt niets bereikbaar te maken zolang er niets draait. Eén bevinding uit Proefopstelling stuurt dit plan wel al: accepteert Trezor Suite een
http://-adres, of eist het TLS?
1. Doel
Trezor Suite ook buiten het thuisnetwerk laten synchroniseren met de eigen relay, zonder dat daarvoor een poort op de router open hoeft.
2. Afbakening
De weg van een apparaat onderweg naar de relay op de Umbrel, en wat daarvoor op de Umbrel en op het apparaat geregeld moet worden. Inclusief de vraag wat er gebeurt als die weg wegvalt: een client die buiten het netwerk niets kan synchroniseren, moet dat binnen het netwerk nog wel gewoon doen.
3. Niet-doelen
- Geen poort openzetten op de router als het te vermijden is. Een sync-relay die rechtstreeks aan het internet hangt is een ander soort ding dan een relay op je eigen netwerk, en niets in dit project vraagt erom.
- Geen eigen certificaatbeheer bouwen. Bestaat dat al op deze Umbrel, dan gebruiken we het. Zo niet, dan is dat een reden om voor de weg te kiezen die geen certificaat nodig heeft.
- Geen dienst van derden in het datapad die het verkeer termineert. Dat is precies wat zelf hosten moest oplossen.
4. Ontwerp
Twee wegen, en ze sluiten elkaar niet uit.
Tailscale. umbrelOS heeft er een officiële app voor, en het is de weg van de minste weerstand: geen poort open, geen certificaat, geen domein. De prijs is een account bij een derde partij en een client op elk apparaat dat mee wil doen. Voor het datapad is dat geen bezwaar, want het verkeer loopt versleuteld tussen de apparaten zelf en niet via die partij, maar de coördinatie loopt er wel langs.
Een reverse proxy met een eigen domein en TLS. Zwaarder op te zetten, maar er is één ding dat het makkelijker maakt dan het lijkt: op deze Umbrel draait al een reverse proxy die certificaten beheert. Dat is dezelfde die Electrum Gate gebruikt. Het nadeel blijft dat er dan wél een poort open moet.
Voorstel: beginnen met Tailscale, en de reverse proxy pas overwegen als er een apparaat is dat geen Tailscale-client kan draaien.
Wat dit plan stuurt en wat hier nu nog onbekend is: eist Trezor Suite een https://-adres? Zo ja, dan
valt de kale Tailscale-route weg of moet er alsnog een certificaat bij. Dat antwoord komt uit
Proefopstelling, fase 4.
5. Het werk in grote lijnen
Fase 1 - de keuze onderbouwen. Vastleggen welke apparaten mee moeten doen en of Suite TLS eist. Uitkomst: één gekozen weg, met de reden erbij.
Fase 2 - opzetten. De gekozen weg inrichten op de Umbrel en op één apparaat.
Fase 3 - verifiëren onderweg. Synchroniseren vanaf een verbinding die niet het thuisnetwerk is, en daarna controleren dat het thuis nog steeds werkt.
6. Open punten
- Welke apparaten moeten buitenshuis kunnen synchroniseren? Alleen een laptop is iets anders dan een telefoon, en het bepaalt of Tailscale volstaat. Moment: fase 1 · Eigenaar: gebruiker
- Eist Trezor Suite TLS? Zie hierboven. Moment: komt uit Proefopstelling · Eigenaar: volgt uit dat plan
7. Verificatie
Synchroniseren vanaf een mobiel netwerk, dus niet vanaf de wifi thuis. Dat is de enige test die telt; een test op het eigen netwerk met een externe naam kan slagen op een router die het verkeer naar binnen lust.
Daarna de tegenproef: werkt het thuis nog steeds, en werkt het nog als de gekozen weg wegvalt.