東京エリア Debian 勉強会
第 93 回 2012 年 10 月度

上川純一
dancer@debian.org

2012 年 10 月 20 日

設営準備にご協力ください。

会場設営よろしくおねがいします。

Agenda
注意事項
飲食禁止
宗教禁止
営利活動禁止最近あった Debian 関連のイベント報告
第 91 回 東京エリア
Debian 勉強会
第 0 回 Debian パッ
ケージング道場

DWN quiz
事前課題紹介Haskell の Debianpackaging 周辺について語ります
レゴでなめこ収穫期
xf86-input-mtrackDWN quizDebian 常識クイズ

Debian の常識、もちろん知ってますよね? 知らないなんて恥ずかしくて、知らないとは言えないあんなことやこんなこと、みんなで確認してみましょう。
今回の出題範囲はdebian-devel-announce@lists.debian.org,debian-devel@lists.debian.org に投稿された内容とDebian Project News などからです。

問題 1. 9/29 に行われた Debian 6.0 のアップ
デートは何回目でしょうか。

A5

B6C7

問題 1. 9/29 に行われた Debian 6.0 のアップ
デートは何回目でしょうか。
答えは:

A5

B6C7

B

問題 1. 9/29 に行われた Debian 6.0 のアップ
デートは何回目でしょうか。

解説： 6.0.6 です。

問題 2. DMUA フィールドがなくなり、 Debian
Maintainer のアップロードが変更されます。今後、アップロードの際にどのように作業する必要があるか？

A FTP master に電話
B スポンサーに dak の処理を依頼する
C 専用アップローダにアップロード

問題 2. DMUA フィールドがなくなり、 Debian
Maintainer のアップロードが変更されます。今後、アップロードの際にどのように作業する必要があるか？
答えは:

A FTP master に電話
B スポンサーに dak の処理を依頼する
C 専用アップローダにアップロード

B問題 2. DMUA フィールドがなくなり、 Debian
Maintainer のアップロードが変更されます。今後、アップロードの際にどのように作業する必要があるか？

解説：問題 3. IRC 経由で VCS リポジトリを監視するサービスで終了したものは？

A ICPO

B NPA

C CIA

問題 3. IRC 経由で VCS リポジトリを監視するサービスで終了したものは？
答えは:

A ICPOB NPAC CIAC問題 3. IRC 経由で VCS リポジトリを監視するサービスで終了したものは？

解説： KGB に移行。 ICPA: International Criminal PoliceOrganization, NAP:National Police Agency, CIA: Central
Intelligence Agency

問題 4. Debian Policy メンテナに新しく入ったのは誰か？

A Kei Hibino

B Colin Watson

C Charles Plessy問題 4. Debian Policy メンテナに新しく入ったのは誰か？
答えは:A Kei Hibino

B Colin Watson

C Charles PlessyC

問題 4. Debian Policy メンテナに新しく入ったのは誰か？

解説： Andrew McMillan, Colin Watson, Manoj Srivastava が抜けた

問題 5. Checksums-SHA1,SHA256 の取り扱いが変更になったが、どう変更されたか？

A 今まで無視されていました。
ごめんね。
B オプションだったので、必須としました。
C これらは廃止し、 SHA-512のみにします。

問題 5. Checksums-SHA1,SHA256 の取り扱いが変更になったが、どう変更されたか？
答えは:

A 今まで無視されていました。
ごめんね。
B オプションだったので、必須としました。
C これらは廃止し、 SHA-512のみにします。

B

問題 5. Checksums-SHA1,SHA256 の取り扱いが変更になったが、どう変更されたか？

解説： Bug#690293

事前課題

岩松 信洋(1) erlang と Haskell を少々。
(2) Real World Haskell。プログラミング Erlang。
(3) Erlang の ビルドシステムである rebar をもうちょっと理解したい。

