Online tutorials suck, at least everything specifically discussing Linux/BSD stuff.
It wasn’t like that in the past, we had only a few major distro’s (and everything that’s not independent was either Debian based or Red Hat based), 1 init system, 3 DE’s, less than 10 package managers, a couple of window managers, and so Linux tutorials and help threads would involve the command line.
Because while the GUI’s were quite diverse, command line was almost entirely universal (only the package manager was different).
But things have changed, now we have a shit ton of distro’s (although most are based off Arch, Debian, or Red Hat, but quite a lot of OpenSUSE-based, Ubuntu-based, Devuan-based, Manjaro-based, Gentoo-based, and way more have shown up), we have dozens of init systems, dozens of DE’s, a few dozen package managers, a shitload of window managers, and so on, and now Linux tutorials are basically useless.
Let’s take LandChad for example, your one stop shop for how to set up your own servers.
It’s very handy if you’re running a Debian server, and maybe Ubuntu as well, but once you use something else (AlmaLinux, Rocky Linux, OpenBSD, FreeBSD, or even Devuan sometimes, or hell, Debian testing even), you’ll start hitting the wall quite often.
Or you take something from Digital Ocean (not linking to it, because Cuckflared), unless a certain tutorial is explicitely marked as for a certain distro or OS, instructions are going to be for Debian by default, and then people wonder why Debian is “the right tool for every task”.
And it’s quite understandable, because verifying across multiple platforms takes time, so you want to stick to a single option that most people most likely will use (for the record, in the past most tutorials used to be specific for CentOS only for the same reason).
Now TechnicalSuwako (I2P (AH), Tor, Clearnet, Tilde, Gemini) released an article about how to register a .i2p domain name, and it makes me understand why tutorials are like that.
She tried to do her best to cover 4 (6?) different systems; Artix/Arch, Devuan/Debian, FreeBSD, and OpenBSD.
Some parts were specific to Linux and OpenBSD + a separate step for FreeBSD, some specific for Linux and FreeBSD + a separate step for OpenBSD, some were specfic for Linux as a whole and BSD as a whole, some for Devuan/Debian, Artix/Arch, OpenBSD, and FreeBSD, and so on.
I have much respect to at least take the time to test on all 4 systems before publishing, but it’s easy to see why so many others opt to just 1 Linux distro and ASSume users of all UNIX-like systems can “just adjust according to whatever you’re using”.
The funniest was the tutorial on how to automagically redirect Tor users to the .onion mirror, it seemed to be quite uniform until the last part of where you need to restart nginx.
She just listed 5 different commands for 5 different init systems, why couldn’t she just have said “just do /etc/init.d/nginx restart
” then, which is the init system independent way of restarting a service?
It gets even more ridiculous at the Tor exit node installation guide where even though she only covers 2 systems (Devuan and OpenBSD, though she threw in Debian at the very last moment), the Devuan part on how to enable and restart Tor and Unbound on 4 different init systems alone covers almost my entire monitor.
OK, enough bashing (huhu, bash! use zsh you fucking bloattard! deeeeerp) of the over 2300 year old earth god, I really do respect her extra effort to cover multiple distro’s/OS’s/init systems, but I used these as an example because she’s the only one I know of who does that, whereas everybody else just focusses on Debian stable (and thus with SoystemD) to show you why I can sympetize with all the others.
But it does result in situations where even tutorials that cover over systems often fall short.
For example the guide on installing Pleroma on anything other than Debian.
Even if you follow the steps to the letter, you will fail to install it.
I even tried as a test last week on both FreeBSD and OpenBSD, so I know what I’m talking about.
Or iRedMail (not going to link to it, because they show the white screen of death if you have JS disabled, even though there’s literally no reason at all to require JS).
Even though they (claim to) support CentOS Stream, Rocky Linux, Alma Linux, Debian, Ubuntu, FreeBSD, and OpenBSD (and with the exception of Debian and FreeBSD they only claim to support older versions), it’s only actually installable on Debian.
And even then, if you use Devuan, the installation script will punish you for not having SoystemD installed, and even if you manually remove all the dependencies on SoystemD in the installation script, it’ll still demand it.
I failed to get it working on both FreeBSD and OpenBSD as well, despite these being allegedly supported.
There is someone who made a modified script for Devuan (click), but that too failed to work when I tried it.