私は自分のマシンで使用するためにWineにパッチを手動で適用してきましたが、友人や関係者のためにPPAに入れたいと思います。
現在、私はこの手順に従います:
apt-get source
経由でアップストリームPPAから最新のソースを取得しますpatch
を使用して、サポートされていない非公式のパッチを適用します。dpkg-buildpackage -rfakeroot -uc -b
を使用してパッケージを作成しますこれは、ローカルマシンで実行するパッケージの作成に適しています。ただし、このカスタムビルドをPPAを介して他のユーザーに配布したいと考えています。
この手順は十分ですか、それともWine専用に従うべきより正確な、および/または保守しやすい手順がありますか?
あなたはあなたの例の手順にかなり近づいていますが、ここに私が提案するものがあります:
apt-get source wine
とcd
でソースを新しいディレクトリに取り込みますwhat-patch
;この場合、wineパッケージはパッチ管理にquilt
を使用することを示していますQUILT_PATCHES = debian/patches quilt import <your-patchfile.patch>複数のパッチがある場合は、パッチごとに、適用したい順にこれを実行します。
debian/changelog
ファイルに適切なエントリを追加します-PPAバージョンが公式バージョンと区別されるようにバージョン番号を変更する必要があります。通常、最後のバージョン番号を増やし、ティルダ(〜)の後にカスタムバージョン文字列(たとえば、~jbowtie1
)を追加する必要があります。 dch -i
コマンドもこれに役立ちます。debuild -S
dput ppa:<your-ppa> ../wine*.changes<your-ppa>パラメーターは、アップロードするPPAのランチパッドページで指定されます(事前に作成する必要があります)。
通常、dputを実行する前にテストビルドを実行することをお勧めします。pbuilder
コマンドを使用すると、PPAビルドシステムがパッケージで行うことを再作成できます(つまり、クリーンインストールから開始し、必要なdepを追加し、その後ビルド)。
この場合、最初にpbuilderを設定する必要があります( https://wiki.ubuntu.com/PbuilderHowto を参照)。次に、dput
の前にこれを実行します。
Sudo pbuilder build ../*.dsc
buntu Packaging Guide には、パッチの対処方法など、Ubuntu用のパッケージ化方法に関するすべての情報が記載されています。
最初にソースパッケージをビルドする必要があります
https://wiki.ubuntu.com/PackagingGuide/Basic#Building%20the%20Source%20Package
Ubuntu 9.10以降では、PPAにプッシュするのは非常に簡単です
ターミナルに移動して入力するだけです
dput ppa:your-lp-id/ppa <source.changes>
ジェレミーの答えはまさにその通りです。
または、bzr
を使用して、ソース、パッチ、およびビルド/アップロードを処理できます。
https://wiki.ubuntu.com/DistributedDevelopment を参照してください。 https://wiki.ubuntu.com/DistributedDevelopment/Documentation で始まります。
いくつかの手順を簡素化する一方で、たとえば新しいアップストリームバージョンのマージ(元のUbuntuパッケージより先に取得する予定の場合)、元の「apt-get source」アプローチは、おそらく最終的にはより簡単で簡単です。