> I wanted to check out Mastodon and looked into setting up a node. It's a nightmare of rube goldberg machine dependency hell. It's not that I can't, but that I don't have time to mess with it.
The sad thing is that we've had a solution to this for decades. Installing Mastodon should be "apt install mastodon" and you're done. Maybe add a PPA first if it's new enough the distributions haven't included it yet.
But people keep using Docker for this. The problem is that most users, even many sysadmins, have never used Docker before. Then they look into what it is and discover that it's a heavy, complicated thing with security issues and the user walks away.
I mostly blame the UX the package managers have for package maintainers for this. It needs to be as easy to create a package for the major distributions as a Docker container. Otherwise people take what looks like the path of least resistance at first and then don't revisit the decision soon enough.
I agree quite a bit with your last paragraph. Linux package managers are awful, with the two most popular (deb and rpm) being hellscapes of haphazard poorly documented cruft.
Linux distributions are also harder to deal with than the Apple Store, an "accomplishment" given how bad that is. Getting a package into them is terrible. They are informal cliques, and that worked back in the 90s but now doesn't scale.
Package management in general is an area ripe for a complete overhaul. Unfortunately that's hard, and it's hard not to fall into the "second system effect" trap and create something even more unwieldy than what you are replacing. Look at systemd.
Indeed, I tried to learn how to make a Debian package. A proper one that followed the guidelines (even though I wasn't trying to get it into a repo), not just one that's shoddily converted from another format.
The tools are just a bunch of hacks designed for the particular environment and habits of the few people who make Debian packages. They don't even try to document how an outsider would learn to do it.
Not sure why you added systemd to this, though, except to appeal to the old guard of sysadmins who don't like systemd and show up on HN a lot? It seems a completely unrelated conversation.
The sad thing is that we've had a solution to this for decades. Installing Mastodon should be "apt install mastodon" and you're done. Maybe add a PPA first if it's new enough the distributions haven't included it yet.
But people keep using Docker for this. The problem is that most users, even many sysadmins, have never used Docker before. Then they look into what it is and discover that it's a heavy, complicated thing with security issues and the user walks away.
I mostly blame the UX the package managers have for package maintainers for this. It needs to be as easy to create a package for the major distributions as a Docker container. Otherwise people take what looks like the path of least resistance at first and then don't revisit the decision soon enough.