查看“Debian-maint-guide/8”的源代码
来自Ubuntu中文
←
Debian-maint-guide/8
跳到导航
跳到搜索
因为以下原因,您没有权限编辑该页面:
您请求的操作仅限属于该用户组的用户执行:
用户
您可以查看和复制此页面的源代码。
= 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.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-scanpackages和dpkg-scansources需要的复盖文件都使用了/dev/null。非Debian开发者可以使用这一技术在他自己的Web站点上放置他自己的包。你也可以使用apt-ftparchive或其它脚本来创建APT档案库。 [[Category:Debian新维护人员手册]]
返回
Debian-maint-guide/8
。
导航菜单
页面操作
页面
讨论
阅读
查看源代码
历史
页面操作
页面
讨论
更多
工具
个人工具
登录
导航
首页
最近更改
随机页面
页面分类
帮助
搜索
编辑
编辑指南
沙盒
新闻动态
字词处理
工具
链入页面
相关更改
特殊页面
页面信息