전체 데비안을 빌드하는 방법

전체 데비안을 빌드하는 방법

가정해보자:

  • 로컬에 소스 저장소의 미러가 있습니다.
  • 저는 제가 실행 중인 아키텍처(제 경우에는 i386)에 대해서만 빌드하고 싶습니다.
  • 저는 커스터마이징에는 관심이 없습니다. 사실, 나는 생성된 바이너리 패키지가 가능한 한 공식 패키지에 가깝기를 원합니다. 그 이후로는 정리는 제가 책임지겠습니다. 나는 사용할 것 같아요레플리카.
  • 가능한 한 간단하고 싶습니다.

답변1

데비안은 다운로드할 수 있는 바이너리 패키지를 만들기 위해 이미 내부적으로 이 작업을 수행하고 있으며 대부분의 도구가 배포판에 포함되어 있습니다. (일부 글루 스크립트를 제외한 모든 것을 생각합니다.)

관심을 가질 수 있는 도구는 다음과 같습니다.

  • debian-builder: 소스에서 패키지 다시 빌드
  • buildd,buildd: 일부 패키지를 자동으로 빌드합니다.
  • pbuilder:개인 패키지 빌더(chroot, 주로 데비안 개발자용)
  • 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에 전달하여 명령을 테스트할 수도 있습니다.

빌드하려는 패키지와 동일한 버전을 사용하는 경우 거의 모든 패키지는 이와 같이 한 번에 빌드되어야 합니다.

많은 저장 공간과 많은 시간이 필요합니다.

관련 정보