conky, at least on my machine, fails to get the CPU temperature. A change to freebsd.c improves the chances of finding something useful, although possibly not from ACPI: @@ -419,13 +423,14 @@ int temp; (void)fd; - if (GETSYSCTL("hw.acpi.thermal.tz0.temperature", temp)) { - fprintf(stderr, - "Cannot read sysctl \"hw.acpi.thermal.tz0.temperature\"\n"); - return 0.0; - } - - return KELVTOC(temp); + if (0 == GETSYSCTL("hw.acpi.thermal.tz0.temperature", temp)) + return KELVTOC(temp); + if (0 == GETSYSCTL("dev.cpu.0.temperature", temp)) + return KELVTOC(temp); + if (0 == GETSYSCTL("dev.amdtemp.0.core0.sensor0", temp)) + return KELVTOC(temp); + fprintf(stderr, "Cannot read sysctl for temperature\n"); + return 0.0; } static void get_battery_stats(int *battime, int *batcapacity, int *batstate, int *ac) {
I'm taking this bu report, since I took maintainership of the port. Thanks for reporting the issue. I'm going to include this patch after some testing.
A commit references this bug: Author: madpilot Date: Tue Oct 4 20:07:15 UTC 2016 New revision: 423301 URL: https://svnweb.freebsd.org/changeset/ports/423301 Log: Make conky try to get CPU temperature from more than just one sysctl. PR: 210235 Submitted by: walter@pelissero.de Changes: head/sysutils/conky/Makefile head/sysutils/conky/files/patch-src_freebsd.cc
Committed! Thanks.