6c614c06f6
Fix for the next error after update: Traceback (most recent call last): File "cps.py", line 34, in <module> from cps import create_app File "/home/rewerson/lib/web/cps/__init__.py", line 68, in <module> config = config_sql.load_configuration(ub.session) File "/home/rewerson/lib/web/cps/config_sql.py", line 348, in load_configuration update({"restricted_tags": conf.config_mature_content_tags}, synchronize_session=False) File "/home/rewerson/.local/lib/python2.7/site-packages/sqlalchemy/orm/query.py", line 3862, in update update_op.exec_() File "/home/rewerson/.local/lib/python2.7/site-packages/sqlalchemy/orm/persistence.py", line 1693, in exec_ self._do_exec() File "/home/rewerson/.local/lib/python2.7/site-packages/sqlalchemy/orm/persistence.py", line 1874, in _do_exec values = self._resolved_values File "/home/rewerson/.local/lib/python2.7/site-packages/sqlalchemy/orm/persistence.py", line 1840, in _resolved_values desc = _entity_descriptor(self.mapper, k) File "/home/rewerson/.local/lib/python2.7/site-packages/sqlalchemy/orm/base.py", line 402, in _entity_descriptor "Entity '%s' has no property '%s'" % (description, key) sqlalchemy.exc.InvalidRequestError: Entity '<class 'cps.ub.User'>' has no property 'restricted_tags' |
5 years ago | |
---|---|---|
.github/ISSUE_TEMPLATE | 5 years ago | |
cps | 5 years ago | |
test | 5 years ago | |
.editorconfig | 7 years ago | |
.eslintrc | 7 years ago | |
.gitattributes | 6 years ago | |
.gitignore | 5 years ago | |
LICENSE | 9 years ago | |
MANIFEST.in | 6 years ago | |
README.md | 5 years ago | |
babel.cfg | 8 years ago | |
cps.py | 5 years ago | |
messages.pot | 5 years ago | |
optional-requirements.txt | 5 years ago | |
requirements.txt | 5 years ago | |
setup.cfg | 6 years ago | |
setup.py | 6 years ago |
README.md
About
Calibre-Web is a web app providing a clean interface for browsing, reading and downloading eBooks using an existing Calibre database.
This software is a fork of library and licensed under the GPL v3 License.
Features
- Bootstrap 3 HTML5 interface
- full graphical setup
- User management with fine-grained per-user permissions
- Admin interface
- User Interface in czech, dutch, english, finnish, french, german, hungarian, italian, japanese, khmer, polish, russian, simplified chinese, spanish, swedish, ukrainian
- OPDS feed for eBook reader apps
- Filter and search by titles, authors, tags, series and language
- Create a custom book collection (shelves)
- Support for editing eBook metadata and deleting eBooks from Calibre library
- Support for converting eBooks through Calibre binaries
- Restrict eBook download to logged-in users
- Support for public user registration
- Send eBooks to Kindle devices with the click of a button
- Support for reading eBooks directly in the browser (.txt, .epub, .pdf, .cbr, .cbt, .cbz)
- Upload new books in many formats
- Support for Calibre custom columns
- Ability to hide content based on categories for certain users
- Self-update capability
- "Magic Link" login to make it easy to log on eReaders
Quick start
- Install dependencies by running
pip3 install --target vendor -r requirements.txt
(python3.x) orpip install --target vendor -r requirements.txt
(python2.7). - Execute the command:
python cps.py
(ornohup python cps.py
- recommended if you want to exit the terminal window) - Point your browser to
http://localhost:8083
orhttp://localhost:8083/opds
for the OPDS catalog - Set
Location of Calibre database
to the path of the folder where your Calibre library (metadata.db) lives, push "submit" button
Optionally a Google Drive can be used to host the calibre library -> Using Google Drive integration - Go to Login page
Default admin login:
Username: admin
Password: admin123
Issues with Ubuntu:
Please note that running the above install command can fail on some versions of Ubuntu, saying "can't combine user with prefix"
. This is a known bug and can be remedied by using the command pip install --system --target vendor -r requirements.txt
instead.
Requirements
python 3.x+, (Python 2.7+)
Optionally, to enable on-the-fly conversion from one ebook format to another when using the send-to-kindle feature, or during editing of ebooks metadata:
Download and install the Calibre desktop program for your platform and enter the folder including program name (normally /opt/calibre/ebook-convert, or C:\Program Files\calibre\ebook-convert.exe) in the field "calibre's converter tool" on the setup page.
*** DEPRECATED *** Support will be removed in future releases
Download Amazon's KindleGen tool for your platform and place the binary named kindlegen
in the vendor
folder.
Docker Images
Pre-built Docker images are available in these Docker Hub repositories:
Technosoft2000 - x64
-
Docker Hub - https://hub.docker.com/r/technosoft2000/calibre-web/
-
Github - https://github.com/Technosoft2000/docker-calibre-web
Includes the Calibre
ebook-convert
binary.- The "path to convertertool" should be set to
/opt/calibre/ebook-convert
- The "path to convertertool" should be set to
LinuxServer - x64, armhf, aarch64
-
Docker Hub - https://hub.docker.com/r/linuxserver/calibre-web/
-
Github - (Optional Calibre layer) - https://github.com/linuxserver/docker-calibre-web/tree/calibre
This image has the option to pull in an extra docker manifest layer to include the Calibre
ebook-convert
binary. Just include the environmental variableDOCKER_MODS=linuxserver/calibre-web:calibre
in your docker run/docker compose file. (x64 only)If you do not need this functionality then this can be omitted, keeping the image as lightweight as possible.
Both the Calibre-Web and Calibre-Mod images are rebuilt automatically on new releases of Calibre-Web and Calibre respectively, and on updates to any included base image packages on a weekly basis if required.
- The "path to convertertool" should be set to
/usr/bin/ebook-convert
- The "path to unrar" should be set to
/usr/bin/unrar
- The "path to convertertool" should be set to
Wiki
For further information, How To's and FAQ please check the Wiki