Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1109478
  • 博文数量: 284
  • 博客积分: 8223
  • 博客等级: 中将
  • 技术积分: 3188
  • 用 户 组: 普通用户
  • 注册时间: 2008-12-01 13:26
文章分类

全部博文(284)

文章存档

2012年(18)

2011年(33)

2010年(83)

2009年(147)

2008年(3)

分类: LINUX

2012-02-21 07:28:52

   加入ubuntu的开发工作,你需要做很多准备工作. 这篇文章翻译了ubuntu的Getting Set Up。原文地址:http://developer.ubuntu.com/packaging/html/getting-set-up.html

   文章的目的是为了准备好你的机器,以便可以进行打包和上传package到ubuntu服务器的工作。涉及内容包括:

  • 安装打包相关软件.包括:
    • 打包工具
    • 加密软件以便确认个人的工作
    • 其他文件以便安全传输文件
  • 在Launchpad创建和配置自己的用户
  • 设置开发环境来帮助构建package,与其他开发者合作,并在Launchpad提交你的修改。

注意:

   建议使用最新的Ubuntu系统。以便在相同环境下测试和进行开发。

   别担心, Ubuntu development release wiki page 将告诉我们大部分的开发流程或回答疑问。

安装基本软件

     我们需要安装很多工具,以便更方便的进行开发,在后面将会逐一介绍。为了安装这些工具,你可以运行如下命令:

$ sudo apt-get install gnupg pbuilder ubuntu-dev-tools bzr-builddeb apt-file

   注意: 从 Ubuntu 11.10 “Oneiric Ocelot” , 下面的命令将会安装上述命令设计的工具以及一些其他的辅助性工具:

$ sudo apt-get install packaging-dev

   这个命令将会安装下列软件:

  • gnupg – 包含工具用于创建提交修改所需要的加密key。
  • pbuilder –交叉编译器
  • ubuntu-dev-tools (and devscripts, a direct dependency) – 一系列编译工具用于构建
  • bzr-builddeb (and bzr, a dependency) – 版本控制
  • apt-用于查找包含指定文件的二进制包
  • apt-cache (part of the apt package) 提供更多关于Ubuntu package的更多信息
生成 GPG key

  GPG 为 的缩写。它使用 OpenPGP 标准(用于数据签名和加密). 在这里,我们需要使用数字签名来确认你所作的工作。 如果你上传了一个源码包到Launchpad, 系统必须在接受他之前确认你的身份。

   生成一个GPGkey,运行:

$ gpg --gen-key

   GPG 将会问你需要何种key。选择默认的 (RSA and DSA) 就可以. 然后将问你key的大小. 默认为(currently 2048), 这也可以, 但 4096 更安全. 之后,询问你是否希望key有期限. 你可以选择“0”, 这意味着你的key将永远不会过期. 接着问你的姓名和email.最后你将会被要求设置密码。

   之后GPG将会为你生成一个KEY, 将会花费一些时间; 由于程序需要一些随机数, 你需要尽量的进行一些操作,比如移动鼠标或者点击键盘. 系统同时也会给你一些提示,告诉你是否还需要一些额外的操作来生成随机数。(做到这里,一开始我还以为机器死了,怎么一点反应都没有,后来仔细看了提示才知道需要进行操作生成随机数)

   一旦完成,你将获得下面提示:

pub 4096R/43CDE61D 2010-12-06 Key fingerprint = 5C28 0144 FB08 91C0 2CF3 37AC 6F0B F90F 43CD E61D uid Daniel Holbach sub 4096R/51FBE68C 2010-12-06

   其中 43CDE61D就是 key ID.

   接着,你需要上传你的key到服务器去. 键入如下命令:

$ gpg --send-keys

   这将把你的KEY上传到服务器. 一旦同步完成,你数字签名的公用 key 就可以用于在世界范围内验证你的工作。

创建你的SSH key:

Secure Shell的缩写, 这是一个允许你在网络上安全传输数据的规约。 推荐使用SSH来进入另外一台服务器, 以及传输文件. 在这里, 我们使用SSH 来上传源码包到Launchpad.

   生成 SSH key, 可以键入:

$ ssh-keygen -t rsa

   可以使用系统默认的设置. 为了安全,推荐使用密码.

设置pbuilder

   pbuilder 允许你在本地机器上进行构建。 有如下功能 :

  • 构建可以在一个干净和最小的环境下完成. 帮助你确认构建过程可复制,并不会搞乱你自己的系统
  • 不需要在本地安装必须的构建依赖关系
  • 你可以为Ubuntu and Debian的不同版本进行构建。

   设置pbuilder 可以运行:

