Chương 9. Tải gói phần mềm lên

# Chương 9. Tải gói phần mềm lên

Việc viết lại tài liệu này với các nội dung cập nhật và nhiều các ví dụ thực tế hơn đã có ở Guide for Debian Maintainers. Vui lòng sử dụng tài liệu mới này như là tài liệu hướng dẫn chính.

Debian now requires source-only uploads for normal upload. So this page is outdated.

Giờ bạn đã kiểm tra gói phần mềm mới của bạn kỹ càng, bạn muốn phát hành nó trên kho công cộng để chia sẻ nó.

## 9.1. Tải nó lên kho lưu trữ Debian

Khi bạn trở thành một nhà phát triển chính thức, [82] bạn có thể tải gói phần mềm lên kho lưu trữ Debian. [83] Bạn có thể làm điều này bằng tay, nhưng sẽ dễ hơn nếu bạn sử dụng các công cụ tự động sẵn có như dupload(1) hay dput(1). Chúng tôi sẽ mô tả công việc sẽ được thực hiện ra sao với dupload. [84]

Đầu tiên bạn phải tạo tập tin cấu hình của dupload. Bạn có thể chọn sửa tập tin cấu hình tầm hệ thống `/etc/dupload.conf`, hoặc tạo tập tin `~/.dupload.conf` riêng của bạn vượt quyền cấp trên ở những cài đặt bạn muốn thay đổi.

Bạn có thể đọc trang tham khảo dupload.conf(5) để hiểu ý nghĩa của từng tham số ở đây.

Tham số `$default_host` quyết định hàng đợi tải lên nào sẽ được sử dụng ngầm định. `anonymous-ftp-master` là hàng đợi chính, nhưng có thể bạn sẽ muốn sử dụng một hàng đợi khác. [85]

Khi được kết nối tới Internet, bạn có thể tải gói phần mềm của bạn lên như sau:

    $ dupload gentoo_0.9.12-1_i386.changes

dupload kiểm tra rằng các mã tập tin SHA1/SHA256 khớp với các mã được liệt kê trong tập tin `.changes`. Nếu chúng không khớp, nó sẽ cảnh báo bạn để tái biên dịch như mô tả ở Phần 6.1, “(Tái) biên dịch toàn bộ” để nó có thể được tải lên đúng cách.

Nếu bạn gặp phải một vấn đề tải lên tại ftp://ftp.upload.debian.org/pub/UploadQueue/, bạn có thể sửa nó bằng việc tải lên bằng tay một tập tin `*.commands` ký theo kiểu GPG với ftp. [86] Ví dụ, dùng `hello.commands`:

    -----BEGIN PGP SIGNED MESSAGE-----
    Hash: SHA1
    Uploader: Foo Bar <Foo.Bar@example.org>
    Commands:
     rm hello_1.0-1_i386.deb
     mv hello_1.0-1.dsx hello_1.0-1.dsc
    -----BEGIN PGP SIGNATURE-----
    Version: GnuPG v1.4.10 (GNU/Linux)

    [...]
    -----END PGP SIGNATURE-----

## 9.2. Đính kèm `orig.tar.gz` cho việc tải lên

Khi bạn tải gói phần mềm lên kho lưu trữ lần đầu tiên, bạn cũng cần đính kèm tập tin nguồn nguyên gốc `orig.tar.gz`. Nếu mã phiên bản Debian của gói phần mềm này không phải là `1` hay `0`, bạn phải cung cấp tham số `-sa` của dòng lệnh dpkg-buildpackage.

Đối với dòng lệnh dpkg-buildpackage:

    $ dpkg-buildpackage -sa

Đối với dòng lệnh debuild:

    $ debuild -sa

For the pdebuild command:

    $ pdebuild --debbuildopts -sa

Ngược lại, tham số `-sd` sẽ buộc việc loại trừ tập tin nguồn nguyên gốc `orig.tar.gz`.

## 9.3. Những lần tải lên bị bỏ qua

Nếu bạn tạo quá nhiều mục trong tập tin `debian/changelog` bắng việc bỏ qua các lần tải lên, bạn phải tạo một tập tin đúng quy định `*_.changes` bao gồm tất cả những thay đổi từ lần tải lên cuối cùng. Điều này có thể được thực hiện bằng việc đặt giá trị phiên bản cho tham số `-v` của lệnh dpkg-buildpackage, ví dụ, ``1.2``.

Đối với dòng lệnh dpkg-buildpackage:

    $ dpkg-buildpackage -v1.2

Đối với dòng lệnh debuild:

    $ debuild -v1.2

For the pdebuild command:

    $ pdebuild --debbuildopts "-v1.2"

[82] Xem Phần 1.1, “Động lực xã hội của Debian”.

[83] Có các kho lưu trữ truy cập công cộng như là http://mentors.debian.net/ vốn hoạt động gần như không khác gì với kho lưu trữ Debian và cung cấp một khu vực tải lên cho những người không phải DD(nhà phát triển Debian). Bạn có thể tự tạo một kho tương tự sử dụng các công cụ tại http://wiki.debian.org/HowToSetupADebianRepository. Vì thể phần này cũng sẽ hữu dụng cho những người không phải DD.

[84] Gói phần mềm `dput` có vẻ đến với nhiều tính năng và có vẻ đang trở nên thông dụng hơn gói phần mềm `dupload`. Nó sử dụng tập tin `/etc/dput` cho việc cấu hình mọi nơi của nó và tập tin `~/.dput.cf` cho việc cấu hình từng người dùng. Nó cũng hỗ trợ đầy đủ các dịch vụ liên quan đến Ubuntu.

[85] Xem Debian Developer's Reference 5.6, "Uploading a package".

[86] Xem ftp://ftp.upload.debian.org/pub/UploadQueue/README. Ngoài ra, bạn có thể dùng lệnh dcut từ gói phần mềm `dput`.

Chương 8. Cập nhật gói phần mềm |  | Phụ lục A. Đóng gói nâng cao