Message ID | 20200213090615.29979-1-brice@waegenei.re |
---|---|
State | Accepted |
Headers | show |
Series | [bug#39587] gnu: Add haproxy. | expand |
Context | Check | Description |
---|---|---|
cbaines/applying patch | fail | View Laminar job |
Hi Brice, Brice Waegeneire <brice@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
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.
Brice Waegeneire <brice@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!
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@interia.pl> ;;; Copyright © 2019 Daniel Schaefer <git@danielschaefer.me> ;;; Copyright © 2019 Diego N. Barbato <dnbarbato@posteo.de> +;;; Copyright © 2020 Brice Waegeneire <brice@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))))