〜2003年11月上旬〜
更新。rb_proc_newを使っているので、もはやRuby 1.6ではmakeできない。
* fix `sed n' printing the last line twice. * fix incorrect error message for invalid character classes. * fix segmentation violation with repeated empty subexpressions. * fix incorrect parsing of ^ after escaped (. * more comprehensive test suite (and with many expected failures...)
なんとなくuclibcを使ってみる。
% ac_cv_header_wchar_h=no \ CC='/usr/i386-linux-uclibc/usr/bin/gcc -static' \ CFLAGS=-Os CXXFLAGS=-Os ./configure \ --disable-dependency-tracking --disable-nls --prefix=/usr % make all check <途中略> All 57 tests behaved as expected (4 expected failures)
よさげだ。
まだやってくるよ。10月はどんなもんだったかというと
% scan +swen |awk '/2003-10/{print $2}' |sort |uniq -c 11 2003-10-01 5 2003-10-02 2 2003-10-03 2 2003-10-04 9 2003-10-05 8 2003-10-06 6 2003-10-07 6 2003-10-08 6 2003-10-09 10 2003-10-10 16 2003-10-11 9 2003-10-12 17 2003-10-13 9 2003-10-14 18 2003-10-15 14 2003-10-16 8 2003-10-17 2 2003-10-18 5 2003-10-19 4 2003-10-20 6 2003-10-21 6 2003-10-22 12 2003-10-23 6 2003-10-24 8 2003-10-25 2 2003-10-26 5 2003-10-28 4 2003-10-29 6 2003-10-30 3 2003-10-31
毎日来てるじゃん。 今使ってるscan.formはこんな感じ。
%4(msg)%<(cur)+%| %>\ %04(year{date})-%02(mon{date})-%02(mday{date}) %02(hour{date}):%02(min{date}) \ %6(size) \ |%10(hdecode(friendly{from}))| \ %(hdecode{subject})%<{body}<<%{body}%>
scanコマンドに-fileというオプションがあることに気づいた。 もう15年ぐらいは使ってるというのに。
% scan -file ruby-talk.0311.mbox |head -5 1 2003-11-01 00:15 0 |"Michael C| Re: [Q] Ruby and XUL?<<On Wednesday 2 2 2003-11-01 01:05 0 |"Zachary P| Re: [Q] Ruby and XUL?<<On Sat, Nov 01 3 2003-11-01 03:39 0 |Eric Hodel| Re: [Q] Ruby and XUL?<<James Britt (j 4 2003-11-01 04:00 0 |James Brit| Re: [Q] Ruby and XUL?<<Eric Hodel wro 5 2003-11-01 04:17 0 |Hal Fulton| Since today is October 31...<<srand 0
残念ながらサイズは0になってしまうし、1-5という範囲指定もできない。 このファイルはcmailでM-x cmail-c2mで作ったもんだけど、 そうか、cmail用のscanをRubyで作ればいいのか。
更新。
multipartが全滅してるので、文句を言われる前に元に戻した。 fml用テストMLを作るかな。今のままruby-talkで実験するのもなんだし。
binutilsが新しくなったせいか、ruby_safe_level等のsymbolが"B"になるようになった。 Ruby 1.6はGNUmakefileで
nm --extern-only --defined-only librubys.a |\ ruby -ne 'puts $1 if / [CDT] _(.*)$/' > ruby.def
という感じでruby.defを作っていたため、 拡張ライブラリを作るところでundefinedになってしまう。 というわけで[BCDT]に変更。
Ruby 1.8はruby.defを作らないので関係なし。
というわけで、Postfixをインストール。 main.cfで書き換えたのと追加したのは以下の4つ。
myhostname = localhost.localdomain relayhost = ISPのSMTPサーバ名 sender_canonical_maps = hash:/etc/postfix/sender_canonical mailbox_command = /usr/bin/procmail
sender_canonicalは
watanabe Fromに設定したいメールアドレス
てな具合。
sudo postmap hash:/etc/postfix/sender_canonical
を実行しデータベースを更新し、postfixをstartさせる。 mailコマンドでrimへ送ってみる。okだ。
これでfmlの準備はできたかな。
% sudo mkdir /var/spool/ml % sudo chown watanabe /var/spool/ml % perl makefml install 適当に応える % /usr/local/fml/makefml newml ruby-talk % sduo vi /etc/aliases メッセージの通り/var/spool/ml/ruby-talk/aliasesを追加 % /usr/local/fml/makefml adduser ruby-talk watanabe@ruby.localdomain % cd /var/spool/ml/ruby-talk % vi cf 面倒なのでDOMAINNAMEをruby.localdomainにしてしまう % make config.ph % echo test | mail -s test ruby-talk
でいいかなと思ったらエラーメールになってしまった。
<ruby-talk@ruby.localdomain>: mail to command is restricted
なるほど。Postfixの設定か。/etc/postfix/main.cfに
allow_mail_to_commands = alias,forward,include
を追加してreload。おお、これでいいみたいだ。
さていろいろ実験できる環境ができたので、データを用意する。 htmlつき、pgp-multipart、ファイルが添付されている、とこれくらいでいいかな。 今月のruby-talk MLに来たメールで、 それぞれに該当するものがあるかどうか調べてみるとすぐにみつかった。 それぞれFromとTo:とFrom:を書き換えて要らないヘッダ部分を削り
/usr/local/fml/fml.pl /var/spool/ml/ruby-talk < message
と実行して直接食わせる。これで簡単に実験できるわけだ。
で、結局以下のような設定にするのが一番よさそうだ。
&ADD_CONTENT_HANDLER('multipart/.*', 'text/html', 'strip+notice'); &ADD_CONTENT_HANDLER('multipart/.*', '.*/.*', 'allow+multipart');
これだとmultipartのままtext/htmlの部分だけstripすることができる。 他のmultipartはいじらない。
あとはvirus対策のためにrejectするsubtypeを設定すればいいかな。 とりあえずapplication/x-msdownloadあたりか。
&ADD_CONTENT_HANDLER('multipart/.*', 'application/.*download', 'reject');
ruby-talk ML自体は32KBというサイズの制限があるから、 設定するまでもない気もする。
テレビ朝日でもやってることに気づいた。 不思議なことに テレビ埼玉でやってる内容とは違う。 というか、こっちは1時間番組だよ。 なんでそんな不思議なことを?
それにしてもR.E.M.のBad DayのPVは面白い。
spamにしか見えないこの記事だが、実はspamではない。 ruby-talk MLのメンバだし、過去にも投稿してるし。
% ./configure.gnu -Dcc=gcc -Dccflags=-DDEBUGGING % time make all test install make all test install 11873.31s user 543.82s system 93% cpu 3:41:17.06 total
This package is a port of the Universal NFS server. It contains an NFS daemon (rpc.nfsd) and a mount daemon (rpc.mountd). Unlike other NFS daemons, this NFS server runs entirely in user space. This makes it a tad slower than other NFS implementations, and also introduces some awkwardnesses in the semantics (for instance, moving a file to a different directory will render its file handle invalid).
* Modified handling of mime attachments to decode rfc822 and to discard applications and images. * Added decoding of percent escaped characters in URLs. * Script tuning/bogotune rewritten as C program. * Added man page for bogotune. * Print "X-Bogosity" line when "-t" is used alone. * Change bogoupgrade back to using 2 arg open for perl-5.6 compatibility. * Initialize wordhash storage. * Fix initialization problem that prevents reading more than one msg-count file. * Configure script modified to better detect BerkeleyDB libs. * Makefile modified to build bogolexer and bogoutil with fewer shared libs. * Fix build problem in doc directory. * English and french versions of bogofilter-faq.html revised.
今頃になって別ドメインに送れないことに気づいた。
relayhost = [ISPのSMTPサーバ名]
のようにMX lookupを無視する設定に変更。
最近全然メールを書いてないということか。
o Added e1, microblaze, and sh64 architectures. o Much improved soft-float support o Rewrote the passwd and group handing functions and implemented all SuSv3 required reentrant versions. o Reworked and updated the Config system. You now get to select your target architecture with the config system. o Fixed pthreads for mmuless m68k systems o Added some x86 optimized string functions. o Lots and lots of bugs fixed.
Changes: A collection of minor enhancements and tweaks.
MSYSのshはコマンドがMSYSのアプリケーションではない時、 引数の/dをd:に勝手に変換する。 でも
./configure --prefix=/d/programs/ruby-mignw
と実行すれば、MSYSのshが起動するわけで、/dはそのままになる。 だからrbconfig.rbの中のprefixも/d/programs/ruby-mingwのままなので、 instruby.rbで直接インストールされるruby.exeやlib/は カレントドライブの/d/programs/ruby-mingwにインストールされる。 一方ext/extmk.rb経由でmake installされるファイル群は、 MSYSのアプリケーションではないruby.exeがコピーするので、 コマンドラインは変換される。ここで、
/d/programs/ruby-mingwはd:/programs/ruby-mingw
となる。 つまりinstruby.rbの中でもruby.exeを起動すればいいわけだ。 そりゃだめだめな解決策。
まあ
./configure --prefix=d:/programs/ruby-mingw
で我慢してくれないかな。