Recs.
Updated
SpecsUpdate
Pros
Pro Full control of the software
You build the package from a source you can see and read. You decide which features you want to build in and which aren't needed. You can choose build options, optimisation and whatever else fancy stuff you want modified. With a binary distribution this simply isn't possible.
Pro Great for anyone who is serious about learning the intricacies of Linux
It's useful for both beginners and professionals. For the installation, Gentoo offers various types, which are referred to as stages. Basically meaning how in depth you would want to go into the process of installation. For beginners it's useful to choose for a starting distro due to its various stages that can be very time consuming but beneficial as you learn the composition in general of Linux.
Pro Easier to install & manage
I've been using the same initrd for ~15 years, basically a 12-line shell script that does vgscan, mount, switch_root. I can build a kernel, install it, reboot without twiddling grub. Kernel installs are just make all modules_install install. Done.
I boot LVM: no partitions to fight with, thankfully don't need EFI. Thinks may take a few minutes, but 90% of the package upgrades happen at 3pm with cron so I don't really care.
Cons
Con Dependencies can be a pain
If you install a lot of packages you can get a bit stuck at upgrade time. Sometimes you have to unmerge packages in order to update, then reinstall them. Not always though!
Aside: At least with Gentoo you have the option, rather than getting stuck in library-version-hell.
Con Has no live images with graphical interface
Full installation is hand-made with a CLI (Command-Line Interface).
Con Somewhat outdated solutions
While being outdated per se is virtually impossible for a rolling-release distro with a large community, a large portion of said community sticks to outdated solutions. For example, Gentoo's primary init system is OpenRC, which is cumbersome and awkward to use and provides little control over the system. While you can just choose systemd, it will require some tinkering. Other examples include stubbornly declaring an initramfs a last resort and an "oh my god 1337 H4XX0RZ surely have nothing better to do than trying for a month to exploit some vulnerability to steal my pony art, I have to fortify so hard my performance and ease of use will suffer" 90s security mentality.
Because of just how much freedom Gentoo provides you with, this usually isn't a big deal though.
Con Customized package installation can take a long time and cause installation failures
The Gentoo package management system allows you to configure what compilation flags packages should support - i.e. specific processor flag support (SSE, SSE2, etc.), -O1, -O2, -O3 optimization, etc.
If you accept one of the default flags, Gentoo downloads binaries from the server. However, if you decide to optimise, it can and will download all source packages and start compiling allthe programs and libraries on your system. If your chosen flags don't work with a particular library, installation will fail.
Recommendations
Comments
Flagged Pros + Cons
Pro Superiority and Smartness
You get superiority and get called smart daily for going through the processes of punishing yourself to a compile install you also get a cool neofetch logo (:
Con Since everything must be compiled it takes a lot longer to update
And if you have to update the kernel or some heavy software like Chromium it can takes hours if not more on weaker hardware.