common-id extractor to infer launchable for legacy support
Metadata
Current evaluation
Legacy AppStream IDs now resolve desktop launchables without explicit launchable metadata; merged via snapcore/snapcraft#2435 (1cbd60b8a, 6fc81672c).
Resolution: closed resolved
Reason: PR snapcore/snapcraft#2435 was linked as the fix and merged commits 1cbd60b8a and 6fc81672c, adding legacy launchable and unsuffixed AppStream ID handling.
Evaluated by: mr-cal-bot
No scores available.
Issue body
Currently the appstream extractor will only go looking for a desktop file iff a `launchable` is set in the appstream data. Unfortunately older desktop files may still rely on the previous functionality which was that the`id` == desktop-id (e.g. `org.kde.foo.desktop`).
To support that properly the extractor should also attempt to locate the desktop if no launchable is present BUT the id ends with '.desktop'.
For broadest compatibility the extractor could always go looking for the desktop file even when no launchable was provided, appending '.desktop' as necessary. This is however not required from a spec POV, just a thought.
See note at
https://www.freedesktop.org/software/appstream/docs/sect-Metadata-Application.html#tag-id-desktopapp
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| stealth/space-bunny-alpha | — | closed resolved | Legacy AppStream IDs now resolve desktop launchables without explicit launchable metadata; merged via snapcore/snapcraft#2435 (1cbd60b8a, 6fc81672c). | |
| stealth/space-bunny-alpha | — | closed resolved | Merged snapcraft#2435 added a common-id fallback: without a launchable, the extractor searches for a .desktop file, appending the suffix when needed. | |
| stealth/space-bunny-alpha | — | closed resolved | Legacy AppStream IDs were supported by PR #2758, which added a .desktop fallback when no launchable is specified, restoring desktop-file discovery. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed without implementation or discussion after 3000 days. The legacy launchable inference enhancement was abandoned and superseded by updated AppStream specifications. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed without implementation. The feature request to infer launchable from legacy desktop file IDs was abandoned due to inactivity. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed without implementation. The legacy launchable inference request was abandoned due to zero comments and inactivity, with no resolution or code changes applied. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Legacy launchable inference for appstream IDs was closed without implementation. With zero comments and no activity, the feature request was abandoned. |
Update history
| Date | Change |
|---|---|
| created |
Related work
-
Likely Fixed By:
snapcore/snapcraft#2435
(confidence 99%)
Directly linked from the issue; its commits add support for legacy launchables and IDs without a desktop suffix.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #2758 appstream: support legacy ids without desktop suffix | snapcraft | merged | Merged in canonical/snapcraft#2758 via 6fc81672c, adding a .desktop fallback for legacy AppStream IDs so launchers are found without launchable entries. |