appdata questions
Hi. I have a few concerns about AppData that don't seem to be covered elsewhere, or at least I haven't found the answers - not counting Richard's talk[1], as I gave up after five minutes, because I just couldn't get used to the accent ... sorry, I'm not native speaker, this was just too exhausting for me (plus I'm not exactly happy about having to spend time listening to 99% of sauce to get to 1% of information I'm interested in) I've put those concerns onto the ticket[2] but the only answer I got was that it is wrong communication channel, so I'm copying it here: 1) Why not to take the information from the .desktop file by default and use appdata.xml only if the author/packager wants to provide additional information that cannot be in the .desktop file? 2) What is it good for to install appdata.xml into %{_datadir}/appdata/ when the installer (Apper, GNOME Software) takes the information from /usr/share/app-info/xmls so the files in /usr/share/appdata/ will lay on end-users' systems completely unused? 3) Almost the same goes for icons, if appstream-data will copy icons to /usr/share/app-info/icons, why to have two copies of the same image? 4) from http://people.freedesktop.org/~hughsient/appdata/ What happens if I don't ship this file? The GNOME Software Center currently shows a nag message that the upstream project doesn't ship the additional data. Additionally, we will penalize apps that do not ship the extra metadata by showing them lower in the search results. why do we penalize users by hiding contents from them when some upstream just doesn't care about this stuff? (see also comment 7 about the unjust burden)? 5) If there is a trend to split localised information into separate langpacks, why to mix all locales into one file, not allowing any split? Also, no localised screenshots allowed - Screenshots should be taken with US English as the display language. - even if they could be tagged with language code too? 6) If we copy the screenshots, why not to provide them also in an optional package? I've heard there are still some people who don't have Internet connection and install Fedora from DVD (do we still allow to install more packages from DVD after the initial install, right?) Or some may prefer not to get online just to browse the applications list ... - TIA for the answers, K. [1] https://www.youtube.com/watch?v=mSWIodEQMqo [2] https://fedorahosted.org/fpc/ticket/414#comment:31 -- Karel Volný QE BaseOs/Daemons Team Red Hat Czech, Brno tel. +420 532294274 (RH: +420 532294111 ext. 8262074) xmpp ka...@jabber.cz :: Never attribute to malice what can :: easily be explained by stupidity. -- devel mailing list devel@lists.fedoraproject.org https://admin.fedoraproject.org/mailman/listinfo/devel Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct
Re: appdata questions
On 20 August 2014 14:42, Karel Volný kvo...@redhat.com wrote: 1) Why not to take the information from the .desktop file by default and use appdata.xml only if the author/packager wants to provide additional information that cannot be in the .desktop file? That's what we do. Some data can't go in the .desktop file, as you can't put 5 localized screenshot URLs, with captions into an ini-style document without it looking crazy, and multi-paragraph text with lists is also as hard to do. You also might want different names for applications shown locally (e.g. Web) than in the software center (e.g. Epiphany). This is why we read the values in the AppData file, and then fall back to the .desktop files. 2) What is it good for to install appdata.xml into %{_datadir}/appdata/ when the installer (Apper, GNOME Software) takes the information from /usr/share/app-info/xmls so the files in /usr/share/appdata/ will lay on end-users' systems completely unused? This is for four reasons: * For distros not shipping AppStream metadata at all yet, e.g. Ubuntu * For applications that have been installed locally, but from a repo that doesn't support AppStream, e.g. Chrome or Steam could do this in the future. * You need to install the file to the filesystem so that it's present in the correct binary package * You might have installed a different version of an application to what the metadata was built against, e.g. installing F22 packages in an F21 system. 3) Almost the same goes for icons, if appstream-data will copy icons to /usr/share/app-info/icons, why to have two copies of the same image? The AppStream ones are pre-resized, optimised and padded to 64x64 PNG format, as processing lots of .svgs or large PNGs takes a lng time to render when we start the session installer. We also might want to ship a different icon in the software center to the installed version. The bigger problem is you'd have to hardlink things in /usr when installing, which really isn't a good idea at all just to save a few tens of kb's. why do we penalize users by hiding contents from them when some upstream just doesn't care about this stuff? (see also comment 7 about the unjust burden)? We have both a carrot and a stick. The carrot is that if you ship high quality translated descriptions, keywords and screenshots with the correct aspect ratio you get included higher up in the search results. The stick is that applications that are really bad or that are dead upstream don't show. They'll still show up in the installed view if you install them on the command line, we just don't make them easy to install. I'm intending to keep raising the bar for applications in the next few years, and at the moment the bar is set so very low. 5) If there is a trend to split localised information into separate langpacks, why to mix all locales into one file, not allowing any split? We're not doing anything with langpacks. The only time languages comes into the story is when the metadata gets built we decompress the application and any packages it requires from the same srpm and then run some tools to find out what locales are included in the application so we can suggest applications higher that are available in the users locale. In the software center, installing inkscape should probably just install all languages, and I'm hoping to use the new soft-dependencies feature of rpm to achieve this. If you install it on the command line, you can choose just the language packs you want, but for the saving of a few Mb it's not something I wanted to clog up the UI for. If the language packs are huge and that important, I guess you could use metainfo files to install them as addons, just like we're doing with eclipse extensions and browser plugins, but that's not something I'm super interested in. Also, no localised screenshots allowed - Screenshots should be taken with US English as the display language. - even if they could be tagged with language code too? You can take localised screenshots and tag them with the right language code, but at the moment we just ignore them in the extractor. There's exactly one application in the whole of F21 that has localised screenshots (in just two languages) but it's an open feature request in libappstream-glib to support this better. At the moment it's an uphill battle getting upstreams to take screenshots, and I didn't want the message to be take them in any language you like. Realistically, we need automated screenshot capture to be a reality before we can advertise localized screenshots as a feature. 6) If we copy the screenshots, why not to provide them also in an optional package? Why? What use would they be when you've installed the application? We already mirror them to the mirror network, and we cache them locally. I've heard there are still some people who don't have Internet connection and install Fedora from DVD (do we still allow to install more packages from DVD after the initial install,
Re: appdata questions
On Wed, 2014-08-20 at 15:42 +0200, Karel Volný wrote: why do we penalize users by hiding contents from them when some upstream just doesn't care about this stuff? (see also comment 7 about the unjust burden)? To clarify, the goal is not to penalize users: quite the opposite. We want applications in the software installer to have good descriptions and screenshots to help the user decide if he wants to install the application. The status quo in F20 is that many apps have just a sentence fragment of description taken from the desktop file, which is not very helpful to users and makes our software center look bad. Hiding applications without good descriptions will improve the quality of the results we show, and also encourage Fedora packagers to add the descriptions. (If upstream doesn't want to add an appdata file, you can do so in your packaging!) Michael signature.asc Description: This is a digitally signed message part -- devel mailing list devel@lists.fedoraproject.org https://admin.fedoraproject.org/mailman/listinfo/devel Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct
Re: AppData questions
On 8 November 2013 01:04, Rex Dieter rdie...@math.unl.edu wrote: which claims to be a (the?) tool to create some necessary database, how does this fit in (if at all)? As I understand it, it's a libappstream-kind-thing that takes the xml files as inputs and exposes a GObject API. gnome-software doesn't use this right now, but might in the future. At the moment large parts of gnome-software are performance critical, and that includes loading the XML files, so it would need some careful profiling before even considering this as a dep. Richard -- devel mailing list devel@lists.fedoraproject.org https://admin.fedoraproject.org/mailman/listinfo/devel Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct
Re: AppData questions
On Thu, 7 Nov 2013 13:04:39 +, Richard Hughes wrote: $ file screenshot-soundconverter.png screenshot-soundconverter.png: PNG image data, 502 x 534, 8-bit/color RGBA, non-interlaced ScreenshotSizeWidthMin=624 ScreenshotSizeHeightMin=351 503 is smaller than 624 and the screenshot is the wrong aspect ratio. The reason we need a minim width is so we avoid *scaling up* the screenshot which looks awful. Well, then the contributed appdata file [1] is wrong, and the screenshot needs to be corrected. [1] https://bugs.launchpad.net/soundconverter/+bug/1227535 -- devel mailing list devel@lists.fedoraproject.org https://admin.fedoraproject.org/mailman/listinfo/devel Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct
Re: AppData questions
On Wed, Nov 6, 2013 at 8:43 PM, Richard Hughes hughsi...@gmail.com wrote: On 6 November 2013 10:41, Michael Schwendt mschwe...@gmail.com wrote: # rpm -qf /usr/share/app-info/xmls/fedora-20.xml.gz gnome-software-3.10.3-1.fc20.x86_64 does. It's AppStream metadata. Whould it not be a good idea to have it in a separate package, such kind of metadata should not be included with the application package IMHO Tim -- devel mailing list devel@lists.fedoraproject.org https://admin.fedoraproject.org/mailman/listinfo/devel Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct
Re: AppData questions
On 6 November 2013 23:12, Michael Schwendt mschwe...@gmail.com wrote: $ file screenshot-soundconverter.png screenshot-soundconverter.png: PNG image data, 502 x 534, 8-bit/color RGBA, non-interlaced ScreenshotSizeWidthMin=624 ScreenshotSizeHeightMin=351 503 is smaller than 624 and the screenshot is the wrong aspect ratio. The reason we need a minim width is so we avoid *scaling up* the screenshot which looks awful. Richard -- devel mailing list devel@lists.fedoraproject.org https://admin.fedoraproject.org/mailman/listinfo/devel Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct
Re: AppData questions
On 7 November 2013 08:34, Tim Lauridsen tim.laurid...@gmail.com wrote: Whould it not be a good idea to have it in a separate package, such kind of metadata should not be included with the application package IMHO The plan is to ship this with the other metadata (and downloaded by dnf/yum) long term, but at the moment the metadata is shipped with the package as we're still tweaking the metadata format and adding extractor rules. I'm hopeful for F21 we can take this out the package. Richard. -- devel mailing list devel@lists.fedoraproject.org https://admin.fedoraproject.org/mailman/listinfo/devel Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct
Re: AppData questions
Richard Hughes wrote: It's not mandatory, but highly reccomended. See http://people.freedesktop.org/~hughsient/appdata/#screenshots for details. A little off-topic but I was wondering: The spec states Screenshots should be taken with US English as the display language.. However the spec also defines the tag for the software license to be licence / (UK English). Is this a mistake or just a matter of habit/preference? - Felix -- devel mailing list devel@lists.fedoraproject.org https://admin.fedoraproject.org/mailman/listinfo/devel Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct
Re: AppData questions
On 7 November 2013 13:36, Felix Kaechele fe...@fetzig.org wrote: A little off-topic but I was wondering: The spec states Screenshots should be taken with US English as the display language.. You can actually localize the screenshots if you want; I don't know of any project that wants to do that yet. However the spec also defines the tag for the software license to be licence / (UK English). Is this a mistake or just a matter of habit/preference? It's a mistake on my part. I'm from the UK, and but I suppose it should really be license -- too late now :) Richard. -- devel mailing list devel@lists.fedoraproject.org https://admin.fedoraproject.org/mailman/listinfo/devel Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct
Re: AppData questions
Richard Hughes wrote: On 6 November 2013 10:41, Michael Schwendt mschwe...@gmail.com wrote: # rpm -qf /usr/share/app-info/xmls/fedora-20.xml.gz gnome-software-3.10.3-1.fc20.x86_64 does. It's AppStream metadata. Similarly, in order to make apper/kde work, it needs appstream, https://bugzilla.redhat.com/show_bug.cgi?id=appstream which claims to be a (the?) tool to create some necessary database, how does this fit in (if at all)? -- Rex -- devel mailing list devel@lists.fedoraproject.org https://admin.fedoraproject.org/mailman/listinfo/devel Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct
AppData questions
I'm trying to follow what's happening related to gnome-software and the .appdata.xml files. There is a growing number of mails, but I cannot find any message that points out what the file # rpm -qf /usr/share/app-info/xmls/fedora-20.xml.gz gnome-software-3.10.3-1.fc20.x86_64 does. For Audacious it specifies several details, such as an icon included in the gnome-software package and MIME types. How to update or override those details? The file contains a summary Listen to music. So far, I'm unable to install an AppData file for Audacious that would be recognised by gnome-software. The installed file validates fine. Still, gnome-software only displays Listen to music. Is there a hidden cache file in some place? Or a remote database that is updated from time to time? I've tried to Remove Audacious via gnome-software, then reinstall it, but that didn't fix it either. [1] How to determine why the file is not recognised? What is the recommended procedure to test new .appdata.xml files? Where does gnome-software find those files? I mean, for uninstalled packages the files are not available. Not even the .desktop files. There must be some method that recognises such files in repo metadata and extracts them, or else gnome-software could not know about the file contents. Is a screenshot mandatory? The current test-update for Audacious includes an .appdata.xml file where the screenshot section is commented out. Is that permitted? I've noticed an AppData file has been contributed to Soundconverter upstream. Since the Fedora packages of Soundconverter lead to many changes upstream, I've merged the file, but the specified screenshot does not display. The validator finds a problem: /usr/share/appdata/soundconverter.appdata.xml 1 problems detected: • attribute invalid : screenshot width was too small The contributed file does not set any attributes width or height. [1] There's a related bug in gnome-software, btw, since a consecutive Remove and Install does not work. https://bugzilla.redhat.com/1027183 -- devel mailing list devel@lists.fedoraproject.org https://admin.fedoraproject.org/mailman/listinfo/devel Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct
Re: AppData questions
On 6 November 2013 10:41, Michael Schwendt mschwe...@gmail.com wrote: # rpm -qf /usr/share/app-info/xmls/fedora-20.xml.gz gnome-software-3.10.3-1.fc20.x86_64 does. It's AppStream metadata. For Audacious it specifies several details, such as an icon included in the gnome-software package and MIME types. How to update or override those details? The file contains a summary Listen to music. So far, I'm unable to install an AppData file for Audacious that would be recognised by gnome-software. The installed file validates fine. Still, gnome-software only displays Listen to music. Is there a hidden cache file in some place? Or a remote database that is updated from time to time? I'm manually creating the metadata on my machine until we get all the bits we need to do this on koji after each build, but the installed appdata should be used in preference to the cached metadata there. What is the recommended procedure to test new .appdata.xml files? Install them to /usr/share/appdata/ -- i've not tested this with Fedora 20, but I know it works if you're using the rawhide package. Is a screenshot mandatory? The current test-update for Audacious includes an .appdata.xml file where the screenshot section is commented out. Is that permitted? It's not mandatory, but highly reccomended. See http://people.freedesktop.org/~hughsient/appdata/#screenshots for details. I've noticed an AppData file has been contributed to Soundconverter upstream. Since the Fedora packages of Soundconverter lead to many changes upstream, I've merged the file, but the specified screenshot does not display. The validator finds a problem: GNOME 3.10 not show screenshots yet, that's a GNOME 3.12 feature. /usr/share/appdata/soundconverter.appdata.xml 1 problems detected: • attribute invalid : screenshot width was too small The contributed file does not set any attributes width or height. How large is the actual screenshot in pixels? If you run appdata-validate -v foo.appdata.xml it'll tell you the parameters it's using for validation. Richard. -- devel mailing list devel@lists.fedoraproject.org https://admin.fedoraproject.org/mailman/listinfo/devel Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct
Re: AppData questions
On Wed, 6 Nov 2013 19:43:25 +, Richard Hughes wrote: What is the recommended procedure to test new .appdata.xml files? Install them to /usr/share/appdata/ -- i've not tested this with Fedora 20, but I know it works if you're using the rawhide package. Yes, with Rawhide it works and displays the long description. /usr/share/appdata/soundconverter.appdata.xml 1 problems detected: • attribute invalid : screenshot width was too small The contributed file does not set any attributes width or height. How large is the actual screenshot in pixels? If you run appdata-validate -v foo.appdata.xml it'll tell you the parameters it's using for validation. $ wget -q http://soundconverter.org/screenshot-soundconverter.png $ file screenshot-soundconverter.png screenshot-soundconverter.png: PNG image data, 502 x 534, 8-bit/color RGBA, non-interlaced $ appdata-validate -v /usr/share/appdata/soundconverter.appdata.xml |grep -i size ScreenshotSizeWidthMin=624 ScreenshotSizeHeightMin=351 ScreenshotSizeWidthMax=1600 ScreenshotSizeHeightMax=900 $ appdata-validate -v /usr/share/appdata/soundconverter.appdata.xml [AppdataToolsValidate] LengthUpdatecontactMin=6 LengthNameMin=3 LengthNameMax=30 LengthSummaryMin=8 LengthSummaryMax=100 LengthParaMin=50 LengthParaMax=600 LengthListItemMin=20 LengthListItemMax=100 NumberParaMin=2 NumberParaMax=4 NumberScreenshotsMin=1 ScreenshotSizeWidthMin=624 ScreenshotSizeHeightMin=351 ScreenshotSizeWidthMax=1600 ScreenshotSizeHeightMax=900 NumberScreenshotsMax=5 RequireContactdetails=true RequireUrl=true HasNetworkAccess=true RequireCopyright=false RequireCorrectAspectRatio=false DesiredAspectRatio=1.7001 checking http://soundconverter.org/screenshot-soundconverter.png /usr/share/appdata/soundconverter.appdata.xml 1 problems detected: • attribute invalid : screenshot width was too small -- devel mailing list devel@lists.fedoraproject.org https://admin.fedoraproject.org/mailman/listinfo/devel Fedora Code of Conduct: http://fedoraproject.org/code-of-conduct