]
トップ «前の日記(2007-04-08) 最新 次の日記(2007-04-10)» 編集

Yukiharu YABUKI の tDiary



このtDiaryを検索します。

2007-04-09 [長年日記]

_ [Debian] 第2回 関西 Debian 勉強会

Debian GNU/Linux 4.0 ("Etch")も出たことだし、勉強会もがんばりましょ。原案はこんな感じで(http://wiki.debian.org/KansaiDebianMeeting20070421) 受け付けシステムは、http://cotocoto.jp/ を使ってみました。携帯電話も対応みたいで、便利になるかな。

_ ぐるなびやhotpepper.jp

結構、食べ放題特集とかやってて、食べ放題のお店ってあるものなのね。

_ [Debian] Etch で Opera が動かない件について

DebianHELPより。(http://www.debianhelp.org/node/5925)適当にサマライズ

質問

Etchにアップグレードしたら、operaが動かないんだけど。

答え

既知の問題です。対処方法は、(1)libx11とlibx11-devのバージョンを2:1.0.3-6 に落すこと。または(2)Xの色数を16ビットにする。または(3)operaのweelkyビルドhttp://snapshot.opera.com/unix/Weekly-635/を使うこと

Markさんは、operaのweeklyビルドを使うことにしたようです。

_ [Debian] cwiid #3

Debパッケージのwmiputを動かすためには、適切な場所に設定ファイルを書いて置く必要がある。ユーザの環境で実行すると、下記のコードの部分が実行される。main.c
    95          /* Load Config */
    96          if ((tmp = getenv("HOME")) == NULL) {
    97                  wminput_err("unable to find home directory");
    98                  config_search_dirs[0] = WMINPUT_CONFIG_DIR;
    99                  plugin_search_dirs[0] = CWIID_PLUGINS_DIR;
   100                  config_search_dirs[1] = plugin_search_dirs[1] = NULL;
   101          }
   102          else {
   103                  snprintf(home_config_dir, HOME_DIR_LEN, "%s/.cwiid/wminput", tmp);
   104                  snprintf(home_plugin_dir, HOME_DIR_LEN, "%s/.cwiid/plugins", tmp);
   105                  config_search_dirs[0] = home_config_dir;
   106                  plugin_search_dirs[0] = home_plugin_dir;
   107                  config_search_dirs[1] = WMINPUT_CONFIG_DIR;
   108                  plugin_search_dirs[1] = CWIID_PLUGINS_DIR;
   109                  config_search_dirs[2] = plugin_search_dirs[2] = NULL;
   110          }
   111
   112          if (conf_load(&conf, config_filename, config_search_dirs,
   113            plugin_search_dirs)) {
   114                  return -1;
   115          }
ということで、~/.cwiid/wminputの下などに、config_filenameに設定されているファイル名を捜しに行く訳です。
プラグインの置き場所は、
yabuki@Ernalda:~$ ls -la /usr/lib/cwiid/plugins/
合計 32
drwxr-xr-x 2 root root 4096 2007-04-02 16:54 .
drwxr-xr-x 3 root root 4096 2007-03-31 02:58 ..
-rw-r--r-- 1 root root 4648 2007-04-02 16:54 acc.so
-rw-r--r-- 1 root root 4616 2007-04-02 16:54 ir_ptr.so
-rw-r--r-- 1 root root 4744 2007-04-02 16:54 nunchuk_acc.so
に配置してある。こういうのをちゃんと設定ファイルに書き込んであげればいいかと。上記のソース中にある WMINPUT_CONFIG_DIR は、makefile で与えているようだ。
yabuki@Ernalda:~/src/deb-package/cwiid/cwiid-0.5.02$ grep -nri WMINPUT_CONFIG_DIR *
grep: debian/libwiimote0-dev/usr/lib/libwiimote.so: そのようなファイルやディレクトリはありません
grep: debian/wminput/usr/share/wminput/plugins: そのようなファイルやディレクトリはありません
wminput/Makefile:11:    -DWMINPUT_CONFIG_DIR=\"$(WMINPUT_CONFIG_DIR)\"
wminput/Makefile:15:WMINPUT_CONFIG_DIR = $(CWIID_CONFIG_DIR)/wminput
wminput/Makefile:32:    install -d $(WMINPUT_CONFIG_DIR)
wminput/Makefile:33:    install configs/* $(WMINPUT_CONFIG_DIR)
wminput/Makefile:34:    ln -sf $(WMINPUT_CONFIG_DIR)/acc_ptr \
wminput/Makefile:35:            $(WMINPUT_CONFIG_DIR)/default
wminput/Makefile:38:#   rm -f $(WMINPUT_CONFIG_DIR)/default
wminput/Makefile:40:#           rm -f $(WMINPUT_CONFIG_DIR)/$$c;        \
wminput/Makefile:42:#   rmdir $(WMINPUT_CONFIG_DIR); true
wminput/main.c:98:              config_search_dirs[0] = WMINPUT_CONFIG_DIR;
wminput/main.c:107:             config_search_dirs[1] = WMINPUT_CONFIG_DIR;
wminput/Makefile.in:11: -DWMINPUT_CONFIG_DIR=\"$(WMINPUT_CONFIG_DIR)\"
wminput/Makefile.in:15:WMINPUT_CONFIG_DIR = $(CWIID_CONFIG_DIR)/wminput
wminput/Makefile.in:32: install -d $(WMINPUT_CONFIG_DIR)
wminput/Makefile.in:33: install configs/* $(WMINPUT_CONFIG_DIR)
wminput/Makefile.in:34: ln -sf $(WMINPUT_CONFIG_DIR)/acc_ptr \
wminput/Makefile.in:35:         $(WMINPUT_CONFIG_DIR)/default
wminput/Makefile.in:38:#        rm -f $(WMINPUT_CONFIG_DIR)/default
wminput/Makefile.in:40:#                rm -f $(WMINPUT_CONFIG_DIR)/$$c;        \
wminput/Makefile.in:42:#        rmdir $(WMINPUT_CONFIG_DIR); true
ということで、debian/rulesファイルを読む。
#!/usr/bin/make -f
 
include /usr/share/cdbs/1/rules/debhelper.mk
include /usr/share/cdbs/1/class/autotools.mk
 
# In order to regenerate 'debian/control' :
#    DEB_AUTO_UPDATE_DEBIAN_CONTROL=yes fakeroot debian/rules clean
# Then check manually if everything's ok
 
DEB_CONFIGURE_EXTRA_FLAGS := --with-cwiid-config-dir="\$${debroot}/etc/cwiid" --disable-ldconfig
 
DEB_MAKE_INSTALL_TARGET := install debroot=$(CURDIR)/debian/tmp prefix=$(CURDIR)/debian/tmp/usr
 
DEB_INSTALL_CHANGELOGS_ALL := ChangeLog
 
configure/libwiimote0-dev::
        mkdir -p $(CURDIR)/debian/tmp/usr/include
 
configure/libwiimote0::
        mkdir -p $(CURDIR)/debian/tmp/usr/lib
 
configure/wmgui::
        mkdir -p $(CURDIR)/debian/tmp/usr/bin
 
configure/wminput::
        mkdir -p $(CURDIR)/debian/tmp/usr/bin
 
binary-install/wminput::
        chmod -x $(CURDIR)/debian/wminput/etc/cwiid/wminput/*
 
clean::
        rm -rf config.log
CDBSスタイルになっている。 /etc/cwiidの下。 Debianは、設定ファイルを/etcの下に置くという掟がある。そのため
yabuki@Ernalda:~/src/deb-package/cwiid/cwiid-0.5.02/wminput$ ls -laR  /etc/cwiid/
/etc/cwiid/:
合計 16
drwxr-xr-x   3 root root 4096 2007-03-31 02:58 .
drwxr-xr-x 159 root root 8192 2007-04-09 21:18 ..
drwxr-xr-x   2 root root 4096 2007-04-02 16:55 wminput
 
/etc/cwiid/wminput:
合計 36
drwxr-xr-x 2 root root 4096 2007-04-02 16:55 .
drwxr-xr-x 3 root root 4096 2007-03-31 02:58 ..
-rw-r--r-- 1 root root   70 2007-03-20 21:47 acc_ptr
-rw-r--r-- 1 root root  628 2007-03-20 21:47 buttons
lrwxrwxrwx 1 root root   84 2007-04-02 16:54 default -> /home/yabuki/src/deb-package/cwiid/cwiid-0.5.02/debian/tmp/etc/cwiid/wminput/acc_ptr
-rw-r--r-- 1 root root  406 2007-03-20 21:47 gamepad
-rw-r--r-- 1 root root   77 2007-03-20 21:47 ir_ptr
-rw-r--r-- 1 root root   63 2007-03-20 21:47 neverball
-rw-r--r-- 1 root root   94 2007-03-20 21:47 nunchuk_acc_ptr
でみてみると、あれれ??? 本当は、/etc/cwiid/wminput/defaultは、同じディレクトリにあるacc_ptrにln -s(ソフトリンク)をしないといけないんじゃないかなー。acc_ptrの中身をみるとちゃんとコンフィグレーションがされている風味。あとは、wminput に設定ファイルは /etc/cwiid/の下にあるぞってのを教えてやるとうまく行きそうな予感。--- うまくいきました。

関西 Debian 勉強会あたりでネタにするか。