How to decide on a distribution?
Hey everyone, I just recently got into Linux and have had this doubt from day one: How do you decide on a distribution?
I've been trying out various variants of Ubuntu (Ubuntu, Kubuntu, Xubuntu, Linux Mint, Ultimate Ubuntu, to be specific) as well as the latest Fedora. The only thing that I can distinguish between the various distributions is the desktop environment that it uses (but some distributions, like Fedora, have multiple versions) and the software packages it comes with. But sofware can always be installed afterwards, and so can desktop environments, so what varies between the various distribution branches on a deeper level, on the things that the newbie user like me can't directly see? And is there any easy way to compile my own version of Linux? |
Distros usually differ in terms of:
1. versions of programs (stable vs experimental) For example: Debian tends to have older (but thoroughly tested)versions of programs while Fedora or Ubuntu ship with the latest (but not extensively tested) versions. 2. a set of programs/libraries included (and available from official sources) For example: Slackware includes all the development tools by default, whereas Ubuntu doesn't include them by default. Of course, you can install them afterwards. 3. desktop environments / window managers Different distros ship with different DE/WM by default. In most cases you can then install a DE/WM of your choice, but it might not be officially supported. 4. package management Some distros use package management with automatic dependency resulution. Some don't. Some use yum/rpm, some others apt-get/deb, while some others require building your own packages and taking care of dependencies by yourself. 5. configuration methods. Some configuration files/tools may sligthly differ accross the distributions. 6. GUI vs CLI focused Some distros are GUI focused (Ubuntu, Fedora, etc.) while other ones require you to extensively use the command line (Arch, Slackware, Gentoo) 7. inclusion of non-free software For example, Linux Mint comes with some proprietary stuff like Adobe Flash by default. Other distros don't ship with them, which doesn't mean that you can't install it afterwards. 8. Customisation Some distros custmise the kernel and some packages their way. Slackware, on the other hand, comes with an unmodified version of the kernel. 9. Some distros provide a live medium (so that you can run/test it without actually installing them on the drive. I am sure I forgot about something but I think they are the most basic differences that matter for an average user. I've just come across a distro chooser that may help you determine the right distro for you. http://www.zegeniestudios.net/ldc/ |
Quote:
Quote:
Quote:
Quote:
And the Enterprise/Server distros are likely to support and help you keep going an existing installation a lot longer than a desktop which is likely to give you only a year or so worth of security updates. Try looking at the details on distrowatch for any distro that you fancy. Quote:
PS: Most people, when they talk of making their own distro really only mean 'Ubuntu with a different selection of Wallpapers/graphics'; you probably don't mean that, but that would be easy, too, but there isn't much point in it, given how easy it is to install Ubuntu and then customise it, if you want. |
Quote:
You can theoretically achieve the same degree of safety with Ubuntu that you'd get with RedHat, but in practise that'd be not easy do, nor so smart (unless your skills are vastly superior to these of the RedHat/CentOS team. Quote:
|
Thank you very much for the detailed explanations, I appreciate it ;)
What do you mean with: "You can theoretically achieve the same degree of safety with Ubuntu that you'd get with RedHat, but in practise that'd be not easy do, nor so smart (unless your skills are vastly superior to these of the RedHat/CentOS team." How is Red Hat safer than Ubuntu? And why is it said that Ubuntu is built on an unstable branch of Debian? Can't multiple package managers coexist in order to support every package natively? And why are different kinds of package needed in the first place, shouldn't there be a single standard? And by patches you mean that the version of KDE available to Suse users will ultimately be different from the version of KDE that I get if I install the package? Cheers |
Quote:
Also, since some distros use slightly different filesystem hierarchies, foreign packages might not work. Quote:
|
Quote:
|
Quote:
I think TinyCoreLinux is the most modular. You can work and try a lot of things with a certain freedom (the other Ubuntu you have are fat and load a lot of things). |
Quote:
|
Quote:
|
If you have time take the linux distro test http://www.zegeniestudios.net/ldc/
|
I have been using Linux solely for over 10 years, I have tested almost every distro out there. I run my Servers with Debian and my Desktops run Linux Mint! I am not taking away from the other distro's they all work about the same. But after years of setting up Linux machines I just want my Desktop to work with minimal work. I do not want to take hours adding repo's and downloading software to do simple things like listen to music or watch a movie. I also don't want to be messing with my .conf files to get my video cards and network working. I just want to boot into a working GUI.
As far as building your own distro? I would point you to customising a live cd's first. There is plenty of documentation on the subject and this is slightly easier then building a distro from scratch! There is also great documentation on customising other distro's if you want to look into that instead? If your interested in building a distro from scratch LFS (Linux From Scratch) has wonderful documentation on the subject. Good Luck! |
Quote:
Of course, the fact that one of another distro is *potentially* more insecure than another one doesn't mean a thing per se. At the end of the day, any OS is as secure as skilled is its administrator. Quote:
Quote:
Quote:
Patches usually change minor capabilities, but sometimes they can be very significant. A given distro, for example, might shipt an higly customized/patched version of gnome to make it act in a different way, while providing vanilla packages for kde that are not that integrated into the distro. |
Quote:
If I remember correctly, you can't start the different GUIs at the same time because of lock files, but, if you are really determined to break something, you can probably get around that. |
Quote:
However, we are not talking about package managers here, but about frontends, which is a different thing. You can use many frontends and that shouldn't be a problem as long as all of them are using the same package manager as their backend. But mixing different package formats is usually not an easy thing to do without some manual intervention, because they speak different languages and store things in different places. It's not only about package formats. Sometimes a .deb package that's planned for Debian will probably not work in Ubuntu because of the names of dependencies, system paths or whatever else. It's probably the same for RedHat vs. CentOS vs. SuSE RPMs, etc. etc. etc. In Gentoo you can partially work around this using the package.provided file, which lets you tell the system that a given package is installed when it's not, so you can install it manually from either a binary package or the original source files, compiling by hand. No need to say that this has other side effects: you'll have to take care of the updates yourself, recompile each time that the ABI of a needed lib breaks, deal with the crap and leftovers by hand when updating the package and resolve conflicts generated by this yourself. However, package.provided should take care of the dependencies. That alone is a big advantage. Usually, making your own ebuild will be easier for the long term. Just like in any other distro, making a native package is probably easier than dealing with alien stuff. |
Thank you for your help and enlightenment, everyone. ;) Some final questions, though:
Is it possible (or easy enough) to add just some tweaks or pre-included software to a certain distribution? Or start from a certain distribution and add or remove the default software to suit my needs? I realize this may be possible using Gentoo or some of the more modular distributions you've mentioned, but is it possible to do a personal version of Linux Mint, with the programs I know I'll need? And when it is said that a certain distribution is built off another what does that mean exactly? Linux Mint is built off Ubuntu, which is itself built off Debian, what does that mean in terms of things they have in common? Cheers |
Quote:
Quote:
But because Ubuntu nowadays is not so close anymore to Debian you shouldn't install Ubuntu's packages in Debian and vice-versa. In general that commons are the package management system and some of the administrative tools. |
It mostly means that they share a set of core tools and the same package manager. Building a customized version of a given distro might be harder or easier depending on the distro itself. Some of them might provide docs and tools on how to do that (Gentoo has catalyst, for example). There's no generic response to that question.
|
Quote:
|
All times are GMT -5. The time now is 02:35 AM. |