sysutils/conky

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.

Mandatory screenshot: