From 645cdce565bee9df58d40402d74450a51c354294 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B8rn=20Forsman?= Date: Mon, 14 Oct 2013 19:27:11 +0200 Subject: [PATCH] plantuml: new package PlantUML draws UML diagrams using a simple and human readable text description. --- pkgs/tools/misc/plantuml/default.nix | 37 ++++++++++++++++++++++++++++ pkgs/top-level/all-packages.nix | 2 ++ 2 files changed, 39 insertions(+) create mode 100644 pkgs/tools/misc/plantuml/default.nix diff --git a/pkgs/tools/misc/plantuml/default.nix b/pkgs/tools/misc/plantuml/default.nix new file mode 100644 index 00000000000..10886e969a2 --- /dev/null +++ b/pkgs/tools/misc/plantuml/default.nix @@ -0,0 +1,37 @@ +{ stdenv, fetchurl, jre, graphviz }: + +stdenv.mkDerivation rec { + version = "7982"; + name = "plantuml-${version}"; + + src = fetchurl { + url = "mirror://sourceforge/project/plantuml/plantuml.${version}.jar"; + sha256 = "0hxs0whjgx36j5azdcna40rw2c7smhg0qm3kzld9vx88m0c51dgl"; + }; + + # 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.linux; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 7677fcc7503..6cfc5820453 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -1561,6 +1561,8 @@ let pk2cmd = callPackage ../tools/misc/pk2cmd { }; + plantuml = callPackage ../tools/misc/plantuml { }; + plan9port = callPackage ../tools/system/plan9port { }; ploticus = callPackage ../tools/graphics/ploticus {