Remove references to drmfree.calibre-ebook.com

That site is being retired. Text about DRM has been migrated
to the calibre manual.
This commit is contained in:
Kovid Goyal 2020-03-11 17:21:39 +05:30
parent 4a661f9138
commit 2d38fb1b22
No known key found for this signature in database
GPG Key ID: 06BC317B515ACE7C
8 changed files with 115 additions and 96 deletions

107
manual/drm.rst Normal file
View File

@ -0,0 +1,107 @@
.. _dmr:
Digital Rights Management (DRM)
===============================================
Digital rights management (DRM) is a generic term for access control
technologies that can be used by hardware manufacturers, publishers, copyright
holders and individuals to try to impose limitations on the usage of digital
content and devices. It is also, sometimes, disparagingly described as Digital
Restrictions Management. The term is used to describe any technology which
inhibits uses (legitimate or otherwise) of digital content that were not
desired or foreseen by the content provider. The term generally doesn't refer
to other forms of copy protection which can be circumvented without modifying
the file or device, such as serial numbers or key-files. It can also refer to
restrictions associated with specific instances of digital works or devices.
DRM technologies attempt to control use of digital media by preventing access,
copying or conversion to other formats by end users. See `wikipedia
<http://en.wikipedia.org/wiki/Digital_rights_management>`_.
What does DRM imply for me personally?
------------------------------------------
When you buy an e-book with DRM you don't really own it but have purchased the
permission to use it in a manner dictated to you by the seller. DRM limits what
you can do with e-books you have "bought". Often people who buy books with DRM
are unaware of the extent of these restrictions. These restrictions prevent you
from reformatting the e-book to your liking, including making stylistic changes
like adjusting the font sizes, although there is software that empowers you to
do such things for non DRM books. People are often surprised that an e-book
they have bought in a particular format cannot be converted to another format
if the e-book has DRM. So if you have an Amazon Kindle and buy a book sold by
Barnes and Nobles, you should know that if that e-book has DRM you will not be
able to read it on your Kindle. Notice that I am talking about a book you buy,
not steal or pirate but BUY.
What does DRM do for authors?
----------------------------------
Publishers of DRMed e-books argue that the DRM is all for the sake of authors
and to protect their artistic integrity and prevent piracy. But DRM does NOT
prevent piracy. People who want to pirate content or use pirated content still
do it and succeed. The three major DRM schemes for e-books today are run by
Amazon, Adobe and Barnes and Noble and all three DRM schemes have been cracked.
All DRM does is inconvenience legitimate users. It can be argued that it
actually harms authors as people who would have bought the book choose to find
a pirated version as they are not willing to put up with DRM. Those that would
pirate in the absence of DRM do so in its presence as well. To reiterate, the
key point is that DRM *does not prevent piracy*. So DRM is not only pointless
and harmful to buyers of e-books but also a waste of money.
DRM and freedom
-------------------
Although digital content can be used to make information as well as creative
works easily available to everyone and empower humanity, this is not in the
interests of some publishers who want to steer people away from this
possibility of freedom simply to maintain their relevance in world developing
so fast that they cant keep up.
Why does calibre not support DRM?
-------------------------------------
calibre is open source software while DRM by its very nature is closed. If
calibre were to support opening or viewing DRM files it could be trivially
modified to be used as a tool for DRM removal which is illegal under today's
laws. Open source software and DRM are a clash of principles. While DRM is all
about controlling the user open source software is about empowering the user.
The two simply can not coexist.
What is calibre's view on content providers?
------------------------------------------------
We firmly believe that authors and other content providers should be
compensated for their efforts, but DRM is not the way to go about it. We are
developing this database of DRM-free e-books from various sources to help you
find DRM-free alternatives and to help independent authors and publishers of
DRM-free e-books publicize their content. We hope you will find this useful and
we request that you do not pirate the content made available to you here.
How can I help fight DRM?
-----------------------------
As somebody who reads and buys e-books you can help fight DRM. Do not buy
e-books with DRM. There are some publishers who publish DRM-free e-books. Make
an effort to see if they carry the e-book you are looking for. If you like
books by certain independent authors that sell DRM-free e-books and you can
afford it make donations to them. This is money well spent as their e-books
tend to be cheaper (there may be exceptions) than the ones you would buy from
publishers of DRMed books and would probably work on all devices you own in the
future saving you the cost of buying the e-book again. Do not discourage
publishers and authors of DRM-free e-books by pirating their content. Content
providers deserve compensation for their efforts. Do not punish them for trying
to make your reading experience better by making available DRM-free e-books. In
the long run this is detrimental to you. If you have bought books from sellers
that carry both DRMed as well as DRM-free books, not knowing if they carry DRM
or not make it a point to leave a comment or review on the website informing
future buyers of its DRM status. Many sellers do not think it important to
clearly indicate to their buyers if an e-book carries DRM or not. `Here
<https://www.defectivebydesign.org/guide/ebooks>` you will find a Guide to
DRM-free living.

