2007年04月23日

オムライス、大根とツナのマヨネーズサラダ

玉葱、鶏肉、ごはん、ケチャップでチキンライスを作り、薄焼き卵で巻く。

compiz KDEを使ってみた

Etchリリース記念でいっぱいunstableが変わったので、unstableなLet's Y2も久々にdist-upgrade。

uimでひどいことになってる(uim-gtk2.0がインストールできない、backtraceの変なエラーが出る)が、これはメンテナもわかっているだろうということで…。もう1つの問題はXのintelドライバで、横に長い変な周波数になってる。modesttingでも情報取れないようで、四苦八苦したけどあきらめてEtchのに戻しておいた(バグ報告は多数あり、upstream送りになってる)。

それはさておき、experimentalにcompiz-kdeというのが入っているので、試してみた。

環境としてはとりあえずunstableのX+KDE環境を構築した上に、experimentalを追加してcompiz-kdeパッケージを入れてあげればよい(apt-get -t experimental install compiz-kde)。xorg.confのServerLayoutに「Option "AIGLX" "true"」を追加するなどはほかのcompiz/berylと同様。

compizの呼び出しは、Debianでは/usr/bin/compizはcompiz.realという本物のラッパーになっており、GL設定をチェックしてくれたりデコレータを呼び出してくれたりといろいろ便利である。が、これがよくトラブルの元になってたり…。現状、compiz-kdeと共に使う場合には次のような問題がある。1. デコレータはgtk-window-decoratorの代わりにkde-window-decoratorを呼び出さねばならない。2. gconfプラグインはKDE環境だと動かなさげ?このため、gconfを先に入れようとすると必要なプラグインが読まれずウィンドウ操作ができない。

ということで、/usr/bin/compizを/usr/bin/compiz.kdeという名前ででもコピーして、これを編集することにする。

 ...
COMPIZ_OPTIONS="--no-fbo"
COMPIZ_PLUGINS="decoration wobbly fade minimize cube rotate zoom scale move resize place switcher annotate clone plane png screenshot svg water dbus" (余計なのものありそう…)
 ...
# start the kde-window-decorator if present (gtk→kdeに)
if [ -x /usr/bin/kde-window-decorator ]; then
        /usr/bin/kde-window-decorator --replace &
fi
 ...

あとは、~/.xsessionでcompiz.kdeをstartkdeの前に置く。

#!/bin/sh
 ...
compiz.kde --replace &
exec startkde

一見するとkwinから変わっていないのだけど、これでウィンドウを操作するとcompizらしくうねったり飛んだり跳ねたりする。Y2の855Gで特にパワー的な問題はなさそう(CPU速度は1.2GHzくらいに落としてる状態)。

ただ現状、マウスオーバーフォーカスができないような感じだ。コントロールセンターとの統合が進めばできるようになりそうだけど、gconfは読めないし、直接ソースを書き換えることになるんだろうか。kwinrcは一応読むようになってるみたいなのだけど、深追いする時間がなかったのでここまで。ひととおり遊んだので、compiz-kde体験終了(笑)。

あうぅ、ACPIサスペンドからの復帰に失敗するようになっている……

[update 2007.04.23] 会社のnVidiaでやってみたら、experimentalのドライバを使い、gconfのままで動いた。ただ、「pixmap 0x1200039 can't be bound to texture /usr/bin/compiz.real: Couldn't bind redirected window 0x1400006 to texture」が出まくるので解決を模索中。ちなみにY2のACPIサスペンド復帰は未だに解決できず…困ったなぁ。