[AppStream] Appstream ID and Flatpak

Aleix Pol aleixpol at kde.org
Mon Oct 29 00:15:55 UTC 2018


On Fri, Oct 26, 2018 at 8:49 PM Matthias Clasen <mclasen at redhat.com> wrote:
>
> On Fri, Oct 26, 2018 at 8:16 AM Matthias Klumpp <matthias at tenstral.net> wrote:
>>
>>
>> That wouldn't really help. Flatpak will need to stop encouraging
>> people to change their AppStream component-IDs just for Flatpak.
>> One of the core promises of AppStream is to give each application a
>> unique ID that is shared across installation systems, so we can e.g.
>> always identify org.mozilla.Firefox as belonging to the "Firefox" app
>> from Mozilla, no matter how it was installed on the system (package /
>> Flatpak / Snap / AppImage / ...).
>>
>> What would really help is if Flatpak would just encourage people to
>> name their metainfo files correctly and give their components a proper
>> <id/>[1] tag value (hypens are disallowed in the AppStream spec as
>> well now) and make them set a proper <launchable/>[2] tag for their
>> .desktop file.
>> These changes *must* happen upstream, so the metainfo file is shared
>> for the app, renaming things just for Flatpak breaks the unique-ID
>> promise and makes it hard to impossible for software centers to group
>> the same app together properly.
>>
>
> We want the same thing. An application ID that is globally unique and usable in
> all the places where such an ID is needed (desktop file name, bus name, appstream,
> etc).
>
> How do you see flatpak encouraging or not encouraging things?
>
> Should flatpak-builder do something different from what it does today ?

Yes, many applications need to rename the appstream id in their
manifest nowadays because flatpak is stricter on ids than appstream
is.
In practice the id ends up being different. For example, telegram's id
in my distro is "telegram.desktop" and on flathub it is
org.telegram.desktop.

Deprecating rename-appdata-file would help a lot.
Enforcing flathub applications not to provide its own appdata file
would be ace too.

Aleix


More information about the AppStream mailing list