Subject: [bug#58609] [PATCH] gnu: Add grap.

From: EuAndreh <[email-masked]>
Date: Tue, 18 Oct 2022 09:30:20 -0300

* gnu/packages/groff.scm (grap): New variable.
---

Built reproducibly and formatted with 'guix style'.

 gnu/packages/groff.scm | 26 ++++++++++++++++++++++++++
 1 file changed, 26 insertions(+)

diff --git a/gnu/packages/groff.scm b/gnu/packages/groff.scm
index 1d2af7ff07..33a059053c 100644
--- a/gnu/packages/groff.scm
+++ b/gnu/packages/groff.scm
@@ -35,6 +35,7 @@ (define-module (gnu packages groff)
   #:use-module (gnu packages)
   #:use-module (gnu packages ruby)
   #:use-module (gnu packages bison)
+  #:use-module (gnu packages flex)
   #:use-module (gnu packages ghostscript)
   #:use-module (gnu packages netpbm)
   #:use-module (gnu packages perl)
@@ -258,3 +259,28 @@ (define-public ronn-ng
 man page format from Markdown.")
     (home-page "https://github.com/apjanke/ronn-ng")
     (license expat)))
+
+(define-public grap
+  (package
+    (name "grap")
+    (version "1.46")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "https://www.lunabase.org/~faber/Vault/software/grap/grap-"
+                    version ".tar.gz"))
+              (sha256
+               (base32
+                "1d4bhhgi64x4cjww7fj0lqgr20w7lqnl2aizj6cndsgyxkywx3ks"))))
+    (build-system gnu-build-system)
+    (native-inputs (list flex bison))
+    (synopsis "Tool for creating graphs with troff")
+    (description
+     "Grap is a language for typesetting graphs specified and
+first implemented by Brian Kernighan and Jon Bentley at Bell Labs.  It is an
+expressive language for describing graphs and incorporating them in typeset
+documents.  It is implemented as a preprocessor to Kernigan's pic language for
+describing languages, so any system that can use pic can use grap.  For sure,
+TeX and groff can use it.")
+    (home-page "https://github.com/snorerot13/grap")
+    (license bsd-3)))
-- 
2.38.0