DEV Community

Discussion on: Recomendations in choosing a Linux distro

Collapse
 
erebos-manannan profile image
Erebos Manannán

A lot of people are going to suggest Ubuntu or other Debian -variants to you, but please save yourself some trouble and steer away from them. Debian -variants suffer from an incredibly unstable package manager that has consistently over the decades failed to get significant improvements and fixes to issues.

Only a Debian -based distribution is going to end up with you trying to run some updates and it telling you it needs to uninstall your OS kernel (the core of the operating system) before that can be done, but it can't do that because everything else on your system depends on the kernel being in place.

Similarly specifically Ubuntu has a bad history of being one of the few distributions with consistent issues on booting with various kinds of computers without kernel tweaks and such where literally any other Linux distribution just works out of the box.

Some of the other distribution families also have the most mind-blowing issues. I vividly remember my experience with trying to get Arch Linux on a laptop just to realize that the font configuration was made such a huge mess that it wouldn't come with decent font support for LCD screens out of the box.

RPM based distributions are generally much more stable and sensible, and often provide usability far exceeding Ubuntu.

An additional point worth considering is that one reason Linux knowledge is so valuable is that it dominates the server market. However, in the server market there really are only two popular choices: CentOS, and Ubuntu. Though my personal opinion is that Ubuntu is chosen by the people who know very little of Linux administration.

CentOS is basically the open source version of RedHat Enterprise Linux, which has it's bleeding edge of development done in the Fedora distribution. Using Fedora or Ubuntu on desktop will thus give you skills most easily applicable to the server -world, though some of the tools you will run into with Fedora are likely not going to be available on servers for some time still.

Now I've been using Linux on desktop since the late 90s, and I've seen quite a bit of progress happen, however I gotta warn you that if you expect a smooth desktop experience like on Windows or OSX you're going to have a bad time. The Linux Desktop "market" is still incredibly fragmented with a lot of competing platforms, libraries, tools, etc. that seem to mostly focus on bickering instead of interoperability. This means you will regularly run into issues with drag & drop not working between applications, and other such fun surprises, just because you are not using the "correct" file manager of the 20 options available and so on.

Additionally if you happen to run some hardware that the Linux community just doesn't care about you're just going to have an incredibly bad time. I heard that the Intel GPU drivers are among the best for Linux, so when I had an extra computer with an Intel integrated GPU I immediately installed Linux desktop on it to try out how well that works. Turns out with that specific GPU hardware acceleration support would make your computer completely lock up after just a few hours of use, and the only workaround was to turn off hardware acceleration making the computer way too slow for any sensible use.

If you are however willing to risk it, and understand that there are likely going to be issues that you will have to post to Stack Overflow, IRC, and various forums about, I wish you good luck and hope you have fun learning!

Some of my favorite distributions I can highly recommend are:

  • Mageia: A very friendly desktop distribution mageia.org/en/
  • Fedora: An all-round solid choice, one of the most widely supported distributions out there getfedora.org/
  • elementary OS: Ubuntu-based so suffers from many of it's issues, but if you really want something Ubuntu-based this distribution is actively trying to fix many of the issues of Desktop Linux elementary.io/
Collapse
 
vgrovestine profile image
Vincent Grovestine

+1 for Mageia as a friendly entry-point to desktop Linux. I used it's forerunners--Mandrake and Mandriva--for a while before settling on my current distro of choice (Mint+Cinnamon).

Likewise, CentOS is a good choice for a server-like environment where it's based off Redhat Enterprise Linux. (RHEL powers the majority of the Linux servers at my workplace.)

Collapse
 
khophi profile image
KhoPhi

"Only a Debian -based distribution is going to end up with you trying to run some updates and it telling you it needs to uninstall your OS kernel"

Are you sure about that? I've been using Ubuntu for some 10 years, and there's not been a SINGLE instance where a package asked me to uninstall the kernel, just for the package to be installed.

I'll love to be enlightened. What package is that exactly? I've compiled and built packages from source for many different applications, and NONE has EVER requested that condition.

I'm curious.

Collapse
 
erebos-manannan profile image
Erebos Manannán

Of course there is not a single package responsible for all the problems, this is a recurring issue that just happens when apt gets really confused about what it should be doing.

It regularly starts with a situation like this imgur.com/a/yXyD7 and then following the advice the software is giving.

