Some clarifications about vendors

Hello everyone, I’m a rather new openSUSE user. I’m here after about six years inside the Ubuntu world, first with their default distro, then with Kubuntu, that made me appreciate KDE, my DE of choice.

I’ve tested and played with openSUSE inside a virtual machine for some time, and it really impressed me: Yast is a superb tool, and from what I’ve read around this distro is very stable and focused on KDE, a couple of features that interest me a lot. Not that Kubuntu was bad, I’ve enjoyed it for a lot of time, but now I’m willing to explore new lands.

I need some practical advice about a new concept (at least for me: it was not present in Ubuntu distros), the repository vendors.

I’ve added a couple of extra repositories besides the standard ones, here is my configuration:

#  | Alias                     | Name                               | Enabled | Refresh
---+---------------------------+------------------------------------+---------+--------
 1 | Fonts                     | Fonts                              | Yes     | Yes    
 2 | KDE_Extra_current         | KDE Extra current                  | Yes     | Yes    
 3 | KDE_SC_current            | KDE SC current                     | Yes     | Yes    
 4 | ftp.gwdg.de-suse          | Packman Repository                 | Yes     | Yes    
 5 | opensuse-guide.org-repo   | libdvdcss repository               | Yes     | Yes    
 6 | repo-debug                | openSUSE-13.1-Debug                | No      | Yes    
 7 | repo-debug-update         | openSUSE-13.1-Update-Debug         | No      | Yes    
 8 | repo-debug-update-non-oss | openSUSE-13.1-Update-Debug-Non-Oss | No      | Yes    
 9 | repo-non-oss              | openSUSE-13.1-Non-Oss              | Yes     | Yes    
10 | repo-oss                  | openSUSE-13.1-Oss                  | Yes     | Yes    
11 | repo-source               | openSUSE-13.1-Source               | No      | Yes    
12 | repo-update               | openSUSE-13.1-Update               | Yes     | Yes    
13 | repo-update-non-oss       | openSUSE-13.1-Update-Non-Oss       | Yes     | Yes  

Considering that all of these repos are official or semi-official, I was thinking if it is safe to set their vendors as equivalent as described here, without causing too much mess in the system. I think that by doing so I should have an easier update process.
I’m not talking in a theoretical way, I’m well aware that mixing packages from different repos can ALWAYS have the potential to cause trouble; I’d like to know from users with more experience than me with openSUSE, if from a practical point of view setting these vendors as equivalent has caused them trouble or if those repositories work well together without causing too much hassle. I’m interested in particular about the official repos and the KDE ones, since they both are concerning about the system core features.

And about priority, should I leave them all with the standard 99 value or there is some better configuration?

Thank you all in advance, and of course if you think that my current configuration could be improved in any way, I’m open to any suggestion.

I don’t consider myself an expert on this. However, I think that would be a bad idea.

If you are getting “gstreamer” from packman, then it is best to get all gstreamer packages from packman, and to not mix and match.

When you look at version numbers, them minor number is often not significant. It is increased with every recompile. But, sometimes it will make a version in one repo look newer than a version in another repo, resulting in repo-switch if you make the vendors equivalent. And there’s a possibility of that introducing incompatibilities.

On 2014-08-30 17:56, sekhemty wrote:
>
> Hello everyone, I’m a rather new openSUSE user. I’m here after about six
> years inside the Ubuntu world, first with their default distro, then
> with Kubuntu, that made me appreciate KDE, my DE of choice.
>
> I’ve tested and played with openSUSE inside a virtual machine for some
> time, and it really impressed me: Yast is a superb tool, and from what
> I’ve read around this distro is very stable and focused on KDE, a couple
> of features that interest me a lot.

Not really focused on KDE. One of the strong points of openSUSE is that
it strives to support several desktops equally.

http://en.opensuse.org/openSUSE:Guiding_principles

