DEV Community

Cover image for Au Revoir, Gentoo - Sell Me A New Linux Distro
Ben Lovy
Ben Lovy

Posted on • Updated on

Au Revoir, Gentoo - Sell Me A New Linux Distro

Is This What Growing Up Feels Like?

I have been an avid, dedicated Gentoo user for about seven years (gulp). I love the flexibility of the package manager, and the extremely granular level of control over my system it gives me. Installing and administrating a Gentoo system for this long is the reason I know as much about Linux as I do, and I don't regret a minute of it.

However, all that configuration comes at a cost - my time. When the system works, it requires little to no maintenance, and should generally continue to work. If it breaks, it's because I changed something. However, it does require frequent updates to ensure smooth roll-forwards, and that means rebuilding components from source, a lot. If nothing else, it's ecologically irresponsible to repeatedly rebuild a whole Linux distribution for negligible gain.

At the end of the day, my needs are pretty run-of-the-mill, which is kind of a misuse of Gentoo's flexibility. It's finally time to part ways.

This is the list of alternatives I'm considering. I've actually installed and used each of these before as a secondary exploratory distro, but never used any as a daily driver.

This is currently my top choice, but this may just be a reaction to where I'm coming from. Debian's "elevator pitch" is stability. A Debian system should be expected to be rock-solid once installed. I don't want to futz with my operating system, I want to turn on my workstation and do work. Debian enjoys a massive package set and widespread compatibility, but I am concerned that the stable branch lags in terms of updates. I could use Debian Testing, but am I then forfeiting the whole purpose of using Debian in the first place? How easy is it to selectively use updated (or upstream) package repositories for software I actively use a lot on a largely Debian Stable system?

Manjaro is my second choice. I came to Gentoo from Arch Linux, and clearly connect with the "lego set" style of DIY linux distros. Arch was also a highly pleasant, highly stable experience, but this time around I no longer feel the need to build up completely from scratch. I had a positive experience installing Manjaro back in 2016, and can only assume it's further improved since then. Arch-diehards - why shouldn't I just use Manjaro and instead keep it strictly Arch?

I have much less familiarity with RPM, so it would be nice to learn, and hear this is a solid choice for developers who need their system components to remain relatively tight with upstream but still need a stable, cohesive system that all works together. This is the furthest from what I know, so it's tempting, but the whole point here is to think less about my OS and just get stuff done.

OpenSuSE has the somewhat dubious distinction of being my very first Linux distro, about six months before I discovered Ubuntu Breezy Badger back in 2005. I also tried and liked using Tumbleweed in 2018 for a bit as a daily driver, but still ended up running back to Gentoo. This distro has some serious brand loyalty, though. Why should I give it another look?

Most of these distributions actually differ somewhat minimally. It's a choice of a package manager and a default set of applications. I have already settled on KDE Plasma as my desktop environment of choice, so if I don't much care about the base, why not just use their distro and get the most polished KDE experience? Would this limit me in any significant way? The Ubuntu LTS base actually ticks all my boxes too.

Not likely, and not Linux, but Gentoo's portage is the whole reason I like Gentoo so much and is inspired by the BSD-style ports system. Is this actually a viable choice for a daily driver for development work?

I am also using and enjoying Void Linux on my rapidly aging laptop, but it's not quite as "just forget about it" as I want for my more modern desktop, and every so often I have trouble getting something installed (most recently, for example, dotnet).

Is there something awesome I've missed? Other reformed distro-hoppers, what's your Linux forever-home and why?

Photo by Mantas Hesthaven on Unsplash

Discussion (189)

Collapse
dm17 profile image
dm17

Maybe you're bored and want to bikeshed in a new distro? :)

I'd prefer that you went with Gentoo because I'd like to see experienced devs stay with it has as much help as it can get.

One criterion for me has been distro's support for the zen kernel and hardened kernel - not all have the same patches or default options.

I'd rather see devs like you pick a distro based on virtue and then apply your virtue to improving that distro in the way(s) you're passionate about.

Collapse
deciduously profile image
Ben Lovy Author • Edited

I'll still keep Gentoo in my life, it's just no longer what I want from my main work OS. I'm trying to pick based on virtue, but my virtues have shifted.

Collapse
dm17 profile image
dm17

What about precompiled Gentoo? Then you'll be familiar & not wasting time on compile, which is the main virtue that's currently being violated - right?

Thread Thread
deciduously profile image
Ben Lovy Author

I hadn't thought about that. I'm running precompiled Gentoo on a raspberry pi right now (and plan to for the foreseeable future), and it's a great solution there, but it's perhaps a little too static for a desktop system. I will inevitably want to make changes and apply updates, which just puts me back at square one.

Thread Thread
dm17 profile image
dm17

Surely there's a way in Gentoo to use precompiled when you want and still have access to the normal config options...

Thread Thread
deciduously profile image
Ben Lovy Author

Yep, absolutely, and it's more configuration and (likely, in my case) trial and error. I'm a little burnt out on tailoring Gentoo, I guess.

Thread Thread
dm17 profile image
Comment marked as low quality/non-constructive by the community. View Code of Conduct
dm17

Yes, but after all these years your Gentoo config should be pretty dialed in by now, right? And these days you can basically 'emerge world' in the background while you're working, right? I'm not really clear on the problem, but perhaps you're a convert to the climate change religion - in which case you should probably use something like ChromeOS. The globalists would prefer you have everything in the cloud.

Thread Thread
deciduously profile image
Ben Lovy Author

Not sure why you're getting abrasive and political about this, I don't really have a response to that part of your comment.

