---
# System prepended metadata

title: Debian packaging workshop (2)
tags: [Debian packaging workshop]

---


# Debian packaging workshop (2)

###### tags: `Debian packaging workshop`

上週的筆記：Debian packaging workshop 1 下週的筆記：Debian packaging workshop 3

日期：2015/04/14 直播錄影：http://youtu.be/GlojdL8P-4o

主題一：回家練習的討論
直接從網路上抓回來
dget -x https://launchpad.net/ubuntu/+archive/primary/+files/hello_2.8-4.dsc
看看有沒有新版本，有就抓回來
在 hello-2.8/ 裡執行 uscan（由 devscript 軟體包提供）
看到有 hello-2.10，把 hello-2.8/debian copy到 hello-2.10 裡
$ cp -r hello-2.8/debian hello-2.10/
編輯 hello-2.10/debian/ 裡的 changelog, control
changelog: 要加上 2.10 的更改說明
control: Standards-Version 的版本需對應到 Debian Policy Manual 的 version
進行編譯打包
$ fakeroot debian/rules binary

本地端
$ dpkg-source -x hello_2.8-4.dsc
gpg: 無法檢查簽章: 找不到公鑰
Validation FAILED!!
然後沒東西抓下來（囧）
系統：Ubuntu 14.04LTS
Workaround: 加上 --allow-unauthenticated 命令參數不校驗來源碼正確性

當下的環境
Create Debian binary package
$ fakeroot debian/rules binary # Create Debian binary package
Create Debian source package
$ dpkg-buildpackage -S -us -uc # Create Debian source package
debuild （會呼叫 lintian 檢查 package 的問題）
debuild -S -us -uc

沙盒的環境 (Build binary package)
pbuilder
sbuild
...

debuild -S --lintian-opts --profile debian

General info
native package: package without no upstream source code

Debian version: http://fourdollars.blogspot.tw/2010/06/debian-package-5.html
dpkg-query -W | less

第一週作業順利用 Debian stable 過關！

主題二：打包 Python 的 Debian package
參考文件：https://wiki.debian.org/Python/Packaging
順延到下一週

Debian Policy
https://www.debian.org/doc/debian-policy/
https://www.debian.org/doc/debian-policy/upgrading-checklist