1{ fetchurl, stdenv, ant, jdk, makeWrapper, libXxf86vm, which }:
2
3stdenv.mkDerivation rec {
4 name = "processing-${version}";
5 version = "2.2.1";
6
7 src = fetchurl {
8 url = "https://github.com/processing/processing/archive/processing-0227-${version}.tar.gz";
9 sha256 = "1r8q5y0h4gpqap5jwkspc0li6566hzx5chr7hwrdn8mxlzsm50xk";
10 };
11
12 # Stop it trying to download its own version of java
13 patches = [ ./use-nixpkgs-jre.patch ];
14
15 buildInputs = [ ant jdk makeWrapper libXxf86vm which ];
16
17 buildPhase = "cd build && ant build";
18
19 installPhase = ''
20 mkdir -p $out/${name}
21 mkdir -p $out/bin
22 cp -r linux/work/* $out/${name}/
23 makeWrapper $out/${name}/processing $out/bin/processing \
24 --prefix PATH : "${stdenv.lib.makeBinPath [ jdk which ]}" \
25 --prefix LD_LIBRARY_PATH : ${libXxf86vm}/lib
26 makeWrapper $out/${name}/processing-java $out/bin/processing-java \
27 --prefix PATH : "${stdenv.lib.makeBinPath [ jdk which ]}" \
28 --prefix LD_LIBRARY_PATH : ${libXxf86vm}/lib
29 ln -s ${jdk} $out/${name}/java
30 '';
31
32 meta = with stdenv.lib; {
33 description = "A language and IDE for electronic arts";
34 homepage = http://processing.org;
35 license = licenses.gpl2Plus;
36 maintainers = [ maintainers.goibhniu ];
37 platforms = platforms.linux;
38 };
39}