Fedora Core1/Sylpheed

. . . 最新版Sylpheed のインストール . . .


Sylpheed は Windows/X Window System 上で動作するMUA/New Reader で
3ペイン構造の、とても使い易いプログラムです。
Fedora Core1 にも Sylpheed は収録されており、Ver. 0.9.5 を利用することができます。
ただし、配布元では既に Vew. 0.9.10 にバージョンアップがされており
これを利用しようと思ってメモ書き。
いくつかのサイトでは既に最新版をインストールする方法が紹介されています。
しかし、やはり可能な限りrpm のパッケージ管理を利用したいと思うのです。





いきなり失敗の巻

作者のサイトからダウンロードできるrpm パッケージは
gpgme をリンクしたSylpheed である。
このため、Fedora Core1 の0.9.5 に対して

rpm -Uvh sylpheed-0.9.10-1.i386.rpm

でアップグレードしようとするとgpgme に依存してダメよと怒られる。
記憶が間違っていなければ、RHL9 ではgpgme は最初から含まれていたような。
一応、
rpm -q gpgme
でチェックしてみるが、やはり収録されていないようだ。

つまり、Fedora Core1 に収容されているSylpheed は元々gpgme を
リンケージしていないパッケージだと思われる。

作者のサイトに置かれているrpm パッケージを
そのまま使うには、gpgme のrpm パッケージを作成するか
あるいは、Sylpheed の作者のサイトからgpgme のrpmパッケージを
ダウンロード、インストールすればいいはずである。
ただし、作者のサイトに置かれているgpgme パッケージは
最新のものではないため、最新版のソースからrpm パッケージを
作成するほうがいいと思われる。
(2004.5.26 現在、作者のサイトにgpgme のrpm は置かれていないようで)

そこで、 GNU のサイトからgpgpme のソースを落としてみる。
最新版のソースをrpmbuild でパッケージ作成しようとしたが
エラーとなった。

Provides: libgpgme.so.6
Requires(interp): /bin/sh /bin/sh /bin/sh
Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
Requires(post): /bin/sh
Requires(preun): /bin/sh
Requires(postun): /bin/sh
Requires: /bin/sh gnupg libc.so.6 libc.so.6(GLIBC_2.0) libc.so.6(GLIBC_2.1)
libc.so.6(GLIBC_2.1.3) libc.so.6(GLIBC_2.3)
Processing files: gpgme-debuginfo-0.3.16-1
Provides: libgpgme.so.6.3.7.debug
Requires(rpmlib): rpmlib(CompressedFileNames) <= 3.0.4-1
rpmlib(PayloadFilesHavePrefix) <= 4.0-1
Checking for unpackaged file(s): /usr/lib/rpm/check-files
/var/tmp/gpgme-0.3.16
エラー: Installed (but unpackaged) file(s) found:
/usr/share/info/dir


RPM build errors:
Installed (but unpackaged) file(s) found:
/usr/share/info/dir


spec ファイルやrpm に精通した人なら対処できるかもしれない。
できない.... (--;
gpgme のパッケージを作成しないでmake;make install でインストールする
方法も勿論あるわけ(実は、やったけど)ですが、パッケージにしないと
Sylpheed のrpm パッケージの依存関係は解決しないのです。当然ながら。

そこで、Sylpheed の最新版ソースからgpgme をリンクしないrpm パッケージを
作成、インストールすることを考える。


Sylpheed のサイト から、ソースを落とす。
RPM/SRPM は、ここ から落とせるようになっているので、そこからsylpheed-0.9.10-1.src.rpm を
ダウンロードする。

パッケージの作成
rpm パッケージを作成するには、rpm コマンドのオプションで
できたはず、ということでrpm --help とかしてみる。
ところがrpm にパッケージ作成用のオプションが無くなって
代わりにrpmbuild というコマンドが存在することが判明。
コマンドオプションが多くて煩雑になると使いにくいというのは
確かにあるので、そういうことなのでしょうか。

パッケージを作成するには、作業ディレクトリ(フォルダと書きかけた・・)
を用意すると良いでしょう。
仮に、$HOME をhoge 作業ディレクトリをwork/RPM とします。
作業ディレクトリは、

BUILD
RPMS
SOURCES
SPECS
SRPMS

各ディレクトリの階層は以下の通り。

./BUILD:

./RPMS:
i386
noarch

./RPMS/noarch:

./SOURCES:

./SPECS:

./SRPMS:

/home/hoge/ に、.rpmmacros ファイルを作成します。
.rpmmacros ファイルの内容は作業ディレクトリを示すもので、内容は

%_topdir $HOME/work/RPM


準備が出来たところで、
rpmbuild --rebuild sylpheed-0.9.10-1.src.rpm
を実行すると、コンパイル作業が実行されてgpgme をリンクしない
Sylpheed のロードパッケージが作成されます。

作業ディレクトリ下に、以下のようにパッケージが作成されていることを
確認します。
RPMS/i386/sylpheed-0.9.10-1.i386.rpm

パッケージのインストール
作成したsylpheed-0.9.10-1.i386.rpm をインストールするには、
rpm -Uvh sylpheed-0.9.10-1.i386.rpm
にて、アップグレードインストールを行います。

インストールが完了したら、Sylpheed を実行しバージョンが
上がっているか確認します。



イマイチ作業手順が伝わりニクイですね。 (^^;
Fedora Core2 の配布が始まっていますが、まだ確認していません。
Core2 に収録されているSylpheed のバージョンが0.9.5 である場合
同じ手順で0.9.10 をインストールすることが可能だと思います。
もしもgpgme が収録されている場合は、作者のサイトのrpm パッケージが
そのままインストールできるはずなのですが。


<< Back