{ stdenv, fetchurl, makeWrapper, jre }: stdenv.mkDerivation rec { version = "8.23"; pname = "checkstyle"; src = fetchurl { url = "https://github.com/checkstyle/checkstyle/releases/download/checkstyle-${version}/checkstyle-${version}-all.jar"; sha256 = "0k161c687q33rlm4r8h3f0ks5p2w8pj6kh258zdzk8kjfigfxkmx"; }; nativeBuildInputs = [ makeWrapper ]; buildInputs = [ jre ]; dontUnpack = true; installPhase = '' runHook preInstall install -D $src $out/checkstyle/checkstyle-all.jar makeWrapper ${jre}/bin/java $out/bin/checkstyle \ --add-flags "-jar $out/checkstyle/checkstyle-all.jar" runHook postInstall ''; meta = with stdenv.lib; { description = "Checks Java source against a coding standard"; longDescription = '' checkstyle is a development tool to help programmers write Java code that adheres to a coding standard. By default it supports the Sun Code Conventions, but is highly configurable. ''; homepage = http://checkstyle.sourceforge.net/; license = licenses.lgpl21; maintainers = with maintainers; [ pSub ]; platforms = jre.meta.platforms; }; }