Yes, when my system works, it works well. It's still held together by years of my own configuration, and when I decide to make changes, there is a chance I break something and it's not always clear what the fix is. There always is a fix, of course, it's Gentoo. I am at the point that when I do run into an unclean merge, I am frustrated that I have to then go digging to resolve it. Maybe it's a problem with my expertise, but it's happening right now - some update recently introduced some ABI incompatibility that's at odds with some hardcoded change I made years ago, and undoing the change caused more problems, so now I need to dig to find the source of the issue into order to get a clean merge. It's not a huge problem, for now I'm ignoring it and just not merging some updates and my system works fine, but it's annoying that I will eventually need to fix it. I don't want to play the game anymore on my work OS, just on side projects (like the Pi).

Thread Thread
iz0t0p profile image
iz0t0p

Chrome OS is modified Gentoo

Thread Thread
deciduously profile image
Ben Lovy Author

Yes, but tailored to this specific web-focused use case. It's not a replacement for a general purpose OS, even though it's built from Gentoo's meta-distribution tooling, and I don't think the suggestion was made in earnest.

Thread Thread
dm17 profile image
dm17

Maybe a reinstall is due. I haven't had to mess with anything since I started using Docker for questionable stuff. Meaning stuff that I thought might mess with my system in unforeseen ways.

Your views might be the reason you find my reply abrasive. I don't think I can be accused of making it political when your article says it is "ecologically irresponsible" - that's political. This happens often when someone says a strong (and what I believe to be an ideological) political view... And if anyone opposes it, then they get accused of "bringing up politics." Trying to divorce technology and politics completely is impossible.

Thread Thread
deciduously profile image
Ben Lovy Author • Edited

The globalists would prefer you have everything in the cloud.

Replace "irresponsible" with "wasteful" and its an even more objective observation, and a very secondary point here. Before this thread, your only other comment is some crap about "globalists" and political correctness in an unrelated thread, so it's hard for me to believe you're commenting in good faith.

Thread Thread
dm17 profile image
dm17

Wasting electrons? Wasting your money on energy? I don't think compiling software from scratch is absolutely wasteful. Energy neither created nor destroyed. Quantifying how Gentoo affects a desktop users energy bill would be a challenge to do fairly.

Thread Thread
deciduously profile image
Ben Lovy Author • Edited

Sure, it's nuanced, and probably interesting to dig deeper in to. My point is that's not really my point here at all, maybe it was a mistake to even mention that at all in the OG post.

You're probably right, a re-install would help me with today's frustration about my Gentoo install, but I don't think Gentoo has to be the be-all, end-all of my Linux experience. I'll always have a Gentoo install around, and appreciate it for what it is, but there's lots of tools out there.

Thread Thread
dm17 profile image
dm17

Gentoo's stage3 builds & funtoo.org seem like good options + that reinstall.

Thread Thread
deciduously profile image
Ben Lovy Author

I go back and forth on funtoo. I ran it for about two years but eventually ended up back on Gentoo. It's got some cool ideas, but I'd prefer to stick with where the brunt of development is focused. Maybe when I learn a lot more about software I can try again and be a more active participant in the distro's development, I hope it stays around for a long time.

As for the reinstall, I keep a SystemRescueCD flash drive around, that's usually all I need to start fresh.

Thread Thread
dm17 profile image
dm17

I will still have to try it to recommend it, but maybe having an immutable workstation will reduce your issues. Someone here mentioned Silverblue, but Darch can do the same with Gentoo, Arch, etc.

Thread Thread
deciduously profile image
Ben Lovy Author

Yeah, for sure. It's not something I've spent much time looking in to, but does seem like it would address my problem from the limited understanding I have.

Collapse
blesiloquent profile image
Ernie

Ditto!

Collapse
alexplay profile image
Alexplay • Edited

I started with Ubuntu, and also liked to tinker a lot, when I had too much spare time, I went to Debian, Gentoo, Sabayon, Arch (in that order, note how I grew tired of compiling and wasted time, with each hop, I started to look for precompiled again).

Finally I read a comment Linus said about Ubuntu that really clicked with me and made sense, I needed to work and be productive with little hassle, need the most compatibility and focusing on my work, not fighting the distro to make it do what I want. So it was Ubuntu, it just works. Simple as that.

I don't regret using those other distros, they taught me a lot though, but I think it's a natural transition to simplicity after you see it's not worth the extra milliseconds of performance, at least for a user that besides being a developer, does the usual things with his PC.

Collapse
strredwolf profile image
STrRedWolf

I have to agree. I'm now tempted to switch from Gentoo to Ubuntu, namely because Gentoo is a time sink... and I'm wasting my time. On my laptops, I'm using a flavored version of Ubuntu called Xubuntu, using the XFCE desktop environment. I've used KDE and Gnome -- they've moved too far from "Choose reasonable defaults with a large base of options, don't yank 'em away, don't think you know better than me, and don't get in the way of me doing what I need to do."

I think I'm switching soon, probably with my next hardware swap.

Collapse
strredwolf profile image
STrRedWolf

A small update. I switched.

Why? I use Chrome Remote Desktop. Gentoo had a package for it that needed a maintainer to keep it up. I had a problem a filed a bug.

The response was to remove the CRD package.

That broke the camel's back. I switched that day.

Collapse
deciduously profile image
Ben Lovy Author

Very relatable. Is the usability gap between Debian and Ubuntu really that large?

Collapse
alexplay profile image
Alexplay

I gave Debian a last shot before going back to Ubuntu because I liked the idea robustness, but even with the "less stable" Debian I was missing a lot of the bleeding edge and features I needed at that moment in my day to day job, I felt crimped at times and having to revert back to, you guessed it, compiling from source and installing a parallel version. Ubuntu has really been stable for me, I think the Debian idea of robustness is not really meant for the end user, but more oriented towards servers and other target audience, definitely not a developer's distro IMO, because we need to be on top of the latest most of the time.

