Mailinglist Archive: opensuse-packaging (186 mails)

< Previous Next >
Re: [opensuse-packaging] Desktop categories: mismatch in brp-desktop and rpmlint
  • From: David Bolt <bcrafhfr-cnpxntvat@xxxxxxxxxx>
  • Date: Tue, 17 Feb 2009 16:01:18 +0000
  • Message-id: <nWM7ub0O9tmJFwbb@xxxxxxxxxxxxxxxxxxx>
On Mon, 16 Feb 2009, Stanislav Brabec wrote:-

David Bolt wrote:
On Mon, 26 Jan 2009, Stephan Kulow wrote:-

<snip>

brp-desktop checks if the desktop file will map to one of our menu
structures.
And according to /etc/xdg/menus/applications.menu the category is
X-SuSE-Core-Multimedia, but AudiVideo already maps there.

It indicates several errors in the check (and very probably in menu
definitions).

Please open a bug in Bugzilla.

SuSE specific categories without initial X- should not exist.

Was that aimed at the OP, Stephan or myself? I'm guessing it was for the
OP or Stephan.

Note that Freedesktop itself has a problem with definition of Education
and Science. I see no reason why Geology can be used with Science but
Geography cannot be used with.

That is a little strange, and something I hadn't noticed before.
However, while it's listed as being under Education; it is still allowed
under (*;)Education;Science; according to desktop-file-validate.

I have wondered why ImageProcessing appears to be allowed for
Education;Science; but doesn't appear to be so for either Graphics or
Office. Checking them shows them to be valid and, although they pass the
checks for Fedora, fail on openSUSE 11.1.

I'm not overly good at reading source code, but looking at the source
for desktop-file-validate, specifically validate.c, it certainly looks
like any combination of main categories and additional categories are
valid. I've added a few of test category combinations to check this. The
combinations were

(*;)Graphics;ImageProcessing;
(*;)Office;ImageProcessing;
(*;)Network;VectorGraphics;Sequencer;
ConsoleOnly;Network;VectorGraphics;Sequencer;Clock;

The last two were the real test combinations. As I expected, they all
fail the rpmlint check when built on openSUSE but all four do pass as
valid combinations and they all build and pass rpmlint checks on Fedora.
I haven't installed any of them as yet so I have no idea where in their
desktop menu the "applications" would end up.

Did you use any tool to parse Freedesktop spec and create a list? Maybe
it could be useful as well.

No, I compiled the lists of Freedesk and openSUSE categories manually. I
did use a script to create a desktop file for each of the listed
categories, test for validity[0], and then build a source RPM including
the desktop file, a simple icon and dummy script. After that, I used my
wrapper for the build script, to perform clean builds.

As my wrapper checks to see if a build was successful and removes the
source package/spec from /usr/src/packages/SOURCES if it is, those that
were left behind after it had completed its run through must have failed
to build.

I then manually entered them into a database[1], which is then used to
generate the list on my web site.



[0] And just to make sure I could identify those that failed validation,
I gave them a different version number to those that passed.

[1] I should really automate that part. The build test on Fedora 10
doesn't need manual intervention. I use a single command line that does
the build, checks the results and updates the database with the results
of each package build.

Regards,
David Bolt

--
Team Acorn: http://www.distributed.net/ OGR-NG @ ~100Mnodes RC5-72 @ ~1Mkeys/s
| openSUSE 10.3 32b | openSUSE 11.0 32b |
openSUSE 10.2 64b | openSUSE 10.3 64b | openSUSE 11.0 64b | openSUSE 11.1 64b
TOS 4.02 | openSUSE 10.3 PPC | RISC OS 3.6 | RISC OS 3.11
--
To unsubscribe, e-mail: opensuse-packaging+unsubscribe@xxxxxxxxxxxx
For additional commands, e-mail: opensuse-packaging+help@xxxxxxxxxxxx

< Previous Next >
Follow Ups