Beginning with version 0.8.7, significant changes were made to calibre's database storage architecture in anticipation of supporting networked databases. All iDevice users should be aware of how this change affects books transferred from calibre to iTunes and iBooks.
Does this apply to me?
If you are using calibre to transfer ePubs or PDFs to iTunes and ultimately iBooks on an Apple iDevice (iPad, iPhone, iPod Touch) this applies to you.
What do I need to do?
You need to decide whether you want iTunes to store copies of transferred books, or if you want calibre to create a local copy of transferred books for iTunes to reference.
I really don't like reading technical explanations. May I stop reading now?
- Open iTunes Preferences|Advanced
- Choose a setting for Copy files to iTunes Media folder when adding to my library. If you already have existing content in iTunes (music, videos, etc), you should keep your current setting.
- Checked: iTunes will make copies of transferred books in your iTunes Media folder
- Unchecked: iTunes will reference copies of transferred books in your calibre configuration directory.
- Open calibre Preferences|Plugins|Device Interface plugins. Select the Apple device interface (it may be disabled, that's OK). Click Customize plugin.
- Set 'Copy files to iTunes Media folder…' is enabled in iTunes Preferences|Advanced to match the setting you chose in iTunes Preferences|Advanced above.
Important: Both checkboxes should be in the same state (checked or unchecked). Mixed settings may lead to an inability for iTunes to sync your books, or multiple local copies.
If you've followed the previous instruction, you're done. If you're concerned about why
this change was implemented, or its implications, read on.
Why do I need to do this?
Changes to calibre's database storage architecture mean that it is no longer possible for a device driver to directly access calibre's local copy of the file, as one may not exist. This change ensures that a local copy of the transferred file will exist on your system, either in your iTunes Media folder, or a special 'iTunes storage' folder in your calibre configuration directory.
What about books previously transferred from calibre to iTunes?
Books transferred from calibre to iTunes prior to 0.8.7 still have valid paths to calibre's local database, so iTunes should still be able to sync them with your iDevice. If you make a change to a book previously transferred, you will need to resend it to iTunes.
Doesn't this mean that there will be extra copies of transferred books on my system? Why can't things be the way they used to be in the good old days? Grumble grumble grumble.
Calibre will eventually support networked databases as an option. In a networked database, there are no local copies of the calibre library. When a file is sent to iTunes, a local copy needs to be available for iTunes to be able to sync it with your iDevice.
I don't want extra copies of my books floating around on my system.
If you are concerned about storage space on your system, you can complete the transfer to your iDevice during the same calibre session, then remove the local copy:
What's the proper way to delete books added to iTunes/iDevices?
- Connect to iTunes by clicking the Connect/Share icon, then select the Connect to iTunes option.
- Select the book(s) to transfer, then click the Send to Device icon.
- Using iTunes, sync your iDevice to transfer the books to your iDevice.
- Re-select the books(s) just transferred, click the down arrow next to the Remove books icon, then select Remove matching books from device. The selected books will removed from local storage, and from the iTunes database.
Books should be removed from iTunes/iDevices using the same method you used to add them:
I have books listed in iTunes with a '!' prefix. What do I do?
- If you added the book to iTunes using calibre, delete it using calibre's Remove matching books from device command.
- If you added the book directly to iTunes, remove it using iTunes.
- If you added the book directly to iBooks on the iDevice (a download from the iBookstore, or using calibre's content server), delete the book directly in iBooks on the iDevice.
[LIST=1][*]In iTunes Preferences|Advanced
, confirm that the setting for 'Copy files to iTunes Media folder when adding to library' matches the setting in calibre Preferences|Plugins|Device Interface plugins|Apple device interface
as described above.[*]Resend the books shown with a '!
Are there any ways to transfer books to iBooks that don't create a iTunes local copy?
- Install the Apple iDevice plugin. This plugin transfers books directly to iBooks on a connected iDevice without creating a copy in iTunes.
- Use calibre's content server and the iOS 'Open in...' feature.
- Mail the book to yourself, use the 'Open in...' feature.