Tuesday, 08 April 2025

Switching fully to Linux

Recently, I have been decided to move over to Linux fully. Some might say that this is stupid or dumb for me to do. But at this juncture, I think switching over to Linux is the best thing anyone can do. There are a lot of benefits to using Linux over Windows. I will quickly go over the points, but also go in-depth later on. The benefits of Linux are:

  • Free
  • Open Source
  • Well optimized
  • Long history
  • Open developer discussions
  • Wide support for hardware
  • Reliable
    • Used for servers and networking gear
  • Highly customizable

In recent years, and with a massive thanks to Valve, Linux has gotten to be mostly on-par with Windows when it comes to a ton of games out there. Some games that use Kernel-level Anti-Cheat like Easy Anti-Cheat, will not work under Proton or Linux in general if the developers do not enable that feature. However, I would make the case that any game that uses Kernel-level Anti-Cheat is a game you should NOT play. As I agree a lot with Linus Torvalds a lot, only let things that need kernel space access in the kernel. Allowing something like EAC into the kernel means you have to put a lot of trust in Epic Games, and assume that they are smart enough to not break kernel space.

Free (and Open Source)

Linux is free, as in you can do whatever you want with it, and open source to mess with it at a code level. If you want to build the kernel that is super optimized for your hardware, you can do it. If you want to insert drivers into the kernel that aren't there, like putting OpenZFS directly into the kernel, you can do that. Linux is a kernel that lets you do anything.

And following on that, when most people hear Linux, they think of Linux Distributions. You're not wrong in thinking that as it does make it easier to know what people are talking about. But every single Linux distribution (short form distro) is free to be downloaded, as you cannot sell Linux. And this distro's range from easy and beginner-friendly, like Linux Mint and Ubuntu, to more advance ones, like Arch Linux (btw) and Gentoo. It is a nice wide range to choose from, each with their strengths and weaknesses. For example, Arch Linux prides itself on being a fully modular distro. Linux Mints prides itself on being easy to use, while something like Proxmox prides itself as being good for virtualization and containers.

Well Optimized

From what I have personally seen, the Linux kernel is a well optimized code-base. With Waterfox open with 3 tabs (one of which is playing a livestream), a decently customized KDE Plasma install, CoreCtrl, JetBrains Toolbox and JetBrains Rider running, and with a ton of other programs running in the background, I am using 18.5 GiB of RAM (which is quite decent) and an average CPU usage of about 8%. My hardware specs are the following:

  • CPU: Ryzen 7 5800X3D
  • RAM: 128GB DDR4
  • GPU: AMD Radeon RX 7900 XT
    • Displays:
      • Acer KG271U
        • 2560x1440
        • Secondary
        • 144Hz
      • Acer Predator XB273U Z
        • 2560x1440
        • Primary
        • 240Hz
    • Extra:
      • VR:
        • Valve Index
  • Storage:
    • Samsung 990 Pro 1TB
      • Windows Partition
      • EFI System Partition
    • WD Black NVMe 1TB
      • BtrFS
        • Whole Drive
        • Root + Home
    • WD Blue HDD 2 TB
      • Shared Partition
    • Seagate IronWolf 4TBx2
      • BtrFS RAID-0

So as it can be seen, I do have a fairly decent desktop. I do clearly have the resource to spend, however, I would say that having the resource does NOT mean you can throw optimization out the window. Think of it this way, you are given a budget of $20.000, you find ways to optimize everything you need so that way you only spend $12.000. You still have $8.000 left to do anything you want with. The same applies to hardware in general, if you have more overhead to do something is nice than being constantly restricted down.

With that being said, I have seen Linux run well on a lot of older hardware too. Channels like Action Retro uses Linux on older hardware like in this video, where they install MX Linux to an old MacBook Air, and Michael MJD in this video of having Linux Mint running on a 2013 ChromeBook. There are a lot more examples, however, listing it out would be tedious. I think my point stands about how optimizing is a good thing.

Optimizing is also great for keeping old hardware in use. With our current issue with pollution and how much we are damaging the environment, keeping hardware out of landfills is one of the best things. It would be better to send old hardware to a recycling plant that does not produce any pollutants, but nothing in this world is 100%. So keeping old hardware in use until it finally needs to be thrown out is the best option.

Long history & Open Discussions

I am not going to go far in-depth here, mostly because Wikipedia does a great job of going over the history of Linux. The one thing I will point out here, is the fact that the mailing list (which is how the maintainers and developers talk to each other) is publicly viewable via lkml.org. Which archives the entire discussions that goes on, free for anyone to view.

Wide support for hardware

This is a bit of an odd one to add, and is debatable, however, I do consider Linux to having a wide range of hardware support. Take for instance that a huge amount of servers that run Linux, if you have an Android phone, guess what! That's Linux! Have a piece of networking equipment in your house, it is probably running Linux. Same goes for any of those Iot (Internet of Things, or as I like to call them, Internet of Shit) devices. Can your printer connect to the internet? Then it too is probably running Linux. Linux is all over the place, and you cannot avoid it at all.

What most people mean when they say Linux does not have good hardware support, is that Linux does not have good consumer hardware support. For instance, a special USB microphone that requires a program to be installed in order for it to work. Or a custom HOTAS, and I do have some experience with this. For example, the Turtle Beach Velocity One Flight does not seem to work properly under Linux, but works fine under Windows. Yet my Thrustmaster T.16000M FCS HOTAS works under both Windows and Linux, so I have to give congrats to Thrustmaster for that. So, on the consumer side, hardware choice can be a bit of an issue.

Reliable

Linux is way more reliable in my experience than Windows has been in recent years. I think the reason for this comes down to the fact that Linux has a separation between kernel space and userspace. If the userspace crashes, it does not take the entire kernel with it, generally. Windows, on the other hand, comes from a lineage where there really was no separation between user and kernel. And while yes, Windows NT was the first version to have true separation, Windows never really went away with what people felt comfortable with.

Knowing Windows users, as I once was, shows me how different the 2 platforms are. When running Windows, if a program asks for admin permissions, we do not tend to bat an eye at that. It's just a normal Windows thing that a program would ask for admin permissions. If you are a Windows user, when was the last time you wondered why a program was asking for administrative privileges? On Linux, if a program asks for root (which is the same as going into the system user account), the immediate thought is, "Why do you need that level of control?" Because everything in Linux is centered around isolating users, everything is centered around the home folder. If a program is asking for root permissions, that is basically the program saying that it is going to modify the entire system.

Highly Customizable

From extremely modular desktop environments like KDE Plasma to more restricted ones like Gnome, and every distro out there has a level of high customization. You can customize your Linux environment to however you like, like how I have my KDE Desktop Environment set up.

Image of my desktop

While KDE Plasma's default layout is familiar to Windows, it can be customized to look however you want. And a good example of this is r/UnixPorn, where users show of their customization (also known as ricing) of, not only KDE Plasma, but other Desktop Environments. Ranging from floating window manager, to tiling window managers. You run the Linux kernel as if it is a program to treating it like an actual OS. In Linux, everything is meant to be customized to your use case.

An unhandled error has occurred. Reload 🗙