Xine: deadly embrace on dependencies

I’m trying to play wmv files through Xine, under Suse 11.1

I am pointed to the Xine rpms on Packman.

An install of package libxine1-1.16.3-0.pm.3.i586.rpm fails with a dependency on libxine1-codecs-1.1.16.3

Fortunately this package is listed on Packman too.

An install of package libxine1-codecs-1.16.3-0.pm.3.i586.rpm fails with a dependency on libxine1-1.1.16.3

How can I resolve this deadly embrace?

How are you doing the install? Yast or zypper? If Yast, the failure should have given you a message and a choice of actions to resolve. What was the message? One of those resolutions should have been to install the other dependency.

Yeh its almost like the old dependency hell of Suse in the past but not anywhere as intense.

Install both at the same time. YaST or zypper would have allowed you to do this.

It’s not that bad with Yast. Some users, seeing those warning messages for the first time back off, when all they need to do to resolve it is to accept the change-of-vendor action, then the package and its dependency gets installed.

I would say the problem is he is trying to install them manually. Through plain “rpm -i/U” or double click on it.

Lets see the problem:
[ul]
[li] Someone says XEyedBear that to watch wmv he needs the xine packages “from Packman”.
[/li][li] A “packman suse” search on Google guides him to PackMan :: home
[/li][li] Depending on his language he will receive more or less information
[/li][LIST]
[li] In german he will receive the full info, saying him that he can add the repo and install from YaST. Not in the best orther, but if he reads everything all will be ok.
[/li][li] In english he will receive “Contribute” information, nothing about how to install it
[/li][li] In spanish he will see that he can install manually or add an “installation source” (repo). But no word about how to do so, not even a link to the mirrors.
[/li][li] In catalan he will receive the same info than in english: nothing.
[/li][/ul]
[li] With this situation he probably will download the RPM and try to install them with a double click from Nautilus/Dolphin.
[/li][li] The double click calls “yast2 --install”. That, indeed, is far from perfect (sw_single module also has its problems…) and he will receive an error message saying him he can’t install one without the other… without options to change vendor or anything similar, just an “I can’t install it”.
[/li][li] Now he writes a message in this forum where, as 99% of users do, he gives a far from detailed description: no copy & paste of the exact errors and no explicit description about how he tried to install the package.[/LIST]
[/li]
The imprecise explanation of the problem is an error from XEyedBear… that everybody does, you can’t blame him without blaming half the world.
Everything else is an error from openSUSE.

First, the solution to XEyedBear: add Packman as an installation source as is explained at Add Package Repositories to YaST - openSUSE using one of the mirrors from Additional YaST Package Repositories - openSUSE

For everybody else. What I would like from this is:
[ul]
[li] People writing in the Packman mailing list offering to translate the missing info to its language… specially english!!!
[/li][li] People with a Factory installation testing this and opening a bug report if the behavior from “yast2 --install” continues. Note that one can use “rpm -i A.rpm B.rpm” to solve this kind of problem, but “yast2 -i A.rpm B.rpm” just tries to install them one after the other… returning two errors instead of one.
[/li][li] People reporting to Packman that libxine1 should “recommend” libxine1-codecs instead of “requiring” it.
[/li][/ul]

Normally I would have done all this myself… but this time I will not, just to see what happens.
I don’t think this is the first time someone has the same problem than XEyedBear. It’s sad than once people gets an alternative method, that works, to do something they forget about the problem and continue happily. Guys, once you step in a problem like this you should report it in bugzilla!! Whatever you find an aternative way to do what you want or not!!!

That’s a great response to which I readily admit to being ‘guilty as charged’. I thought that the error messages I received were invariant - that is, that people more experienced than myself would know precisely what the error was, because there wasn’t any choice. I’m going to repeat the installation attempt and this time try to capture the specific wording of the error.

Firstly I must say though that Packman repository is part of my list of repositories and has been for about a year or so. Having found that Yast did not find a xine package for me when I searched, I looked at the SuSE fora to found out what others had to say about displaying wmv files (without the persistent ‘search for a codec’ error). Many forum entries on this topic pointed me to xine as being the most widely used solution and also pointed me to the Packman URl (Packman.links2linux.org).

When I visited it I found the necessary rpms for libxine1 and libxine-codecs. Double clicking on the link for an rpm immediately gave me the choice to install the package - which seemed to me to be exactly what I wanted (why wouldn’t it? There were no warnings that this might give the wrong result).

Here’s the first error message:

Package /tmp/libxine1-1.1.16.3-0.pm.3.i586.rpm could not be installed.