Usability-wise, there's always something ready-made for Ubuntu; commands, binaries and tutorials are Ubuntu-first because it's the consumers distro, that's what I wanted, if I needed a program I don't wanna know the inner workings, I want to copy paste the command, install and keep on moving with my thing.

Thread Thread
deciduously profile image
Ben Lovy Author

Awesome. Right now I'm leaning Debian, and got a working install up on my hardware in no time at all, but I think I just need to have this experience for myself as I use it more. There's a decent chance I'll end up on Ubuntu for similar reasons, we'll see.

Thread Thread
alexplay profile image
Alexplay

Experience is never bad, at the end of the day it's what you feel most comfortable with. Debian for me is right there next to Ubuntu in terms of what I need, so it's a close choice.

Collapse
pbannister profile image
Preston L. Bannister

At least for development, needed bits are more likely to "just work" on Ubuntu, in my experience, more than any other distribution, even Debian or Fedora.

Mostly, I want to get stuff done, and want the least friction when using new bits. That is what you get from the mainstream.

Collapse
citizen428 profile image
Michael Kohl • Edited

I used to be a Gentoo developer/package maintainer way back when it was relatively new (2004-2006 if memory serves). I stopped for pretty much the same reason you outlined above and went back to Debian-based distributions. At several jobs I used Fedora as my main OS, mostly because it tends to have much newer packages/libraries than Debian which makes for a more pleasant development experience.

I actually prefer FreeBSD and used it as my daily driver on the desktop before, but it didn't work so well on laptops back then. Admittedly I haven't tried that in ~10 years, but I'd bet Linux is still ahead there.

Collapse
deciduously profile image
Ben Lovy Author

At several jobs I used Fedora as my main OS, mostly because it tends to have much newer packages/libraries than Debian which makes for a more pleasant development experience.

Sounds like despite this Debian is still the safer choice, though?

Collapse
citizen428 profile image
Michael Kohl • Edited

It depends. If you want to use it as daily desktop OS, you may potentially end up with testing or unstable anyway, since stable can be quite dated. Honestly, I consider most major distro nowadays to only differ marginally, so unless you care about nerd street cred, just use whatever you're most comfortable with.

Thread Thread
deciduously profile image
Ben Lovy Author • Edited

only differ marginally

The core of it to me is the package manager, not necessarily the set of stuff on the install disc. That said, is DEB vs RPM pretty much cosmetic?

use whatever you're most comfortable with

Unfortunately at this point that's Gentoo, and not much else, which makes me think Manjaro might be the right call here. I don't care about nerd street cred, but I do care about using the "best" tool for the job. I guess the better question is whether not subscribing to one of the more mainstream package managers shooting myself in the foot in any significant way?

Thread Thread
ghost profile image
Ghost

Depends also on what to dev and if you usually try a lot of new SW, with AUR Arch has an availability second to none. And if you have used Gentoo, admin Arch would be a breeze. Debian feels too outdated for a desktop.

Thread Thread
citizen428 profile image
Michael Kohl • Edited

The core of it to me is the package manager, not necessarily the set of stuff on the install disc. That said, is DEB vs RPM pretty much cosmetic?

People will disagree, because arguing is half the fun of being a Linux user 😉, but as far as I'm concerned the differences nowadays are mostly cosmetic.

I do care about using the "best" tool for the job.

Overrated in my opinion. Using a "good enough" tool for the job seems to often be the better choice. Unless you plan on switching every time a shinier distro comes out.

Also "best" on what axes? It's hard to beat Debian in stability, but that also makes it less attractive as desktop OS. Similar trade-offs apply to others. I'd wager you can use any of the top 20 or so distributions on Distrowatch and be happy with it, and if you have your home directory on a separate partition switching at a later point comes with marginal overhead.

Thread Thread
ghost profile image
Ghost

To round up a bit this point I would say, for someone who was using Gentoo, distros are reduced to: how new are the SW in the repos and how annoying is to install Steam if you care about that and as far as I've heard with Proton that's not even a problem anymore.

  • Default WM or DE? you can change that.
  • Package manager, in the past 10 years I don't think I've ever had a dependency problem. And for dev are less and less relevant, nowdays you have: pip, npm, cargo and that's besides Docker, Flatpak and AppImages.
  • Default programs, you'll probably install your own prefered ones anyway.
  • Ease of install, well, you had Gentoo, you'll be fine.
  • Stability, not sure about this, I used Arch for years and never had a serious problem, maybe a program update a little raw, but in those cases the fixed update came the next day if not sooner, so nowdays I'm not sure if having software from the middle ages is worth it. And even for servers, you endup just with systemd + Docker so in that case distros are even less important to me.
Thread Thread
ghost profile image
Ghost

and by the way "... arguing is half the fun of being a Linux user ..." I don't think is half, I would say is about 67%, it was 50% years ago when ....

Thread Thread
deciduously profile image
Ben Lovy Author

Right now, the "best" tool is one I won't ever feel tempted to switch out. I think we're saying the same thing, ultimately.

Thread Thread
dm17 profile image
dm17

Perhaps temptations have an inward rather that outward cause. In more modern language: it is the dev, not the tool.

Collapse
willaaam profile image
Willem Mobach

My personal favorite has been KDE Neon as it ticks all the right boxes for me and most of my dev team.

Why Neon:

KDE is for me best DE right now, as it's mature, secure and can go from windows clone to tiling WM in minutes.

