nixpkgs/pkgs/applications/altcoins/hevm.nix

62 lines
2 KiB
Nix
Raw Normal View History

{ mkDerivation, abstract-par, aeson, ansi-wl-pprint, async, base
2017-07-31 12:12:08 +02:00
, base16-bytestring, base64-bytestring, binary, brick, bytestring
, cereal, containers, cryptonite, data-dword, deepseq, directory
, filepath, ghci-pretty, here, HUnit, lens
, lens-aeson, memory, monad-par, mtl, optparse-generic, process
, QuickCheck, quickcheck-text, readline, rosezipper, scientific
, stdenv, tasty, tasty-hunit, tasty-quickcheck, temporary, text
, text-format, time, unordered-containers, vector, vty
, restless-git
2017-07-31 12:12:08 +02:00
, fetchFromGitHub, lib, makeWrapper
, ncurses, zlib, bzip2, solc, coreutils
, bash
2017-07-05 19:24:09 +02:00
}:
lib.overrideDerivation (mkDerivation rec {
pname = "hevm";
version = "0.8.5";
2017-07-05 19:24:09 +02:00
src = fetchFromGitHub {
owner = "dapphub";
repo = "hevm";
2017-07-05 19:24:09 +02:00
rev = "v${version}";
sha256 = "1a27bh0azf2hdg5hp6s9azv2rhzy7vrlq1kmg688g9nfwwwhgkp0";
2017-07-05 19:24:09 +02:00
};
isLibrary = false;
isExecutable = true;
enableSharedExecutables = false;
postInstall = ''
wrapProgram $out/bin/hevm \
--add-flags '+RTS -N$((`${coreutils}/bin/nproc` - 1)) -RTS' \
--suffix PATH : "${lib.makeBinPath [bash coreutils]}"
2017-07-05 19:24:09 +02:00
'';
extraLibraries = [
2017-07-31 12:12:08 +02:00
abstract-par aeson ansi-wl-pprint base base16-bytestring
base64-bytestring binary brick bytestring cereal containers
cryptonite data-dword deepseq directory filepath ghci-pretty lens
lens-aeson memory monad-par mtl optparse-generic process QuickCheck
quickcheck-text readline rosezipper scientific temporary text text-format
unordered-containers vector vty restless-git
2017-07-05 19:24:09 +02:00
];
executableHaskellDepends = [
async readline zlib bzip2
2017-07-05 19:24:09 +02:00
];
testHaskellDepends = [
base binary bytestring ghci-pretty here HUnit lens mtl QuickCheck
tasty tasty-hunit tasty-quickcheck text vector
];
homepage = https://github.com/dapphub/hevm;
2017-07-05 19:24:09 +02:00
description = "Ethereum virtual machine evaluator";
license = stdenv.lib.licenses.agpl3;
maintainers = [stdenv.lib.maintainers.dbrock];
}) (attrs: {
buildInputs = attrs.buildInputs ++ [solc];
2017-07-31 12:12:08 +02:00
nativeBuildInputs = attrs.nativeBuildInputs ++ [makeWrapper];
2017-07-05 19:24:09 +02:00
})