GNU bug report logs - #39587
[PATCH] gnu: Add haproxy.

Previous Next

Package: guix-patches;

Reported by: Brice Waegeneire <brice <at> waegenei.re>

Date: Thu, 13 Feb 2020 09:07:01 UTC

Severity: normal

Tags: patch

Done: Jakub Kądziołka <kuba <at> kadziolka.net>

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 39587 in the body.
You can then email your comments to 39587 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#39587; Package guix-patches. (Thu, 13 Feb 2020 09:07:01 GMT) Full text and rfc822 format available.

Acknowledgement sent to Brice Waegeneire <brice <at> waegenei.re>:
New bug report received and forwarded. Copy sent to guix-patches <at> gnu.org. (Thu, 13 Feb 2020 09:07:01 GMT) Full text and rfc822 format available.

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

From: Brice Waegeneire <brice <at> waegenei.re>
To: guix-patches <at> gnu.org
Subject: [PATCH] gnu: Add haproxy.
Date: Thu, 13 Feb 2020 10:06:15 +0100
* gnu/packages/networking.scm (haproxy): New variable.
---
 gnu/packages/networking.scm | 45 +++++++++++++++++++++++++++++++++++++
 1 file changed, 45 insertions(+)

diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index ed339524c0..d411fc7a26 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -36,6 +36,7 @@
 ;;; Copyright © 2019 Jan Wielkiewicz <tona_kosmicznego_smiecia <at> interia.pl>
 ;;; Copyright © 2019 Daniel Schaefer <git <at> danielschaefer.me>
 ;;; Copyright © 2019 Diego N. Barbato <dnbarbato <at> posteo.de>
+;;; Copyright © 2020 Brice Waegeneire <brice <at> waegenei.re>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -64,6 +65,7 @@
   #:use-module (guix build-system perl)
   #:use-module (guix build-system python)
   #:use-module (guix build-system trivial)
+  #:use-module (guix utils)
   #:use-module (gnu packages)
   #:use-module (gnu packages admin)
   #:use-module (gnu packages adns)
@@ -2853,3 +2855,46 @@ cables.")
                    (license:non-copyleft ; slirpvde
                     "file://COPYING.slirpvde"
                     "See COPYING.slirpvde in the distribution.")))))
