This is important if you’re the upstream maintainer of an application: If you change the desktop ID then it’s like breaking API. Changing a desktop ID should be done carefully and in a development branch only — and then you need to communicate it and give the distros a chance to adapt to the new name.
If you’re just changing the desktop ID and not forking development, you also need to add something like this in your
<provides> <id>old-name.desktop</id> </provides>
GNOME Software gets lots of bugs about showing “duplicate” search results, but there’s no reliable way it can know that
calibre-gui.desktop is the same app as
com.calibre_ebook.calibre without some help. If you’re a packager building an application for something like Flathub you only need to include the extra
provides line if you’re adding a new
metainfo.xml file rather than just using
rename-appdata-file in the JSON file.