2011年8月31日水曜日

FreeBSDにlinux由来のソフトウェアを入れようとすると、perlのpathのせいでしくじる

 1.FreeBSDにlinux由来のソフトウェアを入れようとすると、perlのpathのせいでしくじる

今日は、ffmpeg を install しようとして、失敗した。
(portupgrade は楽だが、成功率は100パーセントではない)

multimedia/ffmpeg の場合は、texi2pod.pl の一行目に
#!  /usr/bin/perl -w
とあるのだが、FreeBSD での perl 本体の場所は、/usr/local/bin/perl である。
($ type perl
としてみるがよい。昔は/usr/bin/perl だったらしいが、少なくとも8.2では/usr/local/bin/にある。)

perl script の path が正しくなくてmakeが通らないことは、ports systemを使わないでlinux用のソフトウェアを source codeからcompile、installをしようとするときにも、しばしばある。

2.対策
(1)
source codeがあるならば、*.pl という名のファイル内の "/usr/bin/perl" を "/usr/local/bin/perl" に置換してしまえばよいのだが、毎回やるのは面倒くさい(一行ですむけど)。よってこの方法は不採用。

(2)
# ln -s /usr/local/bin/perl5.14.1 /usr/bin/perl
# ln -s /usr/local/bin/perl5.14.1  /usr/bin/perl5
一見やる気ないが、これで万事OK。

(3)
(2)でいいのだが、perlをportupgradeするたびに(2)をするのは面倒くさい。なので /usr/local/etc/pkgtools.confの AFTERINSTALL のところに
        'lang/perl5*' =>
          'ln -s /usr/local/bin/perl5* /usr/bin/perl',
と書いておけば、perlのversionが6に上がるまでは安泰だ。

3.参考文献
ports の不具合の報告 http://www.freebsd.org/cgi/query-pr.cgi?pr=131331

4.追記
ふつうは、perlのmake optionで
USE_PERL on
になっているので、上記対策は必要ないらしい(/usr/ports/lang/perl5.14.1/Makefile を参照)。けれど、なぜか/usr/bin/perl がなかった時のために記事は残しておく。pkgtools.confは編集しないで様子見がよろし。

2011年8月23日火曜日

Mathematicaをssh越しに使うにはlocalhostにfontのinstallが必要だ。

