2017-09-22 06:50:11 +02:00
|
|
|
{ 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
|
2017-09-22 06:50:11 +02:00
|
|
|
, 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
|
2017-09-22 06:50:11 +02:00
|
|
|
, bash
|
2017-07-05 19:24:09 +02:00
|
|
|
}:
|
|
|
|
|
|
|
|
lib.overrideDerivation (mkDerivation rec {
|
2017-09-22 06:50:11 +02:00
|
|
|
pname = "hevm";
|
|
|
|
version = "0.8.5";
|
2017-07-05 19:24:09 +02:00
|
|
|
|
|
|
|
src = fetchFromGitHub {
|
|
|
|
owner = "dapphub";
|
2017-09-22 06:50:11 +02:00
|
|
|
repo = "hevm";
|
2017-07-05 19:24:09 +02:00
|
|
|
rev = "v${version}";
|
2017-09-22 06:50:11 +02:00
|
|
|
sha256 = "1a27bh0azf2hdg5hp6s9azv2rhzy7vrlq1kmg688g9nfwwwhgkp0";
|
2017-07-05 19:24:09 +02:00
|
|
|
};
|
|
|
|
|
|
|
|
isLibrary = false;
|
|
|
|
isExecutable = true;
|
|
|
|
enableSharedExecutables = false;
|
|
|
|
|
|
|
|
postInstall = ''
|
2017-09-22 06:50:11 +02:00
|
|
|
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
|
2017-09-22 06:50:11 +02:00
|
|
|
unordered-containers vector vty restless-git
|
2017-07-05 19:24:09 +02:00
|
|
|
];
|
|
|
|
executableHaskellDepends = [
|
2017-09-22 06:50:11 +02:00
|
|
|
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
|
|
|
|
];
|
|
|
|
|
2017-09-22 06:50:11 +02:00
|
|
|
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
|
|
|
})
|