this post was submitted on 01 Aug 2023
170 points (99.4% liked)
Linux
48153 readers
793 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
- Posts must be relevant to operating systems running the Linux kernel. GNU/Linux or otherwise.
- No misinformation
- No NSFW content
- No hate speech, bigotry, etc
Related Communities
Community icon by Alpár-Etele Méder, licensed under CC BY 3.0
founded 5 years ago
MODERATORS
you are viewing a single comment's thread
view the rest of the comments
view the rest of the comments
To be honest, I do not fully understand your question here. Could you rephrase?
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.
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!
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.
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.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.
You fail to realize that each distro is maintained by different people. Your reasoning would make sense if the "core debian" was maintained and packaged by the same people who maintained and packaged *ubuntu.
The end user would download "core debian" from debian, and the *ubuntu "flavor" from *ubuntu. Installing debian then going "apt install kubuntu" wouldn't work because kubuntu is not in the debian repository.
If debian changed their downloadable "core debian", it could make it incompatible with what's in the kubuntu repository. They are not maintained by the same employees of "Linux inc."
I very well realize this. Packages are maintained by different people too!
The idea is that installing a *ubuntu would literally be the same as installing one of the many packages already available. It works for all those packages, so why wouldn't it work here?
Yes, that is correct. I apologize if you misunderstood what I said. I did not mean to say that this is the current state. This is what I think how things should be.
Though for the case of kubuntu, it apparently is pretty close. You can in fact already do "apt install kubuntu-desktop", but you have to be on regular Ubuntu instead of debian. Which is fine, since Ubuntu changes a lot more about debian than just pre installed packages, so it works out for my example.
I do not suggest they should!
When debian maintainers need to release an update of a debian package, they need to make sure it doesn't break compatibility with ... other debian packages - yes maintained by other people. They don't need to test it with a dozen *ubuntu and other .deb variants, nor coordinate with those other maintainers and wait for them to release their new, compatible versions.
It's already hard to do that within the same distro.
I am not sure if you are onto something or you don't understand the proposition. e.g. how does KDE or any other DE developer maintain their packages on debian? Do they not? And its up to debian developers to decide what version of KDE they use? If thats the case then I see your point, which would make it very hard for the so-called "kubuntu" package maintainer, because they have to rely on what debian maintainers do.
Yes, that's what I mean. For example suppose you had this mixed solution (core comes from debian repository, "kubuntu personality" from kubuntu repository).
Then debian maintainers release updates for their packages - which they tested and validated in systems that use only other debian packages.
Next time you update your system, it may happen that the new version of debian components are no longer compatible with the kubuntu components.
Debian won't wait for or check if every distro who uses their "core" has tested debian changes and released compatible new packages of their own.
Probably most debian based distros simply repackage many base debian components with minimum or no changes, but they know those releases are compatible with their own "customized" packages, and can have control of their dependencies.
Edit: I didn't address one of your questions directly: No, developers and maintainers of a linux system component (as kde, and even the kernel) not necessarily are the maintainers of a specific distro packages.
For example, kernel decelopers and maintainers release a new kernel release independent of any distro. It's up to the distro maintainers to test and package this, then make it available in their repo.
No? do suggest debian kept their install package frozen forever just to make this proposition viable?
Would would they do that? You act as if debian doesn't already package a massive amount of software, and has no issue adding on to the list.
They test that massive amount of packages to make sure the dependecies and compatibility are kept. They do that between DEBIAN packages. The maintainers of the bash debian package can't just shove a new release in the repository. It's tested in DEBIAN systems first.
Who would test this new bash package in every fskcing "addon distro" that installs on top of "core debian" before releasing it to the debian repository? Or would the maintainers of every fscking distro have to scramble to update their packages after debian released this, and users have updated, breaking compatibility with the "addon" packages?
Or the opposite, the "addon" distro package developers want to use a new feature from a library, but can't, because debian hasn't updated their packaged version yet.
youre over complicating it. Debian adds new packages to its repository all the time, and this would be just one more package they add. Simple as that.
ha, so you don't mean having multiple distros dropping their "base systems" and only providing the "addon" part in their repos, but actually having the "core" distro include all the "addon" flavors into their repo. haha really, really "simple".
"Hey debian, I'm a one man operation out from North Korea, and I made this customization package. I swear it complies with every privacy and security policies, and that it is compatible with your core system. No it won't break anything. Can you please include it in your repo?"