From b7e4cfa3a2280720322a283eb4fcd76ebb87fcf4 Mon Sep 17 00:00:00 2001 From: ShaddyDC <shaddythefirst@gmail.com> Date: Tue, 29 Aug 2023 23:15:37 +0200 Subject: [PATCH 1/2] maintainers: add shaddydc --- maintainers/maintainer-list.nix | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix index 141a79b38442..bdea7ceff5f2 100644 --- a/maintainers/maintainer-list.nix +++ b/maintainers/maintainer-list.nix @@ -16391,6 +16391,12 @@ githubId = 543055; name = "Shadaj Laddad"; }; + shaddydc = { + email = "nixpkgs@shaddy.dev"; + github = "ShaddyDC"; + githubId = 18403034; + name = "Shaddy"; + }; shadowrz = { email = "shadowrz+nixpkgs@disroot.org"; matrix = "@ShadowRZ:matrixim.cc"; From 7f9a51dae7962e15a248bc6072dcf9d7182fb724 Mon Sep 17 00:00:00 2001 From: ShaddyDC <shaddythefirst@gmail.com> Date: Tue, 29 Aug 2023 23:15:37 +0200 Subject: [PATCH 2/2] python3Packages.openusd: init at 23.11 --- .../python-modules/openusd/default.nix | 131 ++++++++++++++++++ pkgs/top-level/python-packages.nix | 4 + 2 files changed, 135 insertions(+) create mode 100644 pkgs/development/python-modules/openusd/default.nix diff --git a/pkgs/development/python-modules/openusd/default.nix b/pkgs/development/python-modules/openusd/default.nix new file mode 100644 index 000000000000..70ae6eb5e08b --- /dev/null +++ b/pkgs/development/python-modules/openusd/default.nix @@ -0,0 +1,131 @@ +{ buildPythonPackage +, fetchFromGitHub +, lib +, writeShellScriptBin +, cmake +, doxygen +, draco +, graphviz-nox +, ninja +, setuptools +, pyqt6 +, pyopengl +, jinja2 +, pyside6 +, boost +, numpy +, git +, tbb +, opensubdiv +, openimageio +, opencolorio +, osl +, ptex +, embree +, alembic +, openexr +, flex +, bison +, qt6 +, python +}: +let + # Matches the pyside6-uic implementation + # https://code.qt.io/cgit/pyside/pyside-setup.git/tree/sources/pyside-tools/pyside_tool.py?id=e501cad66146a49c7a259579c7bb94bc93a67a08#n82 + pyside-tools-uic = writeShellScriptBin "pyside6-uic" '' + exec ${qt6.qtbase}/libexec/uic -g python "$@" + ''; +in +buildPythonPackage rec { + pname = "OpenUSD"; + version = "23.11"; + src = fetchFromGitHub { + owner = "PixarAnimationStudios"; + repo = pname; + rev = "refs/tags/v${version}"; + hash = "sha256-5zQrfB14kXs75WbL3s4eyhxELglhLNxU2L2aVXiyVjg="; + }; + + outputs = ["out" "doc"]; + + format = "other"; + + propagatedBuildInputs = [ + setuptools + pyqt6 + pyopengl + jinja2 + pyside6 + pyside-tools-uic + boost + numpy + ]; + + cmakeFlags = [ + "-DPXR_BUILD_EXAMPLES=OFF" + "-DPXR_BUILD_TUTORIALS=OFF" + "-DPXR_BUILD_USD_TOOLS=ON" + "-DPXR_BUILD_IMAGING=ON" + "-DPXR_BUILD_USD_IMAGING=ON" + "-DPXR_BUILD_USDVIEW=ON" + "-DPXR_BUILD_DOCUMENTATION=ON" + "-DPXR_BUILD_PYTHON_DOCUMENTATION=ON" + "-DPXR_BUILD_EMBREE_PLUGIN=ON" + "-DPXR_BUILD_ALEMBIC_PLUGIN=ON" + "-DPXR_ENABLE_OSL_SUPPORT=ON" + "-DPXR_BUILD_DRACO_PLUGIN=ON" + "-DPXR_BUILD_MONOLITHIC=ON" # Seems to be commonly linked to monolithically + ]; + + nativeBuildInputs = [ + cmake + ninja + git + qt6.wrapQtAppsHook + doxygen + graphviz-nox + ]; + buildInputs = [ + tbb + opensubdiv + openimageio + opencolorio + osl + ptex + embree + alembic.dev + openexr + flex + bison + boost + draco + qt6.qtbase + qt6.qtwayland + ]; + + pythonImportsCheck = [ "pxr" "pxr.Usd" ]; + + postInstall = '' + # Make python lib properly accessible + target_dir=$out/${python.sitePackages} + mkdir -p $(dirname $target_dir) + mv $out/lib/python $target_dir + + mv $out/docs $doc + + rm $out/share -r # only examples + rm $out/tests -r + ''; + + meta = { + description = "Universal Scene Description"; + longDescription = '' + Universal Scene Description (USD) is an efficient, scalable system + for authoring, reading, and streaming time-sampled scene description + for interchange between graphics applications. + ''; + homepage = "https://openusd.org/"; + license = lib.licenses.asl20; + maintainers = with lib.maintainers; [ shaddydc ]; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 147892d6d8af..10e3573a4d18 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -9019,6 +9019,10 @@ self: super: with self; { openapi-core = callPackage ../development/python-modules/openapi-core { }; + openusd = callPackage ../development/python-modules/openusd { + alembic = pkgs.alembic; + }; + overly = callPackage ../development/python-modules/overly { }; overpy = callPackage ../development/python-modules/overpy { };