polipoで特に大きな問題もなく、ニコニコ動画なども再生されるまでの時間や一度見た動画の表示が早くなった気がする。が、ニコニコ動画は同じデータを何度も繰り返してみる性質が強いので、ここはやはり専用ツールhttp://nicolist.net/nicocache_nl/をFreeBSDのサービスとして動かせないか試してみた。
まずは、FreeBSDでJAVAが動かないと話にならないので、portsでjre16のインストールを始めた。途中で以下のファイルをダウンロードして/usr/ports/distfilesに置けと要求してくるので、言われたようにする。
- bsd-jdk16-patches-4.tar.bz2
- diablo-caffe-freebsd6-i386-1.5.0_07-b01.tar.bz2
- jdk-6u3-fcs-bin-b05-jrl-24_sep_2007.jar
- jdk-6u3-fcs-mozilla_headers-b05-unix-24_sep_2007.jar
- jdk-6u3-fcs-src-b05-jrl-24_sep_2007.jar
- tzupdater-1.3.3-2007k.zip
なおportsが要求してくるファイルは指定されているURLで更新されてしまっていたので、portsを更新する必要があった。色々と調べたところ、最新portsへの更新方法は
portsnap fetch portsnap extract
であるようだ*1。これで更新すると、ダウンロードして準備したファイルを要求してくるようになった。
でまぁ続けると、勝手にいろいろなプログラムをインストールし始めるなぁと眺めて、結構な時間を待たされた。そうこうしていると、途中でgio-2.0が無いとエラーが発生するためインストールが中断してしまう。なかなか先に進まないなぁ。FreeBSDの依存関係のチェックもあまり完全ではないな。
これも色々と調べて、portsのdevel/glib20*2に含まれていることがわかったので、glib20をインストール。続けて、jre16のインストールを再開した。これでjre16が最後まで完了した。
http://d.hatena.ne.jp/ikasamaH/20071218に記載されている方法で、NicoCache_nlを起動してみた。ちなみに、設定ファイルの変更は接続元を限定しただけだ。
# 接続元の限定 # lanC プライベートIP(192.168.xxx.xxx) ←普通これ allowFrom=lanC
ThinkPadのproxyを下記のpacで変更して確認すると、とりあえず動いた。*3
function FindProxyForURL(url, host) { if (shExpMatch(host, "msg*.nicovideo.jp*")) return "PROXY 110Gdのマシン名:8123"; if *4 && url.substring(0, 5) == "http:") { return "PROXY 110Gdのマシン名:8080"; } return "PROXY 110Gdのマシン名:8123"; }
その証拠はこれだ。対象動画はランダムに選んだ物と、マイリストから選んだ物です。
/var/NicoCache% ls cache nltmp_sm1158998_????????OP?ED? ????.flv nltmp_sm1965170_我々の自作機部屋�.flv nltmp_sm2823987_真・女神転生�マニアクス 坂東宮(マサカドゥス入手イベント).flv nltmp_sm353388_メガドラ ゲームミュージックメドレー(おっさん選曲).flv sm1347456_初音ミク 「天使の絵の具」.flv sm1446137_アイドルマスター 「PC-6601が歌うタイニーゼビウス」.flv
問題も残っているが、javaが動いてキャッシュとしても別マシーンからアクセスできることが確認できた。ただ、毎回java -jar NicoCache_nl.jarとコマンドを打ちたくないので、サービス化を図る。
続く。