La liseuse Kobo Libra H2O¶

La liseuse Kobo Libra H2O, en mode nuit, affichant « Seconde Fondation », d’Isaac Asimov.¶
Ayant fait l’acquisition de cette liseuse, il fallait passer par quelques étapes avant de pouvoir réellement m’en servir (compter 171 € pour la liseuse et 16,99 € pour la coque, toutes deux neuves).
Pour la suite de l’article, la Kobo est vue par le système (GNU/Linux) en tant que /dev/sdc et ces variables d’environnement sont définies suivant l’emplacement du dossier dans lequel elle est montée :
export KOBO_ROOT="/media/${USERNAME}/KOBOeReader"
export KOBO_DIR="${KOBO_ROOT}/.kobo"
export KOBO_VERSION='4.38.21908'
export KOBO_PATCH_VERSION='84'
export KOBO_NM_VERSION='0.5.4'
🚀 Premier Démarrage¶
Quelques étapes que j’ai préféré faire, mais dont aucune n’est indispensable. Brancher le cordon USB à l’ordinateur. Lorsque la liseuse démarre, choisir « Vous n’avez pas de réseau Wi-Fi ? ». La liseuse est détectée et montée. La démonter. Faire la sauvegarde : Remonter la liseuse. Faire une copie du dossier Outrepasser la demande d’enregistrement pour jouir de la liseuse sans avoir à créer de compte en ligne : Supprimer le contenu inclus par défaut : Virer le logo du revendeur :💿 Sauvegarde¶
dd bs=4M conv=sync,noerror status=progress \
if=/dev/sdc \
of="kobo-$(date '+%Y%m%d')-full.dd"
.kobo :cp -rv "${KOBO_DIR}" "${KOBO_DIR}-$(date '+%Y%m%d')"
🔓 Compte Kobo/Rakuten¶
sqlite3 "${KOBO_DIR}/KoboReader.sqlite" \
'INSERT INTO user(UserID, UserKey) VALUES("1", "")'
♻️ Purge Initiale¶
sqlite3 "${KOBO_DIR}/KoboReader.sqlite" \
'DELETE FROM content WHERE ___UserID != "adobe_user" ; VACUUM'
™️ Logo¶
printf '[General]\naffiliate=Kobo\n' > "${KOBO_DIR}/affiliate.conf"
⚙️ Mettre à Jour le Firmware¶
Voici la procédure pour mettre à jour le firmware de la Kobo.
Télécharger et installer le firmware :
wget "https://ereaderfiles.kobo.com/firmwares/kobo7/Aug2023/kobo-update-${KOBO_VERSION}.zip" \ && unzip "kobo-update-${KOBO_VERSION}.zip" -d "${KOBO_DIR}" \ && sync
Éjecter la liseuse et patienter.
🎛️ Hacker le Firmware¶
Il y a possibilité de personnaliser quelques options et comportements de la liseuse.
Suivre l’étape précédente en entier et conserver les fichiers pour la suite.
Télécharger le patcheur et copier le firmware :
wget "https://github.com/pgaskin/kobopatch-patches/releases/download/v${KOBO_PATCH_VERSION}/kobopatch_${KOBO_VERSION}.zip" \ && unzip "kobopatch_${KOBO_VERSION}.zip" \ && cp -v "kobo-update-${KOBO_VERSION}.zip" src
Éditer les fichiers
src/*.yamlpour activer les patches désirés. Ou éditez le fichierkobopatch.yaml. Voici mes options :Fichier : kobopatch.yaml¶version: 4.38.21908 in: src/kobo-update-4.38.21908.zip out: out/KoboRoot.tgz log: out/log.txt patchFormat: kobopatch patches: src/nickel.yaml: usr/local/Kobo/nickel src/libadobe.so.yaml: usr/local/Kobo/libadobe.so src/libnickel.so.1.0.0.yaml: usr/local/Kobo/libnickel.so.1.0.0 src/librmsdk.so.1.0.0.yaml: usr/local/Kobo/librmsdk.so.1.0.0 overrides: src/nickel.yaml: Dictionary pop-up - increase available text area: yes Increase library cover size: yes Custom collection/author header title font: yes Reduce new header/footer height: yes Series list increase cover thumbnails: yes New home screen subtitle custom font: yes Remove footer (row3) and increase cover size on new home screen: yes Change TOC level indentation: yes src/libadobe.so.yaml: Remove PDF map widget shown during panning: yes src/libnickel.so.1.0.0.yaml: Dictionary text font-family/font-size/line-height: yes # custom values inside Custom navigation menu page number text: yes Force user line spacing in ePubs (part 1 of 2): yes Force user font-family in ePubs (Part 1 of 2): yes Shorten dictionary entry not found message: yes Replace adobe page numbers toggle with invert screen: yes Allow USB storage even when device locked: yes Remove beta features not supported text: yes Disable all tutorial dialogs: yes Remove recommendations (row1col2) from home screen: yes Never show Kobo Plus, wishlist, and points SmartLinks: yes Remove title from reading header/footer: yes Don't uppercase header/footer text and change page number text: yes FeatureSettings - BookSpecificStats: yes src/librmsdk.so.1.0.0.yaml: Force user line spacing in ePubs (Part 2 of 2): yes Force user font-family in ePubs (Part 2 of 2): yes
Modifications apportées à
src/libnickel.so.1.0.0.yaml:@@ -467,7 +467,7 @@ Un-force link decoration in KePubs: # The following patch(es) were made by jackie_w Dictionary text font-family/font-size/line-height: - - Enabled: no + - Enabled: yes - Description: | This patch allows you to to customise the appearance of the text in the pop-up and full-screen dictionary widgets. @@ -531,5 +531,6 @@ Dictionary text font-family/font-size/li #- ReplaceString: {Offset: 54, Find: "serif ", Replace: "'KBJ-TsukuMin Pr6N RB'", MustMatchLength: yes} #- ReplaceString: {Offset: 54, Find: "serif ", Replace: "'KBJ-UDKakugo Pr6N M'", MustMatchLength: yes} #- ReplaceString: {Offset: 54, Find: "serif ", Replace: "'AR UDJingxihei'", MustMatchLength: yes} + - ReplaceString: {Offset: 54, Find: "serif ", Replace: "FreeSerif", MustMatchLength: yes} # Un-comment and edit next line to change font-size
Afin d’appliquer ces modification à votre fichier, voici deux commandes :
sed -i '470s/no/yes/' src/libnickel.so.1.0.0.yaml \ && patch src/libnickel.so.1.0.0.yaml <<'EOF' 533a534 > - ReplaceString: {Offset: 54, Find: "serif ", Replace: "FreeSerif", MustMatchLength: yes}
Patcher et installer le firmware modifié :
./kobopatch.sh \ && cp -v out/KoboRoot.tgz "${KOBO_DIR}" \ && sync
Éjecter la liseuse. C’est terminé.
📘 Dictionnaire¶
Installons le meilleur dictionnaire du marché, du projet reader.dict, qui est basé sur le Wiktionnaire :
mkdir -pv "${KOBO_DIR}/custom-dict/" \
&& wget 'https://www.reader-dict.com/file/fr/dicthtml-fr-fr.zip' \
-O "${KOBO_DIR}/custom-dict/dicthtml-fr-fr.zip" \
&& sync
Astuce
D’autres langues sont disponibles sur la page du projet reader.dict.
🔤 Police de caractères¶
Un police de caractères supportant un grand nombre de langues est préférable pour l’affichage des étymologies. FreeSerif en est une, du projet FreeFont :
wget 'http://ftp.gnu.org/gnu/freefont/freefont-ttf-20120503.zip' \
&& unzip freefont-ttf-20120503.zip \
&& pushd freefont-20120503 \
&& mv -v FreeSerif.ttf FreeSerif-Regular.ttf \
&& mv -v FreeSerifBold.ttf FreeSerif-Bold.ttf \
&& mv -v FreeSerifBoldItalic.ttf FreeSerif-BoldItalic.ttf \
&& mv -v FreeSerifItalic.ttf FreeSerif-Italic.ttf \
&& mkdir -pv "${KOBO_ROOT}/fonts" \
&& cp -v FreeSerif*.ttf "${KOBO_ROOT}/fonts" \
&& popd \
Aperçu avec le mot « fez »

Aperçu avec le mot « Zeus »

🎣 Sources¶
Un grand merci à BoboTraX pour le coup de main.
📜 Historique¶
Historique complet
- 2025-07-31
Mise à jour du firmware (
4.37.21582→4.38.21908) et des patches (v82→v84).- 2025-05-16
Mise à jour du lien de téléchargement du dictionnaire.
- 2025-03-27
Ajout du prix d’achat.
Petites corrections sémantiques par-ci, par-là.
- 2025-03-24
Mise à jour de la commande pour patcher le fichier
src/libnickel.so.1.0.0.yaml.- 2024-10-17
Déplacement de l’article depuis le blog.
Adaptation du nom du domaine pour le téléchargement du firmware (kbdownload1-a.akamaihd.net → ereaderfiles.kobo.com).
- 2023-07-06
Mise à jour du firmware (
4.34.20097→4.37.21582) et des patches (v79→v82).- 2022-11-10
Ajout de la section NickelMenu (via la variable d’environnement
KOBO_NM_VERSION, en version0.5.4).- 2022-10-19
Mise à jour du firmware (
4.33.19759→4.34.20097) et des patches (v78→v79).- 2022-07-22
Mise à jour du firmware (
4.31.19086→4.33.19759) et des patches (v74→v78).Ajout de la command
syncà la fin de chaque étape de copie vers la carte SD.- 2022-04-10
Mise à jour du firmware (
4.30.18838→4.31.19086) et des patches (v73→v74).Correction du lien de téléchargement du dictionnaire.
Utilisation des variables d’environnement
${KOBO_VERSION}et${KOBO_PATCH_VERSION}pour faciliter les mises à jour.- 2021-11-12
Mise à jour du firmware (
4.26.16704→4.30.18838) et des patches (v70→v73).- 2021-03-08
Relecture et revue du code.
Utilisation des variables d’environnement
${KOBO_ROOT}et${KOBO_DIR}pour faciliter les manipulations et améliorer la lisibilité.- 2021-03-07
Mise à jour du firmware (
4.25.15875→4.26.16704) et des patches (v69→v70).Ajout de la commande pour supprimer le contenu inclus par défaut.
- 2020-11-15
Mise à jour du firmware (
4.20.14622→4.25.15875) et des patches (v59→v69).Adaptation de l’emplacement du dictionnaire (.kobo/dict/ → .kobo/custom-dict/).
Ajout de la section police de caractères.
- 2020-04-04
Premier jet.