sylpeed-gtk2 という sylpheed を GTK+2 に移植する project を見つけた。ところが、現 debian official の sylpheed は 0.9.7-2 なのだが、それ用の patch がない。ML のほうを見てみると、gtk2 patch for sylpheed-0.9.8a があったのでこちらを使うことにした。gtk2 patch が適用済の tar ball をそのまま使うことにしたが、Debian patch な 01verticalbar_automatic.diff は簡単な修正の必要があった。
さて使ってみると、何故か message view が描画されなかったり、描画されても日本語混じりのメールが行単位で消えたりと正確に表示されていないことがある。うーん、なんだろう。Debian patch が悪さしてるわけないよなぁと思いつつも、野良 build してみるが現象は変わらず。0.9.5-gtk2-20030906 でも同様。行単位で文字 code 変換にでも失敗してるんだろうか。
これじゃ常用はできないので 0.9.7-2 に戻す。残念。
nvidia 1.0.7676 を 1.0.8174 及び 1.0.8178 にしたら、xawtv が
This is xawtv-3.94, running on Linux/i686 (2.6.14-XXXXXXXX.1) X Error of failed request: XF86DGANoDirectVideoMode Major opcode of failed request: 137 (XFree86-DGA) Minor opcode of failed request: 1 (XF86DGAGetVideoLL) Serial number of failed request: 65 Current serial number in output stream: 65
と出て起動しなくなった。探してみると、
DGA support was removed starting with the nvidia driver in 1.0-8174.
:
Btw, I got the webcam working forcing motv to not use the DGA extensions: motv -nodga -c /dev/video0
[1.0-8174 and v4lより引用]
とあった。DGA 拡張を使わなければよいらしい。xawtv の manpage を見てみると、
-dga/-nodga
enable/disable the usage of the DGA extension, default is on.
Resource: xawtv.dga (bool).
[xawtv(1)より引用]
とそのものを発見。-nodga をつけてやることで xawtv を起動することができた。
×問題対策インチキパッチ vd_rxvt-unicode_latin1-supplement-partly_double-width_encoding-jp.patch を当てて作成。
ruby1.8 1.8.7.248-1 で気付いたけど ruby1.8: tdiary's amazon.rb segfault in the cause of ruby's bug もクローズされてた。
続々々々々々々・mikutter パッケージングから派生した話題で、DebianでのRuby関連パッケージのことはじめの自分なりのめも。
まずたどりついたのは Teams/Ruby - Debian Wiki で、ライブラリのパッケージングをしたいので pkg-ruby-extras team の Teams/Ruby/Packaging - Debian Wiki のほうに移動する。
Joining the pkg-ruby-extras team では、まず Maintainers of the Debian Ruby Extras packages か IRC で声をかけてほしいとあるので ML ログを 2011/1 までさかのぼったけどそれらしいのがなかった。とりあえず pkg-ruby-extras-maintainers と debian-ruby を subscribe。alioth のアカウントは持っているし、pkg-ruby-extras team の join request に詳しく書くことで代用できるかな(ruby-typed-array の ITP やその他 ruby パッケージの作業をしたいと記載)。承認が出るまで Debian/Ruby teams の Wiki を一通り読んでおく。
承認が出たら作業開始。Obtaining the master repository に従って pkg-ruby-extras レポジトリを取得。あれ、少ないな...と思ったらこれで取れるのは設定ファイルだけで、mr というコマンドでごっそり取ってくるようだ。で、実際やってみると、
mr: illegal section "[DEFAULT]" in untrusted /usr/src/deb/pkg-ruby-extras/.mrconfig line 1 (To trust this file, list it in ~/.mrtrust.)
となってしまった。
Add .mrconfig path to ~/.mrtrust
[Known Issuesより引用]
とあったけど書式がよくわからない。man を見たら、
To configure mr to trust other mrconfig files, list them in ~/.mrtrust. One mrconfig file should be listed per line. Either the full pathname should be listed, or the pathname can start with ~/ to specify a file relative to your home directory.
[mr(1)より引用]
と書式が書いてあった。
% echo "/usr/src/deb/pkg-ruby-extras/.mrconfig" > ~/.mrtrust
として解決。
Creating a new git repository and pushing an existing package to git.debian.org に従って、これから作業する対象のパッケージを git.debian.org 上で登録する。ローカルマシンに戻り、先程 checkout した pkg-ruby-extras を更新する。作業する対象のパッケージが checkout して出てくるので、その中でパッケージング作業を行う。ただし、
At this point, please do not make any change to the package generated by gem2deb. It is important to track all the changes in git.
[Creating a new git repository and pushing an existing package to git.debian.orgより引用]
とあるように、gem2deb で変換した直後のものを最初に push し、
git tag -d debian/0.7-1 # because the package is not ready yet
[Creating a new git repository and pushing an existing package to git.debian.orgより引用]
とあるように、git import-dsc --pristine-tar で自動的で振られる tag は削除しておく。この状態で push してから、ようやく変更作業を開始する。変更が終わったら、先程削除した tag を改めて振り直し、push する。
あとの注意点といえば、ITP する際の X-Debbugs-CC に pkg-ruby-extras-maintainers を含めておくくらい?
だいたいは gem2deb がよきにはからってくれるけど、test の部分が特に厄介だと思うので ruby-typed-array でやったときのめも。
typed-array には
% ls -n spec/ 合計 16 -rw-r--r-- 1 1000 1000 361 12月 29 16:04 spec_helper.rb -rw-r--r-- 1 1000 1000 9425 12月 29 16:04 typed-array_spec.rb %
というディレクトリ/ファイルがあり、どうやらこれは RSpec によるテストケースらしい(RSpec の用語では executable examples と言うらしい)。
ためしに rspec コマンドを叩いてみると、
% /usr/bin/ruby1.8 /usr/bin/rspec ............................................................................................................................................................ Finished in 0.03744 seconds 156 examples, 0 failures % /usr/bin/ruby1.9.1 /usr/bin/rspec ............................................................................................................................................................ Finished in 0.02634 seconds 156 examples, 0 failures %
のようにパスする。これをパッケージ生成の際に実行するようにしてやればいい。gem2deb は debian/ruby-tests.rb という雛形を準備してくれるので、これに記載する。RSpec の場合は、
require 'rspec/autorun' require 'typed-array_spec.rb'
のように、rspec/autorun と spec/ ディレクトリ内の *_spec.rb を require すれば、パッケージ生成の際に、
Entering dh_ruby --install : /usr/bin/ruby1.9.1 -I/usr/lib/ruby/vendor_ruby /usr/lib/ruby/vendor_ruby/gem2deb /test_runner.rb ................................................................................ ............................................................................ Finished in 0.02921 seconds 156 examples, 0 failures /usr/bin/ruby1.8 -I/usr/lib/ruby/vendor_ruby /usr/lib/ruby/vendor_ruby/gem2deb/t est_runner.rb ................................................................................ ............................................................................ Finished in 0.03664 seconds 156 examples, 0 failures Leaving dh_ruby --install
自動的にテストしてくれる。
RSpec 以外にもテストフレームワークはあるし、dh_ruby(1) によれば debian/ruby-tests.rb ではなく debian/ruby-test-files.yaml や debian/ruby-tests.rake を使う方法など、やりかたはいろいろあるみたい。
→ruby-rspec-instafail を git に登録、test がよくわからない。
[どれ作業してるか判らなくなるより引用]
とのことなのでちょっと見てみた。
% ls -n spec 合計 12 -rwxr-xr-x 1 1000 1000 1422 1月 4 12:19 instafail_spec.rb drwxr-xr-x 2 1000 1000 4096 1月 4 12:19 rspec_1 drwxr-xr-x 2 1000 1000 4096 1月 4 12:19 rspec_2 %
これも RSpec 形式のようだけど、ちょっと様子が変。
)% /usr/bin/ruby1.9.1 /usr/bin/rspec FFF.... Failures: 1) RSpec::Instafail RSpec 1.x outputs failures at start of output :
のように、なにやら RSpec 1.x を対象としたテストに失敗しているらしい。
% head -5 spec/instafail_spec.rb describe 'RSpec::Instafail' do context "RSpec 1.x" do before :all do @rspec_result = `cd spec/rspec_1 && bundle exec spec a_test.rb --format RSpec::Instafail` end % cat spec/rspec_1/Gemfile source 'http://rubygems.org' gem 'rspec', '1.3.0' %
Debian では RSpec は既に 2.x 系なので、context "RSpec 1.x" ブロックは削除するパッチを当てて実行しないでいい気がする。さらに言うと、このパッケージには使われることのないだろう RSpec 1.x 用のファイルも含めなくていい気がする。ただ、RSpec 1.x 用のファイルを含めない場合は修正箇所が結構多くなる。
まだ残ってた。
vdlinux.osdn.jp にある GKrellUIM のソースコードに署名した。
for i in *gz; gpg --detach-sign --armor $i
約 4年ぶりにアップデート。
osdn.jp 置き換え を反映したり、GKrellUIM に署名 して Cryptographic signature verification - debian/watch に対応したり。
movieカテゴリでリンクをたくさん貼ってるせいか、表示まであまりにも重すぎるので、新 amazon プラグインを無効化した。movieカテゴリは無惨になったけどかなり早くなった。
[PR]:「Chef活用ガイド コードではじめる構成管理 (大型本), (Kindle版)」は手作業でリンクを作成。
また、カテゴリインデックスが遅かったのもおそらく新 amazon プラグインの影響だったらしく、かなり早くなった。ただ、カテゴリ一覧が空欄のままなのは変わらないので、何らかのライブラリの影響と予想。
Fix keyword argument expectation failures on Ruby 3.0+ と Fix for Ruby 3.1: Use fiber-local var for global_hook_disabled_requests と Set request options for em-http-request to not set headers を持ってきて #1027095 に対応。
#1027080 は curl Connection reset by peer in tests に同じ報告が上がってるけど修正が難しいようで forwarded 設定するだけにした。
Bugs tagged ruby-rspec-3.12 はあらかた片付いたので祭り終了。
前 | 1970年 1月 |
次 | ||||
日 | 月 | 火 | 水 | 木 | 金 | 土 |
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
[amd64 | audacious | comp | debian | gkrelluim | kip | misc | movie | research | rime | unicon | vdr | work | えふえふ]
書いてる人: dai
パッチ等(無保証)