/calibreweb_ynh

Calibre-web package for YunoHost

Primary LanguageShellGNU General Public License v3.0GPL-3.0

Calibre-web for YunoHost

Integration level Working status Maintenance status

Install Calibre-web with YunoHost

Lire ce readme en français.

This package allows you to install Calibre-web quickly and simply on a YunoHost server. If you don't have YunoHost, please consult the guide to learn how to install it.

Overview

Browsing, reading and downloading eBooks using a Calibre database

Shipped version: 0.6.19

Screenshots

Screenshot of Calibre-web

Disclaimers / important information

Post install

Users having the calibreweb.main authorization group can be automatically sync from within the app, by using the "Import LDAP user" function. Deletion of a Yunohost User will delete the according calibreweb-user.

Library management

  • Library will be placed in /home/yunohost.multimedia/share/eBook folder except if both :
    • calibreweb is set as a private application
    • calibreweb library is set as a public library

In this case the library will be set in /home/yunohost.multimedia/[admin]/eBook folder. Library folder can always be changed manually in the application settings by the administrator.

  • By default, Yunohost backup process will backup Calibreweb library. You may deactivate backup of the library with
yunohost app setting calibreweb do_not_backup_data -v 1
  • By default, removing the app will never delete the library.

  • Authorization access to library to be done manually after install if Calibre library was already existing (except in yunohost.multimedia directory), for example :

chown -R calibreweb: path/to/library
or
chmod o+rw path/to/library

Kobo Sync

Calibre-web comes with a synching feature with a kobo device. You can activate this feature from inside the app in the administration menu. You need to set port 443 as the external server port. A dedicated permission "Kobo sync" is created by default by the app so that you don't need to expose the whole app for synching.

Kepubify is also set up as the default kepub converter during installation : This means that your whole library will be converted to kepub when creating the sync token for the first time (this will not affect the existing epubs). This can take a long time : For reference, I have around 10K ebooks on my calibre library and the conversion lasted around 3-4hours on a raspberry Pi 4.

OPDS

For OPDS to work, most OPDS-readers will require the app must be set in public mode. Also, you may have to activate the "anonym browsing" for some reader to access book covers or download books (source).

Versionning

Version number in Yunohost is different from the upstream Calibre-web app : version 0.X.Y becomes 0.9.X.Y in Yunohost. This is due to the fact that Calibre-web was not versionned when first packages were built.

Known Limitations

  • Do not use a Nextcloud folder. It's all right if the folder is an external storage in Nextcloud but not if it's an internal one : Changing the data in the library will cause trouble with the sync
  • "Magic link feature is not yet available
  • Change to library made outside Calibreweb are not automatically updated in Calibreweb. It is required to disconnect and reconnect to see the changes : Do not open a database both in Calibre & Calibreweb!
  • Kobo Sync doesn’t work when Calibreweb is installed on a subdomain. This issue is caused by nginx. However, it works great when installed on a path e.g. https://domain.tld/calibreweb

Todo

  • Update mail settings with yunohost settings
  • enable magic link
  • Add cronjob to reload database (for nextcloud integration)
  • Add config-panel option to trigger do_not_backup_data
  • Add config-panel to manage max upload size
  • Add action to restart the server
  • Add action to synchronize users
  • Add action to deactivate LDAP et retrieve admin password
  • Use internal updater to update version?

Documentation and resources

Developer info

Please send your pull request to the testing branch.

To try the testing branch, please proceed like that.

sudo yunohost app install https://github.com/YunoHost-Apps/calibreweb_ynh/tree/testing --debug
or
sudo yunohost app upgrade calibreweb -u https://github.com/YunoHost-Apps/calibreweb_ynh/tree/testing --debug

More info regarding app packaging: https://yunohost.org/packaging_apps