daemonfreaks.com

entrycache導入

posted by jun-g at 月, 02 4月 2007 13:39 JST

PyBlosxomはファイルの更新日時がそのままエントリの投稿日時になるので、過去のエントリに追記しちゃうとそのエントリの日付が変わってしまって困るなー、って思ってたら、投稿日時を記憶するプラグインがあったことに今頃気づいた…。

ということで、ファイル名やエントリの配置などの細工なしで導入できそうなentrycacheをプラグインに追加。初回起動時に過去エントリのキャッシュを一気に作成するので、少し重かった。

あと、mod_wsgi環境ではキャッシュファイルに投稿日時が保存されなくて少しハマッた。mtimeが取得できてない?でも投稿日時の表示はできてるしなぁ。今度デバッグしてみよう。

PyBlosxom on mod_wsgi

posted by jun-g at 木, 22 3月 2007 03:36 JST

mod_wsgiのリリース間近でなんとなく盛り上がっているふうなので、僕も試してみた。

やっぱり動かすならPyBlosxomだよねぇ(Wikiにも載ってないし)という事で、Apache2.2 + PyBlosxom(svn trunk版)で動かす事に。

インストールはaodag隊長んとこに書いてあるとおり、

./configure && make && make install

で完了。当然事前にpythonとapacheがインストールされている必要あり。後はディレクトリ作ってPyBloxsomのソース一式を突っ込んでから、Apacheの設定ファイルに以下を追加した。

LoadModule wsgi_module libexec/apache22/mod_wsgi.so
(略)
WSGIScriptAlias /pyblosxom /usr/local/www/apache22/wsgi/wsgi_app.py
<Directory "/usr/local/www/apache22/wsgi">
(略)

で、あっさり動いた。素晴らしい。っていうか元々WSGI対応の作りになっているので当然そのままで動くんやけど。

Pyblosxom on Mod_Wsgi
Pyblosxom on Mod_Wsgi posted by (C)jun-g

mod_wsgiで動かすのは簡単やったけど、trunk版のPyBlosxomに新しい設定項目(locale)が追加になってて、そこに少しハマったという…。

そろそろメインのPCを復旧せねば

posted by jun-g at 火, 20 3月 2007 02:13 JST

ようやく壊れたメインPCを復旧させるべく作業開始した。

…で、まぁ色々トラブルもあったけど、とりあえずRAID0アレイ上にあった/homeのデータは全て救出できた。中古で3000円したPromiseのRAIDカードはちっとも役に立たず、新品の玄人指向の1000円のRAIDカードが役に立った。なんたる不条理。後、ヨドバシで衝動買いしたBUFFALOの250GB外付けHDDがデータの吸い出し先として役に立った。うーん、買っといて本当に良かった。

しかし依然としてB5ノート上で作業しないといけない状況には変わりないので、新しいマザーを探しにいかねば。Socket478のマザーなんて、日本橋でも探さないと見付からないかな…。E7205かi875あたりのマザーが良いんやけどな…。

という作業をしている裏で、密かにgettext祭りに巻き込まれているという…。かれこれ24時間以上ビルドしてますが何か?これが終わったら休む間も無くGNOME 2.18祭りに参加予定…。

DevCampの写真

posted by jun-g at 日, 18 3月 2007 03:30 JST

DevCampの時、携帯電話のカメラで3枚だけ写真を撮った事を思い出した。しかし、Flickrのアカウント情報を壊れたデスクトップPCの中に置き去りにしたままなのでログインできない…という事でPythonista御用達らしいフォト蔵にアカウントを取ってアップしてみた。

posted by (C)jun-g

おっと、合宿らしい写真は3枚のうちの1枚だけやった…。

PyXPCOMを使ってみよう

posted by jun-g at 日, 18 3月 2007 03:02 JST

Lingraodag隊長voluntasさんと会話中にPyXPCOMの話題になり、最近のMozillaのソースには普通にPyXPCOMのソースが含まれている事を教えてもらったので早速ビルド/インストールしてみる事にした。…とはいえ自前でソース取ってきて一からビルドできる程の知識は持ってないので、ここを参考にしながらportsを改造する事に。FreeBSD万歳!!

って事で以下はwww/mozilla/Makefile.commonのパッチ。

--- Makefile.common.orig	Sat Mar 17 01:35:11 2007
+++ Makefile.common	Sat Mar 17 03:34:09 2007
@@ -119,7 +119,7 @@
 LDFLAGS+=		-L${X11BASE}/lib -Wl,-rpath,${PREFIX}/lib/${MOZ_RPATH}
 LIBS+=			${PTHREAD_LIBS} -L${LOCALBASE}/lib -liconv
 
-_USE_GECKO_OPTIONS_ALL=	java debug logging optimized_cflags
+_USE_GECKO_OPTIONS_ALL=	java python debug logging optimized_cflags
 
 .if !defined(USE_GECKO_OPTIONS)
 USE_GECKO_OPTIONS=	debug logging optimized_cflags
@@ -127,6 +127,7 @@
 
 debug_OPTION=	"Build a debugging image" off
 java_OPTION=	"Enable JAVA xpcom" off
+python_OPTION=  "Enable PyXPCOM" off
 logging_OPTION=	"Enable additional log messages" off
 optimized_cflags_OPTION=	"Enable some additional optimizations" off
 
@@ -214,6 +215,11 @@
 JAVA_OS+=	native
 CONFIGURE_ENV+=	JAVA_HOME="${JAVA_HOME}"
 MOZ_OPTIONS+=	--enable-javaxpcom
+.endif
+
+.if defined(WITH_PYTHON)
+USE_PYTHON=	yes
+MOZ_EXTENSIONS+=python/xpcom
 .endif
 
 .if defined(WITH_LOGGING)

PyXPCOMを有効にする対象はXULRunnerにしよう、という事で、次はwww/xulrunner/Makefileのパッチ。

--- Makefile.orig	Sat Mar 17 01:38:02 2007
+++ Makefile	Sat Mar 17 03:35:18 2007
@@ -29,7 +29,7 @@
 		--enable-system-cairo
 MOZ_EXTENSIONS=	default,cookie,permissions
 OPTIONS=	# Empty, used for generic gecko OPTIONS
-USE_GECKO_OPTIONS=	java debug logging optimized_cflags
+USE_GECKO_OPTIONS=	java python debug logging optimized_cflags
 
 .include 
 .include "${PORTSDIR}/www/mozilla/Makefile.common"

この2つのパッチを適用したら、www/xulrunnerのオプションに「Python」ってのが出るようになる。

でもって早速make installして試してみた。

/home/jun-g% python
Python 2.4.4 (#2, Feb 24 2007, 05:43:34) 
[GCC 3.4.6 [FreeBSD] 20060305] on freebsd6
Type "help", "copyright", "credits" or "license" for more information.
>>> import xpcom
>>>

出来た!!という訳で今回はここまで。次はここ見ながらもうちょっと試してみよう。

<<  Page 113 of 127  >>