replus

RE;COIL (リコイル)メンバーのarc@dmzによる日記

さくらのサーバでTrac0.10.5

このブログをはじめ、digitalmuseum.jpのサイト全体はSAKURA Internetでレンタルしたサーバで運営している。さくらのサーバは、sshでリモートログインして、ユーザ領域にいろいろなアプリケーションを追加インストールできることで有名だ。(スタンダードプラン以上が対象。)

つい先日の引っ越しに際して自宅サーバの環境を全部消したので、それまで運用していたTracをさくらのサーバに移してみることにした。

Tracの0.10.xから0.11.xへのバージョンアップでテンプレートエンジンが差し替わっているので、それまでの設定を簡単に移行したくて0.10.xをインストールした。いろいろあって、一日がかりの作業になってしまった。ここに書くのは「いろいろ」を省いた、(おそらく)実働までの最短ルート。

主に参考にしたWebサイト

1. 環境整備

さくらにsshでログインして、まず必要なディレクトリを作る。~/localをベースに作業を進めることにする。

mkdir -p $HOME/local/src
cd $HOME/local/src
mkdir -p $HOME/local/lib/python2.4/site-packages
ln -s ~/local/lib/python2.4 ~/local/lib/python

~/local/src はインストールに使うファイル置き場。~/local/lib/python はPythonのパッケージ置き場で、Trac本体と、Tracが使うモジュールを置く。

続いて、環境変数を整備する。次の内容をコマンドで打ってもいいが、途中で接続が切れて打ち直すはめにならないよう、.cshrc(デフォルトシェル用)か.profile(bash用)に書いておくのがお薦め。.profileなら、setenvでなくexport 環境変数=内容というふうになる。

setenv PYTHONPATH $HOME/local/lib/python:$HOME/local/lib/python/site-packages:$HOME/local/lib/svn-python
setenv PATH $HOME/local/bin:$PATH
setenv LOCALBASE $HOME/local
setenv LD_LIBRARY_PATH $HOME/local/lib

PYTHONPATHは(さくらに初めから入っている)Pythonのライブラリを探すパスで、svn-pythonはまだないが、後で作るディレクトリなのでどうせならここで足してしまおう。

PATHは~/local/binにも通るようにする。LOCALBASEは後々pysqliteのインストールで必要な模様。

LD_LIBRARY_PATHはリンクすべきライブラリを探すパスで、優先的に~/local/libを探すようにする。これがないと依存関係のあるコンパイルでコケたり、プログラムの実行ができないこともある。

2. インストール

Subversion

まず、Subversionをインストールするためにapr、apr-utilをインストールする。さらに、SubversionのインストールでPython-bindingオプションを付けるためにSWIGをインストールする。

cd $HOME/local/src
wget 最新のaprアーカイブ(apr-1.3.3.tar.gz)
tar -zxvf apr-1.3.3.tar.gz
cd apr-1.3.3
./configure --prefix=$HOME/local
make
make install
cd ../

wget 最新のapr-utilアーカイブ(apr-util-1.3.4.tar.gz)
tar -zxvf apr-util-1.3.4.tar.gz
cd apr-util-1.3.4
./configure --prefix=$HOME/local --with-apr=$HOME/local
make
make instal
cd ../

wget 最新のSWIGアーカイブ(swig-1.3.36.tar.gz)
tar -zxvf swig-1.3.36.tar.gz
cd swig-1.3.36
./configure --prefix=$HOME/local
make
make install
cd ../

Subversionをインストールする。

wget 最新のSubversionソースアーカイブ(subversion-1.5.4.tar.gz)
tar -zxvf subversion-1.5.4.tar.gz
cd subversion-1.5.4
./configure --prefix=$HOME/local --with-neon=$HOME/local --with-apr=$HOME/local --with-apr-util=$HOME/local --with-swig=$HOME/local/bin/swig --without-berkeley-db --disable-static
make
make install
make swig-py
make install-swig-py
cd ../

HirobeのHack倉庫に記述のあった--enable-swig-bindings=pythonは使えなかった。たぶん今の版では要らないのだろう。同解説ページではlnでシンボリックリンクを張ってsvnその他をPythonのパスに通していたが、当記事ではY's Diaryに従ってPython自体のライブラリパスを~/local/lib/pythonに通しているので、その作業も不要。

sqlite3

最近の版では、./configureに--enable-load-extensionをつけないと、次にインストールするpysqlite2が動かない。とあるメーリングリストの投稿から。

wget 最新のsqliteソースアーカイブ(sqlite-3.6.4.tar.gz)
tar -zxvf sqlite-3.6.4.tar.gz
cd sqlite-3.6.4
./configure --prefix=$HOME/local --enable-load-extension --disable-dynamic
make
make install
cd ../

pysqlite2

さくらのPythonは2.4.xなので、2.5以降で標準サポートされたsqliteを扱うためにはライブラリを追加インストールしないといけない。

cd $HOME/local/src
wget 最新のpysqlite2ソースアーカイブ(sqlite-2.5.0a.tar.gz)
tar -zxvf pysqlite-2.5.0a.tar.gz
cd pysqlite-2.5.0
python setup.py build
python setup.py install --prefix=$HOME/local
cd ../

