Gosta de ler? Conhece o calibre? Se não conhece, tá perdendo!

O calibre (assim mesmo, com letra minúscula) é um software gratuito e de código aberto para gestão de bibliotecas digitais. Ele roda em Linux, OS X e Windows e, com a ajuda suas formidáveis capacidades de extensão, suporta desde o mais xing-ling ao mais proprietário dos dispositivos de leitura de livros digitais.

No começo deste ano umas milhas iam vencer e eu não pretendia viajar para canto algum. Torrei algumas dessas milhas num Kindle Paperwhite 2 (wifi sem 3g), da Amazon. Excelente negócio! Tirando a Amazon, ele é bom. Acrescentando o calibre, é ótimo.

O Kindle PW2 suporta os seguintes formatos: AZW, AZW3, TXT, PDF, MOBI sem DRM e PRC. Fica de fora EPUB e outos formatos obscuros. De todos, o EPUB realmente faz falta. É o único padrão aberto e independente de fabricante, e por isso possui muito conteúdo publicado em EPUB por aí que a Amazon não quer que você tenha acesso. Mas o calibre suporta praticamente tudo e ainda presta a gentileza de converter todos eles para os formatos que o Kindle aceita.

Kindle sim, Amazon não

Se você comprou ou está pensando em comprar um Kindle e quer que ele seja seu e só seu, saiba que a Amazon não quer que isso aconteça. Mas você pode fazer com que a Amazon jamais saiba que você sequer o possui (caso você o tenha comprado fora da Amazon, lógico).

O processo todo tem lá as suas complexidades e riscos, mas se você está se sentindo aventureiro, escrevi um guia em inglês que explica tudinho em detalhes. Ele é um pouco antigo e se aplica exclusivamente ao Kindle Paperwhite de segunda geração, com wifi apenas e firmware versão 5.4.0 (a mais atual é 5.4.5.1). No entanto, a maioria das coisas funcionam em outros modelos de Kindle e em versões mais antigas e novas de firmware. Você só vai ter que procurar um pouco para adaptar ao seu caso. O fórum mobileread tem tudo o que você possa precisar, e não só para o Kindle.

É claro que você pode permitir que a Amazon bisbilhote você adaptando os passos do guia, como por exemplo, ativando o wifi e registrando o Kindle online. Aliás, para poder compartilhar trechos de leitura online ou navegar (num Kindle, sério?), você precisa manter o wifi ligado. Mas mesmo com o Kindle conectado à internet você pode controlar o voyerismo da Amazon. Adapte as instruções livremente a sua conveniência. O dispositivo é seu, a escolha é sua.

Se você precisar do guia em português, me avisa aí nos comentários e eu providencio.

A desgraça do DRM

Já com relação aos livros comprados, se eles forem da Amazon, você precisará registrar o seu Kindle online. Mas não precisa fazer isso pelo Kindle. Acesse o site da Amazon pelo computador, faça o registro do Kindle, compre os livros que quiser, baixe-os, coloque-os no Calibre e passe para o Kindle via USB (o tal do sideload). Funciona supimpa.

Se for comprar de outras livrarias, então o registro na Amazon não é necessário, mas o processo para colocar o livro no Kindle é o mesmo.

Independente da fonte, prefira sempre comprar de livrarias e editoras que não te amarram à desgraça do DRM. A desgraça do DRM impede que o calibre - ou qualquer outro dispositivo tirando exatamente esse Kindle que você possui hoje nas mãos - abra os seus livros. Apesar disso, ele conseguirá transferi-los para o Kindle. No Kindle, e apenas nesse que você possui, você conseguirá lê-los. Se o seu Kindle pifar e você comprar um novo, já era.

Por isso, seja qual for a fonte dos seus livros, evite comprar livros com a desgraça do DRM. Boicote mesmo! Existem livrarias e editoras que vendem tudo sem a desgraça do DRM. Compre delas.

Mas se o livro que você quiser só existe com a desgraça do DRM, há meios para remover a desgraça do DRM para que você possa ler o seu livro tanto no calibre, quanto no Kindle ou em qualquer outro lugar que você queira. Tipo a gente fazia com o livro de papel, lembra?!?

Nota para quem gosta da desgraça do DRM

Aproveitando o ensejo, eu sempre quis dizer isso assim, 'out loud'...