KDE Neon prevents me from hacking and upgrading my base OS as I feel like I'm having a fresh experience continuously. That stream of improvements to the software you interact most with on a daily basis allows you to just enjoy your computer instead of feeling that tinkering need deep down.

Experience:

KDE Neon is super stable and upgrades haven't failed me so far. Integration from discover (UI package manager) with flakpak and snap has been seemless for a few months now. PKCON (console package manager for KDE Neon) has also worked flawlessly with apt backend.

Sometimes you do run into an incompatible package from base ubuntu as that was packaged for an older QT/KDE libs version. Usually I then install that bit of software using snap or flatpak as it then ships with its own libraries anyway.

Hope this helps!

Collapse
deciduously profile image
Ben Lovy Author

Ive heard Neon doesn't always play well with non-KDE software. Have you found that to be the case, beyond the qt versioning issue?

Collapse
laughingraven profile image
Laughing Raven

The question though is how long will this distro last. Seriously sir, stop the anguish and just use Ubuntu. They are a stable company that is financially solvent and will still be around in a few years.

Collapse
willaaam profile image
Willem Mobach • Edited

No absolutely not - all gnome library based software works absolutely great, and theming integration has gotten much better over the last few months as well.

As root filesystem editing is protected in KDE I usually use thunar for example, works fine. Same goes for Firefox, which has full integration with the taskbar for example.

I can't recommend NEON enough if you're a KDE user, it's super stable for us and it just feels great to get the latest and greatest in KDE land without the fear of complete system meltdown / full rolling release distro.

Thread Thread
deciduously profile image
Ben Lovy Author

Awesome. I'm leaning more and more in this direction.

Thread Thread
kdien profile image
Khoa Dien

I'm also a KDE neon user and it's just fantastic! Very stable and well-supported Ubuntu LTS base + new and shiny KDE software on top which is super polished, intuitive, and somehow light on system resources. Definitely recommend it!

Thread Thread
caruso profile image
Giuseppe Caruso

I'm following KDE Neon development lastly and I see that in the lasts months it's becoming more and more integrated also with Gnome applications making it a kind of universal OS for Linux plus its own niceties.
But what's the difference with something like Kubuntu since they are both Ubuntu based distro with KDE on top?

Thread Thread
kdien profile image
Khoa Dien

Kubuntu is Ubuntu with KDE Plasma, so it'll get more updated packages from Ubuntu and you could also get a non-LTS base.

Neon on the other hand is always based on Ubuntu LTS, so Ubuntu packages may be a bit more behind, but you get the latest and greatest KDE stuff.

Collapse
gypsydave5 profile image
David Wickes

So you're after something that's

  • super stable
  • a good daily driver
  • Unix, but not necessarily Linux

Have you considered using a fork of BSD? It's supported by a multimillion dollar corporation, who've built a custom window manager on top of it. It's tailored to a very specific hardware setup, but under the hood its mostly vanilla BSD, with the same utilities and philosophy. It's a great development OS, and you'll never spend any time messing around with the OS.

One catch: you'll have to buy one of said corporation's computers to use this OS, or hack one together yourself.

Other than politics and price - why wouldn't you use an Apple Mac running OSX?

Collapse
citizen428 profile image
Michael Kohl

why wouldn't you use an Apple Mac running OSX?

  • Dropped support for 32-bit apps means that many people sit on Steam libraries full of (indie) games that they can no longer play. Also true for some audio/video software and plugins, where people don't want to pay for expensive upgrades if an older version serves their needs.
  • Useless apps (Stocks, Stickies, etc.) are forced down our throats on desktop and you can't even uninstall them unless you muck around with csrutil and even then the next update will bring them back.
  • Constant popups if applications are allowed to access my Downloads folder or other locations. It's a computer, not a phone.
  • Catalina write protected the system volume, wiping the Nix stores of all users. This almost made the Nix developers drop macOS support, but luckily there's a workaround that involves creating a separate volume and mounting that via a synthetic symlink (man 5 synthetic.conf). This is true for everything that wrote in the root directory, not just Nix.

Apart from that, almost every Apple laptop I ever owned had some sort of hardware issue. For example, I'm typing this on my newly replaced butterfly keyboard, and I almost forgot how nice it is to not have doubled and/or missing letters.

I bought the new MBA last year around Christmas and it's most likely the last Mac laptop I purchased for myself. And I'm saying that as someone who got into Macs with Mac OS 9 and used them as his primary devices since the first Intel Macs came out.

Collapse
richardhowes profile image
richardhowes

I’ve been an Apple groupie for more than 10 years. Loved the iPhone revolution and the incomparable build quality.

Note in exploring Linux again fire a few reasons, mainly price, ports (lack of), and boring OS.

Never thought I would abandon Apple but I just can’t stomach the changes abs costs any more. And a super expensive laptop with only four USB C ports? It’s driving me insane - my Laptop often looks like a Christmas tree.

Collapse
moopet profile image
Ben Sinclair

Other than politics and price - why wouldn't you use an Apple Mac running OSX?

Because of its terrible UX, bug-ridden UI and lack of customisability or compatibility.

Collapse
ghost profile image
Ghost

and to go from the most flexible and configurable distro to Apple tiny box? go from, compile this package but only with this features I'm giving to you; to "feedme Apple gods", and please be nice to me... I'll pay you more if you love me back! and don't take more ports away from me plz! or do, if you think I don't deserve or need them...

... seems a big jump to me.

Thread Thread
deciduously profile image
Ben Lovy Author

It is, but it's partially precipitated by the fact that I no longer care much about that as long as I can use the tools I want to use. There are other reasons why this is not on my radar, though.

Collapse
deciduously profile image
Ben Lovy Author

You're not wrong, of course.

Other than politics and price

