Gentoo Linux might be the best desktop Linux distro for advanced Linux users

Nowadays, you can get binary packages from gentoo linux if you don't change USE flags. You don't even have to compile linux kernel anymore.

Gentoo Linux has overlays. You can compile packages from third party overlays.

Gentoo overlays are better designed than debian/ubuntu PPA(personal package archive)s and AUR(arch user repository).

Gentoo Linux is simpler than nix and guix unless you need reproducibility. Gentoo Linux doesn't require you to learn nix langauge or guile scheme. You don't need reproducibility that comes with nix or guix on desktop computers. I just manage dot files in my git repository without any infrastructure-as-code tool. For servers, nix or guix can help.

44 points | by amano-kenji 17 hours ago

25 comments

  • veber-alex 13 hours ago
    Twenty years ago, Gentoo taught me Linux.

    A friend and I wanted to play around with Linux, so we installed Mandrake[1] Linux on a school PC. We didn't know what we were doing, and the GUI (I think it was KDE3?) abstracted too much. It was also very unstable.

    I don't remember how I got to know about Gentoo, but I then proceeded to install and reinstall Gentoo on my home PC (Athlon 64) about 20 times, and this was when you had to start from stage1, so you had to do a full bootstrap, kernel, and system compile; no binaries and no shortcuts. The scrolling gcc output on my screen was the coolest thing ever.

    The Gentoo handbook was amazing. It taught you exactly how Linux works and how to install every component of the system.

    After a while, I began contributing to the distro and even became a developer for a few months but had to quit due to real life.

    I don't follow Gentoo today, but if it's still valuable as a tool to learn Linux, I can highly recommend it.

    [1]: https://en.wikipedia.org/wiki/Mandriva_Linux

    • gaws 56 minutes ago
      Do you still use Gentoo as a daily driver?
    • LargoLasskhyfv 5 hours ago
      Ah, the joys of having a fully split up KDE3 in Gentoo, enabling you to install just the parts you wanted to. So sexy. Sigh...

      Regarding Mandriva/Mandrake, I'm remembering that as having the cleanest /etc with just the relevant information in its config files, generated by the installer. And not copy/pasted crap like it was common on Debian, then. PC-LinuxOS took that approach, too. But RPM, nay!

      As to learning effect, I'm doubtful.

      https://www.linuxfromscratch.org/ would be more appropriate for the foundations.

      With Gentoo, you're just learning their abstractions, as flexible as they may be.

      Which one could nowadays do in any virtual machine, as time and motivation permits.

      Because suspendable on demand. Continue later.

      Then trying that thing on real iron, and maybe replacing the virtualization host with it, when it passed the smoke test :-)

      Which applies to both, LFS & Gentoo.

  • _davide_ 15 hours ago
    I have been using Gentoo 10+ years, you can save time using other distros but you'll waste an insane amount of time as soon as you want to properly configure a yubikey or set up a modern compilation stack (or update specific drivers or fixing the kernel). Compiling everything seems like an overkill, but remember it's unattended time, just start the upgrade before dinner twice a week and you'll be good to go. (Failure to compile in Gentoo are extremely rare, less than once a year)

    The upside is deciding exactly which packets you want and which versions, and whenever you want to customize( or fix) a specific thing it's trivial.

  • StopDisinfo910 8 hours ago
    Arch is less flexible but AUR wins for me over overlays. I find writing and modifying Arch pkgbuild a lot easier than Gentoo ebuild.

    Ebuild offers a lot of functions and "magic" which looks nice in theory but actually means you will be lost if you don't write them often. Arch pkgbuild look like a shell script. Adding a random patch to an existing package is extremely easy.

  • matttproud 7 hours ago
    Gentoo and Linux from Scratch (LFS) were a great way to learn back in the day (yes, 20-some years ago) — and support relatively custom operating environments through USE flags (e.g., which flavor of Motif did I want to use). I found Gentoo to be a rather practical low-level tradeoff in that era compared to Debian (super old package set and release cadence). You have to bear in mind: there were plenty of Gentoo users out there who weren't into abusing CFLAGS and such. And Portage had such a low bar to climb to create a package (cf. Debian Policy Manual as a description of the arcane nature of Debian package management with dh). Moreover, Ubuntu, which was a good pressure on Debian to modernize, wasn't yet on the mainstream for a good window of time when Gentoo really took off.
  • merpkz 15 hours ago
    I used Gentoo since about 2012 up until 2022 then switched to Debian mainly because lot less things used to break during updates and my old CPU ( i7 4790k ) became a bit dated to compile every new version of Golang, Rust and Chromium - just hours and hours of brutal grind. Since flatpak can provide up to date versions of a lot of desktop software on Debian there is very little point switching back. Maybe one day if I get my hands on some ridiculously powerful CPU like 7800 or 9800X3D then might try it again.
  • nticompass 8 hours ago
    Gentoo was how I learned Linux. In college, I used it on my desktop (alongside Windows) and I remember thinking I was a "1337 h4xx0r" by compiling my kernel and setting the flags to make everything custom for my PC. I remember having compile errors and having to try to fix it, even though I didn't know much about C/C++.

    I enjoyed using Gentoo and I eventually set up distcc on a separate computer to help compiling.

    I forget exactly when, but I switched to Arch Linux and after a failed upgrade there, switched again to Fedora.

  • gnatman 1 hour ago
    OP you are going to love the g/ board on 4chan
  • pvdebbe 10 hours ago
    Running gentoo on desktop, since 2007. My first installation lasted 7 years. The next one has worked well for me since 2013. It was my first real contact with linux and taught me a lot. My setup is bargain bin components from the same 2013 but I update and compile world during the nights.

    I'm thinking of finally upgrading my components as Sandy Bridge is not cutting it in all tasks any more. Told my Gentoo-loving friend that I wouldn't be installing Gentoo again. That's only because I'm planning on just using this current installation with fresh recompilations!

    • gaws 54 minutes ago
      > Told my Gentoo-loving friend that I wouldn't be installing Gentoo again.

      What will you use instead?

  • runjake 5 hours ago
    It might be, but Arch is pretty solid and my favorite. Regardless, both distributions have a place in the world and I'm not too concerned with the best, that's too subjective.

    Why are Overlays better than AUR?

  • pjmlp 8 hours ago
    I stop caring about Gentoo in 2005, classical distros do the job, I also don't care about nix and guix.

    Everyone is naturally free to use whatever they feel like, some people never open the hood on their cars, while others might even melt bolts to fix their oldtimers themselves.

  • aborsy 13 hours ago
    With malware reportedly uploaded by random people to AUR, I will stick to Debian.

    A good thing about proprietary OS is that, they are responsible if their repos are infected.

    Are packages carefully reviewed by gentoo?

    • bravetraveler 10 hours ago
      PPAs are your AUR
      • brnt 9 hours ago
        Are you confusing Debian and Ubuntu?
        • bravetraveler 9 hours ago
          > Are you confusing Debian and Ubuntu?

          No, you're confusing exclusivity. https://launchpad.net/debian/+ppas

          • brnt 6 hours ago
            No, I know PPA's are just a way of telling apt about a repository.

            What I mean is that Debian does not support adding PPA by default island I frankly don't hear of many Debian users doing that. Flatpak/-hub is much more common.

            • bravetraveler 6 hours ago
              I don't know what to tell you/say, it's a completely supported - and utilized - method for distributing software. For both Debian and Ubuntu. "By default" is completely irrelevant, let me explain.

              First, somewhat sarcastically, I can give you that support right here. "echo ... | sudo tee /etc/apt/sources.list.d/...". Go forth and prosper.

              Now, more seriously/importantly, this is for distributing user-supplied software. The point I was originally making is that anyone can leverage this, it's not representative of the Distribution. AUR, PPA, COPR (for your RHEL derivative of choice), OBS, whatever. The malware is the responsibility of the user who published it, not the Distribution maintainers.

              Aside: I'm deliberately trying use 'distribution' as a proper noun/capitalize where appropriate... in terms of the composite of software we know as Debian or Ubuntu, not an individual release like the 'software-properties-common' package or malware: what started this thread.

              Back on topic: this is firmly down the path of customization. The fact that you don't get 'add-apt-repository' for free is, again, irrelevant. PPAs will distribute (heh) Deb packages for either Distribution.

              If we're working off anecdotes, I hear about far more Sources [repo] files being made on Debian than Flatpak installations. Now what do we do.

              • brnt 3 hours ago
                Defaults matter. By default, Debian can't add PPA's.
                • bravetraveler 2 hours ago
                  Yes it can, I just showed how one might. A repo is a repo. A PPA is a repo. What?

                  The 'default' you're talking about is a CLI that simplifies two steps, one of which is optional [signature]. It can be done with a shell/coreutils or whatever equivalent. Again, I showed my work.

                  Anyway, let's toss Flatpak, then. Debian only offers it, not by default. Just like it only offers the ability to write to '/etc/apt/sources.list.d/'.

                  I'm done going back/forth on this, we're so far off the point. Use the distribution you want, be mindful of the software you install. Regardless of who wrote/built the manifests or hosted the artifacts.

                  Bagging on Arch for the AUR makes as much sense as <the public packaging service> for <your favorite distribution>. I already named several, it's all user-generated content. In absolutely no way does it represent the actual product/distribution. The users publishing and consuming carry the responsibility.

  • atlgator 17 hours ago
    I spent a lot of my freshman year of college waiting for `emerge update world` to finish.
    • nticompass 8 hours ago
      And if you're me, SSHing into that machine from the other side of campus to check on the status of the update :)
  • kreetx 8 hours ago
    Nix, in addition to reproducibility, also allows you to any multiple versions of the same software, including all the dependencies of each of these. From what I remember from Gentoo, this wasn't supported by it.
  • qmr 17 hours ago
    Gentoo is great if you value your time at $0.
    • haskellshill 8 hours ago
      Cooking your own food is great if you value your time at $0. I just eat fast food every day to maximize my free time (spent on doomscrolling).
    • jcalvinowens 5 hours ago
      Machines are faster now, my znver5 build machine finishes "emerge -e @world" in under an hour.
    • amano-kenji 17 hours ago
      Gentoo Linux became a lot easier with binary packages and binary linux kernel.

      You don't need to customize it, but you can still get packages from third party overlays.

      The customizability is available when you need it or want it.

      Learning to use gentoo's basic functionality doesn't cost a lot of time, and I recommend utilizing only the basic functionality in most cases.

      Just stick to the basics, and you will be fine.

      • d3Xt3r 11 hours ago
        Unfortunately the binary packages are still only available upto x86-64-v3, so users on x86-64-v4 (which I reckon what majority of "advanced" users would be using) and even more so AMD Zen 4/5 users would be missing out on advanced instructions and other compile optimisations.

        Luckily Arch/CachyOS users don't have to worry about this as CachyOS offers optimised packages for modern CPUs. Until Gentoo offers an equivalent - without manual compiling needed - I won't consider it.

    • dapperdrake 15 hours ago
      C++ compiler and standards writers value your time at even less.

      Didn’t believe it until I saw it.

    • davydm 16 hours ago
      Disagree.

      I'd say it's more akin to learning vim, where there's a fairly steep learning curve at the outset, with huge rewards down the line.

      Yes, initial install can take a while. Yes, system updates take longer when built than from binaries - but modern hardware makes that a fairly trivial difference. Most people who have a problem with Gentoo either only used it decades ago when build time were a lot longer, or because they heard it takes long, which is way more common than the former.

      • dapperdrake 15 hours ago
        Huge upside.

        You need two sets of the "same" hardware, though. Then you get a build server with -march native

    • pabs3 11 hours ago
      ... and your electricity.
    • sim7c00 16 hours ago
      ur still on a pentium 2?

      try to get other people to value ur time...

    • stefantalpalaru 7 hours ago
      [dead]
  • 0dayz 12 hours ago
    Gentoo will always have a special place in my heart.

    It's always been my goto if I want absolute maximum rice or feeling of control.

    The Gentoo handbook is also amazing, especially the pages going over the nitty gritty details.

    Personally though I'm more interested in nixos (if I want to roll my own) these days for it's immutable features.

  • jcalvinowens 5 hours ago
    I've been using Gentoo for almost twenty years!

    Patching libraries is easier than any other distro. Just throw the patch in

        /etc/portage/patches/${package}/${name}/
    
    ...run one emerge command, and your entire system is now linked to the patched library. For example one of my machines has:

        /etc/portage/patches/media-libs/svt-av1/0001-Address-build-warnings-and-CI-failures-from-enabling.patch
    
    ...which is a backport to fix a build error with avx512 enabled.

    Same for debugging and cflags, I simply have:

        {0}[calvinow@sousa ~] cat /etc/portage/env/debug-cflags 
        FEATURES="${FEATURES} nostrip"
        COMMON_FLAGS="-Og -ggdb3 -fno-omit-frame-pointer -pipe"
        ...
    
    ...and then rebuilding any package with debug cflags is one vim+emerge away:

        {0}[calvinow@sousa ~] cat /etc/portage/package.env/20debug
        media-libs/x264 debug-cflags
        media-libs/x265 debug-cflags
        media-video/ffmpeg debug-cflags
  • dev_hugepages 8 hours ago
    Gentoo is pretty much the easiest distro when you want to do things outside the norm (doesn't have to be much).
  • TheWiggles 17 hours ago
    Any recommendations for getting started in Gentoo?

    I was taking a look at their documentation and it seems quite comprehensive. Though I was wondering if there are any books or tutorials that the Gentoo community also values.

  • tmtvl 9 hours ago
    Could you maybe elaborate on your statement that...

    > Gentoo overlays are better designed than debian/ubuntu PPA(personal package archive)s and AUR(arch user repository).

    ...because from what the Gentoo wiki states, an overlay is a repository of packages from which Portage will automatically install packages. That is a clear contrast to the AUR from which you manually get a package so you have the chance to inspect it without Pacman automatically going and installing it. For Arch a closer equivalent would be unofficial user repositories.

  • firefax 5 hours ago
    As a libertarian on social issues, I think you should be able to use whatever flavor of linux you want -- but Gentoo seems to be for people who really want to get into the nitty gritty :-)

    For me, I prefer Debian. No ad crap like Ubuntu, decent userbase with several popular security distros (Parrot, Kali) based on it, so lots of eyeballs. And fairly usable, especially if you switch over to XFCE so you're not wasting resources on flashy graphics.

  • justinrubek 9 hours ago
    I used gentoo for years. While I still have a fond spot for those memories, saying that it is simpler than nixos is just flat out wrong. I've vastly simplified my involvement and removed most pitfalls from my day to day. Years pass with minimal breakage or churn and my devices just keep working.
  • hasukimchi 13 hours ago
    Wait you don't need to compile open office for 15 hours anymore??
  • LargoLasskhyfv 5 hours ago
    It might. OTOH when using binpkgs and not changing USE-flags, using a fully optimized Archlinux-derivative like CachyOS might too. Depending on how much hypercustomized additional crap you need/intend to use.

    Been in the situation to chose a while ago, been wary of having to compile all that crap, because that's what USE-flags are for :-) (Wenn schon, denn schon! (Meaning something like 'going all in' in german)) Thought about NetBSD, and FreeBSD too, but nah, because drivers. Knew Arch. It's lean, or can be, but not that optimized. Came across CachyOS.

    Gave it a try. Feeling very comfy with it at speed. Enables real "Freude am Fahrvergnügen/Spaß am Gerät" without hassle. Not seeing the need to change.

  • bigyabai 17 hours ago
    > You don't need reproducibility that comes with nix or guix on desktop computers.

    I disagree. My desktop, laptop and servers all share one terminal config and gets updated from a git repo. All the other distros are too much work to have a worse, janky symlink config that self-destructs on an iffy update.