2022 December 24
Okay, let's try this again.
First, I tried using Signal via Matrix. That wasn't a great experience. The bridge had some issues (especially on first contact with someone), signald used a bunch of resources for some reason despite not doing anything.
So I tried Axolotl. That mostly worked, but there were still some issues, mostly stemming from the third-party Axolotl client not supporting all the features I wanted. In particular, I couldn't set up a profile properly.
For my third attempt, I'm using signal-cli, an unofficial interface to libsignal-service-java (which has been archived, apparently). Lyudmila and nico from ctrl.alt.coop wrote a guide for how to set this up, which I largely followed to get signal-cli working and link the desktop client. So far, this is a better experience. v2 groups work, and I'm in a couple of groups.
It's a little awkward since setting up the account and linking new devices requires a command-line tool, but it works. As long as Signal doesn't do something hostile to break this setup (which hasn't seemed to be the case), I think it will continue working for me. (This is good, since it looks like I'll be using Signal for actual school/work purposes.)
If you don't log in for a while, Signal Desktop apparently unlinks the device and requires you to re-link with signal-cli. That's happened once so far (and will probably happen again when I finally get around to booting up one of my computers that's been off for a bit).