FreeBSD 3.4Rを買いに、夕方から秋葉原へ。 今日の散財。
FreeBSD 3.4R | 3,480 | ぷらっとほーむ | とりあえず確保 |
Diamond RIO 500 | 31,800 | T-ZONE DIY | 衝動買い |
あやしいパネル型スピーカー | 3,150 | T-ZONE DIY | 衝動買い2 |
あやしいパネル型スピーカーは、音質はソレナリかなー。 見ためは安っぽくて結構イカス(ぉ)んだけど、低音がしおしお。
RIO 500についていた添付ソフトのCD→MP3コンバータは50曲の総量規制がかかっているとのこと。 ユーザー登録すると、この制限は解除されるらしい。 面倒な事をするもんだ。
RIO 500を使っていて痛感した事。 京葉線の車内ってこんなにうるさかったのか………。
今日はなんかだるかったので一日寝てた(ぉぃぉぃ)。
UNIX Mag. で wwwoffle が紹介されていたり。 やっぱり、電話料金が高いヨーロッパとか日本あたりではこーゆーツールは必須だよねぇ。 実は、市内なら電話かけ放題というのはアメリカだけなのかな?
FreeBSD 3.3Rの場合、/sbin に dhclient と dhclient-script が入っている。 で、/sbin/dhclient-scriptをチェックしてみたら、/etc/dhclient-enter-hooks と /etc/dhclient-exit-hooks の実行可能属性チェックをやっていた。 ふむふむ。 フックできるわけね。 そんなわけで、dhclientによってIPアドレスをもらったら、Sambaを起動するようにしてみる。
#!/bin/sh # # /etc/dhclient-exit-hooks # read from /sbin/dhclient-script # if [ x"$new_ip_address"x != x""x ] ; then if [ x"$new_subnet_mask"x != x""x ] ; then echo "interfaces = ${new_ip_address}/${new_subnet_mask}" > /usr/local/etc/smb.conf.interfaces # run samba server /usr/local/etc/rc.d/samba/sh.sample stop /usr/local/etc/rc.d/samba.sh.sample start fi fi exit 0 # # end of file #
dhclientが取得したIPアドレスとサブネットマスクをsmb.confの文法で /usr/local/etc/smb.conf.interfaces に書き出す。 これを、/usr/local/etc/smb.conf 内部で include = /usr/local/etc/smb.conf.interfaces などとして取り込むようにする。 その後、sambaの起動を行っているだけ。
そういえば、samba-2.0.5のパッケージの smb.conf.sample 内部には client code page と codingsystem のコメントが無くて、設定するのを忘れていた。 「砂の十字架.mp3」というファイルが作れなくてちと悩んでしまった。
ヨドバシにてスマートメディア(32M版)をゲット。
早速RIO 500に入れてみる。よっしゃ。動いた(←当り前だって(笑))。
ついでに、Parm Top PC-110 (通称ウルトラマンPC)に標準搭載されているスロットがコンパクトフラッシュであることを店頭のメディア対応表で確認(汗)。
(PC-110が出た当初はピコフラッシュと呼ばれていたのよん)。
128MBのコンパクトフラッシュで5万円オーバー...。
X11を入れなくてもソースを入れたらあふれるよなぁ。
だいたい、オレのhome directoryってば982MBくらいあるしなぁ。
ううう。
jotでfor ( i = 1 ; i <= 10 ; i++ ) みたいなことができるとのこと。 どれどれ。
george@asuka ~/public_html $ for i in `jot 10` ; do echo $i ; do-something ; done 1 2 3 4 5 6 7 8 9 10
ををを。
あやふやな記憶ながら、GNU textutilsにはjotに似たコマンドでseqというのがあったような気がする...。 (後日談:seqがあるのは GNU sh-utilsでした。)
ちとフォローが遅れたけど、トランスメタの新チップが発表されたらしい。 CQ出版あたりから、評価用ボードでないかな〜。 とは言うものの、FreeBSDあたりが動いてくれないとベンチマークできない&速度を実感できないけど。
15:30起動。
その後、呉ソフトウェアのfirst Queen 〜 The New World 〜三昧。
昔懐かしいゴチャキャラゲームの最新作(と言っても、発売されたのは結構前)だ。
感想はまた後程。
seqがあるのはsh-utilsでしたか。
textutilsだとばかり思ってました。
調査ありがとうございます〜。
bashでファイル名中のスペースを_に一気置換するなら、こんなのはどうでせう。
george@athlon ~ $ a="abc def ghi" ; echo ${a// /_} abc_def_ghi
george@athlon ~/tmp2 $ ls -l total 0 -rw-r--r-- 1 george wheel 0 Jan 23 15:32 abc def -rw-r--r-- 1 george wheel 0 Jan 23 15:32 abc def ghi george@athlon ~/tmp2 $ for i in * ; do echo ${i// /_} ; done abc_def abc_def_ghi
$i{/ /_} と書くと、先頭の1個だけしか置換されないようです。
$i{// /_} で全部置換してくれます。
(今日はじめて知った(笑))
とりあえず、差分を小さくしてみた。
これくらいなら、メーリングリストに投げても大丈夫だろう。 さて、テキスト部分(というか、メール本文)を書くかな。 速いところ出しておかないと、FreeBSD 4.0系統ではドライバが全部変わっているので役に立たないパッチだしぃ。
C++でも使える javadoc みたいなのないかなーと思ってWebから検索してみる。
vectorとかgooで探したけどだめだった。
結局、/usr/ports/develからdoc++'s Home Pageを発見。
最初からportsでさがせば良かった。
早速インストール。
とりあえず、以下のMakefileとsample.cppを使用して/usr/include/g++/以下に置いてあるクラスのリストをつくってみた。
# # Makefile - generate C++ header document with doc++ # INCDIR=/usr/include/g++ all: document document: sample.dxx if [ ! -d html ] ; then mkdir html ; fi doc++ -d html sample.dxx sample.cpp: echo "#include <iostream.h>" > sample.cpp for i in $(INCDIR)/*.h ; do if [ -f $$i ] ; then echo "#include <"`basename $$i`">" >> sample.cpp ; fi ; done sample.i: sample.cpp g++ -E -C -I$(INCDIR) sample.cpp > sample.i sample.dxx: sample.i docify sample.i sample.dxx clean: rm -f *.i *.dxx html/* # # end of file #
/* * sample.cpp - include only */ #include <iostream.h> #include <stl.h> #include <std.h> #include <ACG.h> #include <AllocRing.h> #include <Binomial.h> #include <BitSet.h> #include <BitString.h> #include <Complex.h> #include <DLList.h> #include <DiscUnif.h> #include <Erlang.h> #include <Fix.h> #include <Fix16.h> #include <Fix24.h> #include <FlexLexer.h> #include <Geom.h> #include <GetOpt.h> #include <HypGeom.h> #include <Incremental.h> #include <Integer.h> #include <LogNorm.h> #include <MLCG.h> #include <NegExp.h> #include <Normal.h> #include <Obstack.h> #include <Pix.h> #include <PlotFile.h> #include <Poisson.h> #include <RNG.h> #include <Random.h> #include <Rational.h> #include <Regex.h> #include <RndInt.h> #include <SFile.h> #include <SLList.h> #include <SmplHist.h> #include <SmplStat.h> #include <String.h> #include <Uniform.h> #include <Weibull.h>
出力結果は結構大きいので省略。 興味のある人は試してみて。 結構良い感じで動いているよん。
xdoc++をpkg_addしようとしたら、ghostscript-5.10 gsfonts-5.10 libwww-5.2.6 teTeX-1.0.6 を要求されてしまった。
ja-vfghostscript-5.50ならインストールしてあるのにな。
teTeXは無いけど。
doc++の出力は、別にTeXに変換できなくてもHTMLになれば良かったので手動でmakeしてインストール。
そんなわけで、portsに要望が涌いて来た...。
うーむ。 何か妙案は無い物か。
今日の夕方は nslookup jp.freebsd.org ができなくなっていたけど、気のせいかな?
ここんとこ、午前様続きで日記の更新が止まったり。
どもです〜。
portsなら、gsというコマンドがあるか?という依存関係を記述できるんですね。
今気が付いたけど、doc++のパッケージを/stand/sysinstallを使ってインストールしていたら、gs-5.10関係が自動的にインストールされてしまう所だったのか〜。
パッケージのシステムで「gsというコマンドがあるか?」を実現する場合は、純粋仮想パッケージ(!?)が必要かな。
ghostscript (pure virtual package) ^ ^ | | +--------------+ | | | ghostscript-5.10 (pure ...) ghostscripts-5.50 (pure virtual package) ^ ^ ^ | | | | | +---------------+ | | | ghostscript-5.10 ghostscript-5.50 ja-vfghostscript-5.50
doc++は依存関係として、ghostscript (pure virtual package) に登録しておく...と。
これをやると、pkg_addし終った段階で、純粋仮想パッケージしかインストールされていないものがある場合はエラーを出して、「実装パッケージ」をインストールさせる必要がでてくるけど。
ghostscriptをクラスと考えるなら、上の図は継承関係を表現していると言えるかな? で、ghostscriptクラスにはインターフェースがあって....。
ghostscriptに依存するパッケージは、どのインターフェースを使用しているかを指定しておいて...と。
でも、doc++ってghostscriptのどの機能を使っているんだろう?という疑問は当然あったりするので難しい。
作る/維持するのが大変という一番重要な問題もあるし。
なんか恐いんですけど。
午前様が続く。
FreeBSD 3.3Rで /etc/sendmail.cf の設定を行う。
MASQUERADE_AS(yk.rim.or.jp)dnl FEATURE(`masquerade_envelope')dnl作成後のサンプルはこちら。george.mc-8.9.3
MASQUERADE_ASの括弧の中のyk.rim.or.jpは、プロバイダからもらった自分のメールアドレスの @ 以降(ホスト名.ドメイン名)を書いておけばOK。 めでたしめでたし。
100番げっちゅ〜。
ををを。
こんなんあるよ。
毎日更新らしい。
絶望の世界。
なんとなく、雰囲気はリングに近いかな。
話の途中なんで、続きが気になる今日のこの頃。
作中にはWeb掲示版でのやり取りも出てくるが、このページ内部にも掲示版があったりするので、結構シュールだ。
Mozilla ver.5 M13からFreeBSD版バイナリを拾おうと思ったが、リンクが間違ってるじゃん。
http://ftp.mozilla.org/pub/mozilla/releases/m13/mozilla-FreBSD3x-M13.tar.gz (誤) http://ftp.mozilla.org/pub/mozilla/releases/m13/mozilla-FreBSD3x.M13.tar.gz (正)
英語ページの表示は問題無いようだ。 で、自分のページ(日本語)を表示させようとしたら、フォントサーバがぽなくなりに。 なんか設定がマズイのかな。 誰かうまく行った人います?