電脳倶楽部謹製 debian パッケージ作成の手引き

概要

地球流体電脳倶楽部で作成しているソフトウェア群のうち, debian パッケー ジ化されているもののパッケージ更新, apt ソースリストの公開方法について記す.

なお, 下記の手順は作業を簡単にするため, かなり自動化してある. 手動で apt による管理を行なうための技術情報に関しては 技術文書 を参照せよ.

アーカイブの基本方針

基本的にこのディレクトリに全ての Debian パッケージの実体を置く. 個々の Project において Debian パッケージを更新された場合には 追加する場合の手順を参考にされたい.

公開の基本方針

/etc/apt/sources.list に記述する公開アドレスは

または

とする. CODENAME は lenny や etch などの Debian でのリリース名とし, stable や testing といった記述は使用しない.

パッケージの作成

debian-dennou 製品の Debian パッケージは git で管理されている. また, 人柱版として, CODENAME を sid としたパッケージも公開している

apt を用いたソースの取得

/etc/apt/sources.list に sid のソースパッケージの apt-line を記載し

$ apt-get source <package_name>

によってソースを取得し, 修正, 構築を行なう. できたパッケージは追加する場合の手順を参考に new-queue ディレクトリに置かれたい.

git-buildpackage を使用する場合

debian-dennou で配布しているパッケージは全て Git で管理している(リポジトリ一覧). cc-env グループに所属しているユーザは リポジトリ一覧 より ssh を用いて

$ git clone \
  ssh://dennou-k.gfd-dennou.org/GFD_Dennou_Club/ftp/arch/cc-env/debian-dennou/<package_name>.git  \
  <package_name>

によって <package_name> リポジトリを取得し, 修正, 構築などの作業を行なわれたい.

git-buildpackage については Building Debian Packages with git-buildpackageを参照のこと.

apt リポジトリの更新

Packages, Sources, Contetns, Release の作成

<URL:./> ディレクトリで, 以下のコマンドを入力する.

$ cd /GFD_Dennou_Club/ftp/arch/cc-env/debian-dennou
$ sudo -u cc-env -s
$ umask 002
$ make scan

すると, $(STABLE), $(UNSTABLE) に指定されたディレクトリが 生成され, そのディレクトリ以下に Packages, Sources, Contens, Release が作成される.

Release の署名

Release ファイルの GPG 署名は管理者が手動で行なっている *1. 早急に更新したい場合には apt リポジトリ管理者 まで連絡されたい.

テスト

上記のように Package.gz, Source.gz が準備できたら, 手元の PC の /etc/apt/sources.list に以下の記述を追加する.

deb http://www.gfd-dennou.org/library/cc-env/Linux/debian-dennou CODENAME
deb-src http://www.gfd-dennou.org/library/cc-env/Linux/debian-dennou CODENAME

以下のコマンドでソフトウェアのインストールが出来たら OK.

# apt-get update
# apt-get install g95 (例えば)

ただし, Relase の署名更新が終わっていない場合や http の cache proxy が 古い署名を返してきて「信頼できないパッケージです」と警告される場合もある. apt リポジトリの更新は済んでいるので, 一日気長に待って欲しい.

追加する場合の手順

以下は, 既に事前準備が済んでおり, 新たに別途 debian パッケージ群 を apt リストに追加したい場合の手順を示す.

new-queue への追加

追加で公開したい Debian パッケージの orig.tar.gz, diff.gz, dsc ファイ ル等を new-queue ディレクトリに置く. new-queue ディレクトリは

$ cd /GFD_Dennou_Club/ftp/arch/cc-env/debian-dennou/new-queue

にある.

このディレクトリの内容は一日一回apt リポジトリ管理者へ通知される. 作成されるパッケージが審査された後に apt リポジトリへ追加される.

技術文書

apt リポジトリ管理者

2008年より佐々木が管理している.

pub   1024D/AEE995F4 2005-12-08
      Key fingerprint = 8BF1 ABFE 00D2 526D 6822  2AC6 13E0 381D AEE9 95F4
uid                  Youhei SASAKI <uwabami_at_gfd-dennou.org>
sub   2048g/2AA4709C 2005-12-08