Late at night, sitting on the sofa, legs up, laptop on the lap, endless scrolling the social media…
All right, I did it. I disabled snac and installed GoToSocial again.
snac is a super light ActivityPub server written in C. I liked the C. It had dynamic strings! It was like C with magic dust sprinkled on top of it all. I even contributed a bit of code. It doesn’t use a database but JSON files in the file system. I like it.
Here’s what I didn’t like.
When I followed a person, all their posts ended up in my feed, even if they replied to people not in my feed. It was confusing. I remember this used to be a default in the distant past, and I remember Pleroma having this, too. When that default was changed for Mastodon, I didn’t like the change. Now, I don’t like going back. I am following hundreds of accounts from my main octodon.social account. I imported just a small sliver into snac, and it already felt like a glorious mess.
I know, the Mastodon style can be confusing as well: If I follow two people, A and B, and they are talking with a third person C which I don’t follow, then I’ll see replies from A to B and from B to A, but not from A to C, C to A, B to C and C to B. It can be weird. But I can always click a toot and look at the thread.
In snac, entire threads pop back up to the top if there are new posts. Cool, you don’t have to click on the toot and wait for the entire thread to load. But if a thread is longer than three or four messages, you’re going to start resenting it. There is a lot of scrolling to do. And when people reply to different messages in the same thread, you can’t quickly jump to the places where the new messages are.
You can’t just add threading without infrastructure to navigate threads. A threaded newsreader was a glorious thing to behold. I loved my Gnus, back when I spent a lot of time on USENET. But Gnus is sophisticated. It has a many features to help me navigate the constant influx of messages and snac does not.
OK, so moving one up from snac I feel we have GoToSocial. More features on the server side, but no real client user interface. You need a Mastodon client on your phone or laptop, or you need to use a web client like Pinafore. That works.
When I set it up, I thought I could just use the same setup I used half a year ago. See 2022-06-08 No GoToSocial. But that wasn’t true. Federation was broken until I added some more lines to my virtual server setup. Sign-in was broken until I unset the Content-Security-Policy header. Oh well.
This is what the Apache config looks like:
<VirtualHost *:443> ServerAdmin alex@alexschroeder.ch ServerName social.alexschroeder.ch SSLEngine on Header unset Content-Security-Policy # https://docs.gotosocial.org/en/latest/installation_guide/apache-httpd/ RewriteEngine On RewriteCond %{HTTP:Upgrade} websocket [NC] RewriteCond %{HTTP:Connection} upgrade [NC] # set to 127.0.0.1 instead of localhost to work around https://stackoverflow.com/a/52550758 RewriteRule ^/?(.*) "ws://127.0.0.1:4025/$1" [P,L] SSLEngine On ProxyPreserveHost On # set to 127.0.0.1 instead of localhost to work around https://stackoverflow.com/a/52550758 ProxyPass / http://127.0.0.1:4025/ ProxyPassReverse / http://127.0.0.1:4025/ RequestHeader set "X-Forwarded-Proto" expr=https </VirtualHost>
So now I’m think I’ll try and slowly move my stuff to @alex. Let’s see how it goes. For the moment, @kensanata is still my main account, but that might change in 2023. (Update: I moved.)
#GoToSocial #Social Media #Mastodon #ActivitPub