Throughout this series I've shown you how to set up a Matrix server and client using Synapse and Riot, and make it much more robust as a service by integrating a database server and a mechanism for making VoIP more reliable. Now we'll wrap it up by doing something neat, building a simple agent network in Huginn to post what I'm listening to into a Matrix Room. I have an account on libre.fm that my media players log to which we'll be using as our data source. Of course, this is only a demonstration of the basic technique, you …
Previously in this series I showed you how to migrate a Matrix server to use Postgres, a database server designed for busy workloads, such as those of a busy chat server. This time around I'll demonstrate how to integrate Synapse with a STUN/TURN server to make the voice and video conferencing features of the Matrix network more reliable. It's remarkably easy to do but it does take a little planning. Here's why I recommend doing this:
If you are reading this, chances are you're behind a NATting firewall, which means that your device doesn't have a publically routable IP …
In my last post about the Matrix network I covered how to set up a public Synapse server as well as a web-based client called Riot. In so doing I left out a part of the process for the sake of clarity (because it's a hefty procedure and there's no reason not to break it down into logical modules), which was using a database back-end that's designed for workloads above and beyond what SQLite was meant for. I'll be the first to tell you, I'm not a database professional, I don't know a whole lot about how to use or …
quantum documentation inconsistency principle - An axiom of corporate life in which there will always be more than one piece of documentation for something, all of the documentation will be measurably contradictory, and none of the procedures will work anymore. See also clandestine institutional knowledge.
EDIT - 20200804 - Updated the Nginx stanzas because the newer versions of Certbot do all the work of setting up SSL/TLS support for you, including the most basic Nginx settings. If you have them there you'll run into trouble unless you delete them or comment them out. Also, Certbot centralizes all of the appropriate SSL configuration and hardening settings into a single includable file (/etc/letsencrypt/options-ssl-nginx.conf) for ease of maintenance.
A couple of years ago I spent some time trying to set up Matrix, a self-hosted instant messaging and chat system that works a little like Jabber, a …
clandestine institutional knowledge - The phenomenon in which everybody knows the documentation is wrong and people are so pissed off at said documentation that they don't ever bother to try to fix it. Instead new hires have to play Indiana Jones to find the two people left in the organization who have any working knowledge of the thing and beg to be trained up so they can actually do their jobs. Normally, the newly trained individual doesn't bother to update the documentation, either.
footnote: Most of the time, nobody has the access to update the documentation anymore, which is why nobody …
It doesn't seem that long ago that I put together a Pi-Top and started tricking it out to use as a backup system. It was problematic in some important ways (the keyboard's a bit wonky), but most of all the supported respin of Raspbian for use with the Pi-Top was really, really slow and a bit fragile. While Windbringer was busy doing a full backup last week I took my Pi-Top for a spin while out and about, and to be blunt it was too bloody slow to use. At first I figured that the microSD card I was using …
tumbleweed mode - noun phrase - The phenomenon in which all official support forums for something are either abandoned (no activity for a protected period of time), or any posts that aren't lowball questions (such as "Where's the FAQ?" or replies to release announcements) are utterly ignored (meaning, actual technical support questions).
I'm writing this article well before the year 2020.ev starts, mostly due to the fact that Twitter's search function is possibly the worst I've ever seen and this is probably my last chance to find the post in question to refer back to.