Mathematica(http://www.wolfram.com/index.ja.html) を sshでXをとばじて使うには、 localhostにmathematica用のfontを用意する必要がある。

概要はhandbook(http://www.freebsd.org/doc/ja/books/handbook/linuxemu-mathematica.html)に書いてあるが、下の様に適当にやっても動く。なおマシン構成は、
server : FreeBSD 8.2, Xorg 7.5, Mathematica 4(古い!でも不定積分はできる)
localhost : FreeBSD 8.2, Xorg 7.5

1. fontをserverからコピーする
server のどこに fontがあるかを調べるには、server:/etc/X11/xorg.confを見る。
Section "files"のFontPathにそれらしい記述があるので、例

----ここから server:/etc/X11/xorg.conf ----
Section "ServerLayout"
        Identifier      "秘密"
        Screen      0   "秘密"
        InputDevice     "Mouse0" "CorePointer"
        InputDevice     "hhk" "CoreKeyboard"
EndSection

Section "Files"
        RgbPath      "/usr/X11R6/lib/X11/rgb"
        ModulePath   "/usr/X11R6/lib/modules"
        ModulePath   "/usr/local/lib/xorg/modules"
        FontPath     "/usr/local/mathematica4/SystemFiles/Fonts/X/"  <-
        FontPath     "/usr/local/lib/X11/fonts/misc/"
        FontPath     "/usr/local/lib/X11/fonts/TTF/"
        FontPath     "/usr/local/lib/X11/fonts/OTF"
        FontPath     "/usr/local/lib/X11/fonts/Type1/"
        FontPath     "/usr/local/lib/X11/fonts/100dpi/"
...(続く)
----- ここまで server:/etc/X11/xorg.conf ----

localhostに同じdirectryを作って、中身をすべてコピーするよろし。 上の例だと
# mkdir  -p /usr/local/mathematica4/SystemFiles/Fonts/X/
# rsync -azv username@server:/usr/local/mathematica4/SystemFiles/Fonts/X/ /usr/local/mathematica4/SystemFiles/Fonts/X/

2. xorg.confの設定
それから、/etc/X11/xorg.conf にもFontPathの行を加えて、Xを立ち上げ直せばよろし。ただし、FontPathのなかで、一番先頭にmathematica用のfontを指定しないと、fontを見つけられないので注意。(serverのxorg.confと同じ位置に書き加えればよろし)。

2011年8月20日土曜日

コンソール画面で日本語で生活するための小道具

私の自宅マシン(FreeBSD 8.2、amd64)は、年に3回くらいgnomeなどのportupgradeをしくじって黒い画面で暮らすことになる。しかし、gnomeが壊れていても、日本語のメールの読み書きとgnomeを復旧するためのネット情報の閲覧くらいはしたい。
そんな願いを叶えてくれるのが、konとemacsとwanderlustとw3mだ。

1.kon (japanese/kon2-16dot)
konは漢字(日本語の文字)をコンソールの上に表示するためのプログラムだ。
(KON2 is a program for displaying Kanji (japanese characters) on the
console of Linux/FreeBSD. pkg_descrより)
現在 FreeBSD ports では32bit にしかインストールできなくなっているが、Makefile の
ONLY_FOR_ARCH=i386
の行をコメントアウトすれば、エラーも出ずにインストールできた(うちの子は64bitなのだ)。

kon は入力の文字コードはEUCを受け取るので、実行するプログラムのオプションが必要となる。たとえば黒い画面で
$ kon
$ lv -Oeuc japanese.txt
とすると、ファイルの中身が確認できる
$ emacs japanese.txt
は適当に出力を調整してくれるようで、出力オプションなしで大丈夫。wlもあくまでもemacs の内側で走るので、いつもどおりに使える。入力切替はいつもどおり ctrl+バックスラッシュ。

2.w3m (japanese/w3m-img)
まず、w3mは www/w3m-img ではなく japanese/w3m-img がインストールされているかを確認すること。www/w3m-imgは指定できるオプションが少なく、出力をEUCにすることができない(大変なだけだとは思う)。
$ kon
$ w3m -Oe google.co.jp
で検索する。tabキーでリンクやテキストボックスを移動できるので、テキストボックスを選択してReturnキーを押すと、窓下部に TEXT: と入力受付するのでテキストを打ち込もう。
日本語入力の方法は知らない。webメールを使っていたりして、日本語を書きたい人、ごめんなさい。

(うわさでは、uim-fepをなんとかすればいいらしい)
(失敗の記録だが、www/emacs-w3mをでemacsの入力を使おうと思ったが、w3m-m17nとja-w3m-imgが conflictして、これもうまくいかない。)
 
Xは壊れやすいし、もしもの時のためにインストールしておくと安心できる。

参考
kon 本家サイトが見つからない。
w3mの多言語拡張している人のページ。ありがとうございます。 http://www2u.biglobe.ne.jp/~hsaka/w3m/patch/README.m17n-ja
コンソールが好きそうな人たち。友達になりたい。
ある nakagami の日記 http://nakagami.blog.so-net.ne.jp/2006-08-08
oogatta の勉強日記 http://d.hatena.ne.jp/oogatta/20100520/1274311272

(2011-10-31追記)
32bitのシステム(kernel+userland)を64bitマシンにつないでも基本的には動くのだが、konは立たなかった。

より詳細に書くと、今のマシンのHDD不具合で、昔32bitマシンで使ってい(てsmart的にまずそうになったから、換装して0で埋めて捨てようと思ったまま放置してい)たHDDを差してみたら、konは灰色モザイク画面になってしまう。kernelもgnomeも完全に動くのになあ。ちなみにportupgradeしてもダメだった。うーん残念。

2011年8月15日月曜日

SFと科学1  高野史緒「ひな菊」とイヌ可移植性性器腫瘍

 SF(サイエンスフィクション)は科学の知見や仮説を、非専門家にもわかりやすく小説の形で表現されたものであるという一面を持つ。(もちろん、超光速移動など、現代科学的にはありえない設定に基づくものもある。)

したがって、SF小説には、元ネタとなる科学的な事実や新技術が存在することがあり、元ネタと対応する科学・技術に出会ったら、記録することにする。


---- ----

最近の日経サイエンス2011年9月号の「タスマニアデビルの伝染するがん」を読み、昔読んだ 量子回廊 年刊日本SF傑作選(2010年)に収載の高野史緒著の「ひな菊」とを思い出した。

イヌ可移植性性器腫瘍は、伝染するがんであり、交尾の際に相手に移動してひろがる。
小説中の描写と似ている点は、「イヌ性器腫瘍は雌に発情を促す化合物を作り出すことによって、雄にうつる確率を高めている」(日経サイエンス2011年9月号)、「おそらく(中略)最初のうちは非常に致死性が高かったのだろう。」(同)

高野史緒著の「ひな菊」ではスターリン時代のロシアの音楽院のサマースクールを舞台として、上のような特徴を持つ病気があったとしたら、、、を描いている。

参考
大森望『量子回廊 年刊日本SF傑作選』(大森望・日下三蔵編)序文 http://www.webmysteries.jp/sf/ohmori1007.html
東北大学SF研wiki-ひな菊 http://www28.atwiki.jp/tohokusf/m/pages/112.html?guid=on
日経サイエンスの紹介記事 http://www.nikkei-science.com/page/magazine/1109/201109_062.html
wikipedia 可移植性性器腫瘍
 http://ja.wikipedia.org/wiki/%E5%8F%AF%E7%A7%BB%E6%A4%8D%E6%80%A7%E6%80%A7%E5%99%A8%E8%85%AB%E7%98%8D

2011年8月12日金曜日

FreeBSD に手動で font を install する方法

1.IPA font
私は、FreeBSDをメインマシンのOSとして利用していて、かなり快適に暮らしている。(マウスを使うのが苦手なのと、セキュリティー面で安心感で、WindowsよりFreeBSDが好きだ。)

そんな日常生活を送るのに不可欠なものが、"フリーな"日本語フォントである。幸いなことに独立行政法人 情報処理推進機構(IPA) http://www.ipa.go.jp/ が無償でIPAフォントを配布しており、FreeBSD では ports からinstall することができる。(明朝、ゴシック)と(固定幅、変動幅)の直積、計4種類がある。

しかし、2チャンネルの芸術作品AAは、MS Pゴシックで表示されることを前提としており、IPAPGothic では表示が崩れてしまう(どちらもPropotional font ではあるが、変動幅の設定が異なるため)。

MS Pゴシックと同じ変動幅を持つフリーなフォントは古くはモナーフォントがあるが、現在は開発が停止しているらしいので、今回は IPAモナーフォントを install した。

2.install の方法
(1) download
IPAモナーフォントの本家サイトhttp://www.geocities.jp/ipa_mona/から、opfc-ModuleHP-1.1.1_withIPAMonaFonts-1.0.8.tar.gzをダウンロードする。

(2) install
$ tar xzvf opfc-ModuleHP-1.1.1_withIPAMonaFonts-1.0.8.tar.gz
$ sudo -s
# mkdir /usr/local/share/font-ipamona/
# mv opfc-ModuleHP-1.1.1_withIPAMonaFonts-1.0.8/fonts/*.ttf /usr/local/share/font-ipamona/
# ln -s /usr/local/share/font-ipamona/* /usr/local/lib/X11/fonts/OTF/
 (OTF はOpen Type Font の略なのでOTFの下にした。どこでもいい。)
(3) ためしてみよう
firefox でアスキーアートのあるページ (例:あなろぐま http://l19.chip.jp/chidejika/)を表示して
Edit -> Preference -> Content -> Fonts & Colors で IPAMonaPGothic を選んでみよう。

(4) トラブルシューティング
/etc/X11/xorg.conf のSection "Files" に FontPath "/usr/local/lib/X11/fonts/OTF/" がなければ追記すべし。

3. おまけ
フリーの日本語フォントみたいな、作るのにお金はかかる(手作業だから、お金を払って外注する)けど、あればみんなが役に立つことは、税金でやるべきことであると思う。

4. 参考文献
IPAフォントのページ http://ossipedia.ipa.go.jp/ipafont/index.html
IPAフォントと異字体 http://ossipedia.ipa.go.jp/ipamjfont/
IPAモナーフォントの本家 http://www.geocities.jp/ipa_mona/
アスキーアートの例(あなろぐま) http://l19.chip.jp/chidejika/

2011年8月7日日曜日

wordファイル(.docファイル)をtxtに変換する方法 -> wvWare

非windows ユーザーにとって、よくあるイラっとする瞬間の一つは電子メールでwordファイルが送られてきたときである(同じくらいよくあるのイラっとする瞬間は、flash が固まって、$ pkill npviewer するときである)。

そんな時は
1.windows マシンを立ち上げて、word を立ち上げて読む
編集する必要がある時は、この方法に限るのだが、非力なノートPCが立ち上がるまで待つの苦痛である。
あと、ウイルス対策はしてあるとはいえ、ちょっと怖い。

2.OpenOffice で見る
レイアウトは崩れるとはいえ、内容を確認する程度はできる。しかし、出張先などで、手元のマシンが非力なノートPCだったりすると、立ち上がるまで待つのが苦痛である。
ウイルス感染の確率はかなり下がるのは安心。

そして最近第3の方法としてwvWare の存在を知った

3.wvWare
wvWare とは「word document を変換するための library 」であり、AbiWord(GNOME Office に含まれるフリーでオープンソースなワードプロセッサ)の一部である。
http://wvware.sourceforge.net/
wvWare 一群の application を使うことで、word やpdf などの保存形式のファイルを、html や latex source など、unix freindly な txt 形式に近いものに変換することができる。
windows 用の同様の機能を持つものに xdoc2txt がある。

(1). install の仕方
# portupgrade -N textproc/wv
ちなみにwv2はライブラリのみインストールで、executableはできないので注意。

(2). 使い方
$ wvHtml input.doc output.html
で変換できる。ブラウザで見ると段組みや太字なども保たれている。
$ wvText input.doc output.txt
は手軽に lv で見るのにおすすめ。詳しくは
$ man wvWare
するよろし。

(3). 応用
手元にあるマシンが、Xが死んでいる、あるいはXやopenofficeが載らないくらい非力なとき
kon(日本語をconsole で表示するプログラム、japanese/kon2-16dots、32bit machineのみ)+emacs(editors/emacs)+wanderlust(emacs 用のmailer、imapにも対応、mail/wanderlust)+wvHtml+w3m(pager/text-based WWW browser、www/w3m)で
黒い画面で日本語の手紙を読めて、wordの添付ファイルも読める。

Xは載るけれど、OpenOfficeを使うには非力な時、あるいは待てないとき
wvHtml+web browser(firefoxやepiphanyなど)で word ファイルが読める。

メールサーバにlogin できるシステムで、wvWareとw3mを入れてもらえた場合
ssh することで、添付ファイルを手元にダウンロードしないで内容を確認できる。

参考
FreeBSD ports最新ニュース textproc/wv http://blog.livedoor.jp/freshports/archives/1897769.html
wvWare の公式サイト  http://wvware.sourceforge.net/
2php : wvWare(wvHtmlなど) のインストールの仕方・使い方 http://2php.jp/install/wvware.html
Abiword の公式サイト http://www.abisource.com/ 
xdoc2txt の公式サイト http://www31.ocn.ne.jp/~h_ishida/xdoc2txt.html

追記(20110927)
wvTxetは内容に日本語が含まれるとしくじることがあるので、txtファイルを作るにはw3m(もちろん日本語対応の japanese/w3m-img/)を使った方が便利そうだ。そして、ユーザーインターフェースとしてはlessが一番便利そうだ。以上をふまえて、lessdocという自作wrapperで、わたしは暮らしている。

#!/bin/sh
# lessdoc.sh
for i; do
    TMPDIR=`mktemp -d /tmp/tmp_lessdocXXXX` || exit 1 
    if ! wvHtml $i $TMPDIR/tmp.html; then
    echo "You need to install wvWare !!!"
    else
    w3m -dump $TMPDIR/tmp.html |lv -Outf
    fi
    rm -r $TMPDIR;
done

2011年8月6日土曜日

iPad2 生活の準備1 - iTunes Store でお金を払えるようにする

iPad2 は便利そうだという結論になったので(今度記事にする予定)、買う準備を始めることにした。まずは iTunes Store でお金を払う手段について調べた。

オンライン決済はかなり普及していて、身の回りでもオンライン決済を利用する人は多い。
でも私は基本的に the Internet は危険なところと思っていて、ネットショッピングをしてもカード番号を打ち込んだことはない。
amazon -> 必ず、コンビニ払い、コンビニ受け取り。住所も削除してある。メールアドレスもフリーメールのアドレス。
航空券 -> 予約はオンラインでして、旅行代理店で決済。クレジットカードで払うこともあるが、ある程度生協を信用しているから。
宿 -> ビジネスホテルの予約はほぼネット予約を使う。値段が全然違うから。でも正確な住所は書かないこともある。現地で現金払いできるところにしか基本的には泊まらない。

そもそも、オンライン決済でなくても、信用できそうなところで高額な買い物をするときしかクレジットカードは使わない。生協、鉄道会社(定期券)、くらい。

あとは、Suicaで買い物もしないなあ。何も悪いことはしていないけど、情報が生じることが嫌だ。でも edy は特定のスーパーの店舗でのみ使っていて、無記名でその店舗での買い物情報が集まるくらいは便利さとのトレードオフでぎりぎり許容範囲である。

さて iTunes Store でお金を払う方法を調べた。

手段1.2枚目のクレジットカード
オンライン決済用のバーチャルカード
http://www.smbc-card.com/nyukai/add/virtual/index.jsp
を限度額の小さい2枚目として持とうかと考えたが、1枚目の限度額を下げれば良い気もして保留。使い分けると、情報が盗まれたときの被害が多少は減るような気もするので、そのうち作るかもしれない。

手段2. Vプリカ
http://vpc.lifecard.co.jp/guide/use.html#guide_check
「プリペイドでクレジットカードとして使える」という宣伝文句に惹かれたが、現金でプリペイドすることはできず、別のクレジットカードで支払うという仕様。
それって何がうれしいか考えたが、2枚目のクレジットカードと同じで、使い分けると、情報が盗まれたときの被害が多少は減るような気もする、ということか。2chのスレ
http://toki.2ch.net/test/read.cgi/credit/1309483837/
を読んだが、エロサイト用か。1のバーチャルカードより使う可能性は低い。

手段3. iTunesカード
そう、ここまで調べてから、iTunes カードの存在を知ったのだ。
http://store.apple.com/jp/browse/home/shop_ipod/itunes_cards
これが必要十分ではないか。現金で、セブンイレブンや家電量販店で買える、プリペイドカード。私はこれが欲しかった。
参考) iTunes Storeでハッキング被害に遭わないためにいますぐできる3つの方法+α http://www.ttcbn.net/no_second_life/archives/3119

ということで iTunes カードで、iTunes Storeでお金を払える見通しがついた。

しかし、「頻繁にクレジットカード情報流出!」と聞くが、みんなよく怖くないなあ。金銭的には損はしないけど、個人情報が漏れることが「気持ち悪い」と私は思うのだ。感覚と価値観の問題だから、とやかく言わないけど。