Subject: [bug#42960] Add New Package: ronn-ng

From: Prafulla Giri <[email-masked]>
Date: Fri, 21 Aug 2020 08:13:15 +0545

Hey there,

Thank you very much for the feedback. I have made changes accordingly. ( I
did not want to add the copyright line because I'm still stuck with my 6th
grade email address, but oh well. :D )

Attached is an updated patch.

Thank you!

On Thu, Aug 20, 2020 at 10:55 PM Julien Lepiller <[email-masked]> wrote:

> So I can't try your patch right now, nor cite it in my answer to show you,
> sorry.
>
> From what I see, here are a few comments. Can you fix them and send us an
> updated patch? I'll push as soon as I'm back home this evening.
>
> You should add a copyright line for yourself (unless you already have one,
> I haven't checked the existing file).
>
> The rest is related to whitespace and so. You shouldn't use a newline
> right after add-after. Look at other packages to see how it's done. You've
> left a (begin …) that you probably used for debugging. There's a space in
> the closing parenthesis at the end of tge arguments. The discripcion is
> weirdly formatted: use two spaces after the period, and continue on the
> same line, breaking just before 80 characters.
>
> Thank you!
>
> On 2020年8月20日 11:50:31 GMT-04:00, Prafulla Giri <
> [email-masked]> wrote:
>>
>> Esteemed Maintainers,
>>
>> Attached patch contains a definition of ronn-ng.
>>
>> Thank you!
>>
>
From 98e759230c8df624ea2cab2968a5d4f4b865169b Mon Sep 17 00:00:00 2001
From: Prafulla Giri <[email-masked]>
Date: Thu, 20 Aug 2020 21:29:29 +0545
Subject: [PATCH] gnu: Add ronn-ng

* gnu/packages/groff.scm (ronn-ng): New public variable.
---
 gnu/packages/groff.scm | 49 ++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 49 insertions(+)

diff --git a/gnu/packages/groff.scm b/gnu/packages/groff.scm
index 222b4cb6dc..3a44497594 100644
--- a/gnu/packages/groff.scm
+++ b/gnu/packages/groff.scm
@@ -7,6 +7,7 @@
 ;;; Copyright © 2019 Eric Bavier <[email-masked]>
 ;;; Copyright © 2019 Mathieu Othacehe <[email-masked]>
 ;;; Copyright © 2020 Michael Rohleder <[email-masked]>
+;;; Copyright © 2020 Prafulla Giri <[email-masked]>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -30,7 +31,9 @@
   #:use-module (guix download)
   #:use-module (guix git-download)
   #:use-module (guix build-system gnu)
+  #:use-module (guix build-system ruby)
   #:use-module (gnu packages)
+  #:use-module (gnu packages ruby)
   #:use-module (gnu packages bison)
   #:use-module (gnu packages ghostscript)
   #:use-module (gnu packages netpbm)
@@ -208,3 +211,49 @@ is usually the formatter of \"man\" documentation pages.")
        "Roffit is a program that reads an nroff file and outputs an HTML file.
 It is typically used to display man pages on a web site.")
       (license expat))))
+
+(define-public ronn-ng
+  (package
+    (name "ronn-ng")
+    (version "0.9.1")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (rubygems-uri "ronn-ng" version))
+       (sha256
+        (base32
+         "1slxfg57cabmh98fw507z4ka6lwq1pvbrqwppflxw6700pi8ykfh"))))
+    (build-system ruby-build-system)
+    (arguments
+     `(#:phases
+       (modify-phases %standard-phases
+         (add-after 'extract-gemspec 'fix-gemspec-mustache
+           (lambda _
+             (substitute* "ronn-ng.gemspec"
+               (("(<mustache>.freeze.*~>).*(\".*$)" all start end)
+                (string-append start " 1.0" end)))
+             #t))
+         (add-after 'wrap 'wrap-program
+           (lambda* (#:key outputs #:allow-other-keys)
+             (let ((prog (string-append (assoc-ref %outputs "out") "/bin/ronn")))
+               (wrap-program prog
+                 `("PATH" ":" suffix ,(map
+                                       (lambda (exp_inpt)
+                                         (string-append
+                                          (assoc-ref %build-inputs exp_inpt)
+                                          "/bin"))
+                                       '("ruby-kramdown"
+                                         "ruby-mustache"
+                                         "ruby-nokogiri")))))
+             #t)))))
+    (inputs
+     `(("ruby-kramdown" ,ruby-kramdown)
+       ("ruby-mustache" ,ruby-mustache)
+       ("ruby-nokogiri" ,ruby-nokogiri)))
+    (synopsis
+     "Build manuals in HTML and Unix man page format from Markdown")
+    (description
+     "Ronn-NG is an updated fork of ronn.  It builds manuals in HTML and Unix
+man page format from Markdown.")
+    (home-page "https://github.com/apjanke/ronn-ng")
+    (license expat)))
-- 
2.28.0