+
+(define-public haproxy
+  (package
+    (name "haproxy")
+    (version "2.1.3")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://www.haproxy.org/download/"
+                                  (version-major+minor version)
+                                  "/src/haproxy-" version ".tar.gz"))
+              (sha256
+               (base32
+                "0n8bw3d6gikr8c56ycrvksp1sl0b4yfzp19867cxkl3l0daqwrxv"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:make-flags
+       (let* ((out (assoc-ref %outputs "out")))
+         (list (string-append "PREFIX=" out)
+               (string-append "SBINDIR=" out "/bin")
+               (string-append "DOCDIR=" out "/share/" ,name)
+               "TARGET=linux-glibc"
+               "USE_LUA=1"
+               "USE_OPENSSL=1"
+               "USE_ZLIB=1"
+               "USE_PCRE_2=1"))
+       #:tests? #f                      ; no tests
+       #:phases
+       (modify-phases %standard-phases
+         (delete 'configure))))
+    (inputs
+     `(("lua" ,lua)
+       ("openssl" ,openssl)
+       ("pcre2" ,pcre2)
+       ("zlib" ,zlib)))
+    (home-page "https://www.haproxy.org/")
+    (synopsis "Reliable, high performance TCP/HTTP load balancer")
+    (description "HAProxy is a free, very fast and reliable solution offering
+high availability, load balancing, and proxying for TCP and HTTP-based
+applications.  It is particularly suited for web sites crawling under very
+high loads while needing persistence or Layer7 processing.  Supporting tens of
+thousands of connections is clearly realistic with todays hardware.")
+    (license (list license:gpl2+
+                   license:lgpl2.1))))
-- 
2.25.0





Information forwarded to guix-patches <at> gnu.org:
bug#39587; Package guix-patches. (Thu, 13 Feb 2020 09:27:01 GMT) Full text and rfc822 format available.

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

From: Jelle Licht <jlicht <at> fsfe.org>
To: Brice Waegeneire <brice <at> waegenei.re>, 39587 <at> debbugs.gnu.org
Subject: Re: [bug#39587] [PATCH] gnu: Add haproxy.
Date: Thu, 13 Feb 2020 10:26:48 +0100
Hi Brice,


Brice Waegeneire <brice <at> waegenei.re> writes:

> [...]
> +
> +(define-public haproxy
> +  (package
> +    (name "haproxy")
> +    (version "2.1.3")
> +    (source (origin
> +              (method url-fetch)
> +              (uri (string-append "https://www.haproxy.org/download/"
> +                                  (version-major+minor version)
> +                                  "/src/haproxy-" version ".tar.gz"))
> +              (sha256
> +               (base32
> +                "0n8bw3d6gikr8c56ycrvksp1sl0b4yfzp19867cxkl3l0daqwrxv"))))
> +    (build-system gnu-build-system)
> +    (arguments
> +     `(#:make-flags
> +       (let* ((out (assoc-ref %outputs "out")))
> +         (list (string-append "PREFIX=" out)
> +               (string-append "SBINDIR=" out "/bin")
  Is there any particular reason to pass '/bin' instead of the (default)
  '/sbin' here?
> +               (string-append "DOCDIR=" out "/share/" ,name)
> +               "TARGET=linux-glibc"
> +               "USE_LUA=1"
> +               "USE_OPENSSL=1"
> +               "USE_ZLIB=1"
> +               "USE_PCRE_2=1"))
> +       #:tests? #f                      ; no tests
  It seems there are some tests included with haproxy using something
  called 'VTest', in `scripts/run-regtests.sh' for example.
> +       #:phases
> +       (modify-phases %standard-phases
> +         (delete 'configure))))
> +    (inputs
> +     `(("lua" ,lua)
> +       ("openssl" ,openssl)
> +       ("pcre2" ,pcre2)
> +       ("zlib" ,zlib)))
> +    (home-page "https://www.haproxy.org/")
> +    (synopsis "Reliable, high performance TCP/HTTP load balancer")
> +    (description "HAProxy is a free, very fast and reliable solution offering
> +high availability, load balancing, and proxying for TCP and HTTP-based
> +applications.  It is particularly suited for web sites crawling under very
> +high loads while needing persistence or Layer7 processing.  Supporting tens of
> +thousands of connections is clearly realistic with todays hardware.")
> +    (license (list license:gpl2+
> +                   license:lgpl2.1))))
                              ^ haproxy header files are licensed under
                              lgpl2.1+, at least according to `doc/coding-style.txt'

Thanks for working on this!
- Jelle




Information forwarded to guix-patches <at> gnu.org:
bug#39587; Package guix-patches. (Thu, 13 Feb 2020 10:30:02 GMT) Full text and rfc822 format available.

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

From: Brice Waegeneire <brice <at> waegenei.re>
To: Jelle Licht <jlicht <at> fsfe.org>
Cc: 39587 <at> debbugs.gnu.org,
 Guix-patches <guix-patches-bounces+brice+lists=waegenei.re <at> gnu.org>
Subject: Re: [bug#39587] [PATCH] gnu: Add haproxy.
Date: Thu, 13 Feb 2020 10:29:34 +0000
On 2020-02-13 09:26, Jelle Licht wrote:
>   Is there any particular reason to pass '/bin' instead of the 
> (default)
>   '/sbin' here?
I wrongly though it wasn't used in Guix. It'll be removed.

>   It seems there are some tests included with haproxy using something
>   called 'VTest', in `scripts/run-regtests.sh' for example.
Those are regression tests, are they really useful for us?

>> +    (license (list license:gpl2+
>> +                   license:lgpl2.1))))
>                               ^ haproxy header files are licensed under
>                               lgpl2.1+, at least according to
> `doc/coding-style.txt'
The include files I opened, where « [...] version 2.1 exclusively. ». 
I'll append lgpl2.1+ for the header files without a license header.




Information forwarded to guix-patches <at> gnu.org:
bug#39587; Package guix-patches. (Thu, 13 Feb 2020 12:35:01 GMT) Full text and rfc822 format available.

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

From: Jelle Licht <jlicht <at> fsfe.org>
To: Brice Waegeneire <brice <at> waegenei.re>
Cc: 39587 <at> debbugs.gnu.org,
 Guix-patches <guix-patches-bounces+brice+lists=waegenei.re <at> gnu.org>
Subject: Re: [bug#39587] [PATCH] gnu: Add haproxy.
Date: Thu, 13 Feb 2020 13:34:50 +0100
Brice Waegeneire <brice <at> waegenei.re> writes:

> On 2020-02-13 09:26, Jelle Licht wrote:
>>   Is there any particular reason to pass '/bin' instead of the 
>> (default)
>>   '/sbin' here?
> I wrongly though it wasn't used in Guix. It'll be removed.
>
>>   It seems there are some tests included with haproxy using something
>>   called 'VTest', in `scripts/run-regtests.sh' for example.
> Those are regression tests, are they really useful for us?
I guess not :-)

>>> +    (license (list license:gpl2+
>>> +                   license:lgpl2.1))))
>>                               ^ haproxy header files are licensed under
>>                               lgpl2.1+, at least according to
>> `doc/coding-style.txt'
> The include files I opened, where « [...] version 2.1 exclusively. ». 
> I'll append lgpl2.1+ for the header files without a license header.
Good catch then! 




Information forwarded to guix-patches <at> gnu.org:
bug#39587; Package guix-patches. (Thu, 13 Feb 2020 12:50:01 GMT) Full text and rfc822 format available.

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

From: Brice Waegeneire <brice <at> waegenei.re>
To: 39587 <at> debbugs.gnu.org
Subject: [PATCH v2] gnu: Add haproxy.
Date: Thu, 13 Feb 2020 13:49:09 +0100
* gnu/packages/networking.scm (haproxy): New variable.
---

Keep haproxy binary in /sbin, add lgpl2.1+ license and explain why the test
are disabled.

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

diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index ed339524c0..dd0c7010c5 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -36,6 +36,7 @@
 ;;; Copyright © 2019 Jan Wielkiewicz <tona_kosmicznego_smiecia <at> interia.pl>
 ;;; Copyright © 2019 Daniel Schaefer <git <at> danielschaefer.me>
 ;;; Copyright © 2019 Diego N. Barbato <dnbarbato <at> posteo.de>
+;;; Copyright © 2020 Brice Waegeneire <brice <at> waegenei.re>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -64,6 +65,7 @@
   #:use-module (guix build-system perl)
   #:use-module (guix build-system python)
   #:use-module (guix build-system trivial)
+  #:use-module (guix utils)
   #:use-module (gnu packages)
   #:use-module (gnu packages admin)
   #:use-module (gnu packages adns)
@@ -2853,3 +2855,46 @@ cables.")
                    (license:non-copyleft ; slirpvde
                     "file://COPYING.slirpvde"
                     "See COPYING.slirpvde in the distribution.")))))
+
+(define-public haproxy
+  (package
+    (name "haproxy")
+    (version "2.1.3")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append "https://www.haproxy.org/download/"
+                                  (version-major+minor version)
+                                  "/src/haproxy-" version ".tar.gz"))
+              (sha256
+               (base32
+                "0n8bw3d6gikr8c56ycrvksp1sl0b4yfzp19867cxkl3l0daqwrxv"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:make-flags
+       (let* ((out (assoc-ref %outputs "out")))
+         (list (string-append "PREFIX=" out)
+               (string-append "DOCDIR=" out "/share/" ,name)
+               "TARGET=linux-glibc"
+               "USE_LUA=1"
+               "USE_OPENSSL=1"
+               "USE_ZLIB=1"
+               "USE_PCRE_2=1"))
+       #:tests? #f  ; there is only regression tests, using varnishtest
+       #:phases
+       (modify-phases %standard-phases
+         (delete 'configure))))
+    (inputs
+     `(("lua" ,lua)
+       ("openssl" ,openssl)
+       ("pcre2" ,pcre2)
+       ("zlib" ,zlib)))
+    (home-page "https://www.haproxy.org/")
+    (synopsis "Reliable, high performance TCP/HTTP load balancer")
+    (description "HAProxy is a free, very fast and reliable solution offering
+high availability, load balancing, and proxying for TCP and HTTP-based
+applications.  It is particularly suited for web sites crawling under very
+high loads while needing persistence or Layer7 processing.  Supporting tens of
+thousands of connections is clearly realistic with todays hardware.")
+    (license (list license:gpl2+
+                   license:lgpl2.1
+                   license:lgpl2.1+))))
-- 
2.25.0





