Why Gentoo?(blogs.gentoo.org) |
Why Gentoo?(blogs.gentoo.org) |
https://www.shlomifish.org/humour/by-others/funroll-loops/Ge...
> We don’t go out of our way to tell you how to use your system
I'm not really sure I believe this, because the default profiles do exactly that. One day you'll be happy with your pam config, then bam, package updates and you're forced into passwdqc and faillock.
Are you saying you've had your PAM config broken by a package update when you didn't update anything in /etc, or that you had your PAM config broken by a package update where you blindly accepted changes to stuff in /etc?
Honestly, I hate Pam. It's one of the few pieces of software on Linux that desperately needs a replacement that isn't just a clone of the original. (nss also needs the boot)
If you want an idea of how bad things are, buy a copy of Michael W Lucas' FreeBSD Pam mastery...
Exactly the same is true for me.
I don’t have time to futz around installing Linux distros instead of getting laid like I did as a teenager. I have a job and a girlfriend and more than enough of a social life to keep me busy day to day. But something keeps nipping at my heels, telling me to return to the pen—-the sun is setting on my long sojourn in the warm fields of average life, the long night of idle tinkering approaches once more, that I might sooner forget the morning before it ends.
I would suggest Calculate Linux.
It's 100% Gentoo, with additional customization (e.g. profiles presetting not just sane defaults, but also things you usually want on desktop [e.g. samba, network printers ...]), there are pre built binaries for all profiles and basically all the software (but you can still override some and get it compiled with or without specific features) ...
And perhaps most importantly - there's extra tooling/automation around the Gentoo/portage updates and such.
With vanilla Gentoo - beyond regular PITA to update packages due to various package/use-flags conflicts (which would make me do it even less often). I was also regularly (every few years) having to reinstall Gentoo because my glibc/bintools/python/etc were so far behind that during system update something would break and fixing it was basically reinstalling Gentoo from stage3 tarball.
It's been ~10 years that I've "switched" to Calculate Linux - and it's "cl-update" was automatically solving even those things that would've left me with world update broken system.
if you did not want a high maintenance distro why choose Arch? Its meant for the opposite of a Mac user - people who want to control everything, vs people who want it all taken care of for them. There are lots of things in the middle.
> I don’t have time to futz around installing Linux distros instead of getting laid like I did as a teenager.
Install one and resist the temptation to distro-hop. Even better, buy a machine with Linux preinstalled.
I use FreeBSD and Arch primarily. FreeBSD gives me a lot of customisation options(ports ftw) while at the same time, it’s remarkably stable.
With Arch I find myself praying shit won’t break with every update, and a lot of 3rd party software just don’t work.
Hence why I keep returning to FreeBSD for my servers.
Before I switched, I did really like the piracy scene. Soundsource, the software you mentioned, was definitely one of the first I got.
Now, I think there's an open source MacOS volume manager thing.
Edit. I think it's this: https://github.com/ronitsingh10/FineTune
Good news! These days, you can just buy a computer with Linux preinstalled, with support!
Just leave the distro it shipped with alone and live your life.
I did think it was neat finding a memory leak in visual boy advance.
On the axes I most care about, NixOS is better than Gentoo. In particular, managing configurations in NixOS is really a breeze. No more merging diffs of random files in /etc.
On one hand, you could say that Nix has more magic than Gentoo, but on the other hand, the online nix option search links directly to the source code implementing the option.
Gentoo wins on documentation and supporting more than one init system. It probably also wins on security; I haven't dug recently, but NixOS doesn't have a great story for e.g. Mandatory Access Control. Also the nix store is world-readable, so it is much easier than it should be to accidentally spill your secrets to the entire system.
That's unique to the Gentoo model and gives a fine-tuned system with virtually zero bloat. Other distros inevitably pull in dependencies you don't need because they are linked at build-time in case someone relies on it; choices like crypto backend are made for you by the packager.
Guix lets you tweak things on a per-package level, but currently offers no global feature flags. You can do wild stuff like replace OpenSSL with LibreSSL everywhere, but only as long as they are API- or ABI-compatible.
The Gentoo profiles mentioned in another comment is what still allows the system to have packages compiled with a consistent subset of things.
What's this in reference to?
You can just drop a patch into a folder, and every time you re/install or upgrade a package, it'll get applied!
You know that weird thing that bothers you in that specific software? That random popup when you start it? That additional, unneeded "ok" prompt? That donation-begging screen? That stupid checkmark checked on/off by default when it should be off/on instead?
Well, make a patch to fix it, drop it into /etc/portage/patches/<category>/<packagename>/ and it'll get applied automatically every time! And if it's truly a minor thing that bugs you, that patch will work for many new versions too!
(no, i'm not being paid by gentoo to promote them)
There's already tooling for using say .deb or golang packages - but still having them installed as proper Gentoo/portage ones.
PS. Tek sada videh korisničko
With Gentoo you get to choose SystemD or no SystemD ;)
Codex has really helped my fix and tighten up my AUR PKGBUILDs.
I was thinking about trying Gentoo in the future, but not being able to contribute because I use LLMs in my workflow sucks.
If not we should make one. We should call it Sloppage so the Gentoo devs know what it's about. X-D
I can appreciate the concept that Gentoo is placing a high value on human curation. I used to be firmly against our anti-LLM policy, but honestly it's a pretty strong differentiator from other distributions -- and I'm getting more and more sick of AI tech in general.
(note: I am a Gentoo developer)
[1] https://bugs.gentoo.org/971488 [2] https://github.com/cpan-authors/IO-Tty/issues/91
These days I'm a fair bit lazier, throw Fedora on and use it happily. update frequently and it almost never causes me any issues.
The Gentoo Forums were a super fun and friendly place back then, I hope they haven't lost that spirit.
And still benefit from packages/system being smaller/faster because they are not built to cater for all possibilities.
And you can still override options (use flags) and compile some things exactly as you want/need them.
but truly, I've been using this install since 33... and am on 44 atm. never have i has such a slick trouble free experience. I've had one nvidia related issue once... I also had to rebuild a mirror once because i wanted to update more than i wanted ZFS, and they were updating the kernel faster than the zfs package was updating. not a big deal. I've moved on happily.
Other issue is when you need something promptly, if nothing else to test it out or one-use only and you either have to wait or use something like official binary/flatpak...
tank ~ # time emerge --sync
* Using keys from /usr/share/openpgp-keys/gentoo-release.asc
emerge --sync 3.18s user 5.15s system 67% cpu 12.324 total
https://wiki.gentoo.org/wiki/Portage_with_GitMost bashisms are very old and they come from ksh. Bash has added very few features beyond what was already quasi-standard in UNIX shells.
POSIX has standardized a shell variant that had already been obsolete for a long time.
The scripts that use the additional facilities added by ksh and also a few added by zsh, which now are all available in bash, can be written in a way that makes them more concise, more clear and less prone to bugs.
I believe that bash must be considered the standard for shell scripts, not the POSIX shell, which has been obsolete for more than 3 decades, i.e. since long before the existence of the POSIX standard.
When using a POSIX shell, there are many unavoidable things that can be performed only by invoking external command line utilities, instead of using intrinsic shell features. This not only can make the script much slower, but it adds extra software package dependencies, instead of avoiding such dependencies, which is the declared purpose of using a POSIX shell.
Making your shell script dependent on the existence of bash is less risky than making it dependent on the existence of awk, which may be forced when using a POSIX shell. (The existence of awk is mandated by POSIX, but there are plenty of Linux systems that do not have installed all the POSIX utilities, but they have bash.)
It is true that bash is ubiquitous only on Linux, while on *BSD it is optional. I have used FreeBSD and other *BSD systems for as many decades as I have used Linux. My first action when installing a *BSD system, after the base system is installed, has always been to install bash. I believe that whoever does not do this is mistaken and they should not demand to receive scripts that can be run without having installed one of the bash, ksh or zsh shells.
How are you ever going to get test coverage over the massive number of possible system states and configurations? Are you going to compile every package in portage on every architecture it supports?
I don't really care about it being a replacement overall. I just want my own emerge command to be faster. I can't believe it's not instant like it should be.
Of course, nowadays there is little resemblance between portage and the FreeBSD ports, after a few decades of separate evolution.
When I switched to Gentoo (in 2003), among the Linux distributions (after previously using many others, like Slackware, Redhat, Suse, Mandrake etc.), I had already used for many years (since around 1995) the FreeBSD ports, so this was what attracted me to Gentoo, its software package system and its documentation, both of which had a level of quality comparable with FreeBSD and much superior to what the other Linux distributions provided at that time.
personally, i used gentoo throughout most of my teenage years, and now use nixos viewing it as a successor, since you can screw around using the thing as a meta-distribution, but roll back when you hose your system.
gentoo freebsd existed for a while for funsies but nobody cared and now it's dead, same with gentoo openbsd. each was portage integrated a little more intentionally on top of a respective bsd than just "bung it in /usr/local/bin and call it a day". practically speaking, they were implementations of gnu/k*bsd.
nixbsd similarly exists (nix deeply integrated into freebsd), with heroic efforts made to transfer nixos's abstraction over init systems for system-wide configuration; last commit was two months ago so i guess not dead yet?
you can run nix on gentoo, or gentoo prefix on nixos with nix-ld turned on if you feel like it
void's claim to fame with xbps is a bunch of sandboxing and bind mounts for build environments. nix already has to sandbox just to get off the ground wrt reproducibility.
void, gentoo, and nixos all offer some degree of libc freedom. on void it's first-class, on gentoo it nearly is, and on nixos it's here be dragons. libc freedom doesnt really jive with using a bsd as a base; vertical integration is kind of one of the contemporary selling points.
so to answer your question, the result would be nixbsd in an alternate timeline where nixpkgs's analogues to USE flags/eselect/profiles are not hot garbage (i say this with love as a user), and void would fail to exert a phenotype.
Except there's Chimera Linux now (not related to chimeraOS) and I dare say its got the fastest package manager of all operating systems with a package manager.
There were some discussions in systemd[1] about a protocol that would in future possibly provide a replacement for it if you are interested. Discussions have stalled and I am unsure why, but the thoughts do exist.
Learned that lesson, oof. Taught me a few things about writing tests that I carry around with me though.
I don't get any value from this "no LLMs" stance. In fact it's quite the opposite.
I watch extremely famous C devs at work using LLMs all day everyday working on stuff that is merged into Gentoo all the time. You guys are shooting yourselves in the foot and just wasting everyone's time and it's exhausting.
> Hence why I keep returning to FreeBSD for my servers.
It sounds like you were using Arch on a sever. You use Arch if you are happy fixing breaking changes. its not for something you just want to keep running.
Specifically for servers Debian is an obvious choice. Suse and a few others are fine too. Possibly Alpine if you want something lighter. Nix if it appeals to you. Void is supposed to be a stable rolling distro and is probably appealing to a BSD user. Many more.