diff --git a/pkgs/tools/virtualization/udocker/default.nix b/pkgs/tools/virtualization/udocker/default.nix new file mode 100644 index 00000000000..cad6b986617 --- /dev/null +++ b/pkgs/tools/virtualization/udocker/default.nix @@ -0,0 +1,37 @@ +{ stdenv, fetchFromGitHub, proot, patchelf, fakechroot, runc, simplejson, pycurl, coreutils, nose, mock, buildPythonApplication }: + +buildPythonApplication rec { + + version = "1.1.1"; + pname = "udocker"; + + src = fetchFromGitHub rec { + owner = "indigo-dc"; + repo = "udocker" ; + rev = "v${version}"; + sha256 = "134xk7rfj0xki9znryk5qf1nsfa318ahrrsi1k6ia7kipp7i3hb4"; + }; + + buildInputs = [ proot patchelf fakechroot runc simplejson pycurl coreutils nose mock ]; + + postPatch = '' + substituteInPlace udocker.py --replace /usr/sbin:/sbin:/usr/bin:/bin $PATH + substituteInPlace udocker.py --replace /bin/chmod ${coreutils}/bin/chmod + substituteInPlace udocker.py --replace /bin/rm ${coreutils}/bin/rm + substituteInPlace tests/unit_tests.py --replace /bin/rm ${coreutils}/bin/rm + substituteInPlace udocker.py --replace "autoinstall = True" "autoinstall = False" + ''; + + checkPhase = '' + NOSE_EXCLUDE=test_03_create_repo,test_04_is_repo,test_02__get_group_from_host nosetests -v tests/unit_tests.py + ''; + + meta = with stdenv.lib; { + description = "basic user tool to execute simple docker containers in user space without root privileges"; + homepage = https://www.gitbook.com/book/indigo-dc/udocker; + license = licenses.asl20; + maintainers = [ maintainers.bzizou ]; + platforms = platforms.linux; + }; + +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 84b01ae9422..43e740ba5ca 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -17458,6 +17458,8 @@ with pkgs; testssl = callPackage ../applications/networking/testssl { }; umurmur = callPackage ../applications/networking/umurmur { }; + + udocker = pythonPackages.callPackage ../tools/virtualization/udocker { }; unigine-valley = callPackage ../applications/graphics/unigine-valley { };