Debian全体をビルドする方法

Debian全体をビルドする方法

仮定しましょう:

  • ローカルにソースストアのミラーがあります。
  • 私は私が実行しているアーキテクチャ(私の場合はi386)に対してのみビルドしたいと思います。
  • 私はカスタマイジングには興味がありません。実際、私は生成されたバイナリパッケージをできるだけ公式パッケージに近づけたいと思います。それ以来、整理は私が責任を負います。使えそうだレプリカ
  • できるだけ簡単にしたいです。

答え1

Debian はダウンロード可能なバイナリパッケージを作成するためにすでに内部的にこれを行っており、ほとんどのツールがディストリビューションに含まれています。 (いくつかのグルスクリプト以外のすべてを考えています。)

興味のあるツールは次のとおりです。

  • debian-builder: ソースからパッケージを再構築する
  • builddbuildd: 一部のパッケージを自動的にビルドします。
  • pbuilder:プライベートパッケージビルダー(chroot、主にDebian開発者用)
  • devel::debianより一般的には、またはworks-with::software:source()マークが付いたパッケージを探しますaptitude search '?tag(devel::debian) | ?tag(works-with::software:source)'

答え2

たぶんこんなことはありませんか?

#!/bin/bash

# This gets a list of all available packages
for i in $(dpkg -l \* | awk '/^[a-z]/ {print $2}')
do
  # This downloads and unpacks the source.
  # Any src packages already properly unpacked in the cwd won't be downloaded a second time.
  apt-get source $i
  apt-get build-dep -y $i
done

# This finds all buildable directories
for i in $(find . -name debian -type d | sed s/debian.*//g)
do
  cd $i
  debian/rules binary
  cd -
done

すでにパッケージがあると言われていますが、どのような形式なのかはよくわかりません。パッケージ内のすべてのパッケージを正しく解凍した場合、cwdaptはそのパッケージをスキップして次のパッケージに移動します。-sapt-getに渡してコマンドをテストすることもできます。

ビルドするパッケージと同じバージョンを使用している場合は、ほぼすべてのパッケージを一度にビルドする必要があります。

多くのストレージスペースと多くの時間が必要です。

関連情報