+++···················
… choice. We accept and respect that there are different ways to work,
different preferences for applications, environments, tools or
interfaces and different goals of users and contributors. We value
diversity and pluralism as a way of addressing the needs of a broad
variety of people.
···················+±

Thus, in openSUSE you can install say, Gnome, KDE, and XFCE, from the
same installation disk, and on the same target computer and partition.
So you can use any desktop as the daily whim hits you, or each user a
different one.

> I need some practical advice about a new concept (at least for me: it
> was not present in Ubuntu distros), the repository vendors.
>
> I’ve added a couple of extra repositories besides the standard ones,
> here is my configuration:
>
> Code:
> --------------------
> # | Alias | Name | Enabled | Refresh
> —±--------------------------±-----------------------------------±--------±-------
> 1 | Fonts | Fonts | Yes | Yes
> 2 | KDE_Extra_current | KDE Extra current | Yes | Yes
> 3 | KDE_SC_current | KDE SC current | Yes | Yes
> 4 | ftp.gwdg.de-suse | Packman Repository | Yes | Yes
> 5 | opensuse-guide.org-repo | libdvdcss repository | Yes | Yes
> 6 | repo-debug | openSUSE-13.1-Debug | No | Yes
> 7 | repo-debug-update | openSUSE-13.1-Update-Debug | No | Yes
> 8 | repo-debug-update-non-oss | openSUSE-13.1-Update-Debug-Non-Oss | No | Yes
> 9 | repo-non-oss | openSUSE-13.1-Non-Oss | Yes | Yes
> 10 | repo-oss | openSUSE-13.1-Oss | Yes | Yes
> 11 | repo-source | openSUSE-13.1-Source | No | Yes
> 12 | repo-update | openSUSE-13.1-Update | Yes | Yes
> 13 | repo-update-non-oss | openSUSE-13.1-Update-Non-Oss | Yes | Yes
>
> --------------------

Ok… :slight_smile:

>
>
> Considering that all of these repos are official or semi-official,

Not packman, nor libdvdcss. They are external. They are needed, but
their legal status are different, and that is also important. openSUSE
itself can not distribute those packages… even though several people
work on both sides simultaneously (and on the same packages).

Some explanations:

http://opensuse-community.org/Restricted_formats/
http://en.opensuse.org/Restricted_formats

