約XNUMX年前に説明しました Archlinux用のパッケージを作成する。 さて、今日はパッケージからそれらを作成する方法を説明します debファイル、で使用されるもの Debian / Mint / Ubuntu /など.
この記事は、フォーラムでユーザーからの質問を読んだ後に作成されました ジョルジェク AURからパッケージをインストールできなかったため、主に古いバージョンを使用していたため 製造中止 PKGBUILDの(幸いなことに私は以前にこの方法でパッケージを作成しました)、必要なプログラムのパッケージを作成する方法についても説明します 32ビットライブラリ、の クローズドコード o すでにコンパイル済み また、ダウンロード用のパッケージが異なること。
PKGBUILDの基本は同じですが、いくつかの変更があります。
最初の変更は文の使用になります elifの場合 バッシュ
if [ "${CARCH}" = 'x86_64' ]; then
ARCH='amd64'
md5sums=('192a0a222893d59d95f00c34f3c8a674')
depends=('openal' 'lib32-openal')
elif [ "${CARCH}" = 'i686' ]; then
ARCH='i386'
md5sums=('047c670443124193c5cc3dd54da99925')
depends=('openal')
fi
source=("http://www.unaurl.com/files/${name}.$ARCH.deb")
この例では、後で変更するために使用される変数が定義されています。 URL パッケージはどこにありますか(この場合、ダウンロードするパッケージのアーキテクチャ)。
また、アーキテクチャによっては、 MD5の合計 したがって、これらを対応するものに変更します。
最後に、この例では依存関係を変更していることがわかります。 一部の64ビットプログラムでは、インストールする必要があります 一部のライブラリの32ビットバージョン だから私たちはそれらを示さなければなりません。 それらが必要でない場合は、通常の方法で変数を定義するだけです。
.debパッケージの場合、関数内に必要なのは次の行だけです。 パッケージ ():
cd "${srcdir}/"
tar xvzf data.tar.gz -C .
cp -r usr ${pkgdir}
ご覧のとおり、この場合、パッケージを生成するために必要なのは3行だけです。 他の何かが必要な場合(たとえば、パッケージに付属していないファイルをコピーしたり、その内容を変更したりする場合)、他のパッケージと同じように配置する必要があります。
そして出来上がり、すでにmultilibパッケージがあるか、debパッケージから作成してすぐに使用できます。
気に入っていただけて、よく説明できたことを願っています