1{ 2 lib, 3 buildPythonPackage, 4 fetchFromGitHub, 5 numba, 6 numpy, 7 pynose, 8 pytestCheckHook, 9 pythonOlder, 10 scikit-learn, 11 scipy, 12 setuptools, 13 torchvision, 14 tqdm, 15}: 16 17buildPythonPackage rec { 18 pname = "apricot-select"; 19 version = "0.6.1"; 20 pyproject = true; 21 22 disabled = pythonOlder "3.7"; 23 24 src = fetchFromGitHub { 25 owner = "jmschrei"; 26 repo = "apricot"; 27 rev = "refs/tags/${version}"; 28 hash = "sha256-v9BHFxmlbwXVipPze/nV35YijdFBuka3gAl85AlsffQ="; 29 }; 30 31 postPatch = '' 32 sed -i '/"nose"/d' setup.py 33 ''; 34 35 build-system = [ setuptools ]; 36 37 dependencies = [ 38 numba 39 numpy 40 scipy 41 tqdm 42 ]; 43 44 nativeCheckInputs = [ 45 pynose 46 pytestCheckHook 47 scikit-learn 48 torchvision 49 ]; 50 51 pythonImportsCheck = [ "apricot" ]; 52 53 disabledTestPaths = [ 54 # Tests require nose 55 "tests/test_optimizers/test_knapsack_facility_location.py" 56 "tests/test_optimizers/test_knapsack_feature_based.py" 57 ]; 58 59 meta = with lib; { 60 description = "Module for submodular optimization for the purpose of selecting subsets of massive data sets"; 61 homepage = "https://github.com/jmschrei/apricot"; 62 changelog = "https://github.com/jmschrei/apricot/releases/tag/${version}"; 63 license = licenses.mit; 64 maintainers = with maintainers; [ fab ]; 65 }; 66}