You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Native extensions for python often can be used both as python packages and as shared libraries, e.g. consumable via CMake's find_package. Sometimes the *Config.cmake modules (&c) generated by these projects cannot be consumed without manually providing their transitive dependencies again. In these cases we simplify the setup using nix-support/propagated-build-inputs.
Currently, however, python3Packages use propagatedBuildInputs to specify the (python) runtime dependencies, which get written into the same ${!outputDev}/nix/propagated-build-inputs as the build-time native dependencies would. This sometimes forces us to bring entire toolchains (e.g. nvcc and the huge static libraries in case of cuda) into the runtime closures of python3.withPackages instances, increasing closures sizes and the frequency of rebuilds.
Issue description
Native extensions for python often can be used both as python packages and as shared libraries, e.g. consumable via CMake's
find_package
. Sometimes the*Config.cmake
modules (&c) generated by these projects cannot be consumed without manually providing their transitive dependencies again. In these cases we simplify the setup usingnix-support/propagated-build-inputs
.Currently, however,
python3Packages
usepropagatedBuildInputs
to specify the (python) runtime dependencies, which get written into the same${!outputDev}/nix/propagated-build-inputs
as the build-time native dependencies would. This sometimes forces us to bring entire toolchains (e.g. nvcc and the huge static libraries in case of cuda) into the runtime closures ofpython3.withPackages
instances, increasing closures sizes and the frequency of rebuilds.Related: #272179
python3Packages.torch
: cudaPackages.setupCudaHook: propagate deps and the hook #271078, uses a customcxxdev
output which should be eventually deletedpython3Packages.opencv4
: 7954fc6,cxxdev
python3Packages.vtk
: vtk: switch to vtk_9 #178367 (comment) (vtk_9: propagate libX11 and libGL on Linux #206935),${!outputDev}
The text was updated successfully, but these errors were encountered: