無線LANを使えるようにする

今日の攻略目標は我が家のノートPCの無線LANアダプタ。以前は、NdisWrapperを使っていた。これはWindowsのネットワークドライバをLinuxで使えるようにするという何とも凄いドライバなのだが、でかいファイルの転送(apt-getなど)を行うとドライバごとお亡くなりになる痛い問題があった。(メール読むくらいだったら全然OKだけど。) 最近ネイティブのドライバの安定しているという話を、先週のMozilla Party 6.0で三浦さんに聞いたので、早速インストール。手順は以下の通り。ちなみに我が家はDebianです。

  1. Intel PRO/Wireless 2000BG Driver for Linuxからドライバをダウンロード(正確には、apt-get install ipw2200-source)
  2. module-assistantを実行。手順に従ってipw2200を選択、ビルドまで行う。
  3. http://ipw2200.sourceforge.net/firmware.phpからファームウェアの最新版をダウンロード。
  4. ダウンロードしたファームウェア ipw-2.2-*.fwを/use/lib/hotplug/firmware/ にインストール。
  5. 先ほどビルドしたdebパッケージをdpkg -iでインストール
  6. /etc/init.d/hotplug startするとipw2200がeth3として見えるようになる。
  7. あとは/etc/network/interfacesを適当に設定
  8. 必要に応じて/etc/hibernate/hibernate.confなども修正
  9. これで、ifup eth3 するとネットにつながるはず。

/etc/network/interfacesの書き方はこんな感じ

```plain /etc/network/interfaces auto eth1 iface eth1 inet dhcp wireless-essid ESS_ID wireless-mode Managed wireless-key s:Key


ESS_IDとKeyはそれぞれ各自の無線LANアクセスポイントで設定しているものを入れる。Keyの前にs:を付けるのを忘れないこと。

# .xsessionの謎に迫る

漢字変換ができないとか、localeが設定できないとかいろいろな問題があった我が家の環境だけども、Gnome Sessionを起動した場合はすべてうまくいくことが今日のちょっとした調査で分かった。そんなわけで、謎は深まるばかり。と言うことで、DebianにおいてXディスプレイマネージャ経由でログインした場合の起動シーケンスを追っかけることになった。

結論としては、_~/.xsessionが無視されていた_わけだが、さてなぜかという問題となる。僕はwdmでもkdmでも、ウィンドウマネージャを選んでログインしていたのだが、_これが間違い_。そんなわけで、Xの起動シーケンスを追っかけました。ざっくり起動シーケンスはwdmの場合で今回関係する話のみ書くと...

  1. ログインのウィンドウでユーザ名とパスワードを入れる
  2. このとき選択したウィンドウマネージャは~/.wm_styleに書き出される
  3. /etc/X11/wdm/Xsession を起動する。引数は~/.wm_styleの中身。
  4. /etc/X11/Xsessionの実行する。ざっくり/etc/X11/Xsession.d/ 以下のファイルを順に実行
  5. 20xfree86-common_process-args を実行。/etc/X11/Xsessionの引数を$STARTUPにいれる(_defaultなら引数は無し_)
  6. 50xfree86-common_determine-startupを実行。もし$STARTUPが設定されていないときは...
    * Xsession.configでallow-user-sessionと記述があり、$USERSESSION(~/.xsession)か$ALTSUERSESSION(~/.Xsession)が存在し、実行可能なら STARTUPに$STARTUPを設定
    * Xsession.configでallow-user-sessionと記述があり、$USERSESSION(~/.xsession)か$ALTSUERSESSION(~/.Xsession)が存在し、実行可能でないなら STARTUP="sh $STARTUP" を設定
  7. 99xfree86-common_startで、$STARTUP で指定したものを実行

ということで、kdmやwdmやgdmでウィンドウマネージャを指定して、ログインするとその設定を呼び出してしまう。これはこれで便利なのですが、僕のように軽いwmを使っていると、そのための.sessionに対応するものが無いようで実行されないし、~/.xsessionも読み込んでくれないので、環境設定がなされない。

ということで、ようやく.xsessionが認識されるようになったので、こんな感じに設定。

```bash ~/.xsession
#!/bin/bash
LANG=ja_JP.eucJP
PATH=$HOME/bin:$PATH
CVS_RSH=ssh
DEB_MULEUCS_UNICODE=on
export LANG CVS_RSH DEB_MULEUCS_UNICODE
env SSH_ASKPASS=/usr/bin/ssh-askpass ssh-add

if type kinput2 &> /dev/null ; then
  kinput2 -canna &
fi

XMODIFIERS=@im=kinput2 ; export XMODIFIERS
mlterm &
fluxbox

そんなわけで、解決してみれば、何ともしれないお話。それにしても設定がありきたりの方法でできないのは問題だと思う。(やっぱ~/.xsessionの方が嬉しいと思う。)

軽井沢ミーティング2018に参加

軽井沢ミーティング2018に初参加! 天気良くてよかった!さすがに5月末の週末は本当に天気が良い。Roadsterのイベントは前日入り出来る場合は可能な限り前日から参加している。主催者発表による今回の参加者は1975人、車はは1,002台。内訳は、NAは37%、NBは22%...… Continue reading

2017年も今日でおしまい

Published on December 31, 2017

Profoto A1の色温度の話

Published on December 21, 2017