RPMファイルがあります。その RPM にいくつかの変更を加え、再パックしてテストする必要があります。誰でも私を助けることができますか?
2 に答える
ソースがない RPM を変更する最良の方法は、次の手順に従うことです。
- rpm2cpioコマンドを使用して、rpm をディレクトリーに解凍します。
- そのサブディレクトリ内で必要な変更を行います
- 「ダミー」spec ファイルを作成してビルドします。
ダミーの仕様ファイルは次のようになります。
Name: blah
Version: 1.0
Release: 1
Summary: blah
License: blah
Distribution: blah
Group: blah
Packager: me
BuildRoot: /path/to/dir/with/mods
%description
blah
%files
/path/to/dir/with/mods/*
ここにあるすべての「何とか」を実際の値に置き換えます (値を取得するために使用します)。BuildRoot を、変更した rpm をアンラップしたディレクトリに置き換えます。次に実行します。rpm -qpi rpm file
rpmbuild -bb dummy.spec
prep/setup/build/install のステップが定義されていないため、buildroot にあるものを取得して RPM を作成するだけです。
rpm パッケージにスクリプト ファイルが含まれている場合は、それらもこのダミーの仕様ファイルに配置する必要があります。パッケージにスクリプトがあるかどうかを確認するには、次を実行します。依存関係、前提条件などについても同じことが言えます。rpm -qp --scripts rpm file
私が見逃している他の詳細があるかもしれませんが、これはあなたが始めるのに十分なはずです.
更新:価値のあるものについては、http://rpmrebuild.sourceforge.net/もあります。
それがパッチという概念だと思います。このリンクを使用して、最初の srpm にパッチを適用し始めました。ただし、基本的な考え方は、srpm を取得し、srpm をインストールし、そのビルド領域ディレクトリ内にパッチを作成し、spec ファイルでパッチ ファイル %patch0 -p1 を指定することです。次に、rpm ビルドを実行します。ハッピーパッチ!