Reclassify Icon= in .desktop files as string, not localestring

Egmont Koblinger egmont at gmail.com
Wed Jun 26 10:08:02 UTC 2019


> So it's fair to say that nobody uses it correctly, and then barely
> anyone uses it. At this point, I think the onus would be on you to show
> that it's useful

A few possible use cases have been shown at
https://savannah.gnu.org/support/?108887 . They might not be strong
enough to keep this feature alive for.

> if you wanted to keep it despite the problems it
> causes translators.

The problem is not caused by the specification, the problem is caused
by the way xgettext generates these files. The problem can be fixed
solely within xgettext, without altering the spec. I don't really see
it justified to remove the functionality from the spec (and
accordingly, implementations that handle these files and display the
icon towards users).

Also, what if, let's say, it's removed from the spec, but some
implementations refuse to remove it from the code? E.g. randomly made
up example (without intending to blame anyone): GNOME stops showing
localized icons, but KDE keeps doing so. What then? How to convince /
force implementations to remove this functionality? Why shouldn't they
be allowed to support such an "extension" to the spec?

But okay, let's say the conclusion is to remove it. Okay, let's remove
it then, and never look back.

What I'm the most firmly against is removing it from the spec and then
looking for another workaround to resurrect the _functionality_ for
those few apps that require it. If the functionality (the
user-perceived behavior of seeing localized icon) is decided to be
needless then okay, let's get rid of it. If it's decided to be
desirable to have, it needs to be achieved via the very same technical
means that we have now (same spec, same syntax). Switching to a
different technical means of achieving the same user-facing behavior
would be a terrible hack.

But let's take a look at this story from a different view:

If the conclusion is to alter the spec then the following work needs to be done:
1. Change the spec
2. Change xgettext
3. Fix one-off desktop files (generated via other means, e.g. intltool
or manually)
4. Change GNOME, KDE etc. not to recognize these localized entries

Out of these four, only altering xgettext's implementation on its own,
and none of the other three, is already an equally perfect solution
for our current problem. It's _not_ against the spec to modify
xgettext this way (as I've shown in my previous mail), it's clearly
less work, it doesn't break backwards compatilbility, and results in a
more flexible ecosystem (even if that flexibility is desired for very
few applications only). So, what's the point in removing this feature
from the spec and the consumers of desktop filles, again? What
problems would it address that aren't addressed by modifying xgettext?


cheers,
egmont


More information about the xdg mailing list