crocodilestick / Calibre-Web-Automated

Calibre-Web but automated and with Calibre features! Fully automate and simplify your eBook set up!
https://github.com/crocodilestick/Calibre-Web-Automator
GNU General Public License v3.0
507 stars 9 forks source link

[bug] Ingested books are not in the library #88

Open friki67 opened 1 day ago

friki67 commented 1 day ago

Describe the bug Ingested books are not loaded in the library, but they are deleted from ingest directory.

To Reproduce Steps to reproduce the behavior:

  1. Create a new library using Calibre Desktop, with or without books
  2. Set up Calibre Web Automated, all books present in the web ui
  3. Put a new book in the ingest directory
  4. Book is deleted but not present in the library (not imported) Log in ui-admin-logs shows nothing for this.

Expected behavior Book apperars in the library

Configuration(please complete the following information):

Calibre web worked fine. Incus user id is mapped 1000:1000 and PUID and PGID are set to 1000 too in docker. This setting is fine for Calibre Web.

EDIT: upload books using the upload button worked fine

How to see logs of what is happening when ingesting books?

friki67 commented 1 day ago

Is is a permissions thing. No matter if I set PGID to 1000 or 100, when launching docker instance I'm getting:

[cwa-set-perms] Recursively setting ownership of everything in /config, /calibre-library, /app/calibre-web-automated to abc:abc...
[cwa-set-perms] Successfully set permissions for '/config'!
chown: changing ownership of '/calibre-library/MyAuthor/MyBook (1)/MyBook - MyAuthor.epub': Operation not permitted
chown: changing ownership of '/calibre-library/MyAuthor/MyBook (1)cover.jpg': Operation not permitted
chown: changing ownership of '/calibre-library/MyAuthor/MyBook (1)': Operation not permitted
chown: changing ownership of '/calibre-library/MyAuthor': Operation not permitted
chown: changing ownership of '/calibre-library/.calnotes/retired': Operation not permitted
chown: changing ownership of '/calibre-library/.calnotes/notes.db': Operation not permitted
chown: changing ownership of '/calibre-library/.calnotes/resources': Operation not permitted
chown: changing ownership of '/calibre-library/.calnotes/backup': Operation not permitted
chown: changing ownership of '/calibre-library/.calnotes': Operation not permitted
chown: changing ownership of '/calibre-library/metadata.db': Operation not permitted
chown: changing ownership of '/calibre-library': Operation not permitted
[cwa-set-perms] Service could not successfully set permissions for '/calibre-library' (see errors above).

Note that the book was uploaded using CWA, but something happens with the permissions. Maybe if user abc was 1000:1000 and not 1000:100 ... The problem is in the translation of id's outside my incus container (as said I had defined 1000 to 1000 in user and group) ....

It should work. Calibre Web "classic" works, but CWA fails.

EDIT: I've created the CWA instance directly in incus (that now can manage OCI containers), mapped user and group and same thing happened. So the ingest script is not able to add the books, but it is able to delete them from the ingest folder. And the ui says it has ingested the books, but nothing is showed in logs.

jmarmstrong1207 commented 22 hours ago

try doing chown -R on your calibre library manually. Does this fix it?

friki67 commented 21 hours ago

try doing chown -R on your calibre library manually. Does this fix it?

No, I've tried chown to one and the other, chmod a+w, and nothing seems to help.

I've been trying another thing and now I have got ingest working. But ingested books cannot be deleted, and uploaded books can.

The ingest part is working as root. See my calibre-library directory after upload one book and ingest another. The ingested one is property of root:root, so cannot be deleted using the "Book list" mode from CWA.

drwxr-xr-x.  3 abc  users   4096 Sep 18 19:15 'Adam Nevill'
drwxr-xr-x.  3 root root    4096 Sep 18 19:08 'Adolf Fort'
-rw-rw-rw-.  1 abc  users 397312 Sep 18 19:15  metadata.db

EDIT: After adding some books ingest stopped working again.