I’ve always been in a sort of love hate relationship with Linux. I’ll try to explain using Android and iOS as an example.
iOS is the mainstream phone operating system. It’s complete, it’s polished. There is a unified design language and all of the functions and features work together. iOS is a complete experience. However, it is locked down. There are many things iOS just cannot do. Jailbreaking solved a lot of these issues, but it was always clunky and never enough freedom.
Anroid is the most popular phone operating system. It’s complete, it’s polished. There is a unified design language and all of the functions and features work together. Android is a complete experience. Additionally, you can completely change the look and feel of your phone, with new launchers, customizations, icon packs, developer options, etc. There are some settings that require rooting your device, but that’s mostly easily bypassed, and most of the restrictions are there to protect the core functions from people who don’t know better breaking them.
Windows is the iOS of this example. It’s the most popular desktop operating system, by far. It’s not as polished as iOS or macOS, but there is a vision. The tooling is complete and there isn’t anything that feels like it needs to be hacked together for the system to work. There are some settings that are locked down to protect the core system, but otherwise it works.
Linux should be the Android of this example. Android is a flavor of Linux, therefore Linux has the capability to be a complete experience. But it never seems to be. Linux desktop always feels incomplete. Even Ubuntu, the most mainstream Linux desktop environment, feels incomplete. It feels like the design language is inconsistent. It feels like I’m always needing to add custom repositories for basic things to work. It feels like some tool or application I’m looking for isn’t compatible.
Defenders of Linux will argue that this is by design. GNU/Unix was designed to be a collection of micro-apps; each with a dedicated purpose. The deisgn and tooling of each app left up to it’s creator, and interactions between them should be piped through the shell. It’s a decentralized experience, for a decentralized OS. All in the name of getting away from the heavy handed OS’s of the corporations that came before.
But we’re not in the 70’s and 80’s anymore.
I want a computer that works. Not just works, but one where I don’t feel held back. I want to go watch YouTube without worrying about which codecs are installed, or about screen tearing. I want to play games without worrying about if the developer bothered to port it to this “niche” system that most of their customers aren’t using.
I want an operating system that doesn’t get in my way.
My above gripes are getting better. Proton is making Steam’s catalogue more accessible to Linux. But the Operating System itself still feels clunky. It still feels like I’m on manual drive with the whole experience. There is always something to fix, patch, bodge, sudo.
I’ve tried a few desktop distros, and the one I’m using right now is Elementary OS. Elementary OS feels different. There is a learning curve, there always will be. But Elementary OS gets out of your way. Everything that I’m looking for an OS to do is there, and I don’t have to open the shell unless I’m coding. The AppCenter keeps my apps up to date and curates a list of apps that work with the tooling and experience of the OS. Elementary OS does what I think most other Linux distros don’t.
It lets you forget that you’re using it.
I don’t think about the fact that my laptop is running Elementary OS. I just turn on my laptop and start using it. I don’t worry about where I’m getting my apps from. I look in the AppCenter, and on Flathub. I click, and the apps are installed.
A tool should do it’s job without you having to think about it. I don’t have to think about the convoluted history of hammers for one to drive a nail. I shouldn’t have to think about the convoluted history of Linux Desktop Operating Systems for me to browse the web and do my work.
Stop holding Linux Desktop back by working in the 70’s and 80’s. Arch isn’t going anywhere for those of us who do like to tinker with every single piece of a system. But for most people, we just want something that works. Elementary OS works.