この日記にはツッコミを入れられます。 ツッコミを入れたい日付をクリックすると、フォームが現れます。
xreaでtDiaryを使う方法はxrea.com で tDiary を使う方法やインストールメモやXREA + tDiary + Namazuをどうぞ。
Linuxを無線LANアクセスポイントにできるHostAPという誤解しているっぽいつっこみがあったので、さらにつっこみを入れておいた。
まぎらわしいけど、hostapはprismの古いチップ用のドライバでアクセスポイントにするのに使うのはhostapd。
cygwinで/usr以下に入れずにrailsを試してみようと思って、rubyのstable-snapshotとsqlite3とrubygemsとrailsを適当な場所にインストールしてしまうシェルスクリプトを書いてみた。
#!/bin/sh
TARGET_ROOT=/tmp/r
RUBY_TARBALL='ftp://ftp.ruby-lang.org/pub/ruby/stable-snapshot.tar.gz'
GEMS_TARBALL='http://rubyforge.org/frs/download.php/5207/rubygems-0.8.11.tgz'
SQLITE3_TARBALL='http://www.sqlite.org/sqlite-3.3.5.tar.gz'
PATH="$TARGET_ROOT"/bin:"$PATH"
export PATH
ensure_targetroot () {
mkdir -p "$TARGET_ROOT"
}
cd_targetroot () {
ensure_targetroot
cd "$TARGET_ROOT"
}
get_tarballs () {
cd_targetroot
wget -N "$RUBY_TARBALL"
wget -N "$GEMS_TARBALL"
wget -N "$SQLITE3_TARBALL"
}
ruby_make_install () {
cd_targetroot
tar zxvf $(basename "$RUBY_TARBALL")
cd ruby
./configure --prefix="$TARGET_ROOT"
make
#make test
make install
#make test-all TESTS=-v
}
rubygems_install () {
cd_targetroot
tar zxvf $(basename "$GEMS_TARBALL")
cd rubygems-*/
ruby setup.rb
}
sqlite3_install () {
cd_targetroot
tar zxvf $(basename "$SQLITE3_TARBALL")
cd sqlite-*/
mkdir build
cd build
../configure --prefix="$TARGET_ROOT" --disable-tcl
make
make install
}
sqlite3_ruby_install () {
gem install sqlite3-ruby -- --with-sqlite3-dir="$TARGET_ROOT"
}
rails_install () {
gem install rails --include-dependencies
}
all_install () {
get_tarballs
ruby_make_install
rubygems_install
sqlite3_install
sqlite3_ruby_install
rails_install
}
clean () {
cd_targetroot
rm -r ruby
rm -r rubygems-*/
rm -r sqlite-*/
}
if [ -n "$1" ]; then
set -ex
"$@"
else
echo "usage:"
echo " $0 all_install"
echo " or"
echo " $0 clean"
fi
e3のPRESS CONFERENCEのストリーミングを見た。Wii Connect 24というのでつながりっぱなしということは、うまく使えればおもしろそう。
セキュリティ的に何かあると大変そうだけど。(悪用しようとする人はWiinyという名前をつけるんだろうか(謎))
「VS6までがMSVCRT、VS.NET(2002)がMSVCR70、VS.NET2003がMSVCR71、VS2005がMSVCR80、となっているはずです。」
互換性がないのならRUBY_PLATFORMを変えてくれれば問題の一部は解決しそうな気がする。
sqlite3だと「rails --database=sqlite3」でconfig/database.ymlの編集が不要になって楽。
WX310SAのNetFrontがAccept-Languageを送ってくれないらしく、英語表示になっていたので、Ruby-GetText-Packageでデフォルトのロケールを英語以外にするを参考にしてデフォルトを日本語にした。
cookieで変更できるようにした方がいいのかもしれないけど、今のところ自分専用のアプリケーションなので、デフォルトを変更で問題なし。
以前からfirefoxが起動直後に終了すると問題ないのに、ある程度ブラウズしてから終了するとSegmentation faultになるという現象が起きているので、mozilla - 開発センターを参考にして以下の.mozconfigでfirefox-1.5.0.3-source.tar.bz2をビルドして試してみた。
% cat ~/.mozconfig
. $topsrcdir/browser/config/mozconfig
mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/objdir
ac_add_options --disable-optimize
ac_add_options --enable-debug
ac_add_options --enable-default-toolkit=gtk2
ac_add_options --enable-xft
ac_add_options --disable-tests
終了時のSegmentation faultはBugzillaを検索してみるとBug 253973 - after heavy browsing, Firefox crashes upon exiting [@ nsHashtable::Reset ]と同じように見えた。
(gdb) bt
#0 0x409ca99c in nanosleep () from /lib/tls/libc.so.6
#1 0x409ca7af in sleep () from /lib/tls/libc.so.6
#2 0x0806b52d in ah_crap_handler (signum=11) at nsSigHandlers.cpp:132
#3 0x0806c00f in nsProfileLock::FatalSignalHandler (signo=11)
at nsProfileLock.cpp:210
#4 <signal handler called>
#5 0x401995db in clearHashEntry (table=0x46d7d258, entry=0x46dab244)
at /home/kazu/build/firefox/mozilla/xpcom/ds/nsHashtable.cpp:96
#6 0x401855b5 in PL_DHashTableRawRemove (table=0x46d7d258, entry=0x46dab244)
at pldhash.c:592
#7 0x40185699 in PL_DHashTableEnumerate (table=0x46d7d258,
etor=0x40199f6c <hashEnumerateRemove>, arg=0x0) at pldhash.c:624
#8 0x4019a061 in nsHashtable::Reset (this=0x46d7d250, destroyFunc=0,
aClosure=0x0)
at /home/kazu/build/firefox/mozilla/xpcom/ds/nsHashtable.cpp:352
#9 0x40199ffd in nsHashtable::Reset (this=0x46d7d250)
at /home/kazu/build/firefox/mozilla/xpcom/ds/nsHashtable.cpp:337
#10 0x42d1feb6 in nsNSSComponent::StopCRLUpdateTimer (this=0x46d90ad0)
at /home/kazu/build/firefox/mozilla/security/manager/ssl/src/nsNSSComponent.cpp:1149
#11 0x42d217cd in nsNSSComponent::Observe (this=0x46d90ad0,
aSubject=0x843da38, aTopic=0x806f403 "profile-before-change",
someData=0x806f360)
at /home/kazu/build/firefox/mozilla/security/manager/ssl/src/nsNSSComponent.cpp:1829
#12 0x4019e98d in nsObserverService::NotifyObservers (this=0x81a4190,
aSubject=0x843da38, aTopic=0x806f403 "profile-before-change",
someData=0x806f360)
at /home/kazu/build/firefox/mozilla/xpcom/ds/nsObserverService.cpp:233
#13 0x08062e5f in nsXREDirProvider::DoShutdown (this=0xbfffefa0)
at /home/kazu/build/firefox/mozilla/toolkit/xre/nsXREDirProvider.cpp:652
#14 0x080509f6 in ~ScopedXPCOMStartup (this=0xbfffee40)
at /home/kazu/build/firefox/mozilla/toolkit/xre/nsAppRunner.cpp:548
#15 0x0805851c in XRE_main (argc=1, argv=0xbffff094, aAppData=0x8073300)
at /home/kazu/build/firefox/mozilla/toolkit/xre/nsAppRunner.cpp:2387
#16 0x080502ec in main (argc=1, argv=0xbffff094)
at /home/kazu/build/firefox/mozilla/browser/app/nsBrowserApp.cpp:61
(gdb) up 5
#5 0x401995db in clearHashEntry (table=0x46d7d258, entry=0x46dab244)
at /home/kazu/build/firefox/mozilla/xpcom/ds/nsHashtable.cpp:96
96 delete hashEntry->key;
(gdb) p hashEntry
$1 = (HTEntry *) 0x46dab244
(gdb) p *hashEntry
$2 = {<PLDHashEntryHdr> = {keyHash = 1600851944}, key = 0x46ab8638,
value = 0x0}
(gdb) p nsnull
No symbol "nsnull" in current context.
(gdb) p hasnEntry->key
No symbol "hasnEntry" in current context.
(gdb) p hashEntry->key
$3 = (nsHashKey *) 0x46ab8638
(gdb) p *(hashEntry->key)
$4 = {_vptr.nsHashKey = 0x0, mKeyType = StringKey}
(gdb) q
それよりも自分でビルドしたDeer Parkという名前になったfirefoxはBug 328721 - multiple Frame abuses NS_FRAME_OUTSIDE_CHILDREN warnings on loading webpages and using menusと同じASSERTIONがでまくってvisual bellで光って、特にLocationバーにマウスカーソルをのせたときにvisual bellで光りまくって、今表示しているページのURLのコピーさえ出来なくて使いものにならなかった。
###!!! ASSERTION: Frame abuses NS_FRAME_OUTSIDE_CHILDREN flag: 'Not Reached', file /home/kazu/build/firefox/mozilla/layout/generic/nsFrame.cpp, line 4359 Break: at file /home/kazu/build/firefox/mozilla/layout/generic/nsFrame.cpp, line 4359
最初の15分頃までは連絡事項とか。
「丸投げシリーズ(3) C」。ある程度知っている話だったので、ふむふむと聞きつつ、まだCのソースコードだけしか説明に出てきていない段階でruby -r mkmf -e 'create_makefile("foo")'とかやって試していた。
rb_internの返値を格納する変数名とかが今までみたことがないような命名規則だったので、VALUE(ruby側のオブジェクト)とそれ以外のC側の変数を区別するための変数名の命名規則について質問してみたが、結局お互いによくわかっていなかったので、良い結論は出なかった。
「Miyako」。Miyako自体を使ったプレゼンだった。後で、WindowsでRabbitを動かすのが難しいと言うことでWindows用のプレゼンツールとしてどうかという話をしている人がいた。
「Ruby on Google SketchUP」。ライトニングトークとついているけど、実際には決まった時間で強制的に切られるライトニングトークではなくショートプレゼン。SketchUP自体にあまり興味がなかったので試していなかったけど、どんな風に使うものかちょっとだけわかったので、とりあえずダウンロードはしてみた。後で聞いた話だと、socketは使えないという話だったので、他の手段でどうにかしてdrubyのようなことをして外部の普通のrubyと通信できれば何でも出来るようになりそうな気がした。
「Ruby 初級者向けレッスン第 7 回」。他のことをしていて、あんまり聞いてなかった。内容的にはk-ofの時のものがベースだったらしい。最後のパスカルの三角形の問題だけ挑戦していたが、結局時間切れで解けなかった。
「当日 USB メモリで最低限必要なファイルは配布できるようにします。」と書いてあるけど、USBメモリでの配布はなかったような気がする。
懇親会会場へバスでの移動。一部の人で集まって回数券を買った。
懇親会。まあいろいろ。
喫茶店へ。20人ぐらいだったのでなかなか入れる場所がなかった。
Thinkpad の加速度センサをRubyから使う (2)をみせてもらった。ゆっくりひっくり返してみると、ちゃんとタイトルバーの方に移動していった。もう一つGoogle SketchUPの視点変更に使っているものも見せてもらった。視点変更は回転が出来ないのがちょっと使いにくい感じがした。加速度センサは最近いろんなものに内蔵されているけど、単独でUSB接続のものとかは売っていいるのだろうか。
デュアルモニタの話。マルチモニタの下の方にあるスクリーンショットのように画面のプロパティの設定で1と2というモニタの絵が並んでいたら、デュアルモニタに対応している。最近のノートPCだと内蔵の液晶ディスプレイと外部ディスプレイで対応しているものがほとんど。2,3月頃にヨドバシで春モデルのノートPCを一通り見て回ったときには対応していなかったものは1つもなかったような気がする。
mkconfig.rbで止まってmake出来なかった。HTMLのエスケープが面倒なので、gdbで実行した結果はhatenaのRubyistグループの日記に書いてみた。
2.0.0.105にバージョンアップしておいた。
extconf.rbを実行した後にMakefileを編集してるけど、extconf.rbに引数をつければ必要なくなるような気がする。extconf.rbに指定できる引数がいまいちよくわかってないから、どう指定すればいいのかはわからないけど。
Microsoft Windows Server 2003 R2 Standard Editionでいいのならhttp://www.microsoft.com/japan/partner/actionpack/ とか、Enterprise Editionが必要なら http://www.microsoft.com/japan/windowsserver2003/evaluation/trial/default.mspx の Windows Server 2003 R2, Enterprise Edition 180 日限定評価版とか。
マイクロソフト セキュリティ アドバイザリ (919637): Microsoft Word の脆弱性により、リモートでコードが実行されるの「回避策の影響: セーフ モードを使用しているユーザーはオンラインのヘルプ ページ (英語情報) にある制限を受けることになります。http://office.microsoft.com/en-us/assistance/HP030823931033.aspx」というどういう影響があるのかという情報が英語になっていると、回避策をして困るかどうかの判断に困るような気がする。
Debian sargeのlibglade2-ruby 0.12.0-2とlibgettext-ruby1.8 0.8.0-1で、gettextを使った部分が翻訳されたりされなかったりして悩んでしまった。
1つ目の原因は.gladeファイルの中身はruby-glade-create-templateで生成した.rbファイルのGetText.bindtextdomain(domain, localedir, nil, "UTF-8")のlocaledirが使われて、環境変数GETTEXT_PATHは見なかったという点。
2つ目の原因は.gladeファイルから_glade.rbファイルを生成して、.rbファイルから_glade.rbファイルをrequireしていたので、.rbファイルでGetText.bindtextdomainを呼んでいなかったら、.rbファイルの中で_('...')を使っても翻訳されなかったという点。
標準メールよりもセカンドメールを増やしてほしい。
容量追加は出来るようになるみたいだけど。
20MBだと数日分サーバに保存する設定にしてるとvirusであふれてしまったことがあって、それ以降ウイルスバスター for @nifty Mailの設定をしてるということがあるので。増えてもダウンロードしてたまるメールの容量を抑えるために解除はしないだろうけど。
✑ くろはた [ぎゅうしゃ:牛が引く車 一般 ぎっしゃ:平安時代の貴族が使った牛車 うしぐるま:牛が引く荷車]