Se você é um autor, agente, publisher, merchant ou dev que apóia a desgraça do DRM, esse é o meu singelo recado para você: vai tomar no centro do olho do seu cu, seu filho de uma puta escroto do caralho!

Você, pouco prezado humano, está vivendo no século XX sem saber e ainda atrapalhando a vida de quem está no XXI. Mude de profissão, vá fazer outra coisa, e deixe-nos, leitores, livres do DRM. Nós não queremos roubar os seus livros, até porque é MUITO mais conveniente comprá-los do que baixá-los ilegalmente.

E se ficou ofendidinho, 'sue me', seu merda.

calibre, para relaxar

A instalação do calibre é fácil demais para eu me preocupar com ela aqui. Baixe a versão que se aplica ao seu sistema operacional, instale e pronto. Se você usa o Slackware, o AlienBOB (sempre ele) possui pacotes prontos para você.

O calibre já vem com tudo o que é necessário para carregar e descarregar arquivos do Kindle. Basta espetar o Kindle em uma porta USB do seu computador. Se o calibre estiver aberto, ele vai reconhecer o seu Kindle também.

A configuração e uso básico do calibre com o Kindle, inclusive a conversão de formatos, são objetos muitos de tutorais na internet. Não preciso repetir isso aqui. Mas deixo os links para vocês:

Vamos direto a parte que interessa e é menos abordada por aí: gerenciar coleções no Kindle e publicar sua biblioteca online, tudo a partir do calibre.

Coleções

Eu só consigo me organizar com o paradigma de categorias ou coleções. Nos meus livros, além dos gêneros e outros metadados para classificação da biblioteca, eu tenho a minha própria taxonomia baseada no estado de leitura do livro: fila de leitura, lendo e lidos.

Nessa mesma coleção há outros rótulos para o conteúdo que não faz parte efetivamente do meu ciclo de leitura, mas que precisam estar lá: aplicativos e manuais.

O Kindle me dá as ferramentas para criar e gerenciar coleções do jeito que eu quero, mas não onde e como eu quero. Ele é egoísta e as coleções dele só funcionam nele e no site da Amazon. E aí o calibre entra.

Para gerenciar as coleções do Kindle a partir do calibre existem alguns pré-requisitos:

Depois de instalar os pré-requisitos acima, é necessário configurar o calibre e o Kindle.

Primeiro o calibre. Adicione uma nova coluna personalizada conforme abaixo. Fique a vontade para alterar os parâmetros para algo mais adequado aos seus hábitos e posicionar a nova coluna na posição que quiser. Eu a coloco depois de 'Etiquetas'. Só não altere o tipo da coluna.

Configuração da coluna personalizada para as coleções do
Kindle.

Se existe algum livro no seu Kindle, tipo dicionários e manual, essa é a hora de você espetar seu Kindle na USB para carregar os livros dele para o calibre. Como dito acima, o calibre não vai abrir os dicionários pois eles são protegidos pela desgraça do DRM (há menos que você o remova, claro). Mas pelo menos você guarda o arquivo.

Com esses livros baixados do Kindle mais quaisquer outros que você já possuir em sua biblioteca do calibre, edite o campo 'Coleção' de cada um deles. Defina os nomes das coleções de acordo com o que você quer que aparece no Kindle, sendo apenas uma coleção por livro.

Hora de preparar o Kindle Collections. Com o seu Kindle já espetado na USB, você verá o botão abaixo na barra de ferramentas.

Botão e menu Kindle
Collections.

Clique nesse botão e escolha a opção 'Customize collections to create from calibre...'. Você verá a janela abaixo, que deverá ser configurada tendo como exemplo o que é mostrado.

Configuração do Kindle
Collections.

