[Rpm-maint] Add appdata() and application() auto-provides
Panu Matilainen
pmatilai at laiskiainen.org
Fri Oct 4 12:31:27 UTC 2013
On 10/04/2013 03:01 PM, Michael Schroeder wrote:
> On Wed, Oct 02, 2013 at 07:32:26PM -0400, Colin Walters wrote:
>> + echo "application()"
>> + echo "application(${instfile##*/applications/})"
>> if ! grep -q '^Type=Application$' "$instfile"; then continue; fi
>> if ! grep -q '^Exec=' "$instfile"; then continue; fi
>>
>> Shouldn't these pairs of lines be swapped, so that we don't
>> emit provides for things that aren't actually Type=Application for
>> example?
>
> I also saw that "if" statement, but decided to put the echo statements
> before it. My reasoning is that the application() marker is for
> .desktop files in the "/usr/share/applications" directory, independent
> of the type. (I must admit that I have no clue about what other types
> are allowed in those desktop files.)
Looking at
http://standards.freedesktop.org/desktop-entry-spec/latest/ar01s05.html
says the current three types are Application, Link and Directory, and
that for future-proofing, unknown types should be ignored.
Based on that I think we'd be better off only creating the application()
provides for explicit Type=Application entries, as types Link and
Directory are decidedly not applications, and of possible new types we
obviously have no idea.
Another possibility could be actually emitting a provide for all types,
based on the value name, eg Link would get a link() provide etc. And
thinking about that makes me think perhaps these provides should be
namespaced somehow, eg desktop-application() or such.
- Panu -
More information about the Rpm-maint
mailing list