New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Consider discouraging/prohibiting the use of hyphens in Appstream IDs, to match the DBus spec #162
Comments
|
The D-Bus specification discourages hyphens everywhere, not just in the non-last components. The Flatpak specification is the one that has a problem with hyphens in non-last elements. It forbids hyphens anywhere except the last element for some technical reason that I don't fully understand: I think it's something to do with wanting an app to be able to "export" multiple icons ( |
|
Yes, I agree with this as said in the discussion on the mailinglist. I just haven't had time to implement the result of that discussion, due to finishing a thesis and then a lot of other stuff happened too. I will not make hyphens in IDs an error from the AppStream side (at least not for now), but I will add a warning to the specification and guides about this issue, and make |
|
Awesome, thanks folks. |
This is allowed but not recommended.
That's not valid, because the owner of my-awesome-website.com typically does not also own myawesomewebsite.com, so they have no way to know that the owner of myawesomewebsite.com won't release a different app with that name. Curated app-stores like Flathub should reject app IDs that are based on a domain not owned by the app's publisher. |
|
This all came about because Flathub has taken the liberty of assigning Appstream IDs to certain apps that did not already provide them. One such example is FileZilla, which was assigned Either way, now Flathub uses |
Yes, Flathub was wrong to apply that transformation. Nobody can own |
Right now AppStream recommends reverse-DNS-style IDs and supports the full range of rDNS characters, including hyphens anywhere (e.g.
com.my-awesome-website.my-awesome-app).However, DBus does not, and discourages the use of hyphens anywhere but the last element. So to be valid to DBus, that string would have to be
com.my_awesome_website.my-awesome-apporcom.myawesomewebsite.my-awesome-app.This has caused a situation where the FileZilla developers adopted an AppStream ID with a hyphen in the middle (
org.filezilla-project.FileZilla) that complies with the AppStream spec, but not the DBus spec. When I asked them to change their ID to remove the hyphen, they pointed out quite reasonably that it was a perfectly valid AppStream ID.We might consider changing the AppStream spec for IDs to match the DBus spec and discourage or prohibit the use of hyphens anywhere but the last element to prevent this kind of confusion.
The text was updated successfully, but these errors were encountered: