ff1a94e523
The nixpkgs-unstable channel's programs.sqlite was used to identify packages producing exactly one binary, and these automatically added to their package definitions wherever possible.
50 lines
1.3 KiB
Nix
50 lines
1.3 KiB
Nix
{ lib
|
|
, buildPythonPackage
|
|
, fetchFromGitHub
|
|
, pythonOlder
|
|
, pytestCheckHook
|
|
, gdcm
|
|
, nibabel
|
|
, numpy
|
|
, pydicom
|
|
, scipy
|
|
, setuptools
|
|
}:
|
|
|
|
buildPythonPackage rec {
|
|
pname = "dicom2nifti";
|
|
version = "2.4.8";
|
|
format = "setuptools";
|
|
disabled = pythonOlder "3.6";
|
|
|
|
# no tests in PyPI dist
|
|
src = fetchFromGitHub {
|
|
owner = "icometrix";
|
|
repo = pname;
|
|
rev = version;
|
|
hash = "sha256-2Pspxdeu3pHwXpbjS6bQQnvdeMuITRwYarPuLlmNcv8";
|
|
};
|
|
|
|
propagatedBuildInputs = [ gdcm nibabel numpy pydicom scipy setuptools ];
|
|
|
|
# python-gdcm just builds the python interface provided by the "gdcm" package, so
|
|
# we should be able to replace "python-gdcm" with "gdcm" but this doesn't work
|
|
# (similar to https://github.com/NixOS/nixpkgs/issues/84774)
|
|
postPatch = ''
|
|
substituteInPlace setup.py --replace "python-gdcm" ""
|
|
substituteInPlace tests/test_generic.py --replace "from common" "from dicom2nifti.common"
|
|
'';
|
|
|
|
nativeCheckInputs = [ pytestCheckHook ];
|
|
|
|
pythonImportsCheck = [ "dicom2nifti" ];
|
|
|
|
meta = with lib; {
|
|
homepage = "https://github.com/icometrix/dicom2nifti";
|
|
description = "Library for converting dicom files to nifti";
|
|
mainProgram = "dicom2nifti";
|
|
license = licenses.mit;
|
|
maintainers = with maintainers; [ bcdarwin ];
|
|
};
|
|
}
|