A newbie from Linux Mint and the Opensuse (Tumbleweed) repos

I am now entering the Opensuse (Tumbleweed XFCE) world after some years of Debian/Ubuntu (Linux Mint) and I am trying to understand the main differences.
I hope I can explain, because my English is poor and I thank Google for the support.
One of the (many) things I can’t understand concerns repositories.
Now the question.
In addition to system repositories (OSS, NON-OSS…) you can define additional repositories. In my tests I added:
http://download.opensuse.org/repositories/X11:/xfce/openSUSE_Tumbleweed/ X11:xfce.

Every repositories have a priority, default 99. If I insert a new repository I assume I trust it, so I would like its packages (of a higher version than the ones installed) to be installed instead of the same ones on other repositories with lower priority, so I assign a higher priority (example 80) to X11:xfce. Having done this, with the sudo zypper dup command I discovered that with the even with a higher priority (lower number), the packages from X11:xfce repo are NOT offered, even if they are of a higher version, unless the “–allow-vendor-change” parameter.
Is it possible to change the default of zypper dup, choosing the packages to update ONLY based on the priority of the repository, ignoring the vendor?
I thought that by changing “solver.allowVendorChange” parameter from false to true in /etc/zypp/zypp.conf zypper would behave as I wanted, but no: updates are not offered without --allow-vendor-change.
Sorry if the post is a bit long. Thanks for understanding.

The correct parameter to set is solver.dupAllowVendorChange but keep in mind that depending on the enabled repositories setting that to “true” might have unexpected results, so keep your repos to the bare minimum you really need.

1 Like

Many thanks for such a quick response, OrsoBruno (forse italiano come me).
I tried to insert the recommended parameter into /etc/zypp/zypp.conf but unfortunately nothing has changed: without --allow-vendor-change updates from X11:xfce (priority 80) are not offered. Even after a reboot.

I don’t use xfce, but a quick look shows that the xfce repo apparently offers additional packages, not “newer” ones? Can you post an example of a package already installed in your system that has a higher version in the X11:xfce repo?

xfce4-terminal, for example

Priority is irrelevant for updates, do not confuse it with apt pinning. Each package is associated with vendor (it is not the same as “repository”) and by default zypper will not change vendor. Priorities are relevant only for the new packages (with all else being equal, zypper will take package in the repository with higher priority).

Thanks, arvidjaar. I understand. And my question is whether it is possible to change this behavior, ignoring the vendor and following only the priority.

If I insert some (few) additional repos, it means that I always want to update from those repos, considered trusted. Ultimately, I will always want to upgrade with the --allow-vendor-change parameter. It would just be more convenient to have this parameter by default, instead of writing it every time. Checks of what is updated always can still be done before the last confirmation “click”.
If not possible … no problem. I’ll use always --allow-vendor-change or I’ll create an alias.

Setting “solver.dupAllowVendorChange = true” works for me. Please show the result of:

cat /etc/zypp/zypp.conf |grep dupAllowVendorChange

You are right!!! I’m realy sorry I wasted your time!!
I had entered the dupAllowVendorChange parameter incorrectly, just like a beginner.
Understanding for novices… :roll_eyes:
Thanks everyone for the help.
I continue my exploration of Opensuse, which I’m sorry I only discovered now.
Surely sooner or later I will need your help again.
Have a good day.

OK, you may flag the thread as “solved”.
As a side note, since allowing vendor change as a default might have unexpected consequences, a better option may be to “switch” all relevant packages to the version in the xfce repo and then remain with that vendor.
You can do so in YaST Software or with:

zypper dup --from <ALIAS|#|URI> --allow-vendor-change

using the <ALIAS|#|URI> of the repo you intend too switch to.
see “man zypper” or “zypper dup --help” or ask the forums if you need help.

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.