Post by @stefano@bsd.cafe
I like Mastodon, I really do. But it has so, so many dependencies, and updating it on illumos or OpenBSD is getting really difficult, release after release.
Some dependencies are primarily distributed as binaries, or only build on Linux and macOS. It's not Mastodon's fault, but it depends on them.
That’s why, in my opinion, solutions like snac, GoToSocial, or littleFedi have a reason to exist: all of this is much, much easier...
#Fediverse #snac #GoToSocial #littleFedi #OwnYourData #Mastodon
10 boosts
Esther Payne
@onepict@chaos.social
Send Cookies@otfrom@functional.cafe
"Niko" Krupinski 🧡🏴☠️@dnkrupinski@hannover.town
Justine Smithies@justine@snac.smithies.me.uk
Stefano Marinelli@stefano@illumos.cafe
@stefano I regret basing my instance on Mastodon, simply too big for a single user. If there was a decent way to switch software, I would strongly consider it.
I started with pleroma and didn't like the way the project was poorly managed.
Bugs that lasted years considered less important than stupid new features.
Mastodon on a proxmox debian vm is lighter than I expected.
The biggest point anyway , is the trust on the development team.
@luca if the load is low, it's not that heavy. I have (had), a single user instance for some time, and it wasn't that loaded. And for large(r) communities, it's quite good, well structured and scalable.
I like it, really. And it's not a Mastodon problem, but a similar problem exists for all the modern stacks that depend on a lot of external dependencies.
For myself I'm fine with mastodon, though the stack is complex also on Linux 😀.
I do have a quarter of an idea of trying to selfhost a #holossocial relay server, because I love the idea of letting the users smartphone be the servers, as much as they can
@stefano Ruby and Python have all the conts of interpreted languages and all the cons of compiled ones.
You know it's bad when it would be easier to deploy if it were written in Java.
@peteorrall Installing it on FreeBSD isn't hard and, at least for now, it worked flawlessly: https://it-notes.dragas.net/2022/11/23/installing-mastodon-on-a-freebsd-jail/
But when you touch some other architectures/OSes (less widespread), the limits of the "I tested it on Linux and MacOS and it works" are evident.
I'm not complaining - but it's quite common, nowadays.
@stefano @peteorrall this is a complete natural thing. You put your ressources, where they are most effective. That's why most BSDs dropped support for armv6hf (raspberry pi1), FreeBSD even dropped i386.
If you want your edgecase to be supported, you need to work for it.
Complaining is cheap and ragebait works in the fediverse, too.
You can help an existing project to support for rarer platforms, or make your own (with blackjack and hookers!) - both is fine.
@treibholz @peteorrall sometimes it's not of putting them where's more effective, but just ignoring other platforms. And yes, I understand it, I'm not complaining.
I've personally helped to make some software compatible with the BSDs. Instead of complaining, fixing is much more effective (and satisfying, IMHO)
@stefano
I understand you having tried to run it "natively" on Linux. I reverted to podman aka docker (running in a VM ;-) ). Wouldn't this be also a solution in your environment?
@WarpinWolf no :-) The illumos Cafe cannot run it on Linux, it wouldn't make sense.
But I found a sort of compromise: until I'll have fixed the procedure (and a couple of bug reports out there, already fixed in main), I'll run it into a LX zone in illumos. So technically it's illumos, but it's an Alpine Linux (emulated) zone.
@stefano I like the 'documentation first' approach. Never sent it before, but it's nice. What I read sounds so sincere and bullshit-free I can't wait to run it.
@po3mah the documentation is lagging a bit behind. It's there, but not totally accurate, because the code has been changed. The first release will probably have a minimal documentation, while they fix the other parts, and it will be progressively released.
@stefano I don't run my own Mastodon instance, but I've ended up regretting deploying pretty much every application that had a sprawling network of dependencies. Even if you stay on the supported path - Linux, supported distro, etc. - it becomes a major pain to diagnose and fix problems, apply upgrades, etc. when there are so many moving parts.
It's a difficult choice as a developer, but IMO the "monolithic architectures are bad" advice going around ~10 years ago has caused a lot of problems.
@coreysnipes There‘s always nuance to these things, and there is no one-size-fits-all answer.
But I also think the multi-service-architecture is something that has been sold to a lot of developers by hyperscaler PR under false pretenses.
@ploum many people I know do, and I’m using it for a lot of projects. Since 2023, when I started to use it, all I had to do was compile and run. Minimalist portable C, at its best
@ploum @stefano I absolutely did for a while too. At some point I switched to Gotosocial because of issues with my iOS clients (likely fixed since then).
I do keep a my old #snac instance alive as an archive and update it just as easily as in the past years with that little script that just fetches the source and compiles.
👾