Journal Bookshelf: publier ses ebooks simplement

Posté par  . Licence CC By‑SA.
26
14
jan.
2021

En ces temps troublés, la lecture devient une enclave paisible où il fait bon se réfugier.

Charentaises aux pieds, plaid sur les genoux, petit fond musical pour l'ambiance: on est pas mal.
Le thé vient d'être servi, allez-y, prenez une tasse!
Le feu dans la cheminée est assez fort pour qu'on soit bercé par son crépitement.

Ce qui serait vraiment relou, là maintenant, ce serait d'avoir à se relever pour téléverser un livre sur la liseuse.

Koreader <3 OPDS

Koreader est un lecteur de documents conçu pour les appareils e-ink.
C'est un logiciel libre qui apporte de nombreuses fonctionnalités faisant souvent défaut aux logiciels livrés avec les liseuses.
Une fonctionnalité particulièrement utile, qui m'évite d'avoir à quitter mon plaid pour ajouter un livre, est le support des catalogues OPDS.

OPDS c'est le petit nom de Open Publication Distribution System.
En gros c'est un format pour décrire une collection de livres, et une manière de se les procurer (téléchargement, achat, prêt, etc).

Une URL vers l'OPDS à renseigner dans Koreader et voila des kilo-bytes de lecture a portée de clic!

La question qui te brûle maintenant les lèvres c'est bien sûr: mais quelle URL qu'on met?

Celle de son serveur bookshelf bien évidemment!

Serveurs OPDS

Il existe plusieurs manières de publier un flux OPDS.
Sans chercher à être exhaustif, j'en ai noté deux principales:
- faire tourner un serveur calibre
- faire tourner COPS

Dans les deux cas la collection doit être gérée par calibre, COPS se base sur la bibliothèque seulement (pas besoin de calibre sur le serveur).
Calibre est un super logiciel, mais bien trop lourd pour mon besoin.

Et en cherchant des alternatives légères, ben j'en ai pas trouvé bézef…

Bookshelf

Je veux pouvoir partager un répertoire contenant des fichiers epubs.
Outre l'accès OPDS, je souhaites aussi pouvoir parcourir la collection avec mon navigateur préféré.

Comme on est souvent bien servi par soi-même, et que c’était un bon prétexte pour écrire du go, je me suis concocté une petite solution.

Ça s'appelle donc Bookshelf, c'est libre et ça ne fait pas grand chose (simple et stupide).

Pour commencer, ça mange un répertoire dans lequel il y a des epubs.
Ils vont être indexés pour être publiés, c'est la partie la plus gourmande en ressource selon la taille de la collection.
Mais c'est un coût unique puisque lors de l'ajout ultérieur d'epub, l'indexation ne passera que sur les nouveaux fichiers.

Il n'y a pas de page d'auteur, de série ou autre parce que les métadonnées sont toujours nazes et on se retrouverait avec des "Lewis Carroll", "Carroll Lewis", "Caroll L", etc.
On est trop bien au coin du feu pour passer sa journée à corriger des métadonnées: je préfère la recherche plein texte.

Tout passe par la recherche. Tu veux un polar? Tape "enquête". Une romance? "bisou"! Tu vois l’idée.
Pour peu que le mot apparaisse dans la description, le titre, la série ou l'auteur, le bouquin remontera dans les résultats.

Avec ce petit bout de logiciel, je suis satisfait:
- je dépose des epubs en SFTP sur le serveur
- un cron indexe le répertoire contenant les fichiers
- je récupère mon livre en OPDS quand je le souhaite

C'est tellement simple que ma maman s'en sert.
Et les copains qui ont accès au sftp peuvent également ajouter des bouquins.

Voilà, des fois que ça te serait utile, le code est libre.

Et si tu cherches des livres, le projet Gutenberg est une mine d'or.

Sur ce, j'y retourne, mon thé va refroidir.

