Bug 436795

Summary: YaST conflict dialog broken regarding package replacement
Product: [openSUSE] openSUSE 11.0 Reporter: Martin Schlander <martin.schlander>
Component: YaST2Assignee: E-mail List <yast2-maintainers>
Status: RESOLVED FIXED QA Contact: Jiri Srain <jsrain>
Severity: Major    
Priority: P5 - None CC: dmacvicar, elchevive68
Version: Final   
Target Milestone: ---   
Hardware: Other   
OS: Other   
Whiteboard:
Found By: --- Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---
Attachments: yast log tarball
solver test case (I think)

Description Martin Schlander 2008-10-19 21:25:25 UTC
If you try to install packages that obsoletes/replaces others, the dialog you get notifying about the conflict and asking you what to do is broken. You check the "replace package" checkbox -> try again -> but it just keeps asking the same question over and over again.

Detlef provided Pascal Bleser with this video of it:
http://linux01.gwdg.de/~pbleser/files/bugs/000000/yast.ogg

I saw it myself when trying to install libxine1 and recent mplayer packages from packman - which try to replace existing packages - you have to make changes manually to workaround the broken conflict dialog.

The problem wasn't always there in 11.0 - it seems to have appeared around the end of September, I guess there was an update around that time which caused the breakage.

This may sound like a minor inconvenience, but actually it makes multimedia 1-clicks pretty useless and makes it rather difficult for noobs to install multimedia codecs even manually - so this is a major problem.
Comment 1 Martin Schlander 2008-10-19 21:49:53 UTC
I tried to test if a 1-click which installs libxine1 would work in the commandline. (OneClickInstallCLI) 

But, no such luck, the same problem exists in ncurses mode. Checking the radio button "Replacement of xine-lib-xxxx with libxine1-xxxxx" doesn't work, when you select "Ok - try again", you're just presented with the same dialog again, again and again until you either "Cancel" or select "Don't install libxine1".

The problem is easily reproducible. Try to install lbxine1 from packman on an up-to-date openSUSE 11.0 system with xine-lib installed, and (try to) select "Replacment of xine-lib with libxine1" in the resulting dialog.
Comment 2 Michal Seben 2008-10-20 10:49:57 UTC
Please attach y2logs. If you are in doubt follow:

http://en.opensuse.org/Bugs/YaST

Thanks!
Comment 3 Martin Schlander 2008-10-20 11:16:26 UTC
Created attachment 246511 [details]
yast log tarball

Attached the logs.

Not sure how useful they'll be. I spent some time last night experimenting with different things - and besides I saw and heard about the phenenom on different machines several times through the course of the last weeks.

Btw., I guess I should've mentioned I use the Qt-version of yast.

Another piece of information that may be of interest is that there's no problem with replacing xine-lib with libxine1 when using zypper - so I'm pretty sure the bug is in the yast (qt and ncurses) ui, and not in zypp.
Comment 4 Duncan Mac-Vicar 2008-10-22 11:39:10 UTC
Please attach a solver testcase.
Comment 5 Martin Schlander 2008-10-22 12:07:08 UTC
Created attachment 247129 [details]
solver test case (I think)

Are you saying you can't reproduce the problem that I have described, and even linked to a video of, by simply trying to install libxine1 on an 11.0 system with xine-lib installed, using yast qt or ncurses yourself?

Well...

I think I attached a relevant solver test case. 

I removed libxine1, installed xine-lib, then checked libxine1 for installation again, then went to Extra -> Generate solver test case.

But...

Like I said before, I doubt it's a solver issue, since there's no problem when performing the operation with zypper. To me it seems it's a matter of the damn radio button in yast-sw_single qt/ncurses obsoletes-dialog for replacing things, that simply doesn't work.
Comment 6 Martin Schlander 2008-10-22 12:38:50 UTC
Forgot to change the needinfo status.. as usual :-/
Comment 7 Duncan Mac-Vicar 2008-10-22 14:14:33 UTC
I did try to install it, and it got replaced without questions asked, which is obvous because it is a explicit action.

I could only get a conflict by changing to the packman amarok while having the xine-lib installed which is expected because libxine1 can be switched vendor only if the user says so.

Can you try to reproduce in factory? I am using latest svn, so it may be very 11.0 specific.

Comment 8 Duncan Mac-Vicar 2008-10-22 14:15:23 UTC
Well, there is no packman for 11.0 but 
11.0 plus zypp:svn and YaST:SVN is the same combination ;-)
Comment 9 Martin Schlander 2008-10-23 07:25:53 UTC
Actually there is already Packman for 11.1 :-)

I tried installing packman libxine1 on my 11.1b2 using yast qt sw_single - and this works out nicely. 

But it's a quite different scenario - because on 11.1 there's no xine-lib, the official crippled openSUSE xine package is called 'libxine1' on 11.1 - so on 11.1 there's no obsoleting of xine-lib - just an upgrade of opensuse libxine1 to xine-lib.

... And I'm not going to install svn zypp and yast on my 11.0 systems, that's where I draw the line :-)

But let me again stress the magnitude of this problem - just about every single user installing openSUSE 11.0 is having serious problems installing video/audio codecs whether using sw_single or 1-click-install.  ... And installing multimedia codecs is one of the first things most people try to do.
Comment 10 Martin Schlander 2008-10-23 07:35:44 UTC
s/to xine-lib/to packman libxine1/
Comment 11 Martin Schlander 2008-10-23 12:08:38 UTC
opensuseupdater just went red with libzypp/satsolver updates, naturally I hurried to install them and test this issue.

And I'm very happy to say that I can't reproduce this problem anymore.

Not sure if the fix is "coincidental" or intended, but I simply can't get libxine1 installation to not work anymore :-)

Closing as fixed. Will of course reopen if the problem "reappears".