Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ 2 lib, 3 fetchFromGitHub, 4 singularity, 5 python3Packages, 6 testers, 7 udocker, 8}: 9 10python3Packages.buildPythonApplication rec { 11 pname = "udocker"; 12 version = "1.3.17"; 13 pyproject = true; 14 15 src = fetchFromGitHub { 16 owner = "indigo-dc"; 17 repo = "udocker"; 18 tag = version; 19 hash = "sha256-P49fkLvdCm/Eco+nD3SGM04PRQatBzq9CHlayueQetk="; 20 }; 21 22 postPatch = '' 23 substituteInPlace setup.py \ 24 --replace-fail "'pytest-runner'," "" 25 ''; 26 27 # crun patchelf proot runc fakechroot 28 # are download statistically linked during runtime 29 buildInputs = [ 30 singularity 31 ]; 32 33 build-system = with python3Packages; [ 34 setuptools 35 ]; 36 37 dependencies = with python3Packages; [ 38 pycurl 39 ]; 40 41 nativeCheckInputs = with python3Packages; [ 42 pytestCheckHook 43 ]; 44 45 disabledTests = [ 46 "test_02__load_structure" 47 "test_05__get_volume_bindings" 48 ]; 49 50 disabledTestPaths = [ 51 # Network 52 "tests/unit/test_curl.py" 53 "tests/unit/test_dockerioapi.py" 54 ]; 55 56 pythonImportsCheck = [ "udocker" ]; 57 58 passthru = { 59 tests.version = testers.testVersion { package = udocker; }; 60 }; 61 62 meta = { 63 description = "Basic user tool to execute simple docker containers in user space without root privileges"; 64 homepage = "https://indigo-dc.gitbooks.io/udocker"; 65 changelog = "https://github.com/indigo-dc/udocker/releases/tag/${version}"; 66 license = lib.licenses.asl20; 67 maintainers = with lib.maintainers; [ bzizou ]; 68 platforms = lib.platforms.linux; 69 mainProgram = "udocker"; 70 }; 71}