다른 패키지를 자동으로 설치하는 메타 패키지를 만드는 방법은 무엇입니까?


답변:


47

이와 같은 메타 equivs 패키지는 의존성 정보만으로 패키지를 생성하는 도구를 사용하여 생성 할 수 있습니다 .

먼저 디렉토리를 작성하십시오.

mkdir my-metapackage
cd my-metapackage/

이제 프로그램을 실행하십시오 :

equivs-control ns-control

이 파일을 생성하고 ns-control텍스트 편집기로이 파일을 엽니 다. 생성 한 제어 파일에는 설치하려는 패키지에 따라 Depends또는 Recommends행을 수정 해야합니다 .

Section: misc
Priority: optional
Standards-Version: 3.9.1

Package: my-metapackage
Version: 1.0   
Depends: openssh-server, gedit
Description: This package installes an ssh server and a text editor
 The Long description of this package ends with a newline!

(단지 예를 들어, 더 많은 정보를 포함시켜야합니다)

마지막으로 다음을 실행하여 패키지를 빌드하십시오.

equivs-build ns-control

패키지는에 있습니다 my-metapackage/my-metapackage_1.0_all.deb.

소스 패키지도 생성하려면 --full옵션을 equivs-build예를 들어 로 전달할 수 있습니다 equivs-build --full ns-control. 이것은 debuild를 사용하고 .dsc 및 .tar.gz 파일을 만듭니다.

PPA에 업로드 할 수있는 소스 .changes 파일을 만들려면 다음을 사용하여 소스 패키지를 추출 및 빌드하십시오.

dpkg-source -x my-metapackage_1.0.dsc
cd my-metapackage-1.0
debuild -S

ns-control에서 설정 한 관리자가 GPG 키와 일치하면 PPA에 제출할 my-metapackage_1.0_source.changes 파일을 빌드하고 서명해야합니다.


감사합니다. 나중에 이것을 테스트 할 가능성이 높지만 지금까지 지침이 작동했습니다. :)
토마스 워드

2
완벽하게 작동합니다!
Stefano Palazzo

대답 ajmitch에 감사드립니다. 그러나 이유 때문에, ~/.devscripts파일이 있고 특별히 devscripts 파일에서 사용할 다른 GPG 키를 정의하면 dpkg / debuild 프로세스를 무시하고 가져옵니다. .devscripts답변의 마지막 문장에 대한 주목할만한 포인트로 –에 지정된 GPG 키 사용
Thomas Ward

패키지 Depends:를 설치하면 패키지가있는 경우에만 설치가 양호 하다는 것을 알았 습니다. 그들은 내 컴퓨터에없는 경우 설치하지 않습니다. 그것들을 설치하기 위해 Provides대신 사용했고 그것은 매력처럼 작동합니다. 내 코드보기 (방금 변경) : github.com/palladius/debian-packages/blob/master/…
Riccardo
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.