DEV Community

Discussion on: Which Linux distribution is your favorite and why?

Collapse
 
deciduously profile image
Ben Lovy • Edited

Gentoo. I was a distrohopper for about ten years, switching every six months or so, until 2014 when I hopped to Gentoo. Have not looked back once as a main daily driver.

Its' a really a meta-distro, and is absolutely overkill for a standard desktop configuration. Where it shines in customization. I was able to pare it down to run on a Pi, and I love that I can compile all my packages without, e.g. Bluetooth support if I want, and it absolutely excels at juggling developer toolchains. I can have multiple slotted versions of Python or Ruby or even GCC and switch symlinks around with a single command. I love knowing that all my applications are built linked to the same exact system libraries, because I built it all myself. Portage is the best package manager I have ever used.

It also taught me so much more about my computer and about Linux, the most I'd learned since I started with Ubuntu back in '05. After getting comfortable with that, the differences between other distros were largely surface-level, and my Linux knowledge didn't progress much. Gentoo was a whole new thing all over again, and now I have a much greater understanding of more of my OS, quite helpful when troubleshooting. I even hand-roll my own kernel config now and don't even think about it.

Not that I troubleshoot terribly often. Gentoo kind of gets a rap for being a breakable mess that you'll spend a crazy amount of time fixing instead of getting work done
. I have not found this to be the case. In five years, I've had two major system snafus, and both were entirely my fault. I changed a setting I didn't fully understand. Gentoo has never, not once, died on me without my help.

The downside, of course, is that you're compiling everything yourself, which is largely a waste of time. I do feel guilty about the excess ecological footprint, and if I do decide to hop ship, that will be the driving factor.

Collapse
 
vimmer9 profile image
Damir Franusic • Edited

Gentoo is sort of special distribution that is intended for people with masochistic tendencies and is perfect for developers. My current install has been working perfectly for around 10 years now. I have even started using it on embedded systems like ClearFog and when you get used to cross compilation quirks(hell), you get a perfect 200Mb distro which can easily be moulded to meet your requirements. I am biased since I'm a big fan of Gentoo but I must admit, there were times I just wanted to do this:
img

Collapse
 
vimmer9 profile image
Damir Franusic

Oh yeah, and when you ignore emerge sync and forget about updates for more than a year...then it's more like this:
img

Thread Thread
 
deciduously profile image
Ben Lovy

Hah, my record is like two months and even that was a little annoying. At that point I'd probably just start from scratch, it'd likely be a comparable time commitment...

Collapse
 
deciduously profile image
Ben Lovy

Totally with you on cross-compilation. The Pi project was...non-trivial. But it worked, eventually ;)

I still have nightmares about qemu though.

Thread Thread
 
vimmer9 profile image
Damir Franusic • Edited

I don't use it so much, not needed unless you want to run arm binaries on x86. I used to do a chroot and run/compile in qemu emulation but that was dreadfully slow. Now I just cross compile and do the following before I run arm 32bit binary on my 64bit x86.

export QEMU_LD_PREFIX=/usr/YOUR_ARM_ROOT

I also have Gentoo induced nightmares, you're not alone ;)
Gentoo hell

Collapse
 
ironmatt613 profile image
ironmatt613

Isn't every major system snafu one's own fault? :-))

Collapse
 
deciduously profile image
Ben Lovy

You'd hope, but not exactly. Fedora, arch, and mint all broke on me on random updates in ways I couldn't figure out how to fix when I hadn't changed anything. Debian never did, to its credit.

Thread Thread
 
ironmatt613 profile image
ironmatt613

Agreed. I was partly joking. I do acknowledge the fact that many distros can break, especially after updates. But many of my own mishaps have occurred because of my own foolishness or impatience :)

Collapse
 
ghost profile image
Ghost

Really Gentoo has that rap? -being a breakable mess that you'll spend a crazy amount of time fixing- I've used for years and I wold say that it even gets boring, nothing breaks and I would even argue that if you want work done is great; you install it once avery 5+ years, the distrohop bug hits, you spend 6 months trying other distros just to find them missing "something" and getting back to Gentoo for other 5+ years.

With other distros I spend way too much time uninstalling things and cleaning them from things I don't want/use.

With Gentoo you start naked (is part of my the process, don't ask me why), and to install everything is just copying your curated clean world file and # emerge --sync && emerge -vauDN world and go to sleep, next day you are done.

Also once you are happy with your system you just backup /etc and your /home and your configuring process is just copying.

And people complai about compile times and I get it if you are trying SW but if you already know what you want compiletimes are irrelevant; avery 2 days I look for updates 10mins before bed if is a small update I leave it for the next day; if is big I just let it compile while I sleep, next morning is done. People complain like you have to be on front on the screen reading the compile output with a notepad taking notes.

Other thing people complain is the "hard" install; the handbook tells you what to do step by step, and also tells you what every step do and why; is not hard is just more involved. And also unlike most distros you can install it from your current distro or from any live distro, while watching a movie, playing, working, etc. So who cares if it takes you a lot of times because is your first time, nowdays takes me a week sometimes, because I start one day make a few steps and get bored or busy and take a note on the step I left and get back to it a few days later and just chroot on my half done install and work from there. No preassure, you just keep working on you current distro meanwhile.

So just want work done?, maybe try installing Gentoo 1 time every 5+ years (more if you don't get the distrohop bug) and do it while you keep working and using your PC normally.

Collapse
 
deciduously profile image
Ben Lovy

It's a criticism I hear but I'm with you - it's the most boring distro I've used! When I sit down at my computer I usually want to get something done. Gentoo's perfect for getting the hell out of my way and providing all the tools i need.

I run it more or less like you do - just set it to go overnight for anything more than a few packages. I also set PORTAGE_NICENESS low so it's not hogging resources. My old laptop definitely had more of a problem with things like llvm and boost, but I got new hardware last year and compile times are fine. My hangup is more about energy consumption - my processor runs hotter for longer than it would with a binary distro, so the fans spin up for longer, and I've gotta decide how much I care about that. If I'm not running an overnight emerge, I generally power down my workstation at night.

Agreed on the install, too, the handbook could not be easier to use. Installing Gentoo is an exercise in careful reading skills, nothing else. You don't need to know much of anything at all to get started. The chroot install is amazing, too - but couldn't you do that with a number of different systems? I've only tried it with Gentoo but it seems like a process that could be used more generally.

the distrohop bug hits, you spend 6 months trying other distros just to find them missing "something" and getting back to Gentoo for other 5+ years.

Hilariously relatable. I've tried a few times to cut the cord and use a "real, serious" distro but I always come running back home :)

Thread Thread
 
ghost profile image
Ghost • Edited

I guess you could do the after install of other distros with chroot but the install itself I don't thinks so, you need their installer, even Arch need their own install scripts, I think that the fact that Gentoo/Funtoo has no installer at all make possible to install from scratch without any special sauce.

And as a PSA, for years I had problem estimating install/compile times, for Gentoo, and I found genlop, I don't know if every Gentoo user knows about it and I was the only fool that didn't but in any case. It tells you your historical compile times of every package you have installed and also has a database with times of programs you haven't in a similar CPU. Even a ETA of the package you are currently compiling. And it took me just about 8 yrs to find it out :)

Thread Thread
 
deciduously profile image
Ben Lovy

Wow, first I've heard of this! Thanks so much, that's a great idea, installing it tonight.