우리는 Debian Jessie용 패키지를 빌드하기 위해 sbuild를 사용하고 있으며 지금까지는 잘 작동하고 있습니다.
하지만 한 가지 세부 사항만 말씀드리겠습니다. Jessie 백포트 아카이브에서 빌드 종속성 중 하나를 가져오고 싶습니다.
그러나 백포트에서 해당 패키지(및 해당 패키지만)를 추출하도록 chroot를 구성하는 방법을 모르겠습니다.
Debian 시스템에서 적절하고 고정된 환경 설정을 구성하는 방법을 알고 있지만 sources.list
및 매뉴얼 페이지에서 리포지토리 추가 및 패키지 고정과 관련된 내용을 찾을 수 없습니다.sbuild(1)
sbuild.conf(5)
답변1
IRC의 @bigon 덕분에 방법을 찾았습니다.
sbuild
이제 런타임 시 이미 사용 가능한 옵션 외에 다음 옵션을 명령에 전달합니다.
$ sbuild ... --build-dep-resolver=aptitude --extra-repository="deb http://deb.debian.org/debian jessie-backports main" ...
--extra-repository
Jessie 백포트 는 chroot에서 사용할 수 있는 유효한 아카이브로 추가됩니다 .
그러나 불행히도 그것만 으로는 충분하지 않습니다. 왜냐하면 Release
백포트에 보관된 파일 "NotAutomatic: yes"
에는 .debian/control
--build-dep-resolver=aptitude
이것이 작동하는 곳은 다음과 같습니다 . aptitude
예를 들어 누락된 종속성을 우연히 발견했지만 apt
백포트 아카이브에서 해당 종속성을 찾아 자동으로 거기에서 가져오기로 결정합니다.
이것은 내 취향에 비해 너무 "자동적"이므로 몇 가지 명시적인 수정 사항을 설정하는 방법을 선호하지만 지금까지 이것이 내가 찾은 유일한 방법입니다.
@bigon님 감사합니다!