summary refs log tree commit diff
diff options
context:
space:
mode:
authorCharles Strahan <charles@cstrahan.com>2017-05-23 17:56:00 -0400
committerCharles Strahan <charles@cstrahan.com>2017-06-13 18:51:36 -0400
commit3b1c4fce4fc18cd8ce51fc895527ecfa273d2761 (patch)
treed1decc45991f81daa19ddfcefc600216e7feae8f
parent631ec734eb74bfdd267fda595929492bd34cfcc2 (diff)
downloadnixlib-3b1c4fce4fc18cd8ce51fc895527ecfa273d2761.tar
nixlib-3b1c4fce4fc18cd8ce51fc895527ecfa273d2761.tar.gz
nixlib-3b1c4fce4fc18cd8ce51fc895527ecfa273d2761.tar.bz2
nixlib-3b1c4fce4fc18cd8ce51fc895527ecfa273d2761.tar.lz
nixlib-3b1c4fce4fc18cd8ce51fc895527ecfa273d2761.tar.xz
nixlib-3b1c4fce4fc18cd8ce51fc895527ecfa273d2761.tar.zst
nixlib-3b1c4fce4fc18cd8ce51fc895527ecfa273d2761.zip
psensor: init at 1.2.0
psensor is a graphical hardware monitoring application for Linux
-rw-r--r--pkgs/os-specific/linux/nvidia-x11/settings.nix41
-rw-r--r--pkgs/tools/system/psensor/default.nix33
-rw-r--r--pkgs/top-level/all-packages.nix4
3 files changed, 72 insertions, 6 deletions
diff --git a/pkgs/os-specific/linux/nvidia-x11/settings.nix b/pkgs/os-specific/linux/nvidia-x11/settings.nix
index 9c8f3f9cd74a..ddc190a08e66 100644
--- a/pkgs/os-specific/linux/nvidia-x11/settings.nix
+++ b/pkgs/os-specific/linux/nvidia-x11/settings.nix
@@ -1,19 +1,44 @@
 nvidia_x11: sha256:
 
-{ stdenv, lib, fetchurl, pkgconfig, m4, jansson, gtk2, dbus, gtk3, libXv, libXrandr, libvdpau
+{ stdenv, lib, fetchurl, pkgconfig, m4, jansson, gtk2, dbus, gtk3, libXv, libXrandr, libvdpau, libXext
 , librsvg, wrapGAppsHook
 , withGtk2 ? false, withGtk3 ? true
 }:
 
-stdenv.mkDerivation rec {
-  name = "nvidia-settings-${nvidia_x11.version}";
-  inherit (nvidia_x11) version;
-
+let
   src = fetchurl {
-    url = "https://download.nvidia.com/XFree86/nvidia-settings/${name}.tar.bz2";
+    url = "https://download.nvidia.com/XFree86/nvidia-settings/nvidia-settings-${nvidia_x11.version}.tar.bz2";
     inherit sha256;
   };
 
+  libXNVCtrl = stdenv.mkDerivation {
+    name = "libXNVCtrl-${nvidia_x11.version}";
+    inherit (nvidia_x11) version;
+    inherit src;
+
+    buildInputs = [ libXrandr libXext ];
+
+    preBuild = ''
+      cd src/libXNVCtrl
+    '';
+
+    installPhase = ''
+      mkdir -p $out/lib
+      mkdir -p $out/include/NVCtrl
+
+      cp libXNVCtrl.a $out/lib
+      cp NVCtrl.h     $out/include/NVCtrl
+      cp NVCtrlLib.h  $out/include/NVCtrl
+    '';
+  };
+
+in
+
+stdenv.mkDerivation rec {
+  name = "nvidia-settings-${nvidia_x11.version}";
+  inherit (nvidia_x11) version;
+  inherit src;
+
   nativeBuildInputs = [ pkgconfig m4 ];
 
   buildInputs = [ jansson libXv libXrandr libvdpau nvidia_x11 gtk2 dbus ]
@@ -52,6 +77,10 @@ stdenv.mkDerivation rec {
       $out/bin/$binaryName
   '';
 
+  passthru = {
+    inherit libXNVCtrl;
+  };
+
   meta = with stdenv.lib; {
     homepage = "http://www.nvidia.com/object/unix.html";
     description = "Settings application for NVIDIA graphics cards";
diff --git a/pkgs/tools/system/psensor/default.nix b/pkgs/tools/system/psensor/default.nix
new file mode 100644
index 000000000000..b62bb92564c3
--- /dev/null
+++ b/pkgs/tools/system/psensor/default.nix
@@ -0,0 +1,33 @@
+{ stdenv, lib, fetchurl, pkgconfig, lm_sensors, libgtop, libatasmart, gtk3
+, libnotify, udisks2, libXNVCtrl, wrapGAppsHook
+}:
+
+stdenv.mkDerivation rec {
+  name = "psensor-${version}";
+
+  version = "1.2.0";
+
+  src = fetchurl {
+    url = "http://wpitchoune.net/psensor/files/psensor-${version}.tar.gz";
+    sha256 = "1smbidbby4rh14jnh9kn7y64qf486aqnmyxcgacjvkz27cqqnw4r";
+  };
+
+  nativeBuildInputs = [ pkgconfig wrapGAppsHook ];
+
+  buildInputs = [
+    lm_sensors libgtop libatasmart gtk3 libnotify udisks2
+  ];
+
+  preConfigure = ''
+    NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${libXNVCtrl}/include"
+    NIX_LDFLAGS="$NIX_LDFLAGS -L${libXNVCtrl}/lib"
+  '';
+
+  meta = with lib; {
+    description = "Graphical hardware monitoring application for Linux";
+    homepage = "https://wpitchoune.net/psensor/";
+    license = licenses.mit;
+    platforms = platforms.linux;
+    maintainers = with maintainers; [ cstrahan ];
+  };
+}
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index 5f838d3156c0..56769470689f 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -3768,6 +3768,10 @@ with pkgs;
 
   psutils = callPackage ../tools/typesetting/psutils { };
 
+  psensor = callPackage ../tools/system/psensor {
+    libXNVCtrl = linuxPackages.nvidia_x11.settings.libXNVCtrl;
+  };
+
   pv = callPackage ../tools/misc/pv { };
 
   pwgen = callPackage ../tools/security/pwgen { };