Adapter Asahi Linux à mes besoins : un mode lecture e-ink fait maison (Série « Asahi » 2/2)

Logo Asahi Linux kawaii en halftone noir et blanc

Cette semaine, j’ai pris le temps de découvrir et surtout d’utiliser Asahi Linux sur mon Mac. Très vite, une question s’est posée : allais-je retrouver ici des réglages proches du mode e-ink que j’avais mis en place sous macOS ? La réponse est non : les options d’accessibilité de KDE Plasma, l’environnement de bureau que j’utilise sur Asahi, ne le permettent pas.

Pourquoi j’y tenais autant

Avec les heures que je passe devant mon écran, j’ai le sentiment que ce mode e-ink m’agresse moins les yeux (et le cerveau!). J’ai déjà posé un filtre mat sur l’écran de mon Mac, qui règle les problèmes de brillance et de reflets gênants. Mais j’en voulais plus.

Linux est réputé pour au moins deux choses : il est libre et gratuit, et il permet d’adapter le système à ses propres besoins. C’était le moment de le vérifier.

Une IA, oui, mais pas n’importe comment

Je n’ai pas de compétences en développement, même si je trouve cela beau de voir du code (bah oui). J’ai donc mené ce projet avec Claude, un bien meilleur développeur que moi ! Il s’inscrit dans la démarche >slow_prompt, que je suis au quotidien, tant dans ma vie personnelle que professionnelle. Je n’y déroge pas. Selon la nature du projet, j’utilise soit Claude, soit Lumo ; pour celui-ci, mon expérience m’a montré que Claude excelle.

Surtout, mon idée était très claire avant même d’ouvrir la conversation : disposer dans Asahi d’un réglage « Lecture e-ink » proposant trois modes, noir et blanc, couleurs claires (délavées) et couleurs pleines. Avec, dans tous les cas, un blanc légèrement texturé façon papier, davantage de contraste, et des couleurs plus ou moins délavées selon le mode choisi.

D’abord réfléchir par soi-même

Avec une idée précise, on économise du temps d’IA : moins d’allers-retours, c’est aussi moins de calcul, et donc moins d’énergie consommée. Cette étape est essentielle : c’est l’objet de la première question du >slow_prompt, « Ai-je d’abord réfléchi par moi-même ? ». Autrement dit, pour ce projet : « Est-ce que je sais précisément ce que je veux ? »

Oui, je le sais. J’utilise même chaque jour ce type de réglage sur mon LeitzPhone (Xiaomi), avec l’option d’accessibilité « Mode lecture ». Elle propose trois réglages : la température de couleur, la texture (le grain) et les couleurs (noir et blanc, couleurs claires ou couleurs pleines). Alors pourquoi réinventer quelque chose qui fonctionne déjà ?

Évidemment, le rendu devait être testé, puis adapté à l’écran du Mac et à l’apparence d’Asahi.

Capture d'écran option Lecture smartphones Xiaomi
Le « Mode lecture » des smartphones Xiaomi, avec ses trois réglages visibles (température, texture, couleurs).

Un projet en deux temps

1. Créer le composant et le tester. J’ai d’abord fait coder un composant « Lecture e-ink » qui s’ajoute au panneau des miniatures, là où se trouvent l’heure, le réseau, etc. Puis je l’ai utilisé pendant quelques jours, en conditions réelles. Jouer notamment avec les modes et les curseurs (le curseur « contraste » n’existait pas dans la version 1), selon mon activité (lecture, vidéo, travail sur mon site…).

Composant Lecture e-ink Asahi
> Barre du bureau Asahi avec l'icône du composant « Lecture e-ink »
Capture de la page Mastodon d'Asahi Linux avec le mode Lecture e-ink couleurs pleines activé
> Capture de la page Mastodon d'Asahi Linux avec le mode Lecture e-ink couleurs pleines activé
Capture de la page Mastodon d'Asahi Linux avec le composant Lecture e-ink sur le bureau KDE Plasma, en mode couleurs claires
> Capture de la page Mastodon d'Asahi Linux avec le mode Lecture e-ink couleurs claires activé
Capture de la page Mastodon d'Asahi Linux avec le mode Lecture e-ink noir et blanc activé
> Capture de la page Mastodon d'Asahi Linux avec le mode Lecture e-ink noir et blanc activé

2. L’affiner. J’ai ensuite optimisé le composant, avec son démarrage automatique à l’ouverture de la session et l’ajout d’un curseur « Contraste ». En parallèle, j’ai ajusté le thème de mon système, pour que les deux se complètent au mieux. J’ai notamment supprimé l’ombre autour des fenêtres et créé un thème « Breeze e-ink » qui ajoute un cadre noir autour des fenêtres et des champs de sélection, pour plus de contraste et de visibilité.

Pour information, ce thème n’est pas inclus dans l’archive téléchargeable ci-dessous.

Capture d'écran du bureau Asahi Linux configuré avec le thème couleurs Breeze e-ink
> Capture d'écran du bureau Asahi Linux configuré avec le nouveau thème couleurs "Breeze e-ink"

Ce que je retiens

Ce projet m’a tenue en haleine quelques soirées ! J’en retiens trois choses :

  • Quel luxe de disposer d’un système léger et paramétrable à l’envi !
  • Quelle facilité d’utiliser l’IA pour « développer » un petit quelque chose en plus pour son confort quotidien.
  • Et le plaisir que j’ai à faire ce genre de choses.

