GentooでPT1/PT2を使うためのヒント

Gentoo初心者のm-birdですこんにちは。近頃は録画環境とKVM環境を構築する関係でLinuxに浮気してしまっていて、FreeBSDちゃんのご機嫌を損ねないか心配な今日この頃です。なので、早く新しいMac買ってthinkpadFreeBSD専用機にしたいな……って言ったら「FreeBSDユーザがMac使うのん!?」って驚かれました。ごめんなさい。
さて、今回はGentooでPT2による録画環境を構築しようとしたらかなりハマったので、そのメモを残したいと思います(x86_64, リーダはNTT Comのものという環境にて)。
@_hmm_さんの助言で動く環境が構築できました。感謝!

まずPT1/PT2用ドライバ

PT2(PT1) on Linuxをやるには、まずPT2のドライバと録画コマンドのrecpt1、あとはB-CASカードのドライバ周りが必要です。
ちゅーわけで、まずはPT2のドライバを引っ張って来る訳ですが、便利なebuildを作ってくれた人が居ます。

ヒャッハー!というわけで、上の記事通り、portageのoverlayを作ってやればいいだけです!なお、overlayとは公式のportageツリーとは別に、自前のebuildなどを使いたい場合などに利用するものです。
作り方は簡単、/etc/make.confにoverlayへのパス、例えばPORTDIR_OVERLAY="/usr/local/portage/"などと書いてやればおk!もちろんoverlayは任意の場所が指定できます。詳しくはGentooのハンドブックをご覧ください。

次にB-CASリーダ周り

さて、次にハマり所のB-CASです。実は最新版のICカードリーダツールはB-CASに対応していません。なので、バージョンを落としてやる必要があります。
という訳で、/etc/portage/package.maskに記述:

>sys-apps/pcsc-lite-1.6.5
>app-crypt/ccid-1.4.0

しかし、既に上記のバージョンは公式のツリーから消え去ってしまっています。ので、こちらもoverlayに古いバージョンのファイルを展開してやります。

pcsc-lite

参考:http://pastebin.com/P3CKw8jY
overlayが/usr/local/portageにある場合の例:

mkdir -p /usr/local/portage/sys-apps/pcsc-lite/files
cd /usr/local/portage/sys-apps/pcsc-lite
wget http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/sys-apps/pcsc-lite/pcsc-lite-1.6.1.ebuild
wget http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/sys-apps/pcsc-lite/metadata.xml
cd files
wget http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/sys-apps/pcsc-lite/files/pcscd-init
wget http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/sys-apps/pcsc-lite/files/pcscd-confd
cd ../
ebuild pcsc-lite-1.6.1.ebuild digest

usb接続のリーダを使っている人がほとんどだと思うので、/etc/portage/package.use に以下を追加。

sys-apps/pcsc-lite usb

ccid

pcsc-liteと同様な操作を行う
overlayが/usr/local/portageにある場合の例:

mkdir -p /usr/local/portage/app-crypt/ccid/files
cd /usr/local/portage/app-crypt/ccid
wget http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/app-crypt/ccid/ccid-1.3.13.ebuild
wget http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/app-crypt/ccid/metadata.xml
ebuild ccid-1.3.13.ebuild digest

こちらもusbを追加。twinserialは必要なさそうだったのでdisable。

app-crypt/ccid usb -twinserial

山場は乗り越えた!

さて、これでpcsc-liteとccidの古いバージョンは使えるようになりました。念のため、emerge -vp pcsc-lite, emerge -vp ccidなどして、overlayに展開した古いバージョンが表示される事を確認して下さい。
続いて動作確認の手順について簡単に。emergeが終わったら、/etc/init.d/pcscd start とし、pcscデーモンを立ち上げます。その後、B-CASリーダとB-CASカードが刺さっている事を確認し、pcsc_scanコマンドを実行します。何かB-CASリーダの型番っぽいのがでたらおっけー☆Ctrl-Cで抜けて下さい。後は、rc-update add pcscd default とし、pcscdをOS起動時に立ち上げるようにます。

ここまでくれば

recpt1コマンドが使えるようになっているので、後はどのUbuntuやらCentOS基準で書かれている「Linuxで地デジ録画環境を作る!」みたいな記事とそう変わらずに環境構築ができるはずです。
なお、epgrecやfoltiaなどで使うatコマンドもgentooは自分で入れてやる必要があります。emergeしてatdが起動時に立ち上がるようにしておきましょう*1

最後に

このエントリの内容については記憶に頼ったもので、検証作業などはしておりません*2。記述内容の間違い等発見しましたらメールまたはコメント、もしくはtwitterにて@m_bird宛てにご連絡下さい。

*1:これにはまってキャプミスしたなんてケツが裂けても言えない……

*2:流石に録画環境一回吹っ飛ばして検証するのは無理っすよ……。誰かPT2を恵んでくれたら出来ますけどね……!