As opções importantes aqui são:

  • Configure which Kindle collections to update: é aqui que você diz ao KC quais colunas o calibre irá usar para gerar as coleções no Kindle. No exemplo acima, uso a coluna 'Coleções' e digo para ignorar as coleções 'Aplicativos' e 'Dicionários'. Faço isso porque a coleção Aplicativos eu gerencio manualmente no Kindle e a Dicionários o próprio Kindle toma conta.
  • Ignore exported collections database: o aplicativo Collections Manager instalado no Kindle tem a habilidade de criar e gerenciar coleções direto no Kindle. A configuração feita nele pode então ser exportada no Kindle e importada no calibre (two-way sync). Só que esse processo não é lá muito conveniente. Por isso, eu prefiro gerenciar só no calibre. Com essa opção marcada, as configurações do Collections Manager no Kindle são ignoradas (one-way sync).
  • Only generate data for created/updatec collections: essa opção faz com que o Collections Manager só altere as coleções que tiveram algum conteúdo efetivamente atualizado. Isso agiliza as coisas.
  • Never delete or modify Kindle collections that match these patterns: aqui digo para o Collections Manager não encostar em determinadas coleções, no caso as coleções de dicionários que são gerenciadas pelo próprio Kindle.

A menos que você mude seu método de organização, não será necessário fazer essas configurações novamente.

Altere as configurações acima conforme a sua vontade e, com o Kindle ainda espetado na USB, clique novamente no botão do Kindle Collections e escolha 'Create collections on the Kindle from calibre'. Feito isso pode desconectar o Kindle da USB que agora é com ele.

Kindle com Collections Manager e coleções.

Agora é mole. Abra o Collections Manager, no menu escolha 'Sincronização' e 'Importar coleções do calibre'. Seu Kindle vai dar umas piscadinhas, o Collections Manager vai dizer que fez o serviço e deu. Quando você clicar no ícone da casinha, suas coleções aparecerão todas pirilampas.

Um macetinho: você notou que minha coleção de aplicativos tem sete itens e minha home só tem uma página? Lebra que eu falei ali em cima que 'a coleção Aplicativos eu gerencio manualmente no Kindle'? Então, usando o Collections Manager eu coloco nessa coleção ele próprio, seu arquivo de idioma (CollectionManager-localization), o KUAL, Construtor de vocabulário, Meus recortes, Imagens e Periódicos. Assim a home do Kindle fica só com as coleções e apenas uma página, limpa e organizadinha do jeito que eu gosto. E como eu desativei no KC o gerenciamento da coleção Aplicativos e a atualização das coleções sem alterações, essa organização não se perde quando preciso mexer no conteúdo das coleções. 'Listo'.

Leitura social

O Goodreads é uma excelente rede social para leitores. Lá você pode vasculhar uma infinidade de títulos, receber recomendações, dar notas aos livros, ler e escrever resenhas, entrar em contato com autores e, como em todas as redes sociais, adicionar amigos (reais e virtuais) para compartilhar as indicações de leitura na sua rede.

Toda a sua biblioteca do calibre pode ser sincronizada com o Goodreads com o plugin Goodreads sync. Instale o plugin no calibre e vá lá no Goodreads criar a sua conta.

Aqui também vamos precisar de algumas colunas personalizadas. A configuração para cada uma delas é mostrada abaixo.

Colunas personalizadas para o Goodreads
sync.

Com as colunas criadas e o Goodreads sync instalado, edite o campo 'GR Estante' de cada um deles. Defina os nomes das estantes de acordo com as estantes do Goodreads. Um livro pode estar em mais de uma instante simultaneamente. Você pode dar o nome que quiser as suas estantes, mas eu uso os mesmos nomes das coleções. Você também pode adicionar mais estantes se quiser, como eu fiz com a estante 'MexApi', que é justamente a dos livros que eu quero que apareçam aqui.

Com os seus livros já em estantes, clique no botão do Goodreads na barra de ferramentas do calibre e escolha a opção 'Configurar plug-in...'.

Configurações do Goodreads
sync.