Bisous

  • # Koreader Rocks!

    Posté par  . Évalué à 5.

    j'utilise Koreader avec ma liseuse PocketBook, c'est un vrai bonheur !
    à l'occasion j'essayerai de tester ton logiciel, même si j'utilise actuellement Calibre pour accéder à mes livres.

    « Le pouvoir des Tripodes dépendait de la résignation des hommes à l'esclavage. » -- John Christopher

  • # D'autres librairies numériques pour compléter

    Posté par  (site web personnel, Mastodon) . Évalué à 4.

    Merci pour ton journal et ton logiciel.

    Puis-je suggérer des librairies numériques supplémentaires ? Celles que je connais et utilise, commentées et dans l’ordre alphabétique.

    Atramenta : propose à la fois une bibliothèque de livres gratuits, à lire en ligne ou à télécharger, selon les livres au format pdf, epub, mobi ou odt, et la possibilité de les éditer à compte d’auteur en version papier ou électronique et en reversant les droits d’auteurs s’il y a lieu. Les livres électroniques des auteurs vivants sont, on va dire, de qualité et de finition (langue et typographie) inégales.

    Ebook gratuit français : il ne semble pas avoir de filtre géographique. Trois types de formats : epub, mobi et pdf. On peut sélectionner un livre en fonction du format, piocher dans les catégories, ou faire une recherche à l’aide du module ad hoc.

    Ebooks libres et gratuits : il possède un filtre géographique, on ne peut donc pas forcément télécharger tous les livres du catalogue. Les formats proposés selon les livres : epub, pdf, doc, odt, mobipocket, html (lecture en ligne), ereader, Sony reader, etc. Le site indique clairement si le livre est susceptible d’être encore couvert par le droit d’auteur. Recherche par titre ou mots du titre et par des listes déroulantes : auteurs, catégorie et genre. Indique la date de parution du livre sur le site.

    Gallica : le site des numérisations de la BNF. On peut rechercher notamment par type de document : livres, manuscrits, cartes, images, sons, etc. et croiser par thème, langue. On peut lire le livre en ligne ou appuyer sur le bouton Téléchargement/Impression pour récupérer tout ou partie du fichier au format pdf, jpeg (seulement la page en cours) ou, selon les sources, texte. Le pdf est un « fac-simile » numérique, donc en fait une collection d’images des pages ce qui génère des fichiers plutôt lourds ; le texte quant à lui est livré en version brute de fonderie et ouvre un onglet dans le navigateur qui nécessite de le copier-coller dans un document texte. Le taux de reconnaissance de l’OCR pouvant énormément varier selon le document, il n’est, de fait, pas immédiatement utilisable sans un plus ou moins gros retravail et, évidemment, sans aucune illustration. Il y a aussi une collection grandissante d’epub à télécharger gratuitement.

    Wikisource : c’est la bibliothèque de Wikipédia. À l’accueil on peut voir les dernières entrées. Les recherches sont du même type que celles de l’encyclopédie. Selon les textes, on peut les lire en ligne, les récupérer au format pdf, epub ou mobi, ou pas.

    « Tak ne veut pas quʼon pense à lui, il veut quʼon pense », Terry Pratchett, Déraillé.

    • [^] # Re: D'autres librairies numériques pour compléter

      Posté par  . Évalué à 2.

      J'ajoute deux liens que j'utilise pas mal :

      • Bibebook : 1700 ouvrages en français issus principalement du domaine public, relus et mis en page proprement, et mis à disposition dans différents formats (dont le epub, évidemment).
      • Standard Ebooks : des centaines (milliers ?) d'ouvrages en anglais issues du domaine public (principalement via le projet Gutemberg), relus et retravaillés avec ajouts de jolies couvertures (en utilisant des images du domaine public, évidemment). Les epub générés sont eux aussi mis dans le domaine public (CC0).
  • # Chouette projet

    Posté par  . Évalué à 4.

    Merci, ca m'a permis de découvrir un peu le go en lisant ton code. C'est bien documenté et bien structuré.

    Si je comprend bien tu indexes en full text dans sqlite des … méta-données embarqués dans les fichiers.

    Mais quid, si on n'a pas taggué ses fichiers ? On ne récupère rien me semble t'il. As-tu prévu d'indexer en plein texte sur le contenu des epubs ?

    Et sinon une autre alternative à "Calibre Content Server" pour publier ses ebooks qui réutilise la même db:
    https://github.com/janeczku/calibre-web

    • [^] # Re: Chouette projet

      Posté par  . Évalué à 0.

      Merci du retour!
      C'est tout à fait ça oui, l'indexation extrait les méta-données des fichiers epub.

      Si les méta-données sont manquantes, et bien tu n'as rien :D. Il n'y a pas d'indexation sur le contenu.

      Habituellement avant de verser le fichier sur le serveur où il sera indexé je vérifie les tags et je renomme le fichier en auteur_titre.epub pour le classer plus facilement.
      J'utilise epub-tools pour ça.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.