Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at release-19.03 57 lines 1.3 kB view raw
1{ stdenv, fetchFromGitHub, writeText, elixir }: 2 3let 4 shell = drv: stdenv.mkDerivation { 5 name = "interactive-shell-${drv.name}"; 6 buildInputs = [ drv ]; 7 }; 8 9 pkg = self: stdenv.mkDerivation rec { 10 pname = "hex"; 11 version = "0.17.1"; 12 13 src = fetchFromGitHub { 14 owner = "hexpm"; 15 repo = "hex"; 16 rev = "v${version}"; 17 sha256 = "1s4asar1mcavzj3w37jcz243ka0z5jm0r42yws3h4aagawxxg02z"; 18 }; 19 20 setupHook = writeText "setupHook.sh" '' 21 addToSearchPath ERL_LIBS "$1/lib/erlang/lib/" 22 ''; 23 24 dontStrip = true; 25 26 buildInputs = [ elixir ]; 27 28 buildPhase = '' 29 runHook preBuild 30 export HEX_OFFLINE=1 31 export HEX_HOME=./ 32 export MIX_ENV=prod 33 mix compile 34 runHook postBuild 35 ''; 36 37 installPhase = '' 38 runHook preInstall 39 40 mkdir -p $out/lib/erlang/lib 41 cp -r ./_build/prod/lib/hex $out/lib/erlang/lib/ 42 43 runHook postInstall 44 ''; 45 46 meta = { 47 description = "Package manager for the Erlang VM https://hex.pm"; 48 license = stdenv.lib.licenses.mit; 49 homepage = https://github.com/hexpm/hex; 50 maintainers = with stdenv.lib.maintainers; [ ericbmerritt ]; 51 }; 52 53 passthru = { 54 env = shell self; 55 }; 56}; 57in stdenv.lib.fix pkg