1. Add support for OpenBSD sensors framework when checking if this PC
   is a laptop.
Index: src/core/utilities.cpp
--- src/core/utilities.cpp.orig
+++ src/core/utilities.cpp
@@ -71,6 +71,14 @@
 #ifdef Q_OS_DARWIN
 #include <sys/resource.h>
 #endif
+#ifdef Q_OS_OPENBSD
+#include <unistd.h>
+#include <errno.h>
+#include <sys/time.h>
+#include <sys/sensors.h>
+#include <sys/types.h>
+#include <sys/sysctl.h>
+#endif
 
 #ifdef Q_OS_DARWIN
 #include <QProcess>
@@ -705,9 +713,25 @@ bool IsLaptop() {
     }
   }
   return false;
-#else
+#elif defined(Q_OS_OPENBSD)
+  struct sensordev snsrdev;
+  size_t sdlen = sizeof(snsrdev);
+  int mib[3] = { CTL_HW, HW_SENSORS, 0 };
+  for (int i = 0; ; ++i) {
+    mib[2] = i;
+    if (::sysctl(mib, 3, &snsrdev, &sdlen, NULL, 0) == -1) {
+      if (errno == ENOENT)
+        break;
+      if (errno == EAGAIN)
+        i--;
+      continue;
+    }
+    if (::memcmp("acpibat", snsrdev.xname, 7) == 0)
+      return true;
+  }
   return false;
 #endif
+  return false;
 }
 
 QString SystemLanguageName() {
