this post was submitted on 01 Aug 2023
162 points (95.0% liked)

Linux

47356 readers
1559 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

The majority of Linux distributions out there seem to be over-engineering their method of distribution. They are not giving us a new distribution of Linux. They are giving us an existing distribution of Linux, but with a different distribution of non-system software (like a different desktop environment or configuration of it)

In many cases, turning an installation of the base distribution used to the one they're shipping is a matter of installing certain packages and setting some configurations. Why should the user be required to reinstall their whole OS for this?

It would be way more practical if those distributions are available as packages, preferably managed by the package manager itself. This is much easier for both the user and the developer.

Some developers may find it less satisfying to do this, and I don't mean to force my opinion on anyone, but only suggesting that there's an easier way to do this. Distributions should be changing things that aren't easily doable without a system reinstall.

top 50 comments
sorted by: hot top controversial new old
[–] haroldstork@lemm.ee 37 points 1 year ago (1 children)

Spoken like a true Arch Linux user

[–] cyclohexane@lemmy.ml 20 points 1 year ago* (last edited 1 year ago) (2 children)
[–] falsem@kbin.social 27 points 1 year ago

I also assumed you were a fellow Arch user.

I use Arch btw.

[–] haroldstork@lemm.ee 2 points 1 year ago (3 children)

I say that very tongue-in-cheek, but it definitely gave a vibe haha

load more comments (3 replies)
[–] jsveiga@sh.itjust.works 22 points 1 year ago (4 children)

Suppose kubuntu, ubuntu, lubuntu, xubuntu were packages to be installed on top of debian.

How would you do that? Debian would not create and maintain a "core debian" variant just to be installed then receive the extra packages. Would the *ubuntu packages replace, instead of add on top of default debian packages?

Then where would the updates come from? Both debian and *ubuntu repositories?

What about dependencies? Would debian have to coordinate with all *ubuntu maintainers (and they too, between them) for compatibility tests every time debian needed to update one of its packages? Or they'd just update and *ubuntu would have to scramble to release fixes for what had been broken?

Not to mention convenience; would you have to download debian, download *ubuntu, install debian, then your *ubuntu?

Why not then package the "core debian", with the tested component versions that work with the *ubuntu packages you're downloading? Hey, and what about script the installation to install both "core debian" parts and then *ubuntu automatically? That's an innovative idea indeed. No, wait, isn't it sort of what they already do today?

It's not like there's a Linux headquarters with a centralized organization that releases all multiple distros just to feed the hobby of distro hoppers. Distros are maintained and packaged by different people, and it's already a lot of trouble to keep each part in sync.

[–] jarfil@lemmy.ml 6 points 1 year ago* (last edited 1 year ago) (6 children)

Debian would not create and maintain a "core debian" variant just to be installed then receive the extra packages

Debian server minimal, is kind of a "core Debian". There are netinst versions that can be even smaller. The Debian base image for Docker is even smaller than all that.

There is also an Ubuntu minimal install that you could call "core Ubuntu".

But more importantly, and I can't stress this enough: YOU CAN SWITCH DISTROS WITHOUT REINSTALLING. Might need to do some cleanup afterwards, but it's perfectly doable, more so between Debian based ones.

[–] 4am@lemmy.world 2 points 1 year ago (1 children)

Uninstalling the entire kubuntu package, while reverting to “core Debian” and then installing the Ubuntu package would be more complicated and time-consuming than installing a new OS.

Just partition off your /home and a reinstall won’t be that big a deal.

[–] cyclohexane@lemmy.ml 1 points 1 year ago

I want kubuntu?

Step 1: install Ubuntu (the farthest ancestor of kubuntu that does more than change non system packages) Step 2: install kubuntu package: sudo apt install kubuntu

Oh well, I decided I want lubuntu instead

Step 1: uninstall kubuntu: sudo apt remove kubuntu Step 2: install lububtu: sudo apt install lubuntu

That is my proposal. It is WAY simpler than reinstalling.

