appdata questions

2014-08-20 Thread Karel Volný


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

2014-08-20 Thread Richard Hughes
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

2014-08-20 Thread Michael Catanzaro
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

2013-11-08 Thread Richard Hughes
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

2013-11-08 Thread Michael Schwendt
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

2013-11-07 Thread Tim Lauridsen
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

2013-11-07 Thread Richard Hughes
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

2013-11-07 Thread Richard Hughes
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

2013-11-07 Thread Felix Kaechele

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

2013-11-07 Thread Richard Hughes
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

2013-11-07 Thread Rex Dieter
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

2013-11-06 Thread Michael Schwendt
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

2013-11-06 Thread Richard Hughes
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

2013-11-06 Thread Michael Schwendt
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