yamamoto(1) 関数型プログラミング言語の利用経験 − なし (2) お勧め書籍 − 読んだこと、ありません (3) 使ってみたいソフト − 特になし
でも、 haskell はなんか面白そうだし、学んでみようかな？ とか考えています。

alice.ferrazzi鈴木崇文(1)Debian での関数型プログラミング言語の利用経験とその時に感じた事
柄（ Lisp, Emacs Lisp, OCaml, Haskell 等） Erlang ・・・ さわり程度ですが、 Riak などの実用レベルのソフトウェアで使用されている点や、分散環境や無停止に言語レベルで対応されている点が面白かったです。 Riak から情報を取ったり入れたりするだけならば比較的簡単に操作できました。
Haskell・・・ さわり程度ですが、 Haskell 好きな人が多いため学ぶには良い言語だと感じました。
(2) 関数型プログラミング言語初心者に向けたお勧め書籍とそのウリの紹介
Erlang はなかなか本がなかったです。 Haskell は「 すごい Haskell たのしく学ぼう！ 」が読みやすいように感じますが、まだ理解できてません。
(3) 関数型言語で実装されている、使ってみたいソフトをあげてください
Riak xmonad吉野 (yy y ja jp)(1) 最近 Haskell を触っています． cabal-debian をもう少し知りたいです．

キタハラ(1) Haskell 入門書のサンプルを動かした程度、 apt-get で簡単に導入できて感動したような記憶が・・・ 。 (2) Haskell の入門書を 2 冊ほど読みましたが、共に monad で挫折した、最近の本は読んでいない。 (3) 特になし。

dictoss(杉本 典充)(1) emacs.el を書くくらいでなんとなく使っている感じです。シングルクォーテーションは閉じなくていい場合があるのでそれに戸惑うことがあります。

野首elisp でちょっと major mode と shinbum module を書いてみたことがあるぐらいです。関数型プログラミングというレベルに至りませんでした。

@Lost dog(1) Haskell:型安全のありがたみが分かった (2)『 すごい Haskell たのしく学ぼう!』は関数型の雰囲気を俯瞰できる。本気で勉強するなら、もっと王道のテキストを選んだほうがよいかも。 (3) yi-editor

日比野 啓(1) Haskell, OCaml ともに Debian には多数のパッケージがあってすばらしいです。
(2)
プログラミング Haskell- Graham Hutton (著), 山本 和彦 (翻訳)]最初に読むならこれです。関数プログラミングのトピックを平易に解説しならが Haskell を試していきます。
すごい Haskell たのしく学ぼう!
- Miran Lipovaa (著), 田中 英行 (翻訳), 村主 崇行 (翻訳)「 プログラミング Haskell」の次はこれだと思います。より複雑な型の機能をも含めて Haskell の解説が進んでいきます。

Real World Haskell 実戦で学ぶ関数型言語プログラミング- Bryan O’Sullivan (著), John Goerzen (著), Don Stewart (著),山下 伸夫 (翻訳), 伊東 勝利 (翻訳), 株式会社タイムインターメディア (翻訳)
実際に Haskell を現場で利用してる人たちが書いた本としての価値がある本です。 Haskell にもいろいろなライブラリがあり、その利用例として参考になると思います。少し古いのが問題点です。

xf86-inputmtrackxf86-input-mtrack

昔の Macbook
pre-multitouch サポート
最近の Macbook Pro / Air /Magic Trackpad
マルチタッチサポート。
最初は synaptics ドライバでは動作しませんでした。
xserver-xorg-input-mrack / multitouch を使う必要があります。

synaptics と mtrack

synaptics では、プロトコル A のみのサポート（ だった？ ）これはタッチ ID を持っていないため、トラッキングコンタクトを管理できません。
mtrack では、タッチ ID をサポートしたプロトコル B をサポート。これにより、より細かいタッチパッドの制御ができるようになっています。
Macbook Pro 等に搭載されている BCM5974 の機能をサポートしています。

また、「 プロトコル B」を Linux カーネルから受信し、それを X ドライバにわかりやすい（ 人間にとってわかりやすい）形にデータを形成するライブラリ mtdev を使います。

