diff --git a/gnu/packages/graphviz.scm b/gnu/packages/graphviz.scm index 43e7ccac42..58c0fa82fe 100644 --- a/gnu/packages/graphviz.scm +++ b/gnu/packages/graphviz.scm @@ -5,6 +5,7 @@ ;;; Copyright © 2017 Ricardo Wurmus ;;; Copyright © 2017 Tobias Geerinckx-Rice ;;; Copyright © 2017 Gábor Boskovits +;;; Copyright © 2018 Mathieu Lirzin ;;; ;;; This file is part of GNU Guix. ;;; @@ -43,6 +44,7 @@ #:use-module (gnu packages gd) #:use-module (gnu packages swig) #:use-module (gnu packages python) + #:use-module (gnu packages tex) #:use-module ((guix licenses) #:prefix license:)) (define-public graphviz @@ -239,3 +241,36 @@ graphs in Graphviz's DOT language, written in pure Python.") (define-public python2-pydot (package-with-python2 python-pydot)) + +(define-public dot2tex + (package + (name "dot2tex") + (version "2.9.0") + (source (origin + (method url-fetch) + (uri (pypi-uri "dot2tex" version)) + (sha256 + (base32 + "0jhdwp0wv2h0xb7j2s5xiv7i8yaqgfpwwqcyrjvaxkfwsynm8gkx")))) + (build-system python-build-system) + (arguments + `(#:python ,python-2)) + (inputs + `(("texlive-latex-preview" ,texlive-latex-preview) + ("graphviz" ,graphviz))) + (propagated-inputs + `(("python-pyparsing" ,python2-pyparsing))) + (home-page "https://github.com/kjellmf/dot2tex") + (synopsis "Graphviz to LaTeX converter") + (description + "The purpose of @code{dot2tex} is to give graphs generated by Graphviz a +more LaTeX friendly look and feel. This is accomplished by converting +@code{xdot} output from Graphviz to a series of PSTricks or PGF/TikZ commands. +This approach allows: + +@itemize @bullet +@item Typesetting labels with LaTeX, allowing mathematical notation +@item Using native PSTricks and PGF/TikZ commands for drawing arrows +@item Using backend specific styles to customize the output +@end itemize") + (license license:expat)))