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

[debian-users:41343] [Sarge] コンソール (runlevel2) からの X 起動 & set-language-env



飛田です。

Sarge 導入テストマシンで set-language-env した環境で、複数の
WindowManager を導入して試してみています。

ログイン時に wdm で WindowManager を選択するような場合は問題ないようで
すが、個人的には wdm とか xdm は使いたくないので外しています。

この環境で、Woody の時のように set-language-env で導入される
~/.xsession などで WINDOW_MANAGER=hoge な環境変数を設定し切替えようと
思ったのですが、どうもこれが効きません。

調べてみた所、青木さんが報告されていますが、
 http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=168347
の問題があるようで、.xsession での WindowManager 切替えが出来なくなっ
ています。

;; /etc/X11/ 以下で全部やっちゃってて ~/.xsession では手が出せない。


/etc/alternatives に登録されている
x-session-manager -> x-window-manager ..
というような一定の順で起動されてしまい、~/.xsession で WINDOW_MANAGER
を設定しここで起動しようとした所で無視されてしまいます。

~/.xsession によらず任意の WindowManager を起動するには、

 ~$ startx (/usr/bin/wmaker|/usr/bin/startkde|/usr/bin/gnome-session|[...])

のように startx の引数としてフルパスでそれぞれの本体を呼んでやる必要が
あるようです。

また、KDE は大丈夫なようですが、WindowMaker の場合、どうも LANG=C の 
TERM=linux な状態から起動すると LANG=C を見ているようで、
set-language-env しているのに日本語が通らない環境が起動してしまいます。

 ~$ startx /usr/bin/wmaker

として起動し、Eterm を開き env してみると...

 ~$ env
  HZ=100
  IFS=    

  SHELL=/bin/bash
  TERM=Eterm
  JLESSCHARSET=latin1
  COLORTERM_BCE=Eterm
  WINDOWID=6291525
  HUSHLOGIN=FALSE
  WMAKER_BIN_NAME=/usr/bin/WindowMaker
  ETERM_THEME_ROOT=/usr/share/Eterm/themes/Eterm
  USER=shinichiro

 [...]

  PAGER=lv
  MAIL=/var/mail/shinichiro
  PATH=/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games
  WRASTER_COLOR_RESOLUTION0=4
  PWD=/home/shinichiro
  EDITOR=vi
  JSERVER=lune.stained-g
  LANG=C
  ETERM_VERSION=0.9.2
  COLORFGBG=7;default;0
  SHLVL=4
  HOME=/home/shinichiro
  GNUSTEP_USER_ROOT=/home/shinichiro/GNUstep
  GLV=-Al1
  LESS=-M
  LOGNAME=shinichiro
  DISPLAY=:0.0
  COLORTERM=Eterm
  XAUTHORITY=/home/shinichiro/.Xauthority
  _=/usr/bin/env
  
という悲惨な結果 (というか set-language-env が無視されてしまう) が得ら
れてしまいます。

そこで、env LANG=ja_JP.eucJP startx /usr/bin/wmaker として、上記と
diff をとってみると、

--- wmaker-env.txt      2004-09-09 22:40:06.000000000 +0900
+++ wmaker-env2.txt     2004-09-09 22:54:18.000000000 +0900
@@ -3,9 +3,9 @@
 
 SHELL=/bin/bash
 TERM=Eterm
-JLESSCHARSET=latin1
+JLESSCHARSET=japanese-euc
 COLORTERM_BCE=Eterm
-WINDOWID=6291525
+WINDOWID=6291529
 HUSHLOGIN=FALSE
 WMAKER_BIN_NAME=/usr/bin/WindowMaker
 ETERM_THEME_ROOT=/usr/share/Eterm/themes/Eterm
@@ -18,13 +18,13 @@
 PWD=/home/shinichiro
 EDITOR=vi
 JSERVER=lune.stained-g
-LANG=C
+LANG=ja_JP.eucJP
 ETERM_VERSION=0.9.2
 COLORFGBG=7;default;0
 SHLVL=4
 HOME=/home/shinichiro
 GNUSTEP_USER_ROOT=/home/shinichiro/GNUstep
-LV=-Al1
+LV=-Oej
 LESS=-M
 LOGNAME=shinichiro
 DISPLAY=:0.0

となります。

一方、wdm から WindowMaker を選択して起動した場合、
env LANG=ja_JP.eucJP startx /usr/bin/wmaker した場合との diff は次の通
りで LANG=ja_JP.EUC-JP となってますが、なんとか大丈夫そうです。

--- wmaker-env2.txt     2004-09-09 22:54:18.000000000 +0900
+++ wmaker-env3.txt     2004-09-09 23:06:18.000000000 +0900
@@ -1,27 +1,27 @@
-HZ=100
+SSH_AGENT_PID=11438
 IFS=   
 
-SHELL=/bin/bash
 TERM=Eterm
+SHELL=/bin/bash
 JLESSCHARSET=japanese-euc
 COLORTERM_BCE=Eterm
-WINDOWID=6291529
-HUSHLOGIN=FALSE
+WINDOWID=8388681
 WMAKER_BIN_NAME=/usr/bin/WindowMaker
 ETERM_THEME_ROOT=/usr/share/Eterm/themes/Eterm
 USER=shinichiro

[...]

+SSH_AUTH_SOCK=/tmp/ssh-ZrwCj11380/agent.11380
 PAGER=lv
-MAIL=/var/mail/shinichiro
+XPSERVERLIST=:64 
 PATH=/usr/local/bin:/usr/bin:/bin:/usr/bin/X11:/usr/games
 WRASTER_COLOR_RESOLUTION0=4
 PWD=/home/shinichiro


なので、bug:168347 が片付くまで (片付くのか?) の場当たり的回避策としては、

 [Q] コンソールから startx で WindowMaker を起動したら文字化けしてしま
     います。
 [Q] ~/.xsession で WINDOW_MANAGER 環境変数を設定したのですが効きませ
     ん。

 [A] env LANG=ja_JP.eucJP startx /usr/bin/wmaker して下さい。
     KDE を起動したい場合は /usr/bin/startkde 、GNOME の場合は
     /usr/bin/gnome-session というように startx の引数としてその
     WindowManager の起動プログラムをフルパスで指定して下さい。

となるかと思います。

-- 
  Shinichiro HIDA  mailto:shinichiro@xxxxxxxxxxxxx
  GPG fingerprint = 5F2D 1656 FFF6 F691 A51C  5E61 E416 D398 470C 1CE9



;; Branden さん、なんかカリカリしてるみたいなので誰かが強力に説得しな
;; いと当分無理そうな気が..