CentOS 5.3 に MindTouch (dekiwiki) をインストール
Songbird の Developer Center で見たときから、素敵なんじゃね?と思って使いたいなーと思ってたけどなかなか面倒くさそうでやってなかったけどやってみたら本当に面倒だったからメモのこす。
基本的にインストールガイドに書いてあるんだけど、なんかハマリどころが多かったなあ。
というわけで結果的に動いた。
感想しか興味がない人はレッツスクロール。w
- MindTouch delivers a proactive customer support experience.
- Nothing found for Resources Official_MindTouch_Installation_Guides CentOS_5_MindTouch_Enterprise_Package_Installation (公式のインストールガイド)
前提条件
OSなど。
sotarok% uname -a Linux *.nequal.jp 2.6.18-92.1.22.el5 #1 SMP Tue Dec 16 12:03:43 EST 2008 i686 i686 i386 GNU/Linux sotarok% cat /etc/redhat-release CentOS release 5.3 (Final)
- MySQL と Apache は動いてる
- epelが入っている -> ref: http://linux4pro.seesaa.net/article/43879296.html (かんたんだよ、 %sudo rpm -ivh http://ftp.iij.ad.jp/pub/linux/fedora/epel/5/i386/epel-release-5-3.noarch.rpm だけだよ)
- rpmforgeは入ってるけど、 enable=0 。そして今回は使わなかった。
依存パッケージ
書いてある通りにやる
% sudo yum -y install wv links pdftohtml tidy これはすんなり入る。 % wget http://www.princexml.com/download/prince-6.0r8-linux.tar.gz % tar xfzv prince-6.0r8-linux.tar.gz % cd prince-6.0r8-linux % sudo ./install.sh
html2ps が入らない。
html2ps
しかもエラーが意味不明で、
---> Package ImageMagick-perl.i386 0:6.2.8.0-4.el5_1.1 set to be updatedTraceback (most recent call last): File "/usr/bin/yum", line 29, in ? yummain.user_main(sys.argv[1:], exit_code=True) File "/usr/share/yum-cli/yummain.py", line 229, in user_main errcode = main(args) File "/usr/share/yum-cli/yummain.py", line 145, in main (result, resultmsgs) = base.buildTransaction() File "/usr/lib/python2.4/site-packages/yum/__init__.py", line 647, in buildTransaction (rescode, restring) = self.resolveDeps() File "/usr/lib/python2.4/site-packages/yum/depsolve.py", line 696, in resolveDeps CheckDeps, checkinstalls, checkremoves, missing = self._resolveRequires(errors) File "/usr/lib/python2.4/site-packages/yum/depsolve.py", line 779, in _resolveRequires thisneeds = self._checkInstall(txmbr) File "/usr/lib/python2.4/site-packages/yum/depsolve.py", line 851, in _checkInstall provs = self.tsInfo.getProvides(*req) File "/usr/lib/python2.4/site-packages/yum/transactioninfo.py", line 432, in getProvides result.update(self.getNewProvides(name, flag, version)) File "/usr/lib/python2.4/site-packages/yum/transactioninfo.py", line 414, in getNewProvides for pkg, hits in self.pkgSack.getProvides(name, flag, version).iteritems(): File "/usr/lib/python2.4/site-packages/yum/packageSack.py", line 300, in getProvides return self._computeAggregateDictResult("getProvides", name, flags, version) File "/usr/lib/python2.4/site-packages/yum/packageSack.py", line 470, in _computeAggregateDictResult sackResult = apply(method, args) File "/usr/lib/python2.4/site-packages/yum/sqlitesack.py", line 861, in getProvides return self._search("provides", name, flags, version) File "/usr/lib/python2.4/site-packages/yum/sqlitesack.py", line 43, in newFunc return func(*args, **kwargs) File "/usr/lib/python2.4/site-packages/yum/sqlitesack.py", line 837, in _search for pkg in self.searchFiles(name, strict=True): File "/usr/lib/python2.4/site-packages/yum/sqlitesack.py", line 43, in newFunc return func(*args, **kwargs) File "/usr/lib/python2.4/site-packages/yum/sqlitesack.py", line 568, in searchFiles self._sql_pkgKey2po(rep, cur, pkgs) File "/usr/lib/python2.4/site-packages/yum/sqlitesack.py", line 470, in _sql_pkgKey2po pkg = self._packageByKey(repo, ob['pkgKey']) File "/usr/lib/python2.4/site-packages/yum/sqlitesack.py", line 413, in _packageByKey po = self.pc(repo, cur.fetchone()) File "/usr/lib/python2.4/site-packages/yum/sqlitesack.py", line 68, in __init__ self._read_db_obj(db_obj) File "/usr/lib/python2.4/site-packages/yum/sqlitesack.py", line 94, in _read_db_obj setattr(self, item, _share_data(db_obj[item])) TypeError: unsubscriptable object
などという意味不明エラーでyumが落ちる。
で、よくわからないけど、まあ、perl系はrpmforgeとかいじりまくってると色々おかしくなる。
で、まあなんか以下でうまくいったという結果的に意味不明だったが、まあOK。
% sudo yum clean all % sudo yum install -y html2ps
html2ps は epel から、ImageMagick-perl は base から入った。
mono-complete
インストールガイドにある通り、yumリポジトリを追加して、(/etc/yum.repos.d/mindtouch.conf などに記述)
[home_mindtouch_mono] name=mindtouch mono repo (RHEL_5) type=rpm-md baseurl=http://download.opensuse.org/repositories/home:/mindtouch/RHEL_5 gpgcheck=1 gpgkey=http://download.opensuse.org/repositories/home:/mindtouch/RHEL_5/repodata/repomd.xml.key enabled=1
で
% sudo yum install mono-complete ...(snip) mono-core-1.9.1-2.1.i386 from home_mindtouch_mono has depsolving problems --> Missing Dependency: libgdiplus0 is needed by package mono-core-1.9.1-2.1.i386 (home_mindtouch_mono) Error: Missing Dependency: libgdiplus0 is needed by package mono-core-1.9.1-2.1.i386 (home_mindtouch_mono)
色々調べた結果、rpmから libgdiplus0 を拾ってきておk。
% wget ftp://ftp.pbone.net/mirror/ftp5.gwdg.de/pub/opensuse/repositories/home:/directhex/RHEL_5/i386/libgdiplus0-2.2-2.1.i386.rpm % sudo rpm -ivh libgdiplus0-2.2-2.1.i386.rpm 警告: libgdiplus0-2.2-2.1.i386.rpm: ヘッダ V3 DSA signature: NOKEY, key ID f145f20a 準備中... ########################################### [100%] 1:libgdiplus0 ########################################### [100%]
rpm のインストールのときに、libexif.so や libungif.so の依存エラーがでるかもしれんけど、それは適宜 yum で入れる。もしかしたらlzmaも必要になるかもしれないけど、これは色々はまってるときに試しに入れたからそれが解決のためになったのかどうかはよくわからない。まあいいか。
% sudo yum install -y libexif % sudo yum install -y libungif % sudo yum --enablerepo=dag install lzma (もしかしたら必要ならね)
で、そしたら
% sudo yum install mono-complete
はいった。
本体
インストールガイドには deki-enterprise って書いてあるけど、これは罠だから気をつけるんだ!無料版は、 dekiwiki だよ。
また /etc/yum.repos.d/mindtouch.repo に追記。
[home_mindtouch] name=mindtouch's Home Project (CentOS_5) type=rpm-md baseurl=http://repo.mindtouch.com/CentOS_5/ gpgcheck=1 gpgkey=http://repo.mindtouch.com/CentOS_5/repodata/repomd.xml.key enabled=1
% sudo yum install dekiwiki
% sudo su dekiwiki sh-3.2$ mozroots --import --sync sh-3.2$ exit
したら、 /var/www/dekiwiki にファイルが生成されてたりなどする。
で、
あとは、
% sudo mv /etc/httpd/conf.d/deki-apache.conf.disabled /etc/httpd/conf.d/deki-apache.conf
で、こいつの内容を適宜変更。
自分の場合は、ServerName と DocumentRoot とそれにともなってディレクティブだけ変えた。
で、DocumentRoot は /var/www/dekiwiki にシンボリックリンクはってあげればOK。そして Apache リロード。(% sudo service httpd reload)
あとはアクセスすると、インストールしろっていわれる。
DBもユーザも勝手に作ってくれるからMySQLとかなにもしなくてOK。
(スクショはまちがって deki-enterprise 入れたときのものだから若干違う点があるかも?)
インストール後、「おまえまだインストールおわってねえよ」って言われるので、表示されるスクリプトをコピペする。
フォルダ内容が表示されてるのは自動lsなだけなので気にしないでください。
root# cd /var/www/dekiwiki/config LocalSettings.php index.php installtype.package.php mindtouch.deki.startup.xml.in mindtouch.host.conf mindtouch.host.sh.in skin.form.php enterprise.php init.php mindtouch.deki.startup.xml mindtouch.host.bat.in mindtouch.host.conf.in skin.footer.php skin.header.php root# mkdir /etc/dekiwiki mkdir: ディレクトリ `/etc/dekiwiki' を作成できません: ファイルが存在します root# cp -p mindtouch.host.conf /etc/dekiwiki root# cp -p mindtouch.deki.startup.xml /etc/dekiwiki root# cp -p LocalSettings.php /var/www/dekiwiki/ root# /etc/init.d/dekiwiki start Starting MindTouch Deki API: mindtouch.host.exe. root# rm mindtouch.host.confki.startup.xml root# rm LocalSettings.php
で、表示されればめでたしめでたし。
感想
で、少しつかってみたところ、ひっじょーーーーに使いやすい。これは便利。
- 軽快な動作
- 直感的な操作感
- 日本語にも対応してる
- よくできたWYSIWIG (うぃじうぃぐは基本キライなんだけど、これならいいな。Operaではちなみにうまく動かないw)
- わかりやすい管理画面・ユーザ管理・簡単な認証管理
- 綺麗なデフォルトスキンと豊富なスキン
- その他豊富なプラグイン
- すばらしいAjaxの使いどころ。
- 画像アップロードとか、フラッシュアップローダだからまとめてアップロード
- いろんなウェブサイトと連携(使ってみてないからなんともいえないけど)
- 画像とか勝手にLightbox
- Google Analytics もある
ああ、正直、すごいな、と思います。
この完成度はすごい。多少インストール手こずっても、入れる価値アリです。