GNU bug report logs - #49929
[PATCH] gnu: Add gmid.

Previous Next

Package: guix-patches;

Reported by: cage <cage-dev <at> twistfold.it>

Date: Sat, 7 Aug 2021 18:24:01 UTC

Severity: normal

Tags: patch

Done: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>

Bug is archived. No further changes may be made.

To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 49929 in the body.
You can then email your comments to 49929 AT debbugs.gnu.org in the normal way.

Toggle the display of automated, internal messages from the tracker.

View this report as an mbox folder, status mbox, maintainer mbox


Report forwarded to guix-patches <at> gnu.org:
bug#49929; Package guix-patches. (Sat, 07 Aug 2021 18:24:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to cage <cage-dev <at> twistfold.it>:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Sat, 07 Aug 2021 18:24:02 GMT) Full text and rfc822 format available.

Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):

From: cage <cage-dev <at> twistfold.it>
To: guix-patches <at> gnu.org
Subject: [PATCH] gnu: Add gmid.
Date: Sat, 7 Aug 2021 20:23:14 +0200
---
 gnu/packages/networking.scm | 36 ++++++++++++++++++++++++++++++++++++
 1 file changed, 36 insertions(+)

diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index 05fd092b23..0ea07f0f15 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -44,6 +44,7 @@
 ;;; Copyright © 2021 Hartmut Goebel <h.goebel <at> crazy-compilers.com>
 ;;; Copyright © 2021 Justin Veilleux <terramorpha <at> cock.li>
 ;;; Copyright © 2021 Vinicius Monego <monego <at> posteo.net>
+;;; Copyright © 2021 cage <cage-dev <at> twistfold.it>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -4177,3 +4178,38 @@ public key authentication and Kerberos single-sign-on.  It also includes
 command-line @acronym{SFTP} and @acronym{SCP} implementations.")
     (home-page "https://www.chiark.greenend.org.uk/~sgtatham/putty/")
     (license license:expat)))