Those are reasons enough for me, though. I'm good with the hardware I've got, have no plans to upgrade for several years, and got the specs I needed by watching prices of components individually, ending up spending a fraction of what Apple hardware would have cost. The hackintosh route is also just that - a whole project in and of itself. I want something I can install today on my hardware as-is. Also, you still need to buy a license, right? If I can get most of the way there without spending money, that's worth it to me.

Collapse
moopet profile image
Ben Sinclair

Arch-diehards - why shouldn't I just use Manjaro and instead keep it strictly Arch?

Manjaro includes a lot of junk apps you won't use out the box, including things like menu items for Microsoft products and associations with .doc files, etc.

It doesn't offer anything I can think of over Arch except a GUI installer, and installing Arch takes ten minutes if you follow the steps on the website, which is possibly even faster than the GUI method.

It's more like, "why shouldn't you use Arch?"

Collapse
deciduously profile image
Ben Lovy Author

Good points, all - true enough re: install time. Doesn't Manjaro keep its own package sets on top of the base Arch stuff?

Collapse
ghost profile image
Ghost

something you have to consider is that if you come from a GEntoo install, Arch would be even easier given that most of your config would be just copy files from your existing Gentoo /etc; when I moved from Void - Arch - Gentoo, the whole install where mostly just copy/paste. So maybe in your case Arch maybe is actually faster to install than Manjaro.

Collapse
greyfade profile image
Charles Banas

It has a few packages written by someone who clearly has no clue what he's doing, but no, all it does is hold packages back a week, and occasionally backports security patches and doesn't publish the PKGBUILDs for them.

Collapse
0xbf profile image
Bo

How about Ubuntu LTS ? For saving time I think it is a good choice. For installing packages, It has both apt install and snap install

Collapse
deciduously profile image
Ben Lovy Author

What's the benefit over just using Debian?

Collapse
0xbf profile image
Bo

Ubuntu has more apps since it contains both free and proprietary applications. Also since 18.04 LTS, it has snap pre-installed, for some software it is really easy to install, for example, to install a rocket.chat server, it is just one line snap install rocketchat-server, although you can install snapd manually in debian too.

I mean for advanced user like you, there may not be many differences, but on the "saving time" purpose, I think Ubuntu LTS is better since it targets Linux beginner users with a lots of apps pre-installed or pre-configured. I was using Debian and FreeBSD before, while customizing the system is fun, my current main focus is getting things quickly done without spending too much time on trouble shooting software installation problems

Thread Thread
deciduously profile image
Ben Lovy Author

Awesome.

it contains both free and proprietary applications

I don't believe I currently use anything non-free, but this is an important note, thanks. I've never really tried snap, it does seem pretty painless.

Good food for thought, I do feel I've kinda gotten my UNIX ricing days out of my system already, so this may actually be exactly what I need.

Thread Thread
krkd profile image
krkd

Another upside of the LTS-versions that alot of people, quite ironically, neglect is the extended support that you'll get. Ubuntu 18.04 LTS, which was released almost two years ago, will receive security updates until 2023.

Obviously if you wait that long to upgrade you'll suffer from dated packages with a potential lack of features, but no matter what, you'll still receive security patches.

Collapse
kovirobi profile image
Kovacsics Robert • Edited

Excellent, I get to recommend my favourite, NixOS (I am not affiliated with

them, apart from submitting packages and occasional bug[fixes]).

First, some vocab:

  • Nix Expression Language -- the core lazy functional language in which the packages and the OS configuration is written.
  • Nix -- the package manager, can be used on non-NixOS, e.g. MacOS or any other Linux distro.
  • Nixpkgs -- the set of 'upstream' packages. This is actually quite a lot, see repology, so hopefully you won't have to do any packaging.
  • NixOS -- an OS built from a configuration written in the nix expression language

So you can try out Nix without going all the way to install NixOS first, but only some of the points may apply.

