Something went wrong. Try again.
What happens if I push all of nixpkgs
Something went wrong. Try again.
1.6 kB · 73 lines
Nix
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374{ lib, buildPythonPackage, fetchFromGitHub, torch, ninja, scipy, which, pybind11, pytest-xdist, pytestCheckHook,}:
let linePatch = '' import os os.environ['PATH'] = os.environ['PATH'] + ':${ninja}/bin' '';inbuildPythonPackage rec { pname = "deepwave"; version = "0.0.18"; format = "pyproject";
src = fetchFromGitHub { owner = "ar4"; repo = "deepwave"; rev = "v${version}"; hash = "sha256-DOOy+B12jgwJzQ90qzX50OFxYLPRcVdVYSE5gi3pqDM="; };
# unable to find ninja although it is available, most likely because it looks for its pip version postPatch = '' substituteInPlace setup.cfg --replace "ninja" ""
# Adding ninja to the path forcibly mv src/deepwave/__init__.py tmp echo "${linePatch}" > src/deepwave/__init__.py cat tmp >> src/deepwave/__init__.py rm tmp '';
# The source files are compiled at runtime and cached at the # $HOME/.cache folder, so for the check phase it is needed to # have a temporary home. This is also the reason ninja is not # needed at the nativeBuildInputs, since it will only be used # at runtime. preBuild = '' export HOME=$(mktemp -d) '';
propagatedBuildInputs = [ torch pybind11 ];
nativeCheckInputs = [ which scipy pytest-xdist pytestCheckHook ];
pythonImportsCheck = [ "deepwave" ];
meta = with lib; { description = "Wave propagation modules for PyTorch"; homepage = "https://github.com/ar4/deepwave"; license = licenses.mit; platforms = intersectLists platforms.x86_64 platforms.linux; maintainers = with maintainers; [ atila ]; };}