Details:
Subprocess failed. Error: RPM failed: warning: /tmp/libxine1-1.1.16.3-0.pm.3.i586.rpm: Header V3 DSA signature: NOKEY, key ID 9a795806
error: Failed dependencies:
libxine1-codecs = 1.1.16.3 is needed by libxine1-1.1.16.3-0.pm.3.i586
libxine1 = 1.1.15 is needed by (installed) libxine1-pulse-1.1.15-23.3.3.i586
libxine1 = 1.1.15 is needed by (installed) libxine1-gnome-vfs-1.1.15-23.3.3.i586

I have only 1 option for responding to the error messageL it’s ‘OK’.

Here’s the second error message:

Package /tmp/libxine1-codecs-1.1.16.3-0.pm.3.i586.rpm could not be installed.

Details:
Subprocess failed. Error: RPM failed: warning: /tmp/libxine1-codecs-1.1.16.3-0.pm.3.i586.rpm: Header V3 DSA signature: NOKEY, key ID 9a795806
error: Failed dependencies:
libxine1 = 1.1.16.3 is needed by libxine1-codecs-1.1.16.3-0.pm.3.i586

If I now follow the advice in the previous post and use Yast - Software Management, I find that there is no available package for libxine, only for libxine-codecs. Atempts to install this with Yast now return far more errors:

“There are some conflicts on the transaction that must be solved manually.”

Here’s the body of the error messsages (I can find no way to copy and paste this error text from Yast, so I have transcribed it by hand - which seems an utterly daft thing to have to do in year 2009!):

“libxine1-codecs-1.1.16.3-0.pm.i686 requires libxine1=1.1.16.3, but this requirement cannot be provided” (that’s kind of interesting: it shows my previous attempts were on the wrong package -I chose i586 architecture)

Further detailed error information is:

"Uninstallable providers: libxine1-1.1.16.3-0.pm.i586 (Packman Repository)
libxine1-1.1.16.3-0.pm.i686 (Packman Repository)

Following actions will be done
[first un checked bullet]
architecture change of libxine1-1.1.15-23.3.3.i586 to libxine1-1.1.16.3-0.pm.3.i686

install libxine1-1.1.16.3-0.pm.3.i686 (with vendor change) OpenSuse → PackMan :: Startseite

architecture change of libxine1-pulse1-1.1.15-23.3.3.i586 to libxine1-pulse1-1.1.16.3-0.pm.3.i686

install libxine1-pulse1-1.1.16.3-0.pm.3.i686 (with vendor change) OpenSuse → PackMan :: Startseite

{I’m sorry, I can’t do any more of this - it takes far too long and is far too error prone; but there 's a lot more stuff like this]

[second unchecked bullet]
do not install libxine1-codecs-1.1.16.3-0.pm.3.i686

[third, checked, bullet]
Ignore some dependnecies of libxine1-codecs"

[end of error messages]

I then have ‘Cancel’ and ‘Apply’ optional buttons. Pressing ‘Apply’ has no discernable effect. Pressing ‘Cancel’ does what one expects.

So, where do I go from here? [Limited receommendations only, please; I’ve been to that place already…]*

This is always the option: With Vendor Change:

install libxine1-1.1.16.3-0.pm.3.i686 (with vendor change) OpenSuse → PackMan :: Startseite

install libxine1-pulse1-1.1.16.3-0.pm.3.i686 (with vendor change) OpenSuse → PackMan :: Startseite

Make sure packman is set enable and refresh. If you have VideoLan repo, disable it.

That works as expected on my system. Thanks; nw I learned something.

What I do not understand however is that Yast is still unable to find a ‘libxine’ package - even though one is listed at the Packman web-site. And more confusing is that, even though Yast cannot find such a package, I now have a libxine package installed!

This sort of thing is terribly confusing and leads to doubt that one understands how the software installation works - resulting in a lingering sense of unease about the software configuration on the computer.

Now, all I have to do is figure out why I still get the ‘search for a suitable codec’ message when attempting to view WMV files -and that’s where I started some weeks ago!

Have you followed this guide originally
Multi-media and Restricted Format Installation Guide - openSUSE Forums

No, I was not aware of it - and following it has proved most valuable. On a quick check I am now able to look at wmv files - so many thanks for helping me with this information.

Well done friend;)
Happy to be of some help.

Or you could have just waited until the OP returned to answer the questions I asked at the beginning of the thread. :\

Please don’t hold your breath for what you would like from everybody else. If that’s your attitude, I hope you are prepared to answer all the help requests like this one in future.