Được tạo thủ công .deb, làm cách nào để tải lên PPA?


15

Tôi đã tạo thủ công .debvà tôi muốn tải nó lên PPA.

Câu hỏi của tôi như sau:

  • Điều đó có thể không?

và nếu như vậy,

  • Làm thế nào để làm điều đó?

Câu trả lời:


17

Không, bạn không thể làm điều đó. Launchpad không cho phép tải lên các gói nhị phân trực tiếp. Nó cần bạn tải lên các dsctập tin cùng changesvà tarball ban đầu. Sau đó, hệ thống xây dựng xây dựng nó trong một môi trường chroot sạch

Làm thế nào bạn xây dựng tarball này? Bạn đã có thư mục đóng gói đó là debian/thư mục? Đúng?

Đây là cách tôi làm:

  1. Giải nén / giải nén một tarball ngược dòng. Nóifoo-x.y.tar.gz

  2. Sau đó đặt thư mục debian / bên trong thư mục được trích xuất

  3. Đặt một mục trong tệp debian / changelog (bằng tay hoặc sử dụng dch -i. Nếu số phiên bản đọc nóix.y

  4. Đổi tên foo-x.y.tar.gzthành foo_x.y.orig.tar.gz. Vui lòng xem cách đặt tên tarball orig - sourcepackagename_x.y.orig.tar.gz

  5. Bây giờ thay đổi thư mục mà bạn có thư mục debian /

  6. Chạy debuild -S -k9E6622ABtrong đó 9E6622AB là khóa GPG của tôi. Bạn cần phải ký các gói của bạn.

Nếu mọi thứ đều ổn, thì ba tệp được tạo - .orig.tar.gztệp đó , .dsctệp đó và tệp thứ ba là .changestệp

Tôi hy vọng bạn sẽ sử dụng pbuilder / cowbuilder hoặc bất kỳ trình xây dựng nào bạn chọn để tạo tệp deb.

Nghỉ ngơi bạn phải làm là

dput ppa: yourusername / ppaname foo.changes

Tất nhiên, bạn cần tạo một PPA của tên đó


Trong trường hợp phụ thuộc của bạn là viên ngọc ruby mà sử dụng hệ thống bao bì không tương thích, sau đó bạn có thể sử dụng postinst, preinst, postrm, và prermcác tập tin để kiểm soát tốt hơn quá trình đóng gói


4

Bạn không thể tải lên một .deb, bạn cần tải lên các nguồn cho .deb cho PPA để tạo chúng (điều này, nếu .deb của bạn phụ thuộc vào kiến ​​trúc, cho phép xây dựng nó cho cả 32 bit và 64 bit!) . Xem ở đây về việc bắt đầu với điều đó.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.