Today I had a chance to fix the last thing I wanted to do before trying to get all of my friends into Mastodon: Upgrade my instance to using glitch-soc. The number one reason is that I hate the threading mode view of long-form text on micro-blogging platforms. I'd rather this just be a blogging platform really.
The process was not as painless as it could have been, but it was fun.
I started out with the straightforward documentation on https://glitch-soc.github.io/docs/. The first thing that broke was in step 1.3. Simply doing a checkout doesn't work the way this code expected. On step 2. the `git pull` failed because I was on a detached head.
I turned to the indispensable Stack Overflow and found https://stackoverflow.com/a/4879224/1609543. After updating my master branch to track glitch-soc/master, `git pull` successfully did a fast-forward on my current branch.
The next thing to break was my set of modifications for image and video size. `git pull` warned me about the conflict. `git diff` went straight to it. glitch-soc allows you to use environment variables to set the image and video maximum size, so I converted my values into the correct settings and `git reset HEAD $f && git checkout -- $f` my changes away.
The next issue was a lot harder to deal with, but I got great and timely feedback from one of the developers of glitch-soc. That whole event is chronicle here: https://github.com/glitch-soc/mastodon/issues/1365.
Essentially, Digital Ocean provides a helpful rake task to handle the basic configuration when you get started. It depends on the `tty-command` gem, which glitch-soc no longer installs. This meant that all of my rake tasks were failing trying to load this file. The stack trace didn't make that very clear and I restored this instance from snapshot around four times trying to figure this out.
It's all good and all working now though. I'll call that a good day's upgrade.
We come here in search of a place to express our thoughts outside of the direct control and surveillance of unaccountable, mega-corporations. There is no common theme that binds us other than these being the bonds we've chosen rather than those that have been chosen for us.