diff --git a/pkgs/development/tools/nimble/default.nix b/pkgs/development/tools/nimble/default.nix index 10a19d9e096..51fa9cad0d5 100644 --- a/pkgs/development/tools/nimble/default.nix +++ b/pkgs/development/tools/nimble/default.nix @@ -1,37 +1,36 @@ -{ stdenv, fetchFromGitHub, nim }: +{ stdenv, fetchFromGitHub, nim, openssl }: -let - srcs = { - nimble = fetchFromGitHub { - owner = "nim-lang"; - repo = "nimble"; - rev = "v0.7.2"; - sha256 = "0j9b519cv91xwn6k0alynakh7grbq4m6yy5bdwdrqmc7lag35r0i"; - }; - nim = fetchFromGitHub { - owner = "nim-lang"; - repo = "nim"; - rev = "v0.13.0"; - sha256 = "14grhkwdva4wmvihm1413ly86sf0qk96bd473pvsbgkp46cg8rii"; - }; - }; -in stdenv.mkDerivation rec { name = "nimble-${version}"; - version = "0.7.2"; - src = srcs.nimble; + version = "0.7.4"; + + src = fetchFromGitHub { + owner = "nim-lang"; + repo = "nimble"; + rev = "v${version}"; + sha256 = "1l477f1zlqpc738jg47pz599cwjasgy9jqdsplj3ywd12xfqpc96"; + }; buildInputs = [ nim ]; - postUnpack = '' - mkdir -p $sourceRoot/vendor - ln -s ${srcs.nim} $sourceRoot/vendor/nim + patchPhase = '' + substituteInPlace src/nimble.nim.cfg --replace "./vendor/nim" "${nim}/share" ''; - buildPhase = '' + + buildPhase = '' nim c src/nimble ''; - installPhase = "installBin src/nimble"; + + installPhase = '' + mkdir -p $out/bin + cp src/nimble $out/bin + patchelf --set-rpath "${stdenv.lib.makeLibraryPath [stdenv.cc.libc openssl]}" \ + --add-needed libcrypto.so \ + "$out/bin/nimble" + ''; + + dontStrip = true; meta = with stdenv.lib; { description = "Package manager for the Nim programming language";