Bug 544466

Summary: kupdateapplet don't consider locked packages and shows patches on every start
Product: [openSUSE] openSUSE 11.2 Reporter: Peter Küppers <peter-mailbox>
Component: KDE4 ApplicationsAssignee: Scott Reeves <sreeves>
Status: RESOLVED WONTFIX QA Contact: E-mail List <qa-bugs>
Severity: Normal    
Priority: P4 - Low CC: ctrippe, forgotten_vdAq_Javkn, ilfirin.ms, ma, peter-mailbox, tgoettlicher, tschmidt
Version: Final   
Target Milestone: Final   
Hardware: i686   
OS: openSUSE 11.2   
Whiteboard:
Found By: --- Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---

Description Peter Küppers 2009-10-05 20:28:38 UTC
User-Agent:       Mozilla/5.0 Gecko/2009060200 Firefox/3.0.11

I locked a package in YaST's software management ('Protected -- do not modify') to prevent an update of it (zypper shows that the package is really locked).
But kupdateapplet don't consider the lock and recommends every start to update the package with a new patch.
I also tried to lock the patch itself with YaST Online Update ('Taboo – never install'), but it also fails.
This is quite annoying, any idea?

Reproducible: Always

Steps to Reproduce:
1. YaST software management: lock package
2. YOU: lock patzch (taboo)
3. kupdateapplet search for patches
Actual Results:  
kupdateapplet don't consider the lock and recommends every start to update the package with a new patch

Expected Results:  
kupdateapplet should not show patches for locked packages
Comment 1 Thomas Göttlicher 2009-10-08 15:27:54 UTC
I think zypp should not report locked patches as needed patches.
Comment 2 Michael Andres 2009-10-09 14:07:28 UTC
Doable if the applet refers to ui::Selectable::isNeeded(). Thomas?
Comment 3 Thomas Göttlicher 2009-10-09 14:30:26 UTC
The applet doesn't directly use libzypp. As far as I know zypper reports only needed patches in its xml output. Perhaps packagekitzypp generates the list in a different way.
Comment 4 Peter Küppers 2009-10-12 18:09:19 UTC
Hello,

some more informations, maybe they are helpful:

I use KDE3, but kupdateapplet from KDE4 (since there is no version for KDE3?)
I had the following packages installed:
- kde4-kupdateapplet-0.8.34-2.1
- kde4-kupdateapplet-packagekit-0.8.34-2.1

I now installed also kde4-kupdateapplet-zypp-0.8.34-2.1 and changed the backend in the configuration of kupdateapplet to ZYpp-Modul (instead of PackageKit-Modul).
But then I have troubles when I use my regular user (message like "applet error: ...  execute as root 'zypper refresh'" appears and nothing works) and with user root it's the same problem as with PackageKit-Modul.
Comment 5 Michael Andres 2009-11-02 19:45:07 UTC
I don't now much about the kupdateapplet. Anyway, the error message tells that the repositories metadata on the server have changed. Most probably because new packages and/or patches are available. Those new metadata have to be downloaded, but this can not be done as 'ordinary' user.

@Peter: Until the applet does it automatically, you had to login as 'root' and 
call 'zypper refresh' to update the metadata. This should make the error disappear, but it does not solve the taboo-patch-problem. 

@Thomas: It looks like the applet does not invoke zypper as 'root'. This is nothing lzypper/libzypp can fix. Maybe you can help here?
Comment 6 Peter Küppers 2009-11-03 21:19:01 UTC
Hello Michael,

it makes no big difference when I use kupdateapplet as root or normal user.

When I use the PackageKit-Modul, I have to login as root or give the root password when I start to install the patches and then I have the taboo-patch-problem.

When I use the ZYpp-Modul, it's not possible to use a normal user (then I have the "applet error") and when I login as root, it's then the taboo-patch-problem.

So the result is, it's possible for me to install patches but the taboo-patch-problem still persists.
Comment 7 Jan Kupec 2009-11-04 11:02:28 UTC
Peter, this is known bug when using the zypper (ZYpp-Modul) backend (bug 420606). But from your report it seems the packagekit backend has the same problem. So this should be fixed at the zypp implementation for the packagekit.
Comment 8 Michael Andres 2009-11-04 14:51:17 UTC
@Scott: I suppose this has to be fixed in PackageKit: backend/zypp-utils.cpp:
  ...
   // check if patch is needed 
   if((*it)->candidateObj ().isRelevant() 
      && !((*it)->candidateObj ().isSatisfied())) {


1) Minor: Broken, satisfied and !relevant are mutual exclusive. And you can directly ask the Selectable (no need to pick the candidate first):

   // check if patch is needed
   if ( (*it)->isBroken() ) {


2) That's probably also the location where to exclude locked patches:

   // check if patch is needed
   if ( (*it)->isBroken() && ! (*it)->status() == zypp::ui::S_Taboo ) {
Comment 9 Peter Küppers 2009-12-23 15:57:16 UTC
Hello,

Just a short 'update'.
I upgraded now to openSUSE 11.2, but it's still the same behavior like above.
So I changed product and component of the bug (hope this isn't a bad idea...)

Cheers

Peter
Comment 10 Forgotten User vdAq_Javkn 2010-12-04 20:14:18 UTC
*** Bug 460972 has been marked as a duplicate of this bug. ***
Comment 11 Forgotten User vdAq_Javkn 2010-12-04 20:44:14 UTC
In openSUSE 11.3, the update applet still tries to update locked packages (i.
e. installed packages that are marked as protected in Yast Software Management)
but marking patches as taboo in Yast Online Update works (patches marked as
taboo are not shown in the update applet).

As I understand, this means that each time a new version appears in the update
repository, the user must decide whether to accept the update even if s/he
refused the previous version update. Maybe this is good enough because a new
update might not have a problem that was present in a previous update.

It might be a good idea to add an option to update applet GUI to let some
updates be disabled (i. e. marked as taboo), so that the user does not have to
figure out that s/he has to mark the update as taboo in Yast Online Update. (In
case of critical updates, the applet might give some warning dialog asking
whether you really want to block the update.)
Comment 12 Karl Cheng 2017-08-12 05:33:22 UTC
*** Bug 570357 has been marked as a duplicate of this bug. ***
Comment 13 Tomáš Chvátal 2017-08-12 11:59:09 UTC
Kupdateapplet was removed from current releases.