From what I’ve read, “zypper dup” should always install the newest version of a package, regardless of which repo it’s in. However, fore me, it’s not. As an example, here is the list of glib2 versions available to me.
As you can see, the newest version available is in Tumbleweed.
However, when I run “zypper dup”, it announces that libglib-2 is to be downgraded and switched to a different repo:
# zypper dup
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.
Loading repository data...
Reading installed packages...
Computing distribution upgrade...
The following packages are going to be upgraded:
<snip>
The following packages are going to be downgraded:
glib2-devel glib2-tools libbluray1 libgio-2_0-0 libglib-2_0-0 libgmodule-2_0-0 libgobject-2_0-0 libgthread-2_0-0
The following packages are going to change vendor:
<snip>
libglib-2_0-0 obs://build.opensuse.org/openSUSE:Tumbleweed -> openSUSE
<snip>
57 packages to upgrade, 8 to downgrade, 65 to change vendor.
Overall download size: 75.1 MiB. After the operation, 958.2 KiB will be freed.
I figured, okay, there must be some kind of priority issue. Let’s check the repos.
# zypper lr -d
# | Alias | Name | Enabled | Refresh | Priority | Type | URI |
--+---------------------------------+---------------------------------+---------+---------+----------+--------+--------------------------------------------------------------------------+
1 | VLC_Tumbleweed_(Manually_Added) | VLC Tumbleweed (Manually Added) | No | Yes | 99 | rpm-md | http://download.videolan.org/pub/vlc/SuSE/Tumbleweed/ |
2 | VirtualBox | VirtualBox | No | Yes | 120 | rpm-md | http://download.virtualbox.org/virtualbox/rpm/opensuse/11.4 |
3 | openSUSE:Stable_OSS | openSUSE:Stable_OSS | Yes | Yes | 99 | yast2 | http://download.opensuse.org/distribution/openSUSE-current/repo/oss/ |
4 | openSUSE:Stable_Updates | openSUSE:Stable_Updates | Yes | Yes | 99 | rpm-md | http://download.opensuse.org/update/openSUSE-current/ |
5 | openSUSE:Stable_non-OSS | openSUSE:Stable_non-OSS | Yes | Yes | 99 | yast2 | http://download.opensuse.org/distribution/openSUSE-current/repo/non-oss/ |
6 | openSUSE:Tumbleweed | openSUSE:Tumbleweed | Yes | Yes | 99 | rpm-md | http://download.opensuse.org/repositories/openSUSE:/Tumbleweed/standard/ |
Hmmm…everything is the same priority except Virtualbox, and that isn’t coming in to play. Maybe some errant configuration file in the vendors folder? But…there are no files in /etc/zypp/vendors.d. So, I’m out of ideas.
Normally I wouldn’t care what version of glib2 is used, except that the version of pango in Tumbleweed is compiled against the glib2 in Tumbleweed, so a number of programs don’t work with the glib2 from the standard repo. Why is it picking that one over the Tumbleweed one? For now (as seen in the screenshot from Yast), I’ve manually installed it so things work. But why is it picking the “wrong” one?
Thanks