平衡点


2007/05/17

_ GNU Screen にパッチを当てて再構築

元ネタは

かな. screen 上で aptitude を起動すると, 罫線の表示がズレたりする. 最初はフォントが悪いのか, mlterm が悪いのか, とか思ってたんだけど (aptitude の時だけ uxterm 使ったりしてた) 試しに mlterm で aptitude を起動したら, 綺麗に表示された.

で, 調べたら上のサイトがあった訳で.

これは

  • ソースを取得して
  • screen install memo からパッチを取得して
  • dpatch で patch を管理して
  • パッケージを再構築して install

した作業ログ.

ソースの取得

apt 万歳

$ cd ~/comp/local_deb
$ apt-get source screen
 パッケージリストを読み込んでいます... 完了
 依存関係ツリーを作成しています... 完了
 877kB のソースアーカイブを取得する必要があります.
 取得:1 http://cdn.debian.or.jp etch/main screen 4.0.3-0.3 (dsc) [624B]
 取得:2 http://cdn.debian.or.jp etch/main screen 4.0.3-0.3 (tar) [841kB]
 取得:3 http://cdn.debian.or.jp etch/main screen 4.0.3-0.3 (diff) [35.4kB]
 877kB を 1s で取得しました (590kB/s)
 dpkg-source: extracting screen in screen-4.0.3
 dpkg-source: unpacking screen_4.0.3.orig.tar.gz
 dpkg-source: applying ./screen_4.0.3-0.3.diff.gz

いやー, apt ってホント素晴らしいですね.

dpatch の設定

dpatch で patch を管理する為に

  • debian/rules で
/usr/share/dpatch/dpatch.make を include する configure で patch が当たるように. clean で unpatch されるように.

結果として

$ diff -u rules.org rules 
 --- rules.org     2007-05-17 22:55:21.000000000 +0900
 +++ rules     2007-05-17 22:52:43.000000000 +0900
 @@ -7,6 +7,8 @@
  # Uncomment me to turn on debugging
  #export DH_VERBOSE=1

  +include /usr/share/dpatch/dpatch.make
  +
  # the debhelper compatability version
  export DH_COMPAT=3

  @@ -17,7 +19,7 @@
   # statically define this... sucko
   TTYGROUP = 5

  -configure-stamp:
  +configure-stamp: patch-stamp
        dh_testdir
        ./configure --prefix=/usr \
                 --infodir='$$(prefix)/share/info' \
  @@ -32,7 +34,7 @@
        touch $@

  -clean:
  +clean: unpatch
        dh_testdir
        dh_testroot
        rm -f configure-stamp build-stamp

こんな感じ. dpatch が正しく適用されているのかは,

$ ./debian/rules patch
$ ./debian/rules unpatch

が正常に終了するかを確認する.

patch の取得

より.

  • screen-4.0.2-deadlock-patch
  • screen-4.0.2-hankanacopy-patch
  • screen-4.0.2-patch-cjkwidth-cvs-2006052001

を取得しておく.

dpatch へ patch を登録

パッチの登録は…正しい作法がある気もするんだけど, とりあえず

$ dpatch-edit-patch 01_deadlock
$ patch -p0 < screen-4.0.2-deadlock-patch
$ exit
$ dpatch-edit-patch 02_hankanacopy
$ patch -p0 < screen-4.0.2-hankanacopy-patch
$ exit
$ dpatch-edit-patch 03_cjkwidth-cvs-2006052001
$ patch -p0 < screen-4.0.2-patch-cjkwidth-cvs-2006052001
$ exit

これで, debian/patches/ 以下に各々の dpatch が置かれる. 当然ながら元のパッチが正常に当たらない場合にはこのままではダメで, dpatch-edit-patch の後にソースを直接修正することになる (patch のまま登録する場合は…どうすんだっけ? dpatch-convert-diffgz?).

$ ls debian/patches
 01_deadlock.dpatch
 02_hankanacopy.dpatch
 03_cjkwidth-cvs-2006052001.dpatch

あとはこれらを管理するために 00list を作成する. 00list の中身は patches 以下を一行に一個ずつ書いておけば良い.

$ cat debian/patches/00list
 01_deadlock
 02_hankanacopy
 03_cjkwidth-cvs-2006052001

今回は元のパッチが正常に適用されるので, 特に困った事は無かった.

パッケージの再構築

おきまりの

$ dch -i
 … changelog の編集. 注意すべきはバージョン情報かな.
$ sudo apt-get build-dep screen
$ debuild -rfakeroot
$ cd ../
$ dpkg -i screen*.deb

結果

…駄目だわ. やっぱ汚ないねぇ. 罫線が酷い. 検索の際に表示が崩れる様ではちょっと使いづらいなぁ…

何が問題なんだろう…

参考文献

_ 熱力学復習中

買った.

熱力学入門
佐々 真一, 共立出版, ¥2,200

あと, 以前から持ってる以下の二つを読み比べていたりする.

熱力学―現代的な視点から (新物理学シリーズ)
田崎 晴明, 培風館, ¥3,850

化学熱力学〈1〉
I.プリゴジーヌ, みすず書房, ¥4,950

熱力学って, 考えてみればちゃんと考えた事が無いのかなぁ. チャンドラセカールの本で, カラテオドリの定理から定式化されたので目から鱗な気分だったのだけど, それって結局わかってなかったって事?

うーん.

_ 本田選手の"ブレ球"

mixi で弟御も言ってましたが, オリンピック代表の試合, 見たいねぇ.

ちなみに, YouTube で 「 U-22 Japanese Honda SUPER FREE KICK 」と検索してみると, 例の凄いブレ球が見れます.

をーすげー.

なんか, マンガみたい. 「シュート」の久保さんみたいなの. 右に蹴ってるのに左に曲る, みたいな. 一瞬右に動いてる様に見えるのは, キーパーのせい? 動いてるよなぁ….


連絡先など
最近の日記
一覧
2006|03|04|05|06|07|08|09|10|11|12|
2007|01|02|03|04|05|06|07|08|09|10|11|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|02|03|04|08|09|10|11|12|
2013|01|02|03|04|05|06|08|09|10|11|12|
2014|01|02|04|05|06|07|08|09|10|11|12|
2015|01|02|03|04|05|06|07|09|10|
2016|02|03|
2017|01|02|03|05|06|07|09|11|12|
2018|03|06|07|10|11|12|
2019|01|02|03|04|05|07|10|12|
2020|01|02|03|04|05|08|09|10|11|12|
2021|01|02|03|05|06|07|08|09|11|12|
2022|01|02|03|04|05|06|08|10|11|12|
2023|02|03|04|06|08|09|11|12|
2024|01|02|03|
Back to Top ▲