nixpkgs/pkgs/applications/altcoins/go-ethereum.nix

40 lines
1.1 KiB
Nix
Raw Normal View History

{ stdenv, lib, buildGoPackage, fetchFromGitHub, libobjc, IOKit }:
2016-07-20 23:33:39 +00:00
2017-07-05 13:27:28 +00:00
buildGoPackage rec {
2016-07-20 23:33:39 +00:00
name = "go-ethereum-${version}";
2018-02-20 03:31:32 +00:00
version = "1.8.1";
2016-07-20 23:33:39 +00:00
goPackagePath = "github.com/ethereum/go-ethereum";
# Fix for usb-related segmentation faults on darwin
propagatedBuildInputs =
stdenv.lib.optionals stdenv.isDarwin [ libobjc IOKit ];
2017-09-05 07:24:04 +00:00
# Fixes Cgo related build failures (see https://github.com/NixOS/nixpkgs/issues/25959 )
hardeningDisable = [ "fortify" ];
2016-07-20 23:33:39 +00:00
# Only install binaries in $out, source is not interesting and takes ~50M
outputs = [ "out" ];
preFixup = ''
export bin="''${out}"
'';
installPhase = ''
mkdir -p $out/bin $out
dir="$NIX_BUILD_TOP/go/bin"
[ -e "$dir" ] && cp -r $dir $out
'';
2017-09-05 07:24:04 +00:00
src = fetchFromGitHub {
owner = "ethereum";
repo = "go-ethereum";
rev = "v${version}";
2018-02-20 03:31:32 +00:00
sha256 = "0k7ly9cw68ranksa1fdn7v2lncmlqgabw3qiiyqya2xz3s4aazlf";
2016-07-20 23:33:39 +00:00
};
2017-09-15 00:52:18 +00:00
meta = with stdenv.lib; {
homepage = https://ethereum.github.io/go-ethereum/;
2016-07-20 23:33:39 +00:00
description = "Official golang implementation of the Ethereum protocol";
2017-09-15 00:52:18 +00:00
license = with licenses; [ lgpl3 gpl3 ];
maintainers = [ maintainers.adisbladis ];
2016-07-20 23:33:39 +00:00
};
}