{{tag> epub ebook matériel bibliothèque livre e-book}}
----
====== Lecteur d'ebook Kobo ======
Cette page ne semble plus à jour. Faites attention si vous décidez de suivre les indications de celle-ci.
Le Kobo by Fnac (Kobo touch) est un ebook reader (une liseuse électronique en français) né de l'association de Kobo, fabricant d 'ebook reader et distributeur d'ebooks et de la Fnac, qui utilise la technologie Eink.
Il dispose du wifi et d'une capacité de 2Go (1400Mo utilisables) et d'un slot microSD afin d'augmenter sa capacité de stockage.
Il est possible de télécharger des ebooks gratuits et payants (ceux-ci avec un DRM donc non copiables), sur la boutique en ligne Kobo ou le site de la Fnac. L'ajout se fera alors automatiquement lors de la synchronisation, après installation du logiciel gratuit Kobo Desktop.
Mais il est également possible de télécharger des ebooks sur d'autres sites que ces deux derniers, et de copier/coller les ebooks directement dans le Kobo.
Le Kobo est compatible avec les ebooks aux formats .epub et .pdf.
===== Installation de Kobo Desktop =====
Kobo ne propose pas le logiciel pour Linux. Cela est bien problématique car c'est avec ce logiciel que s'effectuent les mises à jour, la synchronisation des achats sur les serveurs Kobo et Fnac. De plus il n'est pas possible d'utiliser le wifi tant que l'appareil n'est pas enregistré sur Kobo Desktop.
==== Téléchargement ====
Le paquet kobo-desktop.deb est téléchargeable [[http://www.bloguelinux.ca//wp-content/uploads/kobo/kobo-desktop.deb|ici]].
==== Installation ====
Ne fonctionne pas directement sur architecture 64bits
Après avoir téléchargé le paquet kobo-desktop.deb, ouvrez le terminal et lancez:
''sudo dpkg -i kobo-desktop.deb''
En 64 bits : voir ceci [[http://ubuntuforums.org/showpost.php?p=11232322&postcount=9]].
Tout fonctionne, sauf qu'il faut un autre paquet sur Ubuntu 12.04 : libicu44. Vous pouvez la télécharger sur [[https://launchpad.net/ubuntu/precise/i386/libicu44/4.4.2-2]]. À part ça tout fonctionne parfaitement.
Une fois l'installation effectuée, vous pouvez lancer le Kobo Desktop via le menu (rubrique Autres) et brancher votre Kobo touch pour le configurer.
Un petit guide très simple d'installation de Kobo Desktop sur une architecture 64 bits existe aussi à cette adresse :
[[http://www.bloguelinux.ca/kobo-mise-a-jour-du-firmware-sous-linux/]]
Kobo Desktop sur machines x86 Ubuntu 12.04, 12.10, bibliothèques libzip1 libssl0.9.8 :
[[http://nicofonk.fr/index.php?tag/ubuntu/]]
erreur :// /usr/local/Kobo/Kobo: error while loading shared libraries: libicuuc.so.44: cannot open shared object file: No such file or directory//
J'ai installé libicuuc.so.44 (pour Ubuntu 11.10 (?) depuis : [[http://pkgs.org/ubuntu-11.10/ubuntu-updates-main-i386/libicu44_4.4.2-2ubuntu0.11.10.1_i386.deb/download/]]
L'onglet "liseuse" du Kobo Desktop ne semble pas fonctionnel sous Ubuntu 12.10; il reste grisé; essais réalisés pour ce qu'il en est des aides et problèmes Kobo Desktop depuis un Kobo Touch version 2.0.3
===== Activation du Kobo sans installer Kobo Desktop =====
Il est possible d'activer le Kobo sans avoir à installer Kobo Desktop, sans passer par Windows et sans même créer de compte Kobo. Pour cela, il suffit de :
- taper la commande suivante dans un terminal: sudo apt-get install sqlite3
- relier le Kobo à l'ordinateur Ubuntu via USB
- monter le Kobo (monté automatiquement normalement)
- noter le point de montage utilisé (ici, on suppose /media/KOBOeReader)
A partir de Trusty 14.04, le point de montage évolue et passe de /media/KOBOeReader/ à /media/laurent/KOBOeReader/, ou laurent est le nom de l'utilisateur de la machine sous Ubuntu.
une variante par interface graphique consiste à installer un éditeur SQL comme DBeaver et de créer une connexion SQLite en indiquant le fichier .kobo/KoboReader.sqlite comme source. La suite de la procédure est similaire.
==== Kobo touch/mini ====
echo "insert into user values('foo', 'foo', 'foo', 'foo', 'foo');" | sqlite3 /media/KOBOeReader/.kobo/KoboReader.sqlite
Le procédé a été testé avec succès sur un Kobo Touch acheté aux USA. Ce [[http://a3nm.net/blog/fnacbook_kobo_hacking.html|blog en anglais]] indique qu'il fonctionne également pour les Kobo Fnac (je confirme sur un kobo mini).
==== Kobo glo ====
Le procédé fonctionne avec les Kobo Glo (Fnac) mais il faut utiliser l'instruction suivante:
echo "insert into user values('foo', 'foo', 'foo', 'foo', 'foo', 'foo', 'foo');" | sqlite3 /media/KOBOeReader/.kobo/KoboReader.sqlite
Sur un Kobo Touch Mark 3, donc Kobo "original" acheté à la Fnac en début 2012, c'est la commande à sept paramètres qui est acceptée comme pour le Glo (10/12/2013 après régression au firmware 2.4.0b).
Attention pour une Kobo Glo achetée en décembre 2015 ne fonctionne pas ! La commande suivante fera l'affaire:
echo "insert into user values('foo', 'foo', 'foo', 'foo', 'foo', 'foo', 'foo', '0', '0', '0', '0', '0', '0');" | sqlite3 /media/TON_USER/KOBOeReader/.kobo/KoboReader.sqlite
==== Kobo glo HD ====
Manipulation assez simple (attention, remplacer "user" par le nom d'utilisateur sous Ubuntu)
echo "insert into user values('foo', 'foo', 'foo', 'foo', 'foo', 'foo', 'foo');" | sqlite3 /media/user/KOBOeReader/.kobo/KoboReader.sqlite
sqlite3 /media/user/KOBOeReader/.kobo/KoboReader.sqlite
sqlite> INSERT INTO user(UserID,UserKey) VALUES('1','');
sqlite> .exit
Ensuite il suffit de déconnecter la Kobo du PC, et voilà !
Kobo Glo HD achetée en juillet 2016 à la FNAC, succès de la commande suivante après plusieurs essais (La liseuse se monte après le choix de la langue puis de l'installation sans accès wifi. Attention remplacer l'UserID de l'exemple - ici 'abcdef12-3456-789a-bcde-f123456789ab' - par le votre, affiché par la commande .dump user de sqlite) :
sqlite3 KoboReader.sqlite
sqlite> .dump user
BEGIN TRANSACTION;
CREATE TABLE user(UserID TEXT NOT NULL,UserKey TEXT NOT NULL,UserDisplayName TEXT,UserEmail TEXT,___DeviceID TEXT,FacebookAuthToken TEXT,HasMadePurchase BIT DEFAULT FALSE, IsOneStoreAccount BIT DEFAULT FALSE, IsChildAccount BIT DEFAULT FALSE, RefreshToken TEXT, AuthToken TEXT, AuthType TEXT, Loyalty BLOB,PRIMARY KEY (UserID));
INSERT INTO "user" VALUES('abcdef12-3456-789a-bcde-f123456789ab','abcdef12-3456-789a-bcde-f123456789ab','demobundle06_13@kobo.com','demobundle06_13@kobo.com',NULL,NULL,'false','true','false',NULL,NULL,NULL,NULL);
sqlite> INSERT INTO "user" VALUES('Linux User','Linux User',NULL,NULL,NULL,NULL,'false','false','false',NULL,NULL,NULL,NULL);
sqlite> DELETE from user WHERE UserID="abcdef12-3456-789a-bcde-f123456789ab";
sqlite> .dump user
PRAGMA foreign_keys=OFF;
BEGIN TRANSACTION;
CREATE TABLE user(UserID TEXT NOT NULL,UserKey TEXT NOT NULL,UserDisplayName TEXT,UserEmail TEXT,___DeviceID TEXT,FacebookAuthToken TEXT,HasMadePurchase BIT DEFAULT FALSE, IsOneStoreAccount BIT DEFAULT FALSE, IsChildAccount BIT DEFAULT FALSE, RefreshToken TEXT, AuthToken TEXT, AuthType TEXT, Loyalty BLOB,PRIMARY KEY (UserID));
INSERT INTO "user" VALUES('Linux User','Linux User',NULL,NULL,NULL,NULL,'false','false','false',NULL,NULL,NULL,NULL);
COMMIT;
sqlite> .exit
==== Kobo aura ====
Selon la version du système, le procédé peut attendre non pas 7 mais 9 paramètres comme celle-ci-dessous :
echo "insert into user values('foo', 'foo', 'foo', 'foo', 'foo', 'foo', 'foo', 'foo', 'foo');" | sqlite3 /media/laurent/KOBOeReader/.kobo/KoboReader.sqlite
Le présent sujet prend un intérêt accru parce que Kobo vient de resserrer fortement les contraintes empêchant une utilisation indépendante de sa liseuse : les mises à jour du Kobo Desktop et du firmware sous Windows sont à présent imposées, avec des services commerciaux qui apparaissent en page d'accueil au lieu des livres. Les réseaux sociaux, les fonctionnalités indiscrètes sont difficiles ou impossibles à désactiver, de sorte que le passage par Linux devient quasi indispensable lorsqu'on veut régresser vers une version encore indépendante du logiciel de la liseuse (<= 2.4 ou 2.5).
==== Kobo Clara HD ====
echo "INSERT INTO user(UserID,UserKey) VALUES('1','');" | sqlite3 /media/$USER/KOBOeReader/.kobo/KoboReader.sqlite
==== Kobo nia ====
echo "INSERT INTO user(UserID, UserKey) VALUES('1','');" | sqlite3 /media/$USER/KOBOeReader/.kobo/KoboReader.sqlite
==== Procédure plus générale ====
Voici une procédure qui va permettre de suivre les évolutions de la Kobo (ou autre) :
Avant tout, on est prudent, on fait une petite sauvegarde :
Linux-prompt> export MYUSERNAME=`whoami`
Linux-prompt> cd /media/${MYUSERNAME}/KOBOeReader
Linux-prompt> cp -R .kobo .kobo_save
maintenant on va regarder la structure de la table :
Linux-prompt> cd .kobo
Linux-prompt> sqlite3 KoboReader.sqlite
SQLite version 3.8.2 2013-12-06 14:53:30
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> .schema user
CREATE TABLE user(UserID TEXT NOT NULL,UserKey TEXT NOT NULL,UserDisplayName TEXT,UserEmail TEXT,___DeviceID TEXT,FacebookAuthToken TEXT,HasMadePurchase BIT DEFAULT FALSE,PRIMARY KEY (UserID));
sqlite> select * from user;
dec75cef-493f-4da1-af8d-d7a7183fa3e5|0a0e4b93-68fd455ab716-039e7c973dce|demobundle06_13@kobo.com|demobundle06_13@kobo.com|||false
Avec cette description de la table on va entrer une ligne bidon qui va contenter la kobo et permettre de passer la procédure d'enregistrement via le web. Les champs suggérés ici doivent être adaptés en fonction de la description de la table user obtenue à l'étape précédente. J'ai constaté que la ligne suivante fonctionnait. Elle a l'avantage de bien se repérer.
sqlite> insert into user values ('UserBidon','KeyBidon','DisplayBidon','MailBidon','DeviceBidon','FaceBidon','PurchBidon');
Maintenant on vérifie :
sqlite> select * from user where userId='UserBidon';
UserBidon|KeyBidon|DisplayBidon|MailBidon|DeviceBidon|FaceBidon|PurchBidon
C'est OK, on quitte sqlite
sqlite> .exit
Linux-prompt>
Maintenant redémarrez la kobo est utilisez la comme une clef mémoire USB. Si vous êtes avare de mémoire, détruisez la sauvegarde mais pour 24Mega, est-ce bien utile ?