User:Maffblaster/Drafts/Gentoo Primers/The Gentoo Primer

From Gentoo Wiki
Jump to: navigation, search

When comparing Gentoo to other free and open source distributions, Gentoo is a different beast. Why? Because Gentoo is among only a few[1][2][3] actively maintained distributions that are entirely source based. There are many children distributions based off Gentoo, however Gentoo is the major actively developed source-based parent.

The Gentoo way

As technology advances at very fast pace, there is a tendency to make things increasingly "simple". It is seen in frameworks, projects, distributions, and many other places. Much controversy is generated in these times by the efficiency of the tools, and the need to use them without knowing exactly how they work. Someone once said ... "Man will always be better than the compiler since man can use the compiler and improve the result, but the compiler can not use man to improve the result.". The problem arises when a tool has too much control over the possible outcome, preventing the owner from taking part in the action and refining the result.

Gentoo Linux is known as a meta-distribution since it does not prevent the user from knowing the details on which his/her system is built, on the contrary, it forces him/her to configure every small aspect in order to design a tool capable of helping him/her. This tool must be able to mold itself to the specific needs of each user, while at the same time allowing power and precision not seen in common tools. Gentoo Linux puts us at the feet of the master in katanas, who designs a special sword for each swordsman, and gives us the power of creation rather than limit us to use common tools.

The power, art and beauty of Gentoo Linux lies in the ability to take code and adapt it to the specific needs of its user. This type of adaptability and complexity require the user time and dedication to understand the details of creating programs, and at the same time immerse him in the world of technology as few tools do.

The momentum in which you discover the power of the code and the ability to change it to will is the starting point to be able to change the technology and stop being a slave of the tool. That momentum is what will encourage you to discover every little detail of Gentoo Linux and will allow you to appreciate the value of complexity, not as something to be afraid of, but as something to hold onto to in order to build even more "simple" tools.

Welcome to Gentoo Linux!

Why Gentoo?

In order to answer this question, we need first to tackle down some of the common reasons not to use it.

"Gentoo is for advanced users."

We have to admit that the installation of Gentoo is not exactly the fastest of all. But one should not confuse fast with easy, this is a rather common mistake. If we were to compare, the Gentoo installation is like a work of art, takes time, but once done it is something that you admire in a very deep way. In addition, the installation manuals make this task not only bearable but a learning experience like few in the world of open source. In the event that you really want to be in control of your system, the first step is to understand how it works, this is not for everyone, but is not exclusive to "super users".

"I have to compile everything, every time."

The build process sounds complicated, tedious and something that only experienced hackers do. But the truth is that in Gentoo, this process is as transparent as in any other distribution, the main and only difference is that in the installation of your new Gentoo, you set up your compilation tool (Portage) to use the full potential of your CPU. And if you don't have a CPU that supports compile all your programs each time you want to update your system, you can simply use the binary versions. Once the first configuration, it is not so different as yum, apt, pacman, or any other package manager.

"I don't have time to read the documentation"

If this is the reason why you don't want to use Gentoo, in reality, you should not use anything Linux-like. The learning curve is very difficult if you do not have the motivation to learn. But if you really want to know how things work, and you're interested in getting the most out of your computer, then you can give a couple of minutes a day to read a bit of documentation because it is the only way to dominate technology.

"I'm afraid of ruining my computer"

There are hundreds of ways to install Gentoo, and as with any other installation of Linux, it is always advisable to have a backup. In addition, there are lots of users willing to help with problems of any kind in different media, such as IRC or forums. The only thing you should be afraid of is not to give you the opportunity to learn something new.

Final thoughts

Having mentioned only some of the reasons and proven that they are not 100% accurate, it is necessary to comment that Gentoo Linux is a unique experience in its kind, and in which one is able to learn many things. It is particularly interesting to software developers since that will allow them to learn and/or consolidate their knowledge in many topics. In addition, Gentoo has many projects of different nature, in which the help is always welcome. This diversity and flexibility make Gentoo a whole world of opportunities to exploit.

Pros

Choice

Gentoo is the distribution of choice in almost every sense of the world. Developers have dubbed Gentoo a meta-distribution because of its near-unlimited adaptability[4]. It is one of the only distributions that allows the end user to choose between:

Rolling release

Gentoo Portage developers tend to be far ahead other Linux distributions on both the addition of new packages and bumping version numbers for new package releases. For those that want the fastest way to have access to the newest software packages, Gentoo is the way to go.

Instructional

One of the stronger "Pros" of Gentoo is the available documentation.

Power

Gentoo is a power-user distribution. The idiom "knowledge is power" applies directory to the Gentoo ecosystem. Because it is source based, Gentoo can readily flex and adapt to run on all major supported architectures. Including, but not limited to, alpha, amd64, arm, arm64, hppa, ia64, m68k, mips, ppc, ppc64, s390, sh, sparc, and x86 architectures. There are around 18,000 packages in the Gentoo ebuild repository. Because there is so much flexibility, especially at the per-package level, knowing exactly what is necessary for the system to operate can be difficult to determine. If, however, the user knows what they want, Gentoo makes it very convenient to quickly obtain their objectives.

Cons

Choice

When you don't know what you want, choice can be a bad thing. Gentoo is primarily limited by the knowledge of the end user. Just as those who do not understand what is going on beneath the hood of car should not probably try to repair a head gasket, those who have no prior knowledge of how Unix/Linux operating systems work should probably be careful when using Gentoo.

Manual installation

For now, and in most cases, Gentoo has to be manually installed.

Difficulty updating

Due to the nature of Portage tree development, Gentoo needs to be updated regularly. If a Gentoo system is not updated for an extended period of time, especially after major changes to the Portage tree (in the form of Profile updates), it can be very difficult to update by hand. This is an known issue and is the reason behind the special Upgrading Gentoo article. If a system has set for over a year without updates, rather than spending time updating the system by hand, it may be faster to migrate a Gentoo installation to a new stage tarball base.

References