web-dev-qa-db-ja.com

Debianパッケージでのパッチの適用-パート2

パッチの適用について質問しました ここ 。今日、別のソースパッケージで同じ手順を使用してみましたが、失敗しました。共有-

~/games $ mkdir decopy

~/games/decopy $ apt-get source decopy

Reading package lists... Done
NOTICE: 'decopy' packaging is maintained in the 'Git' version control system at:
https://anonscm.debian.org/git/collab-maint/decopy.git
Please use:
git clone https://anonscm.debian.org/git/collab-maint/decopy.git
to retrieve the latest (possibly unreleased) updates to the package.
Need to get 46.9 kB of source archives.
Get:1 http://debian-mirror.sakura.ne.jp/debian unstable/main decopy
0.2-1 (dsc) [1,943 B]
Get:2 http://debian-mirror.sakura.ne.jp/debian unstable/main decopy
0.2-1 (tar) [43.2 kB]
Get:3 http://debian-mirror.sakura.ne.jp/debian unstable/main decopy
0.2-1 (diff) [1,760 B]
Fetched 46.9 kB in 42s (1,103 B/s)
dpkg-source: info: extracting decopy in decopy-0.2
dpkg-source: info: unpacking decopy_0.2.orig.tar.gz
dpkg-source: info: unpacking decopy_0.2-1.debian.tar.xz

次にリスト-

~/games/decopy $  ls                                                             

decopy-0.2  decopy_0.2-1.debian.tar.xz  decopy_0.2-1.dsc  decopy_0.2.orig.tar.gz

明らかにdecopy-0.2は物事がどこにあるかです。

/games/decopy/decopy$ wget https://bugs.debian.org/cgi-bin/bugreport.cgi?att=1;bug=854052;filename=use_tqdm_progress.patch;msg=10

~/games/decopy/ $ ─[$] ls

decopy-0.2  decopy_0.2-1.debian.tar.xz  decopy_0.2-1.dsc
decopy_0.2.orig.tar.gz use_tqdm_progress.patch

~/games/decopy $ cd decopy-0.2

~/games/decopy/decopy-0.2 $ patch -p1 < ../use_tqdm_progress.patch

 (Stripping trailing CRs from patch; use --binary to disable.)
patching file decopy/cmdoptions.py
(Stripping trailing CRs from patch; use --binary to disable.)
patching file decopy/tree.py
Hunk #2 succeeded at 190 (offset -6 lines).
Hunk #3 succeeded at 201 (offset -6 lines).
Hunk #4 succeeded at 303 (offset -6 lines).
Hunk #5 succeeded at 364 (offset -6 lines).

パッチを適用し、dchを使用して別の方法を実行します-

  ~/games/decopy/decopy-0.2 $ dch -n "Apply patch given in #854052".

  ~/games/decopy/decopy-0.2 $

このパッケージはdpkgis/wasのようなnativeパッケージではないため、ディレクトリは変更されませんでした。

ここで推奨される手順は何ですか?

また、どのパッケージがDebiannativeパッケージで、どれがそうでないかを知る方法はありますか?テストか何か?

3
shirish

これは「3.0(キルト)」パッケージ(debian/source/formatを参照)であるため、パッチを管理するにはquiltを使用する必要があります。パッチを元に戻します。

patch -R -p1 < ../use_tqdm_progress.patch

次に、適切な構造を作成します。

mkdir -p debian/patches
cp ../use_tqdm_progress.patch debian/patches
echo use_tqdm_progress.patch >> debian/patches/series

パッチを更新する必要があります。

quilt Push
quilt refresh

ディレクトリ名が変更されていないという事実と同様に、dchは問題ありません。今すぐパッケージをビルドできます。

dpkg-buildpackage -us -uc

ネイティブパッケージに関する限り、バージョンにハイフンが含まれていないという事実から、ネイティブパッケージを見つけることができます(一般的に言えば)。ここでは、バージョンは0.2-1であるため、ネイティブパッケージではありません。パッケージ内では、ネイティブパッケージの場合、debian/source/formatは「3.0(ネイティブ)」になります。

4
Stephen Kitt