Chinaunix首页 | 论坛 | 博客
  • 博客访问: 224518
  • 博文数量: 60
  • 博客积分: 2440
  • 博客等级: 大尉
  • 技术积分: 530
  • 用 户 组: 普通用户
  • 注册时间: 2009-05-12 16:38
文章分类

全部博文(60)

文章存档

2011年(2)

2010年(16)

2009年(42)

我的朋友

分类: LINUX

2009-06-24 17:15:44



1. 下载源码包,安装依赖包(以dbus-1.2.1为例);对于ubuntu 直接:
mkdir -pv ~/dbus-build
cd ~/dbus-build
sudo apt-get build-dep dbus
apt-get source dbus

2. 为了自动化修改 changelog 需要安装 devscripts 等脚本
sudo apt-get install devscripts

3. 执行命令修改 changelog 文件
dch -i

4. 如果是首次修改 Ubuntu 的包,还需要修改 debian/control 文件中的 Maintainer 部分。

---------------------------------------------------------------------------
将原有的 "Maintainer" 覆盖到 "XSBC-Original-Maintainer" 中
重新在 Maintainer 中写入自己的信息。如下:
---------------------------------------------------------------------------
Source: dbus
Section: xxx
Priority: optional
Maintainer: Your Name
XSBC-Original-Maintainer: Ubuntu MOTU Developers
Standards-Version: 1.2.1

5. 去掉对selinux的依赖
vi debian/rules
修改:
DEB_CONFIGURE_EXTRA_FLAGS += \
--enable-xml-docs \
--enable-doxygen-docs \
--disable-selinux
保存退出vim
这样修改的后,dpkg-buildpackage会读取它,把它作为./configure 的参数;构建好的deb包就不会依赖selinux了。

5. 打包
dpkg-buildpackage -sa -k$GPG_KEY
-sa表示上传服务器是将包含源码包(注意源码包的文件名中应该含有orig字样);-k$GPG_KEY指定gpg keyid.
如果包编好后发现忘记加-sa参数,则可以采取下面措施补救:
cd dbus-xx.xx
dpkg-genchanges -sa > ../dbus_xx.xx-x.changes
cd ..
debsign -k$GPG_KEY  dbus_xx.xx-x.changes
rm -rf dbus_xx.xx-x.upload
dput dbus_xx.xx-x.changes
即可。

有时候需要在不同的机器上使用自己同一个密钥或公钥,那就需要把自己的密钥和公钥迁移到要使用的那台机器上:
在原系统上:
导出密钥到文件:
gpg --export-secret-key -o mysecretkey.gpg
导出公钥到文件:
gpg --export -o mypubkey.gpg
把这两个文件传到目标系统上:
导入密钥:
gpg --import mysecretkey.gpg
导入公钥:
gpg --import mypubkey.gpg
查看自己密钥ID:
gpg --list-key
将此ID赋给~/.bashrc中的一个变量,方便以后调用:
vi ~/.bashrc
添加:
# For my gpg keyID
export GPG_KEY=yourkeyID
保存退出
使修改生效:
source ~/.bashrc

OK了。
阅读(2183) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~