Gentoo Weekly Newsletter: 2005年5月30日
1.
Gentooニュース
OSUからハードウェアの寄贈
Gentoo AMD64のアーキテクチャ・テスターであり、
AMDのオースティン工場にいる開発者であるChris Parrottのおかげで、
オレゴン州立大学のオープンソースラボラトリは、今月、驚きの荷物を受け取りました。
もともとは、使用されていないAMD64アーキテクチャのPCを寄付すると通知されていたものが、
結局、3つのデュアルCPU用マザーボードと6つのCPU、3GB相当のレジスタードDDR RAMとなりました。
Figure 1.1: 箱から出したばかりの寄贈されたAMD64マザーボード |
 |
1台はGentoo release engineeringチームに割り当てられました。LiveCD、ステージファイルなど、
今後リリースされる製品のために使用される予定です。
残りの2台は、Gentoo/AMD64チームの一般的な開発プラットフォームとして使用される予定で、
Gentoo開発者と外部の要求のあった開発者の両者がアクセスできるようになるでしょう。
気前のよい寄付に、Chris ParrottとAMDには大変感謝しています
ドキュメントの状況更新
意欲的なGentooドキュメントの著者向けの面白いゲームがあります。
もし、Gentooドキュメントに対して、きれいで、よいXMLコードを書く能力を試したいのなら
クイズの一部としてドキュメントチームが用意したひどく見苦しいdisfigured
documentを修正してみてください。
もしこれを修正したら、ドキュメント作業グループのメンバとなるために、
続けてupdated policy
を読んだ上で作業を手伝ってください。
先月の目玉としては、KDE 3.4以上で、ebuildが分割されたいくつかのアプリケーションに対応した
KDE configuration
guide(翻訳)、
変更と機能追加が反映反映されたGentoolkit(翻訳)とPortage
introduction(翻訳)
の更新、その他、現在あるものよりよいこまごまとしたたくさんのGentooドキュメントが追加などがあります。
先月の完全な更新状況については、
documentation
status pageを参照してください。
2.
Developer of the week
「一度Gentooを試してみれば、それが向かう明らかな方向が見えるだろう」 -- Damien Krotkine
Figure 2.1: damsとしても知られるDamien Krotkine |
 |