Information forwarded to guix-patches <at> gnu.org:
bug#39587; Package guix-patches. (Fri, 14 Feb 2020 15:55:02 GMT) Full text and rfc822 format available.

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

From: Jelle Licht <jlicht <at> fsfe.org>
To: Brice Waegeneire <brice <at> waegenei.re>, 39587 <at> debbugs.gnu.org
Subject: Re: [bug#39587] [PATCH v2] gnu: Add haproxy.
Date: Fri, 14 Feb 2020 16:54:05 +0100
Hey Brice,

I pushed your commit as 96945cabe038cd02c2d76e8821d264626fcc999a to
master with the following cosmetic nitpicks:

Brice Waegeneire <brice <at> waegenei.re> writes:

> [...]
> +    (arguments
> +     `(#:make-flags
> +       (let* ((out (assoc-ref %outputs "out")))
> +         (list (string-append "PREFIX=" out)
> +               (string-append "DOCDIR=" out "/share/" ,name)
> +               "TARGET=linux-glibc"
> +               "USE_LUA=1"
> +               "USE_OPENSSL=1"
> +               "USE_ZLIB=1"
> +               "USE_PCRE_2=1"))
> +       #:tests? #f  ; there is only regression tests, using varnishtest
                               ^are
> [...]
> +    (description "HAProxy is a free, very fast and reliable solution offering
> +high availability, load balancing, and proxying for TCP and HTTP-based
> +applications.  It is particularly suited for web sites crawling under very
> +high loads while needing persistence or Layer7 processing.  Supporting tens of
> +thousands of connections is clearly realistic with todays hardware.")
                                                      ^today's
> [...]

Thanks again for packaging this!
- Jelle




bug closed, send any further explanations to 39587 <at> debbugs.gnu.org and Brice Waegeneire <brice <at> waegenei.re> Request was from Jakub Kądziołka <kuba <at> kadziolka.net> to control <at> debbugs.gnu.org. (Fri, 14 Feb 2020 22:45:02 GMT) Full text and rfc822 format available.

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

This bug report was last modified 5 years and 117 days ago.

Previous Next


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