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.
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.
Le paquet kobo-desktop.deb est téléchargeable ici.
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.
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/
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 :
sudo apt-get install sqlite3
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.
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 blog en anglais indique qu'il fonctionne également pour les Kobo Fnac (je confirme sur un kobo mini).
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
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à !
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
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).
echo "INSERT INTO user(UserID,UserKey) VALUES('1','');" | sqlite3 /media/$USER/KOBOeReader/.kobo/KoboReader.sqlite
echo "INSERT INTO user(UserID, UserKey) VALUES('1','');" | sqlite3 /media/$USER/KOBOeReader/.kobo/KoboReader.sqlite
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 ?