パッケージにシンボリックリンクを保持するためにrpmbuildを作成することは可能ですか?
現在の動作はファイルのコピーを作成することですが、これは避けたいと思います。
確かにそれはシンボリックリンクをサポートしています。ただし、実際にはシンボリックリンクをパッケージ化する必要があり、コンテンツをビルドルートにコピーしないでください。/newbinと呼ばれる/binディレクトリへのシンボリックリンクをパッケージ化する仕様の例
Name: test
Version: 1.0
Release: 1%{?dist}
Summary: nothing
License: GPLv2
Source0: nothing
%description
%install
rm -rf %{buildroot}
mkdir %{buildroot}
ln -sf /bin %{buildroot}/newbin
%files
/newbin
nothing
これからrpmを正常に構築するには、SOURCESディレクトリにファイルも必要です。rpm4.9.1.2でテスト済み
このQは古いことは知っていますが、これが私のやり方です。
%installセクションで、シンボリックリンクとなるファイルをタッチするだけです。
touch %{buildroot}[path to your file]
%filesセクションで、%ghostファイルとして指定します。
%ghost [path to symlink file]
これにより、パッケージのファイルの一部としてリストされ、パッケージがアンインストールされたときに自動的に削除されます。
最後に、%postセクションにシンボリックリンクを作成します。
ln -sf [file to link to] [symlink]
私はそうは思わない。パッケージでシンボリックリンクを設定するインストール後のスクリプトを使用しました。