Pros:

  • It's very different, not just different command names, great if you want to learn a different way of doing packages.
  • Offers very easy rollbacks to a previous configuration.
  • Offers declarative config, in a single consistent way (i.e. not just a git repo of the files under /etc). Also offers imperative installation of applications (e.g. you don't need to rebuild the whole declarative config to install a program, though putting programs in the declarative config makes the system easier to reproduce, e.g. for reinstall or different computer).
  • Non-root package installs (AFAIK you cannot install e.g. setuid packages, so you cannot use this to write a package that just opens a root shell and non-root install it). Multiple installs of the same package share the disk-space, so no duplication.
  • Allows a language-agnostic variant of something like Python's virtualenv for projects. E.g. This also applies for Nix, not just NixOS so you can use it with colleagues who don't use NixOS.
  • Can override packages, so perhaps some of the benefits from Gentoo? E.g I prefer the X toolkit emacs to the GTK one

Cons:

  • It's very different, not just different command names, packaging software might be more annoying, especially for proprietary software (there are bypasses, e.g. it has a (easy I think but I haven't used it) to set up an FHS chroot (systemd-nspawn, no root user needed AFAIK).
  • Need to learn the Nix Expression Language, a fairly simple functional programming language but still might be a bit of a learning curve.
  • Non-root package installs make quotas difficult (there might be a solution to this, I didn't really look into this, just a potential heads-up).
  • Fairly memory hungry (when installing packages or when rebuilding the system). I do use it fine on a 4GiB RAM netbook though. Possibly partly due to the sheer number of packages.

I have managed to reinstall my system after I discovered my old hard-drive was having problems, in 45 minutes. This might seem like a lot, but it included getting back to the exact configuration, which would otherwise be a week of tweaking things. Also, the actual install only took 5 minutes, the rest of time was:

  • Partitioning (figuring out how to use parted) 10 minutes
  • Waiting for the screen to turn on, cumulative 10 minutes (for some reason my screen takes about 2 minutes before it shows a picture, so this was just spent waiting for the right boot prompt, and some pressing of DEL key).
  • Fixing a bug in my config 10 minutes -- I wrote a custom script to show random backgrounds because the feh default is prone to the birthday problem, but this had a bug when there were no images to set as background.
  • Installing bootloader and getting UEFI to boot that drive by default, 10 minutes. This ties in with both the partitioning time and the waiting for screen to turn on time.

If you love Scheme/Guile and/or lack of any proprietary packages (Nixpkgs has proprietary packages, but hidden/disabled by default -- easy to enable though) try Guix. Ideas based off Nix, but different set of packages (AFAIK, I haven't played with Guix much).

If I have you interested, perhaps try installing it? For learning the nix expression language, the manual and nix-pills are useful, but to give it a spin, you don't need to read everything right away, for basic things the examples in the manual and some intuition should do you fine.

Collapse
deciduously profile image
Ben Lovy Author

Hah, was wondering if this would come up. I actually have a Nix install on this hardware too, it's my second-in-command and I LOVE it. I'm going to have to do some serious thought about why I'm not ready to go exclusive with it - mostly it's just so, so different.

Collapse
kalbasit profile image
Wael Nasreddine • Edited

+1 NixOS. I've moved to it from Arch for the same reason as you, Ben. Broken Vim installation caused by a :PlugUpdate on a very busy day is what broke the camel's back for me; curious what it was for you.

I've written about my motivations for the move here: kalbas.it/2019/03/24/why-i-use-nixos/

Happy New Year!

Thread Thread
deciduously profile image
Ben Lovy Author

To be honest, I don't remember - I don't know if it was any one specific thing, or a sudden realization that I was wasting a lot of time. The specific "straw" is probably irrelevant - it was a long time ago, in any case.

Great write-up, thanks for sharing. I'm hoping that NixOS will someday be the answer I'm looking for here, it's incredibly cool.

Collapse
kovirobi profile image
Kovacsics Robert

That's fair enough, especially if you want/need to use arbitrary proprietary packages, e.g. I sometimes need Quartus for work then sticking for something well known or FHS abiding works much better.

Collapse
vonheikemen profile image
Heiker

I vote for Manjaro.

Before Manjaro I used Ubuntu for years, the user experience has been almost the same, stable. Didn't have any problem with the hardware (but that just luck). I've been using Manjaro i3 edition for more than six months and everything has been great so far.

I installed all my development tools from the main repository without any problem. Didn't even bother to learn about the package manager the first month because the graphical frontend (pamac-gtk) was so convinient and easy to use.

If you do need to do some maintenance I believe they have some helpers scripts that automate some stuff for you. I came across one of those while browsing the options of bmenu.

Collapse
deciduously profile image
Ben Lovy Author

Didn't even bother to learn about the package manager the first month

Heck of a review. Thanks for sharing your experience!

Collapse
techcodenet profile image
techcodenet • Edited

Not sure how you missed Gentoo derivatives like calculate-linux.org/en/

After trying Sabayon long time ago - I quickly gave up on it's promise of "It's Gentoo, but with binaries", mostly because it's not really Gentoo if you can't use emerge/portage.

Then some ~3 years back I gave Calculate a try and haven't looked back.

Yes occasionally even it's mighty cl-update (cron friendly though I keep doing it only manually for no good reason) will run into situation where several things all align (switch to 17.1 profile, old portage/emerge, old python) needing some manual attention.

Even then it's only dealing with blockers/masked packages, and still mostly pulling in binaries.

And if at this point you're looking for even more YOLO thing...

Simply use cl-install that by default does automatic flip/flop between two root partitions (kind of like having two BIOSes on motherboards or routers).

Collapse
deciduously profile image
Ben Lovy Author

Actually, I wasn't really aware of Calculate, only Sabayon, which I'd written off already for exactly the same reason. Will definitely take a closer look, it's good to know you're having a positive experience.

Collapse
techcodenet profile image
techcodenet • Edited

At this point I'm also not sure how I've ran across it myself.

Use flags binaries are built with are IMHO almost completely spot on - to the point where even CUPS automatically finds and configures network printers in corporate settings.

Only time I really wished it did things differently was remotely installing it on Hetzner dedicated server. And that was only because their software KVM mounting custom ISO was not really working and calculate doesn't provide Stage3.

On the other hand it's exactly because of that I know Calculate is "real Gentoo".

Starting with Stage3 it's a matter of setting some Layman repos, installing a few packages and your stock Gentoo becomes Calculate.

PS: Only packages/flags I override are:

# because one shouldn't use ithreads in Perl5
dev-lang/perl -ithreads

# Don't recall what/why, might not need it anymore
net-im/pidgin gtk

# For places where it's not yet NginX and each domain has separate user/account and there's suexec/plack/mod_fastcgi
www-servers/apache suexec -threads
Thread Thread
deciduously profile image
Ben Lovy Author

Don't recall what/why, might not need it anymore

My Gentoo installation, in a sentence... :)

Collapse
torepett profile image
Tore Pettersen

Have you considered Solus? It will definitely be my next Linux distro.

Solus is a rolling release, that is not based on any other distro. But it is still considered to be quite stable and easy to install.

It also looks pretty nice although it is supposed to be quite lightweight. I can't wait to give it a try.

Collapse
deciduously profile image
Ben Lovy Author • Edited

I've heard of it but don't know much about it. I'd be curious to hear your thoughts once you do!

Collapse
tastyminerals profile image
tastyminerals • Edited

Solus is very nice distro. Very fast to boot with neat ecosystem and I seriosuly considered swithing to it from Manjaro if not for the lack of CUDA support (resolved now) and some missing hardware drivers.

Collapse
dwd profile image
Dave Cridland

I started on Slackware, on kernel 1.1.59 (I forget the Slackware version). Back then, distros were largely about getting a system installed - after that, you were really on your own.

Compiling my own kernel became routine. Compiling an upgraded libc wasn't unheard of, and I don't recommend that. Switching manually from a.out to ELF.... Yeah, I try not to remember that. But I certainly compiled nearly all the software I used myself.

Now? I run Ubuntu on my desktop, almost exclusively from packages. I'm sure there are exceptions - besides the code I write for a living, but I can't think of any.

Steam, Jetbrains, Slack, and Google Chrome are all packaged, and the PPAs support my more esoteric needs.

The reason I switched away from self-compilation was actually Gentoo - I've never used it, but I was in a kitchen at a party, and someone else made the comment that they never understood why anyone would want to compile someone else's code unless it was their job.

The person was Alan Cox, who was at the time the Linux stable kernel maintainer. If he's not interested in compiling everything himself, why on earth would I want to?

So I shrugged, and next time I reinstalled, and I went with Ubuntu. It's not perfect, but it's pretty good out of the box, well supported commercially, and the PPAs give it whatever bleeding edge you need.

Collapse
deciduously profile image
Ben Lovy Author

Awesome answer - even just reading "[s]witching manually from a.out to ELF" made me feel kind of queasy.

never understood why anyone would want to compile someone else's code unless it was their job.

This is going to stick with me. I've never heard it put quite so bluntly, but, like, yeah.

I've got a Debian 10 experiment going now, but I think long-term Ubuntu or a derivative makes sense for me too.

Collapse
dwd profile image
Dave Cridland

The glibc switching was worse than ELF, especially when it went wrong. You had a shell, but quite often no new processes would run. Gave you a crash course on how to use echo * instead of ls, and so on.

Collapse
kbilleter profile image
kbilleter

Fortunately, I'd switched from Slackware to experimenting with Red Hat and Debian during the a.out -> ELF migration. Red Hat failed miserably; Debian upgraded flawlessly. It was of course a long time ago now, things may have changed :-)

Collapse
jeezacheops profile image
jeezacheops

I have been using linux since the 90s with redhat 5. I am new to the developer/programming scene. I would suggest Manjaro KDE as it is the most stable and beautiful version of kde I have used,even over neon. I have been using it on my gaming desktop and haven't looked back. I do however use Fedora with gnome for my work laptop. Hope this helps.👍

Collapse
mpalermo73 profile image
Matt Palermo

Manjaro. Hands down.

After 17 - yes seventeen - years of using Gentoo for the exact reasons you did, I decided that useflag hell was getting old (especially the python 2 and/or 3 moves...). I tested out Arch proper for a bit in a VM. I found that I was still running into similar package conflicts and on top of that sometimes the SAME package would be updated 2 or 3 times in one day. Why? Lack of testing. YOU are the Package Guinea Pig when using Arch proper. That's not the way I like to roll.

Manjaro has full system updates "only" about once a month (though critical updates happen anytime) because everything is actually tested and allowed to bake for a while before being released to the masses. After 2 years with Manjaro, I have not had one single problem (that I didn't cause... ;-) ).

M.

Collapse
deciduously profile image
Ben Lovy Author

YOU are the Package Guinea Pig when using Arch proper.

That's precisely why I hopped ship in the first place! This is a great review, we're definitely coming from the same place. Good food for thought, thanks.

Collapse
mpalermo73 profile image
Matt Palermo

I wanted to throw one more wrench in your gears.

Manjaro, like Gentoo and Arch proper, is a rolling distro. I know you know that, but where I'm going with it is that I use Dumbuntu ( :-D ) on my work laptop. It's sometimes maddening to use such old libraries, etc. I've since kinda converted it to Neon (KDE's "distro") so I can have a Desktop environment that's not 2-ish years old.

Sure you can add a bunch of 3rd party repos to get newer-ish packages here and there. However, that only helps the NOW. Good luck trying to update your machine to the next major distro release. I'm not saying you WILL get mushroom clouds, but I am absolutely saying you've drastically increased your chances of it.

These "versioned" distros, Ubuntu/Fedora/SuSE/etc, are kinda nice in the sense that package updates are almost guaranteed to work. They're also almost guaranteed to be OLD.

You won't get much/any of the Wizz Bang Cool Stuff (tm) that you read around the intertubes until the next release - a year or two or so from now. With rolling distros, you get them as fast as the package maintainers can tag them for release. In the case of Arch proper, it's often before they've been verified to not eat your kitten (as we've already agreed). Manjaro? Middle of the following month (give or take) you'll get baked and blessed packages that you don't need to hide your kitten to install. Ubuntu/etc? Next year sometime. Maybe. If you're lucky.

