zypper's confused: There's an update but there's nothing to do.

A nightly cronjob that checks for updates on a system tells me that there’s an update. When I check manually I get:

root ~ $ zypper list-updates -a
Loading repository data...
Reading installed packages...
S | Repository              | Name        | Current Version | Available Version | Arch
--+-------------------------+-------------+-----------------+-------------------+-----
v | openSUSE-Tumbleweed-Oss | libnotmuch5 | 0.29.2-1.1      | 0.29.3-1.1        | i586
root ~ $
root ~ $ zypper dup
Loading repository data...
Reading installed packages...
Warning: You are about to do a distribution upgrade with all enabled repositories. Make sure these repositories are compatible before you continue. See 'man zypper' for more information about this command.
Computing distribution upgrade...

Nothing to do.
root ~ $

So which is it? Is there an update or not? I’ll keep getting this alert about the ``libnotmuch’’ update until the cows come home (and we don’t have any cows) or I remove the crontab entry (at the bottom of my list of solutions).

BTW, while that library is installed the ``notmuch’’ application itself is not. (First I’ve heard of it, actually.) The listed repository is enabled.

I’ve looked at the zypper man page and don’t see anything obvious that seems like it’d get zypper past this quandary.

Ideas?

Is it configured to autorefresh?

zypper is lazy. It will not consider vendor change if not necessary. Try:

zypper --verbose info libnotmuch5

mrmazda… I know that user ID. :smiley:

No. I prefer to just generate the alerts so, if updates require a reboot, I can schedule the update/reboot when it doesn’t disrupt activities that access that box.

root ~ $ zypper --verbose info libnotmuch5
Verbosity: 2
Non-option program arguments: 'libnotmuch5' 
Initializing Target
Checking whether to refresh metadata for openSUSE-Tumbleweed-Non-Oss
Retrieving: repomd.xml ...................................................[done]
Retrieving: media ........................................................[done]
Checking whether to refresh metadata for openSUSE-Tumbleweed-Oss
Retrieving: repomd.xml ...................................................[done]
Retrieving: media ........................................................[done]
Checking whether to refresh metadata for openSUSE-Tumbleweed-Update
Retrieving: repomd.xml ...................................................[done]
Loading repository data...
Reading installed packages...
Force resolution: No


Information for package libnotmuch5:
------------------------------------
Repository     : openSUSE-Tumbleweed-Oss     
Name           : libnotmuch5                 
Version        : 0.29.2-1.1                  
Arch           : x86_64                      
Vendor         : openSUSE                    
Installed Size : 199.5 KiB                   
Installed      : Yes                         
Status         : up-to-date                  
Source package : notmuch-0.29.2-1.1.src      
Summary        : A shared library for notmuch
Description    :                             
    The libnotmuch3 package contains shared libraries for notmuch.

If I’m reading that output correctly, it only seems to be needed for the ``notmuch’’ application. I expect that simply removing it from the system via YaST shouldn’t cause any trouble.

A bit of a mystery how it got on the system in the first place. Probably an errant mouse click during the initial installation past Spring but I might have expect the installer to come back with something “So you want libnotmuch' and that's used by notmuch’ so we’re installing that, too”. I’m sure the dependency would have kicked in if the mouse click had hit `notmuch’ but not the library.

I’ll fire up YaST and see what happens if I try to remove it…

Ah. No gripes from YaST.

Thanks for the pointer. I’ll consider this one `solved’.

Yikes! I realized that you were not referring to something completely different. Autorefresh the repository: Yes. Autoupdate: No

I sometimes see that.

“zypper list-updates” tells you what will be updated with “zypper update”. However, “zypper dup” does something a little different. So they can occasionally disagree.

Nevertheless, I use “zypper lu” (same as “zypper list-updates”) for a quick check. For a more thorough check, I could use “zypper dup --dry-run”, but the “zypper lu” is simpler and good enough.