nixpkgs/pkgs/tools/misc/plantuml/default.nix
2018-03-30 15:39:25 -07:00

38 lines
1.0 KiB
Nix

{ stdenv, fetchurl, jre, graphviz }:
stdenv.mkDerivation rec {
version = "1.2017.18";
name = "plantuml-${version}";
src = fetchurl {
url = "mirror://sourceforge/project/plantuml/${version}/plantuml.${version}.jar";
sha256 = "0ssfg6lpk41ydhxhi6y6c9ca3hpql6gg3bxjws8vrx9s3s6r5rb0";
};
# It's only a .jar file and a shell wrapper
phases = [ "installPhase" ];
installPhase = ''
mkdir -p "$out/bin"
mkdir -p "$out/lib"
cp "$src" "$out/lib/plantuml.jar"
cat > "$out/bin/plantuml" << EOF
#!${stdenv.shell}
export GRAPHVIZ_DOT="${graphviz}/bin/dot"
exec "${jre}/bin/java" -jar "$out/lib/plantuml.jar" "\$@"
EOF
chmod a+x "$out/bin/plantuml"
'';
meta = with stdenv.lib; {
description = "Draw UML diagrams using a simple and human readable text description";
homepage = http://plantuml.sourceforge.net/;
# "java -jar plantuml.jar -license" says GPLv3 or later
license = licenses.gpl3Plus;
maintainers = [ maintainers.bjornfor ];
platforms = platforms.unix;
};
}