[–] kedarkhand@lemmy.fmhy.net 2 points 1 year ago* (last edited 1 year ago) (2 children)

YOU CAN SWITCH DISTROS WITHOUT REINSTALLING. Might need to do some cleanup afterwards, but it’s perfectly doable, more so between Debian based ones.

How do you do that? First time hearing this

[–] exi@feddit.de 4 points 1 year ago

Replace Debian apt sources with Ubuntu ones, do system upgrade and install the Ubuntu-Desktop package, now you have Ubuntu.

It's been a while since I have done this, but it's totally possible.

We did this transition from Ubuntu to Debian at Work with thousands of workstations.

It requires a bit of time and testing but it's possible.

load more comments (1 replies)
load more comments (4 replies)
[–] cyclohexane@lemmy.ml 3 points 1 year ago (10 children)

How would you do that? Debian would not create and maintain a “core debian” variant just to be installed then receive the extra packages.

To be honest, I do not fully understand your question here. Could you rephrase?

Would the *ubuntu packages replace, instead of add on top of default debian packages?

They must not replace. If they are merely installing KDE on top of Ubuntu, then theres nothing to do here. The work is already done for us. But if it is doing more than taht, then they should be different packages building on top of the default debian packages for KDE et al.

Sort of like how LunarVim is a distribution of NeoVim. It is the same NeoVim, but with pre-configurations and plugins shipped OOTB, and it can be packaged separately.

What about dependencies?

Thats the beauty of this. Package managers are already equipped with dependency management. It is far easier to manage dependencies with a package rather than rolling out your own distribution. It is literally one of the biggest reasons why we use package managers to begin with. We dont want dependency hell!

Would debian have to coordinate with all *ubuntu maintainers (and they too, between them) for compatibility tests every time debian needed to update one of its packages? Or they’d just update and *ubuntu would have to scramble to release fixes for what had been broken?

This is a debian specific question, so I will try to answer more generally. It would just have to be done in the same way any package is maintained on that distribution. And this varies by distro; some distributions have different workflows for their package maintenance. The point is that we make use of these already defined workflows that have worked for decades and been iterated on. It is much easier to package than to create a new distribution.

Not to mention convenience; would you have to download debian, download *ubuntu, install debian, then your *ubuntu?

Instead of installing *ubuntu, you install Debian, then run one command: sudo apt install *ubuntu. I see these as nearly equivalent. Moreover, it could be made to be an option in the distribution's installer, sort of like EndeavourOS and Fedora do it.

Why not then package the “core debian”, with the tested component versions that work with the *ubuntu packages you’re downloading?

That can be what I mean with it being an option in the installer. But if you mean maintaining a whole separate distribution just for this, well ... you are maintaining an entirel separate distribution just for this ... instead of just maintaining a package.

load more comments (10 replies)
load more comments (2 replies)
[–] demesisx@infosec.pub 18 points 1 year ago (5 children)

Some distros build their entire system as modules declaratively. NixOS and GUIX.

load more comments (5 replies)
[–] CrypticCoffee@lemmy.ml 15 points 1 year ago (2 children)

I think your focus is on ease for distributors rather than ease for users. Unless they had a series of checkboxes to choose your flavour, most won't like it and it won't gain traction.

It's a bit like "why cannot people cook food in a restaurant to their liking rather than a chef doing all these meals and variations?". People just wanna eat.

[–] cyclohexane@lemmy.ml 3 points 1 year ago (3 children)

I don't see how this is more difficult on the user. It is running a simple command, and for a GUI package manager it would be a single button click, just like you'd do it in a graphical installer. It would indeed be almost like a series of check boxes.

As a user, it is much easier to check a box than reinstall my entire OS

[–] jsveiga@sh.itjust.works 1 points 1 year ago (1 children)

I realize now that you think the only difference between distros is the GUI. Some may be simply that, or close to that (kubuntu x ubuntu for example), but it's not always the case.

