第8回Debian勉強会 日付:2005/9/10 時間:18:10-21:00 場所:あんさんぶる荻窪4F環境学習室 参加者:上川さん、みつかさん、中島さん、GOTOMさん、小林さん、えとーさん、鵜飼さん、ゆきちさん、岡島さん、八田さん、やまねさん、武藤さん、澤田 (6:11:11 PM):開始 (6:14:56 PM):DWNクイズ開始 (6:31:00 PM):答え合わせ (6:38:05 PM):カーネルパッケージをlinux-2.6としたのは各バージョンでBTSが開かれていたのをまとめるためでもあるらしい (7:07:51 PM):debconfについて by 鵜飼さん (7:09:37 PM):debian-policy(debconf_specification.html)、debconf-doc(README, namespace.txt, examples/, README.LDAP, debconf.schema)参照 (7:10:42 PM):debconfはLDAPを使えるらしい (7:13:27 PM):debconf-get-selectionsで設定値が取得できる (7:15:16 PM):debconf-showで個々のパッケージの設定値を取得することもできる (7:16:15 PM):debconf-communicateを使うとdebconfプロトコルで通信可能 (7:18:29 PM):パッケージ名.templatesで質問を書いてパッケージ名.configで使う (7:20:02 PM):翻訳したい場合po-debconfを使ってdebconf-gettextize (7:20:34 PM):「はい」「いいえ」はフロントエンドによって表示が違うらしいので訳すときは注意 (7:21:56 PM):debconfが使うデータは/var/cache/debconfにある (7:23:50 PM):templates.datにテンプレート、パッケージ/文字列、型、デフォルト、説明 (7:24:29 PM):config.dat, passwords.datに質問データ、設定値 (7:25:26 PM):dpkg-preconfigure(apt-utils)がdebのunpack前にconfigを呼び出す (7:26:22 PM):unpack前なのでconfigで自分のパッケージに入っているファイルは使えません (7:27:48 PM):dpkg-reconfigureでconfig、preinst、postinstをやり直してくれる(Seenなものも聞き直す) (7:31:52 PM):confmoduleをsourceするとfrontendがexecされる。で、元のscriptが別に起動される (7:33:05 PM):以後、frontendとscriptで通信 (7:33:47 PM):confmoduleをsourceする前に変なことは書かないようにしましょう (7:38:14 PM):debconf-get-selectionsはタブ、debconf-set-selectionsはスペース1文字区切りなのでコピペの時とか注意 (7:42:43 PM):戻る場合はdb_capb backupする必要がある (7:43:00 PM):が、booleanは戻れない (7:43:30 PM):true、falseをselectで聞けば可能 (7:44:49 PM):質問に答えるとdb_goは成功する、取り消しをするとエラーを返すのでそれを利用して取り消しを実装可能 (7:45:35 PM):DEBCONF_DEBUG環境変数を設定するとデバッグ情報を取得可能。".*"を指定すると全てのデバッグ情報が表示される (7:59:33 PM):最後に「この値でいいですか」的なものを出力するためには${鍵文字列}としておいてdb_subst (8:06:22 PM):debconfはあくまでconfigからpostinstまでのcacheなので/etcにあるものがmaster。/etcにあるものを反映してdebconfの質問の値を変えるのはconfigの仕事 (9:01:42 PM):お開き