---
# System prepended metadata

title: Debian packaging workshop (2)
tags: [' tossug', hackpad-import]

---

---
hackpadID: 0NrG7UCgL6p
hackpadWorkspace: tossug
tags: hackpad-import, tossug
---
# Debian packaging workshop (2)

上週的筆記：[Debian packaging workshop 1](/OwVgDAxgzAZmIFoBsATKEEBYBGSYIA4AmATgEMsBTKMgRlErKJVqA===)

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

**主題一：回家練習的討論**

<undefined>*   **直接從網路上抓回來**</undefined>

dget -x [](https://launchpad.net/ubuntu/+archive/primary/+files/hello_2.8-4.dsc)https://launchpad.net/ubuntu/+archive/primary/+files/hello_2.8-4.dsc

<undefined>*   **看看有沒有新版本，有就抓回來**</undefined>

在 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](https://www.debian.org/doc/debian-policy/) 的 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)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)https://wiki.debian.org/Python/Packaging

順延到下一週

*   Debian Policy
    *   [](https://www.debian.org/doc/debian-policy/)https://www.debian.org/doc/debian-policy/
    *   [](https://www.debian.org/doc/debian-policy/upgrading-checklist)https://www.debian.org/doc/debian-policy/upgrading-checklist
