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 693381 - Commands issued by keyboard shortcuts behave different than with alt+F2
Commands issued by keyboard shortcuts behave different than with alt+F2
Status: RESOLVED FIXED
Product: gnome-settings-daemon
Classification: Core
Component: general
3.6.x
Other Linux
: Normal normal
: ---
Assigned To: gnome-settings-daemon-maint
gnome-settings-daemon-maint
: 674995 (view as bug list)
Depends on:
Blocks:
 
 
Reported: 2013-02-07 23:13 UTC by André Costa
Modified: 2013-02-19 07:46 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
main: Set locale envvars on startup (1.80 KB, patch)
2013-02-11 08:55 UTC, Bastien Nocera
committed Details | Review

Description André Costa 2013-02-07 23:13:27 UTC
This was very hard to track, I hope I am filing it on the right place. It started with bug 692753 in which I reported gnome-terminal options being reset, but as I tested more thoroughly I found out that the problem is that the *same* commands behaved differently if I ran them from keyboard shortcuts or from alt+F2.

To make a long story short: running gnome-terminal from alt+t (set on the keyboard settings "Shortcuts" tab) resets terminal opacity to zero, while running it from alt+F2 respects configurations made to the profile.

Following advice from Christian Persch I set up a command to output the environment, and running it from a keyboard shortcut yields a different result than running it from alt+F2. The diff is:

~ diff keybind altf2

4d3
< DESKTOP_AUTOSTART_ID=10ee44445250437bb6135974084547510200000269310001
8a8,9
> GJS_DEBUG_OUTPUT=stderr
> GJS_DEBUG_TOPICS=JS ERROR;JS LOG
22a24,27
> LC_MEASUREMENT=pt_BR.utf8
> LC_MONETARY=pt_BR.utf8
> LC_NUMERIC=pt_BR.utf8
> LC_TIME=pt_BR.utf8
31c36
< QT_IM_MODULE=xim
---
> QT_IM_MODULE=ibus
51c56
< XMODIFIERS=@im=none
---
> XMODIFIERS=@im=ibus

Christian believes LC_NUMERIC could be the culprit here; it could be, because opacity is stored as a float number, and decimal separator differs from en_US (".") to pt_BR (",").

Bug 692753 has some additional info on the investigation process.
Comment 1 Bastien Nocera 2013-02-11 08:55:01 UTC
Created attachment 235684 [details] [review]
main: Set locale envvars on startup

When starting up, we tell gnome-session to set the environment variables
for new starting programs, but we don't set the environment for our
own children. Do this on start up, as soon as possible.
Comment 2 Bastien Nocera 2013-02-11 08:57:56 UTC
This should fix the LC_* variables not being set by gnome-settings-daemon for its own children, but that doesn't explain why gnome-terminal would use a locale-dependent decimal point.

Please test.
Comment 3 Bastien Nocera 2013-02-15 15:03:16 UTC
I'll consider this fixed, reopen if that's not the case

Attachment 235684 [details] pushed as aef9bb2 - main: Set locale envvars on startup
Comment 4 Christian Persch 2013-02-15 15:34:07 UTC
The IM module settings were different too in the diff in comment 0... any ideas about why?
Comment 5 Bastien Nocera 2013-02-15 16:35:07 UTC
(In reply to comment #4)
> The IM module settings were different too in the diff in comment 0... any ideas
> about why?

We didn't set them either. I'm fixing that in:
commit d69767eedc9f769160f7a06f1afa33e20358699e
Author: Bastien Nocera <hadess@hadess.net>
Date:   Fri Feb 15 17:33:45 2013 +0100

    main: Set our own IBus envvars as well
    
    Just as we set gnome-session's.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=693381
Comment 6 Mantas Mikulėnas (grawity) 2013-02-16 14:01:08 UTC
*** Bug 674995 has been marked as a duplicate of this bug. ***
Comment 7 André Costa 2013-02-17 17:53:49 UTC
(In reply to comment #2)
> This should fix the LC_* variables not being set by gnome-settings-daemon for
> its own children, but that doesn't explain why gnome-terminal would use a
> locale-dependent decimal point.
> 
> Please test.

Thks for the fix. Unfortunately I'll only be able to confirm if it works when it gets merged downstream to Fedora 18 (currently gnome-settings-daemon-3.6.4-3) :-( I'll file a bug on their bugzilla in order to speed things up.
Comment 8 Bastien Nocera 2013-02-19 07:46:58 UTC
Pushed to gnome-3-6 as well.