Just a little more food for thought after being back at work and trying to update my laptop...

Thread Thread
deciduously profile image
Ben Lovy Author

This is a good point, and my biggest hesitation about choosing Debian. At least right now, I don't think I care about having a system that's years behind, but it's the sort of thing I can't really judge until I run into problems that arise from it. If I do want to try something out, I'm also running NixOS, which should be a little more up to date if I want to take a test drive.

Collapse
mccurcio profile image
Matt Curcio

After spending years tinkering around with different Linux boxes. I hate to say it but I am now a LinuxMint person. It has 90 percent of the software I need preloaded and it is good to go in 2 hour from a clean ssd. I have gotten to the point where I want 90 percent to work right away.
My 2 cents

Collapse
deciduously profile image
Ben Lovy Author

I also had a great time with Linux Mint! At this point I think if I go Debian-based it'd probably be plain Debian, but this is definitely one of my standouts.

Collapse
davidboh profile image
David Boh

Do you think Arch is the same as Gentoo? I'm realatively new to the Linux world, but I'm loving it so far. Started with Ubuntu, now I use Fedora as my daily driver.

I always saw Gentoo and Arch as excellent distros to learn, but not to be used as daily drivers considering they can affect your productivity. Some people seem to disagree.

I have been using Linux for six months, I jumped from Ubuntu to Debian, and from Debian to Fedora, and I know I don't have enough experience but I can tell you I have no complaints about Fedora whatsoever, it works beautifully for me, at least it has worked perfectly for me so far. I chose it because I saw excellent opinions about the distro online, and I love how most software is updated. I really love how Debian looks and feels, and the stability, but i think that stability has a cost, which is outdated software.

