Please recommend me a Linux distribution that is super-stable and never make me install again, but at the same time allows me to have some newer packages with ease (xpost /r/FindMeADistro)
I currently use MX-Linux, which is a great distribution but does require me to reinstall it from time to time. It also comes with all the good/bad Debian legacy, and sometimes things can get really fucked up (okay, I admit it: MX IS NOT PERFECT. But nothing is, okay? Settle down.)
My new Linux Distribution doesn't need to have all the new bells and whistles, but it needs to be able to stay reasonably current with new packages and innovations. I don't mind some manual work, but I also don't wanna spend my days maintaining the system.
This distro is supposed to be a tool to work with, not a hobby to be pimped, riced or whatever. I will occasionally play and edit videos on it (don't worry, it's all AMD, thank you advice for the Tildes ;)
I use the i3wm window manager (not the gaps fork), so native support is a must and current versions are preferable (MX's version is from 2016. 2016!). If there's not a current version of Emacs, I'll compile my own. The same is true for Neovim, dmenu, rofi and the suckless terminal.
Configurations on text files do not scare me, but I don't wanna spend all my time scripting stuff. I don't mind compiling stuff either so Gentoo and other source-based distributions are valid options (as long as they allow me to work on stuff instead of working on the distribution...). That said, I have no preference whatsoever between binary and source-based.
Unstable distributions like Arch and even Manjaro are a no-no. I need my computer to work 99.99% of the time, like a fucking refrigerator. That said, I would like some newer packages and tools such as Gimp, Inkscape and a video editor like Kdenlive. Maybe flatpak is an option? I was never able to get it to work properly.
I'm also open to crazy things like Nix, but only if it'll make my life easier: I have no philosophies on the mater.
I wish I had more time to spend getting NixOS set up with all the stuff I need, it's such an appealing distro. I gave up trying to get PyTorch for ROCm working and just surrendered to Ubuntu, since AMD already has a repository for ROCm. Bedrock Linux caught my attention a while back, but I haven't had time to look into it at all.
This is totally awesome, but learning a programming language to use a distribution a bit much even for me.
Besides, everything I read about NixOS gives me the impression that it requires a much higher level of neckbeardness than my own.
Debian testing is pretty solid. You can easily rope in packages from unstable if you want more up-to-date stuff. I've been on the same install for 5+ years now and it's been perfectly usable as a working machine, very little dicking about needed.
I've been around plenty of times on the new and exciting distro merry-go-round over the years and I always end up coming back to Debian. It just works, and on the occasions it doesn't, enough people are using it that someone else has fixed my problem and written about it on their blog.
Mind you, I say that but I have just somehow rendered wine32 uninstallable, but I'm sure I'll sort that out eventually.
Maybe Solus? Never used it, but it seems interesting: https://en.wikipedia.org/wiki/Solus_(operating_system)
My only worries with Solus ae its young age, lack of packages and userbase. But I'll certainly take a look at it. Thanks!
Your post made me think Solus too. I now use it as my main desktop linux distro for many of the same reasons. I was getting tired of the 'release' model. Ubuntu LTS sounds like a great idea with it's long support, but by the end of it's life all of the packages and libraries are incredibly old.
Like you, Arch is just a little too bleeding edge for my liking. I do like the hands-on approach to maintaining a system [I have many FreeBSD systems all built from source], but it seems like breaking and then fixing the system is part of the charm of running Arch.
Solus I find is a good balance. It uses a 'curated' rolling release model. So everything is tested to work before it goes live. The packages are more limited, but in my experience I haven't found anything missing for my needs. It has both flatpack and snap support, if that's a factor for you as well.
If you need to check first, their system is well documented. You can search to see if what you need is already there at https://dev.getsol.us/ . The developers are also rather responsive at adding new packages when requested.
That's not to say it's perfect. It does have a few teething problems which comes with any relatively new OS. But it is maturing fast and certainly capable as a daily driver.
I have no intention to use Budgie. Does it make sense?
They release builds with both gnome and mate as well if that's enough to get you going. They have what I believe to be a recent version of i3 in the repos.
Awesome. As a MX-Linux user, Mate would be probably very similar to XFCE and ideal for me.
I mainly use Fedora but I've used Solus.
There was a whole debacle last year when the lead dev basically disappeared (later confirmed he was fine) and they lost control of the servers/git repos/patreon, and the current devs seem committed to making sure that can't happen again. In some ways the small userbase is an advantage. If you ask a question on the forum, there's a pretty good chance one of the main developers will answer you.
The devs have been pretty clear both that their repo is opinionated (they only want one good application for each purpose) and that users are welcome to suggest a package for addition to the repo. Outside of that, there's support for Flatpak and Snap packages.
Personally I'm a huge fan of Manjaro and, for the more hacky-oriented people, Arch.
Arch is definitely not what you want given your post, but maybe Manjaro could work for you. It's basically a slightly more stable and user-friendly Arch. As long as you keep packages up to date (basically run a package update command once a week), it has very little chances of breaking on you from my personal experience. And with AUR you get all the latest flashy packages if you really want to gamble on them, just like on Arch :)
I still don't understand the arch is unstable meme. Maybe I'm just lucky but it's never been "unstable" for me, on any of the computers I've installed it on.
In a system with a package manager, package breakages are system breakages. The result is the same: I have to spend time troubleshooting the issue. If I’m not interested in doing that, I’m going to choose a distro that gives me less trouble, no matter where the trouble actually is.
Any unstable distro is unstable compared to a stable distro. I run Debian Sid, and I've run into many breakages. An update to wpasupplicant meant none of my devices would connect to my home Wifi network anymore (other networks were fine, and if I downgraded it was fine). And update to gdm after they made Wayland the default meant I was one of the first to find out that they hadn't added an exception for Nvidia, where Wayland isn't supported, meaning I restarted my computer to a glitchy, looping screen as gdm repeatedly crashed itself.
Eventually, these were sorted out. I worked with the Debian maintainer and upstream wpasupplicant people through bug reports to get it fixed up, and the gdm problem had already been found and reported by others by the time I figured out what was going on. I'm okay with this, it's half the reason I'm running Sid, to squash these bugs before they make it to the Stable releases that run on my important stuff. But bugs are a fact of life, and rolling release distros will have them in the greatest amounts.
I'm still a Linux novice but found that Manjaro was very stable for my needs. More worked out of the box than with other distros, too. I'm a big fan.
Yeah, /u/mrbig, I would really like to understand what you mean with unstable with respect to Arch/Manjaro.
I kind of understand that Arch Linux is not for you since you have to install the right packages for your system and also set up a few more config files than say in Manjaro. But when you install an LTS kernel, I think Manjaro's packages are as stable and more up to date and more extensive than those of other distros.
I was never able to install Arch to the fullest because it did not recognize any of my wireless cards, in three different computers. My modem is very far from my bedroom, I don't have a long cable and yes, I'm lazy.
So I figured Majaro could give me the fresh packages I wanted without the aggravation. But every time I tried, I was met with a torrent of bugs. Some just annoying, some system-breaking. I debugged so much it's not even funny. Making audio work was a nightmare, requiring multiple restarts and consultations to the wiki. Every update brought little annoying changes that added nothing worthwhile, like changing the position of a button or the arrangement of a box. Now I'll just copy what I wrote earlier on Reddit:
Let the downvotes come.
Seriously? Why wouldn't it just automatically try to next mirror if the first was unreachable? That seems like an extra step for absolutely no reason.
Another vote for Manjaro. I like the rolling release model. I also find it to be stable enough for my needs.
Yeah, I'm not sure why Manjaro was excluded. I use it for my daily work driver, and don't have issues with it.
thanks for Regolith-Desktop recommendation, I didn't know about it, it's solving main issues with my hand-made configuration.
But it doesn't give you up to date software. Just one example: I'm on Ubuntu 19.04 and when I install digikam, I get version 5.9 while they are offering 6.3 on their website.
For up to date wine I need a custom repository and for the latest wine release I needed to install an additional binary of some obscure library that wasn't in either repository (licensing...).
Don't get me started on snap...
Stuff like this is why I hate Ubuntu, but unfortunately the current admins where I work only offer Ubuntu when you ask for Linux.
OpenSUSE is the closest I can think of, but what you're asking for is kind of a contradiction. If a distro has packages that are quite recent, then there's inevitably going to be less stability because there won't be as much vetting. I don't know the version of i3 in OpenSUSE LEAP (the stable one), but if it's too old, I know Tumbleweed carries the newest versions of everything but helps to counteract that with extensive automated simulation in virtual machines, which prevents them from pushing unstable updates. I've personally found it to be a little finnicky sometimes (though to its credit, I've never needed to reinstall), but many people swear by it, and I use it myself on my Linux machine and have for years.
You are 100% correct. Let me rephrase: what I want is a stable distro and newer packages are not a requirement. However, I wish such distro didn't make me jump through too many hoops in case I wanted a few newer packages, such as Emacs, Neovim, Kdenlive, etc.
Maybe Debian with backports? Doesn't Ubuntu follow a "stable core, up to date applications" philosophy?
How exactly backports work? Last time I read I couldn't understand shit. I enable the repo. What happens next? It'll always prefer backports? If not, can I (or should I) make it so? How do I actually download the backported version?
When you enable backports, they're given lower priority over
stable.Typically, when you want to install something from backports, you would do
apt install <package> -t buster-backports. From there, if that package is updated in backports, it'll follow that version. Rolling back is generally not generally recommended, but is possible and easy by re-installing and calling
Hm, that's a good question. I run Debian Sid myself but if I'm remembering right backports are preferred. Or you can at least make backports preferred.
It'll default to installing packages from the regular (stable channel), but if you specify
-t debian-backports(or something like that, it's been a while) it'll check that repo first instead of the older one. It also automatically looks at the backports repo if it finds a dependency not satisfied by the regular stable repo iirc. So basically, for your use case, you'd just leave it enabled and then specifically mark it for the few packages you want new.
Generally, you want to minimize your use of backports on stable where possible, you can get some spectacular dependency loops if you're not careful and mix the two extensively. It's meant for when you need just a couple of programs but still want to keep everything else stable.
There's always Flatpak - Flathub.org has many popular apps.
I run Funtoo. I think it's great. There are a few tweaks on top of Gentoo that make maintenance a little easier. It's kinda somewhere between versioned and rolling: there are big updates occasionally, but updating libraries and packages is looser. I maintain my own overlay (think apt repo) for packages a bit too outdated in the main repo.
It is a bit of work to maintain, but it grants extraordinary customizability, and a systemd free distro (this is important to me). Maintenance is mostly time rather than difficulty; the system tools (e.g. Init, ebuild) are generally excellent, as is the documentation. It's a real hackers distro.
Huh, didn't funtoo die?
Yep, it's still alive! There was even a big update a couple of weeks ago.
Fedora. It's a very up-to-date distro, they work closely with upstream and every new release you can upgrade from inside your current one with the package manager.
I recommend getting the 31 Beta already. I'm using and it's pretty stable.
Late to the party, but most of the answers don't really seem to be addressing your specific concern. If I'm understanding correctly and you want a system that is mostly stable as in frozen, but with the ability to get newer packages, Debian Stable with backports or another branch fits the bill perfectly. I myself got i3wm from Testing on a Stable system back when I used it, although I heard that mixing releases (not backports) may cause instability.
Flatpak can work for some things, but it's sandboxed, so I don't think i3wm and such will run on it. Another option is the Nix package manager; you mentioned above that you don't want to learn the Nix language for NixOS, but you don't have to learn it for this as far as I know. You can install it on a stable distribution and get up-to-date packages from it.
Another option is Bedrock Linux. It allows you to run multiple distributions at once, (nearly) seamlessly integrated, so you can use most of your tools from a stable distribution and get new packages from an unstable one.
However, note that it hasn't reached 1.0 yet, so while it's perfectly usable right now (I use it on my main system), it's possible that there will be a breaking update where you'd have to reinstall to migrate to it. But you can still use your outdated system if you don't mind missing out on the new features; I ran the previous major release for a few months before migrating, because there wasn't any update mechanism at all back then.
apt-get update && apt-get dist-upgradeon a regular basis.
MX does pull directly from Debian package repositories, but it also has its own repositories.
AFAIK it is possible to configure it to the test repository or even make it full Debian, but the last time I did that I fucked up my system real bad.
But maybe I should just to straight to Debian 10. It does require reinstalls, but it's got stable in the name!
Writing this from an OpenSuse Tumbleweed KDE laptop, which I've been running as my primary distro since January or so, with no re-install. While there's a bit more initial configuration required with OpenSuse relative to MX or Ubuntu, once I got it setup the way I like, I've encountered far fewer problems with it than most other distros, especially relative to other rolling distros.
The only significant hurtle I've really encountered is third party developers who only package debs and not rpms, especially since I prefer not to compile larger programs if I can avoid it. Another thing is that opensuse uses different naming schemes for many common packages, and since it's a smaller distro userbase it can occasionally be harder to "translate" instructions found on the web written for Ubuntu or Arch to OpenSuse's equivalents.
The other nice thing about Tumbleweed is its snapper functionality. It acts as a layer of insurance in the event an update does break your system, it's fairly easy to rollback.
I just noticed that no one mentioned the oldest of the dinosaurs: Slackware.
If you want to do some learning, definitely try Slackware. I've maybe used it for a month and could never stick with it, but it's a beautifully simple distro that'll work just as you set it up. I don't know about its upgrade path, but I believe you don't typically have to reinstall. SlackBuilds.org has build scripts for extra stuff, but you'll have to do a lot of building to get stuff not in-repo. It has some great derivatives, as well, such as Zenwalk, Salix, or Vector that have all been around for a minute.
A lot of the suggestions miss the "reinstall" aspect of your question, which seems to be a fundamental point? Fedora, Slackware, Ubuntu, all require you to regularly reinstall to get the proper benefits of the new system.
I know I've just plugged alpine linux in another thread, but I'm on edge and haven't noticed any problems (I just apk update && apk upgrade every now and then) and even with over 6 months without doing that, it still pulled down and installed everything fine. It's mostly bleeding edge, I think? Things seem to be pretty up-to-date, I think.
Debian. Hear me out:
Michael Stapelberg was, until recently a Debian dev (I think he's still in the project, but gave up his maintainer status). It should be trivial to compile i3, and while it's not my job to tell you what you need, you probably don't need to always have the latest version of i3, but I'm sure you can get help building it in Debian if you ask around (idk how their build system works). Debian will have every package you need, if a bit out of date. While I'm saying use Debian, honestly, you could just stick with MX and have the same/potentially better experience without having to hop around.
If you want to strike a balance, you could switch to the Ubuntu releases, you'll get the package depth of Debian with something resembling the up-to-dateness of Fedora, and you can get a flavor for any desktop you want, or roll your own minimal system and build from there (not to rice, but to avoid the extra bells and whistles that come with most Ubuntu variants).
I'm currently an MX-Linux (Debian Based) user and mostly satisfied. I just wanted another challenge.
Shoot, do Slackware, then. sbo will have most of what you need if compiling isn't an issue, and your system will be rock solid. You'll need to build i3 and kdenlive (or get it from AlienBob), but you'll probably get a kick out of the mission, and not have to work at all once it's done.
EDIT: Crux would be interesting, too, but I know squat about it aside from it being very UNIXy, and source-based.
I love debian stable + kde + flatpak. Flatpak gives me the few applications I want (sublime text, telegram) that aren't up to date in debian stable, and everything else is a rock. And it is themeable!
If you want super stable but also new, I can recommend to take a look at Alpine Linux. But be aware that it is definitely not a distro for the average desktop user as many things not compatible with musl libc won't work.
Otherwise you can also take a look at CentOS Streams or Ubuntu LTS, the later is somewhat more up-to-date but also fairly stable and compatible with lots of software.
Fedora Workstation; keeps packages pretty up-to-date and works.