µLog #4

2020-09-02


Making gemini:// clickable on Mastodon.


I just patched my private Mastodon instance to make gemini:// links work.


2021 Update:

Mastodon versions 3.3.0 and up does this by default :)


Mastodon's inefficient tooling


The first ever patch I applied to my Mastodon instance was to increase the character length limit. I only found out yesterday it didn't work properly, so I updated the patch to fix the oversight.


And it still didn't work on "production".


I managed to fix it just a couple hours ago, and for that I needed to completely clobber all the generated JS files, and re-generate them from scratch.


The problem? Doing that eats all my server's memory, and then some!


Because of that, I had to stop all Mastodon, Gitea, Postgres and Redis processes until the JS files update, and even then it takes a VERY long time.


Now, Mastodon itself isn't exactly the slimmest thing when running, but it's a LOT better than, say, GitLab, which uses a similar tech stack.


My server has 1 GB's of memory with +2 GB's of swap, a single core and 20 GB's of storage, It's not exactly the best thing, but it's cheap (important, especially with the exchange rates in my country) and still has some room for a thing or two, especially since I try to choose stuff based on the weight of the server.


To anybody who does self-hostable server software, PLEASE think of lower-end servers. Not everybody wants their stuff to scale to tens of servers with everything on a separate box hosting thousands of users. Even if they want to, it's not cheap to do it either.


Thank you.


🐺 · CC BY-SA 4.0 · me@ecmelberk.com