Gentoo Linux

From LinuxReviews
Jump to navigationJump to search

Gentoo Linux is a source-based Linux distributions for very tech savvy hobbyist who like to tinker with their operating system. It uses a BSD-style ports system called portage for package management. Gentoo is highly configurable and can be customized in ways other distributions can not. All software is compiled during installation and the way programs are compiled can be tuned with USE flags which decide what libraries and features will be included in a compile. Installing and maintaining Gentoo requires a lot more work and manual labor than most Linux distributions.


Gentoo's download page offers a "Mimimal" installation CD and a "Hybrid ISO" which contains a graphical Live Linux environment which was last updated in 2016.

Gentoo does not have any easy to use graphical installer. The installation is instead done by following a step by step handbook which is available for x86 as well as many other architectures.

Installing by following the step by step Handbook is not extremely difficult, but it is time-consuming and not very friendly. The steps, in broad strokes, are to partition your system and unpack a "stage 3" archive with a base system.

All software you want beyond the very base system has to be compiled. This means that if you set aside a weekend to install Gentoo and you get a basic system where you can play in a terminal done on Friday it's possible that you will have a working X window system with a desktop environment like Xfce compiled and installed by Sunday afternoon.

Features and usability

IceWM 1.5.5 running typical applications on Gentoo Linux.

Gentoo's portage build system is highly configurable which means that two Gentoo installations done by different people will be very different in terms of how they work and what features the installed packages have.

A basic Gentoo system can be configured to use either systemd or OpenRC as init and service manager. Similarly, it can be used to install GNOME or KDE Plasma or Xfce or LXQt and all of them can be installed with or without various dependencies by setting Gentoo's configurable USE flags.

The USE flags determine how a package is built. There's typically a lot of them. For example, the popular video player mpv, called "media-video/mpv" in Gentoo's portage repository, has the following "use" flags:

X alsa cli drm egl iconv jpeg lcms libass libmpv lua opengl pulseaudio sdl uchardet vaapi vdpau xv zlib -aqua -archive -bluray -cdda -coreaudio -cplugins -cuda -doc -dvb -dvd -gbm -jack -javascript -libcaca -luajit -openal -oss -raspberry-pi -rubberband -samba -selinux -test -tools -v4l -vulkan -wayland -zsh-completion

That's a lot of options to consider and read up on. Some Gentoo users praise the freedom to build packages exactly as you want them as a great strength. Perhaps it is. It also means that you have to look at these flags and consider what you do and do not need before you compile the package. If you happen to compile it with -blueray, which build without support for BlueRay discs, and you later want to play a BlueRay disc you're out of luck. It is obviously possible to change the USE flag and re-compile with that support. Your chances of getting some are dramatically reduced if you have to explain that "I compiled my video player with the wrong USE flags so you will have to wait half an hour while it compiles before we can watch the movie you brought".

If Gentoo's install-from-source using user-configurable USE flags is for you or not is a very personal choice. For most people it's just simpler to use a graphical package manager or a quickly-executed command like apt install mpv (Debian) or dnf -y install mpv (Fedora) and be done in 1 minute. This is specially true when it comes to bigger and more advanced packages like Mozilla Firefox and Chromium; compiling those packages on Gentoo takes all day.

Running emerge -upv world on Gentoo produces a list of packages that will be compiled and their USE flag configuration.

Upgrading a installed Gentoo system is time-consuming and a pain. Compiling all the packages that can be upgraded is either a all-day or a all weekend project. Further, Gentoo has frequent problems with one package suddenly requiring that some other package is built with USE="something" while another installed package requires USE="-something". Maintaining Gentoo requires dealing with those kinds of problems on a regular basis. It's quite frankly a lot of work.

Verdict and conclusion

Gentoo was a great distribution when it was released in July 2000. There were no distributions with flawless easy to use installers back then. Today all the distributions have real easy to use installers, friendly package managers and pre-configured setups who work fine for most people. Installing Debian or Manjaro Linux do not require reading pages upon pages nor do those distributions require hours and days of compilation. Gentoo is simply too much to work for the vast majority of use-cases. If you are a very tech-interested hobbyist who want to learn how Linux packages are built and configured then perhaps Gentoo is worth considering. For most people it's just a bad choice.

To put it simply in car terms: You can buy a brand new car which just works and gets you from point a to be, that would be a distribution like Manjaro Linux or Debian or similar, or you can buy an old car chassis with no engine and no steering wheel and no seats and spend half your time building it and tinkering it and tuning it. Some people really do like building engines and polishing cars. There is nothing wrong with having a hobby like that, just like there is nothing wrong with having Gentoo as a hobby. And if that is what you want then Gentoo's absolutely for you. But if you just want a working operating system which can be used to enjoy k-pop music videos at Naver's video service then Gentoo's just not a great choice.


Add your comment
LinuxReviews welcomes all comments. If you do not want to be anonymous, register or log in. It is free.

Last reviewed Linux distributions:
  • AlmaLinux
    AlmaLinux is a fork of the commercial American GNU/Linux distribution Red Hat Enterprise Linux developed by CloudLinux incorporated. It is a 1:1 clone of the latest stable RHEL releases with different branding. It has a stable software base very suitable for production servers.
  • Rocky Linux
    Rocky Linux is a upcoming stable-focused GNU/Linux distribution based on Red Hat Enterprise Linux. It will be binary-compatible with RHEL and follow upstream development the same way CentOS did before CentOS went from being a stable distribution based on stable RHEL releases to a beta-quality test-bed for RHEL towards the end of 2020.
  • Deepin
    Deepin logo.svg
    Deepin is a Debian-based Linux operating system from Chinese Wuhan Deepin Technology Corporation featuring a unique and very user-friendly desktop environment called "Deepin Desktop Environment". It comes with a wide range of easy to use applications written specially for it's Deepin Desktop Environment in C++ using Qt and the "Deepin Tool Kit" (DTK). Deepin is very easy to install, it is easy to use and it comes with everything you need to do most tasks you would want to do on a desktop or laptop computer.
  • Linux Mint
    Linux Mint is a GNU/Linux distribution most notable for its distinct green and black branding. It it based on Ubuntu Linux LTS releases with the latest (as of early 2020) Linux Mint 19.3 release based on Ubuntu 18.04. It is available as live ISO images with either Cinnamon, MATE or Xfce. Linux Mint adds its own branding, some custom configuration files and newer versions of Cinnamon and MATE to its Ubuntu LTS variant. The differences beyond that are minor.
(See the Linux distributions category for more distributions)