Gentoo Linux, Now A Bit Less For The 1337

Among users of Linux distributions there’s a curious one-upmanship, depending on how esoteric or hardcore  your distro is. Ubuntu users have little shame, while at the other end if you followed Linux From Scratch or better still hand-compiled the code and carved it onto the raw silicon with a tiny chisel, you’re at the top of the tree*. Jokes aside though, it’s fair to say that if you were running the Gentoo distribution you were something of a hardcore user, because its source-only nature meant that everything had to be compiled to your liking. We’re using the past tense here though, because in a surprise announcement, the distro has revealed that it will henceforth also be available as a set of precompiled binary packages.

There may be readers with long and flowing neckbeards who will decry this moment as the Beginning of the End, but while it does signal a major departure for the distro if it means that more people are spurred to take their Linux usage further and experiment with Gentoo, this can never be a bad thing. Gentoo has been on the list for a future Jenny’s Daily Drivers OS review piece, and while we’re probably going to stick with source-only when we do it, it’s undeniable that there will remain a temptation to simply download the binaries.

Meanwhile this has been written on a machine running Manjaro, or Arch-for-cowards as we like to call it, something that maybe confers middle-ranking bragging rights. Read a personal tale of taking off those Linux training wheels.

* Used a magnifying glass? You’re just not cutting it!

