Register Guidelines E-Books Today's Posts Search

Go Back   MobileRead Forums > E-Book Software > Calibre Companion

Notices

Reply
 
Thread Tools Search this Thread
Old 11-04-2015, 10:21 AM   #1
altruizine
Senior Altruist
altruizine ought to be getting tired of karma fortunes by now.altruizine ought to be getting tired of karma fortunes by now.altruizine ought to be getting tired of karma fortunes by now.altruizine ought to be getting tired of karma fortunes by now.altruizine ought to be getting tired of karma fortunes by now.altruizine ought to be getting tired of karma fortunes by now.altruizine ought to be getting tired of karma fortunes by now.altruizine ought to be getting tired of karma fortunes by now.altruizine ought to be getting tired of karma fortunes by now.altruizine ought to be getting tired of karma fortunes by now.altruizine ought to be getting tired of karma fortunes by now.
 
Posts: 82
Karma: 600554
Join Date: Jun 2012
Device: Onyx Boox C67ML, Onyx Boox Note Pro
Browsing a Calibre library on the SD card

Is it possible to directly access a Calibre library residing on the mobile device that has been synchronized using a third-party app?

The only way I found was to declare the local library as a “cloud on the SD card” (for example residing in folder /sdcard/Calibre). The major shortcoming is that Calibre Companion creates another copy of every book in its /sdcard/Calibre_Companion folder. Is it possible to avoid that copy and have Calibre Companion pass the original file (in /sdcard/Calibre) to the reader app?
altruizine is offline   Reply With Quote
Old 11-04-2015, 11:32 AM   #2
chaley
Grand Sorcerer
chaley ought to be getting tired of karma fortunes by now.chaley ought to be getting tired of karma fortunes by now.chaley ought to be getting tired of karma fortunes by now.chaley ought to be getting tired of karma fortunes by now.chaley ought to be getting tired of karma fortunes by now.chaley ought to be getting tired of karma fortunes by now.chaley ought to be getting tired of karma fortunes by now.chaley ought to be getting tired of karma fortunes by now.chaley ought to be getting tired of karma fortunes by now.chaley ought to be getting tired of karma fortunes by now.chaley ought to be getting tired of karma fortunes by now.
 
Posts: 11,740
Karma: 6997045
Join Date: Jan 2010
Location: Notts, England
Device: Kobo Libra 2
Sorry, no. CC uses its own database for everything, and it is the copy operation that fills in the database record.

It would in theory be possible to copy the metadata but associate the book file on the SD card with CC's book record. Unfortunately, doing so would require disabling CC's internal extension-based storage mechanism, its file naming mechanisms, and book deletion amongst other things. These bits are deeply baked into CC, and messing with them would be very dangerous and time consuming.

