〜2004年10月中旬〜
security fixということで。
http://rsync.samba.org/ftp/rsync/rsync-2.6.3-NEWS
すでに興味をなくしたRuby Quizではあるが、やっぱネタ次第?
requireを先頭に持っていくことでエラーは起きなくなったようだ。 すでに10日以上経つが全然問題ない。
ついでにlilyも公開してくれるとうれしいな。
XMLにXPathがあるように、YAMLにもYPathがあるらしい。 まだ実験的か。
This method is EXPERIMENTAL and much of the YPath syntax isn't supported. YPath is still being defined by YAML implementors and this is all subject to change.
どういうわけか最近spamが目立つ。 Bogofilterのログを確認してみるとhamもspamもspamicityが0.5ぐらいというのが多い。 データベースが壊れたか? 幸いなことに先日Berkeley DBからQDBMへ変更した際にdumpしたテキストファイルが残っていたので、
% bogoutil -l wordlist.qdbm.new < wordlist.txt % mv wordlist.qdbm{.new,}
と実行して作りなおし。いい感じに戻った。 たまに
% bogoutil -d wordlist.qdbm > wordlist.txt
とdumpしたものを保存しておくか。最初から訓練しなおすのも面倒だし。
なかなかすごい要求だ。
C-sの挙動はうちでも起きてます。 面倒なのと根がviなので/で代用。
やっと1.00が出た。
Over three years in development, BusyBox 1.00 represents a tremendous improvement over the old 0.60.x stable series. Now featuring a Linux KernelConf based configuration system (as used by the Linux kernel), Linux 2.6 kernel support, many many new applets, and the development work and testing of thousands of people from around the world.
というわけでLinuxのkernelをmakeするときにように、 make configやmake menuconfigでいろいろ設定できるわけだね。 含めたいcommandも選べる。
先日ext/もRDocで処理するようになった。 1.8ではまだinstall-docがdefaultではないため、まだ気づいてない人が多いかもしれない。 まあ、試しにmake install-docしてみてくれ。時間が半端じゃなくかかる。 Pentium 4 2.6GHzですら5分かかる。
Files: 742 Classes: 707 Modules: 535 Methods: 8031 Elapsed: 309.499s
topでどのくらいメモリを食うか見てたら600MBを越えたあたりでやっと終了。
で、できあがりは
% du -ms /usr/local/share/ri/1.8 36 /usr/local/share/ri/1.8
36MBだ。これも結構でかいね。
頼むからLinux版を作ってくれ。
CSSでここまでできるんだなあ。
BusyBoxyをglibcでstatic版を作ると700KBとかなりでかくなる。 しかもglibcはstaticで作っても 内部でこっそりdlopen相当の処理をしている ので非常時用にはあまり使いたくない。 というわけでuClibcを更新。最近freshmeat.netに出てこなくなったな。
Busyboxのstatic版を作るにはmake menuconfigして、 Build Options - Build BusyBox as a static binary (no shared libs) をチェックすればいい。その後
% make CC=/usr/i386-linux-uclibc/usr/bin/gcc
と実行すればuClibc版BusyBoxのできあがり。 のはずだけどエラーになってしまった。
In file included from applets/applets.c:48: include/applets.h:551: error: `sysctl_main' undeclared here \ (not in a function)
該当する行は
#ifdef CONFIG_SYSCTL APPLET(sysctl, sysctl_main, _BB_DIR_SBIN, _BB_SUID_NEVER) #endif
で、なんで?CONFIG_SYSCTLか。そんなの選んでないよな。 あ、そうか。kernelのheaderで定義されてるんだ。 LinuxのKernelConfがbaseなだけに同じルールだもんな。 たまたまぶつかってしまったんだろう。 調べてみるとuClibcの<param.h>が最終的に<linux/config.h>をincludeしてしまうのが原因と判明。 というわけで簡単な解決方法としてはmake menuconfigでProcess Utilitiesのsysctlをチェックしてしまえばいい。
サイズは312KBと半分以下。まずまずか。
Currently defined functions: [, ash, basename, bunzip2, busybox, bzcat, cat, chgrp, chmod, chown, chroot, chvt, clear, cmp, cp, cut, date, dd, deallocvt, df, dirname, dmesg, du, echo, egrep, env, expr, false, fgrep, find, free, grep, gunzip, gzip, halt, head, hexdump, hostname, id, ifconfig, init, install, kill, killall, klogd, linuxrc, ln, logger, ls, mkdir, mknod, mktemp, more, mount, mv, openvt, pidof, ping, pivot_root, poweroff, ps, pwd, readlink, reboot, reset, rm, rmdir, route, sed, sh, sleep, sort, strings, swapoff, swapon, sync, sysctl, syslogd, tail, tar, tee, test, time, touch, true, tty, umount, uname, uniq, unzip, uptime, usleep, vi, wc, wget, which, whoami, xargs, yes, zcat
これだけあればたぶん困ることもないだろう。
最後にday after tomorrowのmore than a million milesが流れてちょっとびっくりした。 あ、日本語の吹替えにだけ入っているのか。
http proxyを作ったはいいけど、ふだんは動かしてないから残念な結果になったりすることが多い。 どうせw3mで見てるのでlocal cgiを作ってみよう。 utf8.cgi を参考にこんな感じにしてみた。
#! /usr/bin/env ruby require 'cgi' require 'nkf' require 'zlib' url = ENV['W3M_URL'] content_type = ENV['W3M_TYPE'] sourcefile = ENV['W3M_SOURCEFILE'] print "Content-Type: #{content_type}; charset=iso-2022-jp;\n\n" print "<base href=\"#{url}\">\n"; body = '' begin Zlib::GzipReader.open(sourcefile) do |r| body = r.read end rescue Zlib::GzipFile::Error body = File.read(sourcefile) end body.gsub!(/\e\$B(.+?)\e\(B/) do CGI::unescapeHTML($&) end body.gsub!(/=\?ISO-2022-JP\?[QB]\?.+?\?=/i) do NKF.nkf('', $&) end print body
これを~/.w3m/cgi-bin/sf.net.cgiに置いて、~/.w3m/keymapに
keymap "x s" GOTO file:///cgi-bin/sf.net.cgi
を追加すれば準備ok。これで後からxsで変換可能だ。
どうせフィルタリングするなら要らない広告もカットしてしまおう。 sf.net.cgiのprint bodyの前に
body.gsub!(/<!-- begin OSTG navbar -->.+?<H3>/im, "<H3>") body.gsub!(/<!-- begin OSTG Footer -->.+<!-- done with OSDN Footer -->/im, "")
を追加することで結構いい感じになった。
--with-database=qdbmをつけ忘れたのにもかかわらず、~/.bogofilter/wordlist.dbを残しておいたおかげで何事もなく数時間動いていた。 さすがだ。いずれ消すつもりだったけど、やっぱこのまま残しとこう。 というか、ディスクはいっぱい余ってるんだからむやみに消すこともない。
誤変換ではない。 そういうコピーで東武野田線がダイヤ改正したわけだが、 今日たまたま乗った新宿21:08発湘南新宿ライン宇都宮線小金井行きだと、 大宮の乗り継ぎが非常にうまくいくようだ。 昨日までの大宮21:42発だとかなりぎりぎりっぽい。 そのつもりで急いで歩いていたわけだが、案内板を見て拍子抜けしたというか、 一瞬なにが起こったのかわからず、数秒間立ち止まったというか(嘘)。
JRのように月曜日からではなく火曜日の今日からというのも謎だ。
なんか最近gmailから来るメールのspamicityが高いような気がする。 DomainKey-Signatureのせいじゃないよね。
About:
sudosh is a filter that takes advantage of PTY devices in order to sit between the user's keyboard and a program, in this case a shell. It was designed specifically to be used in conjunction with sudo, and allows the execution of a root shell with logging. It is basically a VCR and will record root shell sessions and also has the ability to play back the sessions as they were originally recorded. It records all input/output, keyboard input, and timing information so that the session can be played back in the original format.
sudosh-replayで ttyrecのような再生が可能。
[ruby-talk:116512]に続いて二人目。どこかに嘘を書いてる人がいるんだろうか?