Granola : configuration des modules du noyau et d’un service Systemd
Faut-il vraiment encore présenter Granola ? Connu pour être un petit programme écologique qui me fait un peu rire, pour moi c’est de la geekerie du pauvre (mais de la bonne geekerie du pauvre) cherchant à laisser souffler sa facture d’électricité – un peu, c’est toujours mieux que rien – s’il ne la produit pas lui-même, encore que ça ne serait pas une excuse pour un peu veiller à la consommation d’énergie de ses systèmes informatiques.
Granola, donc, réduit la fréquence du processeur (grâce à cpupower
ou le démodé cpufrequtils
) en fonction de l’utilisation et de plages horaires prédéfinies. Chose que vous pouvez parfaitement obtenir par vous-mêmes via quelques scripts bien placés, mais passons, l’idée ici étant de rendre la manipulation automatisée et surtout abordable pour le novice.
Passant outre l’installation, procédé simple que quelques uns se sentent malgré tout d’expliquer (je ne vise personne, évidemment, il est juste inutile de répéter la chose une fois de plus) et surtout bien trop spécifique à chaque distribution, je vais me concentrer sur un point qui m’a dérangé plus que de raison lors de mon passage exclusif à systemd : pas de service présent avec le paquet, à mon grand désarroi. Qu’à cela ne tienne, haut les cœurs !
Notez avant tout qu’il faudra activer les modules acpi-cpufreq
et cpufreq_userspace
, compris dans le paquet cpupower
qu’il vous faudra donc installer. Pour la session courante, rien de plus simple qu’un modprobe
(modprobe acpi-cpufreq
, etc…), mais pour un lancement à chaque démarrage, il faudra inscrire cela dans un fichier. Sur ma Arch Linux, j’ai créé le fichier /etc/modules-load.d/cpufreq.conf
comprenant lesdits modules.
acpi-cpufreq
cpufreq_userspace
M’inspirant (un peu fortement) d’un paquet AUR hélas déprécié (et orphelin, note à moi même : penser à l’adopter) et, surtout, dysfonctionnel, je me suis retroussé les manches et j’ai pondu le fichier /usr/lib/systemd/system/granola.service
:
[Unit]
Description=Granola Core Daemon
After=systemd-user-sessions.service
[Service]
ExecStart=/usr/sbin/granola
[Install]
WantedBy=multi-user.target
Ne reste plus qu’à l’activer d’un systemctl enable granola.service
, et le lancer d’un systemctl start granola.service
.
Nota bene : je ne suis pas encore parvenu à faire fonctionner le programme granola-connect
(qui ne m’intéresse pas, mais qui sait, peut-être cela pourra-t-il servir à d’autres), je m’y consacrerai un jour, promis.