< back to notes
Decentralised tech on Recoil
(last updated on Sep 2021)
Nick Ludlam and I have self-hosted recoil.org since around 1996, typically for
email and web. These days, there are a number of interesting software stacks
around decentralised communication that we deploy. This note keeps track of
them.
- Email (active)
- Currently Postfix and DKIM/SPIF relays
- Till 2019, was OpenSMTPD and would like to return to it but waiting on
filter support.
- Till around 2016, was qmail but finally gave up due to difficulty of
spam filtering.
- Next step will be to try out the MirageOS email stack that dinosaure
has been leading the development of.
- Web (active)
- This website is an OCaml webserver running a custom multicore OCaml webserver
- Next step will be to go solar powered with a custom DNS server.
- DNS (inactive)
- MirageOS DNS server.
- Currently offline due to a hosting issue so fell back to Gandi.
- Hopefully can secondary with Hannes Menhert and his MirageOS infrastructure.
- Videos (active)
- Running a PeerTube instance on https://crank.recoil.org
- Also deployed this for the OCaml community as watch.ocaml.org, so my
personal recoil instance is "following" the OCaml one as well as having
my own videos.
- Chat (active)
- Running a Matrix server with a HTTP srv for recoil.org
- Using element.io clients to connect to it.
- Lots of federation to other services happening from this via
republished rooms, so its a fairly busy server.
- Next step is to deploy some of the OCaml Matrix clients to control
the notifications. Element doesnt have very good push support.
- Decided not to bridge this to WhatsApp/Signal/etc as the maintenance
cost is quite high.
- Activity (active)
- Deplyed a Mastadon instance for distributed tweeting via
ActivityPub, on https://amok.recoil.org/
- Images (inactive)
- Tristan Henderson pointed me to pixelfed which seems worth a try for
image sharing over ActivityPub. Not had a chance to use it yet.
- Spam (inactive)
- Problem with the chat service is that I'm getting quite a lot of spam
requests on Matrix. Am experimenting with a Tezos node to act as a
DID introduction proxy with gas costs. Hopefully there's a way to
be introduced due to some common service (or some evidence of PoW for the
communication such as having read and quoted one of my papers or something)
and have micropayment as a last-resort.
- Also deployed SpamAssassin recoil-wide and custom bayes filters.
In general, our operating system of choice is OpenBSD (since 1998 or so) with
Alpine Linux for the more recent things that run on a cloud or haven't been
ported yet.