gollumでwikiを作ってみる(Mac OS X)
ある程度まとまった情報になると、ブログ記事にしても良いのですが、そうでない場合は、メモ(Evernote, Dash, etr)として保存しています。 ですが、かなり大雑把に記録しているため、構造化されておらず不便...。そこで、個人用wikiにまとめてみることにしました。
一口にwikiといっても、SaasだったりOSSだったり、いろいろあります。今回はgit上で保存・管理するgollumを使ってみました。
決め手になったのは、シンプルなUIだったり、Markdown記法が使えたり、機能の拡張もしやすそうなのところです。とりあえずデフォルトのまま、ローカルwiki + githubにバックアップな体制で運用してみます。
Home
編集画面
install
gollumをinstallしようとしたら、icu4cでerrorが出たので,先にinstallしました。
icu4cはC++のUnicode文字処理のモジュールみたいです。
github-markdownはoptionalですが、github flavoreなmarkdownが利用できます。
$ brew install icu4c $ gem install gollum $ gem install github-markdown
wikiの作成
手順としては次のような流れです。
$ git init wiki $ cd wiki $ gollum
http://localhost: 4567 をブラウザで開くと表示されます。
pushの自動化
Githubにリポジトリを作成
詳細は省きますが、Githubにリポジトリを作成し、originに設定。
push用のシェルスクリプトを作成
gollum用のリポジトリの直下に下記の内容で、sync.sh
を作成。
忘れずに実行権限を振り当てます。$ chmod a+x sync.sh
#!/bin/bash DIR="$( cd -P "$( dirname "${BASH_SOURCE[0]}" )" && pwd )" (cd $DIR && git pull && git push)
Launchd用のplistを作成
~/Library/LaunchAgents/
以下にcom.github.gollum-startup.plist
を作成して、以下の内容に先程作成したsync.sh
のパスを記入して保存します。(Launchdはcron的なやつ)
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <plist version="1.0"> <dict> <key>Label</key> <string>com.github.gollum-sync</string> <key>RunAtLoad</key> <true/> <key>ProgramArguments</key> <array> <string>ここにsync.shのパスを記入。(e.g. /Users/hoge/fuga/sync.sh)</string> </array> <key>StartInterval</key> <integer>60</integer> </dict> </plist>
StartIntervalで更新間隔を設定。とりあえず60秒ごとにpush。
おわりに
あとはお好みで、起動の自動化だったり、書き込み権限の付与だったり、デザイン変更だったりを自由に。