summary refs log tree commit diff
path: root/pkgs/applications/graphics/monado/default.nix
diff options
context:
space:
mode:
authorJoe Hermaszewski <git@monoid.al>2021-01-08 22:55:45 +0100
committerPavol Rusnak <pavol@rusnak.io>2021-01-09 00:38:10 +0100
commit42743be017ebf846435789f24877304de396d954 (patch)
tree10e3b2cab2324abd6948867b95e59563e3e0015f /pkgs/applications/graphics/monado/default.nix
parentb08b22d85f17f7eae74f3b3637c479771056d78b (diff)
downloadnixpkgs-42743be017ebf846435789f24877304de396d954.tar
nixpkgs-42743be017ebf846435789f24877304de396d954.tar.gz
nixpkgs-42743be017ebf846435789f24877304de396d954.tar.bz2
nixpkgs-42743be017ebf846435789f24877304de396d954.tar.lz
nixpkgs-42743be017ebf846435789f24877304de396d954.tar.xz
nixpkgs-42743be017ebf846435789f24877304de396d954.tar.zst
nixpkgs-42743be017ebf846435789f24877304de396d954.zip
monado: Add serviceSupport option
This controls XRT_FEATURE_SERVICE. See
https://gitlab.freedesktop.org/monado/monado/-/blob/master/doc/targets.md#xrt_feature_service-disabled
for more info.
Diffstat (limited to 'pkgs/applications/graphics/monado/default.nix')
-rw-r--r--pkgs/applications/graphics/monado/default.nix37
1 files changed, 33 insertions, 4 deletions
diff --git a/pkgs/applications/graphics/monado/default.nix b/pkgs/applications/graphics/monado/default.nix
index 61343b3b1b4..7502ab69c32 100644
--- a/pkgs/applications/graphics/monado/default.nix
+++ b/pkgs/applications/graphics/monado/default.nix
@@ -1,23 +1,29 @@
 { stdenv
 , fetchFromGitLab
 , fetchpatch
+, writeText
 , cmake
+, doxygen
+, glslang
 , pkg-config
 , python3
 , SDL2
 , dbus
 , eigen
 , ffmpeg
-, glslang
+, gst-plugins-base
+, gstreamer
 , hidapi
 , libGL
 , libXau
 , libXdmcp
 , libXrandr
 , libffi
+, libjpeg
 # , librealsense
 , libsurvive
 , libusb1
+, libuv
 , libuvc
 , libv4l
 , libxcb
@@ -29,6 +35,11 @@
 , wayland
 , wayland-protocols
 , zlib
+# Set as 'false' to build monado without service support, i.e. allow VR
+# applications linking against libopenxr_monado.so to use OpenXR standalone
+# instead of via the monado-service program. For more information see:
+# https://gitlab.freedesktop.org/monado/monado/-/blob/master/doc/targets.md#xrt_feature_service-disabled
+, serviceSupport ? true
 }:
 
 stdenv.mkDerivation rec {
@@ -51,23 +62,36 @@ stdenv.mkDerivation rec {
     })
   ];
 
-  nativeBuildInputs = [ cmake pkg-config python3 ];
+  nativeBuildInputs = [
+    cmake
+    doxygen
+    glslang
+    pkg-config
+    python3
+  ];
+
+  cmakeFlags = [
+    "-DXRT_FEATURE_SERVICE=${if serviceSupport then "ON" else "OFF"}"
+  ];
 
   buildInputs = [
     SDL2
     dbus
     eigen
     ffmpeg
-    glslang
+    gst-plugins-base
+    gstreamer
     hidapi
     libGL
     libXau
     libXdmcp
     libXrandr
+    libjpeg
     libffi
     # librealsense.dev - see below
     libsurvive
     libusb1
+    libuv
     libuvc
     libv4l
     libxcb
@@ -91,11 +115,16 @@ stdenv.mkDerivation rec {
   # for some reason cmake is trying to use ${librealsense}/include
   # instead of ${librealsense.dev}/include as an include directory
 
+  # Help openxr-loader find this runtime
+  setupHook = writeText "setup-hook" ''
+    export XDG_CONFIG_DIRS=@out@/etc/xdg''${XDG_CONFIG_DIRS:+:''${XDG_CONFIG_DIRS}}
+  '';
+
   meta = with stdenv.lib; {
     description = "Open source XR runtime";
     homepage = "https://monado.freedesktop.org/";
     license = licenses.boost;
-    maintainers = with maintainers; [ prusnak ];
+    maintainers = with maintainers; [ expipiplus1 prusnak ];
     platforms = platforms.linux;
   };
 }