Also you are aware of the fact that just because you have not seen a problem it is possible for it to exist? I've been using Debian based distributions since the late 90s and getting apt so confused as to not know what to do other than try to uninstall most of your OS is a recurring theme.

But if you want more material, here are some of my other complaints about Debian -based distributions, some less common than others:

  • Installing a package with a service automatically starts that service, so you often end up having to do several extra steps to get services configured to work the way you want them to: install, stop service, delete data, reconfigure, start service

  • Packages end up lingering around way after they're needed. Typically a Linux distribution suggests about 200MB /boot -partition, which gets quickly filled with the endless kernel images your Debian -based distribution installs without cleaning up the old ones

  • You just want to update your packages so you run apt-get update && apt-get upgrade -y and end up having to answer a million questions you shouldn't need to know the answer to when it's updating grub and other system critical packages

  • There is no easy way to suppress all user interaction requirements when installing packages, for every package you end up having to find how to pre-configure the selections for the answers you want instead, and there are a LOT of useless questions these systems tend to ask from people who shouldn't need to know the answers to them or even understand the questions

  • Randomly finding that the service for your package is just configured to run /bin/true instead of the binary for the service (e.g. openvpn server)

  • /casper/vmlinuz.efi: file not found, requiring acpi=off noapic or other kernel parameters to boot the installer and not having those boot parameters automatically saved to the installed system

  • Things just suddenly failing to work with no clear way for users to recover, e.g. only a year ago I installed Ubuntu and ran literally two commands apt-get update && apt-get install gnome and then rebooted, and the system would no longer boot cleanly and I had to spend my time debugging why

  • Constantly coming up with new pointless competitors for existing standards, unity, upstart, linuxbsdos.com/2012/04/27/whats-th... ...

  • Failing to implement solutions to generally known common problems. It's common for Ubuntu that some mirror fails every now and then, and there's nothing wrong with that. However, the commonly proposed suggestion is to edit the APT sources and change them to use "mirror://mirrors.ubuntu.com/mirrors.txt" to automatically use a working mirror. Why is this not default behavior?

  • omgubuntu.co.uk/2012/09/online-sho...

I could go on forever about issues I rarely bump into in any other environment other than Debian/Ubuntu -based distributions, but I think this is enough.

Thread Thread
 
sarbash profile image
Sergey Sarbash • Edited

Welcome to open source, my friend.
Pull/Merge requests are welcome.
This is the imperfect world.
You even don't imagine how many problems are with Windowses or MacOSes.
If your job is linked with some kind of OS and you feel boring with it you may change your OS or your job to more comfortable. It's just a question of the decision.
There is a choice there, always.

Thread Thread
 
erebos-manannan profile image
Erebos Manannán

I don't really think you understand.

1) Not all open source projects suck as badly as Debian/Ubuntu

2) Sending a pull request does not mean it gets accepted or that the community doesn't think their tools are already working "perfect" (as they obviously do in case of Ubuntu). Disagreeing with how a Linux distribution is built does not mean that you have time to fork it into your own distribution, feel free to give it a go if you doubt me

3) I've been using computers heavily since the 80s starting with the Commodore 64, I don't have to imagine as I know. Windows and Mac OS X have many fewer critical problems for multiple reasons. Windows is closed source so hardware manufacturers are ok with giving away high quality drivers for use on it, and since it's paid software there are developers working on delivering a quality experience instead of just spending their days bickering which means the effort is not fragmented into a million competing desktop implementations etc. .. For Mac OS X the main reasons are also simple: closed hardware means very limited set of devices that need to be supported, and limitation of features that are given to users limits the development effort, hell there isn't even an audio mixer for them to support. Additionally quite a lot of Linux distributions end up working a lot better than Debian -derivatives

4) I've made my decision already, it's to avoid Debian -derivatives whenever possible, and to warn people of being suckered into thinking Ubuntu is the best the Linux world has to offer.

Thread Thread
 
sarbash profile image
Sergey Sarbash • Edited

I like your comment for the consistent reasoning and detailing. I hear you.
I agree that there are problems there. Maybe I learnt to live with them so they don't bother me anyhow. I'm very comfortable with Debian.
It's best for me but it's just me. And it's ok for me if you use another distro whether it be rpm-based or deb-based even Gentoo or Slackware.
Seems like you used test or sid branches.