I know it is a bother, but you could copy a book you want to read and then delete it from CC when done (delete is in CC's book details panel). With this scheme you would have one or two books in CC's library at a time. You could even delete the book file while leaving CC's record, should you want some history of what you have done, possibly for syncing read information.

Alternatives:
  • Instead of using a third-party sync app to sync the library, use CC to do it and store the books on the SD card. This mechanism allows you to use CC's metadata sync, grouping and sorting mechanisms. CC users do this with libraries in excess of 10,000 books.
  • There used to be a free app called "leger calibre" that opened calibre libraries on stored on the device. The author removed the app from the play store for some reason. Regardless, the APK is still out there. It might work for you.
  • The Calibre Cloud Pro app claims to handle local libraries. I have no idea whether or not it makes copies.
chaley is offline   Reply With Quote
Advert
Old 11-04-2015, 02:40 PM   #3
altruizine
Senior Altruist
altruizine ought to be getting tired of karma fortunes by now.altruizine ought to be getting tired of karma fortunes by now.altruizine ought to be getting tired of karma fortunes by now.altruizine ought to be getting tired of karma fortunes by now.altruizine ought to be getting tired of karma fortunes by now.altruizine ought to be getting tired of karma fortunes by now.altruizine ought to be getting tired of karma fortunes by now.altruizine ought to be getting tired of karma fortunes by now.altruizine ought to be getting tired of karma fortunes by now.altruizine ought to be getting tired of karma fortunes by now.altruizine ought to be getting tired of karma fortunes by now.
 
Posts: 82
Karma: 600554
Join Date: Jun 2012
Device: Onyx Boox C67ML, Onyx Boox Note Pro
Thanks for your very thorough response, chaley!

I do understand that not having the book file in the CC directory creates problems. Just a thought: Perhaps creating a placeholder file or a symlink instead would make the rest of your code happy enough? (Symlinks probably don't work on FAT-formatted SD cards, though.)

One minor problem I foresee with using CC's book copies (or, if you follow my idea, symlinks) is that my reader app's reading-position sync feature won't work unless I have imported the book into CC on all devices I use.

I actually have already explored most of the alternatives you mention:

CC's sync doesn't seem to support WebDAV, which is how I happen to have my library available (on my own server; I try to avoid third-party “cloud” solutions whenever possible).

I do have a copy of Leger Calibre. I believe the author has pulled the app because of the Kitkat SD card permission hassle. The app actually still works on my device, but I like CC's user interface better than Leger Calibre's, which is a bit outdated and cumbersome.

I have tried Calibre Cloud, and it's not bad, but it lacks filtering / browsing / sorting by tag, which I heavily rely on.

Thanks again for your comments and your advice!
altruizine is offline   Reply With Quote
Old 11-05-2015, 04:26 AM   #4
chaley
Grand Sorcerer
chaley ought to be getting tired of karma fortunes by now.chaley ought to be getting tired of karma fortunes by now.chaley ought to be getting tired of karma fortunes by now.chaley ought to be getting tired of karma fortunes by now.chaley ought to be getting tired of karma fortunes by now.chaley ought to be getting tired of karma fortunes by now.chaley ought to be getting tired of karma fortunes by now.chaley ought to be getting tired of karma fortunes by now.chaley ought to be getting tired of karma fortunes by now.chaley ought to be getting tired of karma fortunes by now.chaley ought to be getting tired of karma fortunes by now.
 
Posts: 11,740
Karma: 6997045
Join Date: Jan 2010
Location: Notts, England
Device: Kobo Libra 2
Quote:
Originally Posted by altruizine View Post
Thanks for your very thorough response, chaley!
You are welcome.
Quote:
I do understand that not having the book file in the CC directory creates problems. Just a thought: Perhaps creating a placeholder file or a symlink instead would make the rest of your code happy enough? (Symlinks probably don't work on FAT-formatted SD cards, though.)
The problem isn't the missing book. CC tolerates very well having the books disappear. About the only thing that breaks is launching the reader app, for obvious reasons.

The problems that arise come from the assumption that the book file is owned by CC. The wireless device driver might update it. CC might delete it. CC owns the set of folders where books are stored and can move them. CC might store calibre news in the folder. And so on. I either need to allow CC to corrupt the library (not a good idea) or to change every place where CC makes assumptions about its folder and file structure.
Quote:
I actually have already explored most of the alternatives you mention:

CC's sync doesn't seem to support WebDAV, which is how I happen to have my library available (on my own server; I try to avoid third-party “cloud” solutions whenever possible).
This isn't the sync-type I was referring to. I suggested that you use the wireless device driver to load your library. Many people do this. The first sync can be long, depending on the number of books in the library, but subsequent syncs run quickly. One advantage in addition: CC's copy of book metadata is updated on every connection. There are calibre plugins to tell you if there are books in your library that aren't on your device and vice versa. The reading list plugin supports automatic transfer of books, which works well with CC's automatic connect feature. And perhaps more important, it is how CC was designed to operate.

As for webdav: CC's cloud connection implementation requires 2 things: OAUTH2 authentication and an HTTP RESTFUL API for walking the folder tree and fetching files. All webdav implementations that I know of violate one or the other of these two requirements. It could be that all webdav implementations violate the second, especially with methods like LOCK, but CC might not stumble over these. And finally, it isn't at all clear that the libraries CC use would tolerate the added webdav methods and headers.

Another suggestion: put a copy of calibre's content server on your NAS or on a machine that can mount its disks. Then you can use CC's content server connection to fetch books on demand from an up-to-date source. I do this, running the content server on a linode VPS.
chaley is offline   Reply With Quote
Reply

Tags
calibre, sdcard


Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
Browsing library on Kobo Aura HD wayne2612 Kobo Reader 8 09-19-2013 02:36 PM
[Kindle Touch] Hangs when browsing library RolandD Amazon Kindle 2 01-02-2012 07:16 AM
Classic Trook-browsing Calibre; HOW? maurizio9991 Nook Developer's Corner 3 08-27-2010 01:22 AM
Browsing by cover your Calibre library on the Kindle SirBC Amazon Kindle 2 05-10-2010 09:58 AM
Pocket PC-Vade Mecum+Sunrise+Mobsync(sync to SD card) - awesome offline web browsing! chippyt Reading and Management 4 02-16-2006 08:22 AM


All times are GMT -4. The time now is 09:14 PM.


MobileRead.com is a privately owned, operated and funded community.