> I was
> thinking if it is safe to set their vendors as equivalent ‘as described
> here’ (http://tinyurl.com/2c4bppv), without causing too much mess in the
> system. I think that by doing so I should have an easier update process.
> I’m not talking in a theoretical way, I’m well aware that mixing
> packages from different repos can ALWAYS have the potential to cause
> trouble; I’d like to know from users with more experience than me with
> openSUSE, if from a practical point of view setting these vendors as
> equivalent has caused them trouble or if those repositories work well
> together without causing too much hassle. I’m interested in particular
> about the official repos and the KDE ones, since they both are
> concerning about the system core features.

I would not do it.

> And about priority, should I leave them all with the standard 99 value
> or there is some better configuration?

On normal updates, it does not matter at all. Only when you add a new
package, manually or automatically, I think it matters. It also matters
when using “zypper dup”, but you should not be using that unless on
tumbleweed or factory, or for specific things.

Then each person has different methods… For instance, some set packman
to higher priority, some to a lower. Currently I set it to “lower
number”, meaning higher priority. In the past I did the contrary.


Cheers / Saludos,

Carlos E. R.
(from 13.1 x86_64 “Bottle” at Telcontar)

On 2014-08-30 18:06, nrickert wrote:

> If you are getting “gstreamer” from packman, then it is best to get all
> gstreamer packages from packman, and to not mix and match.

It would break… you often get difficult to track multimedia problems
when you do. Something or other does not work, nobody knows why exactly
(or finding the exact reason is not that simple), till you review the
entire gstreamer and multimedia library toolchain, and go one way or the
other.


Cheers / Saludos,

Carlos E. R.
(from 13.1 x86_64 “Bottle” at Telcontar)

Thanks for the quick and detailed answers.

So now I guess that the best practice to upgrade packages from non-default repos will be to use Yast as described here, am I right?

If I want to upgrade KDE to the latest version, considering that I have enabled two repos for that, does it matters in which order I switch the system packages? I would say no, because they are part of the same project and have the same vendor, is that so?

And about Packman, what are the benefits of setting it to an higher priority? If I have understood correctly, when I perform an update this doesn’t matter because of the vendor stickiness concept, it will come in to play when I want to install a new package; having an higher priority means that the package will be installed from that repo, regardless of its version number?

And, generally, in case of a package being present in multiple repos, should I privilege the official ones or Packman? I.E. I can see that Amarok is present in the official ones, on KDE Extra and on Packman; note that I have used Amarok as an example, I’m not particularly interested in it in these circumstances.

On 2014-08-31 11:26, sekhemty wrote:
>
> Thanks for the quick and detailed answers.
>

More links:

http://en.opensuse.org/Additional_package_repositories
http://en.opensuse.org/Package_repositories
http://en.opensuse.org/KDE_repositories

> So now I guess that the best practice to upgrade packages from
> non-default repos will be to use Yast ‘as described here,’
> (http://en.opensuse.org/SDB:Vendor_change_update#Using_YaST_2) am I
> right?

I use either that method, or, on the version tab of each package I click
the version I want, one by tedious one…

But you do that only once. After that, you only need, in yast, on
repository view, to right click on the list of packages, and select
update all to newer version if available. It is a bit hidden.

Or, you can also use “zypper up” command line. The “apper” applet will
also do it automatically by default.

> If I want to upgrade KDE to the latest version, considering that I have
> enabled two repos for that, does it matters in which order I switch the
> system packages? I would say no, because they are part of the same
> project and have the same vendor, is that so?

It shouldn’t, but it may happen that as soon as you click the switch on
one repo, yast might try to solve dependencies, which it can not solve
correctly yet because the other repo is not yet switched. One trick
would be to disable automatic dependency solving temporarily, then
re-enable when both repos are switched.

> And about Packman, what are the benefits of setting it to an higher
> priority? If I have understood correctly, when I perform an update this
> doesn’t matter because of the vendor stickiness concept,

Right.

> it will come in
> to play when I want to install a new package; having an higher priority
> means that the package will be installed from that repo, regardless of
> its version number?

Probably. That’s the intention, at least. :slight_smile:

> And, generally, in case of a package being present in multiple repos,
> should I privilege the official ones or Packman? I.E. I can see that
> Amarok is present in the official ones, on KDE Extra and on Packman;
> note that I have used Amarok as an example, I’m not particularly
> interested in it in these circumstances.

Depends…

Well, you see, Amarok is one of the packages where choosing packman or
not makes a difference.

The packages distributed directly by openSUSE have to respect copyright
and patent laws of the USA. Doing that disables many multimedia features
which are available in Linux by replicating proprietary ones, reverse
engineering, etc. The trick is to get those same packages with their
full feature set from sites in different countries that don’t obey those
restrictions - packman and videolan being the main ones (better not mix
both).

Thus, yes, most people will certainly prefer the packman version anytime.

However, there are packages in packman that they simply have available,
not multimedia related, which I don’t see the reason to get from them.
For instance, Lazarus. I think it was there simply because it was not in
the OBS, but now it is.

K3b, for example, is on both sides. The only thing you obtain from the
packman version is mp3 conversion, I believe. If you are not going to
create such CDs, you do not need switching.


Cheers / Saludos,

Carlos E. R.
(from 13.1 x86_64 “Bottle” at Telcontar)

Lazarus in packman repo is horrendously outdated btw.

Thanks again, you were really helpful!

On 2014-08-31 16:56, gzenum wrote:
>
> Lazarus in packman repo is horrendously outdated btw.

Yep. But it wasn’t at some point. In fact, few years ago it was the only
repo that had Lazarus.


Cheers / Saludos,

Carlos E. R.
(from 13.1 x86_64 “Bottle” at Telcontar)

I don’t know whats the reason for not updating it, but I think it would be much better if they would just remove the package from their repo.
Because if you install it from some other source, next time you run updates its going to ask for vendor change and downgrade of the lazarus.
I mean that can be easily avoided, but I’m not sure if new user would know exactly how to overcome that.

On 2014-08-31 19:16, gzenum wrote:
>
> I don’t know whats the reason for not updating it, but I think it would
> be much better if they would just remove the package from their repo.
> Because if you install it from some other source, next time you run
> updates its going to ask for vendor change and downgrade of the lazarus.
> I mean that can be easily avoided, but I’m not sure if new user would
> know exactly how to overcome that.

Well, the trick is to first do the switch to packman, and then do the
switch to OBS devel:languages:pascal, which reverts the change to
packman for those packages :slight_smile:

But yes, it would be better they remove lazarus, if they are not going
to really maintain it. Unless they have it there because they need
lazarus to build some other package compiled with it :-?

I just emailed them about this.


Cheers / Saludos,

Carlos E. R.
(from 13.1 x86_64 “Bottle” at Telcontar)

Actually it doesn’t really make a difference in the case of Amarok. :wink:

Amarok doesn’t contain any codecs, it uses KDE’s multimedia framework (Phonon) for playing.
This in turn uses either gstreamer or vlc, it does matter where you install those from of course.

And it also makes a difference for other packages, like sox.

I do agree though that enabling vendor change (or setting those repos’ vendor as equal to openSUSE) is not a good idea.
It’s in fact that “vendor stickiness” feature that makes sure your Packman packages will not get switched to crippled versions from other repos again.

For the KDE repos it would only make it easier to get those upgraded versions installed in the first place. After you installed them, it shouldn’t make a difference.
Btw, you can specify more than one repo if you do that “full repository vendor change” update.
Hold the “Ctrl” key when you click on a repo in YaST to select it in addition to the already selected one(s), or just add more than one to zypper’s “–from” option.

On 2014-09-01 07:56, wolfi323 wrote:
>
> robin_listas;2662181 Wrote:
>> Well, you see, Amarok is one of the packages where choosing packman or
>> not makes a difference.
> Actually it doesn’t really make a difference in the case of Amarok. :wink:
>
> Amarok doesn’t contain any codecs, it uses KDE’s multimedia framework
> (Phonon) for playing.

Then it makes no sense that it exists in packman. My assumption is that
if a package exists there, it is for one of two reasons: that openSUSE
does not package it, or that the openSUSE version is /crippled/ somehow.

> Btw, you can specify more than one repo if you do that “full repository
> vendor change” update.
> Hold the “Alt” key when you click on a repo in YaST to select it in
> addition to the already selected one(s),

Ah? I have to try that one, I like it. New trick for me, thanks.


Cheers / Saludos,

Carlos E. R.
(from 13.1 x86_64 “Bottle” at Telcontar)

There are two reasons for its existance AFAIK:

  • Packman always provided an Amarok package (as Packman is the multimedia repo :wink: )
  • It is always the latest version (it’s just linked to the package from Factory, but built for the corresponding openSUSE version)

So it does make sense. People just add Packman and get the latest Amarok all the time, for the standard openSUSE release.

On 2014-09-01 03:28, Carlos E. R. wrote:
> On 2014-08-31 19:16, gzenum wrote:

> But yes, it would be better they remove lazarus, if they are not going
> to really maintain it. Unless they have it there because they need
> lazarus to build some other package compiled with it :-?
>
> I just emailed them about this.

It appears that they need Lazarus/fpc for package ‘winff’. They are
going to try get a more recent version.

Although I don’t know why they can’t simply use the version on the OBS,
but perhaps building packages requires the other package to also build
locally :-? No idea.


Cheers / Saludos,

Carlos E. R.
(from 13.1 x86_64 “Bottle” at Telcontar)