sqlite_orm: 1.9 -> 1.9.1 (#379250)
[NixPkgs.git] / pkgs / development / compilers / gerbil / gerbil-ethereum.nix
blob80e4ad62a8555f7c6a2003a154701919b28cad60
2   lib,
3   fetchFromGitHub,
4   gerbilPackages,
5   gerbil-support,
6   gerbil,
7   ...
8 }:
10 rec {
11   pname = "gerbil-ethereum";
12   version = "unstable-2023-12-04";
13   git-version = "0.2-11-g124ec58";
14   softwareName = "Gerbil-ethereum";
15   gerbil-package = "clan/ethereum";
16   version-path = "version";
18   gerbilInputs = with gerbilPackages; [
19     gerbil-utils
20     gerbil-crypto
21     gerbil-poo
22     gerbil-persist
23     gerbil-leveldb
24   ];
26   pre-src = {
27     fun = fetchFromGitHub;
28     owner = "mighty-gerbils";
29     repo = "gerbil-ethereum";
30     rev = "124ec585157e2c505cd3c449a389c124ca6da9e9";
31     sha256 = "0xg07k421r5p0qx98id66k0k2l3vi1is875857sd8q3h6bks0z54";
32   };
34   postInstall = ''
35     cp scripts/{croesus.prv,genesis.json,logback.xml,yolo-evm.conf,yolo-kevm.conf,run-ethereum-test-net.ss} $out/gerbil/lib/clan/ethereum/scripts/
36     mkdir -p $out/bin
37     cat > $out/bin/run-ethereum-test-net <<EOF
38     #!/bin/sh
39     #|
40     ORIG_GERBIL_LOADPATH="\$GERBIL_LOADPATH"
41     ORIG_GERBIL_PATH="\$GERBIL_PATH"
42     ORIG_GERBIL_HOME="\$GERBIL_HOME"
43     unset GERBIL_HOME
44     GERBIL_LOADPATH="${gerbil-support.gerbilLoadPath ([ "$out" ] ++ gerbilInputs)}"
45     GERBIL_PATH="\$HOME/.cache/gerbil-ethereum/gerbil"
46     export GERBIL_PATH GERBIL_LOADPATH GLOW_SOURCE ORIG_GERBIL_PATH ORIG_GERBIL_LOADPATH
47     exec ${gerbil}/bin/gxi "\$0" "\$@"
48     |#
49     (import :clan/ethereum/scripts/run-ethereum-test-net :std/lib/multicall)
50     (apply call-entry-point (cdr (command-line)))
51     EOF
52     chmod a+x $out/bin/run-ethereum-test-net
53   '';
55   meta = with lib; {
56     description = "Gerbil Ethereum: a Scheme alternative to web3.js";
57     homepage = "https://github.com/fare/gerbil-ethereum";
58     license = licenses.asl20;
59     platforms = platforms.unix;
60     maintainers = with maintainers; [ fare ];
61   };