It is my hypothesis that there is a very real lack of knowledge of Linux basics even by many long time Linux users and especially by many members of the Linux press. This knowledge gap is exhibited by the fact that a large number of Linux users actually believe there are huge differences between Linux distributions. The media especially is rife with comparisons of different distributions (distros), reviews of distros and stories about each distro.
However, when it comes right down to it Linux is Linux. There is very little real difference between the distros other than cosmetic. And by cosmetic I mean the desktop interface and the wallpaper. Really, I kid you not – there are tens of thousands of press articles and even forum posts on the advantages of one distro over another, but any person with a small modicum of basic Linux knowledge can make ArchLinux look like Ubuntu and Mint look like Mandriva. It really is a bit of a joke to think that distros are really that different. Let us not forget that same versions of the Linux kernel are exactly the same in each distro (except for very specialist distros that might have slightly different kernel configuration files).
Let us explore the real differences (not the cosmetic stuff which anyone can change) between distros and analyze why those so-called differences are not significant:
- the installer: Yes, the major distros have sometimes distinct install software. Some of them are a bit easier for newbies to work with than others but they all do the following in approximately the same order: a-choose a language, b-find other operating systems on drives and suggest a partitioning scheme, c-request from users what extra packages to install, d-set time zone, keyboard language, e-create users and passwords, f-do the actual install. That really is all there is to an installer. All of them work as they should and besides, you only do this once so what is the point of comparing them?
- the system configuration tools: some distros create their own system config tools, with links to these in either the Utilities or System Menus. There tend to be more of these GUI tools in the large desktop environments such as Gnome and KDE than in light-weight desktop environments and window managers. Some distros such as ArchLinux, Gentoo and Debian do not include such tools because the user is expected to do these usually simple configurations via the command line using help files from the distro’s wiki sites. The majority of these tools are simply GUI wrappers around basic Unix/Linux and GNU command line tools.
- system initialization scripts: there are really only two sysinit “styles” in Linux: SysV and BSD styles. Both get the job done properly and are mostly irrelevant. The BSD init has a somewhat simpler file structure. NOTE: “systemd” is now being used in some distros and may eventually replace the former two.
- default daemons active at launch: The heavyweight (KDE-Gnome) distros designed for newbies tend to have more daemons launched during boot. These daemons ensure that any device attached to the computer is immediately detected with a GUI interface and also that update managers are constantly running to remind new users to update. Again, these are facilities which can be added to or removed from ANY distro so again, no contest.
- package manager: yes there are significant differences in the usage and design of the main Linux package management systems (these being dpkg, RPM, pacman, tgz, petget, portage and a few others). In most cases, other than for non-newbie distros (Slackware, Gentoo, Debian, ArchLinux) these managers will have some associated GUI which hides the internals from the user and makes installing or removing a package as easy as clicking one button. There is little real advantage to the newbie in any of these systems, the main factor being how robust the manager is, how well packaged the original package really is and how many packages are available at the specific distro’s mirror sites.
Any software written for use with Unix/Linux can be packaged to run on any Linux distro. It makes no difference at all to a user that Firefox is the default browser in one distro and Chromium the default in another. This can usually be changed with two mouse clicks. The suite of software provided with a distro is entirely irrelevant to what is provided by another because with a few clicks the user can install whatever is installed on the other distro in a matter of a few minutes waiting for downloads and install time. The fact that some distros have larger repositories of packages is also somewhat irrelevant as it is not really a big deal to create one’s own package or ask a community member to create a specific package for you.
Desktop Environment/Window Manager Differences
Yes of course KDE and Gnome are different and so are all the other DE’s and WM’s. But my point is that all of these can be installed and used on any Linux distro, so one should not choose a distro based solely on DE, because you can quickly change this facility if you wish.
This is almost laughable. I am still amazed how important this is to some computer users, but more stupefying is the fact that they do not realize how easy it is to change to the look if they don’t like it. And by the look I mean not just the wallpaper. By cosmetics in general I mean the following: boot screen, boot splash, system loading splash, login page, login sound byte, desktop look, desktop wallpaper, window decorations and colours, icon set, menus look, toolbar and launch features, desktop environment in general, logout screen , logout splash, shutdown sound byte. All the above are so configurable that any distro can be made to look just like any other distro, within a couple of hours work. Thus all cosmetic differences are irrelevant.
In summary, Linux is really Linux and the differences between distros are somewhat overblown. The only time it really matters is for newbies who do not yet have the skill sets to change the look and feel of the distro, so it is best that they find one that appeals to them immediately and then stick with it and then begin to learn how Linux works under the hood.