[ 上一頁 ] [ 目錄 ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ A ] [ 下一頁 ]


Debian新維護人員手冊
第 8 章 - 上傳套裝軟體


現在你已經完整地測試過你的新套裝軟體了,你可以開始Debian新維護者申請的過 程,http://www.debian.org/devel/join/newmaint講述了這個程序。


8.1 上傳到Debian檔案庫

一旦你成為正式的開發人員,你就可以上傳套裝軟體到Debian文件中了。你可以手 工做這件事情,但如果使用一些已經提供的自動化工具(比如dupload(1)dput(1)),這個過 程將會變得更容易。我們將仔細描述如何使用dupload來完成這一工作。

首先你必需設定dupload的設定檔案。你可以修改會影響整個系統的檔案/etc/dupload.conf,或是是建立一個屬於你自己的檔案~/.dupload.conf,來覆寫系統檔案中一些你希望修改的部分。把下面的 內容加入到檔案中去:

        package config;
      
        $default_host = "anonymous-ftp-master";
      
        $cfg{'anonymous-ftp-master'} = {
              fqdn => "ftp-master.debian.org",
              method => "ftp",
              incoming => "/pub/UploadQueue/",
              # files pass on to dinstall on ftp-master which sends emails itself
              dinstall_runs => 1,
        };
      
        1;

當然,要把我的個人設定改成你的,再閱讀一下dupload.conf(5)的手冊,搞懂這裡的每一個選項是什麼意思。

設定$default_host選項是最有竅門的──它會自動檢查預設情況下究竟使用哪一個 上傳序列。“anonymous-ftp-master”是一個主序列,但很有可能你會希望能夠使 用另外一個更快的。要了解關於上傳序列(queues)的更多內容,請閱讀位於/usr/share/doc/developers-reference/ch-pkgs.en-us.iso-8859-1.html#s-upload的開發人員參考中“Uploading a package”一節。

然後連線到你的Internet服務提供商,並且執行下面的命令:

        dupload gentoo_0.9.12-1_i386.changes

dupload會檢查檔案的MD5校驗碼是否和.changes檔案中的相同,正因為 此,它才會像在完整的rebuild, 第 6.1 節中所述警告你重新建立套裝軟體, 只有這樣它才能正常上傳套裝軟體。

如果你在ftp://ftp-master.debian.org/pub/UploadQueue/上傳時遇到問題,可以透過用ftp程式手動上傳以gnupg簽名的*.commands檔案到ftp://ftp-master.debian.org/pub/UploadQueue/來解決這個問題。 [3] 例如,使用hello.commands:

      -----BEGIN PGP SIGNED MESSAGE-----
      
      Uploader: Roman Hodek <Roman.Hodek@informatik.uni-erlangen.de>
      Commands: 
       rm hello_1.0-1_i386.deb
       mv hello_1.0-1.dsx hello_1.0-1.dsc
      
      -----BEGIN PGP SIGNATURE-----
      Version: 2.6.3ia
      
      iQCVAwUBNFiQSXVhJ0HiWnvJAQG58AP+IDJVeSWmDvzMUphScg1EK0mvChgnuD7h
      BRiVQubXkB2DphLJW5UUSRnjw1iuFcYwH/lFpNpl7XP95LkLX3iFza9qItw4k2/q
      tvylZkmIA9jxCyv/YB6zZCbHmbvUnL473eLRoxlnYZd3JFaCZMJ86B0Ph4GFNPAf
      Z4jxNrgh7Bc=
      =pH94
      -----END PGP SIGNATURE-----

8.2 上傳到私有的檔案庫

如果你想要建立一個私有的檔案庫,並以開發者的身份簡單使用dupload -t target_name命令將其放在URL="http://people.debian.org/~account_name"中, 你需要在/etc/dupload.conf檔案中加入:

      # Developer account
      $cfg{'target_name'} = {
              fqdn => "people.debian.org",
              method => "scpb",
              incoming => "/home/account_name/public_html/package/",
              # I do not need to announce
              dinstall_runs => 1,
      };
      $cfg{'target_name'}{preupload}{'changes'} = "
              echo 'mkdir -p public_html/package' | ssh people.debian.org  2>/dev/null ; 
              echo 'Package directory created!'";
      
      $cfg{'target_name'}{postupload}{'changes'} = "
              echo 'cd public_html/package ;
              dpkg-scanpackages . /dev/null >Packages || true ;
              dpkg-scansources . /dev/null >Sources || true ;
              gzip -c Packages >Packages.gz ;
              gzip -c Sources >Sources.gz ' | ssh people.debian.org  2>/dev/null ;
              echo 'Package archive created!'";

這裡,APT檔案庫是使用一個快速但寫的不太好的腳本透過遠端SSH來完成的。dpkg-scanpackagesdpkg-scansources需要的覆寫檔案都使 用了/dev/null。非Debian開發者可以使用這一技術在他自己的Web站 點上放置他自己的包裝檔。你也可以使用apt-ftparchive或其它腳本來創 建APT檔案庫。


[ 上一頁 ] [ 目錄 ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ A ] [ 下一頁 ]


Debian新維護人員手冊

version 1.2.3, 2005年4月3日.

Josip Rodin joy-mg@debian.org
華文版翻譯:李凌 lilingv@gmail.com
華文版翻譯:鄭原真 ycheng@slat.org