[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: environment not being passed to programs called directly from kde

khausler@gmx.de wrote:
Hello.  I discovered this by trying to get the euro displayed in
konsole, it worked when I started konsole from the command line, because
it inherited my environment from bash.

However when I click on the konsole link in the Panel, or type in
konsole in the Application Launcher, the euro will not work, it just
displays as ? (question mark).

To discover what environment KDE is passing to these applications I type
in "env > kde.env" in the Application Launcher.  (And diff it with a
corresponding bash.env, and trim out the irrelevant details.)

bash.env contains:


kde.env contains:

Even when I specify Germany in the control panel, and German as the
language, KDE always passes LANG=C to its applications.

I have no file (except maybe /etc/environment) that contains a line like
LANG=C.  Certainly my .xsession contains LANG=de_DE@euro.

Is your LANG exported? KDE doesn't seem to use it anyway (X does in some obscure ways use LC_ abd LANG vars, but KDE honors the control center settings AFAIK)... Also, double check that there is nothing overriding the LANG anywhere in the way (i had some problems with this, eg. 'echo blah | less' launched fortune :>).

Last resort is to create /usr/local/bin/<your_app> shellscript that sets LANG and execs /usr/bin/<your_app> (this should work if /usr/local/bin is before /usr/bin in your PATH)... This is similar to your hack, probably little bit cleaner (and a bit less probable to work).


Kurt Häusler

Yenar Calentaure
    mail: yenar(at)host.sk
homepage: http://yenar.host.sk
The universe is entering maintenance mode in 2 minutes. Please logout.
                                     -- Your administrator

Reply to: