No Such Blog or Diary
温湿計を買う
- 2006-11-09 (Thu)
- 一般
乾燥すると風邪引きやすいとのことなので,部屋の湿度を計るために温湿計を購入.計ってみたら湿度70%超.こんだけ湿度が高ければ問題なかろう.電気ポットは優秀だ?
- Comments: 0
- TrackBack (Close): -
MoinMoinWiki を入れてみる
- 2006-11-08 (Wed)
- ソフトウェア
http://moinmoin.wikiwikiweb.de/ からダウンロード. いまのところリリースバージョンのアーカイブは moin-1.5.6.tar.gz らしい.アーカイブを解凍後 setup.py を実行してファイル群をインストール.(python-dev が必要とのこと)
python -v setup.py --quiet install --record=install.log
install.log を見るかぎり主に /usr/share/moin/ と /usr/lib/pythonXX/site-packages/MoinMoin/ にファイルをコピーするらしい.次にインストールされているかのテスト.python 起動して MoinMoin を読ませる.
> python Python 2.3.5 (#2, Sep 11 2005, 02:13:21) [GCC 3.3.5 (Debian 1:3.3.5-13)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import MoinMoin >>>
問題なければ良し.あったら python のライブラリのサーチパスがおかしいとか.
そしたらインスタンスの生成をする.
export PREFIX=/usr/ # prefix export SHARE=$PREFIX/share/moin # installed directory export WIKILOCATION=$SHARE # diretcory to which a new instance is created export INSTANCE=mywiki # name of new wiki instance export USER=www-data # username of http-serevr export GROUP=www-data # grop of http-serevr cd $WIKILOCATION mkdir $INSTANCE # make a directory for this instance cp -R $SHARE/data $INSTANCE # copy template data directory cp -R $SHARE/underlay $INSTANCE # copy underlay data directory cp $SHARE/config/wikiconfig.py $INSTANCE # copy wiki configuration sample file chown -R $USER.$GROUP $INSTANCE # change owner chmod -R ug+rwX $INSTANCE # USER.GROUP may read and write chmod -R o-rwx $INSTANCE # everybody else is rejected cd $WIKILOCATION/$INSTANCE mkdir cgi-bin cp $SHARE/server/moin.fcg cgi-bin chown -R $USER.$GROUP cgi-bin chmod -R ug+rx cgi-bin chmod -R o-rwx cgi-bin
んで,インスタンスの cgi-bin の中の main.fcg を修正.wikiconfig.py へのパスを追加.
sys.path.insert(0, '..')
さらに,wikiconfig.py を修正.data_dir, data_underlay_dir を moin.fcg からの正しいパスにする.ついでに画像ファイルとかのURLのprefixを正しく設定(httpd の alias どおりに).言語は日本語に.Wiki の名前とかロゴとかの設定も wikiconfig.py でするらしいが後回し.
data_dir = '../data/' data_underlay_dir = '../underlay/' url_prefix = '/moinmoin' language_default = 'ja'
あとは,http サーバのほうで alias の設定などをしておく.lighttpd 使うので /etc/lighttpd/lighttpd.conf の alias.url にエントリを追加して,fastcgi.server に FastCGI の設定を書いておく(プロセスは自動起動で).
alias.url= ( "/moinmoin/" => "/usr/share/moin/htdocs/", ) fastcgi.server = ( "/mywiki" => (( "docroot" => "/", "min-procs" => 2, "max-procs" => 2, # allocate successive port numbers for each process, starting with "port" "bin-path" => "/usr/share/moin/mywiki/cgi-bin/moin.fcg", "host" => "127.0.0.1", "port" => 2200, "check-local" => "disable", "broken-scriptfilename" => "enable", )) )
これで /mywiki でページがみれるようになっているはず.画像とか css がおかしかったら alias が正しくないのかも.
- Comments: 0
- TrackBack (Close): -
Prim と Kruskal のアルゴリズム
- 2006-11-07 (Tue)
- プログラミング
Kruskal はソートと union/find があれば出来る.Prim はヒープ(バイナリヒープ)があれば出来る.これだけみると Prim のほうが単純そうなんだけどなぁ… ゼロから実装してみた感じでは Kruskal の方が断然単純だった気がする.実用上はどっちの方が速いのだろうか?
- Comments: 0
- TrackBack (Close): -
帰る
- 2006-11-05 (Sun)
- 一般
どうやら風邪を引いたらしい.そんなに寒くなかったのに昨日はくしゃみ連発しとったからなぁ.
- Comments: 0
- TrackBack (Close): -
union/find の
- 2006-11-04 (Sat)
- 一般
経路圧縮とランクによる合併操作をあわせる,n 要素で操作回数が m 回のときに O(m a(m,n)) とのことだが,何で Ackermann 関数の逆関数 a(m,n) (正確な逆関数では無いらしいが…)が登場するのだろう? O(m lg*(n)) の評価は原理が簡単だが a(m,n) の方は面倒らしい.機会があれば調べてみるか.どっちにしろ無視できるスピードの関数だからどうでもいいのだけど.
- Comments: 0
- TrackBack (Close): -