1{ lib, stdenv, makeWrapper, fetchurl, jre }:
2
3stdenv.mkDerivation rec {
4 pname = "cfr";
5 version = "0.151";
6
7 src = fetchurl {
8 url = "http://www.benf.org/other/cfr/cfr_${version}.jar";
9 sha256 = "sha256-MW6QFbmvKVP8/0/oa/O7pwXzLnzSW9blNcaY3ool6Dc=";
10 };
11
12 nativeBuildInputs = [ makeWrapper ];
13
14 buildCommand = ''
15 jar=$out/share/java/cfr_${version}.jar
16 install -Dm444 $src $jar
17 makeWrapper ${jre}/bin/java $out/bin/cfr --add-flags "-jar $jar"
18 '';
19
20 meta = with lib; {
21 description = "Another java decompiler";
22 longDescription = ''
23 CFR will decompile modern Java features - Java 8 lambdas (pre and post
24 Java beta 103 changes), Java 7 String switches etc, but is written
25 entirely in Java 6.
26 '';
27 homepage = "http://www.benf.org/other/cfr/";
28 license = licenses.mit;
29 platforms = platforms.all;
30 };
31}