37 thoughts on “Gentoo Linux, Now A Bit Less For The 1337

  1. Linux is all things to all people. Fedora is “cutting edge”, Ubuntu is “easy to use” and Debian has the biggest package list of all distros. Then there is Gentoo… which is like having manual controls on on a model T ford car for advancing the timing. Having the choice is important, rather than an evaluation of the choice. Let’s hope that Gentoo exists forever and that the world adapts to Linux everywhere, beyond Android!

    1. I’ve found Fedora packages are constantly out of date and far behind their actual release. So much so that I ended up changing distros after decades of just sticking with RH/Fedora because that’s what I knew best. Ubuntu packages are more up-to-date, but then having multiple package installation/manager systems (which don’t support the same versions of the same packages as each other) just seems like a recipe for instability and problems down the line.

      1. Debian (and one of its many derivatives, such as Mint), are typically your best choice. Up to date, stable, and reliable. Ubuntu is often too cutting edge, and distros such as Slackware and Gentoo are really a bit difficult to use unless you are an expert and have some extra time on your hands.

  2. > it’s fair to say that if you were running the Gentoo distribution you were something of a hardcore user, because its source-only nature meant that everything had to be compiled to your liking.

    I’d like to push back on this a good bit…

    Portage (gentoo’s package manager) and – much more importantly – the amazing package maintainers make the compilation portion of Gentoo basically transparent. Yes, it takes longer than downloading a binary. Sure, you need to account for CPU, memory and disk load of that. Sometimes, things fail in obscure ways, but that’s true for every complex system.

    But there’s no “hardcore” “skill” involved in using Gentoo, on the stable track, week-over-week, month-over-month, because of their amazing contributions.

    And, you do get to reap the benefits that a source-based distro can offer. :)

    All that being said, it’s great that Gentoo has a binary package option, and it’ll be interesting to see how it dovetails with user’s systems.

    1. > And, you do get to reap the benefits that a source-based distro can offer. :)

      understood the benefit back when CPU & RAM were slow & scarce – but nowadays I don’t think there is essentially any performance reason to compile it yourself for optimizations. I’m interested in what other benefits there might be?

      1. I ran Gentoo as my primary OS from Dec 2001 through about a year ago when I got a new System-76 laptop running Pop!_OS (an Ubuntu spin off). The only reason I switched is that the laptop came with Linux pre-installed and I thought I would try it…

        At this point I am having *so many* issues with the window manager crashing that I am *seriously* looking at ditching Pop!_OS and replacing it back with Gentoo. The reason I run Gentoo is not only to squeeze performance from old hardware, but to also give me explicit control over the dependency chain. It is trivial for me to unmask, or mask, individual ebuilds and have explicit version control. Writing my own portage ebuilds, I can also patch source code to fix problems I run into, or install projects not in the main tree (including the stuff I write myself). It also gives me more information and control over when to update critical pieces of the OS and my development tool chains, so that I can choose to update the compiler from gcc-12.3 to gcc-13.0 (or wait until 13.1 comes out, and if I do not like it, switch back by masking…)

        I will also add that I have found setting up Gentoo on a new machine a bit of a pain, but once it is set up I can sync my portage trees daily, and keep everything up to date for several years at a time. I have also been able to update the system live, and only need to reboot the servers when needing to update the OS, or a few key services.

        So I am a long time Gentoo guy, and miss not having it now…

      2. No, I’ve never thought there’s a performance reason to do so, though the recent popularity of PGO might change that…

        The value is in the USE flags, that allow whole features of multiple packages to be conditionally en/dis-abled across the system. Don’t want anything to include alsa support? `-alsa` in /etc/portage/make.conf or package.use. Similarly kde, qt, jack, gtk, gnome, cups, djvu, ftp, ocaml (bindings), … the list goes on. 392 use flags that are “system wide”, and a bunch of others that are package-specific or only shared across a few packages and haven’t matriculated.

        Also, package slotting is great.

        And deep-dependency updates and the requisite rebuilds all the way up the stack if something bad happens.

        The idea that building from source is about `-O7 -finsane` gcc flags is really not where it’s at, no matter how much the fanboys may beleat.

      3. There are differences in cpu architecture that targeted binary code shows gains. This is where Gentoo shined. In compute intensive applications is where this shows the most. Things like CFD or eloctromagnetic simulation can show gains of over 5%.

  3. I recently looked into making the switch to Linux as my daily driver. Then I found out there is no support for using my 3d mouse in FreeCad or OnShape in Linux and the driver for it is something like 9 years old. I need to be able to design stuff and print it out, so it was a deal breaker for me.

    1. There’s always one thing or the other that doesn’t work. Sound, graphics, peripherals – using Linux is just a matter of what 20% of your workflow you can do without, or bodge around with some fragile hack that breaks every six months with distro upgrades.

        1. Then you fix it, so I don’t have to. We’ll get back in 20 years time when they’ve actually rolled those fixes upstream in distribution. In the meanwhile, I would rather use systems with software that don’t have these issues.

          (No, Apple isn’t actually better, and no, GIMP isn’t a substitute for anything.)

      1. Rubbish! I have been using Linux as a desktop for decades and what you are saying sounds like you have travelled back in time a very long way back! Not only does Linux work, it works better than Windows or Mac!

        1. Nevermind the still broken sound system, GPU performance, a mess of DEs that don’t know whether they’re a duck or a horse, the software package management paradigm that tries to be open yet ends up as a walled garden for the regular users, and half the peripheral devices out there without proper drivers, or proper software to go along with the devices.

          Example (2022): “Why can’t I print a borderless photo? Works just fine in W10.” – “To bad there is no ‘scale to fit´ in the print screen”
          https://forums.linuxmint.com/viewtopic.php?t=37008

          It’s little things like that all over the place. Maybe you’re just too used to having low standards, or not really doing anything other than mucking about in the command line to notice.

          1. One does not “muck about” on the command line, one speaks to the computer and it obeys. Not everyone uses computers enough to justify learning the command line, but it is a superior form of interface for many data processing tasks, and in particular is much faster than what many proficient users of the command line call a “point-and-grunt” interface.

    2. I’ve been using an RS232 SpaceMouse Classic in an X11 application 18 years ago. If the drivers are 9 years old, it’s because they are mature and need no further changes.
      If FreeCad and OnShape have no support for XInput devices with more than two axes, that’s not a Linux issue.

      1. > If the drivers are 9 years old, it’s because they are mature and need no further changes.

        Or it’s because nobody ever got around to finish them and the product is out of market, so nobody ever will.

  4. ooh ooh lets start a comment battle. {worded on purpose] which init implementation or systemd?
    now I’ll just init 0 out of here… as a trouble maker. P.S snap for more fuel on a fire?

  5. This is a rather unobtrusive change for anyone who currently has installed or is going to install gentoo, and definitely not a “major departure for the distro”.

    Portage (the gentoo package manager) has supported a mixed source-binary model for about two decades now. It just went unexploited, underutilized, and not well supported. Recently, a lot has been going on to uplift this support into something worth competing with the rest of the package managers.

    None of this changes the core of what the distribution is: a set of scripts that help you maintain a linux system that is customizeable and patchable at every step of the way, while making it ever so much easier to maintain such a system with little to no effort.

    This blog post is worth reading regarding why this is such a useful model: https://michael.orlitzky.com/articles/motherfuckers_need_package_management.xhtml

  6. \o/ ⠀ Finally Gentoo saves the world by distributing binaries! ⠀ \o/

    2024: Worldwide two out of three nuclear power plants can be shut down thanks to not needing to compile everything twice per day.

    2025: All source distributions get abolished by international law and so are LLMs and other silly AI. Wind and solar power plus existing storage technologies now are sufficient to sustain the whole planet.

    2026: Aliens see we’re on the right way (which ironically is just a jump to the left!) and will dance exactly that with us.

    ⠠⠵ ⠀ Happy end! ⠀ ⠮⠄

    P.S.: We kind of already had this ~two decades ago with GRP?!

  7. Around my territory a friend & I have fun bumping M$ lusers into Mint users. It’s been working wonders. The more of us that use Linux the better it will get. Don’t support surveillance capitalism folks.

    1. Come on … have you seen the heads behind the Linux Foundation?
      Not a much nicer crew than MS.
      I’d even call ’em something on the spectrum from scary to dangerous!

  8. Gentoo “stoped being elite” when it dropped support for stage1 builds.

    Those weren’t necessarily better, but it was a way to learn how Linux is bootstrapped. Picking which cron, which logging software, what bootloaderb etc; but having portage to aid instead of using wget & make.

  9. Qualified reader here as to the second paragraph but I prefer Ubuntustudio ready to drive. I don’t have to look under the hood and figure things out. But! Certain things in the later versions have me needing to don a cape and become superuser to just to change the default setting of screen time on my own computer.

    Debbie and Ian probably had their best time here in town whilst he cranked out the code before they went west.

  10. Ok. Why?

    Is there going to be a binary for every use-flag combo?
    If not then what’s the point? It would be a lot like Debian but not Debian. And Debian already exists.

    There has long been binary packages for the really-long-building stuff. That makes sense. But binary for the whole thing?

    Actually, I have had ideas about a binary Gentoo. But I am pretty sure they are not what is being talked about.

    I was imagining a repo-tree where you can point one machine at one or more others to serve as it’s repo. They could even in turn point to others so long as all are trusted. Gentoo’s source repos would be at the bottom. Anyway, when you go to emerge something it would check whatever machines it is configured to talk to and see if they have the package already emerged AND what the use flags were. It would then download the binaries only if the use flags matched. Otherwise those computers would check whoever they talked to on down the tree.

    I think it is already possible to set up a build server that creates binaries for some number of other devices. The new thing was having it check the use flags, go down the tree looking for ones that match and automatically fall back to source if none do.

    Obviously trust is huge with this. You only want to include people you know.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.