プロトコル A
ABS_MT_POSITION_X x[0]ABS_MT_POSITION_Y y[0]SYN_MT_REPORT
ABS_MT_POSITION_X x[1]ABS_MT_POSITION_Y y[1]SYN_MT_REPORTSYN_REPORT

プロトコル B
ABS_MT_SLOT 0
ABS_MT_TRACKING_ID 45
ABS_MT_POSITION_X x[0]ABS_MT_POSITION_Y y[0]ABS_MT_SLOT 1
ABS_MT_TRACKING_ID 46
ABS_MT_POSITION_X x[1]ABS_MT_POSITION_Y y[1]SYN_REPORTmultitouch と mtrack

multitouch
基本的な設定mtrackmultitouch からのフォーク。
細かい機能のサポート。

Debian で使う

Debian では既にパッケージ化されており、 APT でインストールできます。
$ sudo apt-get install xserver-xorg-input-mtrack

デフォルトの設定

Section "InputClass"
MatchIsTouchpad "true"
Identifier "Multitouch Touchpad"
Driver "mtrack"
EndSection

インストールした段階では、デフォルトの設定で動作します。
細かい設定を行うために多くの項目があります。
項目
TrackpadDisable
Sensitivity
FingerHigh
FingerLow
IgnoreThumb
IgnorePalm
DisableOnThumb
DisableOnPalm
ThumbRatio
ThumbSize
PalmSize.......

内容
トラックパッド機能の動作内容と無効化
トラックパッドのスピード
指がタッチとして検知される圧力
指がリリースとして検知される圧力親指であるとわかるタッチを無視するか手の平であるとわかるタッチを無視するか
親指がさわっているとき全てのトラックパッドを手の平ががさわっているとき全てのトラックパッ
親指の幅/長比率
親指の最小限のサイズ
手の平の最小限のサイズ

有効な設定トラックパッドのシングルタップを無効にする
トラックパッドに触っても（ シングルタップしても）何も起きなくなります。
Option "TapButton1" "0"
Option "TapButton2" "0"
Option "TapButton3" "0"有効な設定２本指スクロールの動きをを OS X と同じにする
Option "ScrollUpButton" "5"
Option "ScrollDownButton" "4"

その他の情報

現在の mtrack ドライバは synaptics のように設定値を動的に変更できません。
これでは細かい設定等を行う時に大変なので常に設定を変更できるようにするためのパッチを作成し、アップストリームに送りました。 https://github.com/
BlueDragonX/xf86-input-mtrack/pull/41
パッチを適用し、以下の設定を行なって X サーバを立ち上げると動的に設定を変更できるようになります。
Option "SHMConfig" "true"

設定ツール

肝心の設定用のツールですが、適当に作ったので後日公開します。

デモ

Debian でマルチタッチを使う場合にはどうしたらいいのか
大統一 Debian 勉強会での赤部さんの発表1 にもあったよ
うに、 Debian ではまだマルチタッチを提供するツール等が十分ではありません。

X や GTK+ などでは既にマルチタッチは対応しています
が、それを使うアプリケーションがなく、 Ubuntu で採用されている utouch 2 関連のライブラリもまだパッケージになっていない状態です（ ITP はされています）。
よって Debian ではまだ iPad や Android タブレット相当の操作はできないと思われます。
1

http://gum.debian.or.jp/download/
debian-gum-presentation.akabe.pdf
2
https://wiki.ubuntu.com/Multitouchまとめ

mtrack ドライバでマルチタッチの制御はできるようになっていますが、アプリケーションが追いついていないのが現状です。
ユニバーサルオペレーティングシステムを目指す以上、マルチタッチは避けて通れない機能なので早くサポートされてほしいものです。

今後のイベント

今後のイベント2012 年/11 月 Debian 勉強会
BSP やるらしいですが？

今日の宴会場所

今日の宴会場所

未定