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 393046 - 'make run' doesn't start banshee with the localized language
'make run' doesn't start banshee with the localized language
Status: RESOLVED FIXED
Product: banshee
Classification: Other
Component: general
git master
Other All
: Normal minor
: 2.x
Assigned To: Banshee Maintainers
Banshee Maintainers
Depends on:
Blocks:
 
 
Reported: 2007-01-05 08:25 UTC by Andrés G. Aragoneses (IRC: knocte)
Modified: 2008-10-24 23:56 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Copy the .mo files on "make run" (656 bytes, patch)
2008-09-15 20:59 UTC, Bertrand Lorentz
committed Details | Review

Description Andrés G. Aragoneses (IRC: knocte) 2007-01-05 08:25:23 UTC
It starts with English language, instead of the language configured in the system. If I 'sudo make install', it starts in the correct language.

Other information:
Comment 1 Andrés G. Aragoneses (IRC: knocte) 2007-01-11 20:32:45 UTC
If launched with the variables LC and LANG set, it gives the following warning:


(banshee.exe:13823): Gtk-WARNING **: Locale not supported by C library.
        Using the fallback 'C' locale.

(Banshee:13823): Gdk-WARNING **: locale not supported by C library
Comment 2 Josiah Ritchie - flickerfly 2007-08-23 03:27:39 UTC
Please specify the latest version of banshee you have been able to test this against or let us know that this is no longer a problem. Thank you for helping us keep track of your bug.
Comment 3 Andrés G. Aragoneses (IRC: knocte) 2007-08-23 07:50:23 UTC
Thanks for your comment.

Well, I think I tested it on 0.11(.?). Has arrived a fix for this? This is a common problem in most common Mono applications, for example MonoDevelop. The reason is that the program launched with "make run" runs configured as it was installed (however one could run the program without "make install").

We should copy the .bmo files in a temporary place for people that wants to run without installing.
Comment 4 Andrés G. Aragoneses (IRC: knocte) 2008-01-17 11:31:57 UTC
This is related to:

https://bugzilla.novell.com/show_bug.cgi?id=354399

In that bug, in comment#1 it's mentioned a commit number that I think it partially fixes this issue.
Comment 5 Benjamín Valero Espinosa 2008-05-26 14:33:59 UTC
I am running the SVN version and reproducing this bug, either from MonoDevelop as from the console. Doing 'make install' and running does use the locale.
Comment 6 Bertrand Lorentz 2008-08-27 21:09:42 UTC
This happens because banshee only looks for the .mo files under <InstalledApplicationDataRoot>/locale.

When installed, this is something like /usr/share/locale. When run with "make run" this is bin/share/locale.

So I guess that by fiddling with Makefiles, one could have the .mo files copied to the proper place under bin/share/locale.

MonoDevelop seems to be doing this here :
http://anonsvn.mono-project.com/viewvc/trunk/monodevelop/main/po/Makefile.am?view=markup
Comment 7 Bertrand Lorentz 2008-09-15 20:53:17 UTC
After looking a bit into this, it seems that, if we fix this the way MonoDevelop does, it would mean replacing the default po/Makefile.in.in by our own Makefile.am.
I don't think this would be a good idea.

I'll attach a patch that tries another approach.
Comment 8 Bertrand Lorentz 2008-09-15 20:59:23 UTC
Created attachment 118792 [details] [review]
Copy the .mo files on "make run"

This patch modifies the "run" makefile rule so that the .mo files are copied to the proper location under "bin/share/locale/".
With this patch, "LC_ALL=fr_FR make run" start banshee in french.

I'm stretching the limits of my Makefile-fu here, and I'm not completely convinced this is a good way to do this...
So comments welcome !
Comment 9 Aaron Bockover 2008-10-24 23:56:49 UTC
Bertrand - thanks for the patch, your make-fu is quite good :)

The approach fine, considering the po directory is special in the build, and really if you are going to run uninstalled you should use the run target anyway, and not from the bin directory. 

Committed, thanks!