Shaarliって?
マイクロかつシンプルなブックマークサービス。APIが一通り揃っているのでサードパーティ製の拡張機能やアプリからバンバン突っ込めてお便利。GitHub
インストール
Guideに沿って。
1 | $ mkdir -p /path/to/shaarli && cd /path/to/shaarli/ |
と書いてある。まず普通にクローン。
This is どうでもいい話
この前のOSC大阪でMastodonブースの番をしていたら外国の方が来て「MastodonはInstallすれば誰でも使えますか?」みたいなことを聞かれたので「既存のサーバーに入ってもいいし、GitHubからまずクローンして云々」って返したら「Oh, clone!!C-L-O-N-E!!」って感じだった。甘美な響きなのだろうか。
composer
とあるしPHPだろうが、入れようと思ったマシンにはPHP 7.2が入ってたものの、composerは入ってなかった。これ見て適当に突っ込んだ。
composerすると、slim/slim 3.12.3 requires ext-simplexml * -> the requested PHP extension simplexml is missing from your system.
って出てきた。あぁ、よくあるxmlがないやつねぇと思って適当にphp7.2-xml
をaptしてOK。
もう一度やってみると次はFailed to download phpunit/php-text-template from dist: The zip extension and unzip command are both missing, skipping.
って出てきた。zip
やunzip
くらい最初から入ってるもんかと思ってた。これもzip unzip
をaptしてOK。
make
かー。まぁええわと思ってやったらyarn
が無ぇって言われた。腹立つ。このマシンnpm
しか入ってない。
npm i yarn
で世界平和を目指すか〜と思ったけど、これも嫌なので、もうnpm
だけでなんとかしようと思った。よくない。
npm i
する。package.json覗いたらscriptsにはbuild
とwatch
しかなかったのでnpm run build
。
あとの2つのmake
もやってみたけど通らなかった。でもまぁこれでヨシ!
Nginxの設定を書いて、ディレクトリ全体に実行権限を与えた。
そしたら最初にユーザー名とパス設定しろみたいなやつが出てきた。そして設定を書いて、ボタンを押したらいきなり!404。
/loginもindex.phpのargとしないといけないようだ。ということでまたドキュメントを見ると、いろいろ書いてあるが、そこにあったtry_filesを使うやつが上手く行かなかった。
いろいろ研究すると、location
ブロック内で、root
がshaarliを指しているという自分の状態だと
try_files $uri /index.php$is_args$args;
で上手く行った。
結局、こんな感じのconfになった。
1 | server { |
プラグイン
これで終わったが、ShaarliにはMastodonプラグインがあるらしい。
Community & Related softwareには、たしかにShaarli2Mastodonがある。
plugins
内でgit clone https://github.com/kalvn/shaarli2mastodon
すればいいらしい。
そしてShaarliにログインしてTools
内のPlugin administration
で、下のPlugin configurationを埋めた後チェックボックスをオンにすればOK。
以上。寝ながら書くとどんどん一文が短くなるのね…