[PATCH 0/2]: gnu: haproxy: Update to 2.7.5.

  • Done
  • quality assurance status badge
Details
2 participants
  • Ludovic Courtès
  • Sharlatan Hellseher
Owner
unassigned
Submitted by
Sharlatan Hellseher
Severity
normal

Debbugs page

Sharlatan Hellseher wrote 2 years ago
(address . guix-patches@gnu.org)(name . Sharlatan Hellseher)(address . sharlatanus@gmail.com)
20230317220247.7388-1-sharlatanus@gmail.com
Hi Guix!

While update thc-ipv6 I've noticed that HAProxy is on a quite old version and
does not have service yet. This patch series updates it the latest stable
version and moves from general (gnu packages networking) module to more
logically close (gnu packages high-availability) module with keeping the
history of copyright strings.

I'll try to write my first service base on availale exaples for HAProxy :) in
free time.

Thanks,
Oleg

Sharlatan Hellseher (2):
gnu: haproxy: Update to 2.7.5.
gnu: haproxy: Move to (gnu packages high-availability).

gnu/packages/high-availability.scm | 53 +++++++++++++++++++++++++++++-
gnu/packages/networking.scm | 42 +----------------------
2 files changed, 53 insertions(+), 42 deletions(-)


base-commit: 933051281fbed0ae71bd40c24a701faf2a02791c
--
2.39.2
Sharlatan Hellseher wrote 2 years ago
[PATCH 1/2] gnu: haproxy: Update to 2.7.5.
(address . 62247@debbugs.gnu.org)(name . Sharlatan Hellseher)(address . sharlatanus@gmail.com)
20230317220357.7471-1-sharlatanus@gmail.com
* gnu/packages/networking.scm (haproxy): Update to 2.7.4.
[arguments]: Use Gexp.
<make-flags>: Add extra build options 'USE_PCRE2_JIT' enables JIT for
faster regex on libpcre2, 'USE_PROMEX' enables the Prometheus
exporter. Set CC to use cc-for-target, point 'LUA_INC' and 'LUA_LIB'
to corresponded '/include' and '/lib' outputs of Lua. Replace
'USE_PCRE_2' by correct option 'USE_PCRE2'.
---
gnu/packages/networking.scm | 50 +++++++++++++++++++++----------------
1 file changed, 28 insertions(+), 22 deletions(-)

