Bugzilla – Full Text Bug Listing |
Summary: | [libsolv] nothing provides appdata(Thunar.appdata.xml) needed by application:Thunar File Manager-.noarch | ||
---|---|---|---|
Product: | [openSUSE] openSUSE Distribution | Reporter: | Carlos Robinson <carlos.e.r> |
Component: | X11 Applications | Assignee: | E-mail List <bnc-team-xfce> |
Status: | RESOLVED FIXED | QA Contact: | E-mail List <qa-bugs> |
Severity: | Normal | ||
Priority: | P5 - None | CC: | astieger, brr, constant, davejplater, dimstar, ggaribaldi, illumilore, jengelh, jmammen, ma, maintenance, mls |
Version: | Leap 42.1 | ||
Target Milestone: | --- | ||
Hardware: | x86-64 | ||
OS: | openSUSE 42.1 | ||
Whiteboard: | |||
Found By: | --- | Services Priority: | |
Business Priority: | Blocker: | --- | |
Marketing QA Status: | --- | IT Deployment: | --- |
Description
Carlos Robinson
2015-10-28 02:01:24 UTC
Let me post here as well the answer I gave on the mailing list, so it becomes clear what needs to be done: That one can be seen as a libzypp bug or a thunar bug; the fix is certainly easier in Thunar. The package provides: appdata(thunar.appdata.xml) and application(Thunar.desktop) Now, thunar does not really do anything 'invalid' there, as the provided appdata.xml correctly references Thunar.desktop, but libzypp falls on the nose with it. For this error to disappear, the appdata file and the .desktop file should use the same basename. So the easiest fix is for Thunar to rename thunar.appdata.xml to Thunar.appdata.xml; then the problem disappears (do not rename the .desktop file, or you will need to patch the appdata.xml, which references the .desktop file by name) In the longer run, libzypp might need a fix to not be so pedantic about it (the AppData standard does not mandate the names to be equal; but from any upstream project PoV, it's good practice to reuse the naming schemes throughout the project anyway). The problem is neither the (In reply to Dominique Leuenberger from comment #1) > In the longer run, libzypp might need a fix to not be so pedantic about it AFAICS the libsolv parser is not pedantic, the information about the appdata.xml file seems to be missing in the repos appdata.xml.gz. + An installed 'application:Thunar File Manager' is created from parsing /usr/share/appdata/thunar.appdata.xml. The filename defines the 'appdata(thunar.appdata.xml)' requirement. This works well. - Within the repository however, all the appdata's are collected in a single appdata.xml.gz. Each <component> entry defines an application: object, but the components data do not hint to the name of the corresponding packages 'appdata(thunar.appdata.xml)' provides, which the application: object should require. Libsolv tries to somehow guess this from the component/id field (Thunar.desktop ==> Thunar.appdata.xml), but in this case guessing fails. @mls: do you already have a solution in mind for this? (In reply to Michael Andres from comment #2) appdata.xml.gz contains: <component type="desktop"> <id>Thunar.desktop</id> <pkgname>thunar</pkgname> <name>Thunar File Manager</name> thunar.appdata.xml contains: <application> <id type="desktop">Thunar.desktop</id> <metadata_license>CC0-1.0</metadata_license> but of course there is no longer any reference anywhere that THIS piece from appdata.xml.gz references a specific appdata.xml file There IS, however, an EXPLCIT hint at the package name in the <pkgname> attribute in appdata.xml.gz and the 'being pedantic' was meant as it uses an algo to guess things (.desktop filename matching .appdata.xml file name) where this is not a strict requirement 'normally' (currently it is for solv). I don't mind if we find a solution in solv or just mandate this for openSUSE that we want the names to be align - both are sort-of valid approaches. *** Bug 953070 has been marked as a duplicate of this bug. *** > https://github.com/openSUSE/libsolv/pull/113
Suggested libsolv patch to follow explicit package name hints in appdata.xml.gz rather than guessing the appdata(...) provides.
This should be fixed in libsolv-0.6.15. Maintenance updates for 13.2/SLE12/LEAP/SLE12SP1 are running *** Bug 926865 has been marked as a duplicate of this bug. *** *** Bug 961304 has been marked as a duplicate of this bug. *** *** Bug 962214 has been marked as a duplicate of this bug. *** I don't think this bug is actually an installation system problem but is caused by certain rules not being followed with desktop files and their related appdata.xml files. Thunar for instance has the desktop file Thunar.desktop, note the capital T and the appdata file thunar.appdata.xml. The appdata file should have a <name> field matching the desktop file's name field "Thunar File Manager" and it's desktop file's name must match the appdata.xml file's name ie. thunar.desktop and thunar.appdata.xml also the "id type" needs to be patched with the corrected desktop file name. I've performed all these changes to my package buzztrax, which I'm trying to submit to Factory and it installs, uninstalls, updates and causes no zypper verify errors. Sorry, to explain the last statement in comment#11. I had to run rpmdb --update after correcting the buzztrax package, to prevent zypper verify from stating that it was removing "Buzztrax Music Editor" so this bug possibly dirties the rpm database. hugin is a different case, it has three matching .desktop / appdata.xml files and so has the loudest error output, I uninstalled it immediately after I had installed Leap:42.1 due to this. hugin overrides rpms's provides due to the complexity of wXwidgets and as a result doesn't provide the three appdata.xml files. IMHO I should provide these files in the spec file? Dominique? The thunar fix is easy, just match the appdata and desktop file and no more installation system problems. I have maintenance branches of both thunar and hugin waiting but I would like some peer input before I start the process, due to past isolation the appstream project is new to me. I have a Leap:42.1 update for thunar waiting in : home:plater:branches:openSUSE:Leap:42.1:Update/thunar.openSUSE_Leap_42.1_Update Can I submit? (In reply to Dave Plater from comment #15) > I have a Leap:42.1 update for thunar waiting in : > home:plater:branches:openSUSE:Leap:42.1:Update/thunar.openSUSE_Leap_42. > 1_Update > Can I submit? Please submit for a review. (In reply to Andreas Stieger from comment #16) Created mr#356318 This is an autogenerated message for OBS integration: This bug (952324) was mentioned in https://build.opensuse.org/request/show/356318 42.1 / thunar I also have a hugin update prepared, which is hopefully the last of the appdata.xml noise in Leap:42.1. May I submit? Unfortunately hugin needs to have it's libraries in sub packages otherwise I will need a complex find provides script, atm it doesn't find it's own libraries. This will take a while. I have a hugin update in : https://build.opensuse.org/package/show/home:plater:branches:openSUSE:Leap:42.1:Update/hugin.openSUSE_Leap_42.1_Update can I submit? This is an autogenerated message for OBS integration: This bug (952324) was mentioned in https://build.opensuse.org/request/show/358076 42.1 / hugin I've submitted thunar and hugin to their devel projects. I've also submitted hugin to openSUSE:Leap:42.1:Update mr#358076. I've only recently jumped to Leap from 12.1 and have noticed the appdata.xml provides in the osc web ui but have only experienced them now. I'm assuming that this is part of an integration of the appstream project into openSUSE? Is there somewhere I can read more about this integration? I found the freedesktop.org appstream web page and have read through it. *** Bug 963592 has been marked as a duplicate of this bug. *** I'll make an update for audacity as well Audacity has the same problem as hugin, it uses wxrequires and doesn't provide the appdata.xml and desktop files. openSUSE-RU-2016:0465-1: An update that has one recommended fix can now be installed. Category: recommended (moderate) Bug References: 952324 CVE References: Sources used: openSUSE Leap 42.1 (src): thunar-1.6.10-4.1 openSUSE-RU-2016:0466-1: An update that has two recommended fixes can now be installed. Category: recommended (moderate) Bug References: 952324,962214 CVE References: Sources used: openSUSE Leap 42.1 (src): hugin-2015.0.0-3.1 The solution for audacity is an update to version 2.1.2 which builds with wxGTK3-3_0 and doesn't need a custom find provides. This also requires an update to wxWidgets3-3_0's linked wxGTK3-3_0 package because audacity-2.1.2 doesn't build with a wxGTK3-3_0 built with --enable-stl. I created mr#360495 and mr#360497 I tried to create a single request for wxWidgets-3_0 and audacity but it doesn't seem possible. audacity-2.1.2 needs wxGTK3-3_0 built without STL to build and run. This is an autogenerated message for OBS integration: This bug (952324) was mentioned in https://build.opensuse.org/request/show/360495 42.1 / wxWidgets-3_0+audacity https://build.opensuse.org/request/show/360497 42.1 / audacity Reviewing https://build.opensuse.org/request/show/360495... Dave on your wxWidgets-3_0 change, has this been submitted to the devel project as well as Factory, or does it not affect Factory? Jan, does this make sense? Could you check this? osc rdiff openSUSE:Leap:42.1:Update/wxWidgets-3_0 home:plater:branches:openSUSE:Leap:42.1:Update/wxWidgets-3_0.openSUSE_Leap_42.1_Update Looks like this lib change can break all kinds of stuff? (In reply to Andreas Stieger from comment #32) wxGTK3-3_0 variation of wxWidgets-3_0 isn't used by any packages in factory atm. osc whatdependson openSUSE:Factory wxGTK3-3_0 standard x86_64 wxGTK3-3_0 : It seems that packages only build against gtk2 wxWidgets. I've submitted it to X11:wxWidgets / wxWidgets-3_0 for submission to Factory and so far Jan Engelhardt is going to look at audacity to see if this is necessary. I've tested the installation against the other wxWidget variants and I've tested audacity, which I've been bugowner of for quite a while. audacity-2.1.2 was designed to be built against wxWidgets 3.0.x. I used the patches from the Fedora wxGTK3 package in the update. Debian audacity-2.1.2 builds against wxWidgets-3 with gtk2 the equivalent of our wxWidgets-3_0 package but without STL.\ Disabling STL in wxWidgets-3_0 could certainly cause a catastrophe in Factory and Leap. The other solution is stay on audacity-2.1.1 and I'll have to create a manual provides script. Jan declined the review of SR#360495 due to the ABI breakage. Dave, what alternative solutions do you propose? Additional packages would be fine, just not changing things about. ATM I'm having a look at audacity git master, a lot of fixes have taken place since version 2.1.2, Jan sent me an incomplete patch to give me an idea about making audacity build with openSUSE's wxWidgets3 and ATM I'm looking at completing this with audacity git and at the same time encouraging upstream to incorporate the changes. I suspect another audacity release is not far away. Plan B is audacity-2.1.2 with fedora's wxGTK3 which I have built. Plan C is an openSUSE:Leap:42.1 audacity-2.1.1 update with a manual provides script. If getting audacity-2.1.2 to build with openSUSE wxWidgets3 takes too long, I'll look at plan B or C. To add to my last comment, Jan has submitted the patch to audacity upstream. It seems that libsolv patch has finally hit Leap:42.1 so the audacity fix isn't necessary. This is an autogenerated message for OBS integration: This bug (952324) was mentioned in https://build.opensuse.org/request/show/669045 Factory / thunar This is an autogenerated message for OBS integration: This bug (952324) was mentioned in https://build.opensuse.org/request/show/720992 Backports:SLE-12-SP2 / exo+libgarcon+libxfce4ui+libxfce4util+perl-ExtUtils-Depends+perl-ExtUtils-PkgConfig+perl-Glib+thunar+xfce4-dev-tools+xfce4-panel+xfconf openSUSE-RU-2019:2305-1: An update that solves one vulnerability and has 10 fixes is now available. Category: recommended (moderate) Bug References: 1011518,1047218,1135362,637694,687874,760492,764310,767145,829113,860479,952324 CVE References: CVE-2011-1588 Sources used: SUSE Package Hub for SUSE Linux Enterprise 12 (src): exo-0.12.0-2.1, libgarcon-0.6.1-2.1, libxfce4ui-4.12.1-2.1, libxfce4util-4.12.1-2.1, perl-ExtUtils-Depends-0.405-2.1, perl-ExtUtils-PkgConfig-1.160000-2.1, perl-Glib-1.326-2.1, thunar-1.6.14-2.1, xfce4-dev-tools-4.12.0-2.1, xfce4-panel-4.12.2-2.1, xfconf-4.12.1-2.1 |