View File

@ -983,7 +983,7 @@ If you want to backup the calibre configuration/plugins, you have to backup the
How do I use purchased EPUB books with calibre (or what do I do with .acsm files)?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Most purchased EPUB books have `DRM <https://drmfree.calibre-ebook.com/about#drm>`_. This prevents calibre from opening them. You can still use calibre to store and transfer them to your e-book reader. First, you must authorize your reader on a windows machine with Adobe Digital Editions. Once this is done, EPUB books transferred with calibre will work fine on your reader. When you purchase an epub book from a website, you will get an ".acsm" file. This file should be opened with Adobe Digital Editions, which will then download the actual ".epub" e-book. The e-book file will be stored in the folder "My Digital Editions", from where you can add it to calibre.
Most purchased EPUB books have :doc:`DRM <drm>`. This prevents calibre from opening them. You can still use calibre to store and transfer them to your e-book reader. First, you must authorize your reader on a windows machine with Adobe Digital Editions. Once this is done, EPUB books transferred with calibre will work fine on your reader. When you purchase an epub book from a website, you will get an ".acsm" file. This file should be opened with Adobe Digital Editions, which will then download the actual ".epub" e-book. The e-book file will be stored in the folder "My Digital Editions", from where you can add it to calibre.
I am getting a "Permission Denied" error?
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

View File

@ -94,7 +94,7 @@ Convert books
:class: float-right-img
|cei| E-books can be converted from a number of formats into whatever format your e-book reader prefers.
Many e-books available for purchase will be protected by `Digital Rights Management <https://drmfree.calibre-ebook.com/about#drm>`_ *(DRM)* technology.
Many e-books available for purchase will be protected by :doc:`Digital Rights Management <drm>` *(DRM)* technology.
calibre will not convert these e-books. It is easy to remove the DRM from many formats, but as this may be illegal,
you will have to find tools to liberate your books yourself and then use calibre to convert them.

View File

@ -41,4 +41,5 @@ available <https://calibre-ebook.com/help>`_.
customize
generated/en/cli-index
develop
drm
glossary

View File

@ -1738,15 +1738,6 @@ class StoreNextoStore(StoreBase):
affiliate = True
class StoreOpenBooksStore(StoreBase):
name = 'Open Books'
description = 'Comprehensive listing of DRM free e-books from a variety of sources provided by users of calibre.'
actual_plugin = 'calibre.gui2.store.stores.open_books_plugin:OpenBooksStore'
drm_free_only = True
headquarters = 'US'
class StoreOzonRUStore(StoreBase):
name = 'OZON.ru'
description = 'e-books from OZON.ru'
@ -1910,7 +1901,6 @@ plugins += [
StoreMillsBoonUKStore,
StoreMobileReadStore,
StoreNextoStore,
StoreOpenBooksStore,
StoreOzonRUStore,
StorePragmaticBookshelfStore,
StorePublioStore,

View File

@ -13,6 +13,7 @@ from PyQt5.Qt import QIcon, QSize
from calibre.gui2 import error_dialog
from calibre.gui2.actions import InterfaceAction
from calibre.gui2.dialogs.confirm_delete import confirm
from calibre.utils.localization import localize_user_manual_link
class StoreAction(InterfaceAction):
@ -146,8 +147,9 @@ class StoreAction(InterfaceAction):
'buying from. Be sure to double check that any books you get '
'will work with your e-book reader, especially if the book you '
'are buying has '
'<a href="https://drmfree.calibre-ebook.com/about#drm">DRM</a>.'
)), 'about_get_books_msg',
'<a href="{}">DRM</a>.'
).format(localize_user_manual_link(
'https://manual.calibre-ebook.com/drm.html'))), 'about_get_books_msg',
parent=self.gui, show_cancel_button=False,
confirm_msg=_('Show this message again'),
pixmap='dialog_information.png', title=_('About Get books'))