> Le mode lecture e-ink, côté technique

Vous trouverez ci-dessous une partie technique, ainsi que les fichiers à télécharger si vous souhaitez utiliser ce composant dans votre propre environnement Linux. 

Ce que fait le composant.

« Lecture e-ink » est un effet pour KWin, le gestionnaire de fenêtres de KDE Plasma. Il agit comme un filtre posé sur tout l’écran : il renforce le contraste, désature les couleurs selon le mode choisi, ajoute un léger grain de papier dans les zones claires et réchauffe la teinte du blanc. Il est accompagné d’un widget pour la barre des tâches et d’une commande eink, utilisable dans le terminal ou avec des raccourcis clavier. À l’ouverture de la session, il s’active automatiquement en mode « couleurs claires ».

Les réglages disponibles :

  • trois modes : noir et blanc, couleurs claires, couleurs pleines ;
  • la température du papier, de neutre à chaud ;
  • la texture du papier, visible uniquement dans les zones claires ;
  • le contraste, volontairement sans effet en mode couleurs pleines, comme sur mon téléphone.

Comment il est construit.

Je ne suis pas partie de zéro : l’effet est dérivé de la « Correction du daltonisme » intégrée à KWin, écrite par Fushan Wen. Le principe : un petit programme, appelé shader, recalcule la couleur de chaque pixel juste avant l’affichage. Claude a écrit le code ; je l’ai testé au quotidien, j’ai signalé ce qui n’allait pas, et nous l’avons ajusté ensemble.

Un filtre, pas une liseuse.

Un écran rétroéclairé reste un écran rétroéclairé : le composant change l’apparence de l’image, pas la nature de la lumière émise. Je ne revendique donc aucun bénéfice pour la santé visuelle.

Configuration testée.

MacBook Pro M3 Pro sous Fedora Asahi Remix, KDE Plasma 6.7.5, session Wayland. Le composant devrait fonctionner sur d’autres configurations Plasma 6 sous Wayland, mais je ne l’ai pas vérifié. Vos retours sont les bienvenus.

Installation en bref (Fedora).

Il faut ouvrir un terminal, mais aucune compétence en programmation n’est nécessaire. Les instructions complètes, y compris la désinstallation, se trouvent dans le fichier README de l’archive.

  1. Installer les outils de compilation :
				
					sudo dnf install cmake extra-cmake-modules gcc-c++ kwin-devel \
  kf6-kconfig-devel kf6-kcoreaddons-devel qt6-qtbase-devel \
  libepoxy-devel libdrm-devel vulkan-loader-devel \
  qt6-qtdeclarative-devel kf6-kwindowsystem-devel
				
			
  1. Compiler et installer l’effet, depuis le dossier décompressé :
				
					cmake -B build -DCMAKE_INSTALL_PREFIX=/usr
cmake --build build
sudo cmake --install build
				
			
  1. Installer la commande eink et le widget :
				
					bash installer.sh
				
			
  1. Se déconnecter, puis se reconnecter.
  2. Ajouter le widget « Lecture e-ink » à la barre des tâches (clic droit sur la barre, puis « Ajouter ou gérer des composants graphiques »). Le nouveau composant devrait se trouver au début de la liste.
Bureau et liste des composants graphiques disponibles avec Lecture e-ink
> Bureau avec l'affichage de la liste des composants graphiques
Composant "Lecture e-ink"
> Utiliser la zone de recherche si nécessaire et cliquer une fois sur le composant "Lecture e-ink"

! Important : après chaque mise à jour majeure de KDE Plasma, l’effet doit être recompilé (étape 2).

Télécharger.

Licence GPL-2.0-or-later.

Pour vérifier que l’archive n’a pas été modifiée, ouvrez un terminal dans le dossier où vous l’avez téléchargée et lancez sha256sum einkreader-1.0.zip : la suite de caractères affichée doit être identique à celle ci-dessous.

Empreinte SHA-256 de l’archive, pour vérifier son intégrité : 

				
					1a736ea297903f3d3e7cb8f5341c8d0613672f93d93b23982610f5fc1501516d
				
			

Pourquoi pas GitHub, ni Codeberg ?

J’aurais aimé publier ce composant sur une plateforme de partage de code, avec historique des versions et suivi des problèmes. Mon premier choix était Codeberg, une alternative associative et européenne. Mais depuis l’été 2026, ses conditions d’utilisation n’acceptent plus les projets dont le code est principalement écrit par une IA. Je respecte ce choix, et je ne vais pas le contourner : mon code a été écrit avec Claude, je le dis ouvertement. Restait GitHub, qui appartient à Microsoft et qui, depuis avril 2026, utilise par défaut les interactions avec son assistant Copilot pour entraîner ses modèles, sauf refus explicite. Pour l’instant, je préfère ne pas y déposer mon travail. J’ai donc choisi la solution la plus simple et la plus indépendante : l’archive est hébergée ici, sur hu-tech.ch, avec son empreinte SHA-256 pour vérifier qu’elle n’a pas été modifiée. Ce choix n’est pas figé ; si une plateforme cohérente avec mes valeurs accepte un jour ce type de projet, je l’y publierai volontiers.

Share the Post:

Related Posts