저는 Meteor 애플리케이션용 데비안 래퍼를 작성 중입니다. 이 명령은 그 위에서 실행해야 하는 "패키지"를 생성합니다 meteor build
(node.js 종속성을 해결하기 위해). npm install
그런 다음 파일을 패키징할 수 있습니다.
번들을 어디서 생성하나요?
나는 debian/tmp의 하위 디렉터리에 다음과 같이 규칙 파일을 만들기로 결정했습니다:
override_dh_auto_build:
cd bigbluebutton-html5; meteor build --directory ../debian/tmp/bigbluebutton-html5
cd debian/tmp/bigbluebutton-html5/bundle/programs/server; npm install
하지만 debian/tmp는 바이너리 단계가 시작될 때 제거됩니다 dh_prep
. 나는 다음과 같이 다시 작성하여 이 문제를 해결할 수 있었습니다 dh_prep
.
# This is here to prevent removal of debian/tmp during the install step.
override_dh_prep:
그러나 이것은 직관에 어긋나는 것 같습니다.
"번들"을 표시하기에 더 좋은 장소를 제안할 수 있는 사람이 있습니까? 아니면 Meteor 프로젝트를 패키징하는 더 좋은 방법이 있나요?
답변1
이는 일반적으로 프로젝트 build
의 최상위 레벨 아래 디렉토리에 있거나 debian/build
.debian/clean
를 사용하면 현재 겪고 있는 것 이상의 문제가 발생할 수 있습니다 debian/tmp
. dh_prep
예를 들어 생성된 패키지의 어딘가에 dh_missing
모든 것이 설치될 것으로 예상합니다 .debian/tmp
지난 몇 달 동안 데비안 개발 커뮤니티에서 이에 대한 논의가 있었습니다.이 스레드최근에는 더 광범위한 제안이 시도되었습니다.