nixpkgs/pkgs/development/tools/nrpl/default.nix

47 lines
1.2 KiB
Nix

{ stdenv, lib, fetchFromGitHub, fetchpatch, makeWrapper, nim, pcre, tinycc }:
stdenv.mkDerivation {
pname = "nrpl";
version = "20150522";
src = fetchFromGitHub {
owner = "wheineman";
repo = "nrpl";
rev = "6d6c189ab7d1c905cc29dc678d66e9e132026f69";
sha256 = "1cly9lhrawnc42r31b7r0p0i6hcx8r00aa17gv7w9pcpj8ngb4v2";
};
nativeBuildInputs = [ makeWrapper ];
buildInputs = [ nim pcre ];
patches = [
(fetchpatch {
url = "https://patch-diff.githubusercontent.com/raw/wheineman/nrpl/pull/12.patch";
name = "update_for_new_nim.patch";
sha256 = "1zff7inhn3l1jnxcnidy705lzi3wqib1chf4rayh1g9i23an7wg1";
})
];
NIX_LDFLAGS = "-lpcre";
buildPhase = ''
HOME=$TMPDIR
nim c -d:release nrpl.nim
'';
installPhase = "install -Dt $out/bin nrpl";
postFixup = ''
wrapProgram $out/bin/nrpl \
--prefix PATH : ${lib.makeBinPath [ nim tinycc ]}
'';
meta = with lib; {
description = "REPL for the Nim programming language";
homepage = "https://github.com/wheineman/nrpl";
license = licenses.mit;
maintainers = with maintainers; [ peterhoeg ];
platforms = with platforms; linux ++ darwin;
};
}