レポート

各地のDebian勉強会とDebianユーザが東京に集結!「大統一Debian勉強会2013」レポート

この記事を読むのに必要な時間:およそ 5.5 分

各地のDebian勉強会が集結し,Debianユーザ・Debian開発者の交流を目的とする大統一Debian勉強会が6月29日,東京の日本大学 駿河台キャンパスで開催されました。本稿では,今回のイベントについてレポートします。

大統一Debian勉強会とは

大統一Debian勉強会は全国各地で行われているDebian関係の勉強会関係者とDebianに興味のある人たちが集まり,人的・技術的交流を行うことをテーマとして開催しています。

また,世界各国で毎年開催されているDebConf(Debianカンファレンス)を将来日本で開催するための調査,運営スキルアップを目的としています。

昨年からイベントが開催され,会期1日間で約100名のDebianユーザ,Debian開発者,フリーソフトウェアユーザが集まり,Debianに関する12の発表が行われました。このイベントによって,LinuxカーネルおよびDebianへの新しいマシンのサポートやDebianのインフラ整備が行われるなどの成果も出ています。

去年は京都の京都大学 数学教室で行われましたが,今年は東京の日本大学 駿河台キャンパスをお借りして開催され,140名ほど参加いただきました。

今回は事前に募集された発表だけではなく,アンカンファレンス用の部屋も準備され,その場で様々な討論が行われました。またハック用の部屋も用意され,開発に集中する方も多くいました。

画像

画像

発表内容

2013年度のテーマは「Level up Debian」です。今回のイベントに参加することによって,Debianの新しい使い方を知ることができ,一歩進んだ使い方ができるようになることを考えています。

本イベントでの発表内容もこのテーマに沿ったものが集まりました。以下に発表内容を紹介します。

debhelperにおけるプログラミング言語対応の仕組みについて/岩松信洋

Debian Project Official Developerの岩松信洋さんより,パッケージ作成を楽にするためのdebhelper拡張について解説していただきました。

debhelperは,Debianパッケージ作成を行うためのヘルパーツール群で,Debianパッケージを作るために必要な共通処理がまとめられており,開発者はdebhelperの呼び出しをするだけでパッケージを作ることができるようになっています。しかし,各言語やフレームワークごとに異なる処理を行う場合は,個別に記述していく必要があります。

岩松さんは,プログラミング言語Erlang関連パッケージをいくつか作っているうちに,共通化できる部分があると考えました。そして,debhelper version 7より提供されているdebhelperの拡張機能を利用し,Erlang言語のパッケージを作るためのdh-rebarを開発しました。Erlang言語は,rebarというビルドツールを使ってビルドするのが一般的です。dh-rebarでは,これらを利用したコマンドをdebhelperの各ステージに割り込ませ,開発者はdh-rebarを呼ぶだけでビルドできるようになりました。

%:
    dh $@ --buildsystem=rebar --with rebar

debhelperの拡張をすることで,パッケージ作成プロセスをさらに汎用化し,より楽にパッケージを作成できるようになるという,開発者にとって有益な講演でした。

画像

gdb+python拡張を使ったデバッグ手法/野島貴英

野島貴英さんからは,GDBを使ったプログラムのデバッグ手法についてお話いただきました。

Debianでは,デバッグ用のシンボルをプログラム本体から分離してパッケージにすることがしばしばあります。デバッグシンボルのパッケージ名は通常-dbgで終わり,Debianパッケージのバイナリーをデバッグするときには,これらのパッケージをインストールしておく必要があります。

セッションではPHP5を題材に,DebianパッケージのCompatibility levelの違いによるデバッグシンボルの配置の違いや,GDBをPythonから動かすといったコアな話を取り上げました。PHPはxdebug+eclipseなどを使ってデバッグすることが多いとのことですが,GDBを使うと暴走中のプログラムにアタッチできるため,デバッグの幅が広がるとのことです。

Pythonを使ったGDBの操作では,GDB 7.6から搭載されている機能により,GDBの中でPythonコンソールを利用できることの紹介や,PHPの実行トレースを得ることについて説明しました。ただ,セッションの最後ではGDB+PythonでPHPスクリプトの実行トレースを得ることの問題点も述べていました。デバッグにPythonを使うと,PHPスクリプトの実行速度が極端に落ちてしまいます。今後工夫して行かなければならないとのことでした。

画像

とあるWeb企業でのDebianシステムの使い方/前田耕平

Debian JP Projectで会長を務められたこともある,サイバーエージェント社の前田耕平さんが,CentOS主体のインフラをいかにしてDebianベースのものに変えていったかについてお話いただきました。入社当時はほぼCentOSの環境だったものが,社内およびグループ会社のエンジニア向けのサービス用途にはDebianやUbuntuが増えているそうです。

開発は主にDebianのsidを利用しているそうです。原則としてオフィシャルパッケージを利用するのですが,もしバージョンが古かったり必要な機能が提供されていなければ,自分たちでリビルドを行います。これらはすべてGitで管理されているそうです。そして,実際の運用環境がUbuntu preciseの場合は,pbuilderを利用してprecise用にリビルドするのですが,その際,依存するパッケージが存在しなかったり,バージョンが古かったりする場合があります。その場合は,依存パッケージもすべて同様にリビルドを行うそうです。pbuilderなどの自動ビルドツールが揃っているDebianだからこそ,こういったことが可能になりますね。

その後,独自に作成したパッケージは,社内のパッケージアーカイブに登録します。このときに,repreproというツールを利用しているそうです。repreproパッケージの使い方を誤解していたため,最初はいろいろと苦労したそうですが,とても簡単に独自パッケージアーカイブを作成できるそうです。これらのapt-lineやアーカイブの公開鍵は,OSインストール時に自動で入るようになっており,ユーザは意識せず利用することができるそうです。

Debianシステムを管理するための仕組みを解説していただきましたが,⁠一番重要なのはDebianを使いたいという強い意志である」という言葉で締められていたのが印象的でした。

画像

著者プロフィール

赤部晃一(あかべこういち)

Debian JP Project メンバー。Debianパッケージをひっそりと作っている情報系大学院生。研究と趣味の両方でPythonを使用。


岩松信洋(いわまつのぶひろ)

Debian 公式開発者/Debian JP Project メンバ/ 大統一Debian勉強会2013実行委員長。普段は Linuxカーネルやブートローダなどを開発する組込Linuxエンジニアをしている。

twitter:@iwamatsu


前田耕平(まえだこうへい)

大統一Debian勉強会2013実行委員,会計担当。今回,同僚にCFPの応募を促したところ,思惑通りにセッション発表することになり,さらにDebianパッケージのメンテナンスにも興味を持ち,通常のDebian勉強会にも参加するようになりそうなので,シメシメと思っている今日この頃。


安井卓(やすいたく)

90年代後半からDebianパッケージを作るなど,開発に参加。2001年よりDebian Official Developerとなる。2001年にスラッシュドット・ジャパン,2002年にSourceForge.JPをたちあげ,オープンソースの普及活動を行う。現在は楽天株式会社に所属し,検索機能の開発・運用に従事。


吉田俊輔(よしだしゅんすけ)

PyCon JP 2015副座長(事務局)です。

関東近郊のOSSコミュニティに参加。イベント参加/出展や,地方のOSS系イベントに合わせて旅行し温泉地巡りをしています。

最近はネット環境の充実した宿が多いので、自宅より? タスクが捗ります。

Facebook:吉田俊輔

コメント

コメントの記入