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)