damsとしても知られるDamien Krotkineは公式なPPC小僧の一人で、彼が使用するいくつかのプログラムのebuildをメンテナンスしていますが、彼は実際にはGentooに触れる時間のほとんどを設定ツールや関連する要素の暗号化に費やします。彼はGentoo Desktop Researchプロジェクト(現在休止中)のリーダーでした。Gentoo以外では、彼はPLF(Penguin Liberation Front:ペンギン解放戦線)の公式ロゴをデザインし、いくらかのPerlハックを行いました。そのハックには、perl-XPCOMを使ってMozillaの内部オブジェクトをPerlから利用しようとするような途方もないことが含まれています。彼はかなりおとなしく、謙虚な人柄なので、彼は自分の仕事に特に誇りを持っていませんが、彼の手によるPerlとGTKの融合は本当にすごいたくらみを可能にします。
彼はフランクフルトとパリという異なる場所の学校に通っており、彼の学校での評価はかなり最低点のようですが、コンピュータサイエンスでさえも学びました。彼の実際の生活はGentooだけでなく、フランスの会社でのMozillaやOSSサーチエンジンを元にしたソフトウェアの開発はきわめて満足のいく物です。
彼は最近自宅にあるコンピュータの数を減らしましたが、Athlon、PegasosPPC、iBookといった印象的なコレクションは残っています。彼のperlやemacsに対する興味は彼をフレーム戦争に熱中させますが、これをうまく回避もします。他に彼が好きなアプリケーションにはscreen、zsh、そしてFirefoxという、コンピュータでほとんどいつも手近なところに置いておく物です。icewmとenlightenmentは彼の選んだウィンドウマネージャで、彼のメールクライアントは現在gnusの代わりにThunderbirdを使用しています。damsは適材適所を楽しんでいます。
彼は本当に洗練されているので、スノーボード、ローラースケート、そして登山を行っています。彼は「Sporks Of Chaos公式チームの有名な商標で、僕が本当に誇りを持っている物さ」を使っており、仕事をしていないときには、OSSイベントに挑戦しています。パリに住んでおり(そこは彼をとてもフランス風にしています)、口のうまい魅力的なフランス人によって彼は強化されつつある固定概念を楽しんでいます。ですが、結婚したいと思う女性にはまだ出会っていません。
3.
コミュニティの話題
gentoo-devより
ebuildの鮮度を保つには?
時間がたつにつれて、あまりメンテナンスされなくなるebuildもあります。次のスレッドでは、Portageツリーにあるプログラムの新バージョンをテストしたり、メンテナンスしたりするのに、ユーザが協力する方法についていろいろなアイデアがでています。
Bashrc mini HOWTO
Chris Whiteが、Portageの作業に便利なbashrcのmini-HowTOを書きました。何の話かわからない人には関係ないかもしれませんが、最新のCvSバージョンのPortageの秘められた能力も表しています。
baselayoutのテスターを募集しています
Mike Frysingerが、おそらくベターな新しいbaselayout 1.11.12-r2のテストで協力を呼びかけています。たくさん変更が行われましたし、モジュール化された部分もあるので、もしかすると何か壊れているかもしれません。システムが動作しなくなることもおそれずに協力してくれる方は、Mikeの告知を読んで一緒に遊びましょう!
4.
世界のGentoo
カナダ: オタワLinuxシンポジウム
オタワLinuxシンポジウム(OLS)が、2005年7月20日から23日まで開催されます。
Gentoo PPC64開発者のOmkhar Arasaratnamが参加します。
この機会にオタワでのGentoo利用者や開発者と御対面したい人は、Omkharに直接連絡をとってください。
日本: GentooJPとのオープンソースパーティ
6月3日、約50人のGentoo開発者とパワーユーザが、LinuxWorld東京に合わせて開かれるオープンソースパーティに集結します。
開始は19時、場所はT.G.I. Fridayjの銀座店です。
ロンドンより帰国中のGentooJP発起人である中野正智氏も参加する模様です。
GentooJPメーリングリストでの参加表明は不要です。
事前に予約ページで参加申し込みをしてください。
5.
Gentoo関連情報
LinuxUser (2005年5月/6月)
最近、ドイツのLinuxUserマガジンは、「Gentoo-Mini-Series」というシリーズを紙面上で展開しています。その第1章(5月号)は、Gentooシステムの適切なインストール手順について書かれており、「Gentoo Linuxは、ユーザ毎におあつらえ向きなシステムを提供します。気が利いているディストリビューションは、ユーザの要求に対して完璧なカスタマイズができます。」と説明しています。今月(6月)号の第2章と最終章は、Portageを使ったシステム保守について説明しています。このシリーズの英語バージョンが、約2ヶ月の内にLinux Magazineのイギリス/アメリカ版で掲載されることを期待しています。LinuxUserによって出版されたGentoo記事の一番初めの成功例としては、編集長が「Gentooウィルス」に感染してしまい、Gentoo Linuxを自分の手でインストールしたいという欲求を押さえられなくなっています。
The Triangle (2005年5月20日)
Debate pits open source Linux against Microsoft(訳注:オープンソースのLinuxは、Microsoftに討論で戦った)というDrexel大学の学生新聞のタイトルの記事は、DrexelのMath and Computer Science Society(訳注:数学とコンピュータサイエンスクラブ)によって催されたイベントからの報告です。Microsoftアカデミック関係の管理者と地域のLinuxユーザグループのメンバー間で、説明責任について徹底的に行われた討論の終わり頃に、Gentooは、64ビットコンピューティングの例としてカーネルだけでなく、このアーキテクチャ向けにコンパイルされたアプリケーションの話にも出てきました。
6.
コーディングセッション
前置き
damsの設定ツールに関する短かいプレゼンテーション:(コードのインデントがずれてしまっているかも知れません。質問があればdamsまで)
Libconf
Note:
ウェブサイト: http://libconf.net
内容: 簡単に設定ファイルの読み書きができるようになります。
|
さて、あなたは今gdmの設定を編集してオートログインのユーザをセットしたいとしましょう。そんな時はlibconfがお役に立つかも知れません。コンソールから単純に起動するだけで済みます:
Code Listing 6.1: libconfを起動する |
libconf
|
Figure 6.1: libconfコマンドライン |
 |
さあ組み込みのヘルプを呼び出してみましょう:
Code Listing 6.2: libconfのヘルプ |
help
|
お勧めに従って、'list_templates'コマンドの出力を見てみましょう。
Code Listing 6.3: list_templates |
list_templates
|
Figure 6.2: 利用可能なハイレベルテンプレートのリスト |
 |
Generic/Shellは最も利用されるもののひとつですが、他にもテンプレートはあります。見てみると、'X/Gdm'のテンプレートがありますね。どんなオプションがあるのでしょうか:
Code Listing 6.4: X/Gdmのオプション |
list_template_options X/Gdm
|
Figure 6.3: X/Gdmのオプション |
 |