View File

@ -44,8 +44,7 @@
<widget class="QLabel" name="msg">
<property name="text">
<string>&lt;p&gt;This book is locked by &lt;b&gt;DRM&lt;/b&gt;. To learn more about DRM and why you cannot read or convert this book in calibre,
&lt;a href=&quot;https://drmfree.calibre-ebook.com/about#drm&quot;&gt;click here&lt;/a&gt;.&lt;p&gt;A large number of recent, DRM free releases are
available at &lt;a href=&quot;https://drmfree.calibre-ebook.com&quot;&gt;Open Books&lt;/a&gt;.</string>
&lt;a href=&quot;https://manual.calibre-ebook.com/drm.html&quot;&gt;click here&lt;/a&gt;.&lt;p&gt;</string>
</property>
<property name="wordWrap">
<bool>true</bool>

View File

@ -1,80 +0,0 @@
# -*- coding: utf-8 -*-
from __future__ import absolute_import, division, print_function, unicode_literals
store_version = 1 # Needed for dynamic plugin loading
__license__ = 'GPL 3'
__copyright__ = '2011, John Schember <john@nachtimwald.com>'
__docformat__ = 'restructuredtext en'
from contextlib import closing
try:
from urllib.parse import quote_plus
except ImportError:
from urllib import quote_plus
from lxml import html
from PyQt5.Qt import QUrl
from calibre import browser, url_slash_cleaner
from calibre.gui2 import open_url
from calibre.gui2.store import StorePlugin
from calibre.gui2.store.basic_config import BasicStoreConfig
from calibre.gui2.store.search_result import SearchResult
from calibre.gui2.store.web_store_dialog import WebStoreDialog
class OpenBooksStore(BasicStoreConfig, StorePlugin):
def open(self, parent=None, detail_item=None, external=False):
url = 'https://drmfree.calibre-ebook.com/'
if external or self.config.get('open_external', False):
open_url(QUrl(url_slash_cleaner(detail_item if detail_item else url)))
else:
d = WebStoreDialog(self.gui, url, parent, detail_item)
d.setWindowTitle(self.name)
d.set_tags(self.config.get('tags', ''))
d.exec_()
def search(self, query, max_results=10, timeout=60):
url = 'https://drmfree.calibre-ebook.com/search/?q=' + quote_plus(query)
br = browser()
counter = max_results
with closing(br.open(url, timeout=timeout)) as f:
doc = html.fromstring(f.read())
for data in doc.xpath('//ul[@id="object_list"]//li'):
if counter <= 0:
break
id = ''.join(data.xpath('.//div[@class="links"]/a[1]/@href'))
id = id.strip()
if not id:
continue
cover_url = ''.join(data.xpath('.//div[@class="cover"]/img/@src'))
price = ''.join(data.xpath('.//div[@class="price"]/text()'))
a, b, price = price.partition('Price:')
price = price.strip()
if not price:
continue
title = ''.join(data.xpath('.//div/strong/text()'))
author = ''.join(data.xpath('.//div[@class="author"]//text()'))
author = author.partition('by')[-1]
counter -= 1
s = SearchResult()
s.cover_url = cover_url
s.title = title.strip()
s.author = author.strip()
s.price = price.strip()
s.detail_item = id.strip()
s.drm = SearchResult.DRM_UNLOCKED
yield s