GNOME Do の PPA を作った
前回、GNOME Do のmigemo対応をやってみたのですが、ついでなのでPPAでパッケージを作ってみました。
Ubuntu Maverick(10.10) と Natty(11.04) の人はこれを使うと簡単に導入できると思います。
導入方法
以下のコマンドを入力します。オレオレ認証のkiwanami鍵とPPAリポジトリの場所が入りますので、信用できない人はやめておきましょう。(2011/07/02 訂正 apt-key を書き間違えていましたので修正しました。@mori_devさんありがとうございます。)
$ sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 4009F8ED 26D9017F $ sudo add-apt-repository ppa:m-sakurai/ppa1 $ sudo apt-get update
後は、apt-get でインストールするだけです。もちろん、synapticやソフトウエアセンターで入れてもかまいません。
$ sudo apt-get install gnome-do
依存パッケージとして cmigemo も入ります。 cmigemo の辞書は /usr/share/migemo に入りますので、Emacs 等で設定して使うことも出来ます。
既に入っている人は、おそらくアップグレードするかどうか尋ねられると思いますので、アップグレードするとPPA の GNOME Do が入ると思います。
GNOME Do 自体のバージョン表記は変更していないので、ちゃんと入ったかどうか確認するには「kagi」や「settei」とか入力してみてください。日本語がヒットしていればmigemoが動いています。
Ubuntu(debian)パッケージについて
以下は作業のメモなどです。debian パッケージは初めて作ったのですが、やはり各種多様なビルドをこなすだけあって、なかなか最初は理解が難しかったです。多分、経験者に師事して習ったりつっこんでもらいながら慣れていくものなのかなと思いました。しかしながら、理解していくうちにパッケージやlaunchpadの仕組みが非常に良くできていると思いました。
参考にした情報
検索するとそれなりに情報が見つかったのですが、debianパッケージ自体が進化していたり、ツールやパッケージの作り方が複数存在するため、どこを見ても違うことが書いてあるように感じました。結局、本家の情報を読むことが一番だったような気がします。
- deb パッケージを作成する - いますぐ実践! Linuxシステム管理 / Vol.131
- 簡単なサンプル。ここで何となくの概要をつかむ。
- Debian New Maintainers' Guide
- debianパッケージの本家マニュアル。汎用的に書いてあるのでいきなりは理解しづらい。
- 突然 dh_make, quilt が出てくる
- dquilt はここの設定をそのまま使った
- PbuilderHowto - Ubuntu Wiki
- pbuilder で Universe や PPA を使う方法が分からなかったので調べた
- pbuilder すごいというか豪快
- 第46回 PPAの活用|gihyo.jp … 技術評論社
- 鍵や PPA の登録の仕方が丁寧に書いてあって大変参考になった
憩いの場さんのPPAにも cmigemo があったことを先ほど知りました。。。
作業メモ
以下は適当な作業メモです。突っ込み所があれば是非教えてください。
C/Migemo
ダウンロードと下準備
$ wget http://cmigemo.googlecode.com/files/cmigemo-default-src-20110227.zip $ unzip cmigemo-default-src-20110227.zip $ mv cmigemo-default-src cmigemo-20110227 $ tar zcvf cmigemo-20110227.tar.gz cmigemo-20110227
dh_make する
$ tar zxvf cmigemo-20110227.tar.gz $ cd cmigemo-20110227 $ dh_make -e (mail address) -f ../cmigemo-20110227.tar.gz -> s / single を選ぶ
PPA なので省略
$ cd debian $ rm -f README.Debian README.source *.ex *.EX
changelog, control, copyright, rules を編集する。
パッチを作る
$ cd .. $ dquilt new fix-limit.patch $ dquilt add src/wordbuf.c $ vi src/wordbuf.c -> include <limits.h> $ dquilt refresh $ dquilt header -e -> fix an undefined symbol error. $ dquilt new fix-makes.patch $ dquilt add dict/dict.mak $ vi dict/dict.mak -> gcc-dict: + utf-8 $ dquilt add Makefile $ vi Makefile -> default: gcc-all -> install: gcc-install $ dquilt add config.mk $ vi config.mk -> /usr/local -> $(DESTDIR)/usr -> qkc -> nkf $ dquilt refresh $ dquilt header -e -> migemo patch
パッケージをビルドする
$ debuild -S -sa -k4009F8ED $ sudo pbuilder build ../cmigemo_20110227-1.dsc
問題なければ dput でアップする。
GNOME Do
Maverick版は dpatch でパッチを作ってるので、既に入っているパッチの続きでパッチ作成。
ちなみにNatty版はquiltに変わっていた。
- control の修正
- Maintainer を自分に変更
- cmigemo を依存に追加
- ドキュメントを少し更新
- copyright に追加
- changelog に追加
- version を修正
- Maverick : 0.8.3.1+dfsg-2ubuntu1-migemo1
- Natty : 0.8.4-0ubuntu2-migemo2
- version を修正
.pbuilderrc に PPA 追加してパッケージビルド。良ければ dput。
dput してビルド失敗したら、修正してバージョンを上げてアップし直す。