I was surprised to see this on the HN homepage, I didn't create Tyr but I did create Yggmail (https://github.com/neilalexander/yggmail) which it is based on. There is no store-and-forward as such, the sending node will keep the message in its outbox and will keep retrying until the destination is online.
Tyr is probably overkill with Deltachat on top of yggdrasil. The network already is encrypted so it's fine to send plaintext emails as long as there's no 3rd party email hubs.
> There is no store-and-forward as such, the sending node will keep the message in its outbox and will keep retrying until the destination is online.
Yes I might be wrong but my understanding is there is no point in creating another system where messages hop from one peer to the other like Meshtastic or Reticulum (what make sense for their use case).
Let's say users have their "email server" running on both on there mobile phone and a home server and in sync.
We can expect 2 of the 4 servers will be online at the same time to send the message. I personally like those odds, Internet is pretty reliable in our days.
I believe we have spent too long trying to solve very hard trilema in messaging, trying to have it all: confidentiality, anonymity and uncensorability ... and reliability ... and ease of use.
The result is in practice most people use GMail, Outlook and Whatsapp.
Yggdrasil is fantastic, it goes back some original ideas of the Internet we have almost forgotten, and in practice solves a lot of problem we have been dealing with for too long.
back in the day a few of us used to run ssb (secure-scuttlebot) over yggdrasil (and cjdns before that) and that system would distribute the private messages to all of the peers within 3 hops. offline peers would just sync up when online and then decrypt the messages sent to them.
ssb's been broken for around five years, but now that it's working again it'd be fun try this experiment again.
2026 could be the year mesh networks finally take off!
Curious why you believe it was broken, and is now fixed. What new development are you referring to? I agree that Patchwork kinda took a dive, and functionality started to bitrot with each new maintainer...but it still replicates feeds.
I couldn't get any of their latest versions working. The ssb-server was still functioning, but had no working client that I could find. https://github.com/evbogue/ssbc is a working fork with a patchbay lite client from circa 2015/16 live at https://ssb.evbogue.com/ (with git-ssb!). I'm also recreating pfrazee's original Phoenix client from scratch.
Let's talk more on a more appropriate channel. Are you on bsky? we're having a small discussion there about "bringing open source projects back from the dead with AI" right now.
You’re OG. My first was some unknown distro that installed in DOS on my Win95 machine and dual booted that way. Totally confused me. Second was Red Hat 6.0 in 1999. That one, I was a little more successful with.
I did try that weird linux on fat32 distribution but like you I completely forgot its name. I remember that I installed it because I wanted to run bitchx and be able to send ping of death!
The reference server is an Android app so yes, that is probably the point of the default design, but reading the README I believe you can also use a more traditional server-to-server setup:
DeltaChat/ArcaneChat Integration
DeltaChat and ArcaneChat are perfect companions for Tyr. These are messengers that use email protocols but provide modern chat interfaces. When you configure DeltaChat/ArcaneChat to use Tyr's local server:
1. DeltaChat/ArcaneChat sends messages via SMTP to Tyr
2. Tyr wraps them in Yggmail protocol and sends through Yggdrasil
3. The recipient's Tyr receives the message via Yggdrasil
4. Their DeltaChat/ArcaneChat fetches it via IMAP from their local Tyr
5. All this happens peer-to-peer, with no central servers
If you run Tyr on a VPS/RPi/old smartphone, you can still exchange messages decentralised this way, as long as your server and the device/server you're communicating to are both online, and have DeltaChat/ArcaneChat fetch the messages later.
Such a setup could be useful if you find people around you using Tyr and you're losing messages because your phone kills the app, though a PoC like this probably won't have much of a network effect.
Systems can be so simple and elegant when you just assume no one will use them to send spam.
Very cool. How does this deal with offline recipients? Do the messages just get dropped, or does Yggdrasil somehow store and deliver them?
I was surprised to see this on the HN homepage, I didn't create Tyr but I did create Yggmail (https://github.com/neilalexander/yggmail) which it is based on. There is no store-and-forward as such, the sending node will keep the message in its outbox and will keep retrying until the destination is online.
Neat
“End-to-end encrypted email for the mesh networking age”
Perhaps wish we weren’t headed for such an age but glad Yggmail is here for it!
interesting, i kinda wish we were headed for such an age but i doubt we are
Tyr is probably overkill with Deltachat on top of yggdrasil. The network already is encrypted so it's fine to send plaintext emails as long as there's no 3rd party email hubs.
> There is no store-and-forward as such, the sending node will keep the message in its outbox and will keep retrying until the destination is online.
Yes I might be wrong but my understanding is there is no point in creating another system where messages hop from one peer to the other like Meshtastic or Reticulum (what make sense for their use case).
Let's say users have their "email server" running on both on there mobile phone and a home server and in sync. We can expect 2 of the 4 servers will be online at the same time to send the message. I personally like those odds, Internet is pretty reliable in our days.
I believe we have spent too long trying to solve very hard trilema in messaging, trying to have it all: confidentiality, anonymity and uncensorability ... and reliability ... and ease of use. The result is in practice most people use GMail, Outlook and Whatsapp.
Yggdrasil is fantastic, it goes back some original ideas of the Internet we have almost forgotten, and in practice solves a lot of problem we have been dealing with for too long.
back in the day a few of us used to run ssb (secure-scuttlebot) over yggdrasil (and cjdns before that) and that system would distribute the private messages to all of the peers within 3 hops. offline peers would just sync up when online and then decrypt the messages sent to them.
ssb's been broken for around five years, but now that it's working again it'd be fun try this experiment again.
2026 could be the year mesh networks finally take off!
Curious why you believe it was broken, and is now fixed. What new development are you referring to? I agree that Patchwork kinda took a dive, and functionality started to bitrot with each new maintainer...but it still replicates feeds.
I couldn't get any of their latest versions working. The ssb-server was still functioning, but had no working client that I could find. https://github.com/evbogue/ssbc is a working fork with a patchbay lite client from circa 2015/16 live at https://ssb.evbogue.com/ (with git-ssb!). I'm also recreating pfrazee's original Phoenix client from scratch.
Let's talk more on a more appropriate channel. Are you on bsky? we're having a small discussion there about "bringing open source projects back from the dead with AI" right now.
My first Linux install was Yggdrasil, just for that, this interests me…
You’re OG. My first was some unknown distro that installed in DOS on my Win95 machine and dual booted that way. Totally confused me. Second was Red Hat 6.0 in 1999. That one, I was a little more successful with.
I did try that weird linux on fat32 distribution but like you I completely forgot its name. I remember that I installed it because I wanted to run bitchx and be able to send ping of death!
If I were to run an yggmail server and configure delta-chat to talk to it, would I get a similar result?
Is my understanding correct that all involved parties must be online?
The reference server is an Android app so yes, that is probably the point of the default design, but reading the README I believe you can also use a more traditional server-to-server setup:
If you run Tyr on a VPS/RPi/old smartphone, you can still exchange messages decentralised this way, as long as your server and the device/server you're communicating to are both online, and have DeltaChat/ArcaneChat fetch the messages later.Such a setup could be useful if you find people around you using Tyr and you're losing messages because your phone kills the app, though a PoC like this probably won't have much of a network effect.