haproxy: 2.8.4 -> 2.9.1

Update version and add option for QUIC support

Update has lots of bugfixes and features and no mention of breaking changes according to:

https://www.haproxy.com/blog/announcing-haproxy-2-9
https://git.haproxy.org/?p=haproxy-2.9.git;a=blob;f=CHANGELOG;h=e555bb8ded0ccfc3e82ba1b6d53d70c49851a196;hb=136dcd404828546ea5d9457eead3ac05182dd496
This commit is contained in:
Shelvacu 2024-01-03 14:11:05 -08:00
parent 00ed86edf0
commit 12d083e109

View File

@ -1,13 +1,16 @@
{ useLua ? true
, usePcre ? true
# QUIC "is currently supported as an experimental feature" so shouldn't be enabled by default
, useQuicTls ? false
, withPrometheusExporter ? true
, stdenv
, lib
, fetchurl
, nixosTests
, openssl
, zlib
, libxcrypt
, openssl ? null
, quictls ? null
, lua5_3 ? null
, pcre ? null
, systemd ? null
@ -15,17 +18,20 @@
assert useLua -> lua5_3 != null;
assert usePcre -> pcre != null;
assert useQuicTls -> quictls != null;
assert !useQuicTls -> openssl != null;
stdenv.mkDerivation (finalAttrs: {
let sslPkg = if useQuicTls then quictls else openssl;
in stdenv.mkDerivation (finalAttrs: {
pname = "haproxy";
version = "2.8.4";
version = "2.9.1";
src = fetchurl {
url = "https://www.haproxy.org/download/${lib.versions.majorMinor finalAttrs.version}/src/haproxy-${finalAttrs.version}.tar.gz";
hash = "sha256-gbrL9Q7G0Pfsqq18A+WZeLADIvva1u1KmJ3TF1S28l0=";
hash = "sha256-1YAcdyqrnEP0CWS3sztDiNFLW0V1C+TSZxeFhjzbnxw=";
};
buildInputs = [ openssl zlib libxcrypt ]
buildInputs = [ sslPkg zlib libxcrypt ]
++ lib.optional useLua lua5_3
++ lib.optional usePcre pcre
++ lib.optional stdenv.isLinux systemd;
@ -41,7 +47,11 @@ stdenv.mkDerivation (finalAttrs: {
buildFlags = [
"USE_OPENSSL=yes"
"SSL_LIB=${sslPkg}/lib"
"SSL_INC=${sslPkg}/include"
"USE_ZLIB=yes"
] ++ lib.optionals useQuicTls [
"USE_QUIC=1"
] ++ lib.optionals usePcre [
"USE_PCRE=yes"
"USE_PCRE_JIT=yes"