Disclaimer: I am a die-hard Gentoo fan.
The appeal of Gentoo is not compiling everything from source, it's having the freedom to install anything you want on nearly any hardware all with stellar documentation and minimal roadblocks. Want to run Enlightenment with OpenRC and NetworkManager on a laptop from 2008? Install Gentoo! Want ZFS as root on a smart refrigerator? Install Gentoo! Want a vanilla Gnome + SystemD install on a brand new laptop? Install Gentoo! The decision to ship binary packages only gives users *more* choices while other distributions have been actively removing one's freedom to choose. Debian, the so-called "universal operating system" just dropped 32-bit x86 support. You can install an alternative init system on Debian if you'd like, but it's a bit of a PITA. Meanwhile Gentoo allows you to pick between 17+ different stage 3 tarballs and 35 eselect profiles. Personally, I enjoy compiling everything from source and the flexibility that comes with it. On modern hardware it's painless. If you disagree, great! Go install a shiny new binary. The selling point of Gentoo has never been portage. It's always been the flexibility and the community.
I feel like the Gentoo userbase has been stolen in part by Arch these days.
I used to use Gentoo 20+ years ago; installing it was eye-opening. It helped me enormously to understand how Linux works.
I then moved to debian/ubuntu and recently switched my main server to Arch. And you are right - I got back this feeling of having all my 10 fingers in the system and living on the bleeding edge.
Now: this was probably not the brightest choice, as this server rund my docker containers and basically nothing more so it should have been Debian(a fire-and-forget OS)
Same!
Starting with a Stage 1 install was what got me (with some guidance of a friend and the perfect Gentoo Wiki) into Linux circa 2004 (IIRC).
Now, some 20 years later, i much prefer to have not to deal with something as... dare i say.. fragile... anymore.
Yes, much of the breakage i dealt with was probably self-inflicted but always a good learning experience - but most of the time not at the most convenient time :(
The Gentoo to Arch pipeline is pretty real.
I did Stage 1's as well around the same time but eventually got tired of doing that every so often or fighting Portage and switched to Arch.
Then I got tired of dealing with Arch... and ended up on Fedora.
I always liked Gentoo and Arch, but I don't have the energy to put up maintaining them anymore.
Arch is literally the easiest thing to maintain. I've been running it for over fifteen years, update maybe once a year at most and 99% of the time it's a case of running pacdiff and updating a handful of config files.
In 1998, Debian was a great option for SPARC and Alpha, and that’s really where I cut my teeth with Linux.
Around 2004, I was building Gentoo up from stage1 just like many other commenters.
For 2024 and personal stuff I’m back on Debian and it’s safe enough I pull security updates daily - entirely automated and no review on my part. It essentially never causes a problem. Updating once a year sounds terrifying to me given the rate of vulnerability discoveries of late.
As ever your mileage may vary and your systems aren’t my systems, but Debian truly is a wonderful OSS project and as of August 2023 it celebrated its 30th anniversary!
Gentoo going binary feels weird :) I’ve still got a soft spot for Gentoo and what it enabled me to do 15 years ago when I had more time for personal hacks.
I dunno, there's a fair amount to be said for having an up-to-date kernel, systemd, and Docker. :)
It depends on the kind of "up-to-datism", at least for me. Security - yes. Features - for docker yes, the rest not really.
The main problem is that if I provide a specific repo for docker (to keep a fresh version) it can request some dependencies and bam! I have a Debian-Turend-Arch system to maintain :)
I mostly included syetemd due to the shiny new feature where you can enable kernel samepage merging for arbitrary applications. Could be very useful for certain use cases.
I did the hardcore path of Linux From Scratch and then discovered Gentoo which was a (very welcome) step down for customizability :) Highly recommend LFS for anyone who has a couple of hours per day to waste (i.e. young with no responsibilities)
The one place Arch still is fairly opinionated compared to Gentoo is being all-in on systemd. That's not to say you _can't_ remove/replace it, and obviously there are Arch-like distros that give other options, but my sense is that GP's comment about Gentoo's draw being completely agnostic to whatever configuration you want makes Arch having even a single strong opinion feel pretty different to users who care about that. I think you're probably right that most people probably don't need that, but then again, even as an Arch user, I think most people probably don't really need the amount of customization that Arch lets you have; I just happen to like it.
I wouldn't say systemd is the "one place" where Arch has an opinion. Quite the opposite, Arch is just as opinionated as the average distro. On Void Linux you can choose between musl and glibc, on Arch you're forced to use glibc. On Gentoo you can choose your init system, on Arch you're forced to use systems. On Debian you can have `/bin/sh` be any POSIX shell, on Arch you're forced to have it be Bash. On nixOS you can choose between rolling and normal release, on Arch there's only a rolling release. I can't really think of anything you can customize on Arch that you can't configure on most distros, but perhaps I'm missing something.
My experience using Arch has very much been "it's just like all the other distros, except now you have at least 4 package managers to go through if you want to install any particular thing and you will almost certainly need to install utilities that convert packages from other package managers over to PKGBUILD." Other than that, it's felt very similar to just using something like Debian. Which is fine, and Debian is fine, but the praise other people give it as "the modder's distro," or something like it, seems a little over zealous.
Your experience sounds weird. Reading it remind me of people who come from programming paradigm X try paradigm Y and only use methods from X only to conclude that Y sucks.
Why would you use 4 package managers to do 1 thing ? Most people who use arch use 1 and it does the job. All of them are built around pacman + smth for AUR packages. Personally I use pacui. Why would you convert package from other distro, if another distro has it then it most certainly exists in the AUR, never once had to touch another distro's packaging.
I don't know about the "the modder's distro" part but I personally had much less headaches with it than I had with Ubuntu,fedora,debian, and CentOS.
The only thing that sucks for me (regardless of distro) is Nvidia updates.
i think you made a point for why being opinionated is good, which is not really the debate here
AFAIK you can use any POSIX shell as `/bin/sh` on Arch Linux. By running `sudo ln -rsf /bin/dash /bin/sh`, dash works well.
Also a die-hard Gentoo fan (daily driver for 20+ years).
I tried Arch and what astounded me the most is that the docs didn't seem as good as Gentoo's. That surprised me because I end up looking at Arch's docs all the time and it's all of a very high quality.
But the Gentoo Handbook is really a masterpiece. I've never read a clearer explanation of how to go from unformatted disks to a working system.
It never recovered from the loss of gentoo-wiki
I use arch btw
Definitely a lot of crossover. However, there are several things that make Arch unusable for me. The #1 thing is that Arch only officially supports AMD64. Additionally, while I find Arch’s documentation better than most, it’s hard to understate how amazing the Gentoo wiki is. Lastly, I prefer portage overlays (like Guru) over the AUR. Bigger !== better. Again, the beauty of Linux is choice. Nothing but love for my Arch neighbors!
And NixOS. The fact that Nix has had a binary cache was one of the reasons I chose it over Gentoo.
Exactly my case. Used to use Gentoo, got tired of every other update breaking the system, was told on IRC that if I didn't like "free" updates (because apparently my time and serenity have no value) perpetually breaking the system I could go use something else, and that's exactly what I did. Arch is solid.
This is imprecise at best. There was a meeting where the release team concluded that most likely, there will be no _installer_ and _kernel_ support for 32-bit x86 at some unspecified point in the future. (At the current point in time, both are still delivered and fully supported.) In particular, you can still run multi-arch 32-bit/64-bit, allowing you to run 32-bit x86 software.
Does Intel or anyone still sell 32-bit x86 chips for non-embedded use? A quick Google was inconclusive, although it seems that while Intel sells low-power x86 chips under the "Pentium Silver" brand, they all seem to be 64-bit now. So eventually more and more old x86 boxes will be decommissioned, and 32-bit x86 will be dead as a desktop platform, no?
Which might mean people who want to run old proprietary 32-bit games/software are going to be annoyed, but that's not necessarily the distro/OS's problem; it could be argued that the user should install a 32-bit translation/emulation layer to run that stuff, ala DOSBox.
One of Linux's oldest arguments for using it is that it can be used to revitalize old hardware that other, newer software might not properly utilize.
If one were to rephrase it in today's language, Linux serve(d) to reduce e-waste.
So, yeah, it kind of is the distro's problem if they are moving away and against that mantra now.
There’s a crossover point though where the effort to support it is larger than the supply of newer hardware coming through. With the last x86 deaktop chips coming out in ~2006, I would bet there are very few viable use cases left. That’s 6 3-year cycles past.
I have seen many Windows 98 machines in the last ten years. I saw one just last week connected to a giant robot in a factory. So, if you are looking for use-cases for 32-bit, there's the fact that some giant machinery relies on computers that will never be updated.
Last I heard, even the last BlockBuster in the US is still using old PC's to run their DOS software. They harvest parts from old computers sold on e-bay. So, if you have any old computers laying around, they might be worth something these days.
You wouldn't really want to mess with the OS in cases like that, though. If you did, a lot of the OS-included drivers would probably not work due to removal or bit-rot, or 3rd-party drivers might not work with a much newer OS. The only reason you might want to upgrade is if the machine is Internet-connected, in which case you're probably just going to need a whole new box (if you need the old software, you'd probably resort to a VM), otherwise the new OS will run too slow (especially with things like new crypto/security). Or you can keep the old box but put it behind nginx or whatever.
Point of sale or industrial control computers are kind of just an offshoot of "embedded"; not something you need (or want) to run a browser or a modern GUI[0] on. You stick it in a cabinet or a kiosk and hopefully you don't have to think about it again.
[0] sadly also a browser
I have a number of old computers lying around the house in closets, some 32-bit only. Linux not running on them anymore is actually pretty annoying since, as I said, that used to be one of its oldest mantras.
Outside of the enterprise crowd, Linux's next biggest audience are the tinkerers and hobbyists with too much free time and ancient hardware well past their Use By date. What a time it is that we can legitimately say it's better to run some version of Windows instead of Linux on them now.
The hobbyist Linux market generally tinkers with things like Raspberry Pis now, not ancient 32-bit x86 machines. (This is a natural consequence of the fact that sources for cheap hardware have changed a lot over the last twenty years.)
I believe the last x86-compatible chips without 64-bit support were launched around 2006 or so (Intel Core; Core 2 had 64-bit support), a couple of years after Opteron initially came out.
It's not really clear how long the Linux kernel itself will continue supporting such CPUs. The architecture certainly isn't something anyone really cares about (e.g. Meltdown wasn't patched for several months after it went public and 64-bit x86 got fixed).
There were Atom CPUs that weren't supposed to be 64-bit for a while after that.
Yup, I bought a brand new 32-bit Intel Atom tablet from Toshiba in 2014, gave it away but the person I gave it to is still using it. It has 32-bit UEFI, which is also loads of fun. I once installed Debian on it, but I couldn't get touchscreen to work, so went back to Windows 8.
Absolutely not... but hear me out. NetBSD plans on supporting 32-bit x86 until "long after 2038 (http://www.netbsd.org/about/)." Legacy hardware matters for many reasons. Outside of the fact that I still love my Lenovo x60s and use it as a distraction-free writing machine, much of the world still depends upon 32-bit architecture. We can't be replacing computers for all 8 billion people on Earth every 10-20 years. Hell, think about all the government bureaucrats still running MS DOS! :-)
That's not a good thing though, perhaps aggressively depreciating 32 bit will light a fire under their asses
Not really the point I was trying to make. Gentoo still fully supports obscure architectures such as IA64 and PowerPC 32-bit while Debian dropped both back in 2018 and 2020. Hell, not only does Gentoo still support them but the handbooks are still updated regularly. When that unspecified point in the future comes knocking for 32-bit x86 Gentoo will continue to be a rock for fun devices like my Lenovo x60 with libreboot. :-)
The Linux kernel just deleted IA64, so that support won't last for long, unless Gentoo keeps ancient kernel versions? Debian still has unofficial ia64 and powerpc ports too.
It doesn't, but the kernel also isn't package managed, just the source. You can keep around the ebuilds for older kernels in an overlay, or someone might maintain an enthusiast overlay just for IA64 kernel support.
What do you mean "it doesn't"? I'm maintaining Debian Ports and I build installer images for all old and obscure targets. We even have support for SuperH which Gentoo dropped at some point.
Installer images for LoongArch are in the works as well.
We do that in Debian, too. FWIW, I am the one that eventually greenlit the removal of the ia64 port in the kernel because I was actually the one who took care of most of the issues in the ia64 port.
I also regularly debug and report (and sometimes fix) regressions in various upstream projects regarding targets such as 32-bit PowerPC. It's not enough to solely focus on downstream work, upstream work is as important if not even more important.
I think that's a bit unfair. Everyone wants to support everything, but at the end of the day if you want to guarantee security and maintenance and do the job of a distribution you have limited resources on what you can look after. Something always has to give.
On any Linux distribution anyone can install what they want, but what you can genuinely claim to support is always limited by the amount of maintainers you have.
Perhaps I was being overly harsh. That being said, there is a certain philosophy of non-intervention which gives Gentoo a sense of freedom that other distributions lack. It’s not only about diverse support, it’s about allowing the user to choose upfront. Arch does this as well (mostly). It’s easy to choose your own bootloader, WM/DE, audio server, and etc. I just think that Gentoo takes this philosophy one step further. If you want to install an alternative init system on most distributions you can… but you have to uninstall SystemD and all its weeds first. Gentoo’s solution is simple. Give the user a choice on EVERYTHING upfront.
While I was untangling update dependencies one day I had it uninstall libc. There was a big warning advising me not to do that, but it was allowed.
Everything broke immediately, of course, but I recovered the system and the dependency problem really had been fixed, too!
This gave me a permanent positive impression of Gentoo. It's better to be allowed to do things than not.
Debian and Ubuntu will let you do this, too. Pop_OS may have patched it out downstream, adding an additional barrier before you can uninstall 'essential' packages since Linus Sebastian unintentionally blew away X11 (in the face of a very dire warning, which he ignored) on camera.
Idr how this is handled on RPM-based distros, but on Debian it is part of the standard procedure for crossgrades.
(More impressive than this sort of flexibility, imo, is how NixOS and GuixSD sidestep this problem altogether.)
Love this example! In general the way Gentoo handles masked packages also highlights this point. The system will kindly warn you if something is wrong, but it will never stop you from doing what you want. --autounmask also makes it dead simple.
I can't install Gentoo, specifically, the part where I have to install a BIOS or UEFI grub2 bootloader. No I did not use a musl and / or clang profile. With this being my first impression, unless Gentoo or a downstream fork comes with a installer, I won't consider it.
I'm going to install Solus OS / Solus Linux soon, had a good first impression with it's package manager, which claims to be reproducible but not like nix or guix are.
What part is failing? Do you see the grub bootloader or is it failing before that?
If you do systemd (which is what I'm using), then you might look at systemd.boot for UEFI. That's currently what I'm using.
I ask, because one issue I ran into was messing up the kernel config. Pulling the livecd config in and using that as the base config worked for me.
I have a work laptop that's pretty cursed when it comes to booting anything that isn't Windows or Fedora. I only recently got Arch to boot, and then only by using UKI and skipping the bootloader by directly registering it in UEFI. Maybe Gentoo has instructions for doing the same thing? I think it's actually simpler this way, it's just far less obvious and very new.
"Personally, I enjoy compiling everything from source and the flexibility that comes with it."
Is this referring only to ports (Portage) or does this mean enjoy compiling kernel and userland.
Depends upon the device. I typically opt for compiling the Linux kernel myself but certain devices (like my Lenovo x60s) would absolutely melt if I compiled it from scratch. Thankfully, Gentoo offers gentoo-kernel-bin. Meanwhile my brand new GPD Win 4 Pro has a stupid nvme that requires 6.6.5+ to boot making compiling the only option (until a couple weeks ago at least).
I would argue that Debian has support for at least as many architectures as Gentoo:
I know that because I am maintaining most of the obscure architectures in Debian with regular installation snapshots:
Debian even has a Hurd port for both i386 and amd64.