Don't want to see articles from a certain category? When logged in, go to your User Settings and adjust your feed in the Content Preferences section where you can block tags!
We do often include affiliate links to earn us some pennies. See more here.

KDE Discover gets update to prevent you breaking your Linux system

By - | Views: 59,721

I must say, I appreciate the attention to make things not only simpler but less breakable lately. First we had APT being patched to stop users removing essential packages, now the KDE Discover software manager gets a similar upgrade.

Developer Nate Graham has written up another great "This week in KDE" blog post, going over changes and improvements coming to the next release of Plasma and the various applications. One small change really caught my eye though! Discover now has a new way to ensure you keep a working system, with an updated mechanism to detect important packages getting removed and give you a friendly warning on it free of too much technical jargon.

Picture Source - Nate Graham

Graham's comment underneath "Hopefully this is Linus-Sebastian-proof", heh. I hope many more application developers are looking at the way Discover and APT are evolving to ensure things are a bit more idiot-proof.

Another change to make things look a bit friendlier in Discover is that previously, if you had issues upgrading, it would instantly shove a load of technical details in your face. To normal consumers, that's clearly not going to do much to help and could probably scare them away. Now, instead, it will provide a very clear and friendly message, with the option to get more details to report the issue.

Picture Source - Nate Graham

Plenty more upgrades to Plasma are in the works too, like the newer KWin Overview effect gaining the ability to display search results from KRunner, which brings it another step closer to the GNOME Activities Overview feature, which I did always find thoroughly useful.

There's plenty more fixes in the full post.

Article taken from GamingOnLinux.com.
Tags: KDE, Misc, Open Source
29 Likes
About the author -
author picture
I am the owner of GamingOnLinux. After discovering Linux back in the days of Mandrake in 2003, I constantly came back to check on the progress of Linux until Ubuntu appeared on the scene and it helped me to really love it. You can reach me easily by emailing GamingOnLinux directly. Find me on Mastodon.
See more from me
The comments on this article are closed.
148 comments
Page: «10/15»
  Go to:

Samsai Nov 21, 2021
Quoting: Glog78[
So in the end ... the user still needs to decide what he wants and not wants -> if a user can't decide in the first place if something is harmful how can he decide now? Will it stop him from doing harmful things ? Will it help him to understand the dependencies and why they are used ? Will it make him understand what is happen right now ? ... Most likely not and we might become a situation like under windows where user don't check anymore if they get an admin promt at all ... they just click it's fine someone on the internet told me to do so ... I would go so far that since you as someone who want to help can't be sure which packages are blocked by which frontend -> we will tell them to do on the commandline overruling the distribution protection ... Thats why i think we are on a complete stupid path currently ... we don't fix anything but we make it more overhead for people who are able to support those systems.
There is only so much you can do to prevent PEBCAK, but on this level I think we had room to push a bit further without any meaningful harm to any existing users, so I don't really understand all the push-back. None of this has ever been about preventing all wrong decisions or making the user learn things they don't want to learn. We are incapable of those things. But what we can do is deploy reasonable measures that make certain classes of stupid mistakes less likely to happen.

Also, I don't see how we are increasing the amount of overhead. The vast majority of situations where we support users don't involve removal of essential packages. In fact, regular users who just want to use their computer should be able to do so basically completely without ever worrying about a single essential package. They should only need to lift the veil if they are actually curious. If a user just wants to install Steam, that should never involve the removal of essential packages and we can make sure that doesn't happen either by deploying sanity checks that make sure those kinds of packaging mistakes don't happen or by having sanity checks performed by package managers so that they don't install faulty packages.
Glog78 Nov 21, 2021
Quoting: F.Ultra
Quoting: Purple Library Guy
Quoting: NociferBut I do have one question: what if I intentionally do want to remove a "system critical" package like Xorg or my DE - how do I do it if package managers, both GUI and CLI, prevent me from doing so?
If you intentionally want to delete something, wouldn't you normally do it by, I dunno, using a "delete something" command of some sort, not by trying to trigger the deletion by installing a package? As far as I know, nobody's done anything to the stuff you do when you're trying to delete things.

Well it would happen if you where trying to replace say xfree with xorg or pulse with pipe-wire. Then you would remove what the disto have marked as an essential package and replace it with another which is what the Steam package tried to do here, the main issue of course is that there where no i386 version of the desktop or xorg available so apt replaced it all with nothing.

And that is something that the apt (and possible also yum/dnf/pacman) devs should take a hard look on, if a package have a hard dependency that requires it to remove packages but where the actual dependency doesn't exist it should straight out refuse to perform the action regardless of any "do as I say".

i can say for pacman --> unsatisfied dependencies are nearly impossible to install ...
tuubi Nov 21, 2021
View PC info
  • Supporter
Quoting: Guest
Quoting: Samsai
Quoting: NociferWell, this change is actually all about completely preventing the package manager from uninstalling essential packages when told to do so, either explicitly or implicitly. What produced the error Linus faced was trying to install a misconfigured package combined with his/the system's failure to first update the package listings before he tried to install it; it's just that this misconfigured package ended up firing apt's "remove essential package" routine and from thereon there was nothing to prevent apt from doing exactly as ordered, beyond that one silly "fail-safe" (which shouldn't ever have been implemented in the first place).
I am aware of the scenario. Apt still retains the ability to uninstall essential packages and that counts as having the ability to explicitly order such a removal for me. The only difference is that now the fail-safe mechanism is stronger and will better dissuade users who don't actually know what they are doing.

