Xnest環境でrioを動かす
rioはX Window Systemのウィンドウマネージャとして実装されている.ということで,Xnest環境でrioを立ち上げてみよう.Xnestの使い方は,「Xのウィンドウで別のデスクトップを表示するには」が参考になるだろう.Xnestがインストールされていない場合は,xorg-x11-Xnestのようなパッケージをインストールする必要がある.
では,早速試してみよう.
$ xauth list|grep localhost/unix:0 localhost/unix:0 MIT-MAGIC-COOKIE-1 45abc0815d05abeff7a89e45267f35c8 $ xauth add :1 MIT-MAGIC-COOKIE-1 45abc0815d05abeff7a89e45267f35c8 $ Xnest :1 & $ DISPLAY=:1 SHELL=rc rio &
Xnestのウィンドウ内でrioが起動する.rioの起動時に環境変数SHELLを設定しているのは,9termでbashの代わりにrcを使うためだ.ここはお好みで.Plan9portのrioはウィンドウマネージャとして実装されているので,本当のPlan9とは挙動が違う.例えば,9termのウィンドウ内でrioを実行したら,そのウィンドウ内に入れ子的にrioが立ち上がるが,Plan9portの場合は,次のようにエラー終了してしまう.
$ rio rio: it looks like there's already a window manager running; rio not started
LinuxとPlan9portで.profileを同じにすると,同名コマンドの扱い(パスの検索順序)が問題になるから,Plan9portを使うのは,Xnest環境でと割り切って,次のようなスクリプトを使うというのも一つの手かな.
#!/bin/bash PLAN9=/opt/plan9 PATH=$PLAN9/bin:$PATH export PLAN9 Xnest :1 & DISPLAY=:1 SHELL=rc rio
(追記:2008-08-30)p9pとLinuxのコマンドがバッティングする場合は、9コマンドを使えばよい。p9pのコマンドを優先して実行してくれる。