Essa configuração também é feita uma vez só. O que importa aqui:

  • Authorize Plugin with Goodreads: ao clicar neste botão, o navegador será aberto com a página de login do Goodreads. Faça o seu login, clique em 'Allow access' e feche o navegador. Isso só precisa ser feito uma vez.
  • Active: mostra a estante na hora de adicionar o livro ao Goodreads. Se você desabilitar essa opção, ainda assim poderá mostrar a estante depois se quiser. Ele só não aparecerá automaticamente.
  • Shelf Name: é o nome da estante no Goodreads. As estantes com ícone vermelho são reservadas e não podem ser alteradas, e as com ícone azul são suas estantes personalizadas que você pode alterar livremente.
  • calibre Tags: mapeia o nome da coluna 'GR Estante' ao nome da estante no Goodreads. É aqui que ligamos uma estante à outra.
  • Shelf Add Actions: executa ações quando o livro é adicionado a uma estante. No caso da estante MexApi, a data atual é adicionada à coluna personalizada 'GR Data Lido'. Isto ocorre porque o livro ainda não foi lido e até lá esta data será igual à de 'GR Data Adição'.
  • Sync Actions: executa ações quando a estante é sincronizada (atualizada). No caso da estante MexApi, a data de término da leitura do livro é atualizada na coluna 'GR Data Lido'.
  • **Never modify the calibre <ISBN:**> Caso o ISBN do livro no Goodreads seja diferente daquele no calibre, mantém o do calibre.
  • Tags column: define a coluna personalizada do calibre que contém os nomes das estantes.
  • Rating column: define a coluna do calibre que contém a avaliação pessoal dos livros.
  • Date read column: define a coluna personalizada do calibre que contém a data em que o livro foi lido.
  • Review text column: define a coluna personalizada do calibre que contém o texto da resenha pessoal.

Com isso configurado, envie os livros para as estantes. Selecione os livros a serem enviados para cada estante separadamente, clique no botão do Goodreads, escolha 'Add to shelf...', marque a estante para qual o livro deve ir e clique no botão 'Add to Shelf'. Acesse o Goodreads e seus livros enviados aparecerão lá. Simples assim. Repita isso com todas as estantes e sempre que atualizar alguma coisa.

Caso você tente enviar um livro para o Goodreads e não consiga, provavelmente o título que você deseja enviar não está associado a um título existente no Goodreads. Neste caso, você precisa fazer a associação na mão antes de enviar. O Goodreads dispõe de um banco de dados impressionante e bastante completo de títulos, portanto a possibilidade de um livro não existir lá é remota. Só tome cuidado com as edições e os idiomas. As vezes o Goodreads aponta alguma coisa que é o título que você tem, mas está em outro idioma ou é de outra edição. O ISBN é seu amigo. Use-o para comparar.

Biblioteca pública

Quer ver minha biblioteca? É só clicar ali em cima.

Para ela chegar até lá eu tive que escrever código. Mas só uma vez. Se eu tivesse que fazer isso toda vez que incluo algo novo, termino de ler um livro ou dou uma nota para o livro que acabei de ler, pode ter certeza que ela não estaria lá, porque fazer isso é chato demais!

O que permite que isso ocorra de modo automático é a integração do Pelican, o sistema de blog que uso aqui no MexApi, com o Goodreads. Isso é papo para desenvolvedor. Então eu vou apenas indicar no código do MexApi onde isso é feito e, caso você queira fazer o mesmo, terá tudo o que precisa.

A primeira coisa necessária é o plugin Goodreads Activity para o Pelican. Com ele disponível no diretório de plugins do seu Pelican, é necessário configurá-lo, criar a página, o template, o CSS e o link para o menu.

A configuração dele é apenas isso no pelicanconf.py:

# Settings for goodreads_activity plugin
GOODREADS_ACTIVITY_FEED='https://www.goodreads.com/review/list_rss/[user_id]?key=[api_key]&shelf=[shelf_name]'

Para obter essa URL completa, acesse o Goodreads, clique em 'My Books', clique no shelf que você quer trazer para o Pelican e vá para o rodapé. Lá você vai ver o ícone do RSS. Clique com o botão direito, copie o link e cole na variável acima.

Depois crie uma página para a sua biblioteca. A minha é essa. Notou que ela não tem nada além de um rst? A única coisa que chama atenção nessa página é isso:

:template: page_library

Essa página é governada por esse template. E ele está aqui. É o template que faz uso dos objetos expostos pelo Goodreads Activity para montar a minha biblioteca pública. Por sua vez, o template usa o CSS do MexApi que começa aqui. E por fim a página é adicionada ao menu aí de cima por causa disso no pelicanconf.py:

MENUITEMS = (('Arquivo', SITEURL + '/blog/'),
             ('Biblioteca', SITEURL + '/library.html'),
             ('FOSS', SITEURL + '/foss.html'),
             ('Sobre', SITEURL + '/about.html'))

Depois disso tudo você vê a minha biblioteca. Toda vez que eu rodo um make html ou make github no MexApi, o Pelican usa o conteúdo do RSS em cache local da minha estante, prepara tudo e cabum... Aparece aqui. Lindo, né?

Cabô.