tar.xzを含むソースDebianパッケージを解凍します。

tar.xzを含むソースDebianパッケージを解凍します。

ダウンロード.tar.gzしました.dsc.diff.gz強く打つWheezyのパッケージ:https://packages.debian.org/wheezy/bash。その後、dpkg-source -xファイルを実行dscして解凍し、次のような結果を得ました。

$ ls -l
total 2696
-rw-rw-r-- 1 pgimeno pgimeno 2748840 Dec 30  2012 bash-4.2dfsg.tar.xz
drwxrwxr-x 3 pgimeno pgimeno    4096 Apr  3 23:36 debian

更新:アーカイブを手動で抽出できますが、これは問題ではありません。次の内容をよくお読みください。いくつかの重要な文章を強調してみました。

これは私を混乱させる。完全に解凍されたアーカイブを取得するにはどうすればよいですか?Debian パッチ適用だからできます。ソースコードを処理してビルドできるように変更されたパッケージを作成しますか?開梱して手でパッチを貼り付ける必要がありますか?それでは、どのディレクトリに抽出する必要がありますか?実行後のデフォルト値はtar -xf bash-4.2dfsg.tar.xzですbash-4.2。そのままにしておく必要がありますか、ファイルをホームディレクトリに移動する必要がありますか?そして何?

答え1

ソースパッケージで行われた操作を記録する中央の場所は、debian/rules。これはメイクファイルであり、buildすべてのソースアーカイブを解凍してパッチを適用し、すべてのソースアーカイブを解凍してpatchパッチを適用する必要があることを含む、いくつかの目標は必須または標準化されています。多くのパッケージが使用されていますヘルプスクリプト、主にデブヘルパーdh_*および最新のdhフロントエンド)と商業銀行

wheezyのbashパッケージはいくつかのdebhelperスクリプトを使用し、ターゲットを提供しませんpatch。また、ターゲット(通常のルール)は提供していませunpackんが、内部使用のためのいくつかのターゲットも提供します。

make -f debian/rules bash_src=bash unpack-bash
make -f debian/rules bash_src=bash patch-bash

答え2

valdynは、irc.oftc.net次の解決策を見つけるのに役立ちました。

debian/rules bash-configure

いくつかの追加作業を行い、ソースコードの一部ではなくいくつかのディレクトリを残しましたが、少なくとも解凍してパッチを適用したので、パッチされたソースコードで作業できるようになりました。私が疑ったように、ターゲットディレクトリはbash-4.2手動で解凍するのと同じではありませんbash

しかし、これは汚いハッキングのように感じます。私はまだ一般的なビルド用にソースコードを準備し、同時に構成を実行せずにほとんどのパッケージのように最初に処理できる「正しい」ソリューションを探しています。

関連情報