株式会社クリアコード > ククログ

ククログ


Ruby-GNOME2 0.17.0リリース

昨日、GTK+を含むGNOME関連ライブラリのRubyバインディング集Ruby-GNOME2のバージョン0.17.0が公開されました。(もう少し細かい変更点が書かれたアナウンス

目玉

このリリースの目玉はRuby 1.8.7対応です。

以前のバージョンである0.16.0をRuby 1.8.7で動かすと、以下のようなメッセージとともに落ちてしまいます。*1

[BUG] object allocation during garbage collection phase

0.17.0では上記の問題を解決し、Ruby 1.8.7でも動作するようになっています。

他にも、フリーなマルチメディアフレームワークであるGStreamer 0.10.xへの対応など新機能が追加されています。

RubyでGUIを作成したいときは、Ruby-GNOME2を試してみてください。

協力のお願い

アナウンスメールにもありますが、Ruby-GNOME2プロジェクトでは協力してくれる方を募集しています。例えば、バインディングを開発してくれる方、ドキュメントを書いてくれる方、英語のドキュメントを日本語化してくれる方、リリース作業をしてくれる方などを募集しています。

興味のある方はruby-gnome2-devel-ja MLまでお願いします。

*1 暫定的な対処法はGC.disableでした。

2008-09-08

Windows XPでThunderbirdのLDAP関連機能をテストする

多数のユーザを抱える企業や大学などでは、ユーザの情報をディレクトリサーバに保存していることが多いと思われますが、Thunderbirdには、そのようなディレクトリサーバにLDAP(Lightweight Directory Access Protocol)で接続して必要な情報を取得する機能があります。具体的には、Thunderbirdでは以下の場面でLDAPが利用できます。

  • アドレス帳の共有。
  • 宛先などのメールアドレス入力時の補完候補。
  • AutoConfigを利用した設定の自動適用。

これらの機能をテストするためには、当然ながらディレクトリサーバを用意する必要があります。ここでは、インストールが簡単な「ApacheDS」を利用して、Windows XP環境下でThunderbirdでのLDAP関連機能をテストする手順を解説します。

ApacheDSのセットアップ

ApacheDS(Apache Directory Server)は、Webサーバ「Apache」で有名なApache Foundationで開発されているオープンソースのディレクトリサーバです。Windows用にはインストーラが用意されており、特別な知識が無くてもインストールしてすぐに利用を始められます。

  1. ダウンロードしたインストーラからApacheDSをインストールする。
  2. 「コントロールパネル」→「管理ツール」→「サービス」で、サービス管理ツールを起動する。
  3. サービス一覧の中で「Apache Directory Service - default」を右クリックして、「開始」を選択する。

Apache Directory Studioのセットアップとダミーのユーザ情報の登録

Apache Directoryプロジェクトではディレクトリサーバの内容をGUIで管理する「Apache Directory Studio」というEclipseベースのツールも開発されています。これを使って、テストのためのダミーのユーザ情報をディレクトリサーバに登録します。

  1. ダウンロードしたインストーラからApache Directory Studioをインストールする。
  2. 「すべてのプログラム」→「Apache Directory Suite」→「Studio」→「Studio」でApache Directory Studioを起動する。
  3. 「Window」→「Open Perspective」→「LDAP」を選択する。
  4. 左下の「Connections」パネルにある「Example」をダブルクリックする。これで、ApacheDSに最初から用意されているサンプル設定のディレクトリサーバに接続される。
  5. 左上に表示されている「LDAP Browser」のパネル内にツリーが表示されるので、「Root DSE」→「ou=system」→「ou=users」と辿る。
  6. 「ou=users」を右クリックして「New Entry」を選択。
  7. 「Create entry from scratch」を選択。
  8. 「Object Classes」で左のリストの「inetOrgPerson」と「uidObject」をダブルクリックする。これで右側のリストに「inetOrgPerson」「organizationalPerson」「person」「top」「uid」が加わるので、そのまま「Next」をクリック。
  9. 「RDN:」欄で左のボックスに「uid」、右のボックスにそのユーザを識別するための一意な文字列(例えば「user001」など)と入力して「Next」をクリックする。
  10. 「cn」欄にユーザの表示名(例:Yamada Taro)、「sn」欄にユーザの名字(例:Yamada)を入力する。また、表の上で右クリックして「New Attribute」を選択し、「Attribute type:」欄に「mail」と入力して「Finish」をクリックすると表に新しく「mail」欄の行が増えるので、「mail」欄にE-mailアドレス(例:yamada@example.com)を入力する。すべて入力し終えたら「Finish」をクリックする。

6から10の操作を繰り返して、さらに何人分かユーザ情報を登録します。「uid」はユーザの識別子となりますので、他と重複しない値を入力してください。

なお、9のステップで「RDN:」欄の右にある「+」ボタンをクリックして入力欄を増やすと以下の操作が期待通りには動かなくなる場合がありますので、ここでは必ず「uid」のみを設定して下さい。

Thunderbirdにディレクトリサーバの設定を追加する

ここまでで入力した情報を、Thunderbirdで実際に利用してみましょう。

  1. Thunderbirdを起動し、「ツール」→「アドレス帳」でアドレス帳を起動する。
  2. 「ファイル」→「新規作成」→「LDAPディレクトリ」を選択する。
  3. LDAPサーバの設定を入力するダイアログが開かれるので、「名前」に「ApacheDS」、「ホスト名」に「localhost」、「ベース識別名」に「ou=users,ou=system」、「ポート番号」に「10389」、「バインド識別名」に「uid=admin,ou=system」と入力して「OK」をクリックする。

これで、Thunderbirdでディレクトリサーバに接続する準備が整いました。

試しに、ディレクトリサーバの内容をアドレス帳として表示してみましょう。アドレス帳ウィンドウの左のアドレス帳一覧から「ApacheDS」を選んで、ウィンドウ右上の検索欄に先ほど登録したダミーのユーザの名前やメールアドレスの一部を入力します。ディレクトリサーバに接続するためのパスワードの入力を求められますので、「secret」(ApacheDSに最初から用意されているサンプル設定のディレクトリサーバのパスワードです)と入力すると、ダミーのユーザ情報のうち今入力した文字列にヒットした物がリストアップされます。また、新規にメール作成ウィンドウを開き、宛先の入力欄に先ほど登録したユーザの名前の先頭数文字を入力すると、該当するユーザのメールアドレスが補完候補として表示されます。

以上で、基本的な手順の解説は終わりです。LDAP関連の各種の隠し設定をテストする場合などに利用してみると良いでしょう。

タグ: Mozilla
2008-09-10

rcairo 1.8.0リリース

2008/09/26にマルチプラットフォームで動作するベクトルベースの グラフィックライブラリであるcairo 1.8.0がリリースされました。また、同日のうちにcairoを Rubyから利用するためのライブラリ rcairo 1.8.0が リリースされました。([ruby-list45520] [ANN] rcairo 1.8.0 )rcairo 1.8.0はcairo 1.8.0に対応しています。rcairoの基本的 な使い方はるびまの記事「cairo: 2 次元画像描画ライブラリ」 にまとまっ ています。

ちなみに、誰も気づいていないかもしれませんが、cairoの最新API への対応は各種言語バインディングの中ではrcairoが最速です。

cairo 1.8.0

cairo 1.8.0ではテキストの扱いが改良されています。例えば、テキ ストを検索、選択、コピペできるようなPDFを出力するようになって います。また、「ユーザフォント」という機能が導入されています。

「ユーザフォント」はその名の通り、ユーザ(cairoを使う開発者) 独自のフォントを定義・利用できる機能です。利用例として、SVGフォ ントやFlashフォントなど標準化されていないフォーマットのフォン トの実装があげられています。通常は利用することはないと思いま すが、cairoがより広く利用される機会を増やす機能になるかもし れません。

もちろん、rcairoでは「ユーザフォント」もサポートしています。

rcairoの今後

rcairoには、cairoのバインディングだけではなく、rcairo独自の cairoをもっと便利に使うための機能が追加されています。例えば、 Cairo::Color もそのひとつです。

rcairoをもっと便利に使えるようにするためには、レンダリングエ ンジンのような機能が必要だと考えています。例えば、以下のよう にすれば表を描画できるというような機能を考えています。

1
2
3
4
5
table = Cairo::Table.new(:width => 400)
table << Cairo::Table::Header.new("column1", "column2", "column3")
table << Cairo::Table::Row.new("1x1 value", "1x2 value", "1x3 value")
table << Cairo::Table::Row.new("2x1 value", "2x2 value", "2x3 value")
context.show_table(table)

現在考えているサポートしたい描画対象は以下の通りです。もし興 味があったらぜひ手伝ってください。

タグ: Ruby
2008-09-27

«前月 最新記事 翌月»
タグ:
年・日ごとに見る
2008|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|01|02|03|04|05|06|07|08|09|10|11|12|
2013|01|02|03|04|05|06|07|08|09|10|11|12|
2014|01|02|03|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|05|06|07|08|09|10|11|12|
2016|01|02|03|04|05|06|07|08|09|10|11|12|
2017|01|02|03|04|05|06|07|08|09|10|11|12|
2018|01|02|03|04|05|06|07|08|09|10|11|12|
2019|01|02|03|04|05|06|07|08|09|10|11|12|
2020|01|02|03|04|05|06|07|08|09|10|11|12|