sysutils/conky
by Emile `iMil' Heitor - 2012-05-13
Tout ça, c’est la faute à Guigui2. Et à Nils aussi.
Y’a quoi, 2/3 semaines, ces deux là me disent que ce serait tellement bieeeen si on avait conky dans pkgsrc et que patati le challeeenge et que patata tellement c’est beau tellement y’a des thèmes de ouf et j’en passe et des meilleures.
Et je regarde.
Et c’est l’engrenage.
Deux semaines plus tard donc, je viens d’importer sysutils/conky
dans pkgsrc current avec le support des sensors usuels, CPU (SMP), load, mémoire, réseau, disque ainsi que batterie et température. Et ces deux derniers, c’étaient pas les plus simples.
En effet, si par exemple FreeBSD dispose de sysctl fort conviviaux du type hw.acpi.battery.time
ou hw.acpi.battery.life
, bin nous non. Nous on préfère se faire chier avec envsys(3) dont l’utilisation est expliquée de manière parfaite par ce commentaire trouvé dans sysutils/torsmo:
Ça résume assez bien la situation. Mais comme je suis un peu sado-maso sur les bords, et que je souhaitais présenter un peu plus que le pourcentage de charge de la batterie, je me suis lancé dans l’écriture d’une petite fonction qui simplifie grandement l’accès aux ressources d’envsys. En gros ça donne ça:
On utilise la fonction de cette façon: Devquery dq_ac = { P_BOOL, “acpiacad0”, “connected”, “cur-value” };
if (envsys_get_val(dq_ac, (void *)&connected) < 0)
Dans cet exemple, connected
sera placé à 1 si l’élément acpiacad0
est connecté, 0 autrement.
Le package n’est pas encore parfait, mais il est désormais tout à fait utilisable. Upstream a été contacté et l’integration de mes patchs est en cours.