2015年8月5日水曜日

Calibre OPDS PHP Server (COPS) の使い方 for qnap

今回はNAS上に電子書籍本棚を用意するお話です。

Calibreというフリーな電子書籍管理システムがあります。
対象はepubやpdfなどのフリーな電子書籍。
WindowsやLinux、Macで動作します。

これを使うとある程度一元的に電子書籍を管理できます。
KindleやSony Readerだと元々用意されている仕組みだけど、フリーな電子書籍を相手にしたそういった仕組みは基本的に誰もお金を払ってくれないので実現しにくい。

そのなかで使い物になる便利なシステムが上記のCalibreです。
しかし、このCalibreが管理するデーターベースが共有出来ないタイプのデーターベースであるため、複数台のPCから管理しようとすると、途端に困ったことになる。

管理は1台からやるとして諦めるにしても、家に居る間は読む本を取り出すのに、毎回管理用のPCに移動して……というのは流石にどうかと思う。そこで、本を取り出す所だけ、NASで動かそうというのが今回のメモの内容になる。

で、今回紹介するCOPSは、Calibreのデーターベースをリードオンリーで参照し、Open Publication Distribution System (OPDS) catalogueを提供する、Apache + PHP向けのシステム。軽いのでQNAPなどのNASの上で実行できる。

以下、インストール手順。
  1. 新しいファームウェアのQNAPを用意 (TS 4.1.4のTS-459 Pro+を利用)
  2. App Centerから最新のphpをインストール (php 5.5.26)
  3. COPSのインストール
    1. http://forum.qnap.com/viewtopic.php?f=320&t=101794 を開く
    2. Download COPS QPKGをクリックして、.qpkgファイルを落とす
    3. App CenterからInstall Manuallyをクリックして、今のqpkgファイルをインストール
  4. 試しにCOPSを開く (AppCenterのCOPSからOpenボタンで)
  5. エラーチェックが全部通るのを確認
    1. 僕はphp5-intlが必要と言われたけど放置
  6. 設定ファイルの編集
    1. $ cd /share/MD0_DATA/Web/COPS
    2. $ cp config_default.php.example config_local.php
    3. $ vi config_local.php
      (calibre_directoryを、NAS上の自分のcalibreディレクトリに設定。
      僕の場合は、/share/MD0_DATA/Multimedia/calibre/に)
  7. もう一度COPSを開く
    1. 上手く動いたのでphp5-intlは放置
COPSの詳細は、https://github.com/seblucas/cops/wiki 参照のこと。
calibreディレクトリやそこに置いておく本は、PC側のCalibreクライアントを使って、自分で用意すること。

そうすると、こんな風に参照できます。


更にCalibre Companionから気軽に読むためには、ポート指定だけで直接アクセスできないといけません。そこでVirtualHostを設定します。設定はQNAPのweb管理画面からできるので詳細はパス。


これで、Calibre Companionから家で気楽に本をダウンロードできる!と喜んだのだけど、Calibre Companionが対応しているのは、CalibreのContent Serverであって、汎用のOPDS Catalogueではなかったため使い物にならなくて愕然としている所(´・ω・`)

まあ、少なくともメールでpdfを送るタイプの使い方でKindleからは読めるようになるはずなので、今度はその設定をしてみますかね。

追記:
FBReader: Calibre connectionではそのまま使えました。
何が違うのか……と考えるも最近のhttpは複雑すぎてさっぱり分かりませんでした。

0 件のコメント:

コメントを投稿