ClearSilver

Tracで使われているテンプレートエンジン。

wget 最新のClearSilverアーカイブ(clearsilver-0.10.5.tar.gz)
tar -zxvf clearsilver-0.10.5.tar.gz
cd clearsilver-0.10.5
./configure --prefix=$HOME/local --oldincludedir=$HOME/local/include --disable-ruby --disable-java --disable-perl --disable-csharp --disable-python --disable-static
gmake
gmake install
cd python
python setup.py build
python setup.py install --prefix=$HOME/local
cd ../../

--disable-pythonしてあとから改めてPythonビルドしているのは、Makefileの中で--prefix指定が保持されないからかな?とりあえずHirobeのHack倉庫に従った。

Docutils

Tracで使われているWikiエンジン?

wget 最新のDocutilsアーカイブ(docutils-0,5.tgz)
tar -zxvf docutils-0.5.tgz
cd docutils-0.5
python setup.py install --home=$HOME/local
cd ../

Trac

お待ちかね、Tracのインストール。

wget 最新の日本語版アーカイブ(trac-0.10.5-ja-1.zip)
unzip trac-0.10.5-ja-1.zip
cd trac-0.10.5-ja-1
python ./setup.py install --prefix=$HOME/local
cp $HOME/local/share/trac/cgi-bin/trac.cgi $HOME/www/trac_.cgi

ここまで周到に準備してきているので、インストール自体はあっけないほど単純。

ただ、実働させるまでにはまだ壁がある。以降、近日中に続きを書く予定。

全共闘

先週末、大学祭である五月祭の会場で全共闘の騒ぎから40周年を記念していくつかイベントが開かれた。NHKの取材が入り、イベントも盛り上がったようで、思うところがあったので書いておく。

なぜ、いま全共闘か?

40年経って、全共闘世代が定年を迎え始める時期だから、という理由が一番大きいのではないか。逆に捉えれば、全共闘のさまざまな面を論じられるようになるまでこれだけの年数がかかったのだ。あれは「反」社会的な運動だったから、とまれ社会に組み込まれた人たちはこれまで語る口を持てなかったのだろう。

別に、全共闘から何かを学び取ろう、みたいな姿勢はいまさら要らない。いま全共闘を語る意味は、当時のことに蓋をしていた人たちが自分の気持ちに整理をつけること、あるいはそういう人たちの子が、親に見てきた陰の部分を詳らかにすることにあるだろう。

全共闘世代の人たちは、権威とか歴史とか、積み重なったものを突き崩すために動いたのではなかったか。それらに何かを「学ぶ」とすれば、壊すよりも直したり創るほうが偉大だ、という反面教師的な意味合いしかないような気がする。なぜなら、全共闘世代は自分たちが権威となることを求めてはいなかったはずだし、すでにある枠組みの問題を突いて壊すアナーキストたちは、先例などを気にせず活動する姿勢こそ本分なのだから。

いま全共闘のような騒ぎが起きないのはなぜか?

三つに分けて考える。

情報インフラが違うから

昔はネットも携帯もなかった。情報の伝達はテレビなどのマスコミと、口コミで行われていた。マスコミの支配力が強い一方で、近しい人たちの怒りなどの感情もとても濃い密度で伝わってくる時代だったはずだ。

もともと小さな怒りの声だったものが局所的な竜巻となり、その運動が口コミの速度では統率されない規模になった頃合いで、ちょうどテレビなどマスコミによる報道が始まって嵐が起きたものと想像する。

なお、東大全共闘が失敗に終わるのははじめから分かっていた、と見る向きもある。マスコミが東大全共闘という運動を報道したのは多分にそれが東京大学の学生たちによる反抗だったからであり、その意味で運動は東京大学の権威に依拠していたと言える。つまり壊そうとしている対象に自ら頼っており、明らかに自己矛盾していたのだ。

社会が違うから

今は昔より社会が成熟している。何だかんだいって昔よりも国民全体の平均的な生活水準はあがっているし、不満が出てもそれはあくまで個人的なもの、あるいは社会の別の場所を少し覗けばあちこちで見られる程度の、粒度の小さな不満が多い。

情報インフラとからめて考えれば、みんなも我慢しているんだ、とか、みんなもそれなりに苦しんでるんだ、というのがすぐに分かってしまう社会だから、自分も我慢するか、仕方ない、というふうになりがちだ。

個人が違うから

昔の学生は粗野で素朴、というのはよく言われるところだ。インテリゲンチャでさえ、みんな定番となる教養の本を共有しており、ある意味で画一的な読書生活を送っていた。だから思想の傾向が似やすくて、大人数が団体としてまとまるために十分な共通基盤があった。

しかし今はどうだろう。教養の〜冊、みたいな、ある層なら誰しも通用する常識は存在しないし、アイドルですらみんな好みはばらばらだ。

これは、戦後ずっと続いてきた個人主義の流れのままに今まできていることを示しており、例えば軍国主義のような、全体主義的な(ともすれば危ない)流れに国全体が行くことがないということを意味している。まぁ、欧米から輸入された個人主義がこのまま進んでもいいものか、というのはまた別の話だ。


最新の記事を全23件中1件目から計2件表示