man Libconf::Glueconf::X::Gdmを実行して下さいとありますね。これを実行しても「そのようなドキュメントはありません」と出てくるでしょう。なぜなら、そのドキュメントはまだ記述されていないからです。マニュアルがないといけませんか?心配いりません、十分に簡単ですから。
さて、ここでちょっとperlについて話をしましょう:
Code Listing 6.5: gdm_autologin.pl |
#!/usr/bin/perl
# 最初に、libconfのテンプレートモジュールをインクルードします
use Libconf::Glueconf::X::Gdm;
# 次にテンプレートを使用します
my $gdm_conf = Libconf::Glueconf::X::Gdm->new({ filename =>
'/etc/X11/gdm/gdm.conf' });
# さて、構造体がどんな形になっているか見てみたいですね
use Data::Dumper;
print Dumper($gdm_conf) . "\n";
# これで構造体の中身を見ることができます
|
これをgdm_autologin.plという名前のファイルにして、実行権を付加して実行しましょう:
Code Listing 6.6: gdm_autologin.plを実行する |
./gdm_autologin.pl
|
Figure 6.4: gdm_autologin.plを使って構造体のダンプを見る |
 |
どんな構造になっているかというのはすぐわかります。今私たちがしたいのは引数の中のユーザネームを取り出してautologinに設定することです。こうすればできます:
Code Listing 6.7: 引数からユーザネームを取り出してautologinに設定する |
$gdm_con->{daemon}{AutomaticLogin} = $user;
|
というわけで、これが完全なスクリプトです:
Code Listing 6.8: autologinのための完全なスクリプト |
#!/usr/bin/perl
# 最初に、libconfのテンプレートモジュールをインクルードします
use Libconf::Glueconf::X::Gdm;
# 最初の引数を取り出します
my $user = $ARGV[0] or die 'please give me one parameter';
# テンプレートを使用します
my $gdm_conf = Libconf::Glueconf::X::Gdm->new({ filename =>
'/etc/X11/gdm/gdm.conf' });
# autologinフィールドを変更します
$gdm_conf->{daemon}{AutomaticLogin} = $user;
# そして構造体をファイルに書き出します
$gdm_conf->write_conf();
|
このスクリプトは正しく動作するでしょう。libconfが、読み易いようにファイルをインデントしてくれているのがわかると思います。しかしそれが必要のないことでしたら、ただ単に以下の行をファイルを書き出す前の部分に加えて下さい:
Code Listing 6.9: libconfにインデントさせない |
$Libconf::Templates::Indentspaces = '';
|
Note:
更なるドキュメントはこちら (すみませんが未完成です)
|
Gtk2Fu
Note:
ウェブサイト: http://libconf.net/gtk2-fu/
内容: perl-gtk2の上のレイヤで、perl-gtk2をよりシンプルでベターなものにします。
|
gtk2fuは実際シンプルです: 更なるパワーと容易さを提供してくれます。またフルドキュメントも用意されています。
さて、もしあなたがドキュメントを読み終えたとしたら、いくつか簡単な
ものが作れるようになっているでしょう。ここに小さなアプリケーションがあ
ります。それは小さいながらも十分な機能を持ち合わせており、libconfを使っ
て前に実施した内容をベースにして、gdmのオートログインファシリティを編
集するためのGUIを表示するものです:
Code Listing 6.10: libconfをベースにした、gdmのオートログインファシリティのためのGUI |
#!/usr/bin/perl
# 最初に、libconfのテンプレートモジュールをインクルードします
use Libconf::Glueconf::X::Gdm;
my $gdm_conf = Libconf::Glueconf::X::Gdm->new({ filename =>
'/etc/X11/gdm/gdm.conf' });
$Libconf::Templates::Indentspaces = '';
# Gtk2Fuをインクルードします
use Gtk2Fu qw(:all);
# Gtk2を初期化します
Gtk2->init;
# ウィンドウを作成します
my $main_window = create_window();
my $entry;
# メニューバーを作成します
my ($menubar, $item_factory) = $main_window->create_full_menubar(
[
[ '/_File', undef, undef , 0, '<Branch>' ],
[ '/File/_Save', '<control>S', sub { $gdm_conf->write_conf();
Gtk2->main_quit }, 0, '<StockItem>', 'gtk-save' ],
[ '/File/_Quit', '<control>Q', sub { Gtk2->main_quit }, 0,
'<StockItem>', 'gtk-quit' ],
]
);
# ウィジット、ハンドラそしてアクションを作成します
$main_window->signal_connect_(destroy => sub { Gtk2->main_quit } )
->add_(Gtk2::VBox->new(0,0)
->gtkpack_(0, $menubar,
1, Gtk2::VBox->new(0, 0)
->gtkpack_(1, Gtk2::HBox->new(0, 0)
->gtkpack_(0, 'Gdm AutomaticLogin',
1, $entry = Gtk2::Entry->new()
->set_text_($gdm_conf->{daemon}{AutomaticLogin})
->signal_connect_(changed => sub {
$gdm_conf->{daemon}{AutomaticLogin} = $entry->get_text();
} )
)
)
->set_border_width_(5),
0, Gtk2::HSeparator->new(),
0, Gtk2::HButtonBox->new()
->set_spacing_default_(10)
->set_layout_('end')
- ->gtkpack(Gtk2::Button->new_from_stock('gtk-cancel')
->set_border_width_(5)
->signal_connect_(clicked => sub {
Gtk2->main_quit; }),
Gtk2::Button->new_from_stock('gtk-ok')
->set_border_width_(5)
->signal_connect_(clicked => sub {
$gdm_conf->write_conf(); Gtk2->main_quit; })
)
)
)
->show_all();
Gtk2->main;
|
test.plという名前でセーブしたら、実行可能にして、起動してみましょう。こんな感じの画面が出るはずです:
Figure 6.5: gtk2fuによるオートログインのテストウィンドウ |
 |
