なんとな~くしあわせ?の日記

ClojureとかAWSの設定とかをメモする技術ブログ

Fedora15でfoltia

ちょっと前からCentosのXの機能がおかしくなって、CUIでしか起動しなくなっていた。原因を探ろうとしたけれども仕事が忙しいし、ログをいくら探っても解決法が見つからなかった(※しかし別にサーバの機能、録画機能が失われたのではないのでほっといた)。しかしながらLinuxのデスクトップ機能は面白いし使いたい(特に開発環境とフリーウェアの観点から)そこでCentos5.6からFedora15に乗り換えてGNOME3を味わってみることにした。ところでGNOME3ってリーナスさんが酷評してたらしいですね。まあ俺みたいなパンピーユーザーがわかるような表面的な問題に怒っているんじゃないと思うけど。例えばAltを押しながらでないと電源オフボタンが出ない、ウィンドウの最小化ボタンがデフォルトでは出ない、デスクトップにアイコン並べられない...etc。これからわかるのは、やっぱりUIってのはユーザーが以前から使っていたものと同じようなものにしないといけないということだ、iPhoneのタッチパネルだって最初はかなりの抵抗があったし。仕事でなんか作る際にも気を付けないといけない(...って言ってもWEBアプリとかJavaで作ったら普通に型通りのものができるんでしょうけど(;´д`))
Linus Torvalds氏、GNOME 3に不満でXfceに乗り換え | スラッシュドット・ジャパン Linux

さて、まずpt2を載せなきゃいかんのだが2つやっておくことがある。

  • ドライバに関してはいつものyazuuchiさんのpt1のドライバをダウンロードしてくる。しかし、そのままではインストールできないのでDTV関係ツールに上がってるchardev版用のパッチを当てる(+ pt1_pci_cleanup の中のclass_destroy と pci_unregister_driverの関数の順序を変える。教えてくださった方ありがとうございます)。どうやらカーネルが2.6.38に上がったときに一部のファイル名が変わったらしい。ちなみにDVB版は何もしなくても使えるらしい。
  • そしてDVB版との競合回避
Linux でビデオ録画【六枚目】
http://hibari.2ch.net/test/read.cgi/linux/1193058543/
910 名前:login:Penguin[sage] 投稿日:2010/09/04(土) 07:28:13 ID:b+uDDGO0
ubuntu 10.10 betaで、PT2を使ってみた。
ドライバをコンパイルしなおして、recpt1を動かすと、
DVBのドライバと、キャラクタドライバがバッティングして以下のエラーが出て録画できない
Cannot tune to the specified channel

そこで、DVBドライバを次のようにして、ロードしないようにした。
$sudo gedit /etc/modprobe.d/blacklist.conf
最後に以下を書き込む。
blacklist earth-pt1

セーブして、再起動すると

$ dmesg |grep pt1
[ 17.624937] pt1-pci.c: r116:38a793ac3d9d 2010-03-25
[ 19.045849] pt1_thread run

のようにキャラクターデバイスのみロードされる。
using B25...
pid = 2946
C/N = 32.472079dB
Recording...
Recorded 20sec
動作した。

次にやることはほとんど前掲のCentOS 5.4にfoltiaを導入する - fujitaka's lifelogここを参考にすればよいと思う。sqlitemanagerだけは無かったのでCentosのrpmを借りてきた。

sqlitemanagerの1.2.0-1のRPMは存在するが、PHP5.3に対応していない。sqlitemanagerを使うのならば最新版の1.2.4を使うと良い。

perlのモジュールインストール、CPANは使いたくないのでyumでインストールする。インストールしたモジュールの確認には以下のコマンドを。

# find `perl -e 'print "@INC"'` -name '*.pm' -print | grep (モジュール名) 

yumでとれるもの:LWP、Time::HiRes
Centosのrpmで代用:Schedule::At
デフォルトで入る:Jcode

追記2011/11/20:今振り返ってみると別に全部CPANでインストールしても問題なかったなー

sqliteのテーブル確認

[foltia@localhost ~]$ sqlite3 foltia.sqlite
SQLite version 3.7.5
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> .output tablelist.txt
sqlite> select * from foltia_station;
sqlite> .q

[foltia@localhost ~]$ vi tablelist.txt 

[root@localhost foltia]# grep -n "use DBD::Pg" /home/foltia/perl/*.pl
/home/foltia/perl/addatq.pl:17:#use DBD::Pg;
/home/foltia/perl/addpidatq.pl:15:#use DBD::Pg;
/home/foltia/perl/changestbch.pl:27:#use DBD::Pg;
/home/foltia/perl/channelscan.pl:15:#use DBD::Pg;
/home/foltia/perl/deletemovie.pl:17:#use DBD::Pg;
/home/foltia/perl/envpolicyupdate.pl:17:#use DBD::Pg;
/home/foltia/perl/epgimport.pl:21:#use DBD::Pg;
/home/foltia/perl/folprep.pl:18:#use DBD::Pg;
/home/foltia/perl/foltialib.pl:14:#use DBD::Pg;
/home/foltia/perl/getxml2db.pl:20:#use DBD::Pg;
/home/foltia/perl/ipodtranscode.pl:14:#use DBD::Pg;
/home/foltia/perl/mklocalizeddir.pl:17:#use DBD::Pg;
/home/foltia/perl/recwrap.pl:16:#use DBD::Pg;
/home/foltia/perl/schedulecheck.pl:15:#use DBD::Pg;
/home/foltia/perl/singletranscode.pl:29:#use DBD::Pg;
/home/foltia/perl/updatem2pfiletable.pl:17:#use DBD::Pg;
/home/foltia/perl/xmltv2foltia.pl:26:#use DBD::Pg;

ヽ('A`)ノ トキハナツ!

一発で変換するならこれだ!
# find /home/foltia/perl -name *.pl | xargs sed -e 's/use DBD::Pg/#use DBD::Pg/' | grep Pg ← 変換後の様子を見て
# find /home/foltia/perl -name *.pl | xargs sed -i 's/use DBD::Pg/#use DBD::Pg/'      ← 実際に変換

追記:ちゃんとatqコマンドで予約はいってるか確認しましょう。

[root@localhost perl]# atq
14 Wed Aug 10 02:45:00 2011 a foltia
8 Wed Aug 10 01:25:00 2011 a foltia
10 Tue Aug 9 04:25:00 2011 a foltia
11 Wed Aug 10 02:39:00 2011 a foltia
13 Wed Aug 10 02:25:00 2011 a foltia
9 Thu Aug 11 01:25:00 2011 a foltia
12 Wed Aug 10 01:55:00 2011 a foltia