xcursor-pro: init at 2.0.2 (#335188)
[NixPkgs.git] / pkgs / by-name / se / serpent / package.nix
bloba121a4826d6eabda5e4b8ec11b78a683bb64ea3e
2   lib,
3   stdenv,
4   fetchFromGitHub,
5   ...
6 }:
8 stdenv.mkDerivation {
9   pname = "serpent";
11   # I can't find any version numbers, so we're just using the date
12   # of the last commit.
13   version = "2016-03-05";
15   src = fetchFromGitHub {
16     owner = "ethereum";
17     repo = "serpent";
18     rev = "51ee60857fe53c871fa916ef66fc1b4255bb9433";
19     sha256 = "1bns9wgn5i1ahj19qx7v1wwdy8ca3q3pigxwznm5nywsw7s7lqxs";
20   };
22   postPatch = ''
23     substituteInPlace Makefile --replace 'g++' '${stdenv.cc.targetPrefix}c++'
24   '';
26   installPhase = ''
27     mkdir -p $out/bin
28     mv serpent $out/bin
29   '';
31   meta = with lib; {
32     description = "Compiler for the Serpent language for Ethereum";
33     mainProgram = "serpent";
34     longDescription = ''
35       Serpent is one of the high-level programming languages used to
36       write Ethereum contracts. The language, as suggested by its name,
37       is designed to be very similar to Python; it is intended to be
38       maximally clean and simple, combining many of the efficiency
39       benefits of a low-level language with ease-of-use in programming
40       style, and at the same time adding special domain-specific
41       features for contract programming.
42     '';
43     homepage = "https://github.com/ethereum/wiki/wiki/Serpent";
44     license = with licenses; [ wtfpl ];
45     maintainers = [ ];
46     platforms = platforms.all;
47   };