After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 767913 - Updating to 3.20.0 makes translations disappear
Updating to 3.20.0 makes translations disappear
Status: RESOLVED FIXED
Product: gnome-screenshot
Classification: Core
Component: general
3.20.x
Other Linux
: Normal normal
: ---
Assigned To: Michael Catanzaro
gnome-screenshot-maint
Depends on:
Blocks:
 
 
Reported: 2016-06-21 14:28 UTC by Piotr Drąg
Modified: 2016-06-22 00:53 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Fix translations (1.51 KB, patch)
2016-06-21 22:49 UTC, Michael Catanzaro
committed Details | Review

Description Piotr Drąg 2016-06-21 14:28:13 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
Comment 1 Michael Catanzaro 2016-06-21 20:43:10 UTC
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.
Comment 2 Michael Catanzaro 2016-06-21 22:48:04 UTC
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.
Comment 3 Michael Catanzaro 2016-06-21 22:49:58 UTC
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.
Comment 4 Michael Catanzaro 2016-06-22 00:53:00 UTC
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
Comment 5 Michael Catanzaro 2016-06-22 00:53:35 UTC
Attachment 330171 [details] pushed as 0ce8716 - Fix translations