So your original post shouldn't be about "distros" but GUI options. Some distros indeed let you choose from different WM, but as I've been repeating, in this case they're packaged and tested by the maintainers of THE SAME DISTRO.

[–] cyclohexane@lemmy.ml 1 points 1 year ago (1 children)

You're making a lot of assumptions about me that could be easily answered if you read my original post. No I do not think that that's the only difference between any two distros. My post is specifically talking about distros that only change non-system software (and most of them only change GUI).

[–] jsveiga@sh.itjust.works 1 points 1 year ago (1 children)

And could you identify (and get all such distros and their "core distro" source to agree on) what exactly are the "system software", which the "customizers" must never ever need to change, and that the "core distro" will forever have to coordinate with their "partners" before any new release or update?

Can't you see it would be a lot of extra work and risk for maintainers, just to make your distro hopping (maybe) quicker?

[–] cyclohexane@lemmy.ml 1 points 1 year ago (2 children)

what exactly are the "system software", which the "customizers" must never ever need to change,

To clarify, I am not saying that maintainers should not modify software. I am saying that if they don't, that making a whole different distribution is overkill and over complicated, and it is much easier for both them and the user to have it as a package instead.

For releases, it would be simply done just like any other package. There's a vast number of packages that already do everything you can imagine, and they have none of the show stopping troubles you speak of.

load more comments (2 replies)
load more comments (2 replies)
[–] JuxtaposedJaguar@lemmy.ml 3 points 1 year ago

If you're basing your distro on another distro, you'll need to modify your dependencies to fit the existing packages anyway. It seems like the only difference is which repo the additional packages are being fetched from.

[–] mojo@lemm.ee 10 points 1 year ago (1 children)

I just call them "flavours" or theme distros

[–] JuxtaposedJaguar@lemmy.ml 5 points 1 year ago

A "theme" with the ability to replace key packages with compromised versions!

[–] cogitoprinciple@lemmy.world 9 points 1 year ago (1 children)

If what you proposed was put into practice, we wouldn't have hundreds of distributions. I think the amount of distributions that exist may actually be overwhelming to a new user. If there were only a few distributions to choose from, you wouldn't have so many people distro hopping, which is a waste of time (in most cases). You don't like the desktop environment? Install something else. You don't like floating windows? Use a tiling window manager.

[–] jsveiga@sh.itjust.works 3 points 1 year ago (1 children)

You and OP probably are confusing "distribution" with "UI customization". Granted, lazy distros may by simply that, but not all of them.

[–] cyclohexane@lemmy.ml 1 points 1 year ago (1 children)

Why do you think I am talking about all distributions? Even the title of the post alone makes it clear I am not.

[–] jsveiga@sh.itjust.works 2 points 1 year ago (1 children)

I don't know any distro that only changes non-system software and UI customizations. They all package all their components and include the packages in their repo.

Again (and again and again), this gives them control over dependencies and compatibility tests.

Even if they just recompile & package the components with no modifications from the upstream sources, they are the ones who test their whole set of packages.

[–] cyclohexane@lemmy.ml 2 points 1 year ago (4 children)

What system software from Ubuntu does Kubuntu change?

What system software from Arch Linux does Garuda change?

If you go on distro watch, you'll find that most distros only change non system software, compared to the base they started with.

load more comments (4 replies)
[–] JuxtaposedJaguar@lemmy.ml 6 points 1 year ago

I think it's about controlling others. Not in an evil or conniving way, but rather that a lot of devs "don't want other people forcing design decisions on them" when in reality they're just replacing one set of design decisions with another.

[–] JubilantJaguar@lemmy.world 4 points 1 year ago

Excellent argument. I'm on board.

[–] zagaberoo@beehaw.org 4 points 1 year ago (2 children)

I don't think they'd be so popular if they weren't useful.

Why should the user be required to reinstall their whole OS? I don't think they are: it seems relatively straightforward to change DEs on Ubuntu at least.

