26 April 2008

(Linux) mail-notificationでメールボックスのチェック

Windowsデスクトップでは 「apopchk」を常駐させていたが、LinuxデスクトップではThunderbirdを起動しっ放しにしていたのを、専用のチェックプログラムに入れ替えた。

インストールしたのは、「mail-notification」というソフト。RHEL, CentOS, Fedora, Ubuntu などに対応している。

20080426-mailcheck01.png
新着メールがある時の表示

Fedora Extraリポジトリよりインストール
[root@localhost ~]# yum install mail-notification

インストール後は、自動的に起動するように設定される。GUIで確認するときは、「システム − 設定 − セッション」ダイアログを開く。

20080426-autoexec.png

設定ダイアログは、パネルに表示されたアイコンをクリックするか、「システム − 設定」メニュー内のメール着信通知を実行する。もしくは、コマンドラインで次のように入力する。

[root@localhost ~]# mail-notification -p

設定ファイルは、./.gnome2/mail-notification/mailboxes.xml あたり。パスワードがプレーン・テキストで保存されていたりする…

なお、CentOSの場合はリポジトリにmail-notificationが含まれていないので、Fedora Extraよりrpmをダウンロードしてインストールする。 ダウンロードしてくるファイルは、 mail-notification-4.0-1.fc6.i386.rpm 。

[root@localhost ~]# yum install gmime ← まだ、インストールされていない場合 [root@localhost ~]# rpm -ivh mail-notification-4.0-1.fc6.i386.rpm

■ Ubuntu 9.10でSSLが無効になっている(2010年2月9日追記)

20080426-ubuntu-ssl.png

Ubuntu 9.10では意図的にSSLサポートが無効化されたパッケージが配布されている。SSLを有効化するには、ソースコードよりビルドする必要がある。

SSLサポートがが削除された理由は mail-notification: Can't use SSL/TLS を参照。

# apt-get source mail-notification # apt-get build-dep mail-notification パッケージリストを読み込んでいます... 完了 依存関係ツリーを作成しています 状態情報を読み取っています... 完了 E: パッケージ libeel2-dev が見つからないため、mail-notification に対する Build-Depends の依存関係を満たすことができません

Ubuntu 9.10 のパッケージには、(この文章を書いた時点では) libeel2-dev は収録されていない。ネットで検索したところ、一つ前のUbuntu 9.04に収録されていることを確認。それを無理やり使ってビルドに使うことにする。

i386 build of eel2 2.26.0-0ubuntu2 in ubuntu jaunty RELEASE

# wget https://launchpad.net/ubuntu/+source/eel2/2.26.0-0ubuntu2/+build/907896/+files/libeel2-2_2.26.0-0ubuntu2_i386.deb # wget https://launchpad.net/ubuntu/+source/eel2/2.26.0-0ubuntu2/+build/907896/+files/libeel2-data_2.26.0-0ubuntu2_all.deb # wget https://launchpad.net/ubuntu/+source/eel2/2.26.0-0ubuntu2/+build/907896/+files/libeel2-dev_2.26.0-0ubuntu2_i386.deb # dpkg -i libeel2-data_2.26.0-0ubuntu2_all.deb # dpkg -i libeel2-2_2.26.0-0ubuntu2_i386.deb # dpkg -i libeel2-dev_2.26.0-0ubuntu2_i386.deb # apt-get build-dep mail-notification ~ 必要なライブラリがまとめてインストールされる ~

SSLを無効化している設定ファイルを書き換える。

debian/rules
configure: configure-stamp configure-stamp: dh_testdir ./jb configure ssl=yes sysconfdir=/etc destdir=$(DEBIAN_DIR)/tmp/ touch $@

ビルド前に、このパッケージ特有の問題を処理する。自動依存関係では解決されない必要なライブラリをインストールし、ソース中のincludeの相対パスがまずいのを、includeディレクトリ側で解決するためにシンボリックリンクを作成する。

# apt-get install libssl-dev # apt-get install gtkhtml3.8 libgtkhtml3.8-dev libgnomeprint2.2-dev libebook1.2-dev libgtkhtml-editor-dev # cd /usr/include # ln -s libgtkhtml-3.8/gtkhtml . # ln -s libgnomeprint-2.2/libgnomeprint . # find libgtkhtml-3.14/editor/ -type f -exec ln -s {} . \;

ソースコードのディレクトリに入り、パッケージをビルドする。

# cd ./mail-notification-5.4.dfsg.1 # dpkg-buildpackage

mail-notificationのオリジナル(SSL削除版)をインストールして、実行ファイルのみ上書き処理を行う。

# apt-get install mail-notification # cp debian/mail-notification/usr/bin/mail-notification /usr/bin/mail-notification

ビルドされたmail-notification.tar.gzをダウンロードする (ここからダウンロードするのではなく、極力、ユーザがソースをビルドすることが望ましいです)


■ Ubuntu 10.04での追加情報(2010年6月13日追記)

Ubuntu 10.04では次のステップで必要なライブラリが全て揃うので、ビルドが可能だった。

# apt-get source mail-notification # apt-get build-dep mail-notification # apt-get install libssl-dev # cd ./mail-notification-5.4.dfsg.1 # dpkg-buildpackage

・参考資料
 Ubuntu Forums [SOLVED] Mail-notification and SSL issue (Update 9.10 Karmic)
 Ubuntu Forums : Mail-notification and SSL issue (Update)