2014-01-31 5 views
1

이전에 나는 간단하게 debian 패키지를 만들었습니다. 하지만 이제는 외부 패키지에 따라 달라지는 애플리케이션 용으로 동일한 것을 만들어야합니다. libwebkitgtk-1.0-0 및 jdk1.7.0은 필요한 외부 패키지입니다. 자동으로 설치되기를 바랍니다. 또한 내 소프트웨어에는 사용자의 홈 디렉토리에 저장해야하는 특정 데이터가 있습니다.우분투 12.04에서 debian 패키지 만들기 LTS

Pls가 나를 안내합니다.

답변

2

debian/control 파일에는 필요한 다른 패키지에 대한 Depends: 선언이 있어야합니다. Apt가이를 다운로드하여 설치하면 dpkg은 설치되지 않으면 설치를 거부합니다.

데비안 패키지에는 사용자의 홈 디렉토리가 없습니다. 필요한 파일이 누락되면 /usr/share/yourpackage/config/* 사본으로 사용자의 홈 디렉토리를 채 웁니다.

#!/bin/sh 
test -d $HOME/.yourpackage || 
    cp -r /usr/share/yourpackage/config $HOME/.yourpackage 
exec /usr/lib/yourpackage/yourpackage.bin "[email protected]" 

그래서 실제 바이너리는 yourpackage.bin에이 래퍼는 /usr/bin/yourpackage입니다.

추가 포인트는 경로가 완전히 하드 코드되지 않도록 환경 변수를 사용하십시오. 아마도 사용자보다 더 중요한 (테스트가 더 쉬워 지겠지만) 두 가지를 염두에 두어야합니다.

(힌트 :이 설정되어있는 경우 ${YOURPACKAGE_SITE_CONFIG-/usr/share/yourpackage/config}/usr/share/yourpackage/config에, 그렇지 않으면 $YOURPACKAGE_SITE_CONFIG의 값으로 확장됩니다 당신에 대한 무시와 빌드 디렉토리에 간단한 테스트를 실행할 수 있도록 $YOURPACKAGE_CONFIG$YOURPACKAGE_BIN에 대한 비슷한 작업을 수행 할 수 있습니다. 모두 3 개).

관련 문제