Toggle diff (65 lines)
diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index 3fac05c411..feff20afb1 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -4243,30 +4243,36 @@ (define-public vde2
(define-public haproxy
(package
(name "haproxy")
- (version "2.1.7")
- (source (origin
- (method url-fetch)
- (uri (string-append "https://www.haproxy.org/download/"
- (version-major+minor version)
- "/src/haproxy-" version ".tar.gz"))
- (sha256
- (base32
- "0fd3c1znid5a9w3gcf77b85hm2a2558w9s02c4b7xzkmivqnqbir"))))
+ (version "2.7.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://www.haproxy.org/download/"
+ (version-major+minor version)
+ "/src/haproxy-" version ".tar.gz"))
+ (sha256
+ (base32 "00j5lwvrf8lgfid3108gclxbd46v3mnd4lh0lw4l0nn3f0rf9ip2"))))
(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 are only regression tests, using varnishtest
- #:phases
- (modify-phases %standard-phases
- (delete 'configure))))
+ (list
+ #:tests? #f ; there are only regression tests, using varnishtest
+ #:make-flags
+ #~(list "LUA_LIB_NAME=lua"
+ "TARGET=linux-glibc"
+ "USE_LUA=1"
+ "USE_OPENSSL=1"
+ "USE_PCRE2=1"
+ "USE_PCRE2_JIT=1"
+ "USE_PROMEX=1"
+ "USE_ZLIB=1"
+ (string-append "CC=" #$(cc-for-target))
+ (string-append "DOCDIR=" #$output "/share/" #$name)
+ (string-append "LUA_INC=" #$(this-package-input "lua") "/include")
+ (string-append "LUA_LIB=" #$(this-package-input "lua") "/lib")
+ (string-append "PREFIX=" #$output))
+ #:phases
+ #~(modify-phases %standard-phases
+ (delete 'configure))))
(inputs
(list lua openssl pcre2 zlib))
(home-page "https://www.haproxy.org/")
--
2.39.2
Sharlatan Hellseher wrote 2 years ago
[PATCH 2/2] gnu: haproxy: Move to (gnu packages high-availability).
(address . 62247@debbugs.gnu.org)(name . Sharlatan Hellseher)(address . sharlatanus@gmail.com)
20230317220357.7471-2-sharlatanus@gmail.com
Copyright records were synchronized based on commit history.

* gnu/packages/networking.scm (haproxy): Move this variable from here...
* gnu/packages/high-availability.scm (haproxy): ...to here.
---
gnu/packages/high-availability.scm | 53 +++++++++++++++++++++++++++++-
gnu/packages/networking.scm | 48 +--------------------------
2 files changed, 53 insertions(+), 48 deletions(-)

Toggle diff (152 lines)
diff --git a/gnu/packages/high-availability.scm b/gnu/packages/high-availability.scm
index 108ea553ef..ad6db537e5 100644
--- a/gnu/packages/high-availability.scm
+++ b/gnu/packages/high-availability.scm
@@ -1,4 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
+;;; Copyright © 2020 Brice Waegeneire <brice@waegenei.re>
+;;; Copyright © 2020, 2022 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2022 Sharlatan Hellseher <sharlatanus@gmail.com>
;;;
;;; This file is part of GNU Guix.
@@ -34,8 +36,10 @@ (define-module (gnu packages high-availability)
#:use-module (gnu packages glib)
#:use-module (gnu packages hardware)
#:use-module (gnu packages linux)
+ #:use-module (gnu packages lua)
#:use-module (gnu packages networking)
#:use-module (gnu packages nss)
+ #:use-module (gnu packages pcre)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages rsync)
@@ -45,13 +49,60 @@ (define-module (gnu packages high-availability)
#:use-module (gnu packages xml)
#:use-module (gnu packages)
#:use-module (guix build-system gnu)
- #:use-module (guix gexp)
#:use-module (guix download)
+ #:use-module (guix gexp)
#:use-module (guix git-download)
#:use-module (guix packages)
+ #:use-module (guix utils)
#:use-module ((guix licenses)
#:prefix license:))
+(define-public haproxy
+ (package
+ (name "haproxy")
+ (version "2.7.5")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (string-append "https://www.haproxy.org/download/"
+ (version-major+minor version)
+ "/src/haproxy-" version ".tar.gz"))
+ (sha256
+ (base32 "00j5lwvrf8lgfid3108gclxbd46v3mnd4lh0lw4l0nn3f0rf9ip2"))))
+ (build-system gnu-build-system)
+ (arguments
+ (list
+ #:tests? #f ; there are only regression tests, using varnishtest
+ #:make-flags
+ #~(list "LUA_LIB_NAME=lua"
+ "TARGET=linux-glibc"
+ "USE_LUA=1"
+ "USE_OPENSSL=1"
+ "USE_PCRE2=1"
+ "USE_PCRE2_JIT=1"
+ "USE_PROMEX=1"
+ "USE_ZLIB=1"
+ (string-append "CC=" #$(cc-for-target))
+ (string-append "DOCDIR=" #$output "/share/" #$name)
+ (string-append "LUA_INC=" #$(this-package-input "lua") "/include")
+ (string-append "LUA_LIB=" #$(this-package-input "lua") "/lib")
+ (string-append "PREFIX=" #$output))
+ #:phases
+ #~(modify-phases %standard-phases
+ (delete 'configure))))
+ (inputs
+ (list lua openssl pcre2 zlib))
+ (home-page "https://www.haproxy.org/")
+ (synopsis "Reliable, high performance TCP/HTTP load balancer")
+ (description "HAProxy offers @acronym{HA, high availability}, load
+balancing, and proxying for TCP and HTTP-based applications. It is particularly
+suited to Web sites crawling under very high loads while needing persistence or
+Layer 7 processing. Supporting tens of thousands of connections is clearly
+realistic with today's hardware.")
+ (license (list license:gpl2+
+ license:lgpl2.1
+ license:lgpl2.1+))))
+
(define-public libqb
(package
(name "libqb")
diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index feff20afb1..5962da3d0d 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -30,7 +30,7 @@
;;; Copyright © 2019 Vasile Dumitrascu <va511e@yahoo.com>
;;; Copyright © 2019 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2019 Timotej Lazar <timotej.lazar@araneo.si>
-;;; Copyright © 2019, 2020, 2021 Brice Waegeneire <brice@waegenei.re>
+;;; Copyright © 2019, 2021 Brice Waegeneire <brice@waegenei.re>
;;; Copyright © 2019, 2020 Alex Griffin <a@ajgrf.com>
;;; Copyright © 2019, 2020 Jan Wielkiewicz <tona_kosmicznego_smiecia@interia.pl>
;;; Copyright © 2019 Daniel Schaefer <git@danielschaefer.me>
@@ -4240,52 +4240,6 @@ (define-public vde2
"file://COPYING.slirpvde"
"See COPYING.slirpvde in the distribution."))))))
-(define-public haproxy
- (package
- (name "haproxy")
- (version "2.7.5")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "https://www.haproxy.org/download/"
- (version-major+minor version)
- "/src/haproxy-" version ".tar.gz"))
- (sha256
- (base32 "00j5lwvrf8lgfid3108gclxbd46v3mnd4lh0lw4l0nn3f0rf9ip2"))))
- (build-system gnu-build-system)
- (arguments
- (list
- #:tests? #f ; there are only regression tests, using varnishtest
- #:make-flags
- #~(list "LUA_LIB_NAME=lua"
- "TARGET=linux-glibc"
- "USE_LUA=1"
- "USE_OPENSSL=1"
- "USE_PCRE2=1"
- "USE_PCRE2_JIT=1"
- "USE_PROMEX=1"
- "USE_ZLIB=1"
- (string-append "CC=" #$(cc-for-target))
- (string-append "DOCDIR=" #$output "/share/" #$name)
- (string-append "LUA_INC=" #$(this-package-input "lua") "/include")
- (string-append "LUA_LIB=" #$(this-package-input "lua") "/lib")
- (string-append "PREFIX=" #$output))
- #:phases
- #~(modify-phases %standard-phases
- (delete 'configure))))
- (inputs
- (list lua openssl pcre2 zlib))
- (home-page "https://www.haproxy.org/")
- (synopsis "Reliable, high performance TCP/HTTP load balancer")
- (description "HAProxy offers @acronym{HA, high availability}, load
-balancing, and proxying for TCP and HTTP-based applications. It is particularly
-suited to Web sites crawling under very high loads while needing persistence or
-Layer 7 processing. Supporting tens of thousands of connections is clearly
-realistic with today's hardware.")
- (license (list license:gpl2+
- license:lgpl2.1
- license:lgpl2.1+))))
-
(define-public lldpd
(package
(name "lldpd")
--
2.39.2
Ludovic Courtès wrote 2 years ago
Re: bug#62247: [PATCH 0/2]: gnu: haproxy: Update to 2.7.5.
(name . Sharlatan Hellseher)(address . sharlatanus@gmail.com)(address . 62247-done@debbugs.gnu.org)
875yanb3pk.fsf@gnu.org
Hi,

Sharlatan Hellseher <sharlatanus@gmail.com> skribis:

Toggle quote (3 lines)
> gnu: haproxy: Update to 2.7.5.
> gnu: haproxy: Move to (gnu packages high-availability).

Applied, thanks!

Ludo’.
Closed
?
Your comment

This issue is archived.

To comment on this conversation send an email to 62247@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 62247
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch
You may also tag this issue. See list of standard tags. For example, to set the confirmed and easy tags
mumi command -t +confirmed -t +easy
Or, remove the moreinfo tag and set the help tag
mumi command -t -moreinfo -t +help