taskbar app-updater vs running "zypper up" in root terminal

Hi all,

When ‘app-updater’ runs (upon startup & getting to the desktop) and finds updates, thus you let it update, then it says ‘all finished’ and that "your system is up-to-date". I did this, and all seemed ok.

But when I open a "root terminal’, and type ‘# zypper up’, this is what I see:

# zypper up
Loading repository data...
Reading installed packages...

The following 6 package updates will NOT be installed:
  MozillaFirefox-branding-openSUSE libfreebl3 libsoftokn3 mozilla-kde4-integration
  mozilla-nss mozilla-nss-certs

Nothing to do.

Why were/are these packages not installed when the 'app-udater’ in the taskbar ran and completed? What’s strange to me, is that I watched the ‘app-updater’, and it installed the latest version of Mozilla Firefox from OpenSUSE. Yet zypper up is saying something else. Furthermore, why were the packages libfreebl3 libsoftokn3 mozilla-kde4-integration mozilla-nss mozilla-nss-certs not installed by the ‘app-updater’??? As a best practice, should we as Tumbleweed users install whatever zypper brings back and *just ignore *whatever that app-updater ends up doing & installs??

Are they (app-updater & zypper) not both the same command and do the same things? Or is one only for applications on the system, and the other (zypper) looks at the whole system?? If there is a difference, it seems needlessly confusing (by the OpenSUSE developers) to have an ‘app-updater’ and ‘zypper’ updater doing two different things. Is this an attempt by OpenSUSE to keep away the Mr. Softie and/or Apple people(s) from ever coming/trying OpenSUSE? If so, I can see it easily working.

Thanks for any help in understanding why zypper & the app-updater see/do different things.

Hi there,

It seems this post is similar to your question: https://forums.opensuse.org/showthread.php/485377-Zypper-The-following-package-updates-will-NOT-be-installed

Hi cnzhx,

Thanks. Found this there and saved it:

What zypper is telling you is that (for each of those package) there is a version of the package in one of your repos that contains a higher version number then what you have installed, however, the repo in which it resides is either lower priority or (if it has the same priority, which usually is the case as most are usually just set the same at “99”) the repo is (for lack of a better description) not deemed set as the default repo to draw from for system packages.

To get a clearer picture of what is occurring, I suggest you open up Yast Software Manager and enter one of the package names from that list and then view the “versions” tab. It will display what is currently installed as well as what is available from each of the different repos from which that package might be drawn from. Note the different version numbers. If you really wanted to update that package, then you can do it manually this way.

*However, do note that version numbers used for the same package between different repos need not have anything to do with one another. For example, package “foobar-1.2.3-7” might be available in one of the distro repos, and a “foobar-1.2.3-789” might be available in, say, the VLC repo. zypper will interpret the VLC 789 version as a higher/newer version than what is available in the distribution repo, but this may not be the case – it (the higher number) could simple be the result of the packager’s cryptic build nomenclature or something else like a numerical representation of the date that the package was built etc etc.

*[size=1]But the above still does not make clear what "app-updater" is doing then, right? Or exactly what it is looking at versus what zypper (and YAST) can show a user. I still think this is needless headache and confusion and should be rectified by openSUSE. If the goal is to attract new users to OpenSUSE, this is not a coherent way to do so. For us openSUSE users who love complex linux things, this is fun. For every one else, it is stuff like this that is a deal killer. Even straightup crazy Gentoo and/or a plain Arch install does not confuse a user with having two updater functions showing different (and possibly incoherent) versions of just simply “updating” your system and/or applications. OpenSUSE repo consolidation/clarification needs to be addressed, imho so a user is presented with one, system-wide, coherent updating process.

Anyhow, until that day comes, coming back to what we have: since what zypper looks at is made clear in the above link-copied post, does anyone know what exactly the taskbar “updater-applet” looks at and how it handles it all?

Thanks in advance.[/size]

The updater applet is part of the KDE Plasma desktop. IIRC there have been suggestions to remove it from TW’s install patterns, but I’m not sure. The recommended way to update/upgrade TW is


sudo zypper dup --no-allow-vendor-change

, the last option telling zypper that packages should only be updated from the repo that they are currently installed from.

Hi, belham

Your comments make sense to me but I am not a developer so that cannot explain this clearly.

Base on my observation, the update applet is just an easy way to update the system without inputting root password. So it’s definitely useful to Leap users. But as Knurpht said,

TW users are supposed to use dup for updating. I think the reason is that TW almost always has fundamental updates for the system other than minor bug fixes. But sometimes an easy/simple update by zypper up could also do it well. In these cases, update applet could help to save effort.

Besides, TW user could easily disable the update applet through System Tray Settings, I think.

Yep, the updater is easily disabled. And, if no other then the TW distro repos are active, even then one should use ‘zypper dup’. This because TW is a completely different beast, which is released entirely at ( almost ) every ‘update’ ( which actually is an upgrade ).

I love it when I see things I wrote years ago and don’t even recognize lol![size=1][size=3]

But the above still does not make clear what "app-updater"[/size] is doing then, right?
[size=3][size=1]
Or exactly what it is looking at versus what zypper (and YAST) can show a user. I still think this is needless headache and confusion and should be rectified by openSUSE. If the goal is to attract new users to OpenSUSE, this is not a coherent way to do so. For us openSUSE users who love complex linux things, this is fun. For every one else, it is stuff like this that is a deal killer. Even straightup crazy Gentoo and/or a plain Arch install does not confuse a user with having two updater functions showing different (and possibly incoherent) versions of just simply “updating” your system and/or applications. OpenSUSE repo consolidation/clarification needs to be addressed, imho so a user is presented with one, system-wide, coherent updating process.

Anyhow, until that day comes, coming back to what we have: since what zypper looks at is made clear in the above link-copied post, does anyone know what exactly the taskbar “updater-applet” looks at and how it handles it all?[/size][/size]

Well, for one thing, what I wrote (almost 4 years ago now) has a specific context to it as well – its in relation to the stable openSUSE release (i.e. Leap nowadays). As has been brought to light, TW is a different context.

If I’m not mistaken, the Plasma app-updater (or whatever its called) is doing the equivalent of a “zypper up”. Doing a “zypper up” on the cli simply supplies more info (e.g. it conveys that particular packages with higher version numbers exist in some repo and that, for example, “[/size]The following 6 package updates will NOT be installed”[size=1][size=3]).

You do know about vendor stickiness don’t you? “zypper up” will respect the vendor a current package has been installed from i.e. it doesn’t allow a switch to a higher package version if one is available in another repo (i.e. vendor). That is not the case with “zypper dup”

While you can get by using a “zypper up” or using the taskbar app-updater for a little while with TW, you really shouldn’t be handling package management this way for too long. (And really, its bad practise). You should be using “zypper dup” with TW. Why? Because the former methods won’t be able to cope with all the package deletions, additions and changes, renames, etc etc. that occur as the TW distro rolls along.

Bottom line: context is key.

[/size][/size]

I turned off Software Updates in the system tray and enabled background operation with Yast > sysconfig-edit > system > cron > packagekit

erlangen:~ # grep -v '#'  /etc/sysconfig/packagekit-background
ENABLED="yes"
CHECK_ONLY="yes"
MAILTO="karl"
SYSTEM_NAME=""
SLEEP_MAX="3600"
erlangen:~ # 

Upon notification via email I run zypper dup if appropriate.