I still disagree that the apt change was useful. The KDE Discover change, absolutely, but for apt people are still just going to follow something they found online to force modifications without fully understanding it. It's a knee-jerk reaction, and doesn't actually fix anything in my view.

So is your only argument against the tiny apt change that it happened too fast? You say it doesn't fix anything, but does it break anything either? Do you actually think the UX is worse now, instead of better?

People making a mountain out of a molehill, as is tradition.
Glog78 Nov 21, 2021
Quoting: Samsai
Quoting: Glog78[
So in the end ... the user still needs to decide what he wants and not wants -> if a user can't decide in the first place if something is harmful how can he decide now? Will it stop him from doing harmful things ? Will it help him to understand the dependencies and why they are used ? Will it make him understand what is happen right now ? ... Most likely not and we might become a situation like under windows where user don't check anymore if they get an admin promt at all ... they just click it's fine someone on the internet told me to do so ... I would go so far that since you as someone who want to help can't be sure which packages are blocked by which frontend -> we will tell them to do on the commandline overruling the distribution protection ... Thats why i think we are on a complete stupid path currently ... we don't fix anything but we make it more overhead for people who are able to support those systems.
There is only so much you can do to prevent PEBCAK, but on this level I think we had room to push a bit further without any meaningful harm to any existing users, so I don't really understand all the push-back. None of this has ever been about preventing all wrong decisions or making the user learn things they don't want to learn. We are incapable of those things. But what we can do is deploy reasonable measures that make certain classes of stupid mistakes less likely to happen.

Also, I don't see how we are increasing the amount of overhead. The vast majority of situations where we support users don't involve removal of essential packages. In fact, regular users who just want to use their computer should be able to do so basically completely without ever worrying about a single essential package. They should only need to lift the veil if they are actually curious. If a user just wants to install Steam, that should never involve the removal of essential packages and we can make sure that doesn't happen either by deploying sanity checks that make sure those kinds of packaging mistakes don't happen or by having sanity checks performed by package managers so that they don't install faulty packages.

Thats exactly why i want to know what will be "essential" in the future ? ... For a "newbie" compatible distribution i would mark all packages essential (to say it very hard). But this distribution won't be able to really let you choose anymore without being "midly" annoying with questions if you really want to do what you want to do and don't allow it on the gui but force you to override something and use the terminal. So i go back to my question above -> how do we determine what is essential and if we have determined what is essential does it really help or does it start to annoy and be contra productive. Also is it good if every package manager frontend now decides on his own what is essential ?
Glog78 Nov 21, 2021
Btw the last time someone tried to define what is an essential linux distribution was -> https://en.wikipedia.org/wiki/Linux_Standard_Base

Hmm i would guess most currently used distributions aren't per default compatible with the lsb... it also had alot of reasons why this project (from my point of view) basically died.
Anza Nov 21, 2021
Quoting: Glog78So in the end ... the user still needs to decide what he wants and not wants -> if a user can't decide in the first place if something is harmful how can he decide now? Will it stop him from doing harmful things ? Will it help him to understand the dependencies and why they are used ? Will it make him understand what is happen right now ? ... Most likely not and we might become a situation like under windows where user don't check anymore if they get an admin promt at all ... they just click it's fine someone on the internet told me to do so ... I would go so far that since you as someone who want to help can't be sure which packages are blocked by which frontend -> we will tell them to do on the commandline overruling the distribution protection ... Thats why i think we are on a complete stupid path currently ... we don't fix anything but we make it more overhead for people who are able to support those systems.

With Discover if you blindly click OK, you'll start reporting a bug. That might persuade at least few people not to google the command line alternative. After a while first hit in Google might even be that bug report. Discover doesn't tell you to google for command line alternative at all.

Discover of any GUI package manager doesn't really need to support use case of intentionally removing essential packages, result might be just black screen like what happened to Linus. Yes, APT has a roadblock which hopefully doesn't hinder normal operations as has been said already at least once. And it still has override for the cases where you actually want to break things.

Path of educating people to be more informed doesn't have to happen right away. Tinkerer distributions are also not going away. If you're curious you can still look under the hood, Linux still won't be Windows.

So in short, I would not be worried about stupid path yet.
Beamboom Nov 21, 2021
Quoting: Purple Library GuyYou led off with "I simply do not subscribe to the idea of "Linux for everyone"". Then you started talking about all the "everyone" it was not for, and I recognised myself among them.

I know I tend to paint with quite broad brushes when I express myself, so this is probably my fault. :)

