about summary refs log tree commit diff
path: root/pkgs/tools/X11/primus/lib.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/tools/X11/primus/lib.nix')
-rw-r--r--pkgs/tools/X11/primus/lib.nix35
1 files changed, 25 insertions, 10 deletions
diff --git a/pkgs/tools/X11/primus/lib.nix b/pkgs/tools/X11/primus/lib.nix
index 96a4ac16c9b1..ce8059331092 100644
--- a/pkgs/tools/X11/primus/lib.nix
+++ b/pkgs/tools/X11/primus/lib.nix
@@ -1,20 +1,35 @@
 { stdenv, fetchgit
 , xlibsWrapper, mesa
-, nvidia
+, nvidia_x11 ? null
+, libX11
 }:
-let
-  version = "1.0.0748176";
-in
+
 stdenv.mkDerivation {
-  name = "primus-lib-${version}";
+  name = "primus-lib-20151204";
+
   src = fetchgit {
     url = git://github.com/amonakov/primus.git;
-    rev = "074817614c014e3a99259388cb18fd54648b659a";
-    sha256 = "0mrh432md6zrm16avxyk57mgszrqpgwdjahspchvlaccqxp3x82v";
+    rev = "d1afbf6fce2778c0751eddf19db9882e04f18bfd";
+    sha256 = "8f095b5e2030cdb155a42a49873832843c1e4dc3087a6fb94d198de982609923";
   };
 
-  inherit nvidia mesa;
+  buildInputs = [ libX11 mesa ];
+
+  makeFlags = [ "LIBDIR=$(out)/lib"
+                "PRIMUS_libGLa=${if nvidia_x11 == null then mesa else nvidia_x11}/lib/libGL.so"
+                "PRIMUS_libGLd=${mesa}/lib/libGL.so"
+                "PRIMUS_LOAD_GLOBAL=${mesa}/lib/libglapi.so"
+              ];
 
-  buildInputs = [ xlibsWrapper mesa ];
-  builder = ./builder.sh;
+  installPhase = ''
+    ln -s $out/lib/libGL.so.1 $out/lib/libGL.so
+  '';
+
+  meta = with stdenv.lib; {
+    description = "Low-overhead client-side GPU offloading";
+    homepage = https://github.com/amonakov/primus;
+    platforms = platforms.linux;
+    license = licenses.bsd2;
+    maintainers = with maintainers; [ abbradar ];
+  };
 }