このアプリケーションは機能的で、もしrootで実行してエントリの内容を変更してセーブしても正しく動作します。私はテキストモードのGUIを作成するためにperl-ncursesによる似たような方法を使います。
今日のところはこれにておしまいです。libconf+gtk2fu+ncursesで何ができるか、ということをお見せしました。何人かの人達にでも、何か調べるためのアイデアとか方法を提供できていればいいのですが。それから、もし設定ツールの配備軍に参加したいと思ったなら私に連絡して下さい。
7.
Gentooチームの動き
移動
Gentooチームから去った開発者
追加
Gentooチームに新しく参加した開発者
変更
Gentooチームで配置が変更になった開発者
- Mike Doty (kingtaco) - AMD64戦略リーダ(Jason Huebelから交代)
- Simon Stelling (blubb) - AMD64運営副リーダ(もう一人はDanny van Dyk)
- David Holm (dholm) - PPC戦略リーダ
- Luca Barbato (lu_zero) - PPC運営リーダ
- Lars Weiler (pylon) - PPCリリースエンジニアリング(戦略リーダの予定でしたが変更)
- Markus Rothe (corsair) - PPC64セキュリティ
- Daniel Ostrow (dostrow) - PPCプロファイルメンテナー
- Joseph Jezak (josejx) - PPCドキュメントリーダ
8.
Gentooセキュリティ
Qpopper: 複数の脆弱性
Qpopperには、任意のファイルを上書きしたり安全でないパーミッションでファイルを作成したりすることをアタッカーに許してしまうふたつの脆弱性が存在します。
詳細についてはGLSA Announcementを参照して下さい。
Net-SNMP: fixprocによる安全でないテンポラリファイルの作成
Net-SNMPは安全でない方法でテンポラリファイルを作成してしまうため、任意のコードの実行を許してしまうおそれがあります。
詳細についてはGLSA Announcementを参照して下さい。
gxine: 書式指定文字列に関する脆弱性
gxineには、リモートのアタッカーによる任意のコードの実行を許してしまうおそれのある、書式指定文字列に関する脆弱性が存在します。
詳細についてはGLSA Announcementを参照して下さい。
Mailutils: imap4dとmailに複数の脆弱性
GNU Mailutilsに含まれているimap4dサーバとmailユーティリティには複数の脆弱性が存在し、リモートのアタッカーに対してルート権限での任意のコードの実行を許してしまうおそれがあります。
詳細についてはGLSA Announcementを参照して下さい。
9.
Bugzilla
サマリ
統計データ
Gentooコミュニティでは、バグやお知らせ、提案やその他開発チームとのやり取りの記録、追跡にBugzilla(bugs.gentoo.org)を使っています。2005年5月22日から2005年5月29日までのデータは以下のような結果になっています。
- 新しいバグ 835個
- クローズしたバグ 474個
- 以前クローズしたバグが再オープン 35個
現在オープンしているバグ8480個のうち、85個が「極めて重大(Blocker)」、217個が「重大(Critical)」、615個が「中(Major)」とラベル付けされています。
クローズしたバグランキング
本期間内にもっとも多くバグをクローズした開発者、チームは以下の通りです。
新しいバグランキング
本期間内にもっとも多く新しいバグを割り当てられた開発者、チームは以下の通りです。
10.
GWNを定期購読するには
Gentoo Weekly Newsletterを定期購読するには、空メールをgentoo-gwn+subscribe@gentoo.orgに送ってください。
Gentoo Weekly Newsletterの購読を中止するには、配信先のメールアドレスから空メールをgentoo-gwn+unsubscribe@gentoo.orgに送ってください。
11.
他の言語でのGWN
Gentoo Weekly Newsletterは以下の言語でも読むことができます。
|