Gentoo is usually used by Network professionals and system admins, mostly by people over 25 years old. I tell you this in order to disprove the myth that Gentoo is only used by idle people. Gentoo is used by serious persons that do know what they are doing.
This post is about the advantages and benefits of Gentoo that have caught to the most expert community in Linux. You have been told that the only benefit of Gentoo is the learning, but that is not true, you are missing many of its features and advantages.
It’s a pity that you can read in the Internet that Gentoo is for masochist or for people with a lot of free time. Nowadays, the processors are powerful enough, so maintaining Gentoo should not take more than one hour per week.
Finally, you have been told that Gentoo is difficult. People told me that in 4chan you can see an exaggerated cult and elitism towards Gentoo that in reality is extravagant and comical. Truly, I tell you that if the people are influenced to think that something is difficult, then it will be difficult.
Many things that we think are difficult are not, the problem is our beliefs, that is what limit us the most. People don’t value the power of believing, if we get rid of many limiting beliefs , then a lot of things would be pretty easy for us.
But you will certainly have to learn and dedicate time to Gentoo to be able to use it properly, if you are going to install Gentoo and you will not use it, better not install it. It requires dedication, not a light attitude. Especially for those people who installed it and do not even know what they did.
Gentoo makes no distinction in age or knowledge, hence the former Gentoo foundation’s president is above of 70 years old and the past year the community helped a boy of 14 years to install Gentoo. Unfortunately Gentoo is becoming less popular among the youth, who prefers Elementary, Manjaro and Ubuntu.
Once, someone said that compiling was a luxury, but it is not a luxury at all. This is serious, and you will see all the benefits that comes with the compilation.
I recommend you to read this post of a person that left Arch and moved to Gentoo.
Advantages
It is a meta-distro, i.e, it goes beyond that any distro.
Any distro fulfills a purpose, for example:
- A distro focused in being a console distro with actually no graphics
- A pure 64 bits distro with no 32 bits libraries.
- A 100% free distro acording to the FSF
- A distro with embedded libraries (Lilblue)
- A Gnome centered distro
- A KDE centered distro
- A distro with Systemd/ without Systemd
- A distro focused in security
- An Ubuntu (Sabayon is the Gentoo’s Ubuntu)
Gentoo can be any of those distros easily, whereas it would be need to create a new distro for each example if it don’t exist yet.
This is possible due to different profiles available in the Gentoo’s settings that will determine what is going to became Gentoo. But that is not all, the possibilities are almost unlimited.
To turn it into Sabayon read this.
It makes you a better programmer
You have to deal with Cflags while using Gentoo. Cflags are part of the programming experience in the last stage, the compilation. The Cflags allows to optimize an application in an advanced way. Gentoo really has many features that programmers will love.
I don’t know programming (I improvise) and to tell you the truth, most of the Gentoo users know programming despite that programming is not need at all for using Gentoo.
Gentoo hardened.
Some people discourage to use Gentoo for servers, but that doesn’t matter since many people is using it anyway. For example and developer told me that him has Gentoo installed in more that 50 servers.
Gentoo hardened is a sub-project of Gentoo that aims to create a security focused distro in production and servers environments.
Here you can ask for a list of 51,000 sites that are using Gentoo. Gentoo hardened allows you to create a pretty secure system.
By the way, I never used Gentoo hardened but one of my websites worked with Gentoo in LAMP server, and this site used to be a local WordPress site in my Gentoo. This blog was born in Gentoo.
Cutting-edge Software
You can use the latest software as in Arch, however, notice that Arch forces you to use an specific version. In Gentoo you can use the last version for some packages while using a more stable version in others, the best, your system will not break.
As in Arch, you can as well make that Gentoo uses the latest in a system-wide way. For doing so just migrate to the Testing branch.
You don’t need to find a Deb or RPM
In a binary distro you can either compiling or downloading a binary (deb). Specially in Debian you may want to make work the Ubuntu’s binaries or enabling the binaries of another branch.
Sometimes in Fedora, you only will find a binary for an older version.
In Gentoo you don’t need to do all that, you can install everything you need with a simple command. As you see, in Gentoo can be more straightforward in a way. I call it, Keep it Simple, Stupid (just like the Arch motto)
In the rare case that you need to compile manually, you always can compile easier than in any distro.
Minimalist and configurable
Arch claims to be KISS, but Gentoo indeed is more KISS. Sometimes an applications depends of KDE, and only because of that dependencies the KDE libraries are installed, in Gentoo you can configure what support will have each application. In this way, you reduce the dependencies of any applications and you make smaller binaries.
Besides, Gentoo features the most advanced package manager in Linux which works with concepts that do not exist in the other distros such as:
USE Flags
User Patches
Slots
The following articles are the basics for properly use the Gentoo package manager, you have to read them thoroughly and learn all it.
- https://wiki.gentoo.org/wiki/Handbook:AMD64/Working/Portage
- https://wiki.gentoo.org/wiki/Handbook:AMD64/Working/USE
- https://wiki.gentoo.org/wiki/Handbook:AMD64/Working/Features
- https://wiki.gentoo.org/wiki/Gentoolkit
- https://wiki.gentoo.org/wiki/Equery
Patched kernels in the main repo.
Have you used Arch Linux. Did you have to use AUR?
Supported kernels:
gentoo-sources: The default kernel with security patches
ck-sources: The kernel with the Kolivas’ path and MuQSS, which increase the performance in the Desktop. MuQSS is used by default in Sabayon, Zenwalk y PCLinuxOS.
git-sources: Do you want the latest kernel, just as the Arch testing branch or even newer?
Courtesy kernels:
aufs-sources: I used this kernel and is useful for creating directories that works as a RAMdisk, I mean, that their contains are erased when the computer is shutdown. The advantage over overlayfs is that is not limited since it doesn’t need a work directory. So, it only requires to mount directories as TMPFS such as /tmp2, and all the changes will be saved there (and erased in the shutdown).
This filesystem was the key of my experiments, do you wonder how to create a compressed filesystem of only-read without initramfs? Well, for that I compressed the root filesystem as squashfs and mounted as only-read. However, /var and must be writable, this is possible thanks to aufs. I tried to achieve the same with overlayfs but I got unexpected results.
pf-sources: Includes the Kolivas, Tuxonice y LinuxIQM patches.
vanilla-sources: It’s a vanilla kernel, such as the one in www.kernel.org
openvz-sources: Openvz allows to create isolated VPS.
usermode-sources
Use the kernel version that you want, the time you want.
Gentoo includes many stable versions of the kernel parallel to the latest stable kernels in www.kernel.org, however, you could use use an older version downloading an older kernel in www.kernel.org. You can update your system without any problem since your system will just adjust to any kernel thanks to the compilation magic. You will love it if you use privative drivers. Also if you share the Slackware philosophy of not touching a working kernel.
Compiling the kernel:
You don’t need an initrd when you compile your own kernel, so your system startup will be 3 or 5 seconds faster. I noticed that the startup of a computer with a SSD is delayed because of the initrd.
If you have computers with the same hardware, if you compile everything built-in (with no modules), then you only have to copy the kernel file into all your computers and they will work without the need of installing drivers or loading modules.
Also, you can make a kernel that supports all your computers, and once it’s compiled you only have to copy the vmlinuz file to all them.
What is more important than this portability, is the security that brings compiling your own kernel. There are always security patches due to the huge size of the code of the kernel, therefore it’s wise to reduce the attack area. Once, there was a zero day vulnerability in the kernel, however, I didn’t have that vulnerability since I didn’t compile that feature in my kernel. Avoiding to use modules makes a system more secure.
In the kernel you can disable the ipv6 support since it’s know to reduce the privacy. I also have read that you can tune many network security systems in the kernel.
Gentoo is a great way to learn about the drivers, the kernel and how everything works since the kernel is always a requisite in all kind of services and some applications. So that, when you look up the wiki, you may find kernel requisites in contrast with Arch that don’t delve into the kernel so much.