GNOME Bugzilla – Bug 767913
Updating to 3.20.0 makes translations disappear
Last modified: 2016-06-22 00:53:37 UTC
After updating to gnome-screenshot-3.20.0-1.fc24.x86_64, the whole program is in English, regardless of the locale. See also: https://bugzilla.gnome.org/show_bug.cgi?id=746973
Still trying to figure this out. I feel like it's related to the fact that intltool doesn't define ENABLE_NLS on its own, but haven't managed to get it working by doing that manually. The change in bug #746973 was not right, though. intltool and glib-gettext fight to create the same makefile (intltool wins); we agreed on desktop-devel recently that it doesn't make sense to use them both in the same package. I'll eventually give up and put it back in to fix translations, but want to try harder to figure this out first.
The problem is that AM_GLIB_GNU_GETTEXT defined DATADIRNAME, which we used in src/Makefile.am to define GNOMELOCALEDIR. Without the definition of DATADIRNAME, the path we passed to bindtextdomain was broken. I think the modern way to handle this is to just use $(localedir) provided by Automake.
Created attachment 330171 [details] [review] Fix translations When I removed the use of AM_GLIB_GNU_GETTEXT, I didn't realize that it was needed for exactly one reason: to define the variable DATADIRNAME to "share". We are using it here to define GNOMELOCALEDIR to pass to bindtextdomain. Let's just use standard LOCALEDIR instead.
mclasen: looks reasonable, assuming that localedir gets defined in configure.ac mcatanzaro: I think it's a standard Automake thing mcatanzaro: (it's not defined in configure.ac) mclasen: yeah, looks so mclasen: localedir = ${datarootdir}/locale
Attachment 330171 [details] pushed as 0ce8716 - Fix translations