$ pbuilder-dist create

   这里 可以是 natty, maverick, lucid或者是 Debian 的sid。(这里解释下,刚看到这里时,由于对ubuntu的系统不够了解,实在不知道natty和maverick,还有lucid是什么。后来在网上baidu了下才知道,原来这是ubuntu的小版本名如:由于我的系统是11.10,网上查了下,可以使用Natty,所以,这里就应该使用natty。)这将花费一些时间,因为需要从网上下载一些东西.

使用 Launchpad

    完成上述步骤后, 下一步需要配置Launchpad. 我们需要关注下面问题:

  •  Launchpad是什么,如何创建Launchpad账户
  • 上传你的GPG和SSH keys到Launchpad
  • 配置Bazaar与Launchpad协同工作
  • 配置Bash与Bazaar协同工作
关于Launchpad

       Launchpad是我们在Ubuntu上的工作空间. 不仅仅存放packages 和代码, 还包括翻译,bug、报告正在Ubuntu上工作的人的信息以及他们的团队伙伴. 你也可以使用Launchpad来发布你的修改, 以及获得其他 Ubuntu开发者的开发信息.

   需要注册到Launchpad并提供相关信息 之后将允许你上传和下载各类代码或信息。

   与hosting Ubuntu不同, Launchpad可以放置各类项目. 详细信息可以参考.

获取Launchpad帐号

   如果你还没有帐号, 你可以很简单的. 如果你已经有了,却不记得id, 你可以在下面的网页找到

   Launchpad的注册过程首先会问你一个提示的用户名. 建议使用实际名字,以便其他人认识你.

   当你注册了一个新帐号, Launchpad将给你发送邮件,其中包含一个链接。通过这个链接,你可以验证你的邮箱。在Launchpad的 包含更多信息。

   上传你的GPG key到Launchpad

   查询你的 GPG fingerprint,可以运行:

$ gpg --fingerprint

       将出现下列信息:

pub 4096R/43CDE61D 2010-12-06 Key fingerprint = 5C28 0144 FB08 91C0 2CF3 37AC 6F0B F90F 43CD E61D uid Daniel Holbach sub 4096R/51FBE68C 2010-12-06

   打开 并拷贝 “Key fingerprint” 到text输入框. 在上面的例子中就是5C28 0144 FB08 91C0 2CF3  37AC 6F0B F90F 43CD E61D. 然后点击“Import Key”.

    Launchpad将使用fingerprint 来检查Ubuntu key server, 如果成功, 将给你发送一个加密邮件要求你来确认你的密码. 检查你的邮箱并读取邮件,如果你的邮箱支持自动OpenPGP加密,将直接提示你需要输入用于解密的密码. 输入密码, 点击链接。

    Launchpad加密邮件使用了你的公用 key, 用于确定这个Key确实属于你. 如果你的邮箱不支持OpenPGP加密, 拷贝邮件的内容, 在终端中键入gpg, 然后粘粘邮件内容到终端窗口中.

    回到 Launchpad 网站, 点击确认按钮,Launchpad完成你的操作.

    可以在下面的网站找到更多信息

         这里注意:
   
我尝试了网上的操作没有成功,后来试了下面这个网站上的做法:
   
    在ubuntu里面查看了邮件内容,具体做法如下:
    1. 先把邮件中从
"-----BEGIN PGP MESSAGE-----" 到"-----END PGP MESSAGE-----"的内容拷贝到一个文件中,注意,这两行也需要拷。
    2. 在终端中执行命令: gpg -t xxx.txt   其中xxx.txt为刚刚创建的的文件名。
    3. 程序会提示,需要输入密码,然后给出一个新的文件名用于放解密的结果。
    4. 最后,打开邮件中的链接完成验证。

上传 SSH key 到 Launchpad

    打开, 同时打开 ~/.ssh/id_rsa.pub 文件. 这是你的 SSH 公共key,可以在Launchpad中共享。拷贝文件内容到网页的text框中,然后点击 Import Public Key。如果看更多的信息可以打开下面的页面:

配置 Bazaar

    Bazaar工具用于存放代码修改、合并提交和下载代码,主要用于新版本ubuntu的代码开发。

    配置Bazaar,你只要运行:

$ bzr whoami "Bob Dobbs "
$ bzr launchpad-login subgenius

    whoami 通知Bazaar用于提交信息中的用户名和邮箱名。在launchpad登陆界面 你可以设置你的Launchpad ID. 这样,你发布在Launchpad 上的代码将和你的信息联系在一起。

    注意: 如果你记不的ID, 请到 查看更多信息。

配置 shell

    与Bazaar类似, Debian/Ubuntu工具也需要知道你是谁。请打开~/.bashrc文件增加如下记录:

$ export DEBFULLNAME="Bob Dobbs" $ export DEBEMAIL="subgenius@example.com"

    保存文件后重启,或使用命令使修改生效,其命令如下:

$ source ~/.bashrc
阅读(2135) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~