I have tried Manjaro and I think those guys made an excellent job with it. I would suggest you choose between Fedora and Manjaro. They are updated and fairly stable. Imo they have that nice balance between updated software and stability. Also, you don't have to babysit your OS that much.

Collapse
deciduously profile image
Ben Lovy Author

Do you think Arch is the same as Gentoo?

No, but they're similar in a lot of important ways. I generally prefer Gentoo to Arch, it's a little more "just Linux" whereas Arch has some idiosyncrasies.

they can affect your productivity.

They definitely can, but in general it's still a choice. I've been using Gentoo to do work for years and years, and only getting in the weeds with OS configuration when I want to. However, it's always tempting, and it is possible to screw up your box pretty easily if you're not careful and don't do your research, which is absolutely a productivity drain

outdated software

From my understanding, Debian ships with a bunch of outdated (but highly tested) software, but still gives you the ability to pick and choose some software to keep closer to upstream. That seems like the best of both worlds to me, what remains to be seen is how easy it actually is to manage on a per-package basis. Most of my software, I don't care if it's years out of date as long as it works reliably.

Thanks for your take!

Collapse
davidboh profile image
David Boh

I gave up on Debian because I felt I was too "noob" to use it, but perhaps I'll go back to it when I feel I'm more experienced with Linux. I really like the Debian Project in general.

Thread Thread
deciduously profile image
Ben Lovy Author • Edited

Totally. That's a huge barrier, and I had a similar experience when I was getting started. I think Ubuntu addresses that need well. However, I now do have enough familiarity to overcome pretty much anything it throws at me - the basic setup I needed to do to get graphics and WiFi running on Debian Buster took me about ten minutes yesterday, which is acceptable especially because I probably won't ever need to touch it again, even though Ubuntu would have likely done it for me out of the box. It was only that fast because I've been down that road before many times, though, and I remember wasting hours my first time around.

I really like the Debian Project too, and would rather use their OS than Ubuntu's if it doesn't get too much in my way.

Collapse
andreipavel0 profile image
Andrei Pavel

Manjaro has an additional layer of filtering for their system, extra & community packages which gives the feeling of being under unnecessary control. Also delays their delivery by a day or two. This is why I stick with Arch. The AUR is the same I think.

There should be lightweight custom installers out there. I'll take a look.

Collapse
deciduously profile image
Ben Lovy Author

Good to know, thanks!

Collapse
andreipavel0 profile image
Andrei Pavel
Thread Thread
deciduously profile image
Ben Lovy Author

Ah, cool! Thank you for the links.

Collapse
tastyminerals profile image
tastyminerals • Edited

Have been an archlinux user for 5 years and dropped it for exact same reason. I learnt a lot and don't regret a single minute.

You are asking for a new distro? It's either Ubuntu or Manjaro these days. Anything else is a personal bias. Because it is all about hardware support and the size of repos official and unofficial. Both Ubuntu and Manjaro excel in these, everything else lags behind.

Debian -- (stable) old, outdated packages, limited repository, you will eventually be forced to compile stuff and one day you will regret it believe me. Debian (unstable) is better but then again it won't be "stable" anymore so why bother. Debian is for ppl who use a fixed list of applications and have same fixed workflow. Development experience under Debian is also worse than on Ubuntu.

OpenSUSE/Fedora -- again, limited repository of packages, RPMs and other differences which might be good or bad but just not worth the time to learn.

Mint -- very nice distro, basically a version of Manjaro from Ubuntu world. I found its forum quite outdated and not very responsive. Also, long ago it was not as stable as claimed and after an update DE crashed into white screen on my wife's laptop leaving me speechless and my wife laughing at me while I was trying to defend the Linux superiority over Windows :) It was over 5 years ago of course but here you go. I left Mint and never returned afterwards but I believe it is a good distro.

BSD world -- for purists. Quality software and repos but good luck getting support for new hardware. Limited community and development. Again this is a good niche world.

Overall, since I was and arch user I use Manjaro. It installs some junk apps (like any other out-of-the-box distro on this planet) but you can go with netinstall iso if you like. Both Ubuntu and Manjaro have very good hardware support (good luck dealing with Nvidia cards on something less popular). So good I am using Manjaro on surface book 2 now and I had much less problems with both these distros throughout the time on different modern laptops. Besides Manjaro repos and AUR size is second to none. Best forum among all the many distros I tried, very active and responsive. I would however advise you against Manjaro as I think it is less stable than Ubuntu. It is developers distro of choice for a reason. So look no further.

Collapse
deciduously profile image
Ben Lovy Author

This is a great overview, thanks. I'm still surprised at all the Debian Stable hate, I really had a different impression of it vs Ubuntu. Good to know.

Collapse
tastyminerals profile image
tastyminerals • Edited