|
Bugzilla – Full Text Bug Listing |
| Summary: | libjpeg-turbo does no longer provide libjpeg.so.62 which is required by the LSB Desktop specification | ||
|---|---|---|---|
| Product: | [openSUSE] openSUSE 12.3 | Reporter: | Juergen Weigert <jw> |
| Component: | Basesystem | Assignee: | Petr Gajdos <pgajdos> |
| Status: | RESOLVED FIXED | QA Contact: | E-mail List <qa-bugs> |
| Severity: | Normal | ||
| Priority: | P3 - Medium | CC: | bbrunner, damianatorrpm, ismail, jsmeix, meissner, pgajdos, vetter |
| Version: | RC 1 | ||
| Target Milestone: | --- | ||
| Hardware: | All | ||
| OS: | SUSE Other | ||
| Whiteboard: | |||
| Found By: | Development | Services Priority: | |
| Business Priority: | Blocker: | --- | |
| Marketing QA Status: | --- | IT Deployment: | --- |
| Bug Depends on: | |||
| Bug Blocks: | 357354 | ||
|
Description
Juergen Weigert
2013-03-03 10:57:44 UTC
As far as I understand comment#0, it seems your epson-inkjet-printer-201101w-1.0.0-1lsb3.2.i486.rpm is not from openSUSE but downloaded from avasys.jp/eng ? I cannot fix non-openSUSE RPMs so that the issue is invalid for us. I wonder how you got this third-party RPM installed without an error because of unresolved dependencies? Out of curiosity: What does # rpm -q --requires -p epson-inkjet-printer-201101w-1.0.0-1lsb3.2.i486.rpm show? yast2-printer is not meant as a diagnostics tool but it shows at least basic CUPS log messages: When you click "Testpage printing failed" it shows a "CUPS log information while processing the testpage..." popup which shows an excerpt from /var/log/cups/error_log so that you get at least the E [03/Mar/2013:11:25:54 +0100] [Job 3] Job stopped due to filter errors; please consult the error_log file for details. message and the bottom line of those popup reads: "For the full log, see the /var/log/cups/error_log file." I downloaded a epson-inkjet-printer-201101w-1.0.0-1lsb3.2.i486.rpm (1507339 bytes) as described in comment#0 and got: $ rpm -q --requires -p epson-inkjet-printer-201101w-1.0.0-1lsb3.2.i486.rpm /bin/sh /bin/sh /bin/sh lsb >= 3.2 rpmlib(CompressedFileNames) <= 3.0.4-1 rpmlib(PayloadFilesHavePrefix) <= 4.0-1 There is no explicit RPM requirement for something like libjpeg.so.62 I don't know if "lsb >= 3.2" implies a requirement for it butv I guess LSB does not include a requirement for any libjpeg. On a openSUSE 12.2 system there is # rpm -qf /usr/lib/libjpeg.so.62 libjpeg62-62.0.0-15.5.1.i586 Let's see what there is different for openSUSE 12.3: $ osc cat openSUSE:12.2 libjpeg-turbo libjpeg-turbo.spec ... %define major 62 ... %package -n libjpeg%{major} ... $ osc cat openSUSE:12.3 libjpeg-turbo libjpeg-turbo.spec ... %define major 8 ... %package -n libjpeg%{major} ... I don't know any details about libjpeg so that I cannot further help here so that I ask the libjpeg-turbo maintainer for more information: Petr Gajdos, since openSUSE 12.3 libjpeg-turbo does no longer provide libjpeg.so.62 but this is needed e.g. by the third-party epson-inkjet-printer-201101w-1.0.0-1lsb3.2.i486.rpm from avasys.jp/eng for some printers. At least for Juergen Weigert's Epson Stylus sx130 there is this workaround: # ln -s /usr/lib/libjpeg.so.8.0.2 /usr/lib/libjpeg.so.62 (see his initial bug description). I wonder to what extent libjpeg.so.8.0.2 is backward compatible with libjpeg.so.62 and what could be done for third-party software that needs libjpeg.so.62 CCing Ismail, as he seem to had used --with-jpeg8 during update to 1.2.0. According to 'libjpeg v7 and v8 API/ABI support' section in README-turbo.txt, v8 and v6b are not compatible. . Maybe we could provide libjpeg62-turbo package which would provide only libjpeg62? (In reply to comment #5) > libjpeg62? libjpeg62 subpackage We can provide a libjpeg62 package. We didn't since we weren't sure if it would be useful. coolo? Juergen Weigert, according to comment#3 libjpeg.so.8.0.2 is not backward compatible with libjpeg.so.62 so that your workaround via # ln -s /usr/lib/libjpeg.so.8.0.2 /usr/lib/libjpeg.so.62 is bad. A better workaround seems to install the libjpeg62 package from openSUSE 12.2 on your openSUSE 12.3 system. On my openSUSE 12.2 system I have installed both libjpeg8 and libjpeg62 without a conflict ("zypper verify -D" reports "Dependencies of all installed packages are satisfied.") --------------------------------------------------------------------- # rpm -ql libjpeg8 /usr/lib/libjpeg.so.8 /usr/lib/libjpeg.so.8.3.0 # rpm -ql libjpeg62 /usr/lib/libjpeg.so.62 /usr/lib/libjpeg.so.62.0.0 --------------------------------------------------------------------- Another package of mine: home:jnweiger bitscope-dso It uses an outdated (binary-only) libborqt-6.9.0-qt2.3.so, which also requires libjpeg.so.62, sigh. http://refspecs.linuxfoundation.org/LSB_4.1.0/LSB-Desktop-generic/LSB-Desktop-generic/libjpeg62.html#LIBJPEG libjpeg.so.62 is required by lsb.So 'lsb >= 3.2' really implies requirement to libjpeg.so.62. See home:pgajdos, there are libjpeg-turbo and libjpeg6-turbo. It is actually one package with two spec files. (In reply to comment #7) > We can provide a libjpeg62 package. We didn't since we weren't sure if it would I was not sure too :-(. (In reply to comment #12) > See home:pgajdos, there are libjpeg-turbo and libjpeg6-turbo. > > It is actually one package with two spec files. We should remove %{_bindir}/* %doc %{_mandir}/man1/* from the libjpeg6-turbo package so it doesn't conflict with libjpeg8-turbo one. Regarding comment#1 "libjpeg.so.62 is required by lsb": Yes and no, see bnc#807747 libjpeg.so.62 is required by the "Linux Standard Base Desktop Specification" but it is not required by the "Linux Standard Base Core Specification" Our lsb RPM provides only "Necessary files and dependencies for the Linux Standard Base (LSB) Core" see "rpm -qi lsb". The question is what a RPM requirement for "lsb >= 3.2" means: Is it a requirement for "all LSB functional areas" or only a requirement for "LSB core"? Adapted the bug's subject to show the actual requirement and changed the bug's component to "Basesystem" because LSB related issues seem to belong there (Base:System is develproject for openSUSE:Factory/lsb). (In reply to comment #14) > (In reply to comment #12) > > See home:pgajdos, there are libjpeg-turbo and libjpeg6-turbo. > > > > It is actually one package with two spec files. > > We should remove > > %{_bindir}/* > %doc %{_mandir}/man1/* > > from the libjpeg6-turbo package so it doesn't conflict with libjpeg8-turbo one. Done and I have renamed it to libjpeg62-turbo (still in home:pgajdos only). I am clueless though why baselibs62.conf doesn't work. Because there are no objections, I am about to send two-spec-file libjpeg-turbo into factory. Juergen, could you please look at http://download.opensuse.org/repositories/home:/pgajdos/openSUSE_12.3/x86_64/libjpeg62-62.0.0-50.1.x86_64.rpm This is an autogenerated message for OBS integration: This bug (807183) was mentioned in https://build.opensuse.org/request/show/175940 Factory / libjpeg-turbo https://build.opensuse.org/request/show/175941 Factory / libjpeg-turbo https://build.opensuse.org/request/show/175943 Factory / libjpeg-turbo This is an autogenerated message for OBS integration: This bug (807183) was mentioned in https://build.opensuse.org/request/show/175952 Factory / libjpeg-turbo > Juergen, could you please look at
>
> http://download.opensuse.org/repositories/home:/pgajdos/openSUSE_12.3/x86_64/libjpeg62-62.0.0-50.1.x86_64.rpm
Looks good. Thank you Petr!
While libjpeg62-turbo is on its way to factory, I would like to ask if we should provide libjpeg.so.62 also for 12.3. Juergen, Mr. Maintenance? Though I am not Mr. Maintenance I want to add +1 for this going into 12.3 too. I found one more application (GAME: yofrankie) requiring libjpeg62 that segfaults when doing "sudo ln -s libjpeg.so.8.0.2 libjpeg.so.62" and trying to start. I'm building a rpm of that game and will push it to the games repo as soon libjpeg hits 12.3 and Factory. Not Mr. Maintenance either, but while you are at it, please also try submit it to 12.3 updates -- I don't know if this lsb-(non?)-issue qualifies for a maintenance update or not. We'll find out. Petr, could you open a maintenancerequest with the updated package, please. Thanks. mr#176502 Why do you need a libjpeg62-devel package? openSUSE-RU-2013:0928-1: An update that has one recommended fix can now be installed. Category: recommended (low) Bug References: 807183 CVE References: Sources used: openSUSE 12.3 (src): libjpeg-turbo-1.2.1-19.4.1 The Patch openSUSE-2013-458 for openSUSE 12.3 does not contain libjpeg62-turbo! The anouncement does show libjpeg62-turbo in Description: This update fixes the following issue with libjpeg-turbo: - bnc#807163: Add libjpeg62-turbo package to provide libjpeg.so.62, which is required by LSB specification. But it does not contain libjpeg62-turbo in Package List: - openSUSE 12.3 (i586 x86_64): libjpeg-turbo-1.2.1-19.4.1 libjpeg-turbo-debuginfo-1.2.1-19.4.1 libjpeg-turbo-debugsource-1.2.1-19.4.1 libjpeg8-8.0.2-19.4.1 libjpeg8-debuginfo-8.0.2-19.4.1 libjpeg8-devel-8.0.2-19.4.1 - openSUSE 12.3 (x86_64): libjpeg8-32bit-8.0.2-19.4.1 libjpeg8-debuginfo-32bit-8.0.2-19.4.1 libjpeg8-devel-32bit-8.0.2-19.4.1 And not to forget, there is no libjpeg62-turbo on: http://download.opensuse.org/update/12.3-test/ http://download.opensuse.org/update/12.3/ http://download.opensuse.org/distribution/12.3/repo/ Benjamin? I think update should not pull libjpeg62 into installed system automatically, but it should be available in update repo, right? There went something wrong with copying the new package into 12.3:Update. I'll check it. Beni, thanks. I found the problem and rereleased it with the fix. The correct package is now in 12.3:Update. zypper se -s libjpeg62-turbo Daten des Repositories laden ... Installierte Pakete lesen ... S | Name | Typ | Version | Arch | Repository --+-----------------+------------+--------------+--------+--------------------- | libjpeg62-turbo | Paket | 1.2.1-19.8.1 | x86_64 | openSUSE 12.3 Update | libjpeg62-turbo | Paket | 1.2.1-19.8.1 | i586 | openSUSE 12.3 Update | libjpeg62-turbo | Quellpaket | 1.2.1-19.8.1 | noarch | openSUSE 12.3 Update Resolved fixed for now. Feel free to reopen the bug if you find another issue. that does not work. standard i586 unresolvable: have choice for libjpeg-devel: libjpeg8-devel libjpeg62-devel One of the Provides: libjpeg-devel probably has to go from one of the specfiles. Probably from the libjpeg62-devel one. which one? Use prjconf like for Factory does not work? I can surely remove Provides from libjpeg62-devel. Or we can remove libjpeg62-devel completely, if you wish (see comment 28). well yes, it works. it is not the most clean solution to do such a thing though. I have added the prefer line. lets see if there is any fallout. (In reply to comment #38) > it is not the most clean solution to do such a thing though. Let us do most clean solution then :-). Remove libjpeg62-devel? Perhaps only remove the
Provides: libjpeg-devel = %{version}
Obsoletes: libjpeg-devel < %{version}
from the libjpeg62-devel package.
Then the devel package is there, it just does not confuse the buildservice?
After I had to remove the package again from the update-channel, I'll try Marcus' solution in the incident. But then Conflicts: otherproviders(libjpeg-devel) from libjpeg8-devel will not work, correct? If you try to install libjpeg8-devel after libjpeg62-devel, yes, it wont get shown. perhaps we can also add explicit named conflicts for openSUSE 12.3 ( %package libjpeg8-devel Conflicts: libjpeg62-devel ? ) Ok. Beni, will you take care of that, or should I submit another sr? Yeah, sure. I have prepared the fixed package in openSUSE:Maintenance:1701, if you want to double-check it. After talking to Petr, I removed
-Provides: jpeg = %{version}
-Obsoletes: jpeg < %{version}
from libjpeg62-turbo.spec, that we only provide libjpeg62 in the new package.
I have tested the fixed package with xorg-x11-Xvnc, which requires libjpeg-devel and texlive, which requires jpeg and it looks good so far.
If someone wants to test it, you can find the new packages in https://build.opensuse.org/project/show?project=openSUSE%3AMaintenance%3A1701
The new packages work for me. Thanx. Andreas, thanks for testing. I'll release it now to fix the broken builds. Let's close the bug again. Feel free to reopen it if something still isn't working as expected. openSUSE-SU-2014:1637-1: An update that solves one vulnerability and has two fixes is now available. Category: security (moderate) Bug References: 771791,807183,906761 CVE References: CVE-2014-9092 Sources used: openSUSE 13.2 (src): libjpeg-turbo-1.3.1-30.5.1, libjpeg62-turbo-1.3.1-30.5.1 openSUSE 13.1 (src): libjpeg-turbo-1.2.1-24.4.1, libjpeg62-turbo-1.2.1-24.4.1 openSUSE 12.3 (src): libjpeg-turbo-1.2.1-19.20.1, libjpeg62-turbo-1.2.1-19.20.1 |