Files
UmbrelApps/whatsnext-evolu-relay/umbrel-app.yml
T
HarmenandClaude Opus 5 730621d850 De image in het eigen register, gepind op digest
umbreld haalt elke image via de Docker Engine API op, dus een lokaal gebouwde tag
is voor hem onbereikbaar. De image staat nu in het Gitea-register op dezelfde
server als deze store, en anoniem halen werkt daar: dat is dezelfde voorwaarde
als voor het klonen van de store zelf, en de eigenaar sysop staat publiek.

Beide services krijgen tag plus digest. De digest hoort erbij en niet alleen de
tag, want een tag kan opnieuw geduwd worden en dan draait er iets anders dan er
in de repo staat. De toets in tests/test_appstore_vorm.py drukt de pinstatus af
en beide regels staan nu op "gepind"; van Electrum Gate nog geen.

Wat er expres bij staat in commentaar: dit is de digest van één architectuur.
Er is alleen amd64 geduwd, want deze Umbrel is amd64. Voor de officiele store
moet het een multi-arch index-digest zijn met arm64 erin, en dat is buildx met
QEMU. Zonder die notitie leest een gepinde digest als "eis gehaald".

build.sh wijst nu ook naar het register, anders levert een volgende bouw weer een
tag op waar de compose niet naar kijkt. De slotregels van het script zijn geen
suggestie meer maar de resterende stappen: push, digest overnemen, version
verhogen, en anoniem controleren met een uitgelogde pull in dezelfde context als
de login.

Manifest naar 0.0.2, met release notes die zeggen waarom: 0.0.1 was niet te
installeren.

Tests: 32 goed 0 fout, 54 goed 0 fout en 39 goed 0 fout, niets overgeslagen.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-08-25 18:31:20 +02:00

88 lines
4.0 KiB
YAML

# De veldvolgorde hieronder is niet vrij: de packaging-documentatie van de
# officiele appstore schrijft hem voor. Zie de tabel in
# Docs/Referenties/Umbrel-appstore-spec.md.
#
# Wat de spec niet noemt staat onderaan dit bestand en niet ertussen. Dan is de
# voorgeschreven kop letterlijk goed en hoeft er bij inlevering alleen iets weg.
#
# `dependencies` is weggelaten en niet leeg gezet: deze app hangt van geen enkele
# andere app af. Een leeg veld zou suggereren dat er iets te kiezen valt.
manifestVersion: 1
id: whatsnext-evolu-relay
category: bitcoin
name: Evolu Relay
version: "0.0.2"
tagline: Sync your Trezor Suite labels through your own machine
description: >-
Trezor Suite can sync the labels and account names you give your addresses across your
devices. By default that runs through a server operated by Trezor. This app runs that
server on your Umbrel instead, so the sync goes through a machine you own.
The data is end to end encrypted on your device before it leaves, so Trezor cannot read
your labels either way. What self-hosting changes is who holds the encrypted copy and who
can see that you are syncing at all.
This is Trezor's own relay, not a reimplementation: it is built from the source they publish
as trezor/trezor-suite-sync, pinned to a specific commit.
Point Trezor Suite at this Umbrel to use it. Away from home you will need a way in, such as
Tailscale or a reverse proxy with your own domain.
Two things to know before you install. The relay has no web interface, so the tile opens the
relay itself rather than a page for you to read. And it only serves an owner that has a
storage limit registered in its database, which is what the included quota manager is for;
if syncing is refused, that registration is the place to look.
releaseNotes: >-
First release that can actually be installed. 0.0.1 pointed at an image that only existed
on the machine it was built on, and the install failed before anything started: umbrel
fetches every image from a registry, so a local build is out of reach. The image now comes
from a registry and is pinned to its digest.
Packages Trezor's Evolu Relay, the quota manager it needs, and a PostgreSQL database, all on
your own machine.
Built from source pinned to commit c03a204 of trezor/trezor-suite-sync. There is no image
published by Trezor, so the image is built from their Dockerfile; see tools/evolu-relay in
the app store repository.
Not verified yet: whether Trezor Suite accepts this address, and what has to happen before
an owner is allowed to sync.
developer: "WhatsNext?"
website: https://sc.kamenier-hamer.nl/sysop/UmbrelApps
repo: https://sc.kamenier-hamer.nl/sysop/UmbrelApps
support: https://sc.kamenier-hamer.nl/sysop/UmbrelApps/issues
# De poort waarop umbrelOS deze app aanbiedt, en tegelijk de poort waar Trezor
# Suite naartoe wijst: de app-proxy staat met PROXY_AUTH_ADD op "false", dus wat
# hier binnenkomt gaat rechtstreeks naar de relay. Zie docker-compose.yml.
#
# Niet 4000, de eigen poort van de relay: die is een veelgebruikte poort en een
# botsing op de host merk je pas als de app niet start. Dat heeft bij Electrum
# Gate een keer een dag gekost, met 50002 tegen Fulcrum. 3851 sluit aan op de 3850
# van die app.
port: 3851
# Leeg laten bij een nieuw pakket; de plaatjes doet het store-team zelf.
gallery: []
path: ""
submitter: "WhatsNext?"
submission: https://sc.kamenier-hamer.nl/sysop/UmbrelApps
# ── Hieronder staat wat de voorgeschreven volgorde niet noemt ────────────────
#
# Er is geen `icon` en dat is zichtbaar: de tegel blijft naamloos in de store.
# Bewust nog niet gevuld, want een verkeerd of geleend icoon is erger dan geen,
# en er is nog geen eigen ontwerp. Staat als taak in het plan Umbrelapp.
# Wat niet in de back-up hoeft. Paden zijn relatief aan de app-datamap.
#
# Voor deze app is dat vrijwel niets, en dat is expres: de database ís de waarde
# van de app. Electrum Gate gebruikt dit veld wel, maar daar gaat het om een log
# en een statusbestand. Neem die keuze hier niet uit gewoonte over.
backupIgnore: []