+
+(define-public gmid
+  (package
+    (name "gmid")
+    (version "1.7.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "https://github.com/omar-polo/gmid/releases/download/"
+                           version "/gmid-" version ".tar.gz"))
+       (sha256
+        (base32 "0ag5zcwnr5vmy13bc9c36hnv9pflks68b0k6w0ng97inrm37klis"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:tests? #f                    ;no tests
+       #:phases
+       (modify-phases %standard-phases
+         (replace 'configure
+           ;; The configure script is hand-written, not from GNU autotools.
+           (lambda* (#:key configure-flags inputs outputs #:allow-other-keys)
+             (let ((prefix (string-append "PREFIX=" (assoc-ref outputs "out"))))
+               (setenv "CC" ,(cc-for-target))
+               (apply invoke "./configure" (list prefix))
+               #t))))))
+    (native-inputs
+     `(("pkg-config" ,pkg-config)
+       ("bison" ,bison)
+       ("flex" ,flex)))
+    (inputs
+     `(("libevent"  ,libevent)
+       ("libressl"  ,libressl)))
+    (home-page "https://git.omarpolo.com/gmid/about/")
+    (synopsis "Simple and secure Gemini server")
+    (description "Gmid is a fast Gemini server written with security in mind.")
+    (license license:x11)))
-- 
2.32.0





Information forwarded to guix-patches <at> gnu.org:
bug#49929; Package guix-patches. (Thu, 24 Feb 2022 04:35:02 GMT) Full text and rfc822 format available.

Message #8 received at 49929 <at> debbugs.gnu.org (full text, mbox):

From: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
To: cage <cage-dev <at> twistfold.it>
Cc: 49929 <at> debbugs.gnu.org
Subject: Re: bug#49929: [PATCH] gnu: Add gmid.
Date: Wed, 23 Feb 2022 23:33:59 -0500
tags 49929 moreinfo
--

Hello!

cage <cage-dev <at> twistfold.it> writes:

> ---
>  gnu/packages/networking.scm | 36 ++++++++++++++++++++++++++++++++++++
>  1 file changed, 36 insertions(+)
>
> diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
> index 05fd092b23..0ea07f0f15 100644
> --- a/gnu/packages/networking.scm
> +++ b/gnu/packages/networking.scm
> @@ -44,6 +44,7 @@
>  ;;; Copyright © 2021 Hartmut Goebel <h.goebel <at> crazy-compilers.com>
>  ;;; Copyright © 2021 Justin Veilleux <terramorpha <at> cock.li>
>  ;;; Copyright © 2021 Vinicius Monego <monego <at> posteo.net>
> +;;; Copyright © 2021 cage <cage-dev <at> twistfold.it>
>  ;;;
>  ;;; This file is part of GNU Guix.
>  ;;;
> @@ -4177,3 +4178,38 @@ public key authentication and Kerberos single-sign-on.  It also includes
>  command-line @acronym{SFTP} and @acronym{SCP} implementations.")
>      (home-page "https://www.chiark.greenend.org.uk/~sgtatham/putty/")
>      (license license:expat)))
> +
> +(define-public gmid
> +  (package
> +    (name "gmid")
> +    (version "1.7.2")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (string-append "https://github.com/omar-polo/gmid/releases/download/"
> +                           version "/gmid-" version ".tar.gz"))
> +       (sha256
> +        (base32 "0ag5zcwnr5vmy13bc9c36hnv9pflks68b0k6w0ng97inrm37klis"))))
> +    (build-system gnu-build-system)
> +    (arguments
> +     `(#:tests? #f                    ;no tests

Apparently, the Makefile has a 'regress' target [0] to run a test suite
(the project has a CI enabled, in doubt you can refer to their CI
recipe).

[0]  https://github.com/omar-polo/gmid/blob/master/Makefile

> +       #:phases
> +       (modify-phases %standard-phases
> +         (replace 'configure
> +           ;; The configure script is hand-written, not from GNU autotools.
> +           (lambda* (#:key configure-flags inputs outputs #:allow-other-keys)
> +             (let ((prefix (string-append "PREFIX=" (assoc-ref outputs "out"))))
> +               (setenv "CC" ,(cc-for-target))
> +               (apply invoke "./configure" (list prefix))
> +               #t))))))

Ending phases by #t is obsolete (you can drop it), and you can more
simply write (invoke "./configure" (string-append #$output)), as long as
you replace the backquoted arguments list by a simple (list ...) and
define the phases as a G-exp, e.g.: #~(modify-phases [...])

> +    (native-inputs
> +     `(("pkg-config" ,pkg-config)
> +       ("bison" ,bison)
> +       ("flex" ,flex)))
> +    (inputs
> +     `(("libevent"  ,libevent)
> +       ("libressl"  ,libressl)))

You can use the new style for inputs, as explained in this blog post [1]

[1]  https://guix.gnu.org/en/blog/2021/the-big-change/

> +    (home-page "https://git.omarpolo.com/gmid/about/")
> +    (synopsis "Simple and secure Gemini server")
> +    (description "Gmid is a fast Gemini server written with security in mind.")
> +    (license license:x11)))

The rest looks good to me, well done!

Could you send an update with changes along these lines?

Thank you,

Maxim




Information forwarded to guix-patches <at> gnu.org:
bug#49929; Package guix-patches. (Sat, 26 Feb 2022 15:55:02 GMT) Full text and rfc822 format available.

Message #11 received at 49929 <at> debbugs.gnu.org (full text, mbox):

From: cage <cage-dev <at> twistfold.it>
To: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
Cc: 49929 <at> debbugs.gnu.org, cage <cage-dev <at> twistfold.it>
Subject: Re: bug#49929: [PATCH] gnu: Add gmid.
Date: Sat, 26 Feb 2022 16:53:57 +0100
On Wed, Feb 23, 2022 at 11:33:59PM -0500, Maxim Cournoyer wrote:

Hi!

Thanks for your feedback!

[...]

> The rest looks good to me, well done!
> Could you send an update with changes along these lines?

Here is  my best  attempt to  fix the  definition form  following your
advice; i  have enabled  the 'check' phase  and removed  the backtick
notation.  I  was not  able to  update the  call to  'invoke', because
-honestly- i was  not able to wrap  my head around g-expr.  I hope the
results are acceptable by the way! :)

Bye and thanks again!
C.

---
 gnu/packages/networking.scm | 38 +++++++++++++++++++++++++++++++++++++
 1 file changed, 38 insertions(+)

diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index 11f1cad007..49776fd666 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -48,6 +48,7 @@
 ;;; Copyright © 2021 Guillaume Le Vaillant <glv <at> posteo.net>
 ;;; Copyright © 2021 Maxime Devos <maximedevos <at> telenet.be>
 ;;; Copyright © 2022 Simon South <simon <at> simonsouth.net>
+;;; Copyright © 2022 cage <cage-dev <at> twistfold.it>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -4196,3 +4197,40 @@ (define-public putty
 implementations.")
     (home-page "https://www.chiark.greenend.org.uk/~sgtatham/putty/")
     (license license:expat)))
+
+(define-public gmid
+  (package
+    (name "gmid")
+    (version "1.7.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "https://github.com/omar-polo/gmid/releases/download/"
+                           version "/gmid-" version ".tar.gz"))
+       (sha256
+        (base32 "0ag5zcwnr5vmy13bc9c36hnv9pflks68b0k6w0ng97inrm37klis"))))
+    (build-system gnu-build-system)
+    (arguments
+     (list #:test-target "regress"
+           #:phases
+           #~(modify-phases %standard-phases
+               (replace 'configure
+                 ;; The configure script is hand-written, not from GNU autotools.
+                 (lambda* (#:key configure-flags inputs outputs #:allow-other-keys)
+                   (let ((prefix (string-append "PREFIX=" (assoc-ref outputs "out"))))
+                     (setenv "CC" #$(cc-for-target))
+                     (apply invoke "./configure" (list prefix))))))))
+    (native-inputs
+     (list pkg-config
+           bison
+           flex
+           coreutils
+           which
+           procps))
+    (inputs
+     (list libevent
+           libressl))
+    (home-page "https://git.omarpolo.com/gmid/about/")
+    (synopsis "Simple and secure Gemini server")
+    (description "Gmid is a fast Gemini server written with security in mind.")
+    (license license:x11)))
--
2.34.0




Reply sent to Maxim Cournoyer <maxim.cournoyer <at> gmail.com>:
You have taken responsibility. (Sun, 27 Feb 2022 04:51:01 GMT) Full text and rfc822 format available.

Notification sent to cage <cage-dev <at> twistfold.it>:
bug acknowledged by developer. (Sun, 27 Feb 2022 04:51:01 GMT) Full text and rfc822 format available.

Message #16 received at 49929-done <at> debbugs.gnu.org (full text, mbox):

From: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
To: cage <cage-dev <at> twistfold.it>
Cc: 49929-done <at> debbugs.gnu.org
Subject: Re: bug#49929: [PATCH] gnu: Add gmid.
Date: Sat, 26 Feb 2022 23:50:18 -0500
Hello!

cage <cage-dev <at> twistfold.it> writes:

> On Wed, Feb 23, 2022 at 11:33:59PM -0500, Maxim Cournoyer wrote:
>
> Hi!
>
> Thanks for your feedback!
>
> [...]
>
>> The rest looks good to me, well done!
>> Could you send an update with changes along these lines?
>
> Here is  my best  attempt to  fix the  definition form  following your
> advice; i  have enabled  the 'check' phase  and removed  the backtick
> notation.  I  was not  able to  update the  call to  'invoke', because
> -honestly- i was  not able to wrap  my head around g-expr.  I hope the
> results are acceptable by the way! :)

Thank, that's much nicer with the test suite!  I moved the package to
(gnu packages web), updated it to 1.8.1 (per 'guix lint'
recommendation), ordered the inputs, simplified the phase a bit and
enumerated some of the supported features in the description.

I also fixed the license, which is ISC rather than X11 (see
https://directory.fsf.org/wiki/License:ISC).

Pushed as 7eb68770efb33c1444f0ba1654334cfe19b3f5c6.

Closing; thank you!

Maxim

> Bye and thanks again!
> C.
>
> ---
>  gnu/packages/networking.scm | 38 +++++++++++++++++++++++++++++++++++++
>  1 file changed, 38 insertions(+)
>
> diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
> index 11f1cad007..49776fd666 100644
> --- a/gnu/packages/networking.scm
> +++ b/gnu/packages/networking.scm
> @@ -48,6 +48,7 @@
>  ;;; Copyright © 2021 Guillaume Le Vaillant <glv <at> posteo.net>
>  ;;; Copyright © 2021 Maxime Devos <maximedevos <at> telenet.be>
>  ;;; Copyright © 2022 Simon South <simon <at> simonsouth.net>
> +;;; Copyright © 2022 cage <cage-dev <at> twistfold.it>
>  ;;;
>  ;;; This file is part of GNU Guix.
>  ;;;
> @@ -4196,3 +4197,40 @@ (define-public putty
>  implementations.")
>      (home-page "https://www.chiark.greenend.org.uk/~sgtatham/putty/")
>      (license license:expat)))
> +
> +(define-public gmid
> +  (package
> +    (name "gmid")
> +    (version "1.7.2")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (string-append "https://github.com/omar-polo/gmid/releases/download/"
> +                           version "/gmid-" version ".tar.gz"))
> +       (sha256
> +        (base32 "0ag5zcwnr5vmy13bc9c36hnv9pflks68b0k6w0ng97inrm37klis"))))
> +    (build-system gnu-build-system)
> +    (arguments
> +     (list #:test-target "regress"
> +           #:phases
> +           #~(modify-phases %standard-phases
> +               (replace 'configure
> +                 ;; The configure script is hand-written, not from GNU autotools.
> +                 (lambda* (#:key configure-flags inputs outputs #:allow-other-keys)
> +                   (let ((prefix (string-append "PREFIX=" (assoc-ref outputs "out"))))
> +                     (setenv "CC" #$(cc-for-target))
> +                     (apply invoke "./configure" (list prefix))))))))
> +    (native-inputs
> +     (list pkg-config
> +           bison
> +           flex
> +           coreutils
> +           which
> +           procps))
> +    (inputs
> +     (list libevent
> +           libressl))
> +    (home-page "https://git.omarpolo.com/gmid/about/")
> +    (synopsis "Simple and secure Gemini server")
> +    (description "Gmid is a fast Gemini server written with security in mind.")
> +    (license license:x11)))
> --
> 2.34.0




Information forwarded to guix-patches <at> gnu.org:
bug#49929; Package guix-patches. (Sun, 27 Feb 2022 12:07:01 GMT) Full text and rfc822 format available.

Message #19 received at 49929-done <at> debbugs.gnu.org (full text, mbox):

From: cage <cage-dev <at> twistfold.it>
To: Maxim Cournoyer <maxim.cournoyer <at> gmail.com>
Cc: 49929-done <at> debbugs.gnu.org, cage <cage-dev <at> twistfold.it>
Subject: Re: bug#49929: [PATCH] gnu: Add gmid.
Date: Sun, 27 Feb 2022 13:06:32 +0100
On Sat, Feb 26, 2022 at 11:50:18PM -0500, Maxim Cournoyer wrote:
> Hello!

Hi!!

[...]

> > Here is  my best  attempt to  fix the  definition form  following your
> > advice;

[...]

> Thank, that's much nicer with the test suite!

The upstream developer has spent a lot of time writing a proper test
suite, was a pity if was left unused. :)

[...]

> Closing; thank you!

Thanks to you for your suggestions and improving the patch!

Also i was able to fix the  package's test phase only with the help of
people from the IRC channel, thanks to they all!

I  am  going  to  track  the development  upstream  and  upgrade  this
definition form in the future.


Bye!
C.




bug archived. Request was from Debbugs Internal Request <help-debbugs <at> gnu.org> to internal_control <at> debbugs.gnu.org. (Mon, 28 Mar 2022 11:24:05 GMT) Full text and rfc822 format available.

This bug report was last modified 2 years and 29 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.