nixpkgs/pkgs/by-name/op/opencomposite/package.nix

66 lines
1.3 KiB
Nix

{
cmake,
fetchFromGitLab,
glm,
jsoncpp,
lib,
libGL,
python3,
stdenv,
unstableGitUpdater,
vulkan-headers,
vulkan-loader,
xorg,
}:
stdenv.mkDerivation {
pname = "opencomposite";
version = "0-unstable-2024-10-28";
src = fetchFromGitLab {
owner = "znixian";
repo = "OpenOVR";
rev = "e162c7e9be2521a357fba4bee13af85437a1027b";
fetchSubmodules = true;
hash = "sha256-+suq0gV8zRDhF3ApnzQCC/5st59VniU6v7TcDdght6Q=";
};
nativeBuildInputs = [ cmake ];
buildInputs = [
glm
jsoncpp
libGL
python3
vulkan-headers
vulkan-loader
xorg.libX11
];
cmakeFlags = [
(lib.cmakeFeature "CMAKE_CXX_FLAGS" "-Wno-error=format-security")
# See https://gitlab.com/znixian/OpenOVR/-/issues/416
(lib.cmakeBool "USE_SYSTEM_OPENXR" false)
(lib.cmakeBool "USE_SYSTEM_GLM" true)
];
installPhase = ''
runHook preInstall
mkdir -p $out/lib/opencomposite
cp -r bin/ $out/lib/opencomposite
runHook postInstall
'';
passthru.updateScript = unstableGitUpdater {
hardcodeZeroVersion = true;
branch = "openxr";
};
meta = {
description = "Reimplementation of OpenVR, translating calls to OpenXR";
homepage = "https://gitlab.com/znixian/OpenOVR";
license = with lib.licenses; [ gpl3Only ];
maintainers = with lib.maintainers; [ Scrumplex ];
};
}