Merge pull request #108577 from prusnak/monado

This commit is contained in:
Sandro 2021-01-06 21:38:48 +01:00 committed by GitHub
commit 877bc4b720
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
3 changed files with 135 additions and 0 deletions

View file

@ -0,0 +1,101 @@
{ stdenv
, fetchFromGitLab
, fetchpatch
, cmake
, pkg-config
, python3
, SDL2
, dbus
, eigen
, ffmpeg
, glslang
, hidapi
, libGL
, libXau
, libXdmcp
, libXrandr
, libffi
# , librealsense
, libsurvive
, libusb1
, libuvc
, libv4l
, libxcb
, opencv4
, openhmd
, udev
, vulkan-headers
, vulkan-loader
, wayland
, wayland-protocols
, zlib
}:
stdenv.mkDerivation rec {
pname = "monado";
version = "0.4.1";
src = fetchFromGitLab {
domain = "gitlab.freedesktop.org";
owner = pname;
repo = pname;
rev = "v${version}";
sha256 = "114aif79dqyn2qg07mkv6lzmqn15k6fdcii818rdf5g4bp7zzzgm";
};
patches = [
# fix libsurvive autodetection, drop with the next version update
(fetchpatch {
url = "https://gitlab.freedesktop.org/monado/monado/-/commit/345e9eab56e2de9e8b07cf72c2a67cf2ebd01e62.patch";
sha256 = "17c110an6sxc8rn7dfz30rfkbayg64w68licicwc8cqabi6cgrm3";
})
];
nativeBuildInputs = [ cmake pkg-config python3 ];
buildInputs = [
SDL2
dbus
eigen
ffmpeg
glslang
hidapi
libGL
libXau
libXdmcp
libXrandr
libffi
# librealsense.dev - see below
libsurvive
libusb1
libuvc
libv4l
libxcb
opencv4
openhmd
udev
vulkan-headers
vulkan-loader
wayland
wayland-protocols
zlib
];
# realsense is disabled, the build ends with the following error:
#
# CMake Error in src/xrt/drivers/CMakeLists.txt:
# Imported target "realsense2::realsense2" includes non-existent path
# "/nix/store/2v95aps14hj3jy4ryp86vl7yymv10mh0-librealsense-2.41.0/include"
# in its INTERFACE_INCLUDE_DIRECTORIES.
#
# for some reason cmake is trying to use ${librealsense}/include
# instead of ${librealsense.dev}/include as an include directory
meta = with stdenv.lib; {
description = "Open source XR runtime";
homepage = "https://monado.freedesktop.org/";
license = licenses.boost;
maintainers = with maintainers; [ prusnak ];
platforms = platforms.linux;
};
}

View file

@ -0,0 +1,30 @@
{ stdenv
, fetchFromGitHub
, cmake
, pkg-config
, libusb1
}:
stdenv.mkDerivation rec {
pname = "libuvc";
version = "unstable-2020-11-29";
src = fetchFromGitHub {
owner = pname;
repo = pname;
rev = "5cddef71b17d41f7e98875a840c50d9704c3d2b2";
sha256 = "0kranb0x1k5qad8rwxnn1w9963sbfj2cfzdgpfmlivb04544m2j7";
};
nativeBuildInputs = [ cmake pkg-config ];
buildInputs = [ libusb1 ];
meta = with stdenv.lib; {
homepage = "https://ken.tossell.net/libuvc/";
description = "Cross-platform library for USB video devices";
platforms = platforms.linux;
license = licenses.lgpl21Plus;
maintainers = with maintainers; [ prusnak ];
};
}

View file

@ -2486,6 +2486,8 @@ in
monetdb = callPackage ../servers/sql/monetdb { }; monetdb = callPackage ../servers/sql/monetdb { };
monado = callPackage ../applications/graphics/monado {};
mons = callPackage ../tools/misc/mons {}; mons = callPackage ../tools/misc/mons {};
mousetweaks = callPackage ../applications/accessibility/mousetweaks { mousetweaks = callPackage ../applications/accessibility/mousetweaks {
@ -14952,6 +14954,8 @@ in
inherit (darwin.apple_sdk.frameworks) ApplicationServices CoreServices; inherit (darwin.apple_sdk.frameworks) ApplicationServices CoreServices;
}; };
libuvc = callPackage ../development/libraries/libuvc { };
libv4l = lowPrio (v4l-utils.override { libv4l = lowPrio (v4l-utils.override {
withUtils = false; withUtils = false;
}); });