But let's talk about you:
How long have you been using Linux now, and what's your opinion on the OS thus far, generally speaking? What made you install Linux the first time, how was that installation process for you, and what made you decide on distro?
Have you ever experienced anything that made your system unstable or did something you had to revert?


Last edited by Beamboom on 21 November 2021 at 1:26 pm UTC
F.Ultra Nov 21, 2021
View PC info
  • Supporter
Quoting: Glog78
Quoting: F.Ultra
Quoting: Purple Library Guy
Quoting: NociferBut I do have one question: what if I intentionally do want to remove a "system critical" package like Xorg or my DE - how do I do it if package managers, both GUI and CLI, prevent me from doing so?
If you intentionally want to delete something, wouldn't you normally do it by, I dunno, using a "delete something" command of some sort, not by trying to trigger the deletion by installing a package? As far as I know, nobody's done anything to the stuff you do when you're trying to delete things.

Well it would happen if you where trying to replace say xfree with xorg or pulse with pipe-wire. Then you would remove what the disto have marked as an essential package and replace it with another which is what the Steam package tried to do here, the main issue of course is that there where no i386 version of the desktop or xorg available so apt replaced it all with nothing.

And that is something that the apt (and possible also yum/dnf/pacman) devs should take a hard look on, if a package have a hard dependency that requires it to remove packages but where the actual dependency doesn't exist it should straight out refuse to perform the action regardless of any "do as I say".

i can say for pacman --> unsatisfied dependencies are nearly impossible to install ...

I should perhaps have worded that differently. APT will not continue with a missing dependency either, the bug that happened was a bit more complex than that. What I really meant that the package manager should detect that a dependency wants to remove essential packages without replacing those with something else.

Now this is an extreme edge case, but since edge cases do sometimes happens which LTT is evidence of, if I was an APT developer I would have gotten hold of that broken steam package to see why things went the way they did and analysed if there was a way to detect it and avoid it altogether.
Glog78 Nov 21, 2021
Quoting: Guest
Quoting: tuubi
Quoting: Guest
Quoting: Samsai
Quoting: NociferWell, this change is actually all about completely preventing the package manager from uninstalling essential packages when told to do so, either explicitly or implicitly. What produced the error Linus faced was trying to install a misconfigured package combined with his/the system's failure to first update the package listings before he tried to install it; it's just that this misconfigured package ended up firing apt's "remove essential package" routine and from thereon there was nothing to prevent apt from doing exactly as ordered, beyond that one silly "fail-safe" (which shouldn't ever have been implemented in the first place).
I am aware of the scenario. Apt still retains the ability to uninstall essential packages and that counts as having the ability to explicitly order such a removal for me. The only difference is that now the fail-safe mechanism is stronger and will better dissuade users who don't actually know what they are doing.

