Đây là nơi tôi luôn thấy thiếu tài liệu. Tôi gần như chỉ học được cách thức hoạt động của nó bằng cách xem xét cách nó được thực hiện trong các gói khác. Như với hầu hết mọi thứ trong bao bì Debian, có một vài cách để làm điều này. Tôi thấy cách đơn giản nhất là sử dụng debian/package.install
tập tin. Đây là một ví dụ về gói tôi đã làm việc, trí tưởng tượng (chi nhánh bzr) .
Đầu tiên, chúng ta cần tạo gói trong debian/control
. Có ba khổ thơ bây giờ. Một cho gói nguồn và một cho mỗi gói nhị phân. Lưu ý rằng gói dữ liệu foo nên được Architecture: all
. Cũng lưu ý rằng trí tưởng tượng phụ thuộc vàoimagination-common (= ${source:Version})
.
Tiếp theo, chúng tôi tạo một debian/imagination.install
tập tin. Điều này chứa các tệp hoặc đường dẫn cụ thể mà chúng tôi muốn kết thúc trong gói trí tưởng tượng. Đối với gói này, chúng tôi muốn tất cả các tệp phụ thuộc kiến trúc. Các tập tin máy tính để bàn được bao gồm vì nó cần phải nói với nhị phân mà nó gọi trong Exec:
dòng của nó .
usr/bin/
usr/lib/
/usr/share/applications/imagination.desktop
Chúng ta cần tạo một debian/imagination-common.install
tập tin. Điều này sẽ chứa tất cả các tệp độc lập về kiến trúc, hình ảnh, bản dịch, tài liệu và những thứ tương tự.
/usr/share/doc/
/usr/share/icons/
/usr/share/imagination/
/usr/share/locale/
man dh_install
mô tả những gì thực sự đang diễn ra ở đây:
có thể bạn có một gói lớn xây dựng nhiều gói nhị phân. Bạn có thể sử dụng Makefile ngược dòng để cài đặt tất cả vào debian / tmp, sau đó sử dụng dh_install để sao chép các thư mục và tệp từ đó vào các thư mục xây dựng gói thích hợp.
Điều đó có nghĩa là "các thư mục xây dựng gói phù hợp" là vào cuối quá trình xây dựng, mọi thứ sẽ có trong kết quả foo.deb
sẽ được tìm thấy src/debian/foo
. Các tập tin sẽ kết thúc foo-data.deb
sẽ được tìm thấy trong src/debian/foo-data
. Về debian/rules
cơ bản chỉ là một Makefile, bạn có thể bắt đầu tưởng tượng ra những cách khác để có được kết quả tương tự.