Distortion Wizard

A Make-or-Break Attempt to Escape the Quagmire of Horrid Black Depression and Lunacy

I've relatively recently migrated from Linux to FreeBSD for most of my machines. I'll tell you about it. Real briefly.

The reasons why come first. There's a few.

Starting off, I actually don't like Systemd. I used to kinda like it way back when I didn't know all the things I needed. So the problem was lack of accessible documentation. Now though, I don't really know why the entire software ecosystem should converge on the same tool anyway.

I kind of dislike the fact that there's a single tool that has all the control over my system. It'd be better to have one tool for one purpose, maybe even one tool per purpose per OS.

Moreover, there's really only one Linux distro remaining that I really like anymore, and that's Gentoo. It is somewhat inconvenient to use, however, if you want to get some proper work done and not sweat about it, but it's the only distro that truly gives you control – or at least, has done so far.

It's the only distro I know where there's a clear path to use another init system/service manager if you so choose. On Gentoo, it's also relatively convenient to compile your programs yourself. I don't even know how that's done on Debian, unless it's without the package manager involved at all. Plus, as an added bonus on Gentoo, you get to avoid all that nonsense about Snaps, Flatpaks and things.

Relatively recently too there's been some talk about adding age verification on the OS level. I guess Systemd is the injection vector on Linux then. That's complete lunacy, of course. And it looks like it's an attempt to, again, make it more difficult to compete with the American big tech, as well as possibly to brick older or noncompliant devices – not right away, mind you, but in the long run, certainly it could be used for that.

You see, as long as literally everyone uses the same online services, whoever controls those apparently controls your OS! You just go ahead and think that's justice.

Obviously, there's gonna be workarounds, and so it's not going to be effective anyway for the purpose that it's claimed to be for; there's a billion ways to lie about your age, if you only bother to do it. For me though, it's sadly too late.

By the way, think about what that does to whistleblowers and politicians and whatnot. Everything that reduces the entropy of whatever's identifying you means more of you getting busted by an evil government entity, a stalker, or an internet bully or a rapist. So good luck with that.

Good luck with that now in the age of huge AI models that crack your OS security like a nut – or fail to deliver, thus causing the literal bankruptcy of quite a few countries in the world.

No, technology isn't a silver bullet to save your children. Believing all problems can be automated away is moronic. This is a human problem and not a guardrails + maybe some chains and some bondage problem. Bitch.

Anyway, there's more to talk about.

I've also noticed that the standard Linux tools' user interfaces have changed multiple times without a clear reason over the years. I dislike that. I don't want to learn new commands for things I already knew how to do, because that's like pulling the rug out from under me. You don't fucking do that. You never ever change the API. You only add to it. Never change the public interface of a popular tool!

And more still.

I've used FreeBSD for a while and I've noticed how the user experience is roughly the same as starting out with Linux was years ago. It's just an OS, but it's not like it's unusable. It's actually relatively good. In some respects, better.

For example, the ports system is the most elegant I've used. It makes it real simple to compile packages if you want, but you can also install binaries directly, both with the same package manager. Maybe it's a little rough around the edges, but the idea is exactly what you want on a real system.

And moreover, I've learned that Jails were invented a long, long time ago, and they're pretty much doing what Docker's supposed to do now. Except Jails work more like VMs on your regular system, while Docker requires you to write Dockerfiles instead. Both introduce sandboxing, sure, but I'm just not even all that convinced Docker solves a real problem – because after all, if you know your system, then you probably know what programming languages and technologies to use. You've also got Systemd sandboxing, as well as several access control doo-dahs to pick from. Just layer those if you want sandboxing on Linux.

If you know your system, you know what technologies to use, yes? So what's it give you then, to be able to run the same Docker containers everywhere? It gives you the Cloud. That's what. It makes it so convenient to pay big money to big donkey tech.

So let's just all Docker the dockerydoo, even if we have to force you do it.

You should also pay some attention to who is contributing to open source projects in the near future, including Linux and whatever's in the Linux Foundation's orbit, like PyTorch. Tell me it doesn't smell.

The only thing's missing on FreeBSD is literally general GPU compute. That's because NVIDIA hoards CUDA and only gives it to Linux in exchange for big money-roo. Luckily, I've discovered I don't really care about general GPU compute anymore. If you do though, then surprise, surprise, you're bound to use Linux. And no, you actually are literally bound, because Docker, and because Windows Subsystem for Linux.

And so, open source as a principle does not mean a goddamn thing anymore in the AI world. Not unless you roll your own ML stack, almost from scratch, and, crucially, without any GPUs.

And indeed, when it comes to general GPU compute, I've come to slowly hate AI, except whenever somebody literally names an actual algorithm under the AI umbrella. Name one! Or go fuck yourself.

Anyhoo, after all that, I'll just say one more thing. FreeBSD isn't really the solution because it's FreeBSD. It just seems to be relatively saved from what I think is absolute lunacy, for now.

I've also contemplated experimenting with OpenBSD and DragonflyBSD, or maybe finding a new Linux distro I can actually trust. It's just that now that Linux's become mainstream, I'm gradually starting to think it's bound to become slop sooner or later.

Luckily, however, the kernel isn't the entire OS, and there's relatively little I can blame it for – I hope I'm not contradicting myself too much, as I referred to the OS entire by "Linux" earlier – but it's the sanity of the ecosystem that counts. And the FreeBSD handbook is truly one of the most sane things I've seen in years. I guess we'll see how it turns out, and whether I'll have to eat these words.

Personally, all this stuff that's mentioned here actually contributes a big reason why I dislike the IT field generally. Because there's this herding and subtle manipulation all over the place. It's just terrible, and it benefits no one.

There's also talk of some Rust rewrites in the Linux world, which might or might not leak into other projects, as well. So, I'll just go ahead and complain about Rust too.

For example, about this "safe code". Did you know that you can absolutely write memory-safe code in C/C++? Did you know you can use practically any old language, including Rust, to write unsafe code, so it'll do some nasty thing, buried under all that complexity so no one'll find out? So what the fuck are you talking about? "Safe code." A bunch of humbug.

It's like mentioning you don't use unsafe code in a Rust project is somehow qualitatively different to mentioning you only use safe patterns on a C++ project. Most people don't read the source that deeply anyway. But my argument isn't even so much "anti-Rust." It's more like "why use Rust specifically?" What you could instead do is create a tool that effectively generates safe C. So why not? It's like you're compelled to rewrite the code in another language.

No, man. Just for the sake of argument, I'd rather maintain that Rust doesn't increase safety in any meaningful way, it forces you to learn their weird-ass APIs for simple pointer manipulation, and it actually lacks the ability to do stuff that's been long-established in the C/C++ world, such as custom allocators and GPU code, windowing systems and graphics, all of which you must now write a shim for. Not that it matters anyway, because it's already there in other languages too; might as well buzz over to Haskell or Pascal or something; so why aren't you doing that? It's deeply suspicious.

The entire Linux kernel should be rewritten in Haskell. This has been ordained by the Lord himself, if only you read the signs.

No, I think I'll just brush up on my C++ and force everyone to use it, because why not.

But anyway. FreeBSD is excellent, AI should die now, and Rust is completely unnecessary.