I still disagree that the apt change was useful. The KDE Discover change, absolutely, but for apt people are still just going to follow something they found online to force modifications without fully understanding it. It's a knee-jerk reaction, and doesn't actually fix anything in my view.

So is your only argument against the tiny apt change that it happened too fast? You say it doesn't fix anything, but does it break anything either? Do you actually think the UX is worse now, instead of better?

People making a mountain out of a molehill, as is tradition.

I think it was a change that can potentially impact everyone, made without due consideration, all because a youtuber wanted more page views. If distros are going to start doing such things then it can't be a good road to go down, no matter what change is made.

And yes, the more I think on it, the worse the change is. As I wrote - anyone forcing things through by putting in a configuration override (which is almost certainly going to start to be recommended on random internet comments) now won't be warned of potential breakage.

Note that I'm not saying nothing should have been done, I'm instead saying that (in my view) the change wasn't an improvement and doesn't fix anything.

100% agree with you mirv. In all those talks most people only see that goal that it should be "newbie" safe get more market share. I am sure i didn't change to linux because i wanted a system which does something "newbie" safe. I could have choosen such an OS with mac os or windows. There is some kind of DNA inside of linux which in my eyes prevents it from being streamlined. We call it usually freedom and are about to give up on "freedom" and easy to try for some kind of false "security" idea (imho). If i want another "streamlined" "linux" distribution -> chromeos / android are totally valid alternatives. I guess steamos will fit into the same. Maybe some other distributions will go this road. But changing upstream which have an impact on everyone ... i dunno ... Seeing kde discovery (the one desktop which always wanted to let the user do whatever the fuck they want) go for such a change makes me honestly scared.... If they would have done this change without LTT -> i can see the headline -> "kde discovery forbids user to deinstall kde" and the shitstorm which would had happend would be crazy.
F.Ultra Nov 21, 2021
View PC info
  • Supporter
Quoting: [Linuxtayshady]I don't want to dumb down Linux for less inexperienced users, but Pop OS or Ubuntu are not good distros for beginners, Linux Mint is because it's made by people who know what they're doing.

You have two companies like System 76 and Canonical behind these distros and there's still so many bugs and issues with them. I would never recommend any GNOME based distro to any beginner, what a joke. Anyone who recommends these distros to beginners has no idea what they're talking about.

Just recommend Linux Mint, that's it.

There was this dumb shift from the community that Pop OS was the new defacto beginner distro and that was a huge mistake IMO. I heard that the developers of Pop OS want to move away from GNOME about time, GNOME3 needs to just die, fork off GNOME2 like Cinnamon did or just make something else. GNOME3 is a catastrophe and needs to be abandoned, and we need new toolkits to replace GTK so we no longer rely in anyway on the abomination that is the GNOME team. They are the worst thing to have ever happened to Linux IMO.

Sorry but that is just useless distro bashing. There is nothing inherently work with either Pop!_OS, Ubuntu or Gnome that makes them unsuitable for beginners, far from it and both Pop and Ubuntu are being successfully used right now by thousands of beginners the world over.

Gnome3 was a disaster at 1.0 but have been quite usable for several years now and while perhaps not perfect, far from "a catastrophe" and doesn't need to be abandoned. Such hyperbole is just silly and does not move any discussion forward.
While you're here, please consider supporting GamingOnLinux on:

Reward Tiers: Patreon. Plain Donations: PayPal.

This ensures all of our main content remains totally free for everyone! Patreon supporters can also remove all adverts and sponsors! Supporting us helps bring good, fresh content. Without your continued support, we simply could not continue!

You can find even more ways to support us on this dedicated page any time. If you already are, thank you!
The comments on this article are closed.