On the other hand, if someone knows they want Ubuntu with KDE, why should they have to go through a regular Ubuntu install just to do the post configuration themselves? Plus, maintainers of these offshoot distros can potentially more deeply remove dependency on the default DE.

I think focusing on differences in system software is less illustrative than looking at the out-of-the-box user experience and capabilities. A changed DE is a pretty huge practical difference.

This line of thought does really underscore how nebulous the definition of an operating system really is. Pour one out for GNU being totally subsumed culturally by a Kernel that everyone sees as an OS.

[–] cyclohexane@lemmy.ml 9 points 1 year ago (2 children)

They are of course very useful, please do not misunderstand my post. None of what I said downplays the usefulness of these efforts. I am merely suggesting that the method in which they distribute them is not efficient. Maintaining a whole different Linux distribution just to distribute a different DE configuration is overkill. It is much easier to maintain a package instead.

From the user's perspective, installing Ubuntu and doing "sudo apt install [pre-configured KDE package to your liking]" is effortless and virtually indistinguishable from just installign Kubuntu. You get the full support from Ubuntu, whereas a different distribution may not. You are not needlessly breaking away from Ubuntu.

Honestly, it could even be an install option, like Fedora and EndeavourOS do. Do you miss out on anything doing this vs an entire different distro? I dont think so.

Again, a changed DE is pretty drastic, but it does not warrant a different installation process of the whole OS or system. You should only need to take out the parts you need to, and from a user's perspective, it should be possible to make it as simple as running a command or making a choice.

[–] theshatterstone54@feddit.uk 5 points 1 year ago

Now that you mention Fedora, the Fedora Server ISO does this incredibly well. You pick your spin, (Workstation, Server, KDE, Sway, etc.) and You pick an extra set of packages if you want. It's the same installer as the desktop (the Anaconda installer), and it works great.

[–] zagaberoo@beehaw.org 4 points 1 year ago (1 children)

It doesn't warrant it to your taste, but people like it. I don't get your point beyond saying that people shouldn't prefer it because you don't.

So they're "very useful", but shouldn't exist?

[–] cyclohexane@lemmy.ml 2 points 1 year ago (1 children)

Never said that they shouldn't exist. I only said that they must be distributed as packages instead.

load more comments (1 replies)
[–] tsz@reddthat.com 3 points 1 year ago (1 children)

Name a single popular distro that follows op's description that isn't a novelty/fad.

[–] zagaberoo@beehaw.org 2 points 1 year ago (2 children)
[–] pglpm@lemmy.sdf.org 2 points 1 year ago* (last edited 1 year ago)

I disagree. On one laptop I had Ubuntu, and then installed kubuntu-desktop. It became a bit of a mess with the login screen, and it isn't that easy to uninstall the previous Gnome stuff – had to leave it there. On another laptop I installed Kubuntu directly, and the problems above don't appear.

[–] phoenix591@lemmy.phoenix591.com 2 points 1 year ago (1 children)

kubuntu is already literally just a package.

if you just install kubuntu-desktop (or something similar) from any buntu flavor you get it.

[–] cyclohexane@lemmy.ml 9 points 1 year ago (2 children)

And that's exactly my point. You get the same experience by just installing a package rather than having to "distro-hop"

[–] skullgiver@popplesburger.hilciferous.nl 3 points 1 year ago* (last edited 9 months ago)

[This comment has been deleted by an automated system]

[–] zagaberoo@beehaw.org 2 points 1 year ago (2 children)

But if you start with Kubuntu then it's not exactly hopping, it's just more convenient.

If people wanted to do it by package installation, they would!

In the end it's just more user choice, which is good.

load more comments (2 replies)

There used to be a distribution called Symphony OS. It was a unique desktop paradigm (not my favorite mid '90s buzzword, but I think it fits) that I was interested in trying out. It's long gone by this point, but it would have been nice to be able to just install the DM like Gnome, KDE, or whatever without having to do a full install.

load more comments
view more: next ›