我正在尝试为我的 ppa 构建一个使用来自其他两个 ppa 的包的包。我想使用 进行测试构建pbuilder-dist
。我以前做过这个,我知道我需要以下组合:
OTHERMIRROR
在~/.pbuilderrc
--override-config
,但我不确定什么时候将其添加到pbuilder-dist
调用中pbuilder-dist raring update
和pbuilder-dist raring build <pkg>.dsc
- 也许是其他东西?
有人能详细说明一下吗?我尝试了不同的组合,但似乎都没有效果。
我需要的两个 ppa 是ppa:gnome3-team/gnome3
和ppa:tkluck/gnome3
。谢谢!
答案1
我使用的是具有增强配置的 pbuilder 而不是 pbuilder-dist,但步骤基本相同:
将您的额外源添加到
OTHERMIRROR
您的变量中~/.pbuilderrc
:OTHERMIRROR="deb http://ppa.launchpad.net/gnome3-team/gnome3/ubuntu raring main|deb http://ppa.launchpad.net/tkluck/gnome3/ubuntu raring main"
Chroot 进入你的 pbuilder 环境来添加存储库密钥(或者用这两个密钥创建一个本地密钥环并将其添加到
APTKEYSTRINGS
变量或添加你的本地/etc/apt/trusted.gpg
密钥环):pbuilder-dist raring login --save-after-login apt-key adv --keyserver pgp.mit.edu --recv-keys 3B1510FD 568F2AD3 exit
(当然,您可以直接扩展您的 sources.list 并跳过步骤 1 和 3,但会
pbuilder-dist update
重置 sources.list。)更新你的 pbuilder 环境(使用普通的 pbuilder 你必须添加
--override-config
):pbuilder-dist raring update --release-only
注意:由于开发版本
proposed
默认启用了源。这是通过将proposed
源传递给 pbuilder 的--othermirror
命令行选项来实现的 - 这会覆盖配置文件值。因此您必须使用开关--release-only
。构建你的包:
pbuilder-dist raring build YOURPACKAGE.dsc
答案2
您还可以创建一个Dsomething
文件来说明要添加的存储库。如果您HOOKDIR="${HOME}/.pbuilder-hooks/"
的 中有~/.pbuilderrc
,则可能存在一个名为的文件,$HOME/.pbuilder-hooks/D10addppa
其内容如下:
#!/bin/sh
echo "deb deb http://ppa.launchpad.net/gnome3-team/gnome3/ubuntu raring main" >> /etc/apt/sources.list
echo "deb http://ppa.launchpad.net/tkluck/gnome3/ubuntu raring main" >> /etc/apt/sources.list
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 3B1510FD 568F2AD3
apt-get update
该方法还可以保持 PPA 变化的时间性。