From a90fe1c3ef096c3c47db97f7d683631f719fbc62 Mon Sep 17 00:00:00 2001 From: Carl George Date: Thu, 9 May 2019 12:34:51 -0500 Subject: [PATCH 01/79] Switch unit file from ProtectSystem strict to full https://bugzilla.redhat.com/show_bug.cgi?id=1706651 --- caddy.service | 3 +-- caddy.spec | 8 ++++---- 2 files changed, 5 insertions(+), 6 deletions(-) diff --git a/caddy.service b/caddy.service index 4e181fa..f0293b0 100644 --- a/caddy.service +++ b/caddy.service @@ -18,8 +18,7 @@ LimitNOFILE=1048576 LimitNPROC=512 PrivateTmp=true ProtectHome=true -ProtectSystem=strict -ReadWriteDirectories=/var/lib/caddy +ProtectSystem=full AmbientCapabilities=CAP_NET_BIND_SERVICE [Install] diff --git a/caddy.spec b/caddy.spec index 762a672..d93e680 100644 --- a/caddy.spec +++ b/caddy.spec @@ -31,7 +31,7 @@ Name: caddy Version: 0.11.4 -Release: 1%{?dist} +Release: 2%{?dist} Summary: HTTP/2 web server with automatic HTTPS License: ASL 2.0 and MIT URL: https://caddyserver.com @@ -473,9 +473,6 @@ export LDFLAGS="${LDFLAGS:-} -X %{import_path}/caddy/caddymain.appVersion=%{vers install -D -m 0755 _bin/caddy %{buildroot}%{_bindir}/caddy install -D -m 0644 %{S:1} %{buildroot}%{_sysconfdir}/caddy/caddy.conf install -D -m 0644 %{S:2} %{buildroot}%{_unitdir}/caddy.service -%if %{defined rhel} -sed -e '/ProtectSystem/ s/strict/full/' -i %{buildroot}%{_unitdir}/caddy.service -%endif install -D -m 0644 %{S:3} %{buildroot}%{_datadir}/caddy/index.html install -d -m 0755 %{buildroot}%{_sysconfdir}/caddy/conf.d install -d -m 0750 %{buildroot}%{_sharedstatedir}/caddy @@ -557,6 +554,9 @@ fi %changelog +* Thu May 09 2019 Carl George - 0.11.4-2 +- Switch unit file from ProtectSystem strict to full rhbz#1706651 + * Wed Mar 06 2019 Carl George - 0.11.4-1 - Latest upstream - Update bundled dnsproviders to 0.1.3 From 68685a13a7cc45584bc26ead25b202db77c45131 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 24 Jul 2019 19:47:39 +0000 Subject: [PATCH 02/79] - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- caddy.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/caddy.spec b/caddy.spec index d93e680..bb5ccf0 100644 --- a/caddy.spec +++ b/caddy.spec @@ -31,7 +31,7 @@ Name: caddy Version: 0.11.4 -Release: 2%{?dist} +Release: 3%{?dist} Summary: HTTP/2 web server with automatic HTTPS License: ASL 2.0 and MIT URL: https://caddyserver.com @@ -554,6 +554,9 @@ fi %changelog +* Wed Jul 24 2019 Fedora Release Engineering - 0.11.4-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + * Thu May 09 2019 Carl George - 0.11.4-2 - Switch unit file from ProtectSystem strict to full rhbz#1706651 From d70febfa45a6ab5433545af64c1a051b2a21213b Mon Sep 17 00:00:00 2001 From: Carl George Date: Fri, 6 Sep 2019 20:10:23 -0500 Subject: [PATCH 03/79] Remove `-log stdout` from ExecStart The `-log` flag is not the same thing as the `log` configuration directive. While the latter is for the access log, the former is actually for the process log, which essentially amounts to debug information that is overkill for the general use case. --- caddy.service | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/caddy.service b/caddy.service index f0293b0..89503b2 100644 --- a/caddy.service +++ b/caddy.service @@ -9,7 +9,7 @@ Group=caddy Environment=CADDYPATH=/var/lib/caddy EnvironmentFile=-/etc/caddy/envfile ExecStartPre=/usr/bin/caddy -conf /etc/caddy/caddy.conf -validate -ExecStart=/usr/bin/caddy -conf /etc/caddy/caddy.conf -log stdout -root /tmp -agree +ExecStart=/usr/bin/caddy -conf /etc/caddy/caddy.conf -root /tmp -agree ExecReload=/usr/bin/kill -USR1 $MAINPID KillMode=mixed KillSignal=SIGQUIT From c25c9bb6c838267cb4ad0d07a0a8eb9e5904e632 Mon Sep 17 00:00:00 2001 From: Carl George Date: Fri, 6 Sep 2019 22:14:19 -0500 Subject: [PATCH 04/79] Latest upstream 1.0.3 --- caddy.spec | 138 +++++++++++++++-------------------------------------- sources | 2 +- 2 files changed, 39 insertions(+), 101 deletions(-) diff --git a/caddy.spec b/caddy.spec index bb5ccf0..9665f1a 100644 --- a/caddy.spec +++ b/caddy.spec @@ -29,19 +29,13 @@ %define gobuild(o:) go build -ldflags "${LDFLAGS:-} -B 0x$(head -c20 /dev/urandom|od -An -tx1|tr -d ' \\n')" -a -v -x %{?**}; %endif -Name: caddy -Version: 0.11.4 -Release: 3%{?dist} -Summary: HTTP/2 web server with automatic HTTPS -License: ASL 2.0 and MIT -URL: https://caddyserver.com -ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm} aarch64 ppc64le s390x %{mips}} -%{?go_compiler:BuildRequires: compiler(go-compiler)} -# https://github.com/mholt/caddy/pull/2267 -BuildRequires: golang >= 1.10 -BuildRequires: systemd -%{?systemd_requires} -Provides: webserver +Name: caddy +Version: 1.0.3 +Release: 1%{?dist} +Summary: HTTP/2 web server with automatic HTTPS +License: ASL 2.0 and MIT +URL: https://caddyserver.com +ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm} aarch64 ppc64le s390x %{mips}} # caddy %global import_path github.com/mholt/caddy @@ -50,6 +44,30 @@ Source1: caddy.conf Source2: caddy.service Source3: index.html +# https://github.com/mholt/caddy/commit/80dfb8b2a7f89b120a627bc4d866a1dc5ed3d92f#diff-04c6e90faac2675aa89e2176d2eec7d8 +BuildRequires: golang >= 1.12 +%{?go_compiler:BuildRequires: compiler(go-compiler)} +BuildRequires: golang(github.com/dustin/go-humanize) +BuildRequires: golang(github.com/flynn/go-shlex) +BuildRequires: golang(github.com/go-acme/lego/certcrypto) +BuildRequires: golang(github.com/go-acme/lego/challenge) +BuildRequires: golang(github.com/go-acme/lego/challenge/tlsalpn01) +BuildRequires: golang(github.com/google/uuid) +BuildRequires: golang(github.com/gorilla/websocket) +BuildRequires: golang(github.com/hashicorp/go-syslog) +BuildRequires: golang(github.com/jimstudt/http-authentication/basic) +BuildRequires: golang(github.com/klauspost/cpuid) +BuildRequires: golang(github.com/lucas-clemente/quic-go) +BuildRequires: golang(github.com/lucas-clemente/quic-go/h2quic) +# https://github.com/caddyserver/caddy/commit/0b2e054 +# https://github.com/mholt/certmagic/commit/6a42ef9 +BuildRequires: golang(github.com/mholt/certmagic) >= 0.6.2 +BuildRequires: golang(github.com/naoina/toml) +BuildRequires: golang(gopkg.in/russross/blackfriday.v1) +BuildRequires: golang(golang.org/x/net/http2) +BuildRequires: golang(gopkg.in/natefinch/lumberjack.v2) +BuildRequires: golang(gopkg.in/yaml.v2) + # dnsproviders %global import_path_dnsproviders github.com/caddyserver/dnsproviders %global version_dnsproviders 0.1.3 @@ -122,93 +140,10 @@ Source21: https://%{import_path_realip}/archive/%{commit_realip}/realip-%{commit Provides: bundled(golang(%{import_path_realip})) = %{commit_realip} %endif -# vendored libraries (Source0) -Provides: bundled(golang(cloud.google.com/go/compute/metadata)) = 7a4ba9f439fbc50061834a4063b57cf7222ba83f -Provides: bundled(golang(github.com/aead/chacha20)) = 8b13a72661dae6e9e5dea04f344f0dc95ea29547 -Provides: bundled(golang(github.com/alecthomas/template)) = a0175ee3bccc567396460bf5acd36800cb10c49c -Provides: bundled(golang(github.com/alecthomas/units)) = 2efee857e7cfd4f3d0138cc3cbb1b4966962b93a -Provides: bundled(golang(github.com/codahale/aesnicheck)) = 349fcc471aaccc29cd074e1275f1a494323826cd -Provides: bundled(golang(github.com/dustin/go-humanize)) = 259d2a102b871d17f30e3cd9881a642961a1e486 -Provides: bundled(golang(github.com/flynn/go-shlex)) = 3f9db97f856818214da2e1057f8ad84803971cff -Provides: bundled(golang(github.com/golang/mock/gomock)) = 600781dde9cca80734169b9e969d9054ccc57937 -Provides: bundled(golang(github.com/golang/protobuf/proto)) = 748d386b5c1ea99658fd69fe9f03991ce86a90c1 -Provides: bundled(golang(github.com/golang/protobuf/ptypes/any)) = 748d386b5c1ea99658fd69fe9f03991ce86a90c1 -Provides: bundled(golang(github.com/google/uuid)) = dec09d789f3dba190787f8b4454c7d3c936fed9e -Provides: bundled(golang(github.com/gorilla/websocket)) = a69d9f6de432e2c6b296a947d8a5ee88f68522cf -Provides: bundled(golang(github.com/hashicorp/go-syslog)) = 326bf4a7f709d263f964a6a96558676b103f3534 -Provides: bundled(golang(github.com/jimstudt/http-authentication/basic)) = 3eca13d6893afd7ecabe15f4445f5d2872a1b012 -Provides: bundled(golang(github.com/klauspost/cpuid)) = ae832f27941af41db13bd6d8efd2493e3b22415a -Provides: bundled(golang(github.com/lucas-clemente/quic-go)) = f90751eabaa39364e3861ee5a8b179f140847d7e -Provides: bundled(golang(github.com/mholt/certmagic)) = a7f18a937c080b88693cd4e14d48e42cc067b268 -Provides: bundled(golang(github.com/miekg/dns)) = 0f3adef2e2201d72e50309a36fc99d8a9d1a4960 -Provides: bundled(golang(github.com/naoina/go-stringutil)) = 6b638e95a32d0c1131db0e7fe83775cbea4a0d0b -Provides: bundled(golang(github.com/naoina/toml)) = e6f5723bf2a66af014955e0888881314cf294129 -Provides: bundled(golang(github.com/russross/blackfriday)) = 067529f716f4c3f5e37c8c95ddd59df1007290ae -Provides: bundled(golang(github.com/xenolf/lego/acme)) = a43ec709e8034f388aab28d14b97aeed0e7aa98c -Provides: bundled(golang(github.com/xenolf/lego/certcrypto)) = a43ec709e8034f388aab28d14b97aeed0e7aa98c -Provides: bundled(golang(github.com/xenolf/lego/certificate)) = a43ec709e8034f388aab28d14b97aeed0e7aa98c -Provides: bundled(golang(github.com/xenolf/lego/challenge)) = a43ec709e8034f388aab28d14b97aeed0e7aa98c -Provides: bundled(golang(github.com/xenolf/lego/lego)) = f05aa4c241fd8b43da9dc8cab8c8965e5b3c1b55 -Provides: bundled(golang(github.com/xenolf/lego/log)) = b05b54d1f69a31ceed92e2995243c5b17821c9e4 -Provides: bundled(golang(github.com/xenolf/lego/platform/wait)) = a43ec709e8034f388aab28d14b97aeed0e7aa98c -Provides: bundled(golang(github.com/xenolf/lego/registration)) = a43ec709e8034f388aab28d14b97aeed0e7aa98c -Provides: bundled(golang(github.com/xenolf/lego/vendor/github.com/miekg/dns)) = b05b54d1f69a31ceed92e2995243c5b17821c9e4 -Provides: bundled(golang(github.com/xenolf/lego/vendor/golang.org/x/crypto/ed25519)) = b05b54d1f69a31ceed92e2995243c5b17821c9e4 -Provides: bundled(golang(github.com/xenolf/lego/vendor/golang.org/x/crypto/ocsp)) = b05b54d1f69a31ceed92e2995243c5b17821c9e4 -Provides: bundled(golang(github.com/xenolf/lego/vendor/golang.org/x/crypto/pbkdf2)) = b05b54d1f69a31ceed92e2995243c5b17821c9e4 -Provides: bundled(golang(github.com/xenolf/lego/vendor/golang.org/x/net/bpf)) = b05b54d1f69a31ceed92e2995243c5b17821c9e4 -Provides: bundled(golang(github.com/xenolf/lego/vendor/golang.org/x/net/idna)) = b05b54d1f69a31ceed92e2995243c5b17821c9e4 -Provides: bundled(golang(github.com/xenolf/lego/vendor/golang.org/x/net/internal/iana)) = b05b54d1f69a31ceed92e2995243c5b17821c9e4 -Provides: bundled(golang(github.com/xenolf/lego/vendor/golang.org/x/net/internal/socket)) = b05b54d1f69a31ceed92e2995243c5b17821c9e4 -Provides: bundled(golang(github.com/xenolf/lego/vendor/golang.org/x/net/ipv4)) = b05b54d1f69a31ceed92e2995243c5b17821c9e4 -Provides: bundled(golang(github.com/xenolf/lego/vendor/golang.org/x/net/ipv6)) = b05b54d1f69a31ceed92e2995243c5b17821c9e4 -Provides: bundled(golang(github.com/xenolf/lego/vendor/golang.org/x/sys/unix)) = b05b54d1f69a31ceed92e2995243c5b17821c9e4 -Provides: bundled(golang(github.com/xenolf/lego/vendor/golang.org/x/text/collate)) = b05b54d1f69a31ceed92e2995243c5b17821c9e4 -Provides: bundled(golang(github.com/xenolf/lego/vendor/golang.org/x/text/internal/colltab)) = b05b54d1f69a31ceed92e2995243c5b17821c9e4 -Provides: bundled(golang(github.com/xenolf/lego/vendor/golang.org/x/text/internal/gen)) = b05b54d1f69a31ceed92e2995243c5b17821c9e4 -Provides: bundled(golang(github.com/xenolf/lego/vendor/golang.org/x/text/internal/tag)) = b05b54d1f69a31ceed92e2995243c5b17821c9e4 -Provides: bundled(golang(github.com/xenolf/lego/vendor/golang.org/x/text/internal/triegen)) = b05b54d1f69a31ceed92e2995243c5b17821c9e4 -Provides: bundled(golang(github.com/xenolf/lego/vendor/golang.org/x/text/internal/ucd)) = b05b54d1f69a31ceed92e2995243c5b17821c9e4 -Provides: bundled(golang(github.com/xenolf/lego/vendor/golang.org/x/text/language)) = b05b54d1f69a31ceed92e2995243c5b17821c9e4 -Provides: bundled(golang(github.com/xenolf/lego/vendor/golang.org/x/text/secure/bidirule)) = b05b54d1f69a31ceed92e2995243c5b17821c9e4 -Provides: bundled(golang(github.com/xenolf/lego/vendor/golang.org/x/text/transform)) = b05b54d1f69a31ceed92e2995243c5b17821c9e4 -Provides: bundled(golang(github.com/xenolf/lego/vendor/golang.org/x/text/unicode/bidi)) = b05b54d1f69a31ceed92e2995243c5b17821c9e4 -Provides: bundled(golang(github.com/xenolf/lego/vendor/golang.org/x/text/unicode/cldr)) = b05b54d1f69a31ceed92e2995243c5b17821c9e4 -Provides: bundled(golang(github.com/xenolf/lego/vendor/golang.org/x/text/unicode/norm)) = b05b54d1f69a31ceed92e2995243c5b17821c9e4 -Provides: bundled(golang(github.com/xenolf/lego/vendor/golang.org/x/text/unicode/rangetable)) = b05b54d1f69a31ceed92e2995243c5b17821c9e4 -Provides: bundled(golang(github.com/xenolf/lego/vendor/gopkg.in/square/go-jose.v2)) = b05b54d1f69a31ceed92e2995243c5b17821c9e4 -Provides: bundled(golang(go4.org/syncutil/singleflight)) = 034d17a462f7b2dcd1a4a73553ec5357ff6e6c6e -Provides: bundled(golang(golang.org/x/crypto/curve25519)) = 94eea52f7b742c7cbe0b03b22f0c4c8631ece122 -Provides: bundled(golang(golang.org/x/crypto/ed25519)) = c4a91bd4f524f10d064139674cf55852e055ad01 -Provides: bundled(golang(golang.org/x/crypto/hkdf)) = 2faea1465de239e4babd8f5905cc25b781712442 -Provides: bundled(golang(golang.org/x/crypto/ocsp)) = 2faea1465de239e4babd8f5905cc25b781712442 -Provides: bundled(golang(golang.org/x/crypto/ssh/terminal)) = 2faea1465de239e4babd8f5905cc25b781712442 -Provides: bundled(golang(golang.org/x/net/context)) = f5079bd7f6f74e23c4d65efa0f4ce14cbd6a3c0f -Provides: bundled(golang(golang.org/x/net/http/httpguts)) = 8a410e7b638dca158bf9e766925842f6651ff828 -Provides: bundled(golang(golang.org/x/net/http2)) = f5079bd7f6f74e23c4d65efa0f4ce14cbd6a3c0f -Provides: bundled(golang(golang.org/x/net/idna)) = f5079bd7f6f74e23c4d65efa0f4ce14cbd6a3c0f -Provides: bundled(golang(golang.org/x/net/lex/httplex)) = f5079bd7f6f74e23c4d65efa0f4ce14cbd6a3c0f -Provides: bundled(golang(golang.org/x/net/publicsuffix)) = f5079bd7f6f74e23c4d65efa0f4ce14cbd6a3c0f -Provides: bundled(golang(golang.org/x/oauth2)) = b53b38ad8a6435bd399ea76d0fa74f23149cca4e -Provides: bundled(golang(golang.org/x/sys/cpu)) = 49385e6e15226593f68b26af201feec29d5bba22 -Provides: bundled(golang(golang.org/x/sys/unix)) = 35ef4487ce0a1ea5d4b616ffe71e34febe723695 -Provides: bundled(golang(golang.org/x/text/internal/gen)) = 836efe42bb4aa16aaa17b9c155d8813d336ed720 -Provides: bundled(golang(golang.org/x/text/internal/triegen)) = 836efe42bb4aa16aaa17b9c155d8813d336ed720 -Provides: bundled(golang(golang.org/x/text/internal/ucd)) = 836efe42bb4aa16aaa17b9c155d8813d336ed720 -Provides: bundled(golang(golang.org/x/text/secure/bidirule)) = 836efe42bb4aa16aaa17b9c155d8813d336ed720 -Provides: bundled(golang(golang.org/x/text/transform)) = 836efe42bb4aa16aaa17b9c155d8813d336ed720 -Provides: bundled(golang(golang.org/x/text/unicode/bidi)) = 836efe42bb4aa16aaa17b9c155d8813d336ed720 -Provides: bundled(golang(golang.org/x/text/unicode/cldr)) = 836efe42bb4aa16aaa17b9c155d8813d336ed720 -Provides: bundled(golang(golang.org/x/text/unicode/norm)) = 836efe42bb4aa16aaa17b9c155d8813d336ed720 -Provides: bundled(golang(golang.org/x/text/unicode/rangetable)) = 836efe42bb4aa16aaa17b9c155d8813d336ed720 -Provides: bundled(golang(google.golang.org/api/compute/v1)) = 66dba45b06824cbfe030e696b156d562994531e1 -Provides: bundled(golang(google.golang.org/api/gensupport)) = 66dba45b06824cbfe030e696b156d562994531e1 -Provides: bundled(golang(google.golang.org/api/googleapi)) = 66dba45b06824cbfe030e696b156d562994531e1 -Provides: bundled(golang(google.golang.org/appengine)) = ad2570cd3913654e00c5f0183b39d2f998e54046 -Provides: bundled(golang(gopkg.in/alecthomas/kingpin.v2)) = 1087e65c9441605df944fb12c33f0fe7072d18ca -Provides: bundled(golang(gopkg.in/natefinch/lumberjack.v2)) = 7d6a1875575e09256dc552b4c0e450dcd02bd10e -Provides: bundled(golang(gopkg.in/square/go-jose.v2)) = 6ee92191fea850cdcab9a18867abf5f521cdbadb -Provides: bundled(golang(gopkg.in/yaml.v2)) = 25c4ec802a7d637f88d584ab26798e94ad14c13b +BuildRequires: systemd +%{?systemd_requires} + +Provides: webserver # vendored libraries (Source11) Provides: bundled(golang(cloud.google.com/go/compute/metadata)) = 0.26.0 @@ -554,6 +489,9 @@ fi %changelog +* Sat Sep 07 2019 Carl George - 1.0.3-1 +- Latest upstream + * Wed Jul 24 2019 Fedora Release Engineering - 0.11.4-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild diff --git a/sources b/sources index 990cebe..c44d2b7 100644 --- a/sources +++ b/sources @@ -1,4 +1,4 @@ -SHA512 (caddy-0.11.4.tar.gz) = 463c1e570292c042ffc959c2bf0c20df55477843deeef2f782030fe681ab8c5317505fdb00659662d52ffc8a56b5b1a7b7e6fc72b7f737d4950331ac781f239a +SHA512 (caddy-1.0.3.tar.gz) = 5fa015268ccfcc7439ce688798630b6d2ed30c92e0e828ca524dd373bdacf88be5435807cec3bddca712d2643e14d5bc314d6e488f280cc529d0f85279ff5f40 SHA512 (dnsproviders-0.1.3.tar.gz) = 8f8b1199f5c41ceee06221d2e79260d90e02e91af77fb90c2a2bad8a6c630311c4880ea94f5f570d9d89132c1b81c5f1b1599eecfc24a9dd3f0f3254def7f48f SHA512 (geoip-6af15b436fdcb08a743c30f9bad044ad32b53b49.tar.gz) = 34ccea181cfd17e05c5fb0dc3ebe04440ef62fe57c8ec585e61d69f2c8ebd9a20be3ead9e879517b5adcec0f135836ad6979d49942ee3d5bae6a5d6428d3442d SHA512 (lego-2.2.0.tar.gz) = 8f071131c6379daeb2800730d798145516912b747636245d1738a76aefa06ecd8a8b32aceb80b7785b1a118ea4bbe90853d2ec182ce60e8f7179efd1727758dc From e1d736ca64360d7be258970e67686bdb5debee58 Mon Sep 17 00:00:00 2001 From: Carl George Date: Fri, 6 Sep 2019 22:22:46 -0500 Subject: [PATCH 05/79] Remove bundled lego and plugins --- caddy.spec | 332 ++++++++--------------------------------------------- sources | 4 - 2 files changed, 51 insertions(+), 285 deletions(-) diff --git a/caddy.spec b/caddy.spec index 9665f1a..981e180 100644 --- a/caddy.spec +++ b/caddy.spec @@ -1,21 +1,18 @@ -# plugins +# http plugins %bcond_without geoip %bcond_without realip +# dns plugins +%bcond_without azure %bcond_without cloudflare %bcond_without digitalocean %bcond_without dyn %bcond_without gandi +%bcond_without googlecloud %bcond_without namecheap %bcond_without pdns %bcond_without rackspace %bcond_without rfc2136 -%bcond_without googlecloud %bcond_without route53 -%bcond_without azure - -%if %{with azure}%{with cloudflare}%{with digitalocean}%{with dyn}%{with gandi}%{with googlecloud}%{with namecheap}%{with pdns}%{with rackspace}%{with rfc2136}%{with route53} -%bcond_without dnsproviders -%endif %bcond_with debug @@ -33,7 +30,7 @@ Name: caddy Version: 1.0.3 Release: 1%{?dist} Summary: HTTP/2 web server with automatic HTTPS -License: ASL 2.0 and MIT +License: ASL 2.0 URL: https://caddyserver.com ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm} aarch64 ppc64le s390x %{mips}} @@ -68,76 +65,58 @@ BuildRequires: golang(golang.org/x/net/http2) BuildRequires: golang(gopkg.in/natefinch/lumberjack.v2) BuildRequires: golang(gopkg.in/yaml.v2) -# dnsproviders -%global import_path_dnsproviders github.com/caddyserver/dnsproviders -%global version_dnsproviders 0.1.3 -Source10: https://%{import_path_dnsproviders}/archive/v%{version_dnsproviders}/dnsproviders-%{version_dnsproviders}.tar.gz - -# lego -%global import_path_lego github.com/xenolf/lego -%global version_lego 2.2.0 -Source11: https://%{import_path_lego}/archive/v%{version_lego}/lego-%{version_lego}.tar.gz +# http plugins +%if %{with geoip} +BuildRequires: golang(github.com/aablinov/caddy-geoip) +%endif +%if %{with realip} +BuildRequires: golang(github.com/captncraig/caddy-realip) +%endif +# dns plugins %if %{with azure} -Provides: bundled(golang(%{import_path_dnsproviders}/azure)) = %{version_dnsproviders} -Provides: bundled(golang(%{import_path_lego}/providers/dns/azure)) = %{version_lego} +BuildRequires: golang(github.com/caddyserver/dnsproviders/azure) +BuildRequires: golang(github.com/go-acme/lego/providers/dns/azure) %endif %if %{with cloudflare} -Provides: bundled(golang(%{import_path_dnsproviders}/cloudflare)) = %{version_dnsproviders} -Provides: bundled(golang(%{import_path_lego}/providers/dns/cloudflare)) = %{version_lego} +BuildRequires: golang(github.com/caddyserver/dnsproviders/cloudflare) +BuildRequires: golang(github.com/go-acme/lego/providers/dns/cloudflare) %endif %if %{with digitalocean} -Provides: bundled(golang(%{import_path_dnsproviders}/digitalocean)) = %{version_dnsproviders} -Provides: bundled(golang(%{import_path_lego}/providers/dns/digitalocean)) = %{version_lego} +BuildRequires: golang(github.com/caddyserver/dnsproviders/digitalocean) +BuildRequires: golang(github.com/go-acme/lego/providers/dns/digitalocean) %endif %if %{with dyn} -Provides: bundled(golang(%{import_path_dnsproviders}/dyn)) = %{version_dnsproviders} -Provides: bundled(golang(%{import_path_lego}/providers/dns/dyn)) = %{version_lego} +BuildRequires: golang(github.com/caddyserver/dnsproviders/dyn) +BuildRequires: golang(github.com/go-acme/lego/providers/dns/dyn) %endif %if %{with gandi} -Provides: bundled(golang(%{import_path_dnsproviders}/gandi)) = %{version_dnsproviders} -Provides: bundled(golang(%{import_path_lego}/providers/dns/gandi)) = %{version_lego} +BuildRequires: golang(github.com/caddyserver/dnsproviders/gandi) +BuildRequires: golang(github.com/go-acme/lego/providers/dns/gandi) %endif %if %{with googlecloud} -Provides: bundled(golang(%{import_path_dnsproviders}/googlecloud)) = %{version_dnsproviders} -Provides: bundled(golang(%{import_path_lego}/providers/dns/googlecloud)) = %{version_lego} +BuildRequires: golang(github.com/caddyserver/dnsproviders/googlecloud) +BuildRequires: golang(github.com/go-acme/lego/providers/dns/gcloud) %endif %if %{with namecheap} -Provides: bundled(golang(%{import_path_dnsproviders}/namecheap)) = %{version_dnsproviders} -Provides: bundled(golang(%{import_path_lego}/providers/dns/namecheap)) = %{version_lego} +BuildRequires: golang(github.com/caddyserver/dnsproviders/namecheap) +BuildRequires: golang(github.com/go-acme/lego/providers/dns/namecheap) %endif %if %{with pdns} -Provides: bundled(golang(%{import_path_dnsproviders}/pdns)) = %{version_dnsproviders} -Provides: bundled(golang(%{import_path_lego}/providers/dns/pdns)) = %{version_lego} +BuildRequires: golang(github.com/caddyserver/dnsproviders/pdns) +BuildRequires: golang(github.com/go-acme/lego/providers/dns/pdns) %endif %if %{with rackspace} -Provides: bundled(golang(%{import_path_dnsproviders}/rackspace)) = %{version_dnsproviders} -Provides: bundled(golang(%{import_path_lego}/providers/dns/rackspace)) = %{version_lego} +BuildRequires: golang(github.com/caddyserver/dnsproviders/rackspace) +BuildRequires: golang(github.com/go-acme/lego/providers/dns/rackspace) %endif %if %{with rfc2136} -Provides: bundled(golang(%{import_path_dnsproviders}/rfc2136)) = %{version_dnsproviders} -Provides: bundled(golang(%{import_path_lego}/providers/dns/rfc2136)) = %{version_lego} +BuildRequires: golang(github.com/caddyserver/dnsproviders/rfc2136) +BuildRequires: golang(github.com/go-acme/lego/providers/dns/rfc2136) %endif %if %{with route53} -Provides: bundled(golang(%{import_path_dnsproviders}/route53)) = %{version_dnsproviders} -Provides: bundled(golang(%{import_path_lego}/providers/dns/route53)) = %{version_lego} -%endif - -# geoip -%global import_path_geoip github.com/kodnaplakal/caddy-geoip -%global commit_geoip 6af15b436fdcb08a743c30f9bad044ad32b53b49 -Source20: https://%{import_path_geoip}/archive/%{commit_geoip}/geoip-%{commit_geoip}.tar.gz -%if %{with geoip} -Provides: bundled(golang(%{import_path_geoip})) = %{commit_geoip} -BuildRequires: golang(github.com/oschwald/maxminddb-golang) -%endif - -# realip -%global import_path_realip github.com/captncraig/caddy-realip -%global commit_realip 5dd1f4047d0f649f21ba9f8d7e491d712be9a5b0 -Source21: https://%{import_path_realip}/archive/%{commit_realip}/realip-%{commit_realip}.tar.gz -%if %{with realip} -Provides: bundled(golang(%{import_path_realip})) = %{commit_realip} +BuildRequires: golang(github.com/caddyserver/dnsproviders/route53) +BuildRequires: golang(github.com/go-acme/lego/providers/dns/route53) %endif BuildRequires: systemd @@ -145,191 +124,6 @@ BuildRequires: systemd Provides: webserver -# vendored libraries (Source11) -Provides: bundled(golang(cloud.google.com/go/compute/metadata)) = 0.26.0 -Provides: bundled(golang(github.com/Azure/azure-sdk-for-go/services/dns/mgmt/2017-09-01/dns)) = 19.1.0 -Provides: bundled(golang(github.com/Azure/azure-sdk-for-go/version)) = 19.1.0 -Provides: bundled(golang(github.com/Azure/go-autorest/autorest)) = 10.15.2 -Provides: bundled(golang(github.com/Azure/go-autorest/autorest/adal)) = 10.15.2 -Provides: bundled(golang(github.com/Azure/go-autorest/autorest/azure)) = 10.15.2 -Provides: bundled(golang(github.com/Azure/go-autorest/autorest/azure/auth)) = 10.15.2 -Provides: bundled(golang(github.com/Azure/go-autorest/autorest/date)) = 10.15.2 -Provides: bundled(golang(github.com/Azure/go-autorest/autorest/to)) = 10.15.2 -Provides: bundled(golang(github.com/Azure/go-autorest/autorest/validation)) = 10.15.2 -Provides: bundled(golang(github.com/Azure/go-autorest/logger)) = 10.15.2 -Provides: bundled(golang(github.com/Azure/go-autorest/version)) = 10.15.2 -Provides: bundled(golang(github.com/JamesClonk/vultr/lib)) = 1.15.0 -Provides: bundled(golang(github.com/OpenDNS/vegadns2client)) = a3fa4a771d87bda2514a90a157e1fed1b6897d2e -Provides: bundled(golang(github.com/akamai/AkamaiOPEN-edgegrid-golang/client-v1)) = 0.7.3 -Provides: bundled(golang(github.com/akamai/AkamaiOPEN-edgegrid-golang/configdns-v1)) = 0.7.3 -Provides: bundled(golang(github.com/akamai/AkamaiOPEN-edgegrid-golang/edgegrid)) = 0.7.3 -Provides: bundled(golang(github.com/akamai/AkamaiOPEN-edgegrid-golang/jsonhooks-v1)) = 0.7.3 -Provides: bundled(golang(github.com/aliyun/alibaba-cloud-sdk-go/sdk)) = 1.27.7 -Provides: bundled(golang(github.com/aliyun/alibaba-cloud-sdk-go/sdk/auth)) = 1.27.7 -Provides: bundled(golang(github.com/aliyun/alibaba-cloud-sdk-go/sdk/auth/credentials)) = 1.27.7 -Provides: bundled(golang(github.com/aliyun/alibaba-cloud-sdk-go/sdk/auth/signers)) = 1.27.7 -Provides: bundled(golang(github.com/aliyun/alibaba-cloud-sdk-go/sdk/endpoints)) = 1.27.7 -Provides: bundled(golang(github.com/aliyun/alibaba-cloud-sdk-go/sdk/errors)) = 1.27.7 -Provides: bundled(golang(github.com/aliyun/alibaba-cloud-sdk-go/sdk/requests)) = 1.27.7 -Provides: bundled(golang(github.com/aliyun/alibaba-cloud-sdk-go/sdk/responses)) = 1.27.7 -Provides: bundled(golang(github.com/aliyun/alibaba-cloud-sdk-go/sdk/utils)) = 1.27.7 -Provides: bundled(golang(github.com/aliyun/alibaba-cloud-sdk-go/services/alidns)) = 1.27.7 -Provides: bundled(golang(github.com/aws/aws-sdk-go/aws)) = 1.15.23 -Provides: bundled(golang(github.com/aws/aws-sdk-go/aws/awserr)) = 1.15.23 -Provides: bundled(golang(github.com/aws/aws-sdk-go/aws/awsutil)) = 1.15.23 -Provides: bundled(golang(github.com/aws/aws-sdk-go/aws/client)) = 1.15.23 -Provides: bundled(golang(github.com/aws/aws-sdk-go/aws/client/metadata)) = 1.15.23 -Provides: bundled(golang(github.com/aws/aws-sdk-go/aws/corehandlers)) = 1.15.23 -Provides: bundled(golang(github.com/aws/aws-sdk-go/aws/credentials)) = 1.15.23 -Provides: bundled(golang(github.com/aws/aws-sdk-go/aws/credentials/ec2rolecreds)) = 1.15.23 -Provides: bundled(golang(github.com/aws/aws-sdk-go/aws/credentials/endpointcreds)) = 1.15.23 -Provides: bundled(golang(github.com/aws/aws-sdk-go/aws/credentials/stscreds)) = 1.15.23 -Provides: bundled(golang(github.com/aws/aws-sdk-go/aws/csm)) = 1.15.23 -Provides: bundled(golang(github.com/aws/aws-sdk-go/aws/defaults)) = 1.15.23 -Provides: bundled(golang(github.com/aws/aws-sdk-go/aws/ec2metadata)) = 1.15.23 -Provides: bundled(golang(github.com/aws/aws-sdk-go/aws/endpoints)) = 1.15.23 -Provides: bundled(golang(github.com/aws/aws-sdk-go/aws/request)) = 1.15.23 -Provides: bundled(golang(github.com/aws/aws-sdk-go/aws/session)) = 1.15.23 -Provides: bundled(golang(github.com/aws/aws-sdk-go/aws/signer/v4)) = 1.15.23 -Provides: bundled(golang(github.com/aws/aws-sdk-go/internal/sdkio)) = 1.15.23 -Provides: bundled(golang(github.com/aws/aws-sdk-go/internal/sdkrand)) = 1.15.23 -Provides: bundled(golang(github.com/aws/aws-sdk-go/internal/sdkuri)) = 1.15.23 -Provides: bundled(golang(github.com/aws/aws-sdk-go/internal/shareddefaults)) = 1.15.23 -Provides: bundled(golang(github.com/aws/aws-sdk-go/private/protocol)) = 1.15.23 -Provides: bundled(golang(github.com/aws/aws-sdk-go/private/protocol/json/jsonutil)) = 1.15.23 -Provides: bundled(golang(github.com/aws/aws-sdk-go/private/protocol/jsonrpc)) = 1.15.23 -Provides: bundled(golang(github.com/aws/aws-sdk-go/private/protocol/query)) = 1.15.23 -Provides: bundled(golang(github.com/aws/aws-sdk-go/private/protocol/query/queryutil)) = 1.15.23 -Provides: bundled(golang(github.com/aws/aws-sdk-go/private/protocol/rest)) = 1.15.23 -Provides: bundled(golang(github.com/aws/aws-sdk-go/private/protocol/restxml)) = 1.15.23 -Provides: bundled(golang(github.com/aws/aws-sdk-go/private/protocol/xml/xmlutil)) = 1.15.23 -Provides: bundled(golang(github.com/aws/aws-sdk-go/service/lightsail)) = 1.15.23 -Provides: bundled(golang(github.com/aws/aws-sdk-go/service/route53)) = 1.15.23 -Provides: bundled(golang(github.com/aws/aws-sdk-go/service/sts)) = 1.15.23 -Provides: bundled(golang(github.com/cenkalti/backoff)) = 2.1.1 -Provides: bundled(golang(github.com/cloudflare/cloudflare-go)) = 0.8.5 -Provides: bundled(golang(github.com/cpu/goacmedns)) = 565ecf2a84df654865cc102705ac160a3b04fc01 -Provides: bundled(golang(github.com/davecgh/go-spew/spew)) = 1.1.1 -Provides: bundled(golang(github.com/decker502/dnspod-go)) = 83a3ba562b048c9fc88229408e593494b7774684 -Provides: bundled(golang(github.com/dgrijalva/jwt-go)) = 3.2.0 -Provides: bundled(golang(github.com/dimchansky/utfbom)) = 5448fe645cb1964ba70ac8f9f2ffe975e61a536c -Provides: bundled(golang(github.com/dnsimple/dnsimple-go/dnsimple)) = 0.21.0 -Provides: bundled(golang(github.com/exoscale/egoscale)) = 0.11.6 -Provides: bundled(golang(github.com/fatih/structs)) = 1.1.0 -Provides: bundled(golang(github.com/go-ini/ini)) = 1.38.2 -Provides: bundled(golang(github.com/go-resty/resty)) = 1.8.0 -Provides: bundled(golang(github.com/golang/protobuf/proto)) = 1.2.0 -Provides: bundled(golang(github.com/google/go-querystring/query)) = 53e6ce116135b80d037921a7fdd5138cf32d7a8a -Provides: bundled(golang(github.com/google/uuid)) = 0.2 -Provides: bundled(golang(github.com/gophercloud/gophercloud)) = a2b0ad6ce68c8302027db1a5f9dbb03b0c8ab072 -Provides: bundled(golang(github.com/gophercloud/gophercloud/openstack)) = a2b0ad6ce68c8302027db1a5f9dbb03b0c8ab072 -Provides: bundled(golang(github.com/gophercloud/gophercloud/openstack/dns/v2/recordsets)) = a2b0ad6ce68c8302027db1a5f9dbb03b0c8ab072 -Provides: bundled(golang(github.com/gophercloud/gophercloud/openstack/dns/v2/zones)) = a2b0ad6ce68c8302027db1a5f9dbb03b0c8ab072 -Provides: bundled(golang(github.com/gophercloud/gophercloud/openstack/identity/v2/tenants)) = a2b0ad6ce68c8302027db1a5f9dbb03b0c8ab072 -Provides: bundled(golang(github.com/gophercloud/gophercloud/openstack/identity/v2/tokens)) = a2b0ad6ce68c8302027db1a5f9dbb03b0c8ab072 -Provides: bundled(golang(github.com/gophercloud/gophercloud/openstack/identity/v3/tokens)) = a2b0ad6ce68c8302027db1a5f9dbb03b0c8ab072 -Provides: bundled(golang(github.com/gophercloud/gophercloud/openstack/utils)) = a2b0ad6ce68c8302027db1a5f9dbb03b0c8ab072 -Provides: bundled(golang(github.com/gophercloud/gophercloud/pagination)) = a2b0ad6ce68c8302027db1a5f9dbb03b0c8ab072 -Provides: bundled(golang(github.com/iij/doapi)) = 8803795a9b7b938fa88ddbd63a77893beee14cd8 -Provides: bundled(golang(github.com/iij/doapi/protocol)) = 8803795a9b7b938fa88ddbd63a77893beee14cd8 -Provides: bundled(golang(github.com/jmespath/go-jmespath)) = 0b12d6b5 -Provides: bundled(golang(github.com/json-iterator/go)) = 1.1.5 -Provides: bundled(golang(github.com/juju/ratelimit)) = 1.0.1 -Provides: bundled(golang(github.com/kolo/xmlrpc)) = 16bdd962781df9696f40cc2bab924f1a855a7f89 -Provides: bundled(golang(github.com/linode/linodego)) = 0.5.1 -Provides: bundled(golang(github.com/miekg/dns)) = 1.1.0 -Provides: bundled(golang(github.com/mitchellh/go-homedir)) = 1.0.0 -Provides: bundled(golang(github.com/mitchellh/mapstructure)) = 1.1.2 -Provides: bundled(golang(github.com/modern-go/concurrent)) = 1.0.3 -Provides: bundled(golang(github.com/modern-go/reflect2)) = 1.0.1 -Provides: bundled(golang(github.com/namedotcom/go/namecom)) = 08470befbe04613bd4b44cb6978b05d50294c4d4 -Provides: bundled(golang(github.com/nrdcg/auroradns)) = 1.0.0 -Provides: bundled(golang(github.com/nrdcg/goinwx)) = 0.6.0 -Provides: bundled(golang(github.com/ovh/go-ovh/ovh)) = c3e61035ea66f5c637719c90140da4e3ac3b1bf0 -Provides: bundled(golang(github.com/pkg/errors)) = 0.8.0 -Provides: bundled(golang(github.com/pmezard/go-difflib/difflib)) = 1.0.0 -Provides: bundled(golang(github.com/rainycape/memcache)) = 1031fa0ce2f20c1c0e1e1b51951d8ea02c84fa05 -Provides: bundled(golang(github.com/sacloud/libsacloud)) = 108b1efe4b4d106fee6760bdf1847c4f92e1a92e -Provides: bundled(golang(github.com/sacloud/libsacloud/api)) = 108b1efe4b4d106fee6760bdf1847c4f92e1a92e -Provides: bundled(golang(github.com/sacloud/libsacloud/sacloud)) = 108b1efe4b4d106fee6760bdf1847c4f92e1a92e -Provides: bundled(golang(github.com/sacloud/libsacloud/sacloud/ostype)) = 108b1efe4b4d106fee6760bdf1847c4f92e1a92e -Provides: bundled(golang(github.com/satori/go.uuid)) = 1.2.0 -Provides: bundled(golang(github.com/sirupsen/logrus)) = 1.0.6 -Provides: bundled(golang(github.com/stretchr/objx)) = 0.1.1 -Provides: bundled(golang(github.com/stretchr/testify/assert)) = 1.2.2 -Provides: bundled(golang(github.com/stretchr/testify/mock)) = 1.2.2 -Provides: bundled(golang(github.com/stretchr/testify/require)) = 1.2.2 -Provides: bundled(golang(github.com/stretchr/testify/suite)) = 1.2.2 -Provides: bundled(golang(github.com/timewasted/linode)) = 37e84520dcf74488f67654f9c775b9752c232dc1 -Provides: bundled(golang(github.com/timewasted/linode/dns)) = 37e84520dcf74488f67654f9c775b9752c232dc1 -Provides: bundled(golang(github.com/transip/gotransip)) = 1dc93a7db3567a5ccf865106afac88278ba940cf -Provides: bundled(golang(github.com/transip/gotransip/domain)) = 1dc93a7db3567a5ccf865106afac88278ba940cf -Provides: bundled(golang(github.com/transip/gotransip/util)) = 1dc93a7db3567a5ccf865106afac88278ba940cf -Provides: bundled(golang(github.com/urfave/cli)) = 1.20.0 -Provides: bundled(golang(golang.org/x/crypto/ed25519)) = 614d502a4dac94afa3a6ce146bd1736da82514c6 -Provides: bundled(golang(golang.org/x/crypto/ed25519/internal/edwards25519)) = 614d502a4dac94afa3a6ce146bd1736da82514c6 -Provides: bundled(golang(golang.org/x/crypto/ocsp)) = 614d502a4dac94afa3a6ce146bd1736da82514c6 -Provides: bundled(golang(golang.org/x/crypto/pbkdf2)) = 614d502a4dac94afa3a6ce146bd1736da82514c6 -Provides: bundled(golang(golang.org/x/crypto/pkcs12)) = 614d502a4dac94afa3a6ce146bd1736da82514c6 -Provides: bundled(golang(golang.org/x/crypto/pkcs12/internal/rc2)) = 614d502a4dac94afa3a6ce146bd1736da82514c6 -Provides: bundled(golang(golang.org/x/crypto/ssh/terminal)) = 614d502a4dac94afa3a6ce146bd1736da82514c6 -Provides: bundled(golang(golang.org/x/net/bpf)) = 8a410e7b638dca158bf9e766925842f6651ff828 -Provides: bundled(golang(golang.org/x/net/context)) = 8a410e7b638dca158bf9e766925842f6651ff828 -Provides: bundled(golang(golang.org/x/net/context/ctxhttp)) = 8a410e7b638dca158bf9e766925842f6651ff828 -Provides: bundled(golang(golang.org/x/net/idna)) = 8a410e7b638dca158bf9e766925842f6651ff828 -Provides: bundled(golang(golang.org/x/net/internal/iana)) = 8a410e7b638dca158bf9e766925842f6651ff828 -Provides: bundled(golang(golang.org/x/net/internal/socket)) = 8a410e7b638dca158bf9e766925842f6651ff828 -Provides: bundled(golang(golang.org/x/net/ipv4)) = 8a410e7b638dca158bf9e766925842f6651ff828 -Provides: bundled(golang(golang.org/x/net/ipv6)) = 8a410e7b638dca158bf9e766925842f6651ff828 -Provides: bundled(golang(golang.org/x/net/publicsuffix)) = 8a410e7b638dca158bf9e766925842f6651ff828 -Provides: bundled(golang(golang.org/x/oauth2)) = d2e6202438beef2727060aa7cabdd924d92ebfd9 -Provides: bundled(golang(golang.org/x/oauth2/clientcredentials)) = d2e6202438beef2727060aa7cabdd924d92ebfd9 -Provides: bundled(golang(golang.org/x/oauth2/google)) = d2e6202438beef2727060aa7cabdd924d92ebfd9 -Provides: bundled(golang(golang.org/x/oauth2/internal)) = d2e6202438beef2727060aa7cabdd924d92ebfd9 -Provides: bundled(golang(golang.org/x/oauth2/jws)) = d2e6202438beef2727060aa7cabdd924d92ebfd9 -Provides: bundled(golang(golang.org/x/oauth2/jwt)) = d2e6202438beef2727060aa7cabdd924d92ebfd9 -Provides: bundled(golang(golang.org/x/sys/unix)) = d99a578cf41bfccdeaf48b0845c823a4b8b0ad5e -Provides: bundled(golang(golang.org/x/sys/windows)) = d99a578cf41bfccdeaf48b0845c823a4b8b0ad5e -Provides: bundled(golang(golang.org/x/text/collate)) = 0.3.0 -Provides: bundled(golang(golang.org/x/text/collate/build)) = 0.3.0 -Provides: bundled(golang(golang.org/x/text/internal/colltab)) = 0.3.0 -Provides: bundled(golang(golang.org/x/text/internal/gen)) = 0.3.0 -Provides: bundled(golang(golang.org/x/text/internal/tag)) = 0.3.0 -Provides: bundled(golang(golang.org/x/text/internal/triegen)) = 0.3.0 -Provides: bundled(golang(golang.org/x/text/internal/ucd)) = 0.3.0 -Provides: bundled(golang(golang.org/x/text/language)) = 0.3.0 -Provides: bundled(golang(golang.org/x/text/secure/bidirule)) = 0.3.0 -Provides: bundled(golang(golang.org/x/text/transform)) = 0.3.0 -Provides: bundled(golang(golang.org/x/text/unicode/bidi)) = 0.3.0 -Provides: bundled(golang(golang.org/x/text/unicode/cldr)) = 0.3.0 -Provides: bundled(golang(golang.org/x/text/unicode/norm)) = 0.3.0 -Provides: bundled(golang(golang.org/x/text/unicode/rangetable)) = 0.3.0 -Provides: bundled(golang(golang.org/x/time/rate)) = fbb02b2291d28baffd63558aa44b4b56f178d650 -Provides: bundled(golang(google.golang.org/api/dns/v1)) = 087779f1d2c96357d4c45bd04c4d10d7b5f22736 -Provides: bundled(golang(google.golang.org/api/gensupport)) = 087779f1d2c96357d4c45bd04c4d10d7b5f22736 -Provides: bundled(golang(google.golang.org/api/googleapi)) = 087779f1d2c96357d4c45bd04c4d10d7b5f22736 -Provides: bundled(golang(google.golang.org/api/googleapi/internal/uritemplates)) = 087779f1d2c96357d4c45bd04c4d10d7b5f22736 -Provides: bundled(golang(google.golang.org/appengine)) = 1.1.0 -Provides: bundled(golang(google.golang.org/appengine/internal)) = 1.1.0 -Provides: bundled(golang(google.golang.org/appengine/internal/app_identity)) = 1.1.0 -Provides: bundled(golang(google.golang.org/appengine/internal/base)) = 1.1.0 -Provides: bundled(golang(google.golang.org/appengine/internal/datastore)) = 1.1.0 -Provides: bundled(golang(google.golang.org/appengine/internal/log)) = 1.1.0 -Provides: bundled(golang(google.golang.org/appengine/internal/modules)) = 1.1.0 -Provides: bundled(golang(google.golang.org/appengine/internal/remote_api)) = 1.1.0 -Provides: bundled(golang(google.golang.org/appengine/internal/urlfetch)) = 1.1.0 -Provides: bundled(golang(google.golang.org/appengine/urlfetch)) = 1.1.0 -Provides: bundled(golang(gopkg.in/ini.v1)) = 1.38.2 -Provides: bundled(golang(gopkg.in/ns1/ns1-go.v2/rest)) = 028658c6d9be774b6d103a923d8c4b2715135c3f -Provides: bundled(golang(gopkg.in/ns1/ns1-go.v2/rest/model/account)) = 028658c6d9be774b6d103a923d8c4b2715135c3f -Provides: bundled(golang(gopkg.in/ns1/ns1-go.v2/rest/model/data)) = 028658c6d9be774b6d103a923d8c4b2715135c3f -Provides: bundled(golang(gopkg.in/ns1/ns1-go.v2/rest/model/dns)) = 028658c6d9be774b6d103a923d8c4b2715135c3f -Provides: bundled(golang(gopkg.in/ns1/ns1-go.v2/rest/model/filter)) = 028658c6d9be774b6d103a923d8c4b2715135c3f -Provides: bundled(golang(gopkg.in/ns1/ns1-go.v2/rest/model/monitor)) = 028658c6d9be774b6d103a923d8c4b2715135c3f -Provides: bundled(golang(gopkg.in/square/go-jose.v2)) = 2.1.9 -Provides: bundled(golang(gopkg.in/square/go-jose.v2/cipher)) = 2.1.9 -Provides: bundled(golang(gopkg.in/square/go-jose.v2/json)) = 2.1.9 - %description Caddy is the HTTP/2 web server with automatic HTTPS. Official Caddy builds @@ -353,48 +147,27 @@ package is an unofficial build with the following plugins: %prep -%setup -q -c -a 10 -a 11 -a 20 -a 21 +%setup -q -c cp caddy-%{version}/LICENSE.txt LICENSE.txt cp caddy-%{version}/dist/README.txt README.txt mkdir -p $(dirname _build/src/%{import_path}) mv caddy-%{version} _build/src/%{import_path} -%if %{with dnsproviders} -cp dnsproviders-%{version_dnsproviders}/LICENSE LICENSE-dnsproviders -mkdir -p $(dirname _build/src/%{import_path_dnsproviders}) -mv dnsproviders-%{version_dnsproviders} _build/src/%{import_path_dnsproviders} -cp lego-%{version_lego}/LICENSE LICENSE-lego -mkdir -p $(dirname _build/src/%{import_path_lego}) -mv lego-%{version_lego} _build/src/%{import_path_lego} -%endif - -%if %{with geoip} -cp caddy-geoip-%{commit_geoip}/LICENSE LICENSE-geoip -mkdir -p $(dirname _build/src/%{import_path_geoip}) -mv caddy-geoip-%{commit_geoip} _build/src/%{import_path_geoip} -%endif - -%if %{with realip} -cp caddy-realip-%{commit_realip}/LICENSE LICENSE-realip -mkdir -p $(dirname _build/src/%{import_path_realip}) -mv caddy-realip-%{commit_realip} _build/src/%{import_path_realip} -%endif - -sed -e '/other plugins/ a \\t// plugins added during rpmbuild' \ -%{?with_geoip: -e '/other plugins/ a \\t_ "%{import_path_geoip}"'} \ -%{?with_realip: -e '/other plugins/ a \\t_ "%{import_path_realip}"'} \ -%{?with_azure: -e '/other plugins/ a \\t_ "%{import_path_dnsproviders}/azure"'} \ -%{?with_cloudflare: -e '/other plugins/ a \\t_ "%{import_path_dnsproviders}/cloudflare"'} \ -%{?with_digitalocean: -e '/other plugins/ a \\t_ "%{import_path_dnsproviders}/digitalocean"'} \ -%{?with_dyn: -e '/other plugins/ a \\t_ "%{import_path_dnsproviders}/dyn"'} \ -%{?with_gandi: -e '/other plugins/ a \\t_ "%{import_path_dnsproviders}/gandi"'} \ -%{?with_googlecloud: -e '/other plugins/ a \\t_ "%{import_path_dnsproviders}/googlecloud"'} \ -%{?with_namecheap: -e '/other plugins/ a \\t_ "%{import_path_dnsproviders}/namecheap"'} \ -%{?with_pdns: -e '/other plugins/ a \\t_ "%{import_path_dnsproviders}/pdns"'} \ -%{?with_rackspace: -e '/other plugins/ a \\t_ "%{import_path_dnsproviders}/rackspace"'} \ -%{?with_rfc2136: -e '/other plugins/ a \\t_ "%{import_path_dnsproviders}/rfc2136"'} \ -%{?with_route53: -e '/other plugins/ a \\t_ "%{import_path_dnsproviders}/route53"'} \ +sed -e '/where other plugins get plugged in/ a \\t// plugins added during rpmbuild' \ +%{?with_geoip: -e '/where other plugins get plugged in/ a \\t_ "github.com/aablinov/caddy-geoip"'} \ +%{?with_realip: -e '/where other plugins get plugged in/ a \\t_ "github.com/captncraig/caddy-realip"'} \ +%{?with_azure: -e '/where other plugins get plugged in/ a \\t_ "github.com/caddyserver/dnsproviders/azure"'} \ +%{?with_cloudflare: -e '/where other plugins get plugged in/ a \\t_ "github.com/caddyserver/dnsproviders/cloudflare"'} \ +%{?with_digitalocean: -e '/where other plugins get plugged in/ a \\t_ "github.com/caddyserver/dnsproviders/digitalocean"'} \ +%{?with_dyn: -e '/where other plugins get plugged in/ a \\t_ "github.com/caddyserver/dnsproviders/dyn"'} \ +%{?with_gandi: -e '/where other plugins get plugged in/ a \\t_ "github.com/caddyserver/dnsproviders/gandi"'} \ +%{?with_googlecloud: -e '/where other plugins get plugged in/ a \\t_ "github.com/caddyserver/dnsproviders/googlecloud"'} \ +%{?with_namecheap: -e '/where other plugins get plugged in/ a \\t_ "github.com/caddyserver/dnsproviders/namecheap"'} \ +%{?with_pdns: -e '/where other plugins get plugged in/ a \\t_ "github.com/caddyserver/dnsproviders/pdns"'} \ +%{?with_rackspace: -e '/where other plugins get plugged in/ a \\t_ "github.com/caddyserver/dnsproviders/rackspace"'} \ +%{?with_rfc2136: -e '/where other plugins get plugged in/ a \\t_ "github.com/caddyserver/dnsproviders/rfc2136"'} \ +%{?with_route53: -e '/where other plugins get plugged in/ a \\t_ "github.com/caddyserver/dnsproviders/route53"'} \ -i _build/src/%{import_path}/caddy/caddymain/run.go @@ -474,10 +247,6 @@ fi %files %license LICENSE.txt -%{?with_geoip:%license LICENSE-geoip} -%{?with_realip:%license LICENSE-realip} -%{?with_dnsproviders:%license LICENSE-dnsproviders} -%{?with_dnsproviders:%license LICENSE-lego} %doc README.txt %{_bindir}/caddy %{_datadir}/caddy @@ -491,6 +260,7 @@ fi %changelog * Sat Sep 07 2019 Carl George - 1.0.3-1 - Latest upstream +- Remove bundled lego and plugins * Wed Jul 24 2019 Fedora Release Engineering - 0.11.4-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild diff --git a/sources b/sources index c44d2b7..06b1d53 100644 --- a/sources +++ b/sources @@ -1,5 +1 @@ SHA512 (caddy-1.0.3.tar.gz) = 5fa015268ccfcc7439ce688798630b6d2ed30c92e0e828ca524dd373bdacf88be5435807cec3bddca712d2643e14d5bc314d6e488f280cc529d0f85279ff5f40 -SHA512 (dnsproviders-0.1.3.tar.gz) = 8f8b1199f5c41ceee06221d2e79260d90e02e91af77fb90c2a2bad8a6c630311c4880ea94f5f570d9d89132c1b81c5f1b1599eecfc24a9dd3f0f3254def7f48f -SHA512 (geoip-6af15b436fdcb08a743c30f9bad044ad32b53b49.tar.gz) = 34ccea181cfd17e05c5fb0dc3ebe04440ef62fe57c8ec585e61d69f2c8ebd9a20be3ead9e879517b5adcec0f135836ad6979d49942ee3d5bae6a5d6428d3442d -SHA512 (lego-2.2.0.tar.gz) = 8f071131c6379daeb2800730d798145516912b747636245d1738a76aefa06ecd8a8b32aceb80b7785b1a118ea4bbe90853d2ec182ce60e8f7179efd1727758dc -SHA512 (realip-5dd1f4047d0f649f21ba9f8d7e491d712be9a5b0.tar.gz) = 98dc0d55a19f599dab58fcffcea2945db43ee3ebf31bdaf183cdf44ede5341ecded073690bc90b5cdfdef13ad0b4d6841df18efa164652c2e27496d4e5cd9535 From 74c6a0da33bdacb6b686f0a6f6a15c94d2d003cb Mon Sep 17 00:00:00 2001 From: Carl George Date: Fri, 6 Sep 2019 22:44:23 -0500 Subject: [PATCH 06/79] Remove dyn, gandi, namecheap, and rfc2136 dns providers --- caddy.spec | 29 +---------------------------- 1 file changed, 1 insertion(+), 28 deletions(-) diff --git a/caddy.spec b/caddy.spec index 981e180..128ee63 100644 --- a/caddy.spec +++ b/caddy.spec @@ -5,13 +5,9 @@ %bcond_without azure %bcond_without cloudflare %bcond_without digitalocean -%bcond_without dyn -%bcond_without gandi %bcond_without googlecloud -%bcond_without namecheap %bcond_without pdns %bcond_without rackspace -%bcond_without rfc2136 %bcond_without route53 %bcond_with debug @@ -86,22 +82,10 @@ BuildRequires: golang(github.com/go-acme/lego/providers/dns/cloudflare) BuildRequires: golang(github.com/caddyserver/dnsproviders/digitalocean) BuildRequires: golang(github.com/go-acme/lego/providers/dns/digitalocean) %endif -%if %{with dyn} -BuildRequires: golang(github.com/caddyserver/dnsproviders/dyn) -BuildRequires: golang(github.com/go-acme/lego/providers/dns/dyn) -%endif -%if %{with gandi} -BuildRequires: golang(github.com/caddyserver/dnsproviders/gandi) -BuildRequires: golang(github.com/go-acme/lego/providers/dns/gandi) -%endif %if %{with googlecloud} BuildRequires: golang(github.com/caddyserver/dnsproviders/googlecloud) BuildRequires: golang(github.com/go-acme/lego/providers/dns/gcloud) %endif -%if %{with namecheap} -BuildRequires: golang(github.com/caddyserver/dnsproviders/namecheap) -BuildRequires: golang(github.com/go-acme/lego/providers/dns/namecheap) -%endif %if %{with pdns} BuildRequires: golang(github.com/caddyserver/dnsproviders/pdns) BuildRequires: golang(github.com/go-acme/lego/providers/dns/pdns) @@ -110,10 +94,6 @@ BuildRequires: golang(github.com/go-acme/lego/providers/dns/pdns) BuildRequires: golang(github.com/caddyserver/dnsproviders/rackspace) BuildRequires: golang(github.com/go-acme/lego/providers/dns/rackspace) %endif -%if %{with rfc2136} -BuildRequires: golang(github.com/caddyserver/dnsproviders/rfc2136) -BuildRequires: golang(github.com/go-acme/lego/providers/dns/rfc2136) -%endif %if %{with route53} BuildRequires: golang(github.com/caddyserver/dnsproviders/route53) BuildRequires: golang(github.com/go-acme/lego/providers/dns/route53) @@ -135,13 +115,9 @@ package is an unofficial build with the following plugins: }%{?with_azure: tls.dns.azure }%{?with_cloudflare: tls.dns.cloudflare }%{?with_digitalocean: tls.dns.digitalocean -}%{?with_dyn: tls.dns.dyn -}%{?with_gandi: tls.dns.gandi }%{?with_googlecloud: tls.dns.googlecloud -}%{?with_namecheap: tls.dns.namecheap }%{?with_pdns: tls.dns.powerdns }%{?with_rackspace: tls.dns.rackspace -}%{?with_rfc2136: tls.dns.rfc2136 }%{?with_route53: tls.dns.route53 } @@ -160,13 +136,9 @@ sed -e '/where other plugins get plugged in/ a \\t// plugins %{?with_azure: -e '/where other plugins get plugged in/ a \\t_ "github.com/caddyserver/dnsproviders/azure"'} \ %{?with_cloudflare: -e '/where other plugins get plugged in/ a \\t_ "github.com/caddyserver/dnsproviders/cloudflare"'} \ %{?with_digitalocean: -e '/where other plugins get plugged in/ a \\t_ "github.com/caddyserver/dnsproviders/digitalocean"'} \ -%{?with_dyn: -e '/where other plugins get plugged in/ a \\t_ "github.com/caddyserver/dnsproviders/dyn"'} \ -%{?with_gandi: -e '/where other plugins get plugged in/ a \\t_ "github.com/caddyserver/dnsproviders/gandi"'} \ %{?with_googlecloud: -e '/where other plugins get plugged in/ a \\t_ "github.com/caddyserver/dnsproviders/googlecloud"'} \ -%{?with_namecheap: -e '/where other plugins get plugged in/ a \\t_ "github.com/caddyserver/dnsproviders/namecheap"'} \ %{?with_pdns: -e '/where other plugins get plugged in/ a \\t_ "github.com/caddyserver/dnsproviders/pdns"'} \ %{?with_rackspace: -e '/where other plugins get plugged in/ a \\t_ "github.com/caddyserver/dnsproviders/rackspace"'} \ -%{?with_rfc2136: -e '/where other plugins get plugged in/ a \\t_ "github.com/caddyserver/dnsproviders/rfc2136"'} \ %{?with_route53: -e '/where other plugins get plugged in/ a \\t_ "github.com/caddyserver/dnsproviders/route53"'} \ -i _build/src/%{import_path}/caddy/caddymain/run.go @@ -261,6 +233,7 @@ fi * Sat Sep 07 2019 Carl George - 1.0.3-1 - Latest upstream - Remove bundled lego and plugins +- Remove dyn, gandi, namecheap, and rfc2136 dns providers * Wed Jul 24 2019 Fedora Release Engineering - 0.11.4-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild From 4759c7e6bc3310f42e13450e1b0257ec231e200e Mon Sep 17 00:00:00 2001 From: Carl George Date: Fri, 6 Sep 2019 22:58:52 -0500 Subject: [PATCH 07/79] Switch to new go macros --- caddy.spec | 49 +++++++++++++++++-------------------------------- 1 file changed, 17 insertions(+), 32 deletions(-) diff --git a/caddy.spec b/caddy.spec index 128ee63..f424f12 100644 --- a/caddy.spec +++ b/caddy.spec @@ -10,36 +10,27 @@ %bcond_without rackspace %bcond_without route53 -%bcond_with debug +# https://github.com/caddyserver/caddy +%global goipath github.com/caddyserver/caddy +Version: 1.0.3 -%if %{with debug} -%global _dwz_low_mem_die_limit 0 -%else -%global debug_package %{nil} -%endif +%gometa -%if %{undefined gobuild} -%define gobuild(o:) go build -ldflags "${LDFLAGS:-} -B 0x$(head -c20 /dev/urandom|od -An -tx1|tr -d ' \\n')" -a -v -x %{?**}; -%endif +%global golicenses LICENSE.txt +%global godocs dist/README.txt dist/CHANGES.txt Name: caddy -Version: 1.0.3 Release: 1%{?dist} Summary: HTTP/2 web server with automatic HTTPS License: ASL 2.0 URL: https://caddyserver.com -ExclusiveArch: %{?go_arches:%{go_arches}}%{!?go_arches:%{ix86} x86_64 %{arm} aarch64 ppc64le s390x %{mips}} - -# caddy -%global import_path github.com/mholt/caddy -Source0: https://%{import_path}/archive/v%{version}/caddy-%{version}.tar.gz -Source1: caddy.conf -Source2: caddy.service -Source3: index.html +Source0: %{gosource} +Source1: caddy.conf +Source2: caddy.service +Source3: index.html # https://github.com/mholt/caddy/commit/80dfb8b2a7f89b120a627bc4d866a1dc5ed3d92f#diff-04c6e90faac2675aa89e2176d2eec7d8 BuildRequires: golang >= 1.12 -%{?go_compiler:BuildRequires: compiler(go-compiler)} BuildRequires: golang(github.com/dustin/go-humanize) BuildRequires: golang(github.com/flynn/go-shlex) BuildRequires: golang(github.com/go-acme/lego/certcrypto) @@ -123,12 +114,7 @@ package is an unofficial build with the following plugins: %prep -%setup -q -c - -cp caddy-%{version}/LICENSE.txt LICENSE.txt -cp caddy-%{version}/dist/README.txt README.txt -mkdir -p $(dirname _build/src/%{import_path}) -mv caddy-%{version} _build/src/%{import_path} +%goprep sed -e '/where other plugins get plugged in/ a \\t// plugins added during rpmbuild' \ %{?with_geoip: -e '/where other plugins get plugged in/ a \\t_ "github.com/aablinov/caddy-geoip"'} \ @@ -140,17 +126,16 @@ sed -e '/where other plugins get plugged in/ a \\t// plugins %{?with_pdns: -e '/where other plugins get plugged in/ a \\t_ "github.com/caddyserver/dnsproviders/pdns"'} \ %{?with_rackspace: -e '/where other plugins get plugged in/ a \\t_ "github.com/caddyserver/dnsproviders/rackspace"'} \ %{?with_route53: -e '/where other plugins get plugged in/ a \\t_ "github.com/caddyserver/dnsproviders/route53"'} \ - -i _build/src/%{import_path}/caddy/caddymain/run.go + -i caddy/caddymain/run.go %build -export GOPATH="$PWD/_build:%{gopath}" -export LDFLAGS="${LDFLAGS:-} -X %{import_path}/caddy/caddymain.appVersion=%{version}" -%gobuild -o _bin/caddy %{import_path}/caddy +export LDFLAGS="${LDFLAGS:-} -X %{goipath}/caddy/caddymain.appVersion=%{version}" +%gobuild -o %{gobuilddir}/bin/caddy %{goipath}/caddy %install -install -D -m 0755 _bin/caddy %{buildroot}%{_bindir}/caddy +install -D -m 0755 %{gobuilddir}/bin/caddy %{buildroot}%{_bindir}/caddy install -D -m 0644 %{S:1} %{buildroot}%{_sysconfdir}/caddy/caddy.conf install -D -m 0644 %{S:2} %{buildroot}%{_unitdir}/caddy.service install -D -m 0644 %{S:3} %{buildroot}%{_datadir}/caddy/index.html @@ -218,8 +203,8 @@ fi %files -%license LICENSE.txt -%doc README.txt +%license %{golicenses} +%doc %{godocs} %{_bindir}/caddy %{_datadir}/caddy %{_unitdir}/caddy.service From ba5896a8a94665a60d9f7cd7b4834cdf847d02bf Mon Sep 17 00:00:00 2001 From: Carl George Date: Fri, 6 Sep 2019 23:40:47 -0500 Subject: [PATCH 08/79] Add patch0 to fix `-version` flag --- caddy.spec | 6 ++- enable-appVersion-ldflag.patch | 88 ++++++++++++++++++++++++++++++++++ 2 files changed, 93 insertions(+), 1 deletion(-) create mode 100644 enable-appVersion-ldflag.patch diff --git a/caddy.spec b/caddy.spec index f424f12..5b9b6e4 100644 --- a/caddy.spec +++ b/caddy.spec @@ -28,6 +28,8 @@ Source0: %{gosource} Source1: caddy.conf Source2: caddy.service Source3: index.html +# https://github.com/caddyserver/caddy/issues/2584 +Patch0: enable-appVersion-ldflag.patch # https://github.com/mholt/caddy/commit/80dfb8b2a7f89b120a627bc4d866a1dc5ed3d92f#diff-04c6e90faac2675aa89e2176d2eec7d8 BuildRequires: golang >= 1.12 @@ -115,6 +117,7 @@ package is an unofficial build with the following plugins: %prep %goprep +%patch0 -p 1 sed -e '/where other plugins get plugged in/ a \\t// plugins added during rpmbuild' \ %{?with_geoip: -e '/where other plugins get plugged in/ a \\t_ "github.com/aablinov/caddy-geoip"'} \ @@ -130,7 +133,7 @@ sed -e '/where other plugins get plugged in/ a \\t// plugins %build -export LDFLAGS="${LDFLAGS:-} -X %{goipath}/caddy/caddymain.appVersion=%{version}" +export LDFLAGS="${LDFLAGS:-} -X %{goipath}/caddy/caddymain.appVersion=v%{version} " %gobuild -o %{gobuilddir}/bin/caddy %{goipath}/caddy @@ -219,6 +222,7 @@ fi - Latest upstream - Remove bundled lego and plugins - Remove dyn, gandi, namecheap, and rfc2136 dns providers +- Add patch0 to fix `-version` flag * Wed Jul 24 2019 Fedora Release Engineering - 0.11.4-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild diff --git a/enable-appVersion-ldflag.patch b/enable-appVersion-ldflag.patch new file mode 100644 index 0000000..359bdfd --- /dev/null +++ b/enable-appVersion-ldflag.patch @@ -0,0 +1,88 @@ +diff -Nurp caddy-1.0.3.orig/caddy/caddymain/run.go caddy-1.0.3/caddy/caddymain/run.go +--- caddy-1.0.3.orig/caddy/caddymain/run.go 2019-08-14 14:45:42.000000000 -0500 ++++ caddy-1.0.3/caddy/caddymain/run.go 2019-08-26 19:46:28.041828503 -0500 +@@ -25,7 +25,6 @@ import ( + "os" + "path/filepath" + "runtime" +- "runtime/debug" + "strconv" + "strings" + +@@ -78,12 +77,10 @@ func init() { + func Run() { + flag.Parse() + +- module := getBuildModule() +- cleanModVersion := strings.TrimPrefix(module.Version, "v") +- + caddy.AppName = appName +- caddy.AppVersion = module.Version +- certmagic.UserAgent = appName + "/" + cleanModVersion ++ caddy.AppVersion = appVersion ++ cleanVersion := strings.TrimPrefix(appVersion, "v") ++ certmagic.UserAgent = appName + "/" + cleanVersion + + // Set up process log before anything bad happens + switch logfile { +@@ -147,12 +144,7 @@ func Run() { + os.Exit(0) + } + if version { +- if module.Sum != "" { +- // a build with a known version will also have a checksum +- fmt.Printf("Caddy %s (%s)\n", module.Version, module.Sum) +- } else { +- fmt.Println(module.Version) +- } ++ fmt.Println(appVersion) + os.Exit(0) + } + if plugins { +@@ -196,7 +188,7 @@ func Run() { + } + + // Begin telemetry (these are no-ops if telemetry disabled) +- telemetry.Set("caddy_version", module.Version) ++ telemetry.Set("caddy_version", appVersion) + telemetry.Set("num_listeners", len(instance.Servers())) + telemetry.Set("server_type", serverType) + telemetry.Set("os", runtime.GOOS) +@@ -277,27 +269,6 @@ func defaultLoader(serverType string) (c + }, nil + } + +-// getBuildModule returns the build info of Caddy +-// from debug.BuildInfo (requires Go modules). If +-// no version information is available, a non-nil +-// value will still be returned, but with an +-// unknown version. +-func getBuildModule() *debug.Module { +- bi, ok := debug.ReadBuildInfo() +- if ok { +- // The recommended way to build Caddy involves +- // creating a separate main module, which +- // preserves caddy a read-only dependency +- // TODO: track related Go issue: https://github.com/golang/go/issues/29228 +- for _, mod := range bi.Deps { +- if mod.Path == "github.com/caddyserver/caddy" { +- return mod +- } +- } +- } +- return &debug.Module{Version: "unknown"} +-} +- + func checkJSONCaddyfile() { + if fromJSON { + jsonBytes, err := ioutil.ReadAll(os.Stdin) +@@ -578,6 +549,9 @@ func ParseEnvFile(envInput io.Reader) (m + + const appName = "Caddy" + ++// Build information ++var appVersion = "unknown" ++ + // Flags that control program flow or startup + var ( + serverType string From d6fa51f5a2243fd81c9fbfb5bcaa0a81b66c31fb Mon Sep 17 00:00:00 2001 From: Carl George Date: Fri, 6 Sep 2019 23:42:37 -0500 Subject: [PATCH 09/79] Add patch1 to adjust blackfriday import path --- caddy.spec | 4 + use-gopkgin-blackfriday-import-path.patch | 126 ++++++++++++++++++++++ 2 files changed, 130 insertions(+) create mode 100644 use-gopkgin-blackfriday-import-path.patch diff --git a/caddy.spec b/caddy.spec index 5b9b6e4..e26ad87 100644 --- a/caddy.spec +++ b/caddy.spec @@ -30,6 +30,8 @@ Source2: caddy.service Source3: index.html # https://github.com/caddyserver/caddy/issues/2584 Patch0: enable-appVersion-ldflag.patch +# https://github.com/caddyserver/caddy/pull/2728 +Patch1: use-gopkgin-blackfriday-import-path.patch # https://github.com/mholt/caddy/commit/80dfb8b2a7f89b120a627bc4d866a1dc5ed3d92f#diff-04c6e90faac2675aa89e2176d2eec7d8 BuildRequires: golang >= 1.12 @@ -118,6 +120,7 @@ package is an unofficial build with the following plugins: %prep %goprep %patch0 -p 1 +%patch1 -p 1 sed -e '/where other plugins get plugged in/ a \\t// plugins added during rpmbuild' \ %{?with_geoip: -e '/where other plugins get plugged in/ a \\t_ "github.com/aablinov/caddy-geoip"'} \ @@ -223,6 +226,7 @@ fi - Remove bundled lego and plugins - Remove dyn, gandi, namecheap, and rfc2136 dns providers - Add patch0 to fix `-version` flag +- Add patch1 to adjust blackfriday import path * Wed Jul 24 2019 Fedora Release Engineering - 0.11.4-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild diff --git a/use-gopkgin-blackfriday-import-path.patch b/use-gopkgin-blackfriday-import-path.patch new file mode 100644 index 0000000..e0e6f40 --- /dev/null +++ b/use-gopkgin-blackfriday-import-path.patch @@ -0,0 +1,126 @@ +From c86d6f5af5fb85ae9de10d10138557304499ef05 Mon Sep 17 00:00:00 2001 +From: Carl George +Date: Mon, 26 Aug 2019 21:09:05 -0500 +Subject: [PATCH] Use gopkg.in/russross/blackfriday.v1 import path + +Blackfriday's README recommends using the gopkg.in import path. +Additionally, in Fedora the github.com/russross/blackfriday import path +is owned by the v2 RPM package, so this change makes Fedora packaging +easier. +--- + caddyhttp/httpserver/tplcontext.go | 2 +- + caddyhttp/markdown/markdown.go | 2 +- + caddyhttp/markdown/markdown_test.go | 2 +- + caddyhttp/markdown/process.go | 2 +- + caddyhttp/markdown/setup.go | 2 +- + caddyhttp/markdown/summary/render.go | 2 +- + caddyhttp/markdown/summary/summary.go | 2 +- + go.mod | 2 +- + 8 files changed, 8 insertions(+), 8 deletions(-) + +diff --git a/caddyhttp/httpserver/tplcontext.go b/caddyhttp/httpserver/tplcontext.go +index 5688679c1..b4965edf3 100644 +--- a/caddyhttp/httpserver/tplcontext.go ++++ b/caddyhttp/httpserver/tplcontext.go +@@ -35,7 +35,7 @@ import ( + + "github.com/caddyserver/caddy/caddytls" + "github.com/mholt/certmagic" +- "github.com/russross/blackfriday" ++ "gopkg.in/russross/blackfriday.v1" + ) + + // This file contains the context and functions available for +diff --git a/caddyhttp/markdown/markdown.go b/caddyhttp/markdown/markdown.go +index 4f688efd1..70b52a375 100644 +--- a/caddyhttp/markdown/markdown.go ++++ b/caddyhttp/markdown/markdown.go +@@ -27,7 +27,7 @@ import ( + "time" + + "github.com/caddyserver/caddy/caddyhttp/httpserver" +- "github.com/russross/blackfriday" ++ "gopkg.in/russross/blackfriday.v1" + ) + + // Markdown implements a layer of middleware that serves +diff --git a/caddyhttp/markdown/markdown_test.go b/caddyhttp/markdown/markdown_test.go +index 87a5a164b..f6bfaf09e 100644 +--- a/caddyhttp/markdown/markdown_test.go ++++ b/caddyhttp/markdown/markdown_test.go +@@ -25,7 +25,7 @@ import ( + + "github.com/caddyserver/caddy" + "github.com/caddyserver/caddy/caddyhttp/httpserver" +- "github.com/russross/blackfriday" ++ "gopkg.in/russross/blackfriday.v1" + ) + + func TestMarkdown(t *testing.T) { +diff --git a/caddyhttp/markdown/process.go b/caddyhttp/markdown/process.go +index 7880a4c67..b9e27b0f0 100644 +--- a/caddyhttp/markdown/process.go ++++ b/caddyhttp/markdown/process.go +@@ -22,7 +22,7 @@ import ( + "github.com/caddyserver/caddy/caddyhttp/httpserver" + "github.com/caddyserver/caddy/caddyhttp/markdown/metadata" + "github.com/caddyserver/caddy/caddyhttp/markdown/summary" +- "github.com/russross/blackfriday" ++ "gopkg.in/russross/blackfriday.v1" + ) + + // FileInfo represents a file in a particular server context. It wraps the os.FileInfo struct. +diff --git a/caddyhttp/markdown/setup.go b/caddyhttp/markdown/setup.go +index deda20189..0d453847a 100644 +--- a/caddyhttp/markdown/setup.go ++++ b/caddyhttp/markdown/setup.go +@@ -20,7 +20,7 @@ import ( + + "github.com/caddyserver/caddy" + "github.com/caddyserver/caddy/caddyhttp/httpserver" +- "github.com/russross/blackfriday" ++ "gopkg.in/russross/blackfriday.v1" + ) + + func init() { +diff --git a/caddyhttp/markdown/summary/render.go b/caddyhttp/markdown/summary/render.go +index 95e375105..12d04ff75 100644 +--- a/caddyhttp/markdown/summary/render.go ++++ b/caddyhttp/markdown/summary/render.go +@@ -17,7 +17,7 @@ package summary + import ( + "bytes" + +- "github.com/russross/blackfriday" ++ "gopkg.in/russross/blackfriday.v1" + ) + + // Ensure we implement the Blackfriday Markdown Renderer interface +diff --git a/caddyhttp/markdown/summary/summary.go b/caddyhttp/markdown/summary/summary.go +index 18d1db3b0..b850d95a1 100644 +--- a/caddyhttp/markdown/summary/summary.go ++++ b/caddyhttp/markdown/summary/summary.go +@@ -17,7 +17,7 @@ package summary + import ( + "bytes" + +- "github.com/russross/blackfriday" ++ "gopkg.in/russross/blackfriday.v1" + ) + + // Markdown formats input using a plain-text renderer, and +diff --git a/go.mod b/go.mod +index 987f8dccc..23cce2069 100644 +--- a/go.mod ++++ b/go.mod +@@ -17,9 +17,9 @@ require ( + github.com/mholt/certmagic v0.6.2-0.20190624175158-6a42ef9fe8c2 + github.com/naoina/go-stringutil v0.1.0 // indirect + github.com/naoina/toml v0.1.1 +- github.com/russross/blackfriday v0.0.0-20170610170232-067529f716f4 + golang.org/x/net v0.0.0-20190328230028-74de082e2cca + gopkg.in/mcuadros/go-syslog.v2 v2.2.1 + gopkg.in/natefinch/lumberjack.v2 v2.0.0 ++ gopkg.in/russross/blackfriday.v1 v1.5 + gopkg.in/yaml.v2 v2.2.2 + ) From 3f7fb4d2f0b3b952d3d707b91c33ed5f5af9399f Mon Sep 17 00:00:00 2001 From: Carl George Date: Fri, 6 Sep 2019 23:43:51 -0500 Subject: [PATCH 10/79] Add devel subpackages --- caddy.spec | 24 ++++++++++++++++++++---- 1 file changed, 20 insertions(+), 4 deletions(-) diff --git a/caddy.spec b/caddy.spec index e26ad87..67f0398 100644 --- a/caddy.spec +++ b/caddy.spec @@ -12,13 +12,22 @@ # https://github.com/caddyserver/caddy %global goipath github.com/caddyserver/caddy +%global goaltipaths github.com/mholt/caddy Version: 1.0.3 %gometa +%global common_description %{expand: +Caddy is the HTTP/2 web server with automatic HTTPS.} + %global golicenses LICENSE.txt %global godocs dist/README.txt dist/CHANGES.txt +# added in F32, remove in F34 +%global godevelheader %{expand: +Obsoletes: golang-github-mholt-caddy-devel < 1.0.0-3 +} + Name: caddy Release: 1%{?dist} Summary: HTTP/2 web server with automatic HTTPS @@ -100,10 +109,9 @@ BuildRequires: systemd Provides: webserver -%description -Caddy is the HTTP/2 web server with automatic HTTPS. Official Caddy builds -with customized plugins can be downloaded from https://caddyserver.com. This -package is an unofficial build with the following plugins: +%description %{common_description} + +This package was built with the following plugins: %{?with_geoip: http.geoip }%{?with_realip: http.realip @@ -117,6 +125,9 @@ package is an unofficial build with the following plugins: } +%gopkg + + %prep %goprep %patch0 -p 1 @@ -141,6 +152,7 @@ export LDFLAGS="${LDFLAGS:-} -X %{goipath}/caddy/caddymain.appVersion=v%{version %install +%gopkginstall install -D -m 0755 %{gobuilddir}/bin/caddy %{buildroot}%{_bindir}/caddy install -D -m 0644 %{S:1} %{buildroot}%{_sysconfdir}/caddy/caddy.conf install -D -m 0644 %{S:2} %{buildroot}%{_unitdir}/caddy.service @@ -220,6 +232,9 @@ fi %attr(0750,caddy,caddy) %dir %{_sharedstatedir}/caddy +%gopkgfiles + + %changelog * Sat Sep 07 2019 Carl George - 1.0.3-1 - Latest upstream @@ -227,6 +242,7 @@ fi - Remove dyn, gandi, namecheap, and rfc2136 dns providers - Add patch0 to fix `-version` flag - Add patch1 to adjust blackfriday import path +- Add devel subpackages * Wed Jul 24 2019 Fedora Release Engineering - 0.11.4-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild From a8925e4acb4a441d75545edcb5f70bb379cc6358 Mon Sep 17 00:00:00 2001 From: Carl George Date: Sat, 7 Sep 2019 00:07:17 -0500 Subject: [PATCH 11/79] Run test suite --- caddy.spec | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/caddy.spec b/caddy.spec index 67f0398..6631a0b 100644 --- a/caddy.spec +++ b/caddy.spec @@ -1,3 +1,4 @@ +%bcond_without check # http plugins %bcond_without geoip %bcond_without realip @@ -65,6 +66,12 @@ BuildRequires: golang(golang.org/x/net/http2) BuildRequires: golang(gopkg.in/natefinch/lumberjack.v2) BuildRequires: golang(gopkg.in/yaml.v2) +%if %{with check} +BuildRequires: golang(golang.org/x/net/websocket) +BuildRequires: golang(gopkg.in/mcuadros/go-syslog.v2) +BuildRequires: golang(gopkg.in/mcuadros/go-syslog.v2/format) +%endif + # http plugins %if %{with geoip} BuildRequires: golang(github.com/aablinov/caddy-geoip) @@ -161,6 +168,12 @@ install -d -m 0755 %{buildroot}%{_sysconfdir}/caddy/conf.d install -d -m 0750 %{buildroot}%{_sharedstatedir}/caddy +%if %{with check} +%check +%gocheck +%endif + + %pre getent group caddy &> /dev/null || \ groupadd -r caddy &> /dev/null @@ -243,6 +256,7 @@ fi - Add patch0 to fix `-version` flag - Add patch1 to adjust blackfriday import path - Add devel subpackages +- Run test suite * Wed Jul 24 2019 Fedora Release Engineering - 0.11.4-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild From c493730dee9a9b08cf3900dcbaaa901abd64e5e6 Mon Sep 17 00:00:00 2001 From: Carl George Date: Sat, 7 Sep 2019 00:08:16 -0500 Subject: [PATCH 12/79] Disable all plugins for bootstrap build --- caddy.spec | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/caddy.spec b/caddy.spec index 6631a0b..43bc3f6 100644 --- a/caddy.spec +++ b/caddy.spec @@ -1,3 +1,6 @@ +%bcond_without bootstrap + +%if %{without bootstrap} %bcond_without check # http plugins %bcond_without geoip @@ -10,6 +13,7 @@ %bcond_without pdns %bcond_without rackspace %bcond_without route53 +%endif # https://github.com/caddyserver/caddy %global goipath github.com/caddyserver/caddy @@ -257,6 +261,7 @@ fi - Add patch1 to adjust blackfriday import path - Add devel subpackages - Run test suite +- Disable all plugins for bootstrap build * Wed Jul 24 2019 Fedora Release Engineering - 0.11.4-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild From b338659f07c9409ec2c5b5ccbdcfe3eecb8b5fad Mon Sep 17 00:00:00 2001 From: Carl George Date: Sat, 7 Sep 2019 01:44:53 -0500 Subject: [PATCH 13/79] Remove old git ignore patterns --- .gitignore | 4 ---- 1 file changed, 4 deletions(-) diff --git a/.gitignore b/.gitignore index fe3e41d..7b6357f 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1 @@ caddy-*.tar.gz -dnsproviders-*.tar.gz -geoip-*.tar.gz -lego-*.tar.gz -realip-*.tar.gz From 0e265b46d1d8af44dc57f1e2c88944bbbb662b30 Mon Sep 17 00:00:00 2001 From: Carl George Date: Sun, 22 Sep 2019 14:45:01 -0500 Subject: [PATCH 14/79] Disable bootstrap to re-enable plugins --- caddy.spec | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/caddy.spec b/caddy.spec index 43bc3f6..49bce10 100644 --- a/caddy.spec +++ b/caddy.spec @@ -1,4 +1,4 @@ -%bcond_without bootstrap +%bcond_with bootstrap %if %{without bootstrap} %bcond_without check @@ -261,7 +261,6 @@ fi - Add patch1 to adjust blackfriday import path - Add devel subpackages - Run test suite -- Disable all plugins for bootstrap build * Wed Jul 24 2019 Fedora Release Engineering - 0.11.4-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild From a2c16df3ee9f85aacc67ac9fb4499fc6327a3d05 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Tue, 28 Jan 2020 13:31:37 +0000 Subject: [PATCH 15/79] - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- caddy.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/caddy.spec b/caddy.spec index 49bce10..eee1d01 100644 --- a/caddy.spec +++ b/caddy.spec @@ -34,7 +34,7 @@ Obsoletes: golang-github-mholt-caddy-devel < 1.0.0-3 } Name: caddy -Release: 1%{?dist} +Release: 2%{?dist} Summary: HTTP/2 web server with automatic HTTPS License: ASL 2.0 URL: https://caddyserver.com @@ -253,6 +253,9 @@ fi %changelog +* Tue Jan 28 2020 Fedora Release Engineering - 1.0.3-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + * Sat Sep 07 2019 Carl George - 1.0.3-1 - Latest upstream - Remove bundled lego and plugins From 3b7bf3f28d2a9613062cb4dfc882073922fac54b Mon Sep 17 00:00:00 2001 From: Elliott Sales de Andrade Date: Mon, 17 Feb 2020 03:23:10 -0500 Subject: [PATCH 16/79] Rebuilt for GHSA-jf24-p9p9-4rjh. --- caddy.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/caddy.spec b/caddy.spec index eee1d01..68fae35 100644 --- a/caddy.spec +++ b/caddy.spec @@ -34,7 +34,7 @@ Obsoletes: golang-github-mholt-caddy-devel < 1.0.0-3 } Name: caddy -Release: 2%{?dist} +Release: 3%{?dist} Summary: HTTP/2 web server with automatic HTTPS License: ASL 2.0 URL: https://caddyserver.com @@ -253,6 +253,9 @@ fi %changelog +* Mon Feb 17 2020 Elliott Sales de Andrade - 1.0.3-3 +- Rebuilt for GHSA-jf24-p9p9-4rjh + * Tue Jan 28 2020 Fedora Release Engineering - 1.0.3-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild From 2b8e08287ae8c5e3c7237a656a4ac04c44755602 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert-Andr=C3=A9=20Mauchin?= Date: Tue, 7 Jul 2020 21:08:14 +0200 Subject: [PATCH 17/79] Update to 1.0.4 (#1803691) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Robert-André Mauchin --- add-context-to-certmagic.patch | 50 +++++++++ caddy.spec | 17 +-- enable-appVersion-ldflag.patch | 32 ++++-- sources | 2 +- use-gopkgin-blackfriday-import-path.patch | 126 ---------------------- 5 files changed, 83 insertions(+), 144 deletions(-) create mode 100644 add-context-to-certmagic.patch delete mode 100644 use-gopkgin-blackfriday-import-path.patch diff --git a/add-context-to-certmagic.patch b/add-context-to-certmagic.patch new file mode 100644 index 0000000..0201c31 --- /dev/null +++ b/add-context-to-certmagic.patch @@ -0,0 +1,50 @@ +diff -up caddy-1.0.4/caddyhttp/httpserver/https.go.orig caddy-1.0.4/caddyhttp/httpserver/https.go +--- caddy-1.0.4/caddyhttp/httpserver/https.go.orig 2019-11-15 21:11:32.000000000 +0100 ++++ caddy-1.0.4/caddyhttp/httpserver/https.go 2020-02-13 16:47:24.506338136 +0100 +@@ -15,6 +15,7 @@ + package httpserver + + import ( ++ "context" + "fmt" + "net" + "net/http" +@@ -45,7 +46,7 @@ func activateHTTPS(cctx caddy.Context) e + if c.TLS.Manager.OnDemand != nil { + continue // obtain these certificates on-demand instead + } +- err := c.TLS.Manager.ObtainCert(c.TLS.Hostname, operatorPresent) ++ err := c.TLS.Manager.ObtainCert(context.TODO(), c.TLS.Hostname, operatorPresent) + if err != nil { + return err + } +@@ -71,7 +72,7 @@ func activateHTTPS(cctx caddy.Context) e + certCache, ok := ctx.instance.Storage[caddytls.CertCacheInstStorageKey].(*certmagic.Cache) + ctx.instance.StorageMu.RUnlock() + if ok && certCache != nil { +- err = certCache.RenewManagedCertificates() ++ err = certCache.RenewManagedCertificates(context.TODO()) + if err != nil { + return err + } +diff -up caddy-1.0.4/caddytls/tls.go.orig caddy-1.0.4/caddytls/tls.go +--- caddy-1.0.4/caddytls/tls.go.orig 2019-11-15 21:11:32.000000000 +0100 ++++ caddy-1.0.4/caddytls/tls.go 2020-02-13 16:46:53.052387201 +0100 +@@ -29,6 +29,8 @@ + package caddytls + + import ( ++ "context" ++ + "github.com/caddyserver/caddy" + "github.com/go-acme/lego/v3/challenge" + "github.com/mholt/certmagic" +@@ -77,7 +79,7 @@ func QualifiesForManagedTLS(c ConfigHold + // Revoke revokes the certificate fro host via the ACME protocol. + // It assumes the certificate was obtained from certmagic.CA. + func Revoke(domainName string) error { +- return certmagic.NewDefault().RevokeCert(domainName, true) ++ return certmagic.NewDefault().RevokeCert(context.TODO(), domainName, true) + } + + // KnownACMECAs is a list of ACME directory endpoints of diff --git a/caddy.spec b/caddy.spec index 68fae35..02ea2c3 100644 --- a/caddy.spec +++ b/caddy.spec @@ -1,4 +1,4 @@ -%bcond_with bootstrap +%bcond_without bootstrap %if %{without bootstrap} %bcond_without check @@ -18,7 +18,7 @@ # https://github.com/caddyserver/caddy %global goipath github.com/caddyserver/caddy %global goaltipaths github.com/mholt/caddy -Version: 1.0.3 +Version: 1.0.4 %gometa @@ -34,7 +34,7 @@ Obsoletes: golang-github-mholt-caddy-devel < 1.0.0-3 } Name: caddy -Release: 3%{?dist} +Release: 1%{?dist} Summary: HTTP/2 web server with automatic HTTPS License: ASL 2.0 URL: https://caddyserver.com @@ -44,8 +44,8 @@ Source2: caddy.service Source3: index.html # https://github.com/caddyserver/caddy/issues/2584 Patch0: enable-appVersion-ldflag.patch -# https://github.com/caddyserver/caddy/pull/2728 -Patch1: use-gopkgin-blackfriday-import-path.patch +# For certmagic 0.9, drop when upstream implements it +Patch1: add-context-to-certmagic.patch # https://github.com/mholt/caddy/commit/80dfb8b2a7f89b120a627bc4d866a1dc5ed3d92f#diff-04c6e90faac2675aa89e2176d2eec7d8 BuildRequires: golang >= 1.12 @@ -60,7 +60,7 @@ BuildRequires: golang(github.com/hashicorp/go-syslog) BuildRequires: golang(github.com/jimstudt/http-authentication/basic) BuildRequires: golang(github.com/klauspost/cpuid) BuildRequires: golang(github.com/lucas-clemente/quic-go) -BuildRequires: golang(github.com/lucas-clemente/quic-go/h2quic) +BuildRequires: golang(github.com/lucas-clemente/quic-go/http3) # https://github.com/caddyserver/caddy/commit/0b2e054 # https://github.com/mholt/certmagic/commit/6a42ef9 BuildRequires: golang(github.com/mholt/certmagic) >= 0.6.2 @@ -143,6 +143,8 @@ This package was built with the following plugins: %goprep %patch0 -p 1 %patch1 -p 1 +find . -name "*.go" -exec sed -i "s|github.com/go-acme/lego/v3|github.com/go-acme/lego|" "{}" +; +find . -name "*.go" -exec sed -i "s|github.com/russross/blackfriday|gopkg.in/russross/blackfriday.v1|" "{}" +; sed -e '/where other plugins get plugged in/ a \\t// plugins added during rpmbuild' \ %{?with_geoip: -e '/where other plugins get plugged in/ a \\t_ "github.com/aablinov/caddy-geoip"'} \ @@ -253,6 +255,9 @@ fi %changelog +* Tue Jul 07 20:56:10 CEST 2020 Robert-André Mauchin - 1.0.4-1 +- Update to 1.0.4 (#1803691) + * Mon Feb 17 2020 Elliott Sales de Andrade - 1.0.3-3 - Rebuilt for GHSA-jf24-p9p9-4rjh diff --git a/enable-appVersion-ldflag.patch b/enable-appVersion-ldflag.patch index 359bdfd..3b3fec5 100644 --- a/enable-appVersion-ldflag.patch +++ b/enable-appVersion-ldflag.patch @@ -1,6 +1,6 @@ -diff -Nurp caddy-1.0.3.orig/caddy/caddymain/run.go caddy-1.0.3/caddy/caddymain/run.go ---- caddy-1.0.3.orig/caddy/caddymain/run.go 2019-08-14 14:45:42.000000000 -0500 -+++ caddy-1.0.3/caddy/caddymain/run.go 2019-08-26 19:46:28.041828503 -0500 +diff -up caddy-1.0.4/caddy/caddymain/run.go.orig caddy-1.0.4/caddy/caddymain/run.go +--- caddy-1.0.4/caddy/caddymain/run.go.orig 2019-11-15 21:11:32.000000000 +0100 ++++ caddy-1.0.4/caddy/caddymain/run.go 2020-02-13 17:00:56.329081155 +0100 @@ -25,7 +25,6 @@ import ( "os" "path/filepath" @@ -9,7 +9,7 @@ diff -Nurp caddy-1.0.3.orig/caddy/caddymain/run.go caddy-1.0.3/caddy/caddymain/r "strconv" "strings" -@@ -78,12 +77,10 @@ func init() { +@@ -79,13 +78,11 @@ func init() { func Run() { flag.Parse() @@ -18,14 +18,15 @@ diff -Nurp caddy-1.0.3.orig/caddy/caddymain/run.go caddy-1.0.3/caddy/caddymain/r - caddy.AppName = appName - caddy.AppVersion = module.Version -- certmagic.UserAgent = appName + "/" + cleanModVersion + caddy.AppVersion = appVersion + cleanVersion := strings.TrimPrefix(appVersion, "v") + caddy.OnProcessExit = append(caddy.OnProcessExit, certmagic.CleanUpOwnLocks) +- certmagic.UserAgent = appName + "/" + cleanModVersion + certmagic.UserAgent = appName + "/" + cleanVersion - // Set up process log before anything bad happens - switch logfile { -@@ -147,12 +144,7 @@ func Run() { + if !logTimestamps { + // Disable timestamps for logging +@@ -154,12 +151,7 @@ func Run() { os.Exit(0) } if version { @@ -39,7 +40,16 @@ diff -Nurp caddy-1.0.3.orig/caddy/caddymain/run.go caddy-1.0.3/caddy/caddymain/r os.Exit(0) } if plugins { -@@ -196,7 +188,7 @@ func Run() { +@@ -197,7 +189,7 @@ func Run() { + } + + // Log Caddy version before start +- log.Printf("[INFO] Caddy version: %s", module.Version) ++ log.Printf("[INFO] Caddy version: %s", appVersion) + + // Start your engines + instance, err := caddy.Start(caddyfileinput) +@@ -206,7 +198,7 @@ func Run() { } // Begin telemetry (these are no-ops if telemetry disabled) @@ -48,7 +58,7 @@ diff -Nurp caddy-1.0.3.orig/caddy/caddymain/run.go caddy-1.0.3/caddy/caddymain/r telemetry.Set("num_listeners", len(instance.Servers())) telemetry.Set("server_type", serverType) telemetry.Set("os", runtime.GOOS) -@@ -277,27 +269,6 @@ func defaultLoader(serverType string) (c +@@ -287,27 +279,6 @@ func defaultLoader(serverType string) (c }, nil } @@ -76,7 +86,7 @@ diff -Nurp caddy-1.0.3.orig/caddy/caddymain/run.go caddy-1.0.3/caddy/caddymain/r func checkJSONCaddyfile() { if fromJSON { jsonBytes, err := ioutil.ReadAll(os.Stdin) -@@ -578,6 +549,9 @@ func ParseEnvFile(envInput io.Reader) (m +@@ -588,6 +559,9 @@ func ParseEnvFile(envInput io.Reader) (m const appName = "Caddy" diff --git a/sources b/sources index 06b1d53..55e80b5 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (caddy-1.0.3.tar.gz) = 5fa015268ccfcc7439ce688798630b6d2ed30c92e0e828ca524dd373bdacf88be5435807cec3bddca712d2643e14d5bc314d6e488f280cc529d0f85279ff5f40 +SHA512 (caddy-1.0.4.tar.gz) = 49dae9c0965000ba1cf36a6148ff78718383a511d671fb73edc3b08e4219db0a9902fc70e40bcbb13ffa7afaa520fd1e6303ea3776059de04085896c018d9c02 diff --git a/use-gopkgin-blackfriday-import-path.patch b/use-gopkgin-blackfriday-import-path.patch deleted file mode 100644 index e0e6f40..0000000 --- a/use-gopkgin-blackfriday-import-path.patch +++ /dev/null @@ -1,126 +0,0 @@ -From c86d6f5af5fb85ae9de10d10138557304499ef05 Mon Sep 17 00:00:00 2001 -From: Carl George -Date: Mon, 26 Aug 2019 21:09:05 -0500 -Subject: [PATCH] Use gopkg.in/russross/blackfriday.v1 import path - -Blackfriday's README recommends using the gopkg.in import path. -Additionally, in Fedora the github.com/russross/blackfriday import path -is owned by the v2 RPM package, so this change makes Fedora packaging -easier. ---- - caddyhttp/httpserver/tplcontext.go | 2 +- - caddyhttp/markdown/markdown.go | 2 +- - caddyhttp/markdown/markdown_test.go | 2 +- - caddyhttp/markdown/process.go | 2 +- - caddyhttp/markdown/setup.go | 2 +- - caddyhttp/markdown/summary/render.go | 2 +- - caddyhttp/markdown/summary/summary.go | 2 +- - go.mod | 2 +- - 8 files changed, 8 insertions(+), 8 deletions(-) - -diff --git a/caddyhttp/httpserver/tplcontext.go b/caddyhttp/httpserver/tplcontext.go -index 5688679c1..b4965edf3 100644 ---- a/caddyhttp/httpserver/tplcontext.go -+++ b/caddyhttp/httpserver/tplcontext.go -@@ -35,7 +35,7 @@ import ( - - "github.com/caddyserver/caddy/caddytls" - "github.com/mholt/certmagic" -- "github.com/russross/blackfriday" -+ "gopkg.in/russross/blackfriday.v1" - ) - - // This file contains the context and functions available for -diff --git a/caddyhttp/markdown/markdown.go b/caddyhttp/markdown/markdown.go -index 4f688efd1..70b52a375 100644 ---- a/caddyhttp/markdown/markdown.go -+++ b/caddyhttp/markdown/markdown.go -@@ -27,7 +27,7 @@ import ( - "time" - - "github.com/caddyserver/caddy/caddyhttp/httpserver" -- "github.com/russross/blackfriday" -+ "gopkg.in/russross/blackfriday.v1" - ) - - // Markdown implements a layer of middleware that serves -diff --git a/caddyhttp/markdown/markdown_test.go b/caddyhttp/markdown/markdown_test.go -index 87a5a164b..f6bfaf09e 100644 ---- a/caddyhttp/markdown/markdown_test.go -+++ b/caddyhttp/markdown/markdown_test.go -@@ -25,7 +25,7 @@ import ( - - "github.com/caddyserver/caddy" - "github.com/caddyserver/caddy/caddyhttp/httpserver" -- "github.com/russross/blackfriday" -+ "gopkg.in/russross/blackfriday.v1" - ) - - func TestMarkdown(t *testing.T) { -diff --git a/caddyhttp/markdown/process.go b/caddyhttp/markdown/process.go -index 7880a4c67..b9e27b0f0 100644 ---- a/caddyhttp/markdown/process.go -+++ b/caddyhttp/markdown/process.go -@@ -22,7 +22,7 @@ import ( - "github.com/caddyserver/caddy/caddyhttp/httpserver" - "github.com/caddyserver/caddy/caddyhttp/markdown/metadata" - "github.com/caddyserver/caddy/caddyhttp/markdown/summary" -- "github.com/russross/blackfriday" -+ "gopkg.in/russross/blackfriday.v1" - ) - - // FileInfo represents a file in a particular server context. It wraps the os.FileInfo struct. -diff --git a/caddyhttp/markdown/setup.go b/caddyhttp/markdown/setup.go -index deda20189..0d453847a 100644 ---- a/caddyhttp/markdown/setup.go -+++ b/caddyhttp/markdown/setup.go -@@ -20,7 +20,7 @@ import ( - - "github.com/caddyserver/caddy" - "github.com/caddyserver/caddy/caddyhttp/httpserver" -- "github.com/russross/blackfriday" -+ "gopkg.in/russross/blackfriday.v1" - ) - - func init() { -diff --git a/caddyhttp/markdown/summary/render.go b/caddyhttp/markdown/summary/render.go -index 95e375105..12d04ff75 100644 ---- a/caddyhttp/markdown/summary/render.go -+++ b/caddyhttp/markdown/summary/render.go -@@ -17,7 +17,7 @@ package summary - import ( - "bytes" - -- "github.com/russross/blackfriday" -+ "gopkg.in/russross/blackfriday.v1" - ) - - // Ensure we implement the Blackfriday Markdown Renderer interface -diff --git a/caddyhttp/markdown/summary/summary.go b/caddyhttp/markdown/summary/summary.go -index 18d1db3b0..b850d95a1 100644 ---- a/caddyhttp/markdown/summary/summary.go -+++ b/caddyhttp/markdown/summary/summary.go -@@ -17,7 +17,7 @@ package summary - import ( - "bytes" - -- "github.com/russross/blackfriday" -+ "gopkg.in/russross/blackfriday.v1" - ) - - // Markdown formats input using a plain-text renderer, and -diff --git a/go.mod b/go.mod -index 987f8dccc..23cce2069 100644 ---- a/go.mod -+++ b/go.mod -@@ -17,9 +17,9 @@ require ( - github.com/mholt/certmagic v0.6.2-0.20190624175158-6a42ef9fe8c2 - github.com/naoina/go-stringutil v0.1.0 // indirect - github.com/naoina/toml v0.1.1 -- github.com/russross/blackfriday v0.0.0-20170610170232-067529f716f4 - golang.org/x/net v0.0.0-20190328230028-74de082e2cca - gopkg.in/mcuadros/go-syslog.v2 v2.2.1 - gopkg.in/natefinch/lumberjack.v2 v2.0.0 -+ gopkg.in/russross/blackfriday.v1 v1.5 - gopkg.in/yaml.v2 v2.2.2 - ) From 5cac5c79206d245c488a3837c49215d31e144c22 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Mon, 27 Jul 2020 13:34:31 +0000 Subject: [PATCH 18/79] - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- caddy.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/caddy.spec b/caddy.spec index 02ea2c3..bb51083 100644 --- a/caddy.spec +++ b/caddy.spec @@ -34,7 +34,7 @@ Obsoletes: golang-github-mholt-caddy-devel < 1.0.0-3 } Name: caddy -Release: 1%{?dist} +Release: 2%{?dist} Summary: HTTP/2 web server with automatic HTTPS License: ASL 2.0 URL: https://caddyserver.com @@ -255,6 +255,9 @@ fi %changelog +* Mon Jul 27 2020 Fedora Release Engineering - 1.0.4-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + * Tue Jul 07 20:56:10 CEST 2020 Robert-André Mauchin - 1.0.4-1 - Update to 1.0.4 (#1803691) From 367391c25648410573260b4f5a62602e80a8e154 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 1 Aug 2020 00:17:41 +0000 Subject: [PATCH 19/79] - Second attempt - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- caddy.spec | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/caddy.spec b/caddy.spec index bb51083..3153bba 100644 --- a/caddy.spec +++ b/caddy.spec @@ -34,7 +34,7 @@ Obsoletes: golang-github-mholt-caddy-devel < 1.0.0-3 } Name: caddy -Release: 2%{?dist} +Release: 3%{?dist} Summary: HTTP/2 web server with automatic HTTPS License: ASL 2.0 URL: https://caddyserver.com @@ -255,6 +255,10 @@ fi %changelog +* Sat Aug 01 2020 Fedora Release Engineering - 1.0.4-3 +- Second attempt - Rebuilt for + https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + * Mon Jul 27 2020 Fedora Release Engineering - 1.0.4-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild From 2ab29507854c6961a38122a35f839850813cc5a7 Mon Sep 17 00:00:00 2001 From: Carl George Date: Mon, 10 Aug 2020 19:03:43 -0500 Subject: [PATCH 20/79] Update to Caddy v2 (2.1.1) - Remove all v1 plugins - Use vendored dependencies - Remove devel subpackage - Rename config file per upstream request - Use webserver test page from system-logos-httpd --- Caddyfile | 36 +++++ add-context-to-certmagic.patch | 50 ------- caddy-api.service | 28 ++++ caddy.conf | 6 - caddy.png | Bin 0 -> 1769 bytes caddy.service | 24 +-- caddy.spec | 265 +++++++++++++++++---------------- enable-appVersion-ldflag.patch | 98 ------------ index.html | 45 ------ sources | 2 +- 10 files changed, 216 insertions(+), 338 deletions(-) create mode 100644 Caddyfile delete mode 100644 add-context-to-certmagic.patch create mode 100644 caddy-api.service delete mode 100644 caddy.conf create mode 100644 caddy.png delete mode 100644 enable-appVersion-ldflag.patch delete mode 100644 index.html diff --git a/Caddyfile b/Caddyfile new file mode 100644 index 0000000..e36677f --- /dev/null +++ b/Caddyfile @@ -0,0 +1,36 @@ +# The Caddyfile is an easy way to configure your Caddy web server. +# +# https://caddyserver.com/docs/caddyfile + + +# The configuration below serves a welcome page over HTTP on port 80. To use +# your own domain name with automatic HTTPS, ensure your A/AAAA DNS record is +# pointing to this machine's public IP, then replace `http://` with your domain +# name. Refer to the documentation for full instructions on the address +# specification. +# +# https://caddyserver.com/docs/caddyfile/concepts#addresses +http:// { + + # Set this path to your site's directory. + root * /usr/share/caddy + + # Enable the static file server. + file_server + + # Another common task is to set up a reverse proxy: + # reverse_proxy localhost:8080 + + # Or serve a PHP site through php-fpm: + # php_fastcgi localhost:9000 + + # Refer to the directive documentation for more options. + # https://caddyserver.com/docs/caddyfile/directives + +} + + +# As an alternative to editing the above site block, you can add your own site +# block files in the Caddyfile.d directory, and they will be included as long +# as they use the .caddyfile extension. +import Caddyfile.d/*.caddyfile diff --git a/add-context-to-certmagic.patch b/add-context-to-certmagic.patch deleted file mode 100644 index 0201c31..0000000 --- a/add-context-to-certmagic.patch +++ /dev/null @@ -1,50 +0,0 @@ -diff -up caddy-1.0.4/caddyhttp/httpserver/https.go.orig caddy-1.0.4/caddyhttp/httpserver/https.go ---- caddy-1.0.4/caddyhttp/httpserver/https.go.orig 2019-11-15 21:11:32.000000000 +0100 -+++ caddy-1.0.4/caddyhttp/httpserver/https.go 2020-02-13 16:47:24.506338136 +0100 -@@ -15,6 +15,7 @@ - package httpserver - - import ( -+ "context" - "fmt" - "net" - "net/http" -@@ -45,7 +46,7 @@ func activateHTTPS(cctx caddy.Context) e - if c.TLS.Manager.OnDemand != nil { - continue // obtain these certificates on-demand instead - } -- err := c.TLS.Manager.ObtainCert(c.TLS.Hostname, operatorPresent) -+ err := c.TLS.Manager.ObtainCert(context.TODO(), c.TLS.Hostname, operatorPresent) - if err != nil { - return err - } -@@ -71,7 +72,7 @@ func activateHTTPS(cctx caddy.Context) e - certCache, ok := ctx.instance.Storage[caddytls.CertCacheInstStorageKey].(*certmagic.Cache) - ctx.instance.StorageMu.RUnlock() - if ok && certCache != nil { -- err = certCache.RenewManagedCertificates() -+ err = certCache.RenewManagedCertificates(context.TODO()) - if err != nil { - return err - } -diff -up caddy-1.0.4/caddytls/tls.go.orig caddy-1.0.4/caddytls/tls.go ---- caddy-1.0.4/caddytls/tls.go.orig 2019-11-15 21:11:32.000000000 +0100 -+++ caddy-1.0.4/caddytls/tls.go 2020-02-13 16:46:53.052387201 +0100 -@@ -29,6 +29,8 @@ - package caddytls - - import ( -+ "context" -+ - "github.com/caddyserver/caddy" - "github.com/go-acme/lego/v3/challenge" - "github.com/mholt/certmagic" -@@ -77,7 +79,7 @@ func QualifiesForManagedTLS(c ConfigHold - // Revoke revokes the certificate fro host via the ACME protocol. - // It assumes the certificate was obtained from certmagic.CA. - func Revoke(domainName string) error { -- return certmagic.NewDefault().RevokeCert(domainName, true) -+ return certmagic.NewDefault().RevokeCert(context.TODO(), domainName, true) - } - - // KnownACMECAs is a list of ACME directory endpoints of diff --git a/caddy-api.service b/caddy-api.service new file mode 100644 index 0000000..f13b510 --- /dev/null +++ b/caddy-api.service @@ -0,0 +1,28 @@ +# caddy-api.service +# +# For using Caddy with its API. +# +# This unit is "durable" in that it will automatically resume +# the last active configuration if the service is restarted. +# +# See https://caddyserver.com/docs/install for instructions. + +[Unit] +Description=Caddy web server +Documentation=https://caddyserver.com/docs/ +After=network.target + +[Service] +User=caddy +Group=caddy +ExecStart=/usr/bin/caddy run --environ --resume +TimeoutStopSec=5s +LimitNOFILE=1048576 +LimitNPROC=512 +PrivateTmp=true +ProtectHome=true +ProtectSystem=full +AmbientCapabilities=CAP_NET_BIND_SERVICE + +[Install] +WantedBy=multi-user.target diff --git a/caddy.conf b/caddy.conf deleted file mode 100644 index f8d3fff..0000000 --- a/caddy.conf +++ /dev/null @@ -1,6 +0,0 @@ -http:// { - gzip - root /usr/share/caddy -} - -import conf.d/*.conf diff --git a/caddy.png b/caddy.png new file mode 100644 index 0000000000000000000000000000000000000000..eb8e2843a42082ce2e6398893f1fd978893a8fe1 GIT binary patch literal 1769 zcmVUsT}2fK@ZWv4)wT*%gnCO0Hi|D$q&AHbg9JoSqo`=W7^?A&CW>Hv1hq!c zYN|1Q07Z>j649y#!1cU>kPg z@AxG?A(U^DGl^cz6m$D%9E1C?gzCv0!u#-7da z1G8{E9+&j@ z#IaWbg z3Paq0({*C-1jp+R62|b=jAm8VzZGxP2^~9lDz4LPl#8;yQL%82OlTe}Qh|{YS%py! z6A@<7euwIO?{-ENlOGgPg;4ui(@u zr)2Hx^oIC3a{rVX<;1M-nN2|2cB z@3TaBdR*4NqG61G;d;EPr0?n3`&Ht*>##zE-(^@Ya=N0l^iq*;q&xjgQPV2WI+`u= zl+7ZSC~&NB$`i!`d{`uzdG(-4r=yd$QSI`9TPoV;Wbc2RfUE+S+h>$PQCz$<>3?(b zdlSCjVodCFQ0ueyro5pI&K8Br7in*h6jPGlBibd0J6p(NU*h&)WEHqtRCWuzNkn+W zf;ubd`<(cORw#^;pLdHfy{(WE%o5J9Fh+5vUWnI-Bc^!PRLHn9`8_0Zj3&%$A*+sV zJT(6mnR$V^qC!AKh=qZ6iMbdzX6VfazAz5{0o_T|`I)R`HN014wDUXdS7hyPYoWuP z${qdLS^KpuzG;POM_*vR?(q3qu@E;WZC`6KRwb5XN)!>#Kpm5C;@=SElH%-Mn#no2 zhJTH6qr5z8-z;`u72Z>#e_@pA_)pS4A|kRXoTN9AtSU&Rng1RUYNvcv!9ptx=?zcE z#H77MuW_c}WxDG+w+X}KS?>iEV=gWkuQ1Ax?vQc}HzoZA2E;_{E|HZck5^`WTkygX zolX(g6Lon?ihLKQ#{7fk(7O@CdXud5Bi7;?QB=FHgk}`47b`7o-zJWqxgwufAflJD z%sHL(Q%h*}i0brb@Rb^UbEC`=VRKG%lW@dWh%4?YSye_E6xZWrJa4by88?QN->Wn| zd+^po&bM0fZOPvAop8xGbof*Do);uf)0<$nl~s42^1%}R?b_emw!)C`G5Lg5J*)MW zRA%5i4Sd&#d;U735XW3qsl8YbpTxOYds*pzfw(uR(`%KuJ8x^0*?N7@=WFO|(RAL; z5ZUTkqDVO`40dJW^&BOS2N5)E#=*`p}%3iOxV4C7Oyf}G3N&UP`;s9f+ zZojhjp;hP5!;?$e-mm-UI_IEjbckcRI5K~P*NUTbx$tR)L2fqr=fs1G_o@#NMs?S` zCUFpuS08eNT>Q|fcIaX{-YqI0#gVm5L|zjrr%Yo1pile(e!t^?{zLE@OyU1T00000 LNkvXXu0mjfACO}) literal 0 HcmV?d00001 diff --git a/caddy.service b/caddy.service index 89503b2..b028aea 100644 --- a/caddy.service +++ b/caddy.service @@ -1,18 +1,24 @@ +# caddy.service +# +# For using Caddy with a config file. +# +# WARNING: This service does not use the --resume flag, so if you +# use the API to make changes, they will be overwritten by the +# Caddyfile next time the service is restarted. If you intend to +# use Caddy's API to configure it, add the --resume flag to the +# `caddy run` command or use the caddy-api.service file instead. + [Unit] -Description=Caddy HTTP/2 web server -Documentation=https://caddyserver.com/docs +Description=Caddy web server +Documentation=https://caddyserver.com/docs/ After=network.target [Service] User=caddy Group=caddy -Environment=CADDYPATH=/var/lib/caddy -EnvironmentFile=-/etc/caddy/envfile -ExecStartPre=/usr/bin/caddy -conf /etc/caddy/caddy.conf -validate -ExecStart=/usr/bin/caddy -conf /etc/caddy/caddy.conf -root /tmp -agree -ExecReload=/usr/bin/kill -USR1 $MAINPID -KillMode=mixed -KillSignal=SIGQUIT +ExecStartPre=/usr/bin/caddy validate --config /etc/caddy/Caddyfile +ExecStart=/usr/bin/caddy run --environ --config /etc/caddy/Caddyfile +ExecReload=/usr/bin/caddy reload --config /etc/caddy/Caddyfile TimeoutStopSec=5s LimitNOFILE=1048576 LimitNPROC=512 diff --git a/caddy.spec b/caddy.spec index 3153bba..ad85aa7 100644 --- a/caddy.spec +++ b/caddy.spec @@ -1,178 +1,174 @@ -%bcond_without bootstrap +%bcond_without vendor -%if %{without bootstrap} +%if %{without vendor} %bcond_without check -# http plugins -%bcond_without geoip -%bcond_without realip -# dns plugins -%bcond_without azure -%bcond_without cloudflare -%bcond_without digitalocean -%bcond_without googlecloud -%bcond_without pdns -%bcond_without rackspace -%bcond_without route53 %endif # https://github.com/caddyserver/caddy %global goipath github.com/caddyserver/caddy %global goaltipaths github.com/mholt/caddy -Version: 1.0.4 +Version: 2.1.1 %gometa %global common_description %{expand: -Caddy is the HTTP/2 web server with automatic HTTPS.} +Caddy is the web server with automatic HTTPS.} -%global golicenses LICENSE.txt -%global godocs dist/README.txt dist/CHANGES.txt +%global golicenses LICENSE +%global godocs README.md AUTHORS # added in F32, remove in F34 %global godevelheader %{expand: Obsoletes: golang-github-mholt-caddy-devel < 1.0.0-3 } +%if %{with vendor} +# added in F33, remove in F35 (or sooner if de-vendoring) +Obsoletes: golang-github-caddyserver-caddy-devel < 1.0.4-2 +%endif + + Name: caddy -Release: 3%{?dist} -Summary: HTTP/2 web server with automatic HTTPS +Release: 1%{?dist} +Summary: Web server with automatic HTTPS License: ASL 2.0 URL: https://caddyserver.com -Source0: %{gosource} -Source1: caddy.conf -Source2: caddy.service -Source3: index.html -# https://github.com/caddyserver/caddy/issues/2584 -Patch0: enable-appVersion-ldflag.patch -# For certmagic 0.9, drop when upstream implements it -Patch1: add-context-to-certmagic.patch -# https://github.com/mholt/caddy/commit/80dfb8b2a7f89b120a627bc4d866a1dc5ed3d92f#diff-04c6e90faac2675aa89e2176d2eec7d8 -BuildRequires: golang >= 1.12 +%if %{with vendor} +# git clone https://github.com/caddyserver/caddy.git caddy-%%{version} +# cd caddy-%%{version} +# git checkout v%%{version} +# go mod vendor +# tar --exclude .git -czf caddy-%%{version}-vendored.tar.gz caddy-%%{version} +Source0: caddy-%{version}-vendored.tar.gz +%else +Source0: %{gosource} +%endif + +# based on reference files upstream +# https://github.com/caddyserver/dist +Source1: Caddyfile +Source2: caddy.service +Source3: caddy-api.service +Source4: caddy.png + +# https://github.com/caddyserver/caddy/commit/e4ec08e977bcc9c798a2fca324c7105040990bcf +BuildRequires: golang >= 1.14 + +%if %{with vendor} +Provides: bundled(golang(github.com/Masterminds/sprig/v3)) +Provides: bundled(golang(github.com/alecthomas/chroma)) +Provides: bundled(golang(github.com/aryann/difflib)) +Provides: bundled(golang(github.com/caddyserver/certmagic)) +Provides: bundled(golang(github.com/dustin/go-humanize)) +Provides: bundled(golang(github.com/go-acme/lego/v3)) +Provides: bundled(golang(github.com/go-chi/chi)) +Provides: bundled(golang(github.com/google/cel-go)) +Provides: bundled(golang(github.com/jsternberg/zap-logfmt)) +Provides: bundled(golang(github.com/klauspost/compress)) +Provides: bundled(golang(github.com/klauspost/cpuid)) +Provides: bundled(golang(github.com/libdns/libdns)) +Provides: bundled(golang(github.com/lucas-clemente/quic-go)) +Provides: bundled(golang(github.com/naoina/go-stringutil)) +Provides: bundled(golang(github.com/naoina/toml)) +Provides: bundled(golang(github.com/smallstep/certificates)) +Provides: bundled(golang(github.com/smallstep/cli)) +Provides: bundled(golang(github.com/smallstep/nosql)) +Provides: bundled(golang(github.com/smallstep/truststore)) +Provides: bundled(golang(github.com/yuin/goldmark)) +Provides: bundled(golang(github.com/yuin/goldmark-highlighting)) +Provides: bundled(golang(go.uber.org/zap)) +Provides: bundled(golang(golang.org/x/crypto)) +Provides: bundled(golang(golang.org/x/net)) +Provides: bundled(golang(google.golang.org/genproto)) +Provides: bundled(golang(google.golang.org/protobuf)) +Provides: bundled(golang(gopkg.in/natefinch/lumberjack.v2)) +Provides: bundled(golang(gopkg.in/yaml.v2)) +%else +BuildRequires: golang(github.com/Masterminds/sprig/v3) +BuildRequires: golang(github.com/alecthomas/chroma) +BuildRequires: golang(github.com/aryann/difflib) +BuildRequires: golang(github.com/caddyserver/certmagic) BuildRequires: golang(github.com/dustin/go-humanize) -BuildRequires: golang(github.com/flynn/go-shlex) -BuildRequires: golang(github.com/go-acme/lego/certcrypto) -BuildRequires: golang(github.com/go-acme/lego/challenge) -BuildRequires: golang(github.com/go-acme/lego/challenge/tlsalpn01) -BuildRequires: golang(github.com/google/uuid) -BuildRequires: golang(github.com/gorilla/websocket) -BuildRequires: golang(github.com/hashicorp/go-syslog) -BuildRequires: golang(github.com/jimstudt/http-authentication/basic) +BuildRequires: golang(github.com/go-acme/lego/v3) +BuildRequires: golang(github.com/go-chi/chi) +BuildRequires: golang(github.com/google/cel-go) +BuildRequires: golang(github.com/jsternberg/zap-logfmt) +BuildRequires: golang(github.com/klauspost/compress) BuildRequires: golang(github.com/klauspost/cpuid) +BuildRequires: golang(github.com/libdns/libdns) BuildRequires: golang(github.com/lucas-clemente/quic-go) -BuildRequires: golang(github.com/lucas-clemente/quic-go/http3) -# https://github.com/caddyserver/caddy/commit/0b2e054 -# https://github.com/mholt/certmagic/commit/6a42ef9 -BuildRequires: golang(github.com/mholt/certmagic) >= 0.6.2 +BuildRequires: golang(github.com/naoina/go-stringutil) BuildRequires: golang(github.com/naoina/toml) -BuildRequires: golang(gopkg.in/russross/blackfriday.v1) -BuildRequires: golang(golang.org/x/net/http2) +BuildRequires: golang(github.com/smallstep/certificates) +BuildRequires: golang(github.com/smallstep/cli) +BuildRequires: golang(github.com/smallstep/nosql) +BuildRequires: golang(github.com/smallstep/truststore) +BuildRequires: golang(github.com/yuin/goldmark) +BuildRequires: golang(github.com/yuin/goldmark-highlighting) +BuildRequires: golang(go.uber.org/zap) +BuildRequires: golang(golang.org/x/crypto) +BuildRequires: golang(golang.org/x/net) +BuildRequires: golang(google.golang.org/genproto) +BuildRequires: golang(google.golang.org/protobuf) BuildRequires: golang(gopkg.in/natefinch/lumberjack.v2) BuildRequires: golang(gopkg.in/yaml.v2) - -%if %{with check} -BuildRequires: golang(golang.org/x/net/websocket) -BuildRequires: golang(gopkg.in/mcuadros/go-syslog.v2) -BuildRequires: golang(gopkg.in/mcuadros/go-syslog.v2/format) %endif -# http plugins -%if %{with geoip} -BuildRequires: golang(github.com/aablinov/caddy-geoip) -%endif -%if %{with realip} -BuildRequires: golang(github.com/captncraig/caddy-realip) -%endif - -# dns plugins -%if %{with azure} -BuildRequires: golang(github.com/caddyserver/dnsproviders/azure) -BuildRequires: golang(github.com/go-acme/lego/providers/dns/azure) -%endif -%if %{with cloudflare} -BuildRequires: golang(github.com/caddyserver/dnsproviders/cloudflare) -BuildRequires: golang(github.com/go-acme/lego/providers/dns/cloudflare) -%endif -%if %{with digitalocean} -BuildRequires: golang(github.com/caddyserver/dnsproviders/digitalocean) -BuildRequires: golang(github.com/go-acme/lego/providers/dns/digitalocean) -%endif -%if %{with googlecloud} -BuildRequires: golang(github.com/caddyserver/dnsproviders/googlecloud) -BuildRequires: golang(github.com/go-acme/lego/providers/dns/gcloud) -%endif -%if %{with pdns} -BuildRequires: golang(github.com/caddyserver/dnsproviders/pdns) -BuildRequires: golang(github.com/go-acme/lego/providers/dns/pdns) -%endif -%if %{with rackspace} -BuildRequires: golang(github.com/caddyserver/dnsproviders/rackspace) -BuildRequires: golang(github.com/go-acme/lego/providers/dns/rackspace) -%endif -%if %{with route53} -BuildRequires: golang(github.com/caddyserver/dnsproviders/route53) -BuildRequires: golang(github.com/go-acme/lego/providers/dns/route53) -%endif - -BuildRequires: systemd +BuildRequires: systemd-rpm-macros %{?systemd_requires} - +Requires: system-logos-httpd Provides: webserver %description %{common_description} -This package was built with the following plugins: - -%{?with_geoip: http.geoip -}%{?with_realip: http.realip -}%{?with_azure: tls.dns.azure -}%{?with_cloudflare: tls.dns.cloudflare -}%{?with_digitalocean: tls.dns.digitalocean -}%{?with_googlecloud: tls.dns.googlecloud -}%{?with_pdns: tls.dns.powerdns -}%{?with_rackspace: tls.dns.rackspace -}%{?with_route53: tls.dns.route53 -} - +%if %{with vendor} %gopkg +%endif %prep +%if %{with vendor} +%goprep -k +%else %goprep -%patch0 -p 1 -%patch1 -p 1 -find . -name "*.go" -exec sed -i "s|github.com/go-acme/lego/v3|github.com/go-acme/lego|" "{}" +; -find . -name "*.go" -exec sed -i "s|github.com/russross/blackfriday|gopkg.in/russross/blackfriday.v1|" "{}" +; +%endif -sed -e '/where other plugins get plugged in/ a \\t// plugins added during rpmbuild' \ -%{?with_geoip: -e '/where other plugins get plugged in/ a \\t_ "github.com/aablinov/caddy-geoip"'} \ -%{?with_realip: -e '/where other plugins get plugged in/ a \\t_ "github.com/captncraig/caddy-realip"'} \ -%{?with_azure: -e '/where other plugins get plugged in/ a \\t_ "github.com/caddyserver/dnsproviders/azure"'} \ -%{?with_cloudflare: -e '/where other plugins get plugged in/ a \\t_ "github.com/caddyserver/dnsproviders/cloudflare"'} \ -%{?with_digitalocean: -e '/where other plugins get plugged in/ a \\t_ "github.com/caddyserver/dnsproviders/digitalocean"'} \ -%{?with_googlecloud: -e '/where other plugins get plugged in/ a \\t_ "github.com/caddyserver/dnsproviders/googlecloud"'} \ -%{?with_pdns: -e '/where other plugins get plugged in/ a \\t_ "github.com/caddyserver/dnsproviders/pdns"'} \ -%{?with_rackspace: -e '/where other plugins get plugged in/ a \\t_ "github.com/caddyserver/dnsproviders/rackspace"'} \ -%{?with_route53: -e '/where other plugins get plugged in/ a \\t_ "github.com/caddyserver/dnsproviders/route53"'} \ - -i caddy/caddymain/run.go +sed -e '/mod.Version/ s/unknown/%{version}-%{release}/' -i caddy.go %build -export LDFLAGS="${LDFLAGS:-} -X %{goipath}/caddy/caddymain.appVersion=v%{version} " -%gobuild -o %{gobuilddir}/bin/caddy %{goipath}/caddy +%gobuild -o %{gobuilddir}/bin/caddy %{goipath}/cmd/caddy %install +%if %{without vendor} %gopkginstall -install -D -m 0755 %{gobuilddir}/bin/caddy %{buildroot}%{_bindir}/caddy -install -D -m 0644 %{S:1} %{buildroot}%{_sysconfdir}/caddy/caddy.conf -install -D -m 0644 %{S:2} %{buildroot}%{_unitdir}/caddy.service -install -D -m 0644 %{S:3} %{buildroot}%{_datadir}/caddy/index.html -install -d -m 0755 %{buildroot}%{_sysconfdir}/caddy/conf.d +%endif + +# command +install -D -p -m 0755 %{gobuilddir}/bin/caddy %{buildroot}%{_bindir}/caddy + +# config +install -D -p -m 0644 %{S:1} %{buildroot}%{_sysconfdir}/caddy/Caddyfile +install -d -m 0755 %{buildroot}%{_sysconfdir}/caddy/Caddyfile.d + +# systemd units +install -D -p -m 0644 %{S:2} %{buildroot}%{_unitdir}/caddy.service +install -D -p -m 0644 %{S:3} %{buildroot}%{_unitdir}/caddy-api.service + +# data directory install -d -m 0750 %{buildroot}%{_sharedstatedir}/caddy +# welcome page +install -D -p -m 0644 %{S:4} %{buildroot}%{_datadir}/caddy/caddy.png +ln -s caddy.png %{buildroot}%{_datadir}/caddy/poweredby.png +ln -s ../fedora-testpage/index.html %{buildroot}%{_datadir}/caddy/index.html +install -d -m 0755 %{buildroot}%{_datadir}/caddy/icons +ln -s ../../pixmaps/poweredby.png %{buildroot}%{_datadir}/caddy/icons/poweredby.png + %if %{with check} %check @@ -207,8 +203,8 @@ if [ -x /usr/sbin/semanage ]; then # QUIC semanage port --add --type http_port_t --proto udp 80 2> /dev/null || : semanage port --add --type http_port_t --proto udp 443 2> /dev/null || : - # HTTP challenge alternate port - semanage port --add --type http_port_t --proto tcp 5033 2> /dev/null || : + # admin endpoint + semanage port --add --type http_port_t --proto tcp 2019 2> /dev/null || : fi @@ -233,8 +229,8 @@ if [ $1 -eq 0 ]; then # QUIC semanage port --delete --type http_port_t --proto udp 80 2> /dev/null || : semanage port --delete --type http_port_t --proto udp 443 2> /dev/null || : - # HTTP challenge alternate port - semanage port --delete --type http_port_t --proto tcp 5033 2> /dev/null || : + # admin endpoint + semanage port --delete --type http_port_t --proto tcp 2019 2> /dev/null || : fi fi @@ -245,16 +241,27 @@ fi %{_bindir}/caddy %{_datadir}/caddy %{_unitdir}/caddy.service +%{_unitdir}/caddy-api.service %dir %{_sysconfdir}/caddy -%dir %{_sysconfdir}/caddy/conf.d -%config(noreplace) %{_sysconfdir}/caddy/caddy.conf +%config(noreplace) %{_sysconfdir}/caddy/Caddyfile +%dir %{_sysconfdir}/caddy/Caddyfile.d %attr(0750,caddy,caddy) %dir %{_sharedstatedir}/caddy +%if %{without vendor} %gopkgfiles +%endif %changelog +* Sun Aug 09 2020 Carl George - 2.1.1-1 +- Update to Caddy v2 +- Remove all v1 plugins +- Use vendored dependencies +- Remove devel subpackage +- Rename config file per upstream request +- Use webserver test page from system-logos-httpd + * Sat Aug 01 2020 Fedora Release Engineering - 1.0.4-3 - Second attempt - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild diff --git a/enable-appVersion-ldflag.patch b/enable-appVersion-ldflag.patch deleted file mode 100644 index 3b3fec5..0000000 --- a/enable-appVersion-ldflag.patch +++ /dev/null @@ -1,98 +0,0 @@ -diff -up caddy-1.0.4/caddy/caddymain/run.go.orig caddy-1.0.4/caddy/caddymain/run.go ---- caddy-1.0.4/caddy/caddymain/run.go.orig 2019-11-15 21:11:32.000000000 +0100 -+++ caddy-1.0.4/caddy/caddymain/run.go 2020-02-13 17:00:56.329081155 +0100 -@@ -25,7 +25,6 @@ import ( - "os" - "path/filepath" - "runtime" -- "runtime/debug" - "strconv" - "strings" - -@@ -79,13 +78,11 @@ func init() { - func Run() { - flag.Parse() - -- module := getBuildModule() -- cleanModVersion := strings.TrimPrefix(module.Version, "v") -- - caddy.AppName = appName -- caddy.AppVersion = module.Version -+ caddy.AppVersion = appVersion -+ cleanVersion := strings.TrimPrefix(appVersion, "v") - caddy.OnProcessExit = append(caddy.OnProcessExit, certmagic.CleanUpOwnLocks) -- certmagic.UserAgent = appName + "/" + cleanModVersion -+ certmagic.UserAgent = appName + "/" + cleanVersion - - if !logTimestamps { - // Disable timestamps for logging -@@ -154,12 +151,7 @@ func Run() { - os.Exit(0) - } - if version { -- if module.Sum != "" { -- // a build with a known version will also have a checksum -- fmt.Printf("Caddy %s (%s)\n", module.Version, module.Sum) -- } else { -- fmt.Println(module.Version) -- } -+ fmt.Println(appVersion) - os.Exit(0) - } - if plugins { -@@ -197,7 +189,7 @@ func Run() { - } - - // Log Caddy version before start -- log.Printf("[INFO] Caddy version: %s", module.Version) -+ log.Printf("[INFO] Caddy version: %s", appVersion) - - // Start your engines - instance, err := caddy.Start(caddyfileinput) -@@ -206,7 +198,7 @@ func Run() { - } - - // Begin telemetry (these are no-ops if telemetry disabled) -- telemetry.Set("caddy_version", module.Version) -+ telemetry.Set("caddy_version", appVersion) - telemetry.Set("num_listeners", len(instance.Servers())) - telemetry.Set("server_type", serverType) - telemetry.Set("os", runtime.GOOS) -@@ -287,27 +279,6 @@ func defaultLoader(serverType string) (c - }, nil - } - --// getBuildModule returns the build info of Caddy --// from debug.BuildInfo (requires Go modules). If --// no version information is available, a non-nil --// value will still be returned, but with an --// unknown version. --func getBuildModule() *debug.Module { -- bi, ok := debug.ReadBuildInfo() -- if ok { -- // The recommended way to build Caddy involves -- // creating a separate main module, which -- // preserves caddy a read-only dependency -- // TODO: track related Go issue: https://github.com/golang/go/issues/29228 -- for _, mod := range bi.Deps { -- if mod.Path == "github.com/caddyserver/caddy" { -- return mod -- } -- } -- } -- return &debug.Module{Version: "unknown"} --} -- - func checkJSONCaddyfile() { - if fromJSON { - jsonBytes, err := ioutil.ReadAll(os.Stdin) -@@ -588,6 +559,9 @@ func ParseEnvFile(envInput io.Reader) (m - - const appName = "Caddy" - -+// Build information -+var appVersion = "unknown" -+ - // Flags that control program flow or startup - var ( - serverType string diff --git a/index.html b/index.html deleted file mode 100644 index 7c1b011..0000000 --- a/index.html +++ /dev/null @@ -1,45 +0,0 @@ - - - - - - - Test page for the Caddy web server on Fedora - - - - - - - - - - - - - - - - - - diff --git a/sources b/sources index 55e80b5..9b234c6 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (caddy-1.0.4.tar.gz) = 49dae9c0965000ba1cf36a6148ff78718383a511d671fb73edc3b08e4219db0a9902fc70e40bcbb13ffa7afaa520fd1e6303ea3776059de04085896c018d9c02 +SHA512 (caddy-2.1.1-vendored.tar.gz) = 405dae453dbe2248d5eb053bf8ad13385c85d518fdfe9c3aae730689554dffa35df075ebe0e0a4b077fca2efd492b439df3e0a3dd9b086d5cf917714d4f9fba4 From 9ce640e3746c50eb833d822ad7daac73843a418c Mon Sep 17 00:00:00 2001 From: Carl George Date: Thu, 13 Aug 2020 23:12:54 -0500 Subject: [PATCH 21/79] Add bash and zsh completion support --- bash-completion | 1210 +++++++++++++++++++++++++++++++++++++++++++++++ caddy.spec | 17 +- zsh-completion | 166 +++++++ 3 files changed, 1392 insertions(+), 1 deletion(-) create mode 100644 bash-completion create mode 100644 zsh-completion diff --git a/bash-completion b/bash-completion new file mode 100644 index 0000000..1da7f36 --- /dev/null +++ b/bash-completion @@ -0,0 +1,1210 @@ +#!/usr/bin/env bash + +# helper method +declare -f _contains_element > /dev/null || _contains_element() { + local e match="$1" + shift + for e; do [[ "$e" == "$match" ]] && return 0; done + return 1 +} + +_caddy_completions() +{ + # get current word, words array, current word index, and previous word, ignoring ":" as a wordbreak + local cur cword words + _get_comp_words_by_ref -n ":" cur words cword prev + + # complete subcommands list + if [ "$cword" -eq "1" ] && [ "adapt build-info environ file-server fmt hash-password help list-modules reload reverse-proxy run start stop trust untrust validate version" != "" ]; then + COMPREPLY=($(compgen -W "adapt build-info environ file-server fmt hash-password help list-modules reload reverse-proxy run start stop trust untrust validate version" -- "$cur")) + __ltrim_colon_completions "$cur" + return + fi + + local subcommand="${words[1]}" + + local args used_flags used_args index + + # register completions for each subcommand + if [ "${subcommand}" == "adapt" ]; then + local args_shift=2 + # get the list of already used flags and args, ignoring the current word + args=("${words[@]:args_shift}") # args without command and subcommand + used_flags=() + used_args=() + index=0 + + while [ "${#args[@]}" -gt 0 ]; do + if [ "${index}" -eq "$((cword-args_shift))" ]; then + # ignore current word + args=("${args[@]:1}") + index=$((index+1)) + continue + fi + + if [ "${args[0]}" == "--pretty" ]; then + used_flags+=("${args[0]}") + args=("${args[@]:1}") + index=$((index+1)) + continue + fi + if [ "${args[0]}" == "--validate" ]; then + used_flags+=("${args[0]}") + args=("${args[@]:1}") + index=$((index+1)) + continue + fi + + if [ "${args[0]}" == "--adapter" ]; then + used_flags+=("${args[0]}") + args=("${args[@]:2}") + index=$((index+2)) + continue + fi + if [ "${args[0]}" == "--config" ]; then + used_flags+=("${args[0]}") + args=("${args[@]:2}") + index=$((index+2)) + continue + fi + + if [[ "${args[0]}" != "-"* ]]; then + used_args+=("${args[0]}") + fi + args=("${args[@]:1}") + index=$((index+1)) + done + + if [[ "$prev" == "--adapter" ]]; then + COMPREPLY=() + if command -v grep > /dev/null && command -v sed > /dev/null && command -v tr > /dev/null; then + COMPREPLY=($(compgen -W "$(caddy list-modules | grep adapters | sed s/caddy.adapters.// | tr ' +' ' ')" -- "$cur")) + fi + return + fi + if [[ "$prev" == "--config" ]]; then + COMPREPLY=() + COMPREPLY=($(compgen -f -- "$cur")) + return + fi + + if [[ $cur == -* ]]; then + # flags + completion=() + + if [[ $cur != --* ]]; then + true + fi + + if ! _contains_element "--pretty" "${used_flags[@]}"; then + completion+=("--pretty") + fi + if ! _contains_element "--validate" "${used_flags[@]}"; then + completion+=("--validate") + fi + if ! _contains_element "--adapter" "${used_flags[@]}"; then + completion+=("--adapter") + fi + if ! _contains_element "--config" "${used_flags[@]}"; then + completion+=("--config") + fi + + COMPREPLY=($(compgen -W "${completion[*]}" -- "$cur")) + return + fi + + + return + fi + if [ "${subcommand}" == "build-info" ]; then + local args_shift=2 + # get the list of already used flags and args, ignoring the current word + args=("${words[@]:args_shift}") # args without command and subcommand + used_flags=() + used_args=() + index=0 + + while [ "${#args[@]}" -gt 0 ]; do + if [ "${index}" -eq "$((cword-args_shift))" ]; then + # ignore current word + args=("${args[@]:1}") + index=$((index+1)) + continue + fi + + + + if [[ "${args[0]}" != "-"* ]]; then + used_args+=("${args[0]}") + fi + args=("${args[@]:1}") + index=$((index+1)) + done + + + if [[ $cur == -* ]]; then + # flags + completion=() + + if [[ $cur != --* ]]; then + true + fi + + + COMPREPLY=($(compgen -W "${completion[*]}" -- "$cur")) + return + fi + + + return + fi + if [ "${subcommand}" == "environ" ]; then + local args_shift=2 + # get the list of already used flags and args, ignoring the current word + args=("${words[@]:args_shift}") # args without command and subcommand + used_flags=() + used_args=() + index=0 + + while [ "${#args[@]}" -gt 0 ]; do + if [ "${index}" -eq "$((cword-args_shift))" ]; then + # ignore current word + args=("${args[@]:1}") + index=$((index+1)) + continue + fi + + + + if [[ "${args[0]}" != "-"* ]]; then + used_args+=("${args[0]}") + fi + args=("${args[@]:1}") + index=$((index+1)) + done + + + if [[ $cur == -* ]]; then + # flags + completion=() + + if [[ $cur != --* ]]; then + true + fi + + + COMPREPLY=($(compgen -W "${completion[*]}" -- "$cur")) + return + fi + + + return + fi + if [ "${subcommand}" == "file-server" ]; then + local args_shift=2 + # get the list of already used flags and args, ignoring the current word + args=("${words[@]:args_shift}") # args without command and subcommand + used_flags=() + used_args=() + index=0 + + while [ "${#args[@]}" -gt 0 ]; do + if [ "${index}" -eq "$((cword-args_shift))" ]; then + # ignore current word + args=("${args[@]:1}") + index=$((index+1)) + continue + fi + + if [ "${args[0]}" == "--browse" ]; then + used_flags+=("${args[0]}") + args=("${args[@]:1}") + index=$((index+1)) + continue + fi + if [ "${args[0]}" == "--templates" ]; then + used_flags+=("${args[0]}") + args=("${args[@]:1}") + index=$((index+1)) + continue + fi + + if [ "${args[0]}" == "--domain" ]; then + used_flags+=("${args[0]}") + args=("${args[@]:2}") + index=$((index+2)) + continue + fi + if [ "${args[0]}" == "--listen" ]; then + used_flags+=("${args[0]}") + args=("${args[@]:2}") + index=$((index+2)) + continue + fi + if [ "${args[0]}" == "--root" ]; then + used_flags+=("${args[0]}") + args=("${args[@]:2}") + index=$((index+2)) + continue + fi + + if [[ "${args[0]}" != "-"* ]]; then + used_args+=("${args[0]}") + fi + args=("${args[@]:1}") + index=$((index+1)) + done + + if [[ "$prev" == "--domain" ]]; then + COMPREPLY=() + return + fi + if [[ "$prev" == "--listen" ]]; then + COMPREPLY=() + return + fi + if [[ "$prev" == "--root" ]]; then + COMPREPLY=() + COMPREPLY=($(compgen -d -- "$cur")) + return + fi + + if [[ $cur == -* ]]; then + # flags + completion=() + + if [[ $cur != --* ]]; then + true + fi + + if ! _contains_element "--browse" "${used_flags[@]}"; then + completion+=("--browse") + fi + if ! _contains_element "--templates" "${used_flags[@]}"; then + completion+=("--templates") + fi + if ! _contains_element "--domain" "${used_flags[@]}"; then + completion+=("--domain") + fi + if ! _contains_element "--listen" "${used_flags[@]}"; then + completion+=("--listen") + fi + if ! _contains_element "--root" "${used_flags[@]}"; then + completion+=("--root") + fi + + COMPREPLY=($(compgen -W "${completion[*]}" -- "$cur")) + return + fi + + + return + fi + if [ "${subcommand}" == "fmt" ]; then + local args_shift=2 + # get the list of already used flags and args, ignoring the current word + args=("${words[@]:args_shift}") # args without command and subcommand + used_flags=() + used_args=() + index=0 + + while [ "${#args[@]}" -gt 0 ]; do + if [ "${index}" -eq "$((cword-args_shift))" ]; then + # ignore current word + args=("${args[@]:1}") + index=$((index+1)) + continue + fi + + if [ "${args[0]}" == "--overwrite" ]; then + used_flags+=("${args[0]}") + args=("${args[@]:1}") + index=$((index+1)) + continue + fi + + + if [[ "${args[0]}" != "-"* ]]; then + used_args+=("${args[0]}") + fi + args=("${args[@]:1}") + index=$((index+1)) + done + + + if [[ $cur == -* ]]; then + # flags + completion=() + + if [[ $cur != --* ]]; then + true + fi + + if ! _contains_element "--overwrite" "${used_flags[@]}"; then + completion+=("--overwrite") + fi + + COMPREPLY=($(compgen -W "${completion[*]}" -- "$cur")) + return + fi + + if [[ "${#used_args[@]}" -eq "0" ]]; then + COMPREPLY=() + COMPREPLY=($(compgen -f -- "$cur")) + return + fi + + return + fi + if [ "${subcommand}" == "hash-password" ]; then + local args_shift=2 + # get the list of already used flags and args, ignoring the current word + args=("${words[@]:args_shift}") # args without command and subcommand + used_flags=() + used_args=() + index=0 + + while [ "${#args[@]}" -gt 0 ]; do + if [ "${index}" -eq "$((cword-args_shift))" ]; then + # ignore current word + args=("${args[@]:1}") + index=$((index+1)) + continue + fi + + + if [ "${args[0]}" == "--algorithm" ]; then + used_flags+=("${args[0]}") + args=("${args[@]:2}") + index=$((index+2)) + continue + fi + if [ "${args[0]}" == "--plaintext" ]; then + used_flags+=("${args[0]}") + args=("${args[@]:2}") + index=$((index+2)) + continue + fi + if [ "${args[0]}" == "--salt" ]; then + used_flags+=("${args[0]}") + args=("${args[@]:2}") + index=$((index+2)) + continue + fi + + if [[ "${args[0]}" != "-"* ]]; then + used_args+=("${args[0]}") + fi + args=("${args[@]:1}") + index=$((index+1)) + done + + if [[ "$prev" == "--algorithm" ]]; then + COMPREPLY=() + return + fi + if [[ "$prev" == "--plaintext" ]]; then + COMPREPLY=() + return + fi + if [[ "$prev" == "--salt" ]]; then + COMPREPLY=() + return + fi + + if [[ $cur == -* ]]; then + # flags + completion=() + + if [[ $cur != --* ]]; then + true + fi + + if ! _contains_element "--algorithm" "${used_flags[@]}"; then + completion+=("--algorithm") + fi + if ! _contains_element "--plaintext" "${used_flags[@]}"; then + completion+=("--plaintext") + fi + if ! _contains_element "--salt" "${used_flags[@]}"; then + completion+=("--salt") + fi + + COMPREPLY=($(compgen -W "${completion[*]}" -- "$cur")) + return + fi + + + return + fi + if [ "${subcommand}" == "help" ]; then + local args_shift=2 + # get the list of already used flags and args, ignoring the current word + args=("${words[@]:args_shift}") # args without command and subcommand + used_flags=() + used_args=() + index=0 + + while [ "${#args[@]}" -gt 0 ]; do + if [ "${index}" -eq "$((cword-args_shift))" ]; then + # ignore current word + args=("${args[@]:1}") + index=$((index+1)) + continue + fi + + + + if [[ "${args[0]}" != "-"* ]]; then + used_args+=("${args[0]}") + fi + args=("${args[@]:1}") + index=$((index+1)) + done + + + if [[ $cur == -* ]]; then + # flags + completion=() + + if [[ $cur != --* ]]; then + true + fi + + + COMPREPLY=($(compgen -W "${completion[*]}" -- "$cur")) + return + fi + + if [[ "${#used_args[@]}" -eq "0" ]]; then + COMPREPLY=() + COMPREPLY=($(compgen -W "adapt build-info environ file-server fmt hash-password help list-modules reload reverse-proxy run stop trust untrust validate" -- "$cur")) + return + fi + + return + fi + if [ "${subcommand}" == "list-modules" ]; then + local args_shift=2 + # get the list of already used flags and args, ignoring the current word + args=("${words[@]:args_shift}") # args without command and subcommand + used_flags=() + used_args=() + index=0 + + while [ "${#args[@]}" -gt 0 ]; do + if [ "${index}" -eq "$((cword-args_shift))" ]; then + # ignore current word + args=("${args[@]:1}") + index=$((index+1)) + continue + fi + + if [ "${args[0]}" == "--versions" ]; then + used_flags+=("${args[0]}") + args=("${args[@]:1}") + index=$((index+1)) + continue + fi + + + if [[ "${args[0]}" != "-"* ]]; then + used_args+=("${args[0]}") + fi + args=("${args[@]:1}") + index=$((index+1)) + done + + + if [[ $cur == -* ]]; then + # flags + completion=() + + if [[ $cur != --* ]]; then + true + fi + + if ! _contains_element "--versions" "${used_flags[@]}"; then + completion+=("--versions") + fi + + COMPREPLY=($(compgen -W "${completion[*]}" -- "$cur")) + return + fi + + + return + fi + if [ "${subcommand}" == "reload" ]; then + local args_shift=2 + # get the list of already used flags and args, ignoring the current word + args=("${words[@]:args_shift}") # args without command and subcommand + used_flags=() + used_args=() + index=0 + + while [ "${#args[@]}" -gt 0 ]; do + if [ "${index}" -eq "$((cword-args_shift))" ]; then + # ignore current word + args=("${args[@]:1}") + index=$((index+1)) + continue + fi + + + if [ "${args[0]}" == "--adapter" ]; then + used_flags+=("${args[0]}") + args=("${args[@]:2}") + index=$((index+2)) + continue + fi + if [ "${args[0]}" == "--config" ]; then + used_flags+=("${args[0]}") + args=("${args[@]:2}") + index=$((index+2)) + continue + fi + if [ "${args[0]}" == "--address" ]; then + used_flags+=("${args[0]}") + args=("${args[@]:2}") + index=$((index+2)) + continue + fi + + if [[ "${args[0]}" != "-"* ]]; then + used_args+=("${args[0]}") + fi + args=("${args[@]:1}") + index=$((index+1)) + done + + if [[ "$prev" == "--adapter" ]]; then + COMPREPLY=() + if command -v grep > /dev/null && command -v sed > /dev/null && command -v tr > /dev/null; then + COMPREPLY=($(compgen -W "$(caddy list-modules | grep adapters | sed s/caddy.adapters.// | tr ' +' ' ')" -- "$cur")) + fi + return + fi + if [[ "$prev" == "--config" ]]; then + COMPREPLY=() + COMPREPLY=($(compgen -f -- "$cur")) + return + fi + if [[ "$prev" == "--address" ]]; then + COMPREPLY=() + return + fi + + if [[ $cur == -* ]]; then + # flags + completion=() + + if [[ $cur != --* ]]; then + true + fi + + if ! _contains_element "--adapter" "${used_flags[@]}"; then + completion+=("--adapter") + fi + if ! _contains_element "--config" "${used_flags[@]}"; then + completion+=("--config") + fi + if ! _contains_element "--address" "${used_flags[@]}"; then + completion+=("--address") + fi + + COMPREPLY=($(compgen -W "${completion[*]}" -- "$cur")) + return + fi + + + return + fi + if [ "${subcommand}" == "reverse-proxy" ]; then + local args_shift=2 + # get the list of already used flags and args, ignoring the current word + args=("${words[@]:args_shift}") # args without command and subcommand + used_flags=() + used_args=() + index=0 + + while [ "${#args[@]}" -gt 0 ]; do + if [ "${index}" -eq "$((cword-args_shift))" ]; then + # ignore current word + args=("${args[@]:1}") + index=$((index+1)) + continue + fi + + if [ "${args[0]}" == "--change-host-header" ]; then + used_flags+=("${args[0]}") + args=("${args[@]:1}") + index=$((index+1)) + continue + fi + + if [ "${args[0]}" == "--from" ]; then + used_flags+=("${args[0]}") + args=("${args[@]:2}") + index=$((index+2)) + continue + fi + if [ "${args[0]}" == "--to" ]; then + used_flags+=("${args[0]}") + args=("${args[@]:2}") + index=$((index+2)) + continue + fi + + if [[ "${args[0]}" != "-"* ]]; then + used_args+=("${args[0]}") + fi + args=("${args[@]:1}") + index=$((index+1)) + done + + if [[ "$prev" == "--from" ]]; then + COMPREPLY=() + return + fi + if [[ "$prev" == "--to" ]]; then + COMPREPLY=() + return + fi + + if [[ $cur == -* ]]; then + # flags + completion=() + + if [[ $cur != --* ]]; then + true + fi + + if ! _contains_element "--change-host-header" "${used_flags[@]}"; then + completion+=("--change-host-header") + fi + if ! _contains_element "--from" "${used_flags[@]}"; then + completion+=("--from") + fi + if ! _contains_element "--to" "${used_flags[@]}"; then + completion+=("--to") + fi + + COMPREPLY=($(compgen -W "${completion[*]}" -- "$cur")) + return + fi + + + return + fi + if [ "${subcommand}" == "run" ]; then + local args_shift=2 + # get the list of already used flags and args, ignoring the current word + args=("${words[@]:args_shift}") # args without command and subcommand + used_flags=() + used_args=() + index=0 + + while [ "${#args[@]}" -gt 0 ]; do + if [ "${index}" -eq "$((cword-args_shift))" ]; then + # ignore current word + args=("${args[@]:1}") + index=$((index+1)) + continue + fi + + if [ "${args[0]}" == "--environ" ]; then + used_flags+=("${args[0]}") + args=("${args[@]:1}") + index=$((index+1)) + continue + fi + if [ "${args[0]}" == "--resume" ]; then + used_flags+=("${args[0]}") + args=("${args[@]:1}") + index=$((index+1)) + continue + fi + if [ "${args[0]}" == "--watch" ]; then + used_flags+=("${args[0]}") + args=("${args[@]:1}") + index=$((index+1)) + continue + fi + + if [ "${args[0]}" == "--adapter" ]; then + used_flags+=("${args[0]}") + args=("${args[@]:2}") + index=$((index+2)) + continue + fi + if [ "${args[0]}" == "--config" ]; then + used_flags+=("${args[0]}") + args=("${args[@]:2}") + index=$((index+2)) + continue + fi + if [ "${args[0]}" == "--pingback" ]; then + used_flags+=("${args[0]}") + args=("${args[@]:2}") + index=$((index+2)) + continue + fi + if [ "${args[0]}" == "--pidfile" ]; then + used_flags+=("${args[0]}") + args=("${args[@]:2}") + index=$((index+2)) + continue + fi + + if [[ "${args[0]}" != "-"* ]]; then + used_args+=("${args[0]}") + fi + args=("${args[@]:1}") + index=$((index+1)) + done + + if [[ "$prev" == "--adapter" ]]; then + COMPREPLY=() + if command -v grep > /dev/null && command -v sed > /dev/null && command -v tr > /dev/null; then + COMPREPLY=($(compgen -W "$(caddy list-modules | grep adapters | sed s/caddy.adapters.// | tr ' +' ' ')" -- "$cur")) + fi + return + fi + if [[ "$prev" == "--config" ]]; then + COMPREPLY=() + COMPREPLY=($(compgen -f -- "$cur")) + return + fi + if [[ "$prev" == "--pingback" ]]; then + COMPREPLY=() + return + fi + if [[ "$prev" == "--pidfile" ]]; then + COMPREPLY=() + COMPREPLY=($(compgen -f -- "$cur")) + return + fi + + if [[ $cur == -* ]]; then + # flags + completion=() + + if [[ $cur != --* ]]; then + true + fi + + if ! _contains_element "--environ" "${used_flags[@]}"; then + completion+=("--environ") + fi + if ! _contains_element "--resume" "${used_flags[@]}"; then + completion+=("--resume") + fi + if ! _contains_element "--watch" "${used_flags[@]}"; then + completion+=("--watch") + fi + if ! _contains_element "--adapter" "${used_flags[@]}"; then + completion+=("--adapter") + fi + if ! _contains_element "--config" "${used_flags[@]}"; then + completion+=("--config") + fi + if ! _contains_element "--pingback" "${used_flags[@]}"; then + completion+=("--pingback") + fi + if ! _contains_element "--pidfile" "${used_flags[@]}"; then + completion+=("--pidfile") + fi + + COMPREPLY=($(compgen -W "${completion[*]}" -- "$cur")) + return + fi + + + return + fi + if [ "${subcommand}" == "start" ]; then + local args_shift=2 + # get the list of already used flags and args, ignoring the current word + args=("${words[@]:args_shift}") # args without command and subcommand + used_flags=() + used_args=() + index=0 + + while [ "${#args[@]}" -gt 0 ]; do + if [ "${index}" -eq "$((cword-args_shift))" ]; then + # ignore current word + args=("${args[@]:1}") + index=$((index+1)) + continue + fi + + if [ "${args[0]}" == "--watch" ]; then + used_flags+=("${args[0]}") + args=("${args[@]:1}") + index=$((index+1)) + continue + fi + + if [ "${args[0]}" == "--adapter" ]; then + used_flags+=("${args[0]}") + args=("${args[@]:2}") + index=$((index+2)) + continue + fi + if [ "${args[0]}" == "--config" ]; then + used_flags+=("${args[0]}") + args=("${args[@]:2}") + index=$((index+2)) + continue + fi + if [ "${args[0]}" == "--pidfile" ]; then + used_flags+=("${args[0]}") + args=("${args[@]:2}") + index=$((index+2)) + continue + fi + + if [[ "${args[0]}" != "-"* ]]; then + used_args+=("${args[0]}") + fi + args=("${args[@]:1}") + index=$((index+1)) + done + + if [[ "$prev" == "--adapter" ]]; then + COMPREPLY=() + if command -v grep > /dev/null && command -v sed > /dev/null && command -v tr > /dev/null; then + COMPREPLY=($(compgen -W "$(caddy list-modules | grep adapters | sed s/caddy.adapters.// | tr ' +' ' ')" -- "$cur")) + fi + return + fi + if [[ "$prev" == "--config" ]]; then + COMPREPLY=() + COMPREPLY=($(compgen -f -- "$cur")) + return + fi + if [[ "$prev" == "--pidfile" ]]; then + COMPREPLY=() + COMPREPLY=($(compgen -f -- "$cur")) + return + fi + + if [[ $cur == -* ]]; then + # flags + completion=() + + if [[ $cur != --* ]]; then + true + fi + + if ! _contains_element "--watch" "${used_flags[@]}"; then + completion+=("--watch") + fi + if ! _contains_element "--adapter" "${used_flags[@]}"; then + completion+=("--adapter") + fi + if ! _contains_element "--config" "${used_flags[@]}"; then + completion+=("--config") + fi + if ! _contains_element "--pidfile" "${used_flags[@]}"; then + completion+=("--pidfile") + fi + + COMPREPLY=($(compgen -W "${completion[*]}" -- "$cur")) + return + fi + + + return + fi + if [ "${subcommand}" == "stop" ]; then + local args_shift=2 + # get the list of already used flags and args, ignoring the current word + args=("${words[@]:args_shift}") # args without command and subcommand + used_flags=() + used_args=() + index=0 + + while [ "${#args[@]}" -gt 0 ]; do + if [ "${index}" -eq "$((cword-args_shift))" ]; then + # ignore current word + args=("${args[@]:1}") + index=$((index+1)) + continue + fi + + + if [ "${args[0]}" == "--address" ]; then + used_flags+=("${args[0]}") + args=("${args[@]:2}") + index=$((index+2)) + continue + fi + + if [[ "${args[0]}" != "-"* ]]; then + used_args+=("${args[0]}") + fi + args=("${args[@]:1}") + index=$((index+1)) + done + + if [[ "$prev" == "--address" ]]; then + COMPREPLY=() + return + fi + + if [[ $cur == -* ]]; then + # flags + completion=() + + if [[ $cur != --* ]]; then + true + fi + + if ! _contains_element "--address" "${used_flags[@]}"; then + completion+=("--address") + fi + + COMPREPLY=($(compgen -W "${completion[*]}" -- "$cur")) + return + fi + + + return + fi + if [ "${subcommand}" == "trust" ]; then + local args_shift=2 + # get the list of already used flags and args, ignoring the current word + args=("${words[@]:args_shift}") # args without command and subcommand + used_flags=() + used_args=() + index=0 + + while [ "${#args[@]}" -gt 0 ]; do + if [ "${index}" -eq "$((cword-args_shift))" ]; then + # ignore current word + args=("${args[@]:1}") + index=$((index+1)) + continue + fi + + + + if [[ "${args[0]}" != "-"* ]]; then + used_args+=("${args[0]}") + fi + args=("${args[@]:1}") + index=$((index+1)) + done + + + if [[ $cur == -* ]]; then + # flags + completion=() + + if [[ $cur != --* ]]; then + true + fi + + + COMPREPLY=($(compgen -W "${completion[*]}" -- "$cur")) + return + fi + + + return + fi + if [ "${subcommand}" == "untrust" ]; then + local args_shift=2 + # get the list of already used flags and args, ignoring the current word + args=("${words[@]:args_shift}") # args without command and subcommand + used_flags=() + used_args=() + index=0 + + while [ "${#args[@]}" -gt 0 ]; do + if [ "${index}" -eq "$((cword-args_shift))" ]; then + # ignore current word + args=("${args[@]:1}") + index=$((index+1)) + continue + fi + + + if [ "${args[0]}" == "--ca" ]; then + used_flags+=("${args[0]}") + args=("${args[@]:2}") + index=$((index+2)) + continue + fi + if [ "${args[0]}" == "--cert" ]; then + used_flags+=("${args[0]}") + args=("${args[@]:2}") + index=$((index+2)) + continue + fi + + if [[ "${args[0]}" != "-"* ]]; then + used_args+=("${args[0]}") + fi + args=("${args[@]:1}") + index=$((index+1)) + done + + if [[ "$prev" == "--ca" ]]; then + COMPREPLY=() + return + fi + if [[ "$prev" == "--cert" ]]; then + COMPREPLY=() + COMPREPLY=($(compgen -f -- "$cur")) + return + fi + + if [[ $cur == -* ]]; then + # flags + completion=() + + if [[ $cur != --* ]]; then + true + fi + + if ! _contains_element "--ca" "${used_flags[@]}"; then + completion+=("--ca") + fi + if ! _contains_element "--cert" "${used_flags[@]}"; then + completion+=("--cert") + fi + + COMPREPLY=($(compgen -W "${completion[*]}" -- "$cur")) + return + fi + + + return + fi + if [ "${subcommand}" == "validate" ]; then + local args_shift=2 + # get the list of already used flags and args, ignoring the current word + args=("${words[@]:args_shift}") # args without command and subcommand + used_flags=() + used_args=() + index=0 + + while [ "${#args[@]}" -gt 0 ]; do + if [ "${index}" -eq "$((cword-args_shift))" ]; then + # ignore current word + args=("${args[@]:1}") + index=$((index+1)) + continue + fi + + + if [ "${args[0]}" == "--config" ]; then + used_flags+=("${args[0]}") + args=("${args[@]:2}") + index=$((index+2)) + continue + fi + if [ "${args[0]}" == "--adapter" ]; then + used_flags+=("${args[0]}") + args=("${args[@]:2}") + index=$((index+2)) + continue + fi + + if [[ "${args[0]}" != "-"* ]]; then + used_args+=("${args[0]}") + fi + args=("${args[@]:1}") + index=$((index+1)) + done + + if [[ "$prev" == "--config" ]]; then + COMPREPLY=() + COMPREPLY=($(compgen -f -- "$cur")) + return + fi + if [[ "$prev" == "--adapter" ]]; then + COMPREPLY=() + if command -v grep > /dev/null && command -v sed > /dev/null && command -v tr > /dev/null; then + COMPREPLY=($(compgen -W "$(caddy list-modules | grep adapters | sed s/caddy.adapters.// | tr ' +' ' ')" -- "$cur")) + fi + return + fi + + if [[ $cur == -* ]]; then + # flags + completion=() + + if [[ $cur != --* ]]; then + true + fi + + if ! _contains_element "--config" "${used_flags[@]}"; then + completion+=("--config") + fi + if ! _contains_element "--adapter" "${used_flags[@]}"; then + completion+=("--adapter") + fi + + COMPREPLY=($(compgen -W "${completion[*]}" -- "$cur")) + return + fi + + + return + fi + if [ "${subcommand}" == "version" ]; then + local args_shift=2 + # get the list of already used flags and args, ignoring the current word + args=("${words[@]:args_shift}") # args without command and subcommand + used_flags=() + used_args=() + index=0 + + while [ "${#args[@]}" -gt 0 ]; do + if [ "${index}" -eq "$((cword-args_shift))" ]; then + # ignore current word + args=("${args[@]:1}") + index=$((index+1)) + continue + fi + + + + if [[ "${args[0]}" != "-"* ]]; then + used_args+=("${args[0]}") + fi + args=("${args[@]:1}") + index=$((index+1)) + done + + + if [[ $cur == -* ]]; then + # flags + completion=() + + if [[ $cur != --* ]]; then + true + fi + + + COMPREPLY=($(compgen -W "${completion[*]}" -- "$cur")) + return + fi + + + return + fi +} + +# register completion +complete -F _caddy_completions caddy + diff --git a/caddy.spec b/caddy.spec index ad85aa7..1dd50d8 100644 --- a/caddy.spec +++ b/caddy.spec @@ -29,7 +29,7 @@ Obsoletes: golang-github-caddyserver-caddy-devel < 1.0.4-2 Name: caddy -Release: 1%{?dist} +Release: 2%{?dist} Summary: Web server with automatic HTTPS License: ASL 2.0 URL: https://caddyserver.com @@ -51,6 +51,8 @@ Source1: Caddyfile Source2: caddy.service Source3: caddy-api.service Source4: caddy.png +Source5: bash-completion +Source6: zsh-completion # https://github.com/caddyserver/caddy/commit/e4ec08e977bcc9c798a2fca324c7105040990bcf BuildRequires: golang >= 1.14 @@ -169,6 +171,10 @@ ln -s ../fedora-testpage/index.html %{buildroot}%{_datadir}/caddy/index.html install -d -m 0755 %{buildroot}%{_datadir}/caddy/icons ln -s ../../pixmaps/poweredby.png %{buildroot}%{_datadir}/caddy/icons/poweredby.png +# shell completion +install -D -p -m 0644 %{S:5} %{buildroot}%{_datadir}/bash-completion/completions/caddy +install -D -p -m 0644 %{S:6} %{buildroot}%{_datadir}/zsh/site-functions/_caddy + %if %{with check} %check @@ -246,6 +252,12 @@ fi %config(noreplace) %{_sysconfdir}/caddy/Caddyfile %dir %{_sysconfdir}/caddy/Caddyfile.d %attr(0750,caddy,caddy) %dir %{_sharedstatedir}/caddy +# filesystem owns all the parent directories here +%{_datadir}/bash-completion/completions/caddy +# own parent directories in case zsh is not installed +%dir %{_datadir}/zsh +%dir %{_datadir}/zsh/site-functions +%{_datadir}/zsh/site-functions/_caddy %if %{without vendor} @@ -254,6 +266,9 @@ fi %changelog +* Fri Aug 14 2020 Carl George - 2.1.1-2 +- Add bash and zsh completion support + * Sun Aug 09 2020 Carl George - 2.1.1-1 - Update to Caddy v2 - Remove all v1 plugins diff --git a/zsh-completion b/zsh-completion new file mode 100644 index 0000000..66f50b7 --- /dev/null +++ b/zsh-completion @@ -0,0 +1,166 @@ +#compdef caddy + +function _caddy { + local _line + + _arguments -C \ + "1: :(adapt build-info environ file-server fmt hash-password help list-modules reload reverse-proxy run start stop trust untrust validate version)" \ + "*::arg:->args" + + case $line[1] in + adapt) + __caddy_adapt + ;; + build-info) + __caddy_build-info + ;; + environ) + __caddy_environ + ;; + file-server) + __caddy_file-server + ;; + fmt) + __caddy_fmt + ;; + hash-password) + __caddy_hash-password + ;; + help) + __caddy_help + ;; + list-modules) + __caddy_list-modules + ;; + reload) + __caddy_reload + ;; + reverse-proxy) + __caddy_reverse-proxy + ;; + run) + __caddy_run + ;; + start) + __caddy_start + ;; + stop) + __caddy_stop + ;; + trust) + __caddy_trust + ;; + untrust) + __caddy_untrust + ;; + validate) + __caddy_validate + ;; + version) + __caddy_version + ;; + esac +} + +function __caddy_adapt { + _arguments \ + "--pretty: :" \ + "--validate: :" \ + "--adapter: :_files" \ + "--config: :_files" \ + +} +function __caddy_build-info { + +} +function __caddy_environ { + +} +function __caddy_file-server { + _arguments \ + "--browse: :" \ + "--templates: :" \ + "--domain: :_files" \ + "--listen: :_files" \ + "--root: :_dirs" \ + +} +function __caddy_fmt { + _arguments \ + "--overwrite: :" \ + +} +function __caddy_hash-password { + _arguments \ + "--algorithm: :_files" \ + "--plaintext: :_files" \ + "--salt: :_files" \ + +} +function __caddy_help { + +} +function __caddy_list-modules { + _arguments \ + "--versions: :" \ + +} +function __caddy_reload { + _arguments \ + "--adapter: :_files" \ + "--config: :_files" \ + "--address: :_files" \ + +} +function __caddy_reverse-proxy { + _arguments \ + "--change-host-header: :" \ + "--from: :_files" \ + "--to: :_files" \ + +} +function __caddy_run { + _arguments \ + "--environ: :" \ + "--resume: :" \ + "--watch: :" \ + "--adapter: :_files" \ + "--config: :_files" \ + "--pingback: :_files" \ + "--pidfile: :_files" \ + +} +function __caddy_start { + _arguments \ + "--watch: :" \ + "--adapter: :_files" \ + "--config: :_files" \ + "--pidfile: :_files" \ + +} +function __caddy_stop { + _arguments \ + "--address: :_files" \ + +} +function __caddy_trust { + +} +function __caddy_untrust { + _arguments \ + "--ca: :_files" \ + "--cert: :_files" \ + +} +function __caddy_validate { + _arguments \ + "--config: :_files" \ + "--adapter: :_files" \ + +} +function __caddy_version { + +} + +_caddy + From 44ed85cd63162d89c0a6ce7987294132d7c2e417 Mon Sep 17 00:00:00 2001 From: Carl George Date: Fri, 18 Sep 2020 21:35:01 -0500 Subject: [PATCH 22/79] Latest upstream 2.2.0 rc3 --- caddy.spec | 19 +++++++++++++------ sources | 2 +- 2 files changed, 14 insertions(+), 7 deletions(-) diff --git a/caddy.spec b/caddy.spec index 1dd50d8..899d8e6 100644 --- a/caddy.spec +++ b/caddy.spec @@ -7,7 +7,10 @@ # https://github.com/caddyserver/caddy %global goipath github.com/caddyserver/caddy %global goaltipaths github.com/mholt/caddy -Version: 2.1.1 +%global basever 2.2.0 +%global prerel rc +%global prerelnum 3 +Version: %{basever}%{?prerel:~%{prerel}%{prerelnum}} %gometa @@ -29,7 +32,7 @@ Obsoletes: golang-github-caddyserver-caddy-devel < 1.0.4-2 Name: caddy -Release: 2%{?dist} +Release: 1%{?dist} Summary: Web server with automatic HTTPS License: ASL 2.0 URL: https://caddyserver.com @@ -39,6 +42,7 @@ URL: https://caddyserver.com # cd caddy-%%{version} # git checkout v%%{version} # go mod vendor +# cd .. # tar --exclude .git -czf caddy-%%{version}-vendored.tar.gz caddy-%%{version} Source0: caddy-%{version}-vendored.tar.gz %else @@ -63,16 +67,16 @@ Provides: bundled(golang(github.com/alecthomas/chroma)) Provides: bundled(golang(github.com/aryann/difflib)) Provides: bundled(golang(github.com/caddyserver/certmagic)) Provides: bundled(golang(github.com/dustin/go-humanize)) -Provides: bundled(golang(github.com/go-acme/lego/v3)) Provides: bundled(golang(github.com/go-chi/chi)) Provides: bundled(golang(github.com/google/cel-go)) Provides: bundled(golang(github.com/jsternberg/zap-logfmt)) Provides: bundled(golang(github.com/klauspost/compress)) Provides: bundled(golang(github.com/klauspost/cpuid)) -Provides: bundled(golang(github.com/libdns/libdns)) Provides: bundled(golang(github.com/lucas-clemente/quic-go)) +Provides: bundled(golang(github.com/mholt/acmez)) Provides: bundled(golang(github.com/naoina/go-stringutil)) Provides: bundled(golang(github.com/naoina/toml)) +Provides: bundled(golang(github.com/prometheus/client_golang)) Provides: bundled(golang(github.com/smallstep/certificates)) Provides: bundled(golang(github.com/smallstep/cli)) Provides: bundled(golang(github.com/smallstep/nosql)) @@ -92,16 +96,16 @@ BuildRequires: golang(github.com/alecthomas/chroma) BuildRequires: golang(github.com/aryann/difflib) BuildRequires: golang(github.com/caddyserver/certmagic) BuildRequires: golang(github.com/dustin/go-humanize) -BuildRequires: golang(github.com/go-acme/lego/v3) BuildRequires: golang(github.com/go-chi/chi) BuildRequires: golang(github.com/google/cel-go) BuildRequires: golang(github.com/jsternberg/zap-logfmt) BuildRequires: golang(github.com/klauspost/compress) BuildRequires: golang(github.com/klauspost/cpuid) -BuildRequires: golang(github.com/libdns/libdns) BuildRequires: golang(github.com/lucas-clemente/quic-go) +BuildRequires: golang(github.com/mholt/acmez) BuildRequires: golang(github.com/naoina/go-stringutil) BuildRequires: golang(github.com/naoina/toml) +BuildRequires: golang(github.com/prometheus/client_golang) BuildRequires: golang(github.com/smallstep/certificates) BuildRequires: golang(github.com/smallstep/cli) BuildRequires: golang(github.com/smallstep/nosql) @@ -266,6 +270,9 @@ fi %changelog +* Sat Sep 19 2020 Carl George - 2.2.0~rc3-1 +- Latest upstream + * Fri Aug 14 2020 Carl George - 2.1.1-2 - Add bash and zsh completion support diff --git a/sources b/sources index 9b234c6..8b0d2d0 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (caddy-2.1.1-vendored.tar.gz) = 405dae453dbe2248d5eb053bf8ad13385c85d518fdfe9c3aae730689554dffa35df075ebe0e0a4b077fca2efd492b439df3e0a3dd9b086d5cf917714d4f9fba4 +SHA512 (caddy-2.2.0~rc3-vendored.tar.gz) = 50a5c4028ef31dec3091ec2bb9dffb7a993504c0cb7f58163356e4cbe81d259f0d7ddc37ba19996878a3458491c7ddbd5b09f0d9fdda6943dc5254a9f43c9091 From ea0c0164fecda892b7ade0fd4e3efdae89dc78ce Mon Sep 17 00:00:00 2001 From: Carl George Date: Fri, 25 Sep 2020 21:46:14 -0500 Subject: [PATCH 23/79] Latest upstream 2.2.0 --- caddy.spec | 7 +++++-- sources | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/caddy.spec b/caddy.spec index 899d8e6..a35f0e2 100644 --- a/caddy.spec +++ b/caddy.spec @@ -8,8 +8,8 @@ %global goipath github.com/caddyserver/caddy %global goaltipaths github.com/mholt/caddy %global basever 2.2.0 -%global prerel rc -%global prerelnum 3 +#global prerel rc +#global prerelnum 3 Version: %{basever}%{?prerel:~%{prerel}%{prerelnum}} %gometa @@ -270,6 +270,9 @@ fi %changelog +* Sat Sep 26 2020 Carl George - 2.2.0-1 +- Latest upstream + * Sat Sep 19 2020 Carl George - 2.2.0~rc3-1 - Latest upstream diff --git a/sources b/sources index 8b0d2d0..a418f69 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (caddy-2.2.0~rc3-vendored.tar.gz) = 50a5c4028ef31dec3091ec2bb9dffb7a993504c0cb7f58163356e4cbe81d259f0d7ddc37ba19996878a3458491c7ddbd5b09f0d9fdda6943dc5254a9f43c9091 +SHA512 (caddy-2.2.0-vendored.tar.gz) = eb11dbd4851916800083e4c4989837e667d30243477c4d0aa6784141672512dc3bd1812bdd2e7a0ad9c6fefb22fff1682648885d06ded7f8ed448debbeb09c84 From 9531424268e5708c5e677d6107b638626a6a1e0c Mon Sep 17 00:00:00 2001 From: Carl George Date: Fri, 30 Oct 2020 23:09:21 -0500 Subject: [PATCH 24/79] Latest upstream 2.2.1 --- caddy.spec | 7 +++++-- sources | 2 +- 2 files changed, 6 insertions(+), 3 deletions(-) diff --git a/caddy.spec b/caddy.spec index a35f0e2..5431100 100644 --- a/caddy.spec +++ b/caddy.spec @@ -7,7 +7,7 @@ # https://github.com/caddyserver/caddy %global goipath github.com/caddyserver/caddy %global goaltipaths github.com/mholt/caddy -%global basever 2.2.0 +%global basever 2.2.1 #global prerel rc #global prerelnum 3 Version: %{basever}%{?prerel:~%{prerel}%{prerelnum}} @@ -130,7 +130,7 @@ Provides: webserver %description %{common_description} -%if %{with vendor} +%if %{without vendor} %gopkg %endif @@ -270,6 +270,9 @@ fi %changelog +* Fri Oct 30 2020 Carl George - 2.2.1-1 +- Latest upstream + * Sat Sep 26 2020 Carl George - 2.2.0-1 - Latest upstream diff --git a/sources b/sources index a418f69..7c3e3d1 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (caddy-2.2.0-vendored.tar.gz) = eb11dbd4851916800083e4c4989837e667d30243477c4d0aa6784141672512dc3bd1812bdd2e7a0ad9c6fefb22fff1682648885d06ded7f8ed448debbeb09c84 +SHA512 (caddy-2.2.1-vendored.tar.gz) = 75af64f5c3c84d466d03ebf399c7f5994f79df250f95efc2675717e82974dbfe72246431703fcfbaf4f0474566a75f47c3fa00aca477e87f34e07b58103868c7 From 38c0f0e5dc9a0e2813763bf015965b6ce4653b1d Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Tue, 26 Jan 2021 01:34:12 +0000 Subject: [PATCH 25/79] - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- caddy.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/caddy.spec b/caddy.spec index 5431100..d33446d 100644 --- a/caddy.spec +++ b/caddy.spec @@ -32,7 +32,7 @@ Obsoletes: golang-github-caddyserver-caddy-devel < 1.0.4-2 Name: caddy -Release: 1%{?dist} +Release: 2%{?dist} Summary: Web server with automatic HTTPS License: ASL 2.0 URL: https://caddyserver.com @@ -270,6 +270,9 @@ fi %changelog +* Tue Jan 26 2021 Fedora Release Engineering - 2.2.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + * Fri Oct 30 2020 Carl George - 2.2.1-1 - Latest upstream From 0cffe898031c1f652f12d48b9acfb607cd46c1ea Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Tue, 2 Mar 2021 16:14:05 +0100 Subject: [PATCH 26/79] Rebuilt for updated systemd-rpm-macros See https://pagure.io/fesco/issue/2583. --- caddy.spec | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/caddy.spec b/caddy.spec index d33446d..ab5a499 100644 --- a/caddy.spec +++ b/caddy.spec @@ -32,7 +32,7 @@ Obsoletes: golang-github-caddyserver-caddy-devel < 1.0.4-2 Name: caddy -Release: 2%{?dist} +Release: 3%{?dist} Summary: Web server with automatic HTTPS License: ASL 2.0 URL: https://caddyserver.com @@ -270,6 +270,10 @@ fi %changelog +* Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek - 2.2.1-3 +- Rebuilt for updated systemd-rpm-macros + See https://pagure.io/fesco/issue/2583. + * Tue Jan 26 2021 Fedora Release Engineering - 2.2.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild From e1ac1b8b6422336b233949f1054bd9b42ec50bf2 Mon Sep 17 00:00:00 2001 From: Carl George Date: Wed, 3 Mar 2021 22:09:45 -0600 Subject: [PATCH 27/79] Latest upstream 2.3.0 - Fix vendored license handling --- caddy.spec | 40 ++++++++++++++++++++++++++++++++++++++-- sources | 2 +- 2 files changed, 39 insertions(+), 3 deletions(-) diff --git a/caddy.spec b/caddy.spec index ab5a499..00571b1 100644 --- a/caddy.spec +++ b/caddy.spec @@ -7,7 +7,7 @@ # https://github.com/caddyserver/caddy %global goipath github.com/caddyserver/caddy %global goaltipaths github.com/mholt/caddy -%global basever 2.2.1 +%global basever 2.3.0 #global prerel rc #global prerelnum 3 Version: %{basever}%{?prerel:~%{prerel}%{prerelnum}} @@ -32,9 +32,41 @@ Obsoletes: golang-github-caddyserver-caddy-devel < 1.0.4-2 Name: caddy -Release: 3%{?dist} +Release: 1%{?dist} Summary: Web server with automatic HTTPS +%if %{with vendor} +# caddy ASL 2.0 +# github.com/Masterminds/sprig/v3 MIT +# github.com/alecthomas/chroma MIT +# github.com/aryann/difflib MIT +# github.com/caddyserver/certmagic ASL 2.0 +# github.com/dustin/go-humanize MIT +# github.com/go-chi/chi MIT +# github.com/google/cel-go ASL 2.0 +# github.com/jsternberg/zap-logfmt MIT +# github.com/klauspost/compress BSD +# github.com/klauspost/cpuid/v2 MIT +# github.com/lucas-clemente/quic-go MIT +# github.com/mholt/acmez ASL 2.0 +# github.com/naoina/toml MIT +# github.com/prometheus/client_golang ASL 2.0 +# github.com/smallstep/certificates ASL 2.0 +# github.com/smallstep/cli ASL 2.0 +# github.com/smallstep/nosql ASL 2.0 +# github.com/smallstep/truststore ASL 2.0 +# github.com/yuin/goldmark MIT +# github.com/yuin/goldmark-highlighting MIT +# go.uber.org/zap MIT +# golang.org/x/crypto BSD +# golang.org/x/net BSD +# google.golang.org/genproto ASL 2.0 +# google.golang.org/protobuf BSD +# gopkg.in/natefinch/lumberjack.v2 MIT +# gopkg.in/yaml.v2 ASL 2.0 and MIT +License: ASL 2.0 and MIT and BSD +%else License: ASL 2.0 +%endif URL: https://caddyserver.com %if %{with vendor} @@ -270,6 +302,10 @@ fi %changelog +* Wed Mar 03 2021 Carl George - 2.3.0-1 +- Latest upstream +- Fix vendored license handling + * Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek - 2.2.1-3 - Rebuilt for updated systemd-rpm-macros See https://pagure.io/fesco/issue/2583. diff --git a/sources b/sources index 7c3e3d1..931c109 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (caddy-2.2.1-vendored.tar.gz) = 75af64f5c3c84d466d03ebf399c7f5994f79df250f95efc2675717e82974dbfe72246431703fcfbaf4f0474566a75f47c3fa00aca477e87f34e07b58103868c7 +SHA512 (caddy-2.3.0-vendored.tar.gz) = c8919c3d1b507cd734395eaea1f3790696ed5cfdbbe017173fd2dfe0e8fb677c446c40330907e60b2483cdbf35aad1feb8af5ae2e27774e6dc8affd9d2997c98 From b870f2651cf7c306b7e01595cbded07d5f03ff3e Mon Sep 17 00:00:00 2001 From: Carl George Date: Wed, 3 Mar 2021 22:29:34 -0600 Subject: [PATCH 28/79] Switch to white logo rhbz#1934864 --- caddy.png | Bin 1769 -> 0 bytes caddy.spec | 6 +++--- poweredby.png | Bin 0 -> 1766 bytes 3 files changed, 3 insertions(+), 3 deletions(-) delete mode 100644 caddy.png create mode 100644 poweredby.png diff --git a/caddy.png b/caddy.png deleted file mode 100644 index eb8e2843a42082ce2e6398893f1fd978893a8fe1..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1769 zcmVUsT}2fK@ZWv4)wT*%gnCO0Hi|D$q&AHbg9JoSqo`=W7^?A&CW>Hv1hq!c zYN|1Q07Z>j649y#!1cU>kPg z@AxG?A(U^DGl^cz6m$D%9E1C?gzCv0!u#-7da z1G8{E9+&j@ z#IaWbg z3Paq0({*C-1jp+R62|b=jAm8VzZGxP2^~9lDz4LPl#8;yQL%82OlTe}Qh|{YS%py! z6A@<7euwIO?{-ENlOGgPg;4ui(@u zr)2Hx^oIC3a{rVX<;1M-nN2|2cB z@3TaBdR*4NqG61G;d;EPr0?n3`&Ht*>##zE-(^@Ya=N0l^iq*;q&xjgQPV2WI+`u= zl+7ZSC~&NB$`i!`d{`uzdG(-4r=yd$QSI`9TPoV;Wbc2RfUE+S+h>$PQCz$<>3?(b zdlSCjVodCFQ0ueyro5pI&K8Br7in*h6jPGlBibd0J6p(NU*h&)WEHqtRCWuzNkn+W zf;ubd`<(cORw#^;pLdHfy{(WE%o5J9Fh+5vUWnI-Bc^!PRLHn9`8_0Zj3&%$A*+sV zJT(6mnR$V^qC!AKh=qZ6iMbdzX6VfazAz5{0o_T|`I)R`HN014wDUXdS7hyPYoWuP z${qdLS^KpuzG;POM_*vR?(q3qu@E;WZC`6KRwb5XN)!>#Kpm5C;@=SElH%-Mn#no2 zhJTH6qr5z8-z;`u72Z>#e_@pA_)pS4A|kRXoTN9AtSU&Rng1RUYNvcv!9ptx=?zcE z#H77MuW_c}WxDG+w+X}KS?>iEV=gWkuQ1Ax?vQc}HzoZA2E;_{E|HZck5^`WTkygX zolX(g6Lon?ihLKQ#{7fk(7O@CdXud5Bi7;?QB=FHgk}`47b`7o-zJWqxgwufAflJD z%sHL(Q%h*}i0brb@Rb^UbEC`=VRKG%lW@dWh%4?YSye_E6xZWrJa4by88?QN->Wn| zd+^po&bM0fZOPvAop8xGbof*Do);uf)0<$nl~s42^1%}R?b_emw!)C`G5Lg5J*)MW zRA%5i4Sd&#d;U735XW3qsl8YbpTxOYds*pzfw(uR(`%KuJ8x^0*?N7@=WFO|(RAL; z5ZUTkqDVO`40dJW^&BOS2N5)E#=*`p}%3iOxV4C7Oyf}G3N&UP`;s9f+ zZojhjp;hP5!;?$e-mm-UI_IEjbckcRI5K~P*NUTbx$tR)L2fqr=fs1G_o@#NMs?S` zCUFpuS08eNT>Q|fcIaX{-YqI0#gVm5L|zjrr%Yo1pile(e!t^?{zLE@OyU1T00000 LNkvXXu0mjfACO}) diff --git a/caddy.spec b/caddy.spec index 00571b1..c06ae83 100644 --- a/caddy.spec +++ b/caddy.spec @@ -86,7 +86,7 @@ Source0: %{gosource} Source1: Caddyfile Source2: caddy.service Source3: caddy-api.service -Source4: caddy.png +Source4: poweredby.png Source5: bash-completion Source6: zsh-completion @@ -201,8 +201,7 @@ install -D -p -m 0644 %{S:3} %{buildroot}%{_unitdir}/caddy-api.service install -d -m 0750 %{buildroot}%{_sharedstatedir}/caddy # welcome page -install -D -p -m 0644 %{S:4} %{buildroot}%{_datadir}/caddy/caddy.png -ln -s caddy.png %{buildroot}%{_datadir}/caddy/poweredby.png +install -D -p -m 0644 %{S:4} %{buildroot}%{_datadir}/caddy/poweredby.png ln -s ../fedora-testpage/index.html %{buildroot}%{_datadir}/caddy/index.html install -d -m 0755 %{buildroot}%{_datadir}/caddy/icons ln -s ../../pixmaps/poweredby.png %{buildroot}%{_datadir}/caddy/icons/poweredby.png @@ -305,6 +304,7 @@ fi * Wed Mar 03 2021 Carl George - 2.3.0-1 - Latest upstream - Fix vendored license handling +- Switch to white logo rhbz#1934864 * Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek - 2.2.1-3 - Rebuilt for updated systemd-rpm-macros diff --git a/poweredby.png b/poweredby.png new file mode 100644 index 0000000000000000000000000000000000000000..81314077bc59fddac0dac9bbd0c1eec2f7cf9284 GIT binary patch literal 1766 zcmVG-%KYsgQ#DBPvK6 zpdyeW$`mpUE27Z>wUOIoQBqoJz6MR7@7Evu99?(6Gu-EWB|P2-7w%rex7S{GpFON| zr7m=#Gs5f*PQ{6qqyds{msCj}<1Q3nSF(Wy;2BAeNa~Sc+bU_Z zBrYzrt+x_(jqTNykcRG_wH;OV81gZcFqjx+n536akn(Tf6}D zF7ewBcrLMj63E?ffqj7^fs=t_fU+eji=#hq9B@3)Khn*0u~%x~8jx@u2kal|<~goq z?Txdj(*|Hol;|hh$#EIbEknK^Fb((+*b()y9asd6sUg0rfscWm&c79S8yKC~l_nc# z1f~Eh6aN%DfhEAG#I7pY$vB#wY(Wh<=?47Zd{zn=A0^=nAoG;c9srYpjg+Gmn3coP z1iV|~zY~~FNwR@qN#csI1Gs^VnH}-B00)v)Lt-yD#U5U7wfVCN18xpP!PSyf^@7igyPlrk1>AwKR zlI$^n0cQi146bF4XQh+>M9vBT976cfQaqk2es;od>&kH3PRky(Ij--&-QZ86dQJTr z7?Q)We@4P9PCq8neL}RkI@`g7A2l!8H$}Qja(M2G?2baE)9q zX3gwGH!6zxfk?mD>3+rCCmJLzcedRmU0h2*CBaUU^s1y|BGop9D}Va=D~Dnq_dU-h z#{a=3Gg~HUwG&+n^pGTAxTLe4?pZV2mNptBEsFSN0{dtW0SuD#pc8#B=~7Ak%&eE0 z4M;zdZpxwA=)MoDvFn5W2d)&pR^FuD6LgApmq3tI{ZsCDCfMe>4)g>5bT)4RJ*Zx?-i-Yk z%xtTq_y%`PGT_4c1#pC<_a!X_CMM!|lPx+<<`w1rEdV3`68}iiER;P zO6pT&U}jq+z2rn=B;BcS2uLwUSs)zh{S`IETEg*caAZFccnH|$Y_}4QO&3HQQ*-*9 zNVr6Kq%*q*)wj4-UPL1t0pPyeL_6p1z+*WCMOccP{lJYi`n?{to1%Db zruy2OhYIkDZ)c3{cG@O93#+5JijqAe!@smh6_cDsI4_n3S0SfxMY!7jndA2lFq=?p z@@UH78BccMD#aq;Kx!+oUPSfs6yp`bmA$5VHldOjPlng>?91M+H%U52;RZNZ;fA+f z(od2Wo7tKY|3Q+jkaV)brt`a`HIn9=**e1cbh>kS+|1gXaTB|7lEz9pK+<-FBjrLf zTann*^j8MLrawVpQyZ#q_WxGWf^yS^?N76P6Wb{vj}(Y z?HD@^X#3{K;~6qucz0nBL3qnQneaxx8Q4sC8GR`Qf8p@>7n}8^w&R;n*8l(j07*qo IM6N<$f+N^P3jhEB literal 0 HcmV?d00001 From f7eac2099a2d273d2cb34f1c08d2ee90f5afe90b Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 21 Jul 2021 14:06:19 +0000 Subject: [PATCH 29/79] - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild Signed-off-by: Fedora Release Engineering From 25f111638e1ad824510fd50e6d70613e8d26dc05 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 21 Jul 2021 19:03:44 +0000 Subject: [PATCH 30/79] - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- caddy.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/caddy.spec b/caddy.spec index c06ae83..76d23ec 100644 --- a/caddy.spec +++ b/caddy.spec @@ -32,7 +32,7 @@ Obsoletes: golang-github-caddyserver-caddy-devel < 1.0.4-2 Name: caddy -Release: 1%{?dist} +Release: 2%{?dist} Summary: Web server with automatic HTTPS %if %{with vendor} # caddy ASL 2.0 @@ -301,6 +301,9 @@ fi %changelog +* Wed Jul 21 2021 Fedora Release Engineering - 2.3.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + * Wed Mar 03 2021 Carl George - 2.3.0-1 - Latest upstream - Fix vendored license handling From 67269d83baf684306727ed1cf2f6776e0972245d Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 19 Jan 2022 22:48:00 +0000 Subject: [PATCH 31/79] - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- caddy.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/caddy.spec b/caddy.spec index 76d23ec..47093e1 100644 --- a/caddy.spec +++ b/caddy.spec @@ -32,7 +32,7 @@ Obsoletes: golang-github-caddyserver-caddy-devel < 1.0.4-2 Name: caddy -Release: 2%{?dist} +Release: 3%{?dist} Summary: Web server with automatic HTTPS %if %{with vendor} # caddy ASL 2.0 @@ -301,6 +301,9 @@ fi %changelog +* Wed Jan 19 2022 Fedora Release Engineering - 2.3.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + * Wed Jul 21 2021 Fedora Release Engineering - 2.3.0-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild From 8a639d7060ef6ff610880429d161b5f0275deee1 Mon Sep 17 00:00:00 2001 From: Carl George Date: Wed, 16 Feb 2022 19:01:18 -0600 Subject: [PATCH 32/79] Latest upstream 2.4.6 The 2.4.6 vendored tarball has a slight modification. Upstream's go.mod for this version pins github.com/lucas-clemente/quic-go at version 0.23.0, but that version is incompatible with golang 1.18, which is already in rawhide. When generating the tarball I adjusted the go.mod file to use version 0.25.0. Resolves: rhbz#1984163 --- ...e-commands-that-can-alter-the-binary.patch | 71 +++++++++++++++++++ caddy-api.service | 1 + caddy.service | 1 + caddy.spec | 58 +++++++-------- sources | 2 +- 5 files changed, 99 insertions(+), 34 deletions(-) create mode 100644 0001-Disable-commands-that-can-alter-the-binary.patch diff --git a/0001-Disable-commands-that-can-alter-the-binary.patch b/0001-Disable-commands-that-can-alter-the-binary.patch new file mode 100644 index 0000000..3b48ffb --- /dev/null +++ b/0001-Disable-commands-that-can-alter-the-binary.patch @@ -0,0 +1,71 @@ +From 7bf03a1414b1ebc1a9ef573369fe8e7ee9956a33 Mon Sep 17 00:00:00 2001 +From: Carl George +Date: Wed, 16 Feb 2022 11:45:03 -0600 +Subject: [PATCH] Disable commands that can alter the binary + +--- + cmd/commands.go | 48 ------------------------------------------------ + 1 file changed, 48 deletions(-) + +diff --git a/cmd/commands.go b/cmd/commands.go +index 1e2c40de..cc091bce 100644 +--- a/cmd/commands.go ++++ b/cmd/commands.go +@@ -289,54 +289,6 @@ is always printed to stdout.`, + }(), + }) + +- RegisterCommand(Command{ +- Name: "upgrade", +- Func: cmdUpgrade, +- Short: "Upgrade Caddy (EXPERIMENTAL)", +- Long: ` +-Downloads an updated Caddy binary with the same modules/plugins at the +-latest versions. EXPERIMENTAL: May be changed or removed.`, +- Flags: func() *flag.FlagSet { +- fs := flag.NewFlagSet("upgrade", flag.ExitOnError) +- fs.Bool("keep-backup", false, "Keep the backed up binary, instead of deleting it") +- return fs +- }(), +- }) +- +- RegisterCommand(Command{ +- Name: "add-package", +- Func: cmdAddPackage, +- Usage: "", +- Short: "Adds Caddy packages (EXPERIMENTAL)", +- Long: ` +-Downloads an updated Caddy binary with the specified packages (module/plugin) +-added. Retains existing packages. Returns an error if the any of packages are +-already included. EXPERIMENTAL: May be changed or removed. +-`, +- Flags: func() *flag.FlagSet { +- fs := flag.NewFlagSet("add-package", flag.ExitOnError) +- fs.Bool("keep-backup", false, "Keep the backed up binary, instead of deleting it") +- return fs +- }(), +- }) +- +- RegisterCommand(Command{ +- Name: "remove-package", +- Func: cmdRemovePackage, +- Usage: "", +- Short: "Removes Caddy packages (EXPERIMENTAL)", +- Long: ` +-Downloads an updated Caddy binaries without the specified packages (module/plugin). +-Returns an error if any of the packages are not included. +-EXPERIMENTAL: May be changed or removed. +-`, +- Flags: func() *flag.FlagSet { +- fs := flag.NewFlagSet("remove-package", flag.ExitOnError) +- fs.Bool("keep-backup", false, "Keep the backed up binary, instead of deleting it") +- return fs +- }(), +- }) +- + } + + // RegisterCommand registers the command cmd. +-- +2.35.1 + diff --git a/caddy-api.service b/caddy-api.service index f13b510..47e6648 100644 --- a/caddy-api.service +++ b/caddy-api.service @@ -13,6 +13,7 @@ Documentation=https://caddyserver.com/docs/ After=network.target [Service] +Type=notify User=caddy Group=caddy ExecStart=/usr/bin/caddy run --environ --resume diff --git a/caddy.service b/caddy.service index b028aea..88843db 100644 --- a/caddy.service +++ b/caddy.service @@ -14,6 +14,7 @@ Documentation=https://caddyserver.com/docs/ After=network.target [Service] +Type=notify User=caddy Group=caddy ExecStartPre=/usr/bin/caddy validate --config /etc/caddy/Caddyfile diff --git a/caddy.spec b/caddy.spec index 47093e1..dc1ab26 100644 --- a/caddy.spec +++ b/caddy.spec @@ -6,8 +6,7 @@ # https://github.com/caddyserver/caddy %global goipath github.com/caddyserver/caddy -%global goaltipaths github.com/mholt/caddy -%global basever 2.3.0 +%global basever 2.4.6 #global prerel rc #global prerelnum 3 Version: %{basever}%{?prerel:~%{prerel}%{prerelnum}} @@ -17,25 +16,11 @@ Version: %{basever}%{?prerel:~%{prerel}%{prerelnum}} %global common_description %{expand: Caddy is the web server with automatic HTTPS.} -%global golicenses LICENSE -%global godocs README.md AUTHORS - -# added in F32, remove in F34 -%global godevelheader %{expand: -Obsoletes: golang-github-mholt-caddy-devel < 1.0.0-3 -} - -%if %{with vendor} -# added in F33, remove in F35 (or sooner if de-vendoring) -Obsoletes: golang-github-caddyserver-caddy-devel < 1.0.4-2 -%endif - - Name: caddy -Release: 3%{?dist} +Release: 1%{?dist} Summary: Web server with automatic HTTPS %if %{with vendor} -# caddy ASL 2.0 +# github.com/caddyserver/caddy ASL 2.0 # github.com/Masterminds/sprig/v3 MIT # github.com/alecthomas/chroma MIT # github.com/aryann/difflib MIT @@ -43,11 +28,12 @@ Summary: Web server with automatic HTTPS # github.com/dustin/go-humanize MIT # github.com/go-chi/chi MIT # github.com/google/cel-go ASL 2.0 -# github.com/jsternberg/zap-logfmt MIT -# github.com/klauspost/compress BSD +# github.com/google/uuid BSD +# github.com/klauspost/compress BSD and ASL 2.0 # github.com/klauspost/cpuid/v2 MIT # github.com/lucas-clemente/quic-go MIT # github.com/mholt/acmez ASL 2.0 +# github.com/naoina/go-stringutil MIT # github.com/naoina/toml MIT # github.com/prometheus/client_golang ASL 2.0 # github.com/smallstep/certificates ASL 2.0 @@ -59,6 +45,7 @@ Summary: Web server with automatic HTTPS # go.uber.org/zap MIT # golang.org/x/crypto BSD # golang.org/x/net BSD +# golang.org/x/term BSD # google.golang.org/genproto ASL 2.0 # google.golang.org/protobuf BSD # gopkg.in/natefinch/lumberjack.v2 MIT @@ -90,8 +77,11 @@ Source4: poweredby.png Source5: bash-completion Source6: zsh-completion -# https://github.com/caddyserver/caddy/commit/e4ec08e977bcc9c798a2fca324c7105040990bcf -BuildRequires: golang >= 1.14 +# downstream only patch to disable commands that can alter the binary +Patch: 0001-Disable-commands-that-can-alter-the-binary.patch + +# https://github.com/caddyserver/caddy/commit/6bc87ea2ff50a962f16dfafeb125f0f947c1a885 +BuildRequires: golang >= 1.16 %if %{with vendor} Provides: bundled(golang(github.com/Masterminds/sprig/v3)) @@ -101,9 +91,9 @@ Provides: bundled(golang(github.com/caddyserver/certmagic)) Provides: bundled(golang(github.com/dustin/go-humanize)) Provides: bundled(golang(github.com/go-chi/chi)) Provides: bundled(golang(github.com/google/cel-go)) -Provides: bundled(golang(github.com/jsternberg/zap-logfmt)) +Provides: bundled(golang(github.com/google/uuid)) Provides: bundled(golang(github.com/klauspost/compress)) -Provides: bundled(golang(github.com/klauspost/cpuid)) +Provides: bundled(golang(github.com/klauspost/cpuid/v2)) Provides: bundled(golang(github.com/lucas-clemente/quic-go)) Provides: bundled(golang(github.com/mholt/acmez)) Provides: bundled(golang(github.com/naoina/go-stringutil)) @@ -118,6 +108,7 @@ Provides: bundled(golang(github.com/yuin/goldmark-highlighting)) Provides: bundled(golang(go.uber.org/zap)) Provides: bundled(golang(golang.org/x/crypto)) Provides: bundled(golang(golang.org/x/net)) +Provides: bundled(golang(golang.org/x/term)) Provides: bundled(golang(google.golang.org/genproto)) Provides: bundled(golang(google.golang.org/protobuf)) Provides: bundled(golang(gopkg.in/natefinch/lumberjack.v2)) @@ -130,9 +121,9 @@ BuildRequires: golang(github.com/caddyserver/certmagic) BuildRequires: golang(github.com/dustin/go-humanize) BuildRequires: golang(github.com/go-chi/chi) BuildRequires: golang(github.com/google/cel-go) -BuildRequires: golang(github.com/jsternberg/zap-logfmt) +BuildRequires: golang(github.com/google/uuid) BuildRequires: golang(github.com/klauspost/compress) -BuildRequires: golang(github.com/klauspost/cpuid) +BuildRequires: golang(github.com/klauspost/cpuid/v2) BuildRequires: golang(github.com/lucas-clemente/quic-go) BuildRequires: golang(github.com/mholt/acmez) BuildRequires: golang(github.com/naoina/go-stringutil) @@ -147,6 +138,7 @@ BuildRequires: golang(github.com/yuin/goldmark-highlighting) BuildRequires: golang(go.uber.org/zap) BuildRequires: golang(golang.org/x/crypto) BuildRequires: golang(golang.org/x/net) +BuildRequires: golang(golang.org/x/term) BuildRequires: golang(google.golang.org/genproto) BuildRequires: golang(google.golang.org/protobuf) BuildRequires: golang(gopkg.in/natefinch/lumberjack.v2) @@ -168,11 +160,8 @@ Provides: webserver %prep -%if %{with vendor} -%goprep -k -%else -%goprep -%endif +%goprep %{?with_vendor:-k} +%autopatch -p 1 sed -e '/mod.Version/ s/unknown/%{version}-%{release}/' -i caddy.go @@ -277,8 +266,8 @@ fi %files -%license %{golicenses} -%doc %{godocs} +%license LICENSE +%doc README.md AUTHORS %{_bindir}/caddy %{_datadir}/caddy %{_unitdir}/caddy.service @@ -301,6 +290,9 @@ fi %changelog +* Wed Feb 16 2022 Carl George - 2.4.6-1 +- Latest upstream rhbz#1984163 + * Wed Jan 19 2022 Fedora Release Engineering - 2.3.0-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild diff --git a/sources b/sources index 931c109..be5b56a 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (caddy-2.3.0-vendored.tar.gz) = c8919c3d1b507cd734395eaea1f3790696ed5cfdbbe017173fd2dfe0e8fb677c446c40330907e60b2483cdbf35aad1feb8af5ae2e27774e6dc8affd9d2997c98 +SHA512 (caddy-2.4.6-vendored.tar.gz) = d2a3d98f831f153dc408c6793331e16649fd0e543e4be8ec0cf8b4d3918d1e11f6e57a9459bb3ac2d7c3345e036252f7666c4b7535ced5d7b6f3f52162e850ea From 148ccf6ed0dab8532af31d2a24fed2d5a508a9ec Mon Sep 17 00:00:00 2001 From: Carl George Date: Fri, 25 Feb 2022 21:13:03 -0600 Subject: [PATCH 33/79] Update welcome page symlink and image to work on both Fedora and EPEL --- caddy.spec | 22 +++++++++++++++------- poweredby-black.png | Bin 0 -> 1769 bytes poweredby.png => poweredby-white.png | Bin 3 files changed, 15 insertions(+), 7 deletions(-) create mode 100644 poweredby-black.png rename poweredby.png => poweredby-white.png (100%) diff --git a/caddy.spec b/caddy.spec index dc1ab26..8cc204c 100644 --- a/caddy.spec +++ b/caddy.spec @@ -17,7 +17,7 @@ Version: %{basever}%{?prerel:~%{prerel}%{prerelnum}} Caddy is the web server with automatic HTTPS.} Name: caddy -Release: 1%{?dist} +Release: 2%{?dist} Summary: Web server with automatic HTTPS %if %{with vendor} # github.com/caddyserver/caddy ASL 2.0 @@ -73,9 +73,10 @@ Source0: %{gosource} Source1: Caddyfile Source2: caddy.service Source3: caddy-api.service -Source4: poweredby.png -Source5: bash-completion -Source6: zsh-completion +Source4: poweredby-white.png +Source5: poweredby-black.png +Source6: bash-completion +Source7: zsh-completion # downstream only patch to disable commands that can alter the binary Patch: 0001-Disable-commands-that-can-alter-the-binary.patch @@ -190,14 +191,18 @@ install -D -p -m 0644 %{S:3} %{buildroot}%{_unitdir}/caddy-api.service install -d -m 0750 %{buildroot}%{_sharedstatedir}/caddy # welcome page +%if %{defined fedora} install -D -p -m 0644 %{S:4} %{buildroot}%{_datadir}/caddy/poweredby.png -ln -s ../fedora-testpage/index.html %{buildroot}%{_datadir}/caddy/index.html +%else +install -D -p -m 0644 %{S:5} %{buildroot}%{_datadir}/caddy/poweredby.png +%endif +ln -s ../testpage/index.html %{buildroot}%{_datadir}/caddy/index.html install -d -m 0755 %{buildroot}%{_datadir}/caddy/icons ln -s ../../pixmaps/poweredby.png %{buildroot}%{_datadir}/caddy/icons/poweredby.png # shell completion -install -D -p -m 0644 %{S:5} %{buildroot}%{_datadir}/bash-completion/completions/caddy -install -D -p -m 0644 %{S:6} %{buildroot}%{_datadir}/zsh/site-functions/_caddy +install -D -p -m 0644 %{S:6} %{buildroot}%{_datadir}/bash-completion/completions/caddy +install -D -p -m 0644 %{S:7} %{buildroot}%{_datadir}/zsh/site-functions/_caddy %if %{with check} @@ -290,6 +295,9 @@ fi %changelog +* Fri Feb 25 2022 Carl George - 2.4.6-2 +- Update welcome page symlink and image to work on both Fedora and EPEL + * Wed Feb 16 2022 Carl George - 2.4.6-1 - Latest upstream rhbz#1984163 diff --git a/poweredby-black.png b/poweredby-black.png new file mode 100644 index 0000000000000000000000000000000000000000..eb8e2843a42082ce2e6398893f1fd978893a8fe1 GIT binary patch literal 1769 zcmVUsT}2fK@ZWv4)wT*%gnCO0Hi|D$q&AHbg9JoSqo`=W7^?A&CW>Hv1hq!c zYN|1Q07Z>j649y#!1cU>kPg z@AxG?A(U^DGl^cz6m$D%9E1C?gzCv0!u#-7da z1G8{E9+&j@ z#IaWbg z3Paq0({*C-1jp+R62|b=jAm8VzZGxP2^~9lDz4LPl#8;yQL%82OlTe}Qh|{YS%py! z6A@<7euwIO?{-ENlOGgPg;4ui(@u zr)2Hx^oIC3a{rVX<;1M-nN2|2cB z@3TaBdR*4NqG61G;d;EPr0?n3`&Ht*>##zE-(^@Ya=N0l^iq*;q&xjgQPV2WI+`u= zl+7ZSC~&NB$`i!`d{`uzdG(-4r=yd$QSI`9TPoV;Wbc2RfUE+S+h>$PQCz$<>3?(b zdlSCjVodCFQ0ueyro5pI&K8Br7in*h6jPGlBibd0J6p(NU*h&)WEHqtRCWuzNkn+W zf;ubd`<(cORw#^;pLdHfy{(WE%o5J9Fh+5vUWnI-Bc^!PRLHn9`8_0Zj3&%$A*+sV zJT(6mnR$V^qC!AKh=qZ6iMbdzX6VfazAz5{0o_T|`I)R`HN014wDUXdS7hyPYoWuP z${qdLS^KpuzG;POM_*vR?(q3qu@E;WZC`6KRwb5XN)!>#Kpm5C;@=SElH%-Mn#no2 zhJTH6qr5z8-z;`u72Z>#e_@pA_)pS4A|kRXoTN9AtSU&Rng1RUYNvcv!9ptx=?zcE z#H77MuW_c}WxDG+w+X}KS?>iEV=gWkuQ1Ax?vQc}HzoZA2E;_{E|HZck5^`WTkygX zolX(g6Lon?ihLKQ#{7fk(7O@CdXud5Bi7;?QB=FHgk}`47b`7o-zJWqxgwufAflJD z%sHL(Q%h*}i0brb@Rb^UbEC`=VRKG%lW@dWh%4?YSye_E6xZWrJa4by88?QN->Wn| zd+^po&bM0fZOPvAop8xGbof*Do);uf)0<$nl~s42^1%}R?b_emw!)C`G5Lg5J*)MW zRA%5i4Sd&#d;U735XW3qsl8YbpTxOYds*pzfw(uR(`%KuJ8x^0*?N7@=WFO|(RAL; z5ZUTkqDVO`40dJW^&BOS2N5)E#=*`p}%3iOxV4C7Oyf}G3N&UP`;s9f+ zZojhjp;hP5!;?$e-mm-UI_IEjbckcRI5K~P*NUTbx$tR)L2fqr=fs1G_o@#NMs?S` zCUFpuS08eNT>Q|fcIaX{-YqI0#gVm5L|zjrr%Yo1pile(e!t^?{zLE@OyU1T00000 LNkvXXu0mjfACO}) literal 0 HcmV?d00001 diff --git a/poweredby.png b/poweredby-white.png similarity index 100% rename from poweredby.png rename to poweredby-white.png From cc311e698bab76adba80b3aa3e9239f221be28fb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert-Andr=C3=A9=20Mauchin?= Date: Fri, 17 Jun 2022 22:17:08 +0200 Subject: [PATCH 34/79] Rebuilt for CVE-2022-1996, CVE-2022-24675, CVE-2022-28327, CVE-2022-27191, CVE-2022-29526, CVE-2022-30629 --- caddy.spec | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/caddy.spec b/caddy.spec index 8cc204c..574e0fa 100644 --- a/caddy.spec +++ b/caddy.spec @@ -17,7 +17,7 @@ Version: %{basever}%{?prerel:~%{prerel}%{prerelnum}} Caddy is the web server with automatic HTTPS.} Name: caddy -Release: 2%{?dist} +Release: 3%{?dist} Summary: Web server with automatic HTTPS %if %{with vendor} # github.com/caddyserver/caddy ASL 2.0 @@ -295,6 +295,10 @@ fi %changelog +* Fri Jun 17 2022 Robert-André Mauchin - 2.4.6-3 +- Rebuilt for CVE-2022-1996, CVE-2022-24675, CVE-2022-28327, CVE-2022-27191, + CVE-2022-29526, CVE-2022-30629 + * Fri Feb 25 2022 Carl George - 2.4.6-2 - Update welcome page symlink and image to work on both Fedora and EPEL From baf718af4949da41fc9ee6febd6f7402404d08db Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Robert-Andr=C3=A9=20Mauchin?= Date: Sat, 18 Jun 2022 10:51:32 +0200 Subject: [PATCH 35/79] Rebuilt for CVE-2022-1996, CVE-2022-24675, CVE-2022-28327, CVE-2022-27191, CVE-2022-29526, CVE-2022-30629 From 28051782774a8e9f93d0cdf2b54e412e9dd32acc Mon Sep 17 00:00:00 2001 From: Maxwell G Date: Tue, 19 Jul 2022 13:54:44 -0500 Subject: [PATCH 36/79] Rebuild for CVE-2022-{1705,32148,30631,30633,28131,30635,30632,30630,1962} in golang --- caddy.spec | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/caddy.spec b/caddy.spec index 574e0fa..b416b09 100644 --- a/caddy.spec +++ b/caddy.spec @@ -17,7 +17,7 @@ Version: %{basever}%{?prerel:~%{prerel}%{prerelnum}} Caddy is the web server with automatic HTTPS.} Name: caddy -Release: 3%{?dist} +Release: 4%{?dist} Summary: Web server with automatic HTTPS %if %{with vendor} # github.com/caddyserver/caddy ASL 2.0 @@ -295,6 +295,10 @@ fi %changelog +* Tue Jul 19 2022 Maxwell G - 2.4.6-4 +- Rebuild for CVE-2022-{1705,32148,30631,30633,28131,30635,30632,30630,1962} in + golang + * Fri Jun 17 2022 Robert-André Mauchin - 2.4.6-3 - Rebuilt for CVE-2022-1996, CVE-2022-24675, CVE-2022-28327, CVE-2022-27191, CVE-2022-29526, CVE-2022-30629 From ae311baf59ffbb9af0fc01b3261b9abd737dd0b0 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 20 Jul 2022 22:28:49 +0000 Subject: [PATCH 37/79] Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- caddy.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/caddy.spec b/caddy.spec index b416b09..34fe866 100644 --- a/caddy.spec +++ b/caddy.spec @@ -17,7 +17,7 @@ Version: %{basever}%{?prerel:~%{prerel}%{prerelnum}} Caddy is the web server with automatic HTTPS.} Name: caddy -Release: 4%{?dist} +Release: 5%{?dist} Summary: Web server with automatic HTTPS %if %{with vendor} # github.com/caddyserver/caddy ASL 2.0 @@ -295,6 +295,9 @@ fi %changelog +* Wed Jul 20 2022 Fedora Release Engineering - 2.4.6-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + * Tue Jul 19 2022 Maxwell G - 2.4.6-4 - Rebuild for CVE-2022-{1705,32148,30631,30633,28131,30635,30632,30630,1962} in golang From b7594a88e068a8e2da354ab36545561f4cbf78c9 Mon Sep 17 00:00:00 2001 From: Carl George Date: Mon, 8 Aug 2022 23:50:58 -0500 Subject: [PATCH 38/79] Latest upstream 2.5.2 Resolves: rhbz#2062499 rhbz#2113136 --- caddy.spec | 86 ++++++++++++++++++++++------------------ create-vendor-tarball.sh | 15 +++++++ sources | 2 +- 3 files changed, 64 insertions(+), 39 deletions(-) create mode 100755 create-vendor-tarball.sh diff --git a/caddy.spec b/caddy.spec index 34fe866..8915b33 100644 --- a/caddy.spec +++ b/caddy.spec @@ -6,7 +6,7 @@ # https://github.com/caddyserver/caddy %global goipath github.com/caddyserver/caddy -%global basever 2.4.6 +%global basever 2.5.2 #global prerel rc #global prerelnum 3 Version: %{basever}%{?prerel:~%{prerel}%{prerelnum}} @@ -17,10 +17,11 @@ Version: %{basever}%{?prerel:~%{prerel}%{prerelnum}} Caddy is the web server with automatic HTTPS.} Name: caddy -Release: 5%{?dist} +Release: 1%{?dist} Summary: Web server with automatic HTTPS %if %{with vendor} # github.com/caddyserver/caddy ASL 2.0 +# github.com/BurntSushi/toml MIT # github.com/Masterminds/sprig/v3 MIT # github.com/alecthomas/chroma MIT # github.com/aryann/difflib MIT @@ -33,15 +34,18 @@ Summary: Web server with automatic HTTPS # github.com/klauspost/cpuid/v2 MIT # github.com/lucas-clemente/quic-go MIT # github.com/mholt/acmez ASL 2.0 -# github.com/naoina/go-stringutil MIT -# github.com/naoina/toml MIT # github.com/prometheus/client_golang ASL 2.0 # github.com/smallstep/certificates ASL 2.0 # github.com/smallstep/cli ASL 2.0 # github.com/smallstep/nosql ASL 2.0 # github.com/smallstep/truststore ASL 2.0 +# github.com/tailscale/tscert BSD # github.com/yuin/goldmark MIT # github.com/yuin/goldmark-highlighting MIT +# go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp ASL 2.0 +# go.opentelemetry.io/otel ASL 2.0 +# go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc ASL 2.0 +# go.opentelemetry.io/otel/sdk ASL 2.0 # go.uber.org/zap MIT # golang.org/x/crypto BSD # golang.org/x/net BSD @@ -49,7 +53,7 @@ Summary: Web server with automatic HTTPS # google.golang.org/genproto ASL 2.0 # google.golang.org/protobuf BSD # gopkg.in/natefinch/lumberjack.v2 MIT -# gopkg.in/yaml.v2 ASL 2.0 and MIT +# gopkg.in/yaml.v3 ASL 2.0 and MIT License: ASL 2.0 and MIT and BSD %else License: ASL 2.0 @@ -57,12 +61,7 @@ License: ASL 2.0 URL: https://caddyserver.com %if %{with vendor} -# git clone https://github.com/caddyserver/caddy.git caddy-%%{version} -# cd caddy-%%{version} -# git checkout v%%{version} -# go mod vendor -# cd .. -# tar --exclude .git -czf caddy-%%{version}-vendored.tar.gz caddy-%%{version} +# see create-vendor-tarball.sh in this distgit repo Source0: caddy-%{version}-vendored.tar.gz %else Source0: %{gosource} @@ -81,40 +80,45 @@ Source7: zsh-completion # downstream only patch to disable commands that can alter the binary Patch: 0001-Disable-commands-that-can-alter-the-binary.patch -# https://github.com/caddyserver/caddy/commit/6bc87ea2ff50a962f16dfafeb125f0f947c1a885 -BuildRequires: golang >= 1.16 +# https://github.com/caddyserver/caddy/commit/b4f1a713978f44b6f26721bd4eaa355164e3e6f4 +BuildRequires: golang >= 1.17 %if %{with vendor} -Provides: bundled(golang(github.com/Masterminds/sprig/v3)) -Provides: bundled(golang(github.com/alecthomas/chroma)) +Provides: bundled(golang(github.com/BurntSushi/toml)) = 1.1.0 +Provides: bundled(golang(github.com/Masterminds/sprig/v3)) = 3.2.2 +Provides: bundled(golang(github.com/alecthomas/chroma)) = 0.10.0 Provides: bundled(golang(github.com/aryann/difflib)) -Provides: bundled(golang(github.com/caddyserver/certmagic)) +Provides: bundled(golang(github.com/caddyserver/certmagic)) = 0.16.1 Provides: bundled(golang(github.com/dustin/go-humanize)) -Provides: bundled(golang(github.com/go-chi/chi)) -Provides: bundled(golang(github.com/google/cel-go)) -Provides: bundled(golang(github.com/google/uuid)) -Provides: bundled(golang(github.com/klauspost/compress)) -Provides: bundled(golang(github.com/klauspost/cpuid/v2)) -Provides: bundled(golang(github.com/lucas-clemente/quic-go)) -Provides: bundled(golang(github.com/mholt/acmez)) -Provides: bundled(golang(github.com/naoina/go-stringutil)) -Provides: bundled(golang(github.com/naoina/toml)) -Provides: bundled(golang(github.com/prometheus/client_golang)) -Provides: bundled(golang(github.com/smallstep/certificates)) -Provides: bundled(golang(github.com/smallstep/cli)) -Provides: bundled(golang(github.com/smallstep/nosql)) -Provides: bundled(golang(github.com/smallstep/truststore)) -Provides: bundled(golang(github.com/yuin/goldmark)) +Provides: bundled(golang(github.com/go-chi/chi)) = 4.1.2 +Provides: bundled(golang(github.com/google/cel-go)) = 0.11.4 +Provides: bundled(golang(github.com/google/uuid)) = 1.3.0 +Provides: bundled(golang(github.com/klauspost/compress)) = 1.15.6 +Provides: bundled(golang(github.com/klauspost/cpuid/v2)) = 2.0.13 +Provides: bundled(golang(github.com/lucas-clemente/quic-go)) = 0.28.0 +Provides: bundled(golang(github.com/mholt/acmez)) = 1.0.2 +Provides: bundled(golang(github.com/prometheus/client_golang)) = 1.12.1 +Provides: bundled(golang(github.com/smallstep/certificates)) = 0.19.0 +Provides: bundled(golang(github.com/smallstep/cli)) = 0.18.0 +Provides: bundled(golang(github.com/smallstep/nosql)) = 0.4.0 +Provides: bundled(golang(github.com/smallstep/truststore)) = 0.11.0 +Provides: bundled(golang(github.com/tailscale/tscert)) +Provides: bundled(golang(github.com/yuin/goldmark)) = 1.4.12 Provides: bundled(golang(github.com/yuin/goldmark-highlighting)) -Provides: bundled(golang(go.uber.org/zap)) +Provides: bundled(golang(go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp)) = 0.29.0 +Provides: bundled(golang(go.opentelemetry.io/otel)) = 1.4.0 +Provides: bundled(golang(go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc)) = 1.4.0 +Provides: bundled(golang(go.opentelemetry.io/otel/sdk)) = 1.4.0 +Provides: bundled(golang(go.uber.org/zap)) = 1.21.0 Provides: bundled(golang(golang.org/x/crypto)) Provides: bundled(golang(golang.org/x/net)) Provides: bundled(golang(golang.org/x/term)) Provides: bundled(golang(google.golang.org/genproto)) -Provides: bundled(golang(google.golang.org/protobuf)) -Provides: bundled(golang(gopkg.in/natefinch/lumberjack.v2)) -Provides: bundled(golang(gopkg.in/yaml.v2)) +Provides: bundled(golang(google.golang.org/protobuf)) = 1.28.0 +Provides: bundled(golang(gopkg.in/natefinch/lumberjack.v2)) = 2.0.0 +Provides: bundled(golang(gopkg.in/yaml.v3)) = 3.0.1 %else +BuildRequires: golang(github.com/BurntSushi/toml) BuildRequires: golang(github.com/Masterminds/sprig/v3) BuildRequires: golang(github.com/alecthomas/chroma) BuildRequires: golang(github.com/aryann/difflib) @@ -127,15 +131,18 @@ BuildRequires: golang(github.com/klauspost/compress) BuildRequires: golang(github.com/klauspost/cpuid/v2) BuildRequires: golang(github.com/lucas-clemente/quic-go) BuildRequires: golang(github.com/mholt/acmez) -BuildRequires: golang(github.com/naoina/go-stringutil) -BuildRequires: golang(github.com/naoina/toml) BuildRequires: golang(github.com/prometheus/client_golang) BuildRequires: golang(github.com/smallstep/certificates) BuildRequires: golang(github.com/smallstep/cli) BuildRequires: golang(github.com/smallstep/nosql) BuildRequires: golang(github.com/smallstep/truststore) +BuildRequires: golang(github.com/tailscale/tscert) BuildRequires: golang(github.com/yuin/goldmark) BuildRequires: golang(github.com/yuin/goldmark-highlighting) +BuildRequires: golang(go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp) +BuildRequires: golang(go.opentelemetry.io/otel) +BuildRequires: golang(go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc) +BuildRequires: golang(go.opentelemetry.io/otel/sdk) BuildRequires: golang(go.uber.org/zap) BuildRequires: golang(golang.org/x/crypto) BuildRequires: golang(golang.org/x/net) @@ -143,7 +150,7 @@ BuildRequires: golang(golang.org/x/term) BuildRequires: golang(google.golang.org/genproto) BuildRequires: golang(google.golang.org/protobuf) BuildRequires: golang(gopkg.in/natefinch/lumberjack.v2) -BuildRequires: golang(gopkg.in/yaml.v2) +BuildRequires: golang(gopkg.in/yaml.v3) %endif BuildRequires: systemd-rpm-macros @@ -295,6 +302,9 @@ fi %changelog +* Tue Aug 09 2022 Carl George - 2.5.2-1 +- Latest upstream, resolves rhbz#2062499 rhbz#2113136 + * Wed Jul 20 2022 Fedora Release Engineering - 2.4.6-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild diff --git a/create-vendor-tarball.sh b/create-vendor-tarball.sh new file mode 100755 index 0000000..80f8fe9 --- /dev/null +++ b/create-vendor-tarball.sh @@ -0,0 +1,15 @@ +#!/usr/bin/bash + +version=$1 + +if [[ -z ${version} ]]; then + echo "This script requires the version as an argument." + exit 1 +fi + +git clone --branch v${version} --depth 1 https://github.com/caddyserver/caddy.git caddy-${version} +pushd caddy-${version} +go mod vendor +popd +tar --exclude .git -czf caddy-${version}-vendored.tar.gz caddy-${version} +rm -r caddy-${version} diff --git a/sources b/sources index be5b56a..66015b6 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (caddy-2.4.6-vendored.tar.gz) = d2a3d98f831f153dc408c6793331e16649fd0e543e4be8ec0cf8b4d3918d1e11f6e57a9459bb3ac2d7c3345e036252f7666c4b7535ced5d7b6f3f52162e850ea +SHA512 (caddy-2.5.2-vendored.tar.gz) = 2b7eb72552c8ae3d5ba4240bf3593fa9374d3863ee93c4f3718f57781987548f0f163458396c18d93d72d8dd81d5ab7e66ccf65cd4ea97c76948bad174e2ba3a From 88f286572e962d38b2402291edd0f5dad6bb8b79 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 18 Jan 2023 23:23:51 +0000 Subject: [PATCH 39/79] Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- caddy.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/caddy.spec b/caddy.spec index 8915b33..fb2dcc9 100644 --- a/caddy.spec +++ b/caddy.spec @@ -17,7 +17,7 @@ Version: %{basever}%{?prerel:~%{prerel}%{prerelnum}} Caddy is the web server with automatic HTTPS.} Name: caddy -Release: 1%{?dist} +Release: 2%{?dist} Summary: Web server with automatic HTTPS %if %{with vendor} # github.com/caddyserver/caddy ASL 2.0 @@ -302,6 +302,9 @@ fi %changelog +* Wed Jan 18 2023 Fedora Release Engineering - 2.5.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + * Tue Aug 09 2022 Carl George - 2.5.2-1 - Latest upstream, resolves rhbz#2062499 rhbz#2113136 From 3283509b8af99e1992d0a2bcef20ec961ef730aa Mon Sep 17 00:00:00 2001 From: Carl George Date: Tue, 24 Jan 2023 14:57:01 -0600 Subject: [PATCH 40/79] Rebuild for CVE-2022-41717 in golang --- caddy.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/caddy.spec b/caddy.spec index fb2dcc9..37ce623 100644 --- a/caddy.spec +++ b/caddy.spec @@ -17,7 +17,7 @@ Version: %{basever}%{?prerel:~%{prerel}%{prerelnum}} Caddy is the web server with automatic HTTPS.} Name: caddy -Release: 2%{?dist} +Release: 3%{?dist} Summary: Web server with automatic HTTPS %if %{with vendor} # github.com/caddyserver/caddy ASL 2.0 @@ -302,6 +302,9 @@ fi %changelog +* Tue Jan 24 2023 Carl George - 2.5.2-3 +- Rebuild for CVE-2022-41717 in golang + * Wed Jan 18 2023 Fedora Release Engineering - 2.5.2-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild From c3d3c586e7f0a229567892b8a093b5d97978d0fa Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 19 Jul 2023 15:08:23 +0000 Subject: [PATCH 41/79] Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- caddy.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/caddy.spec b/caddy.spec index 37ce623..495130a 100644 --- a/caddy.spec +++ b/caddy.spec @@ -17,7 +17,7 @@ Version: %{basever}%{?prerel:~%{prerel}%{prerelnum}} Caddy is the web server with automatic HTTPS.} Name: caddy -Release: 3%{?dist} +Release: 4%{?dist} Summary: Web server with automatic HTTPS %if %{with vendor} # github.com/caddyserver/caddy ASL 2.0 @@ -302,6 +302,9 @@ fi %changelog +* Wed Jul 19 2023 Fedora Release Engineering - 2.5.2-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + * Tue Jan 24 2023 Carl George - 2.5.2-3 - Rebuild for CVE-2022-41717 in golang From b965142dcea5df6e635ee9b08b3a4c93e4ca0a8a Mon Sep 17 00:00:00 2001 From: Carl George Date: Wed, 26 Jul 2023 22:50:39 -0500 Subject: [PATCH 42/79] Remove vendor conditionals The caddy upstream adds and removes dependencies too often to keep up with. I doubt that I will ever have the time to package all of the dependencies as system packages. --- caddy.spec | 68 +----------------------------------------------------- 1 file changed, 1 insertion(+), 67 deletions(-) diff --git a/caddy.spec b/caddy.spec index 495130a..15ccaec 100644 --- a/caddy.spec +++ b/caddy.spec @@ -1,9 +1,3 @@ -%bcond_without vendor - -%if %{without vendor} -%bcond_without check -%endif - # https://github.com/caddyserver/caddy %global goipath github.com/caddyserver/caddy %global basever 2.5.2 @@ -19,7 +13,6 @@ Caddy is the web server with automatic HTTPS.} Name: caddy Release: 4%{?dist} Summary: Web server with automatic HTTPS -%if %{with vendor} # github.com/caddyserver/caddy ASL 2.0 # github.com/BurntSushi/toml MIT # github.com/Masterminds/sprig/v3 MIT @@ -55,17 +48,10 @@ Summary: Web server with automatic HTTPS # gopkg.in/natefinch/lumberjack.v2 MIT # gopkg.in/yaml.v3 ASL 2.0 and MIT License: ASL 2.0 and MIT and BSD -%else -License: ASL 2.0 -%endif URL: https://caddyserver.com -%if %{with vendor} # see create-vendor-tarball.sh in this distgit repo Source0: caddy-%{version}-vendored.tar.gz -%else -Source0: %{gosource} -%endif # based on reference files upstream # https://github.com/caddyserver/dist @@ -83,7 +69,6 @@ Patch: 0001-Disable-commands-that-can-alter-the-binary.patch # https://github.com/caddyserver/caddy/commit/b4f1a713978f44b6f26721bd4eaa355164e3e6f4 BuildRequires: golang >= 1.17 -%if %{with vendor} Provides: bundled(golang(github.com/BurntSushi/toml)) = 1.1.0 Provides: bundled(golang(github.com/Masterminds/sprig/v3)) = 3.2.2 Provides: bundled(golang(github.com/alecthomas/chroma)) = 0.10.0 @@ -117,41 +102,6 @@ Provides: bundled(golang(google.golang.org/genproto)) Provides: bundled(golang(google.golang.org/protobuf)) = 1.28.0 Provides: bundled(golang(gopkg.in/natefinch/lumberjack.v2)) = 2.0.0 Provides: bundled(golang(gopkg.in/yaml.v3)) = 3.0.1 -%else -BuildRequires: golang(github.com/BurntSushi/toml) -BuildRequires: golang(github.com/Masterminds/sprig/v3) -BuildRequires: golang(github.com/alecthomas/chroma) -BuildRequires: golang(github.com/aryann/difflib) -BuildRequires: golang(github.com/caddyserver/certmagic) -BuildRequires: golang(github.com/dustin/go-humanize) -BuildRequires: golang(github.com/go-chi/chi) -BuildRequires: golang(github.com/google/cel-go) -BuildRequires: golang(github.com/google/uuid) -BuildRequires: golang(github.com/klauspost/compress) -BuildRequires: golang(github.com/klauspost/cpuid/v2) -BuildRequires: golang(github.com/lucas-clemente/quic-go) -BuildRequires: golang(github.com/mholt/acmez) -BuildRequires: golang(github.com/prometheus/client_golang) -BuildRequires: golang(github.com/smallstep/certificates) -BuildRequires: golang(github.com/smallstep/cli) -BuildRequires: golang(github.com/smallstep/nosql) -BuildRequires: golang(github.com/smallstep/truststore) -BuildRequires: golang(github.com/tailscale/tscert) -BuildRequires: golang(github.com/yuin/goldmark) -BuildRequires: golang(github.com/yuin/goldmark-highlighting) -BuildRequires: golang(go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp) -BuildRequires: golang(go.opentelemetry.io/otel) -BuildRequires: golang(go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc) -BuildRequires: golang(go.opentelemetry.io/otel/sdk) -BuildRequires: golang(go.uber.org/zap) -BuildRequires: golang(golang.org/x/crypto) -BuildRequires: golang(golang.org/x/net) -BuildRequires: golang(golang.org/x/term) -BuildRequires: golang(google.golang.org/genproto) -BuildRequires: golang(google.golang.org/protobuf) -BuildRequires: golang(gopkg.in/natefinch/lumberjack.v2) -BuildRequires: golang(gopkg.in/yaml.v3) -%endif BuildRequires: systemd-rpm-macros %{?systemd_requires} @@ -162,13 +112,8 @@ Provides: webserver %description %{common_description} -%if %{without vendor} -%gopkg -%endif - - %prep -%goprep %{?with_vendor:-k} +%goprep -k %autopatch -p 1 sed -e '/mod.Version/ s/unknown/%{version}-%{release}/' -i caddy.go @@ -179,10 +124,6 @@ sed -e '/mod.Version/ s/unknown/%{version}-%{release}/' -i caddy.go %install -%if %{without vendor} -%gopkginstall -%endif - # command install -D -p -m 0755 %{gobuilddir}/bin/caddy %{buildroot}%{_bindir}/caddy @@ -212,10 +153,8 @@ install -D -p -m 0644 %{S:6} %{buildroot}%{_datadir}/bash-completion/completions install -D -p -m 0644 %{S:7} %{buildroot}%{_datadir}/zsh/site-functions/_caddy -%if %{with check} %check %gocheck -%endif %pre @@ -296,11 +235,6 @@ fi %{_datadir}/zsh/site-functions/_caddy -%if %{without vendor} -%gopkgfiles -%endif - - %changelog * Wed Jul 19 2023 Fedora Release Engineering - 2.5.2-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild From d750d14cdd4ca7610c2f78c66b14658ae972f743 Mon Sep 17 00:00:00 2001 From: Carl George Date: Wed, 26 Jul 2023 23:02:12 -0500 Subject: [PATCH 43/79] Drop i686 build https://fedoraproject.org/wiki/Changes/EncourageI686LeafRemoval https://pagure.io/go-rpm-macros/c/4269fce7f7cbc694a61a9f97220bacb573d98426 --- caddy.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/caddy.spec b/caddy.spec index 15ccaec..23a49c3 100644 --- a/caddy.spec +++ b/caddy.spec @@ -5,7 +5,7 @@ #global prerelnum 3 Version: %{basever}%{?prerel:~%{prerel}%{prerelnum}} -%gometa +%gometa -f %global common_description %{expand: Caddy is the web server with automatic HTTPS.} From 117732fdb76f155cdfb6d76cc8876922bbb27141 Mon Sep 17 00:00:00 2001 From: Carl George Date: Wed, 26 Jul 2023 23:25:16 -0500 Subject: [PATCH 44/79] Re-number sources --- caddy.spec | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/caddy.spec b/caddy.spec index 23a49c3..7df26e2 100644 --- a/caddy.spec +++ b/caddy.spec @@ -55,13 +55,13 @@ Source0: caddy-%{version}-vendored.tar.gz # based on reference files upstream # https://github.com/caddyserver/dist -Source1: Caddyfile -Source2: caddy.service -Source3: caddy-api.service -Source4: poweredby-white.png -Source5: poweredby-black.png -Source6: bash-completion -Source7: zsh-completion +Source10: Caddyfile +Source20: caddy.service +Source21: caddy-api.service +Source30: poweredby-white.png +Source31: poweredby-black.png +Source40: bash-completion +Source41: zsh-completion # downstream only patch to disable commands that can alter the binary Patch: 0001-Disable-commands-that-can-alter-the-binary.patch @@ -128,29 +128,29 @@ sed -e '/mod.Version/ s/unknown/%{version}-%{release}/' -i caddy.go install -D -p -m 0755 %{gobuilddir}/bin/caddy %{buildroot}%{_bindir}/caddy # config -install -D -p -m 0644 %{S:1} %{buildroot}%{_sysconfdir}/caddy/Caddyfile +install -D -p -m 0644 %{S:10} %{buildroot}%{_sysconfdir}/caddy/Caddyfile install -d -m 0755 %{buildroot}%{_sysconfdir}/caddy/Caddyfile.d # systemd units -install -D -p -m 0644 %{S:2} %{buildroot}%{_unitdir}/caddy.service -install -D -p -m 0644 %{S:3} %{buildroot}%{_unitdir}/caddy-api.service +install -D -p -m 0644 %{S:20} %{buildroot}%{_unitdir}/caddy.service +install -D -p -m 0644 %{S:21} %{buildroot}%{_unitdir}/caddy-api.service # data directory install -d -m 0750 %{buildroot}%{_sharedstatedir}/caddy # welcome page %if %{defined fedora} -install -D -p -m 0644 %{S:4} %{buildroot}%{_datadir}/caddy/poweredby.png +install -D -p -m 0644 %{S:30} %{buildroot}%{_datadir}/caddy/poweredby.png %else -install -D -p -m 0644 %{S:5} %{buildroot}%{_datadir}/caddy/poweredby.png +install -D -p -m 0644 %{S:31} %{buildroot}%{_datadir}/caddy/poweredby.png %endif ln -s ../testpage/index.html %{buildroot}%{_datadir}/caddy/index.html install -d -m 0755 %{buildroot}%{_datadir}/caddy/icons ln -s ../../pixmaps/poweredby.png %{buildroot}%{_datadir}/caddy/icons/poweredby.png # shell completion -install -D -p -m 0644 %{S:6} %{buildroot}%{_datadir}/bash-completion/completions/caddy -install -D -p -m 0644 %{S:7} %{buildroot}%{_datadir}/zsh/site-functions/_caddy +install -D -p -m 0644 %{S:40} %{buildroot}%{_datadir}/bash-completion/completions/caddy +install -D -p -m 0644 %{S:41} %{buildroot}%{_datadir}/zsh/site-functions/_caddy %check From 81ebae551d68688e6173df22830369edd7a088fa Mon Sep 17 00:00:00 2001 From: Carl George Date: Wed, 26 Jul 2023 23:31:27 -0500 Subject: [PATCH 45/79] Update to version 2.7.0~beta2, resolves rhbz#2225732 rhbz#2124366 - Resolves CVE-2022-41717 rhbz#2164315 - Resolves CVE-2022-41723 rhbz#2178412 --- ...e-commands-that-can-alter-the-binary.patch | 52 ++- caddy.spec | 360 ++++++++++++++---- create-vendor-tarball.sh | 39 +- sources | 2 +- 4 files changed, 344 insertions(+), 109 deletions(-) diff --git a/0001-Disable-commands-that-can-alter-the-binary.patch b/0001-Disable-commands-that-can-alter-the-binary.patch index 3b48ffb..b61277d 100644 --- a/0001-Disable-commands-that-can-alter-the-binary.patch +++ b/0001-Disable-commands-that-can-alter-the-binary.patch @@ -1,37 +1,35 @@ -From 7bf03a1414b1ebc1a9ef573369fe8e7ee9956a33 Mon Sep 17 00:00:00 2001 +From 2d810cf52c14e07cbc60afaf2511069c17bbc49d Mon Sep 17 00:00:00 2001 From: Carl George Date: Wed, 16 Feb 2022 11:45:03 -0600 Subject: [PATCH] Disable commands that can alter the binary --- - cmd/commands.go | 48 ------------------------------------------------ - 1 file changed, 48 deletions(-) + cmd/commands.go | 44 -------------------------------------------- + 1 file changed, 44 deletions(-) diff --git a/cmd/commands.go b/cmd/commands.go -index 1e2c40de..cc091bce 100644 +index d1b76f44..d5b8a326 100644 --- a/cmd/commands.go +++ b/cmd/commands.go -@@ -289,54 +289,6 @@ is always printed to stdout.`, - }(), +@@ -382,50 +382,6 @@ is always printed to stdout. + }, }) - RegisterCommand(Command{ - Name: "upgrade", -- Func: cmdUpgrade, - Short: "Upgrade Caddy (EXPERIMENTAL)", - Long: ` -Downloads an updated Caddy binary with the same modules/plugins at the --latest versions. EXPERIMENTAL: May be changed or removed.`, -- Flags: func() *flag.FlagSet { -- fs := flag.NewFlagSet("upgrade", flag.ExitOnError) -- fs.Bool("keep-backup", false, "Keep the backed up binary, instead of deleting it") -- return fs -- }(), +-latest versions. EXPERIMENTAL: May be changed or removed. +-`, +- CobraFunc: func(cmd *cobra.Command) { +- cmd.Flags().BoolP("keep-backup", "k", false, "Keep the backed up binary, instead of deleting it") +- cmd.RunE = WrapCommandFuncForCobra(cmdUpgrade) +- }, - }) - - RegisterCommand(Command{ - Name: "add-package", -- Func: cmdAddPackage, - Usage: "", - Short: "Adds Caddy packages (EXPERIMENTAL)", - Long: ` @@ -39,11 +37,10 @@ index 1e2c40de..cc091bce 100644 -added. Retains existing packages. Returns an error if the any of packages are -already included. EXPERIMENTAL: May be changed or removed. -`, -- Flags: func() *flag.FlagSet { -- fs := flag.NewFlagSet("add-package", flag.ExitOnError) -- fs.Bool("keep-backup", false, "Keep the backed up binary, instead of deleting it") -- return fs -- }(), +- CobraFunc: func(cmd *cobra.Command) { +- cmd.Flags().BoolP("keep-backup", "k", false, "Keep the backed up binary, instead of deleting it") +- cmd.RunE = WrapCommandFuncForCobra(cmdAddPackage) +- }, - }) - - RegisterCommand(Command{ @@ -56,16 +53,15 @@ index 1e2c40de..cc091bce 100644 -Returns an error if any of the packages are not included. -EXPERIMENTAL: May be changed or removed. -`, -- Flags: func() *flag.FlagSet { -- fs := flag.NewFlagSet("remove-package", flag.ExitOnError) -- fs.Bool("keep-backup", false, "Keep the backed up binary, instead of deleting it") -- return fs -- }(), +- CobraFunc: func(cmd *cobra.Command) { +- cmd.Flags().BoolP("keep-backup", "k", false, "Keep the backed up binary, instead of deleting it") +- cmd.RunE = WrapCommandFuncForCobra(cmdRemovePackage) +- }, - }) - - } - - // RegisterCommand registers the command cmd. + RegisterCommand(Command{ + Name: "manpage", + Usage: "--directory ", -- -2.35.1 +2.41.0 diff --git a/caddy.spec b/caddy.spec index 7df26e2..17667ff 100644 --- a/caddy.spec +++ b/caddy.spec @@ -1,8 +1,8 @@ # https://github.com/caddyserver/caddy %global goipath github.com/caddyserver/caddy -%global basever 2.5.2 -#global prerel rc -#global prerelnum 3 +%global basever 2.7.0 +%global prerel beta +%global prerelnum 2 Version: %{basever}%{?prerel:~%{prerel}%{prerelnum}} %gometa -f @@ -11,43 +11,11 @@ Version: %{basever}%{?prerel:~%{prerel}%{prerelnum}} Caddy is the web server with automatic HTTPS.} Name: caddy -Release: 4%{?dist} +Release: 1%{?dist} Summary: Web server with automatic HTTPS -# github.com/caddyserver/caddy ASL 2.0 -# github.com/BurntSushi/toml MIT -# github.com/Masterminds/sprig/v3 MIT -# github.com/alecthomas/chroma MIT -# github.com/aryann/difflib MIT -# github.com/caddyserver/certmagic ASL 2.0 -# github.com/dustin/go-humanize MIT -# github.com/go-chi/chi MIT -# github.com/google/cel-go ASL 2.0 -# github.com/google/uuid BSD -# github.com/klauspost/compress BSD and ASL 2.0 -# github.com/klauspost/cpuid/v2 MIT -# github.com/lucas-clemente/quic-go MIT -# github.com/mholt/acmez ASL 2.0 -# github.com/prometheus/client_golang ASL 2.0 -# github.com/smallstep/certificates ASL 2.0 -# github.com/smallstep/cli ASL 2.0 -# github.com/smallstep/nosql ASL 2.0 -# github.com/smallstep/truststore ASL 2.0 -# github.com/tailscale/tscert BSD -# github.com/yuin/goldmark MIT -# github.com/yuin/goldmark-highlighting MIT -# go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp ASL 2.0 -# go.opentelemetry.io/otel ASL 2.0 -# go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc ASL 2.0 -# go.opentelemetry.io/otel/sdk ASL 2.0 -# go.uber.org/zap MIT -# golang.org/x/crypto BSD -# golang.org/x/net BSD -# golang.org/x/term BSD -# google.golang.org/genproto ASL 2.0 -# google.golang.org/protobuf BSD -# gopkg.in/natefinch/lumberjack.v2 MIT -# gopkg.in/yaml.v3 ASL 2.0 and MIT -License: ASL 2.0 and MIT and BSD +# main source code is Apache-2.0 +# see comments above provides tags for bundled license breakdown +License: Apache-2.0 AND (Apache-2.0 AND BSD-2-Clause) AND (Apache-2.0 AND BSD-3-Clause) AND (Apache-2.0 AND MIT) AND BSD-2-Clause AND (BSD-2-Clause-Views AND BSD-3-Clause) AND BSD-3-Clause AND (BSD-3-Clause AND Apache-2.0 AND MIT) AND ISC AND MIT AND (MIT AND Apache-2.0) AND (MIT AND CC0-1.0) AND MPL-2.0 URL: https://caddyserver.com # see create-vendor-tarball.sh in this distgit repo @@ -66,42 +34,285 @@ Source41: zsh-completion # downstream only patch to disable commands that can alter the binary Patch: 0001-Disable-commands-that-can-alter-the-binary.patch -# https://github.com/caddyserver/caddy/commit/b4f1a713978f44b6f26721bd4eaa355164e3e6f4 -BuildRequires: golang >= 1.17 +# https://github.com/caddyserver/caddy/commit/8cb1bb4af30b880f981b1ae6fdb13e5944bfaefe +BuildRequires: golang >= 1.19 -Provides: bundled(golang(github.com/BurntSushi/toml)) = 1.1.0 -Provides: bundled(golang(github.com/Masterminds/sprig/v3)) = 3.2.2 -Provides: bundled(golang(github.com/alecthomas/chroma)) = 0.10.0 -Provides: bundled(golang(github.com/aryann/difflib)) -Provides: bundled(golang(github.com/caddyserver/certmagic)) = 0.16.1 -Provides: bundled(golang(github.com/dustin/go-humanize)) -Provides: bundled(golang(github.com/go-chi/chi)) = 4.1.2 -Provides: bundled(golang(github.com/google/cel-go)) = 0.11.4 +# BSD-3-Clause +Provides: bundled(golang(filippo.io/edwards25519)) = 1.0.0 +# MIT AND CC0-1.0 +Provides: bundled(golang(github.com/AndreasBriese/bbloom)) = 46b345b +# MIT +Provides: bundled(golang(github.com/BurntSushi/toml)) = 1.3.2 +# Apache-2.0 +Provides: bundled(golang(github.com/Masterminds/goutils)) = 1.1.1 +# MIT +Provides: bundled(golang(github.com/Masterminds/semver/v3)) = 3.2.0 +# MIT +Provides: bundled(golang(github.com/Masterminds/sprig/v3)) = 3.2.3 +# MIT +Provides: bundled(golang(github.com/Microsoft/go-winio)) = 0.6.0 +# MIT +Provides: bundled(golang(github.com/alecthomas/chroma/v2)) = 2.7.0 +# BSD-3-Clause +Provides: bundled(golang(github.com/antlr/antlr4/runtime/Go/antlr/v4)) = 8188dc5 +# MIT +Provides: bundled(golang(github.com/aryann/difflib)) = ff5ff6d +# MIT +Provides: bundled(golang(github.com/beorn7/perks)) = 1.0.1 +# Apache-2.0 +Provides: bundled(golang(github.com/caddyserver/certmagic)) = 0.18.2 +# MIT +Provides: bundled(golang(github.com/cenkalti/backoff/v4)) = 4.2.1 +# MIT +Provides: bundled(golang(github.com/cespare/xxhash)) = 1.1.0 +# MIT +Provides: bundled(golang(github.com/cespare/xxhash/v2)) = 2.2.0 +# MIT +Provides: bundled(golang(github.com/chzyer/readline)) = 1.5.1 +# MIT +Provides: bundled(golang(github.com/cpuguy83/go-md2man/v2)) = 2.0.2 +# ISC +Provides: bundled(golang(github.com/davecgh/go-spew)) = 1.1.1 +# Apache-2.0 +Provides: bundled(golang(github.com/dgraph-io/badger)) = 1.6.2 +# Apache-2.0 +Provides: bundled(golang(github.com/dgraph-io/badger/v2)) = 2.2007.4 +# Apache-2.0 AND MIT +Provides: bundled(golang(github.com/dgraph-io/ristretto)) = 0.1.0 +# MIT +Provides: bundled(golang(github.com/dgryski/go-farm)) = a6ae236 +# MIT +Provides: bundled(golang(github.com/dlclark/regexp2)) = 1.7.0 +# MIT +Provides: bundled(golang(github.com/dustin/go-humanize)) = 1.0.1 +# MIT +Provides: bundled(golang(github.com/felixge/httpsnoop)) = 1.0.3 +# MIT +Provides: bundled(golang(github.com/fxamacker/cbor/v2)) = 2.4.0 +# MIT +Provides: bundled(golang(github.com/go-chi/chi)) = 4.1.2+incompatible +# MIT +Provides: bundled(golang(github.com/go-kit/kit)) = 0.10.0 +# MIT +Provides: bundled(golang(github.com/go-logfmt/logfmt)) = 0.5.1 +# Apache-2.0 +Provides: bundled(golang(github.com/go-logr/logr)) = 1.2.4 +# Apache-2.0 +Provides: bundled(golang(github.com/go-logr/stdr)) = 1.2.2 +# MPL-2.0 +Provides: bundled(golang(github.com/go-sql-driver/mysql)) = 1.7.0 +# MIT +Provides: bundled(golang(github.com/go-task/slim-sprig)) = 52ccab3 +# Apache-2.0 +Provides: bundled(golang(github.com/golang/glog)) = 1.1.0 +# Apache-2.0 +Provides: bundled(golang(github.com/golang/mock)) = 1.6.0 +# BSD-3-Clause +Provides: bundled(golang(github.com/golang/protobuf)) = 1.5.3 +# BSD-3-Clause +Provides: bundled(golang(github.com/golang/snappy)) = 0.0.4 +# Apache-2.0 +Provides: bundled(golang(github.com/google/cel-go)) = 0.15.1 +# Apache-2.0 +Provides: bundled(golang(github.com/google/certificate-transparency-go)) = 1.1.4 +# Apache-2.0 +Provides: bundled(golang(github.com/google/go-tpm)) = 0.3.3 +# Apache-2.0 +Provides: bundled(golang(github.com/google/go-tspi)) = 0.3.0 +# Apache-2.0 +Provides: bundled(golang(github.com/google/pprof)) = 4bb14d4 +# BSD-3-Clause Provides: bundled(golang(github.com/google/uuid)) = 1.3.0 -Provides: bundled(golang(github.com/klauspost/compress)) = 1.15.6 -Provides: bundled(golang(github.com/klauspost/cpuid/v2)) = 2.0.13 -Provides: bundled(golang(github.com/lucas-clemente/quic-go)) = 0.28.0 -Provides: bundled(golang(github.com/mholt/acmez)) = 1.0.2 -Provides: bundled(golang(github.com/prometheus/client_golang)) = 1.12.1 -Provides: bundled(golang(github.com/smallstep/certificates)) = 0.19.0 -Provides: bundled(golang(github.com/smallstep/cli)) = 0.18.0 -Provides: bundled(golang(github.com/smallstep/nosql)) = 0.4.0 -Provides: bundled(golang(github.com/smallstep/truststore)) = 0.11.0 -Provides: bundled(golang(github.com/tailscale/tscert)) -Provides: bundled(golang(github.com/yuin/goldmark)) = 1.4.12 -Provides: bundled(golang(github.com/yuin/goldmark-highlighting)) -Provides: bundled(golang(go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp)) = 0.29.0 -Provides: bundled(golang(go.opentelemetry.io/otel)) = 1.4.0 -Provides: bundled(golang(go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc)) = 1.4.0 -Provides: bundled(golang(go.opentelemetry.io/otel/sdk)) = 1.4.0 -Provides: bundled(golang(go.uber.org/zap)) = 1.21.0 -Provides: bundled(golang(golang.org/x/crypto)) -Provides: bundled(golang(golang.org/x/net)) -Provides: bundled(golang(golang.org/x/term)) -Provides: bundled(golang(google.golang.org/genproto)) -Provides: bundled(golang(google.golang.org/protobuf)) = 1.28.0 -Provides: bundled(golang(gopkg.in/natefinch/lumberjack.v2)) = 2.0.0 +# BSD-3-Clause +Provides: bundled(golang(github.com/grpc-ecosystem/grpc-gateway/v2)) = 2.7.0 +# MIT +Provides: bundled(golang(github.com/huandu/xstrings)) = 1.3.3 +# BSD-3-Clause +Provides: bundled(golang(github.com/imdario/mergo)) = 0.3.12 +# Apache-2.0 +Provides: bundled(golang(github.com/inconshreveable/mousetrap)) = 1.1.0 +# MIT +Provides: bundled(golang(github.com/jackc/chunkreader/v2)) = 2.0.1 +# MIT +Provides: bundled(golang(github.com/jackc/pgconn)) = 1.14.0 +# MIT +Provides: bundled(golang(github.com/jackc/pgio)) = 1.0.0 +# MIT +Provides: bundled(golang(github.com/jackc/pgpassfile)) = 1.0.0 +# MIT +Provides: bundled(golang(github.com/jackc/pgproto3/v2)) = 2.3.2 +# MIT +Provides: bundled(golang(github.com/jackc/pgservicefile)) = 091c0ba +# MIT +Provides: bundled(golang(github.com/jackc/pgtype)) = 1.14.0 +# MIT +Provides: bundled(golang(github.com/jackc/pgx/v4)) = 4.18.0 +# BSD-3-Clause AND Apache-2.0 AND MIT +Provides: bundled(golang(github.com/klauspost/compress)) = 1.16.6 +# MIT +Provides: bundled(golang(github.com/klauspost/cpuid/v2)) = 2.2.5 +# MIT +Provides: bundled(golang(github.com/libdns/libdns)) = 0.2.1 +# BSD-3-Clause +Provides: bundled(golang(github.com/manifoldco/promptui)) = 0.9.0 +# Apache-2.0 +Provides: bundled(golang(github.com/mastercactapus/proxyprotocol)) = 0.0.4 +# MIT +Provides: bundled(golang(github.com/mattn/go-colorable)) = 0.1.8 +# MIT +Provides: bundled(golang(github.com/mattn/go-isatty)) = 0.0.16 +# Apache-2.0 +Provides: bundled(golang(github.com/matttproud/golang_protobuf_extensions)) = 1.0.1 +# MIT +Provides: bundled(golang(github.com/mgutz/ansi)) = d51e80e +# Apache-2.0 +Provides: bundled(golang(github.com/mholt/acmez)) = 1.2.0 +# MIT +Provides: bundled(golang(github.com/micromdm/scep/v2)) = 2.1.0 +# BSD-3-Clause +Provides: bundled(golang(github.com/miekg/dns)) = 1.1.55 +# MIT +Provides: bundled(golang(github.com/mitchellh/copystructure)) = 1.2.0 +# MIT +Provides: bundled(golang(github.com/mitchellh/go-ps)) = 1.0.0 +# MIT +Provides: bundled(golang(github.com/mitchellh/reflectwalk)) = 1.0.2 +# MIT +Provides: bundled(golang(github.com/onsi/ginkgo/v2)) = 2.9.5 +# BSD-2-Clause +Provides: bundled(golang(github.com/pkg/errors)) = 0.9.1 +# BSD-3-Clause +Provides: bundled(golang(github.com/pmezard/go-difflib)) = 1.0.0 +# Apache-2.0 +Provides: bundled(golang(github.com/prometheus/client_golang)) = 1.14.0 +# Apache-2.0 +Provides: bundled(golang(github.com/prometheus/client_model)) = 0.3.0 +# Apache-2.0 +Provides: bundled(golang(github.com/prometheus/common)) = 0.37.0 +# Apache-2.0 +Provides: bundled(golang(github.com/prometheus/procfs)) = 0.8.0 +# MIT +Provides: bundled(golang(github.com/quic-go/qpack)) = 0.4.0 +# BSD-3-Clause +Provides: bundled(golang(github.com/quic-go/qtls-go1-20)) = 0.3.0 +# MIT +Provides: bundled(golang(github.com/quic-go/quic-go)) = 0.37.0 +# MIT +Provides: bundled(golang(github.com/rs/xid)) = 1.5.0 +# BSD-2-Clause +Provides: bundled(golang(github.com/russross/blackfriday/v2)) = 2.1.0 +# MIT +Provides: bundled(golang(github.com/shopspring/decimal)) = 1.2.0 +# MIT +Provides: bundled(golang(github.com/shurcooL/sanitized_anchor_name)) = 1.0.0 +# MIT +Provides: bundled(golang(github.com/sirupsen/logrus)) = 1.9.0 +# MIT +Provides: bundled(golang(github.com/slackhq/nebula)) = 1.6.1 +# Apache-2.0 +Provides: bundled(golang(github.com/smallstep/certificates)) = 0.24.2 +# Apache-2.0 +Provides: bundled(golang(github.com/smallstep/go-attestation)) = e172914 +# Apache-2.0 +Provides: bundled(golang(github.com/smallstep/nosql)) = 0.6.0 +# Apache-2.0 +Provides: bundled(golang(github.com/smallstep/truststore)) = 0.12.1 +# MIT +Provides: bundled(golang(github.com/spf13/cast)) = 1.4.1 +# Apache-2.0 +Provides: bundled(golang(github.com/spf13/cobra)) = 1.7.0 +# BSD-3-Clause +Provides: bundled(golang(github.com/spf13/pflag)) = 1.0.5 +# MIT +Provides: bundled(golang(github.com/stoewer/go-strcase)) = 1.2.0 +# MIT +Provides: bundled(golang(github.com/stretchr/testify)) = 1.8.3 +# BSD-3-Clause +Provides: bundled(golang(github.com/tailscale/tscert)) = 4e9cb4f +# MIT +Provides: bundled(golang(github.com/urfave/cli)) = 1.22.13 +# MIT +Provides: bundled(golang(github.com/x448/float16)) = 0.8.4 +# MIT +Provides: bundled(golang(github.com/yuin/goldmark)) = 1.5.4 +# MIT +Provides: bundled(golang(github.com/yuin/goldmark-highlighting/v2)) = 1513624 +# MIT +Provides: bundled(golang(go.etcd.io/bbolt)) = 1.3.7 +# MIT +Provides: bundled(golang(go.mozilla.org/pkcs7)) = 33d0574 +# Apache-2.0 +Provides: bundled(golang(go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp)) = 0.42.0 +# Apache-2.0 +Provides: bundled(golang(go.opentelemetry.io/contrib/propagators/autoprop)) = 0.42.0 +# Apache-2.0 +Provides: bundled(golang(go.opentelemetry.io/contrib/propagators/aws)) = 1.17.0 +# Apache-2.0 +Provides: bundled(golang(go.opentelemetry.io/contrib/propagators/b3)) = 1.17.0 +# Apache-2.0 +Provides: bundled(golang(go.opentelemetry.io/contrib/propagators/jaeger)) = 1.17.0 +# Apache-2.0 +Provides: bundled(golang(go.opentelemetry.io/contrib/propagators/ot)) = 1.17.0 +# Apache-2.0 +Provides: bundled(golang(go.opentelemetry.io/otel)) = 1.16.0 +# Apache-2.0 +Provides: bundled(golang(go.opentelemetry.io/otel/exporters/otlp/internal/retry)) = 1.16.0 +# Apache-2.0 +Provides: bundled(golang(go.opentelemetry.io/otel/exporters/otlp/otlptrace)) = 1.16.0 +# Apache-2.0 +Provides: bundled(golang(go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc)) = 1.16.0 +# Apache-2.0 +Provides: bundled(golang(go.opentelemetry.io/otel/metric)) = 1.16.0 +# Apache-2.0 +Provides: bundled(golang(go.opentelemetry.io/otel/sdk)) = 1.16.0 +# Apache-2.0 +Provides: bundled(golang(go.opentelemetry.io/otel/trace)) = 1.16.0 +# Apache-2.0 +Provides: bundled(golang(go.opentelemetry.io/proto/otlp)) = 0.19.0 +# Apache-2.0 AND BSD-2-Clause +Provides: bundled(golang(go.step.sm/cli-utils)) = 0.7.6 +# Apache-2.0 AND BSD-2-Clause +Provides: bundled(golang(go.step.sm/crypto)) = 0.30.0 +# Apache-2.0 +Provides: bundled(golang(go.step.sm/linkedca)) = 0.19.1 +# MIT +Provides: bundled(golang(go.uber.org/atomic)) = 1.11.0 +# MIT +Provides: bundled(golang(go.uber.org/multierr)) = 1.11.0 +# MIT +Provides: bundled(golang(go.uber.org/zap)) = 1.24.0 +# BSD-3-Clause +Provides: bundled(golang(golang.org/x/crypto)) = 0.10.0 +# BSD-3-Clause +Provides: bundled(golang(golang.org/x/exp)) = 522b1b5 +# BSD-3-Clause +Provides: bundled(golang(golang.org/x/mod)) = 0.11.0 +# BSD-3-Clause +Provides: bundled(golang(golang.org/x/net)) = 0.11.0 +# BSD-3-Clause +Provides: bundled(golang(golang.org/x/sync)) = 0.3.0 +# BSD-3-Clause +Provides: bundled(golang(golang.org/x/sys)) = 0.9.0 +# BSD-3-Clause +Provides: bundled(golang(golang.org/x/term)) = 0.9.0 +# BSD-3-Clause +Provides: bundled(golang(golang.org/x/text)) = 0.10.0 +# BSD-3-Clause +Provides: bundled(golang(golang.org/x/tools)) = 0.10.0 +# Apache-2.0 +Provides: bundled(golang(google.golang.org/genproto)) = daa745c +# Apache-2.0 +Provides: bundled(golang(google.golang.org/grpc)) = 1.55.0 +# BSD-3-Clause +Provides: bundled(golang(google.golang.org/protobuf)) = 1.30.0 +# MIT +Provides: bundled(golang(gopkg.in/natefinch/lumberjack.v2)) = 2.2.1 +# Apache-2.0 AND BSD-3-Clause +Provides: bundled(golang(gopkg.in/square/go-jose.v2)) = 2.6.0 +# MIT AND Apache-2.0 Provides: bundled(golang(gopkg.in/yaml.v3)) = 3.0.1 +# BSD-2-Clause-Views AND BSD-3-Clause +Provides: bundled(golang(howett.net/plist)) = 1.0.0 BuildRequires: systemd-rpm-macros %{?systemd_requires} @@ -236,6 +447,11 @@ fi %changelog +* Thu Jul 27 2023 Carl George - 2.7.0~beta2-1 +- Update to version 2.7.0~beta2, resolves rhbz#2225732 rhbz#2124366 +- Resolves CVE-2022-41717 rhbz#2164315 +- Resolves CVE-2022-41723 rhbz#2178412 + * Wed Jul 19 2023 Fedora Release Engineering - 2.5.2-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild diff --git a/create-vendor-tarball.sh b/create-vendor-tarball.sh index 80f8fe9..cf2a545 100755 --- a/create-vendor-tarball.sh +++ b/create-vendor-tarball.sh @@ -1,15 +1,38 @@ #!/usr/bin/bash -version=$1 +tag=$1 -if [[ -z ${version} ]]; then - echo "This script requires the version as an argument." +if [[ -z $tag ]]; then + echo "This script requires the tag as an argument." exit 1 fi -git clone --branch v${version} --depth 1 https://github.com/caddyserver/caddy.git caddy-${version} -pushd caddy-${version} -go mod vendor +set -euo pipefail + +# transform tag into version +case $tag in + *beta*) + # v2.0.0-beta.1 -> 2.0.0~beta1 + temp=${tag#v} + version=${temp/-beta./~beta} + ;; + *rc*) + # v2.0.0-rc.1 -> 2.0.0~rc1 + temp=${tag#v} + version=${temp/-rc./~rc} + ;; + *) + # v2.0.0 -> 2.0.0 + version=${tag#v} + ;; +esac + +echo "Using tag: $tag" +echo "Using version: $version" + +git -c advice.detachedHead=false clone --branch $tag --depth 1 https://github.com/caddyserver/caddy.git caddy-$version +pushd caddy-$version +GOPROXY='https://proxy.golang.org,direct' go mod vendor popd -tar --exclude .git -czf caddy-${version}-vendored.tar.gz caddy-${version} -rm -r caddy-${version} +tar --exclude .git -czf caddy-$version-vendored.tar.gz caddy-$version +rm -r caddy-$version diff --git a/sources b/sources index 66015b6..c993eda 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (caddy-2.5.2-vendored.tar.gz) = 2b7eb72552c8ae3d5ba4240bf3593fa9374d3863ee93c4f3718f57781987548f0f163458396c18d93d72d8dd81d5ab7e66ccf65cd4ea97c76948bad174e2ba3a +SHA512 (caddy-2.7.0~beta2-vendored.tar.gz) = ec3c002668207c4271dba99ef0fd22f12140eda2dff3e02870195a6298d772df908886d2395f3d340f6acb1ef2f08a097671c735572b2e4b676331f78b439c6c From c3cfc98c595e1bbde61c24a1076350b6c4a0c6d6 Mon Sep 17 00:00:00 2001 From: Carl George Date: Wed, 26 Jul 2023 23:42:32 -0500 Subject: [PATCH 46/79] Add man pages --- caddy.spec | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/caddy.spec b/caddy.spec index 17667ff..5bf0393 100644 --- a/caddy.spec +++ b/caddy.spec @@ -338,6 +338,9 @@ sed -e '/mod.Version/ s/unknown/%{version}-%{release}/' -i caddy.go # command install -D -p -m 0755 %{gobuilddir}/bin/caddy %{buildroot}%{_bindir}/caddy +# man pages +%{gobuilddir}/bin/caddy manpage --directory %{buildroot}%{_mandir}/man8 + # config install -D -p -m 0644 %{S:10} %{buildroot}%{_sysconfdir}/caddy/Caddyfile install -d -m 0755 %{buildroot}%{_sysconfdir}/caddy/Caddyfile.d @@ -431,6 +434,7 @@ fi %license LICENSE %doc README.md AUTHORS %{_bindir}/caddy +%{_mandir}/man8/caddy*.8* %{_datadir}/caddy %{_unitdir}/caddy.service %{_unitdir}/caddy-api.service @@ -451,6 +455,7 @@ fi - Update to version 2.7.0~beta2, resolves rhbz#2225732 rhbz#2124366 - Resolves CVE-2022-41717 rhbz#2164315 - Resolves CVE-2022-41723 rhbz#2178412 +- Add man pages * Wed Jul 19 2023 Fedora Release Engineering - 2.5.2-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild From 5fe3d74336e7d270a0684f146ac738e3b50b8e2f Mon Sep 17 00:00:00 2001 From: Carl George Date: Wed, 26 Jul 2023 23:49:45 -0500 Subject: [PATCH 47/79] Use generated shell completion files instead of static ones and add fish shell completions --- bash-completion | 1210 ----------------------------------------------- caddy.spec | 19 +- zsh-completion | 166 ------- 3 files changed, 10 insertions(+), 1385 deletions(-) delete mode 100644 bash-completion delete mode 100644 zsh-completion diff --git a/bash-completion b/bash-completion deleted file mode 100644 index 1da7f36..0000000 --- a/bash-completion +++ /dev/null @@ -1,1210 +0,0 @@ -#!/usr/bin/env bash - -# helper method -declare -f _contains_element > /dev/null || _contains_element() { - local e match="$1" - shift - for e; do [[ "$e" == "$match" ]] && return 0; done - return 1 -} - -_caddy_completions() -{ - # get current word, words array, current word index, and previous word, ignoring ":" as a wordbreak - local cur cword words - _get_comp_words_by_ref -n ":" cur words cword prev - - # complete subcommands list - if [ "$cword" -eq "1" ] && [ "adapt build-info environ file-server fmt hash-password help list-modules reload reverse-proxy run start stop trust untrust validate version" != "" ]; then - COMPREPLY=($(compgen -W "adapt build-info environ file-server fmt hash-password help list-modules reload reverse-proxy run start stop trust untrust validate version" -- "$cur")) - __ltrim_colon_completions "$cur" - return - fi - - local subcommand="${words[1]}" - - local args used_flags used_args index - - # register completions for each subcommand - if [ "${subcommand}" == "adapt" ]; then - local args_shift=2 - # get the list of already used flags and args, ignoring the current word - args=("${words[@]:args_shift}") # args without command and subcommand - used_flags=() - used_args=() - index=0 - - while [ "${#args[@]}" -gt 0 ]; do - if [ "${index}" -eq "$((cword-args_shift))" ]; then - # ignore current word - args=("${args[@]:1}") - index=$((index+1)) - continue - fi - - if [ "${args[0]}" == "--pretty" ]; then - used_flags+=("${args[0]}") - args=("${args[@]:1}") - index=$((index+1)) - continue - fi - if [ "${args[0]}" == "--validate" ]; then - used_flags+=("${args[0]}") - args=("${args[@]:1}") - index=$((index+1)) - continue - fi - - if [ "${args[0]}" == "--adapter" ]; then - used_flags+=("${args[0]}") - args=("${args[@]:2}") - index=$((index+2)) - continue - fi - if [ "${args[0]}" == "--config" ]; then - used_flags+=("${args[0]}") - args=("${args[@]:2}") - index=$((index+2)) - continue - fi - - if [[ "${args[0]}" != "-"* ]]; then - used_args+=("${args[0]}") - fi - args=("${args[@]:1}") - index=$((index+1)) - done - - if [[ "$prev" == "--adapter" ]]; then - COMPREPLY=() - if command -v grep > /dev/null && command -v sed > /dev/null && command -v tr > /dev/null; then - COMPREPLY=($(compgen -W "$(caddy list-modules | grep adapters | sed s/caddy.adapters.// | tr ' -' ' ')" -- "$cur")) - fi - return - fi - if [[ "$prev" == "--config" ]]; then - COMPREPLY=() - COMPREPLY=($(compgen -f -- "$cur")) - return - fi - - if [[ $cur == -* ]]; then - # flags - completion=() - - if [[ $cur != --* ]]; then - true - fi - - if ! _contains_element "--pretty" "${used_flags[@]}"; then - completion+=("--pretty") - fi - if ! _contains_element "--validate" "${used_flags[@]}"; then - completion+=("--validate") - fi - if ! _contains_element "--adapter" "${used_flags[@]}"; then - completion+=("--adapter") - fi - if ! _contains_element "--config" "${used_flags[@]}"; then - completion+=("--config") - fi - - COMPREPLY=($(compgen -W "${completion[*]}" -- "$cur")) - return - fi - - - return - fi - if [ "${subcommand}" == "build-info" ]; then - local args_shift=2 - # get the list of already used flags and args, ignoring the current word - args=("${words[@]:args_shift}") # args without command and subcommand - used_flags=() - used_args=() - index=0 - - while [ "${#args[@]}" -gt 0 ]; do - if [ "${index}" -eq "$((cword-args_shift))" ]; then - # ignore current word - args=("${args[@]:1}") - index=$((index+1)) - continue - fi - - - - if [[ "${args[0]}" != "-"* ]]; then - used_args+=("${args[0]}") - fi - args=("${args[@]:1}") - index=$((index+1)) - done - - - if [[ $cur == -* ]]; then - # flags - completion=() - - if [[ $cur != --* ]]; then - true - fi - - - COMPREPLY=($(compgen -W "${completion[*]}" -- "$cur")) - return - fi - - - return - fi - if [ "${subcommand}" == "environ" ]; then - local args_shift=2 - # get the list of already used flags and args, ignoring the current word - args=("${words[@]:args_shift}") # args without command and subcommand - used_flags=() - used_args=() - index=0 - - while [ "${#args[@]}" -gt 0 ]; do - if [ "${index}" -eq "$((cword-args_shift))" ]; then - # ignore current word - args=("${args[@]:1}") - index=$((index+1)) - continue - fi - - - - if [[ "${args[0]}" != "-"* ]]; then - used_args+=("${args[0]}") - fi - args=("${args[@]:1}") - index=$((index+1)) - done - - - if [[ $cur == -* ]]; then - # flags - completion=() - - if [[ $cur != --* ]]; then - true - fi - - - COMPREPLY=($(compgen -W "${completion[*]}" -- "$cur")) - return - fi - - - return - fi - if [ "${subcommand}" == "file-server" ]; then - local args_shift=2 - # get the list of already used flags and args, ignoring the current word - args=("${words[@]:args_shift}") # args without command and subcommand - used_flags=() - used_args=() - index=0 - - while [ "${#args[@]}" -gt 0 ]; do - if [ "${index}" -eq "$((cword-args_shift))" ]; then - # ignore current word - args=("${args[@]:1}") - index=$((index+1)) - continue - fi - - if [ "${args[0]}" == "--browse" ]; then - used_flags+=("${args[0]}") - args=("${args[@]:1}") - index=$((index+1)) - continue - fi - if [ "${args[0]}" == "--templates" ]; then - used_flags+=("${args[0]}") - args=("${args[@]:1}") - index=$((index+1)) - continue - fi - - if [ "${args[0]}" == "--domain" ]; then - used_flags+=("${args[0]}") - args=("${args[@]:2}") - index=$((index+2)) - continue - fi - if [ "${args[0]}" == "--listen" ]; then - used_flags+=("${args[0]}") - args=("${args[@]:2}") - index=$((index+2)) - continue - fi - if [ "${args[0]}" == "--root" ]; then - used_flags+=("${args[0]}") - args=("${args[@]:2}") - index=$((index+2)) - continue - fi - - if [[ "${args[0]}" != "-"* ]]; then - used_args+=("${args[0]}") - fi - args=("${args[@]:1}") - index=$((index+1)) - done - - if [[ "$prev" == "--domain" ]]; then - COMPREPLY=() - return - fi - if [[ "$prev" == "--listen" ]]; then - COMPREPLY=() - return - fi - if [[ "$prev" == "--root" ]]; then - COMPREPLY=() - COMPREPLY=($(compgen -d -- "$cur")) - return - fi - - if [[ $cur == -* ]]; then - # flags - completion=() - - if [[ $cur != --* ]]; then - true - fi - - if ! _contains_element "--browse" "${used_flags[@]}"; then - completion+=("--browse") - fi - if ! _contains_element "--templates" "${used_flags[@]}"; then - completion+=("--templates") - fi - if ! _contains_element "--domain" "${used_flags[@]}"; then - completion+=("--domain") - fi - if ! _contains_element "--listen" "${used_flags[@]}"; then - completion+=("--listen") - fi - if ! _contains_element "--root" "${used_flags[@]}"; then - completion+=("--root") - fi - - COMPREPLY=($(compgen -W "${completion[*]}" -- "$cur")) - return - fi - - - return - fi - if [ "${subcommand}" == "fmt" ]; then - local args_shift=2 - # get the list of already used flags and args, ignoring the current word - args=("${words[@]:args_shift}") # args without command and subcommand - used_flags=() - used_args=() - index=0 - - while [ "${#args[@]}" -gt 0 ]; do - if [ "${index}" -eq "$((cword-args_shift))" ]; then - # ignore current word - args=("${args[@]:1}") - index=$((index+1)) - continue - fi - - if [ "${args[0]}" == "--overwrite" ]; then - used_flags+=("${args[0]}") - args=("${args[@]:1}") - index=$((index+1)) - continue - fi - - - if [[ "${args[0]}" != "-"* ]]; then - used_args+=("${args[0]}") - fi - args=("${args[@]:1}") - index=$((index+1)) - done - - - if [[ $cur == -* ]]; then - # flags - completion=() - - if [[ $cur != --* ]]; then - true - fi - - if ! _contains_element "--overwrite" "${used_flags[@]}"; then - completion+=("--overwrite") - fi - - COMPREPLY=($(compgen -W "${completion[*]}" -- "$cur")) - return - fi - - if [[ "${#used_args[@]}" -eq "0" ]]; then - COMPREPLY=() - COMPREPLY=($(compgen -f -- "$cur")) - return - fi - - return - fi - if [ "${subcommand}" == "hash-password" ]; then - local args_shift=2 - # get the list of already used flags and args, ignoring the current word - args=("${words[@]:args_shift}") # args without command and subcommand - used_flags=() - used_args=() - index=0 - - while [ "${#args[@]}" -gt 0 ]; do - if [ "${index}" -eq "$((cword-args_shift))" ]; then - # ignore current word - args=("${args[@]:1}") - index=$((index+1)) - continue - fi - - - if [ "${args[0]}" == "--algorithm" ]; then - used_flags+=("${args[0]}") - args=("${args[@]:2}") - index=$((index+2)) - continue - fi - if [ "${args[0]}" == "--plaintext" ]; then - used_flags+=("${args[0]}") - args=("${args[@]:2}") - index=$((index+2)) - continue - fi - if [ "${args[0]}" == "--salt" ]; then - used_flags+=("${args[0]}") - args=("${args[@]:2}") - index=$((index+2)) - continue - fi - - if [[ "${args[0]}" != "-"* ]]; then - used_args+=("${args[0]}") - fi - args=("${args[@]:1}") - index=$((index+1)) - done - - if [[ "$prev" == "--algorithm" ]]; then - COMPREPLY=() - return - fi - if [[ "$prev" == "--plaintext" ]]; then - COMPREPLY=() - return - fi - if [[ "$prev" == "--salt" ]]; then - COMPREPLY=() - return - fi - - if [[ $cur == -* ]]; then - # flags - completion=() - - if [[ $cur != --* ]]; then - true - fi - - if ! _contains_element "--algorithm" "${used_flags[@]}"; then - completion+=("--algorithm") - fi - if ! _contains_element "--plaintext" "${used_flags[@]}"; then - completion+=("--plaintext") - fi - if ! _contains_element "--salt" "${used_flags[@]}"; then - completion+=("--salt") - fi - - COMPREPLY=($(compgen -W "${completion[*]}" -- "$cur")) - return - fi - - - return - fi - if [ "${subcommand}" == "help" ]; then - local args_shift=2 - # get the list of already used flags and args, ignoring the current word - args=("${words[@]:args_shift}") # args without command and subcommand - used_flags=() - used_args=() - index=0 - - while [ "${#args[@]}" -gt 0 ]; do - if [ "${index}" -eq "$((cword-args_shift))" ]; then - # ignore current word - args=("${args[@]:1}") - index=$((index+1)) - continue - fi - - - - if [[ "${args[0]}" != "-"* ]]; then - used_args+=("${args[0]}") - fi - args=("${args[@]:1}") - index=$((index+1)) - done - - - if [[ $cur == -* ]]; then - # flags - completion=() - - if [[ $cur != --* ]]; then - true - fi - - - COMPREPLY=($(compgen -W "${completion[*]}" -- "$cur")) - return - fi - - if [[ "${#used_args[@]}" -eq "0" ]]; then - COMPREPLY=() - COMPREPLY=($(compgen -W "adapt build-info environ file-server fmt hash-password help list-modules reload reverse-proxy run stop trust untrust validate" -- "$cur")) - return - fi - - return - fi - if [ "${subcommand}" == "list-modules" ]; then - local args_shift=2 - # get the list of already used flags and args, ignoring the current word - args=("${words[@]:args_shift}") # args without command and subcommand - used_flags=() - used_args=() - index=0 - - while [ "${#args[@]}" -gt 0 ]; do - if [ "${index}" -eq "$((cword-args_shift))" ]; then - # ignore current word - args=("${args[@]:1}") - index=$((index+1)) - continue - fi - - if [ "${args[0]}" == "--versions" ]; then - used_flags+=("${args[0]}") - args=("${args[@]:1}") - index=$((index+1)) - continue - fi - - - if [[ "${args[0]}" != "-"* ]]; then - used_args+=("${args[0]}") - fi - args=("${args[@]:1}") - index=$((index+1)) - done - - - if [[ $cur == -* ]]; then - # flags - completion=() - - if [[ $cur != --* ]]; then - true - fi - - if ! _contains_element "--versions" "${used_flags[@]}"; then - completion+=("--versions") - fi - - COMPREPLY=($(compgen -W "${completion[*]}" -- "$cur")) - return - fi - - - return - fi - if [ "${subcommand}" == "reload" ]; then - local args_shift=2 - # get the list of already used flags and args, ignoring the current word - args=("${words[@]:args_shift}") # args without command and subcommand - used_flags=() - used_args=() - index=0 - - while [ "${#args[@]}" -gt 0 ]; do - if [ "${index}" -eq "$((cword-args_shift))" ]; then - # ignore current word - args=("${args[@]:1}") - index=$((index+1)) - continue - fi - - - if [ "${args[0]}" == "--adapter" ]; then - used_flags+=("${args[0]}") - args=("${args[@]:2}") - index=$((index+2)) - continue - fi - if [ "${args[0]}" == "--config" ]; then - used_flags+=("${args[0]}") - args=("${args[@]:2}") - index=$((index+2)) - continue - fi - if [ "${args[0]}" == "--address" ]; then - used_flags+=("${args[0]}") - args=("${args[@]:2}") - index=$((index+2)) - continue - fi - - if [[ "${args[0]}" != "-"* ]]; then - used_args+=("${args[0]}") - fi - args=("${args[@]:1}") - index=$((index+1)) - done - - if [[ "$prev" == "--adapter" ]]; then - COMPREPLY=() - if command -v grep > /dev/null && command -v sed > /dev/null && command -v tr > /dev/null; then - COMPREPLY=($(compgen -W "$(caddy list-modules | grep adapters | sed s/caddy.adapters.// | tr ' -' ' ')" -- "$cur")) - fi - return - fi - if [[ "$prev" == "--config" ]]; then - COMPREPLY=() - COMPREPLY=($(compgen -f -- "$cur")) - return - fi - if [[ "$prev" == "--address" ]]; then - COMPREPLY=() - return - fi - - if [[ $cur == -* ]]; then - # flags - completion=() - - if [[ $cur != --* ]]; then - true - fi - - if ! _contains_element "--adapter" "${used_flags[@]}"; then - completion+=("--adapter") - fi - if ! _contains_element "--config" "${used_flags[@]}"; then - completion+=("--config") - fi - if ! _contains_element "--address" "${used_flags[@]}"; then - completion+=("--address") - fi - - COMPREPLY=($(compgen -W "${completion[*]}" -- "$cur")) - return - fi - - - return - fi - if [ "${subcommand}" == "reverse-proxy" ]; then - local args_shift=2 - # get the list of already used flags and args, ignoring the current word - args=("${words[@]:args_shift}") # args without command and subcommand - used_flags=() - used_args=() - index=0 - - while [ "${#args[@]}" -gt 0 ]; do - if [ "${index}" -eq "$((cword-args_shift))" ]; then - # ignore current word - args=("${args[@]:1}") - index=$((index+1)) - continue - fi - - if [ "${args[0]}" == "--change-host-header" ]; then - used_flags+=("${args[0]}") - args=("${args[@]:1}") - index=$((index+1)) - continue - fi - - if [ "${args[0]}" == "--from" ]; then - used_flags+=("${args[0]}") - args=("${args[@]:2}") - index=$((index+2)) - continue - fi - if [ "${args[0]}" == "--to" ]; then - used_flags+=("${args[0]}") - args=("${args[@]:2}") - index=$((index+2)) - continue - fi - - if [[ "${args[0]}" != "-"* ]]; then - used_args+=("${args[0]}") - fi - args=("${args[@]:1}") - index=$((index+1)) - done - - if [[ "$prev" == "--from" ]]; then - COMPREPLY=() - return - fi - if [[ "$prev" == "--to" ]]; then - COMPREPLY=() - return - fi - - if [[ $cur == -* ]]; then - # flags - completion=() - - if [[ $cur != --* ]]; then - true - fi - - if ! _contains_element "--change-host-header" "${used_flags[@]}"; then - completion+=("--change-host-header") - fi - if ! _contains_element "--from" "${used_flags[@]}"; then - completion+=("--from") - fi - if ! _contains_element "--to" "${used_flags[@]}"; then - completion+=("--to") - fi - - COMPREPLY=($(compgen -W "${completion[*]}" -- "$cur")) - return - fi - - - return - fi - if [ "${subcommand}" == "run" ]; then - local args_shift=2 - # get the list of already used flags and args, ignoring the current word - args=("${words[@]:args_shift}") # args without command and subcommand - used_flags=() - used_args=() - index=0 - - while [ "${#args[@]}" -gt 0 ]; do - if [ "${index}" -eq "$((cword-args_shift))" ]; then - # ignore current word - args=("${args[@]:1}") - index=$((index+1)) - continue - fi - - if [ "${args[0]}" == "--environ" ]; then - used_flags+=("${args[0]}") - args=("${args[@]:1}") - index=$((index+1)) - continue - fi - if [ "${args[0]}" == "--resume" ]; then - used_flags+=("${args[0]}") - args=("${args[@]:1}") - index=$((index+1)) - continue - fi - if [ "${args[0]}" == "--watch" ]; then - used_flags+=("${args[0]}") - args=("${args[@]:1}") - index=$((index+1)) - continue - fi - - if [ "${args[0]}" == "--adapter" ]; then - used_flags+=("${args[0]}") - args=("${args[@]:2}") - index=$((index+2)) - continue - fi - if [ "${args[0]}" == "--config" ]; then - used_flags+=("${args[0]}") - args=("${args[@]:2}") - index=$((index+2)) - continue - fi - if [ "${args[0]}" == "--pingback" ]; then - used_flags+=("${args[0]}") - args=("${args[@]:2}") - index=$((index+2)) - continue - fi - if [ "${args[0]}" == "--pidfile" ]; then - used_flags+=("${args[0]}") - args=("${args[@]:2}") - index=$((index+2)) - continue - fi - - if [[ "${args[0]}" != "-"* ]]; then - used_args+=("${args[0]}") - fi - args=("${args[@]:1}") - index=$((index+1)) - done - - if [[ "$prev" == "--adapter" ]]; then - COMPREPLY=() - if command -v grep > /dev/null && command -v sed > /dev/null && command -v tr > /dev/null; then - COMPREPLY=($(compgen -W "$(caddy list-modules | grep adapters | sed s/caddy.adapters.// | tr ' -' ' ')" -- "$cur")) - fi - return - fi - if [[ "$prev" == "--config" ]]; then - COMPREPLY=() - COMPREPLY=($(compgen -f -- "$cur")) - return - fi - if [[ "$prev" == "--pingback" ]]; then - COMPREPLY=() - return - fi - if [[ "$prev" == "--pidfile" ]]; then - COMPREPLY=() - COMPREPLY=($(compgen -f -- "$cur")) - return - fi - - if [[ $cur == -* ]]; then - # flags - completion=() - - if [[ $cur != --* ]]; then - true - fi - - if ! _contains_element "--environ" "${used_flags[@]}"; then - completion+=("--environ") - fi - if ! _contains_element "--resume" "${used_flags[@]}"; then - completion+=("--resume") - fi - if ! _contains_element "--watch" "${used_flags[@]}"; then - completion+=("--watch") - fi - if ! _contains_element "--adapter" "${used_flags[@]}"; then - completion+=("--adapter") - fi - if ! _contains_element "--config" "${used_flags[@]}"; then - completion+=("--config") - fi - if ! _contains_element "--pingback" "${used_flags[@]}"; then - completion+=("--pingback") - fi - if ! _contains_element "--pidfile" "${used_flags[@]}"; then - completion+=("--pidfile") - fi - - COMPREPLY=($(compgen -W "${completion[*]}" -- "$cur")) - return - fi - - - return - fi - if [ "${subcommand}" == "start" ]; then - local args_shift=2 - # get the list of already used flags and args, ignoring the current word - args=("${words[@]:args_shift}") # args without command and subcommand - used_flags=() - used_args=() - index=0 - - while [ "${#args[@]}" -gt 0 ]; do - if [ "${index}" -eq "$((cword-args_shift))" ]; then - # ignore current word - args=("${args[@]:1}") - index=$((index+1)) - continue - fi - - if [ "${args[0]}" == "--watch" ]; then - used_flags+=("${args[0]}") - args=("${args[@]:1}") - index=$((index+1)) - continue - fi - - if [ "${args[0]}" == "--adapter" ]; then - used_flags+=("${args[0]}") - args=("${args[@]:2}") - index=$((index+2)) - continue - fi - if [ "${args[0]}" == "--config" ]; then - used_flags+=("${args[0]}") - args=("${args[@]:2}") - index=$((index+2)) - continue - fi - if [ "${args[0]}" == "--pidfile" ]; then - used_flags+=("${args[0]}") - args=("${args[@]:2}") - index=$((index+2)) - continue - fi - - if [[ "${args[0]}" != "-"* ]]; then - used_args+=("${args[0]}") - fi - args=("${args[@]:1}") - index=$((index+1)) - done - - if [[ "$prev" == "--adapter" ]]; then - COMPREPLY=() - if command -v grep > /dev/null && command -v sed > /dev/null && command -v tr > /dev/null; then - COMPREPLY=($(compgen -W "$(caddy list-modules | grep adapters | sed s/caddy.adapters.// | tr ' -' ' ')" -- "$cur")) - fi - return - fi - if [[ "$prev" == "--config" ]]; then - COMPREPLY=() - COMPREPLY=($(compgen -f -- "$cur")) - return - fi - if [[ "$prev" == "--pidfile" ]]; then - COMPREPLY=() - COMPREPLY=($(compgen -f -- "$cur")) - return - fi - - if [[ $cur == -* ]]; then - # flags - completion=() - - if [[ $cur != --* ]]; then - true - fi - - if ! _contains_element "--watch" "${used_flags[@]}"; then - completion+=("--watch") - fi - if ! _contains_element "--adapter" "${used_flags[@]}"; then - completion+=("--adapter") - fi - if ! _contains_element "--config" "${used_flags[@]}"; then - completion+=("--config") - fi - if ! _contains_element "--pidfile" "${used_flags[@]}"; then - completion+=("--pidfile") - fi - - COMPREPLY=($(compgen -W "${completion[*]}" -- "$cur")) - return - fi - - - return - fi - if [ "${subcommand}" == "stop" ]; then - local args_shift=2 - # get the list of already used flags and args, ignoring the current word - args=("${words[@]:args_shift}") # args without command and subcommand - used_flags=() - used_args=() - index=0 - - while [ "${#args[@]}" -gt 0 ]; do - if [ "${index}" -eq "$((cword-args_shift))" ]; then - # ignore current word - args=("${args[@]:1}") - index=$((index+1)) - continue - fi - - - if [ "${args[0]}" == "--address" ]; then - used_flags+=("${args[0]}") - args=("${args[@]:2}") - index=$((index+2)) - continue - fi - - if [[ "${args[0]}" != "-"* ]]; then - used_args+=("${args[0]}") - fi - args=("${args[@]:1}") - index=$((index+1)) - done - - if [[ "$prev" == "--address" ]]; then - COMPREPLY=() - return - fi - - if [[ $cur == -* ]]; then - # flags - completion=() - - if [[ $cur != --* ]]; then - true - fi - - if ! _contains_element "--address" "${used_flags[@]}"; then - completion+=("--address") - fi - - COMPREPLY=($(compgen -W "${completion[*]}" -- "$cur")) - return - fi - - - return - fi - if [ "${subcommand}" == "trust" ]; then - local args_shift=2 - # get the list of already used flags and args, ignoring the current word - args=("${words[@]:args_shift}") # args without command and subcommand - used_flags=() - used_args=() - index=0 - - while [ "${#args[@]}" -gt 0 ]; do - if [ "${index}" -eq "$((cword-args_shift))" ]; then - # ignore current word - args=("${args[@]:1}") - index=$((index+1)) - continue - fi - - - - if [[ "${args[0]}" != "-"* ]]; then - used_args+=("${args[0]}") - fi - args=("${args[@]:1}") - index=$((index+1)) - done - - - if [[ $cur == -* ]]; then - # flags - completion=() - - if [[ $cur != --* ]]; then - true - fi - - - COMPREPLY=($(compgen -W "${completion[*]}" -- "$cur")) - return - fi - - - return - fi - if [ "${subcommand}" == "untrust" ]; then - local args_shift=2 - # get the list of already used flags and args, ignoring the current word - args=("${words[@]:args_shift}") # args without command and subcommand - used_flags=() - used_args=() - index=0 - - while [ "${#args[@]}" -gt 0 ]; do - if [ "${index}" -eq "$((cword-args_shift))" ]; then - # ignore current word - args=("${args[@]:1}") - index=$((index+1)) - continue - fi - - - if [ "${args[0]}" == "--ca" ]; then - used_flags+=("${args[0]}") - args=("${args[@]:2}") - index=$((index+2)) - continue - fi - if [ "${args[0]}" == "--cert" ]; then - used_flags+=("${args[0]}") - args=("${args[@]:2}") - index=$((index+2)) - continue - fi - - if [[ "${args[0]}" != "-"* ]]; then - used_args+=("${args[0]}") - fi - args=("${args[@]:1}") - index=$((index+1)) - done - - if [[ "$prev" == "--ca" ]]; then - COMPREPLY=() - return - fi - if [[ "$prev" == "--cert" ]]; then - COMPREPLY=() - COMPREPLY=($(compgen -f -- "$cur")) - return - fi - - if [[ $cur == -* ]]; then - # flags - completion=() - - if [[ $cur != --* ]]; then - true - fi - - if ! _contains_element "--ca" "${used_flags[@]}"; then - completion+=("--ca") - fi - if ! _contains_element "--cert" "${used_flags[@]}"; then - completion+=("--cert") - fi - - COMPREPLY=($(compgen -W "${completion[*]}" -- "$cur")) - return - fi - - - return - fi - if [ "${subcommand}" == "validate" ]; then - local args_shift=2 - # get the list of already used flags and args, ignoring the current word - args=("${words[@]:args_shift}") # args without command and subcommand - used_flags=() - used_args=() - index=0 - - while [ "${#args[@]}" -gt 0 ]; do - if [ "${index}" -eq "$((cword-args_shift))" ]; then - # ignore current word - args=("${args[@]:1}") - index=$((index+1)) - continue - fi - - - if [ "${args[0]}" == "--config" ]; then - used_flags+=("${args[0]}") - args=("${args[@]:2}") - index=$((index+2)) - continue - fi - if [ "${args[0]}" == "--adapter" ]; then - used_flags+=("${args[0]}") - args=("${args[@]:2}") - index=$((index+2)) - continue - fi - - if [[ "${args[0]}" != "-"* ]]; then - used_args+=("${args[0]}") - fi - args=("${args[@]:1}") - index=$((index+1)) - done - - if [[ "$prev" == "--config" ]]; then - COMPREPLY=() - COMPREPLY=($(compgen -f -- "$cur")) - return - fi - if [[ "$prev" == "--adapter" ]]; then - COMPREPLY=() - if command -v grep > /dev/null && command -v sed > /dev/null && command -v tr > /dev/null; then - COMPREPLY=($(compgen -W "$(caddy list-modules | grep adapters | sed s/caddy.adapters.// | tr ' -' ' ')" -- "$cur")) - fi - return - fi - - if [[ $cur == -* ]]; then - # flags - completion=() - - if [[ $cur != --* ]]; then - true - fi - - if ! _contains_element "--config" "${used_flags[@]}"; then - completion+=("--config") - fi - if ! _contains_element "--adapter" "${used_flags[@]}"; then - completion+=("--adapter") - fi - - COMPREPLY=($(compgen -W "${completion[*]}" -- "$cur")) - return - fi - - - return - fi - if [ "${subcommand}" == "version" ]; then - local args_shift=2 - # get the list of already used flags and args, ignoring the current word - args=("${words[@]:args_shift}") # args without command and subcommand - used_flags=() - used_args=() - index=0 - - while [ "${#args[@]}" -gt 0 ]; do - if [ "${index}" -eq "$((cword-args_shift))" ]; then - # ignore current word - args=("${args[@]:1}") - index=$((index+1)) - continue - fi - - - - if [[ "${args[0]}" != "-"* ]]; then - used_args+=("${args[0]}") - fi - args=("${args[@]:1}") - index=$((index+1)) - done - - - if [[ $cur == -* ]]; then - # flags - completion=() - - if [[ $cur != --* ]]; then - true - fi - - - COMPREPLY=($(compgen -W "${completion[*]}" -- "$cur")) - return - fi - - - return - fi -} - -# register completion -complete -F _caddy_completions caddy - diff --git a/caddy.spec b/caddy.spec index 5bf0393..8c3e910 100644 --- a/caddy.spec +++ b/caddy.spec @@ -28,8 +28,6 @@ Source20: caddy.service Source21: caddy-api.service Source30: poweredby-white.png Source31: poweredby-black.png -Source40: bash-completion -Source41: zsh-completion # downstream only patch to disable commands that can alter the binary Patch: 0001-Disable-commands-that-can-alter-the-binary.patch @@ -362,9 +360,13 @@ ln -s ../testpage/index.html %{buildroot}%{_datadir}/caddy/index.html install -d -m 0755 %{buildroot}%{_datadir}/caddy/icons ln -s ../../pixmaps/poweredby.png %{buildroot}%{_datadir}/caddy/icons/poweredby.png -# shell completion -install -D -p -m 0644 %{S:40} %{buildroot}%{_datadir}/bash-completion/completions/caddy -install -D -p -m 0644 %{S:41} %{buildroot}%{_datadir}/zsh/site-functions/_caddy +# shell completions +install -d -m 0755 %{buildroot}%{_datadir}/bash-completion/completions +%{gobuilddir}/bin/caddy completion bash > %{buildroot}%{_datadir}/bash-completion/completions/caddy +install -d -m 0755 %{buildroot}%{_datadir}/zsh/site-functions +%{gobuilddir}/bin/caddy completion zsh > %{buildroot}%{_datadir}/zsh/site-functions/_caddy +install -d -m 0755 %{buildroot}%{_datadir}/fish/vendor_completions.d +%{gobuilddir}/bin/caddy completion fish > %{buildroot}%{_datadir}/fish/vendor_completions.d/caddy.fish %check @@ -442,12 +444,9 @@ fi %config(noreplace) %{_sysconfdir}/caddy/Caddyfile %dir %{_sysconfdir}/caddy/Caddyfile.d %attr(0750,caddy,caddy) %dir %{_sharedstatedir}/caddy -# filesystem owns all the parent directories here %{_datadir}/bash-completion/completions/caddy -# own parent directories in case zsh is not installed -%dir %{_datadir}/zsh -%dir %{_datadir}/zsh/site-functions %{_datadir}/zsh/site-functions/_caddy +%{_datadir}/fish/vendor_completions.d/caddy.fish %changelog @@ -456,6 +455,8 @@ fi - Resolves CVE-2022-41717 rhbz#2164315 - Resolves CVE-2022-41723 rhbz#2178412 - Add man pages +- Use generated shell completion files instead of static ones +- Add fish shell completions * Wed Jul 19 2023 Fedora Release Engineering - 2.5.2-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild diff --git a/zsh-completion b/zsh-completion deleted file mode 100644 index 66f50b7..0000000 --- a/zsh-completion +++ /dev/null @@ -1,166 +0,0 @@ -#compdef caddy - -function _caddy { - local _line - - _arguments -C \ - "1: :(adapt build-info environ file-server fmt hash-password help list-modules reload reverse-proxy run start stop trust untrust validate version)" \ - "*::arg:->args" - - case $line[1] in - adapt) - __caddy_adapt - ;; - build-info) - __caddy_build-info - ;; - environ) - __caddy_environ - ;; - file-server) - __caddy_file-server - ;; - fmt) - __caddy_fmt - ;; - hash-password) - __caddy_hash-password - ;; - help) - __caddy_help - ;; - list-modules) - __caddy_list-modules - ;; - reload) - __caddy_reload - ;; - reverse-proxy) - __caddy_reverse-proxy - ;; - run) - __caddy_run - ;; - start) - __caddy_start - ;; - stop) - __caddy_stop - ;; - trust) - __caddy_trust - ;; - untrust) - __caddy_untrust - ;; - validate) - __caddy_validate - ;; - version) - __caddy_version - ;; - esac -} - -function __caddy_adapt { - _arguments \ - "--pretty: :" \ - "--validate: :" \ - "--adapter: :_files" \ - "--config: :_files" \ - -} -function __caddy_build-info { - -} -function __caddy_environ { - -} -function __caddy_file-server { - _arguments \ - "--browse: :" \ - "--templates: :" \ - "--domain: :_files" \ - "--listen: :_files" \ - "--root: :_dirs" \ - -} -function __caddy_fmt { - _arguments \ - "--overwrite: :" \ - -} -function __caddy_hash-password { - _arguments \ - "--algorithm: :_files" \ - "--plaintext: :_files" \ - "--salt: :_files" \ - -} -function __caddy_help { - -} -function __caddy_list-modules { - _arguments \ - "--versions: :" \ - -} -function __caddy_reload { - _arguments \ - "--adapter: :_files" \ - "--config: :_files" \ - "--address: :_files" \ - -} -function __caddy_reverse-proxy { - _arguments \ - "--change-host-header: :" \ - "--from: :_files" \ - "--to: :_files" \ - -} -function __caddy_run { - _arguments \ - "--environ: :" \ - "--resume: :" \ - "--watch: :" \ - "--adapter: :_files" \ - "--config: :_files" \ - "--pingback: :_files" \ - "--pidfile: :_files" \ - -} -function __caddy_start { - _arguments \ - "--watch: :" \ - "--adapter: :_files" \ - "--config: :_files" \ - "--pidfile: :_files" \ - -} -function __caddy_stop { - _arguments \ - "--address: :_files" \ - -} -function __caddy_trust { - -} -function __caddy_untrust { - _arguments \ - "--ca: :_files" \ - "--cert: :_files" \ - -} -function __caddy_validate { - _arguments \ - "--config: :_files" \ - "--adapter: :_files" \ - -} -function __caddy_version { - -} - -_caddy - From aa27f6e03c25f1954981b0bc1febe1c0a59af9c3 Mon Sep 17 00:00:00 2001 From: Carl George Date: Wed, 26 Jul 2023 23:50:52 -0500 Subject: [PATCH 48/79] Switch to systemd sysusers --- caddy.spec | 13 ++++++++----- caddy.sysusers | 1 + 2 files changed, 9 insertions(+), 5 deletions(-) create mode 100644 caddy.sysusers diff --git a/caddy.spec b/caddy.spec index 8c3e910..e4c8c82 100644 --- a/caddy.spec +++ b/caddy.spec @@ -26,6 +26,7 @@ Source0: caddy-%{version}-vendored.tar.gz Source10: Caddyfile Source20: caddy.service Source21: caddy-api.service +Source22: caddy.sysusers Source30: poweredby-white.png Source31: poweredby-black.png @@ -314,6 +315,7 @@ Provides: bundled(golang(howett.net/plist)) = 1.0.0 BuildRequires: systemd-rpm-macros %{?systemd_requires} +%{?sysusers_requires_compat} Requires: system-logos-httpd Provides: webserver @@ -347,6 +349,9 @@ install -d -m 0755 %{buildroot}%{_sysconfdir}/caddy/Caddyfile.d install -D -p -m 0644 %{S:20} %{buildroot}%{_unitdir}/caddy.service install -D -p -m 0644 %{S:21} %{buildroot}%{_unitdir}/caddy-api.service +# sysusers +install -D -p -m 0644 %{S:22} %{buildroot}%{_sysusersdir}/caddy.conf + # data directory install -d -m 0750 %{buildroot}%{_sharedstatedir}/caddy @@ -374,11 +379,7 @@ install -d -m 0755 %{buildroot}%{_datadir}/fish/vendor_completions.d %pre -getent group caddy &> /dev/null || \ -groupadd -r caddy &> /dev/null -getent passwd caddy &> /dev/null || \ -useradd -r -g caddy -d %{_sharedstatedir}/caddy -s /sbin/nologin -c 'Caddy web server' caddy &> /dev/null -exit 0 +%sysusers_create_compat %{S:22} %post @@ -440,6 +441,7 @@ fi %{_datadir}/caddy %{_unitdir}/caddy.service %{_unitdir}/caddy-api.service +%{_sysusersdir}/caddy.conf %dir %{_sysconfdir}/caddy %config(noreplace) %{_sysconfdir}/caddy/Caddyfile %dir %{_sysconfdir}/caddy/Caddyfile.d @@ -457,6 +459,7 @@ fi - Add man pages - Use generated shell completion files instead of static ones - Add fish shell completions +- Switch to systemd sysusers * Wed Jul 19 2023 Fedora Release Engineering - 2.5.2-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild diff --git a/caddy.sysusers b/caddy.sysusers new file mode 100644 index 0000000..3e98c73 --- /dev/null +++ b/caddy.sysusers @@ -0,0 +1 @@ +u caddy - "Caddy web server" /var/lib/caddy /usr/sbin/nologin From 1d0924e58f442b5f8f4939f695f7c5fec633a290 Mon Sep 17 00:00:00 2001 From: Carl George Date: Thu, 3 Aug 2023 12:57:37 +0100 Subject: [PATCH 49/79] Update to version 2.7.2, resolves rhbz#2228776 --- caddy-api.service | 2 +- caddy.service | 2 +- caddy.spec | 71 +++++++++++++++++++++++++---------------------- sources | 2 +- 4 files changed, 41 insertions(+), 36 deletions(-) diff --git a/caddy-api.service b/caddy-api.service index 47e6648..bf60c0a 100644 --- a/caddy-api.service +++ b/caddy-api.service @@ -23,7 +23,7 @@ LimitNPROC=512 PrivateTmp=true ProtectHome=true ProtectSystem=full -AmbientCapabilities=CAP_NET_BIND_SERVICE +AmbientCapabilities=CAP_NET_ADMIN CAP_NET_BIND_SERVICE [Install] WantedBy=multi-user.target diff --git a/caddy.service b/caddy.service index 88843db..f2f75cb 100644 --- a/caddy.service +++ b/caddy.service @@ -26,7 +26,7 @@ LimitNPROC=512 PrivateTmp=true ProtectHome=true ProtectSystem=full -AmbientCapabilities=CAP_NET_BIND_SERVICE +AmbientCapabilities=CAP_NET_ADMIN CAP_NET_BIND_SERVICE [Install] WantedBy=multi-user.target diff --git a/caddy.spec b/caddy.spec index e4c8c82..e2fb561 100644 --- a/caddy.spec +++ b/caddy.spec @@ -1,21 +1,18 @@ # https://github.com/caddyserver/caddy %global goipath github.com/caddyserver/caddy -%global basever 2.7.0 -%global prerel beta -%global prerelnum 2 +%global basever 2.7.2 +#global prerel beta +#global prerelnum 2 Version: %{basever}%{?prerel:~%{prerel}%{prerelnum}} %gometa -f -%global common_description %{expand: -Caddy is the web server with automatic HTTPS.} - Name: caddy Release: 1%{?dist} Summary: Web server with automatic HTTPS # main source code is Apache-2.0 # see comments above provides tags for bundled license breakdown -License: Apache-2.0 AND (Apache-2.0 AND BSD-2-Clause) AND (Apache-2.0 AND BSD-3-Clause) AND (Apache-2.0 AND MIT) AND BSD-2-Clause AND (BSD-2-Clause-Views AND BSD-3-Clause) AND BSD-3-Clause AND (BSD-3-Clause AND Apache-2.0 AND MIT) AND ISC AND MIT AND (MIT AND Apache-2.0) AND (MIT AND CC0-1.0) AND MPL-2.0 +License: Apache-2.0 AND (Apache-2.0 AND BSD-2-Clause) AND (Apache-2.0 AND BSD-3-Clause) AND (Apache-2.0 AND MIT) AND BSD-2-Clause AND (BSD-2-Clause-Views AND BSD-3-Clause) AND BSD-3-Clause AND (BSD-3-Clause AND Apache-2.0 AND MIT) AND CC0-1.0 AND ISC AND MIT AND (MIT AND Apache-2.0) AND (MIT AND CC0-1.0) AND MPL-2.0 URL: https://caddyserver.com # see create-vendor-tarball.sh in this distgit repo @@ -33,8 +30,8 @@ Source31: poweredby-black.png # downstream only patch to disable commands that can alter the binary Patch: 0001-Disable-commands-that-can-alter-the-binary.patch -# https://github.com/caddyserver/caddy/commit/8cb1bb4af30b880f981b1ae6fdb13e5944bfaefe -BuildRequires: golang >= 1.19 +# https://github.com/caddyserver/caddy/commit/f45a6de20dd19e82e58c85b37e03957b2203b544 +BuildRequires: golang >= 1.20 # BSD-3-Clause Provides: bundled(golang(filippo.io/edwards25519)) = 1.0.0 @@ -59,7 +56,7 @@ Provides: bundled(golang(github.com/aryann/difflib)) = ff5ff6d # MIT Provides: bundled(golang(github.com/beorn7/perks)) = 1.0.1 # Apache-2.0 -Provides: bundled(golang(github.com/caddyserver/certmagic)) = 0.18.2 +Provides: bundled(golang(github.com/caddyserver/certmagic)) = 0.19.1 # MIT Provides: bundled(golang(github.com/cenkalti/backoff/v4)) = 4.2.1 # MIT @@ -147,7 +144,7 @@ Provides: bundled(golang(github.com/jackc/pgtype)) = 1.14.0 # MIT Provides: bundled(golang(github.com/jackc/pgx/v4)) = 4.18.0 # BSD-3-Clause AND Apache-2.0 AND MIT -Provides: bundled(golang(github.com/klauspost/compress)) = 1.16.6 +Provides: bundled(golang(github.com/klauspost/compress)) = 1.16.7 # MIT Provides: bundled(golang(github.com/klauspost/cpuid/v2)) = 2.2.5 # MIT @@ -195,7 +192,7 @@ Provides: bundled(golang(github.com/quic-go/qpack)) = 0.4.0 # BSD-3-Clause Provides: bundled(golang(github.com/quic-go/qtls-go1-20)) = 0.3.0 # MIT -Provides: bundled(golang(github.com/quic-go/quic-go)) = 0.37.0 +Provides: bundled(golang(github.com/quic-go/quic-go)) = 0.37.1 # MIT Provides: bundled(golang(github.com/rs/xid)) = 1.5.0 # BSD-2-Clause @@ -205,11 +202,11 @@ Provides: bundled(golang(github.com/shopspring/decimal)) = 1.2.0 # MIT Provides: bundled(golang(github.com/shurcooL/sanitized_anchor_name)) = 1.0.0 # MIT -Provides: bundled(golang(github.com/sirupsen/logrus)) = 1.9.0 +Provides: bundled(golang(github.com/sirupsen/logrus)) = 1.9.3 # MIT Provides: bundled(golang(github.com/slackhq/nebula)) = 1.6.1 # Apache-2.0 -Provides: bundled(golang(github.com/smallstep/certificates)) = 0.24.2 +Provides: bundled(golang(github.com/smallstep/certificates)) = 0.24.3-rc.5 # Apache-2.0 Provides: bundled(golang(github.com/smallstep/go-attestation)) = e172914 # Apache-2.0 @@ -225,17 +222,19 @@ Provides: bundled(golang(github.com/spf13/pflag)) = 1.0.5 # MIT Provides: bundled(golang(github.com/stoewer/go-strcase)) = 1.2.0 # MIT -Provides: bundled(golang(github.com/stretchr/testify)) = 1.8.3 +Provides: bundled(golang(github.com/stretchr/testify)) = 1.8.4 # BSD-3-Clause Provides: bundled(golang(github.com/tailscale/tscert)) = 4e9cb4f # MIT -Provides: bundled(golang(github.com/urfave/cli)) = 1.22.13 +Provides: bundled(golang(github.com/urfave/cli)) = 1.22.14 # MIT Provides: bundled(golang(github.com/x448/float16)) = 0.8.4 # MIT -Provides: bundled(golang(github.com/yuin/goldmark)) = 1.5.4 +Provides: bundled(golang(github.com/yuin/goldmark)) = 1.5.5 # MIT -Provides: bundled(golang(github.com/yuin/goldmark-highlighting/v2)) = 1513624 +Provides: bundled(golang(github.com/yuin/goldmark-highlighting/v2)) = 37449ab +# CC0-1.0 +Provides: bundled(golang(github.com/zeebo/blake3)) = 0.2.3 # MIT Provides: bundled(golang(go.etcd.io/bbolt)) = 1.3.7 # MIT @@ -269,41 +268,43 @@ Provides: bundled(golang(go.opentelemetry.io/otel/trace)) = 1.16.0 # Apache-2.0 Provides: bundled(golang(go.opentelemetry.io/proto/otlp)) = 0.19.0 # Apache-2.0 AND BSD-2-Clause -Provides: bundled(golang(go.step.sm/cli-utils)) = 0.7.6 +Provides: bundled(golang(go.step.sm/cli-utils)) = 0.8.0 # Apache-2.0 AND BSD-2-Clause -Provides: bundled(golang(go.step.sm/crypto)) = 0.30.0 +Provides: bundled(golang(go.step.sm/crypto)) = 0.33.0 # Apache-2.0 -Provides: bundled(golang(go.step.sm/linkedca)) = 0.19.1 -# MIT -Provides: bundled(golang(go.uber.org/atomic)) = 1.11.0 +Provides: bundled(golang(go.step.sm/linkedca)) = 0.20.0 # MIT Provides: bundled(golang(go.uber.org/multierr)) = 1.11.0 # MIT -Provides: bundled(golang(go.uber.org/zap)) = 1.24.0 +Provides: bundled(golang(go.uber.org/zap)) = 1.25.0 # BSD-3-Clause -Provides: bundled(golang(golang.org/x/crypto)) = 0.10.0 +Provides: bundled(golang(golang.org/x/crypto)) = 0.11.0 # BSD-3-Clause Provides: bundled(golang(golang.org/x/exp)) = 522b1b5 # BSD-3-Clause Provides: bundled(golang(golang.org/x/mod)) = 0.11.0 # BSD-3-Clause -Provides: bundled(golang(golang.org/x/net)) = 0.11.0 +Provides: bundled(golang(golang.org/x/net)) = 0.12.0 # BSD-3-Clause Provides: bundled(golang(golang.org/x/sync)) = 0.3.0 # BSD-3-Clause -Provides: bundled(golang(golang.org/x/sys)) = 0.9.0 +Provides: bundled(golang(golang.org/x/sys)) = 0.10.0 # BSD-3-Clause -Provides: bundled(golang(golang.org/x/term)) = 0.9.0 +Provides: bundled(golang(golang.org/x/term)) = 0.10.0 # BSD-3-Clause -Provides: bundled(golang(golang.org/x/text)) = 0.10.0 +Provides: bundled(golang(golang.org/x/text)) = 0.11.0 # BSD-3-Clause Provides: bundled(golang(golang.org/x/tools)) = 0.10.0 # Apache-2.0 -Provides: bundled(golang(google.golang.org/genproto)) = daa745c +Provides: bundled(golang(google.golang.org/genproto)) = ccb25ca # Apache-2.0 -Provides: bundled(golang(google.golang.org/grpc)) = 1.55.0 +Provides: bundled(golang(google.golang.org/genproto/googleapis/api)) = ccb25ca +# Apache-2.0 +Provides: bundled(golang(google.golang.org/genproto/googleapis/rpc)) = 782d3b1 +# Apache-2.0 +Provides: bundled(golang(google.golang.org/grpc)) = 1.56.2 # BSD-3-Clause -Provides: bundled(golang(google.golang.org/protobuf)) = 1.30.0 +Provides: bundled(golang(google.golang.org/protobuf)) = 1.31.0 # MIT Provides: bundled(golang(gopkg.in/natefinch/lumberjack.v2)) = 2.2.1 # Apache-2.0 AND BSD-3-Clause @@ -320,7 +321,8 @@ Requires: system-logos-httpd Provides: webserver -%description %{common_description} +%description +Caddy is the web server with automatic HTTPS. %prep @@ -452,6 +454,9 @@ fi %changelog +* Thu Aug 03 2023 Carl George - 2.7.2-1 +- Update to version 2.7.2, resolves rhbz#2228776 + * Thu Jul 27 2023 Carl George - 2.7.0~beta2-1 - Update to version 2.7.0~beta2, resolves rhbz#2225732 rhbz#2124366 - Resolves CVE-2022-41717 rhbz#2164315 diff --git a/sources b/sources index c993eda..1ef0707 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (caddy-2.7.0~beta2-vendored.tar.gz) = ec3c002668207c4271dba99ef0fd22f12140eda2dff3e02870195a6298d772df908886d2395f3d340f6acb1ef2f08a097671c735572b2e4b676331f78b439c6c +SHA512 (caddy-2.7.2-vendored.tar.gz) = fc44aeb824b5e5dcc0110acd47a6ff369c07b63f28847bfd13ac4a6fe54ceee63fa72687d888ec2ca9b0f421f6a90f0af579c7c8e76f5622ad281301e8237ed5 From 6ac3aff84d607d57a25ae10a2e80454286a36e2c Mon Sep 17 00:00:00 2001 From: Carl George Date: Tue, 8 Aug 2023 17:45:23 -0500 Subject: [PATCH 50/79] Update to version 2.7.3, resolves rhbz#2229638 --- caddy.spec | 9 ++++++--- sources | 2 +- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/caddy.spec b/caddy.spec index e2fb561..24b6711 100644 --- a/caddy.spec +++ b/caddy.spec @@ -1,6 +1,6 @@ # https://github.com/caddyserver/caddy %global goipath github.com/caddyserver/caddy -%global basever 2.7.2 +%global basever 2.7.3 #global prerel beta #global prerelnum 2 Version: %{basever}%{?prerel:~%{prerel}%{prerelnum}} @@ -190,9 +190,9 @@ Provides: bundled(golang(github.com/prometheus/procfs)) = 0.8.0 # MIT Provides: bundled(golang(github.com/quic-go/qpack)) = 0.4.0 # BSD-3-Clause -Provides: bundled(golang(github.com/quic-go/qtls-go1-20)) = 0.3.0 +Provides: bundled(golang(github.com/quic-go/qtls-go1-20)) = 0.3.1 # MIT -Provides: bundled(golang(github.com/quic-go/quic-go)) = 0.37.1 +Provides: bundled(golang(github.com/quic-go/quic-go)) = 0.37.3 # MIT Provides: bundled(golang(github.com/rs/xid)) = 1.5.0 # BSD-2-Clause @@ -454,6 +454,9 @@ fi %changelog +* Tue Aug 08 2023 Carl George - 2.7.3-1 +- Update to version 2.7.3, resolves rhbz#2229638 + * Thu Aug 03 2023 Carl George - 2.7.2-1 - Update to version 2.7.2, resolves rhbz#2228776 diff --git a/sources b/sources index 1ef0707..df90ceb 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (caddy-2.7.2-vendored.tar.gz) = fc44aeb824b5e5dcc0110acd47a6ff369c07b63f28847bfd13ac4a6fe54ceee63fa72687d888ec2ca9b0f421f6a90f0af579c7c8e76f5622ad281301e8237ed5 +SHA512 (caddy-2.7.3-vendored.tar.gz) = 6e5f0273dae39765fad31c993ef41bf0d1fd0a50fbd243e20b3457affcf8d3361956e1d2dba85a30b363b1eff377fcfcbd0d0fbfd31cb68a55d2a4a98df8edf4 From 549d07e79c468857bf1a3d0194c7ee58af4bd508 Mon Sep 17 00:00:00 2001 From: Carl George Date: Mon, 14 Aug 2023 17:09:35 -0500 Subject: [PATCH 51/79] De-duplicate conjunctive licenses This type of situation was brought up on the legal mailing list recently, and the conclusion was that conjunctive (AND) licenses can be "reduced". https://lists.fedoraproject.org/archives/list/legal@lists.fedoraproject.org/thread/F4MYD7U6D2ROAL3CAOHSYDL3H6TPWZOT/ --- caddy.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/caddy.spec b/caddy.spec index 24b6711..e770549 100644 --- a/caddy.spec +++ b/caddy.spec @@ -12,7 +12,7 @@ Release: 1%{?dist} Summary: Web server with automatic HTTPS # main source code is Apache-2.0 # see comments above provides tags for bundled license breakdown -License: Apache-2.0 AND (Apache-2.0 AND BSD-2-Clause) AND (Apache-2.0 AND BSD-3-Clause) AND (Apache-2.0 AND MIT) AND BSD-2-Clause AND (BSD-2-Clause-Views AND BSD-3-Clause) AND BSD-3-Clause AND (BSD-3-Clause AND Apache-2.0 AND MIT) AND CC0-1.0 AND ISC AND MIT AND (MIT AND Apache-2.0) AND (MIT AND CC0-1.0) AND MPL-2.0 +License: Apache-2.0 AND BSD-2-Clause AND BSD-3-Clause AND MIT AND BSD-2-Clause-Views AND CC0-1.0 AND ISC AND MPL-2.0 URL: https://caddyserver.com # see create-vendor-tarball.sh in this distgit repo From 98e338368842c34cf8181218e1e14bac4a2c3030 Mon Sep 17 00:00:00 2001 From: Carl George Date: Mon, 14 Aug 2023 17:49:06 -0500 Subject: [PATCH 52/79] Remove usage of %gometa, %goprep, %gobuilddir, and %gocheck These macros are inconsistent across EPEL branches --- caddy.spec | 41 +++++++++++++++++++++++++---------------- 1 file changed, 25 insertions(+), 16 deletions(-) diff --git a/caddy.spec b/caddy.spec index e770549..83e2607 100644 --- a/caddy.spec +++ b/caddy.spec @@ -1,13 +1,7 @@ -# https://github.com/caddyserver/caddy %global goipath github.com/caddyserver/caddy -%global basever 2.7.3 -#global prerel beta -#global prerelnum 2 -Version: %{basever}%{?prerel:~%{prerel}%{prerelnum}} - -%gometa -f Name: caddy +Version: 2.7.3 Release: 1%{?dist} Summary: Web server with automatic HTTPS # main source code is Apache-2.0 @@ -15,6 +9,16 @@ Summary: Web server with automatic HTTPS License: Apache-2.0 AND BSD-2-Clause AND BSD-3-Clause AND MIT AND BSD-2-Clause-Views AND CC0-1.0 AND ISC AND MPL-2.0 URL: https://caddyserver.com +%if %{defined fedora} +ExclusiveArch: %{golang_arches_future} +%else +ExclusiveArch: %{golang_arches} +%endif + +%if %{undefined el8} +BuildRequires: go-rpm-macros +%endif + # see create-vendor-tarball.sh in this distgit repo Source0: caddy-%{version}-vendored.tar.gz @@ -326,22 +330,25 @@ Caddy is the web server with automatic HTTPS. %prep -%goprep -k -%autopatch -p 1 +%autosetup -p 1 +mkdir -p src/$(dirname %{goipath}) +ln -s $PWD src/%{goipath} sed -e '/mod.Version/ s/unknown/%{version}-%{release}/' -i caddy.go %build -%gobuild -o %{gobuilddir}/bin/caddy %{goipath}/cmd/caddy +export GO111MODULE=off +export GOPATH=$PWD +%gobuild -o bin/caddy %{goipath}/cmd/caddy %install # command -install -D -p -m 0755 %{gobuilddir}/bin/caddy %{buildroot}%{_bindir}/caddy +install -D -p -m 0755 bin/caddy %{buildroot}%{_bindir}/caddy # man pages -%{gobuilddir}/bin/caddy manpage --directory %{buildroot}%{_mandir}/man8 +./bin/caddy manpage --directory %{buildroot}%{_mandir}/man8 # config install -D -p -m 0644 %{S:10} %{buildroot}%{_sysconfdir}/caddy/Caddyfile @@ -369,15 +376,17 @@ ln -s ../../pixmaps/poweredby.png %{buildroot}%{_datadir}/caddy/icons/poweredby. # shell completions install -d -m 0755 %{buildroot}%{_datadir}/bash-completion/completions -%{gobuilddir}/bin/caddy completion bash > %{buildroot}%{_datadir}/bash-completion/completions/caddy +./bin/caddy completion bash > %{buildroot}%{_datadir}/bash-completion/completions/caddy install -d -m 0755 %{buildroot}%{_datadir}/zsh/site-functions -%{gobuilddir}/bin/caddy completion zsh > %{buildroot}%{_datadir}/zsh/site-functions/_caddy +./bin/caddy completion zsh > %{buildroot}%{_datadir}/zsh/site-functions/_caddy install -d -m 0755 %{buildroot}%{_datadir}/fish/vendor_completions.d -%{gobuilddir}/bin/caddy completion fish > %{buildroot}%{_datadir}/fish/vendor_completions.d/caddy.fish +./bin/caddy completion fish > %{buildroot}%{_datadir}/fish/vendor_completions.d/caddy.fish %check -%gocheck +export GOPATH=$PWD +cd src/%{goipath} +%gotest ./... %pre From b4c70787a2c4ecf0facc60a516e4c41b0180b1ef Mon Sep 17 00:00:00 2001 From: Carl George Date: Thu, 17 Aug 2023 19:02:21 -0500 Subject: [PATCH 53/79] Update to version 2.7.4, resolves rhbz#2232696 - Fix CVE-2023-3978, resolves rhbz#2229582 --- caddy.spec | 29 ++++++++++++++++++----------- sources | 2 +- 2 files changed, 19 insertions(+), 12 deletions(-) diff --git a/caddy.spec b/caddy.spec index 83e2607..5e78551 100644 --- a/caddy.spec +++ b/caddy.spec @@ -1,7 +1,7 @@ %global goipath github.com/caddyserver/caddy Name: caddy -Version: 2.7.3 +Version: 2.7.4 Release: 1%{?dist} Summary: Web server with automatic HTTPS # main source code is Apache-2.0 @@ -60,7 +60,7 @@ Provides: bundled(golang(github.com/aryann/difflib)) = ff5ff6d # MIT Provides: bundled(golang(github.com/beorn7/perks)) = 1.0.1 # Apache-2.0 -Provides: bundled(golang(github.com/caddyserver/certmagic)) = 0.19.1 +Provides: bundled(golang(github.com/caddyserver/certmagic)) = 0.19.2 # MIT Provides: bundled(golang(github.com/cenkalti/backoff/v4)) = 4.2.1 # MIT @@ -196,7 +196,7 @@ Provides: bundled(golang(github.com/quic-go/qpack)) = 0.4.0 # BSD-3-Clause Provides: bundled(golang(github.com/quic-go/qtls-go1-20)) = 0.3.1 # MIT -Provides: bundled(golang(github.com/quic-go/quic-go)) = 0.37.3 +Provides: bundled(golang(github.com/quic-go/quic-go)) = 0.37.5 # MIT Provides: bundled(golang(github.com/rs/xid)) = 1.5.0 # BSD-2-Clause @@ -282,21 +282,21 @@ Provides: bundled(golang(go.uber.org/multierr)) = 1.11.0 # MIT Provides: bundled(golang(go.uber.org/zap)) = 1.25.0 # BSD-3-Clause -Provides: bundled(golang(golang.org/x/crypto)) = 0.11.0 +Provides: bundled(golang(golang.org/x/crypto)) = 0.12.0 # BSD-3-Clause Provides: bundled(golang(golang.org/x/exp)) = 522b1b5 # BSD-3-Clause Provides: bundled(golang(golang.org/x/mod)) = 0.11.0 # BSD-3-Clause -Provides: bundled(golang(golang.org/x/net)) = 0.12.0 +Provides: bundled(golang(golang.org/x/net)) = 0.14.0 # BSD-3-Clause Provides: bundled(golang(golang.org/x/sync)) = 0.3.0 # BSD-3-Clause -Provides: bundled(golang(golang.org/x/sys)) = 0.10.0 +Provides: bundled(golang(golang.org/x/sys)) = 0.11.0 # BSD-3-Clause -Provides: bundled(golang(golang.org/x/term)) = 0.10.0 +Provides: bundled(golang(golang.org/x/term)) = 0.11.0 # BSD-3-Clause -Provides: bundled(golang(golang.org/x/text)) = 0.11.0 +Provides: bundled(golang(golang.org/x/text)) = 0.12.0 # BSD-3-Clause Provides: bundled(golang(golang.org/x/tools)) = 0.10.0 # Apache-2.0 @@ -313,7 +313,7 @@ Provides: bundled(golang(google.golang.org/protobuf)) = 1.31.0 Provides: bundled(golang(gopkg.in/natefinch/lumberjack.v2)) = 2.2.1 # Apache-2.0 AND BSD-3-Clause Provides: bundled(golang(gopkg.in/square/go-jose.v2)) = 2.6.0 -# MIT AND Apache-2.0 +# Apache-2.0 AND MIT Provides: bundled(golang(gopkg.in/yaml.v3)) = 3.0.1 # BSD-2-Clause-Views AND BSD-3-Clause Provides: bundled(golang(howett.net/plist)) = 1.0.0 @@ -334,12 +334,11 @@ Caddy is the web server with automatic HTTPS. mkdir -p src/$(dirname %{goipath}) ln -s $PWD src/%{goipath} -sed -e '/mod.Version/ s/unknown/%{version}-%{release}/' -i caddy.go - %build export GO111MODULE=off export GOPATH=$PWD +export LDFLAGS="-X %{goipath}.CustomVersion=v%{version}" %gobuild -o bin/caddy %{goipath}/cmd/caddy @@ -384,6 +383,10 @@ install -d -m 0755 %{buildroot}%{_datadir}/fish/vendor_completions.d %check +# ensure that the version was embedded correctly +[[ "$(./bin/caddy version)" == "v%{version}" ]] || exit 1 + +# run the upstream tests export GOPATH=$PWD cd src/%{goipath} %gotest ./... @@ -463,6 +466,10 @@ fi %changelog +* Thu Aug 17 2023 Carl George - 2.7.4-1 +- Update to version 2.7.4, resolves rhbz#2232696 +- Fix CVE-2023-3978, resolves rhbz#2229582 + * Tue Aug 08 2023 Carl George - 2.7.3-1 - Update to version 2.7.3, resolves rhbz#2229638 diff --git a/sources b/sources index df90ceb..d143483 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (caddy-2.7.3-vendored.tar.gz) = 6e5f0273dae39765fad31c993ef41bf0d1fd0a50fbd243e20b3457affcf8d3361956e1d2dba85a30b363b1eff377fcfcbd0d0fbfd31cb68a55d2a4a98df8edf4 +SHA512 (caddy-2.7.4-vendored.tar.gz) = 92eeba301a4b957a650fd29e5742b4031e6e73eecd4fe20dc7ebc0ae42a6835f34a85a06c06dabf2070a9be730ab95dd6d60b1e001a55230e6641c3d536443b5 From b07e160d779ba32a510810d7cc9a47354c1162c0 Mon Sep 17 00:00:00 2001 From: Carl George Date: Mon, 30 Oct 2023 14:23:48 -0500 Subject: [PATCH 54/79] Update to version 2.7.5 --- ...e-commands-that-can-alter-the-binary.patch | 12 +-- caddy.spec | 75 ++++++++++--------- sources | 2 +- 3 files changed, 47 insertions(+), 42 deletions(-) diff --git a/0001-Disable-commands-that-can-alter-the-binary.patch b/0001-Disable-commands-that-can-alter-the-binary.patch index b61277d..07f25a5 100644 --- a/0001-Disable-commands-that-can-alter-the-binary.patch +++ b/0001-Disable-commands-that-can-alter-the-binary.patch @@ -1,4 +1,4 @@ -From 2d810cf52c14e07cbc60afaf2511069c17bbc49d Mon Sep 17 00:00:00 2001 +From 4f771cd0f5f1a1a66bc142a98d3356296fa656a5 Mon Sep 17 00:00:00 2001 From: Carl George Date: Wed, 16 Feb 2022 11:45:03 -0600 Subject: [PATCH] Disable commands that can alter the binary @@ -8,10 +8,10 @@ Subject: [PATCH] Disable commands that can alter the binary 1 file changed, 44 deletions(-) diff --git a/cmd/commands.go b/cmd/commands.go -index d1b76f44..d5b8a326 100644 +index e5e1265e..972d24dc 100644 --- a/cmd/commands.go +++ b/cmd/commands.go -@@ -382,50 +382,6 @@ is always printed to stdout. +@@ -394,50 +394,6 @@ is always printed to stdout. }, }) @@ -34,7 +34,7 @@ index d1b76f44..d5b8a326 100644 - Short: "Adds Caddy packages (EXPERIMENTAL)", - Long: ` -Downloads an updated Caddy binary with the specified packages (module/plugin) --added. Retains existing packages. Returns an error if the any of packages are +-added. Retains existing packages. Returns an error if the any of packages are -already included. EXPERIMENTAL: May be changed or removed. -`, - CobraFunc: func(cmd *cobra.Command) { @@ -49,8 +49,8 @@ index d1b76f44..d5b8a326 100644 - Usage: "", - Short: "Removes Caddy packages (EXPERIMENTAL)", - Long: ` --Downloads an updated Caddy binaries without the specified packages (module/plugin). --Returns an error if any of the packages are not included. +-Downloads an updated Caddy binaries without the specified packages (module/plugin). +-Returns an error if any of the packages are not included. -EXPERIMENTAL: May be changed or removed. -`, - CobraFunc: func(cmd *cobra.Command) { diff --git a/caddy.spec b/caddy.spec index 5e78551..3aad98b 100644 --- a/caddy.spec +++ b/caddy.spec @@ -1,7 +1,7 @@ %global goipath github.com/caddyserver/caddy Name: caddy -Version: 2.7.4 +Version: 2.7.5 Release: 1%{?dist} Summary: Web server with automatic HTTPS # main source code is Apache-2.0 @@ -52,7 +52,7 @@ Provides: bundled(golang(github.com/Masterminds/sprig/v3)) = 3.2.3 # MIT Provides: bundled(golang(github.com/Microsoft/go-winio)) = 0.6.0 # MIT -Provides: bundled(golang(github.com/alecthomas/chroma/v2)) = 2.7.0 +Provides: bundled(golang(github.com/alecthomas/chroma/v2)) = 2.9.1 # BSD-3-Clause Provides: bundled(golang(github.com/antlr/antlr4/runtime/Go/antlr/v4)) = 8188dc5 # MIT @@ -82,16 +82,18 @@ Provides: bundled(golang(github.com/dgraph-io/ristretto)) = 0.1.0 # MIT Provides: bundled(golang(github.com/dgryski/go-farm)) = a6ae236 # MIT -Provides: bundled(golang(github.com/dlclark/regexp2)) = 1.7.0 +Provides: bundled(golang(github.com/dlclark/regexp2)) = 1.10.0 # MIT Provides: bundled(golang(github.com/dustin/go-humanize)) = 1.0.1 # MIT Provides: bundled(golang(github.com/felixge/httpsnoop)) = 1.0.3 # MIT -Provides: bundled(golang(github.com/fxamacker/cbor/v2)) = 2.4.0 +Provides: bundled(golang(github.com/fxamacker/cbor/v2)) = 2.5.0 # MIT Provides: bundled(golang(github.com/go-chi/chi)) = 4.1.2+incompatible # MIT +Provides: bundled(golang(github.com/go-chi/chi/v5)) = 5.0.10 +# MIT Provides: bundled(golang(github.com/go-kit/kit)) = 0.10.0 # MIT Provides: bundled(golang(github.com/go-logfmt/logfmt)) = 0.5.1 @@ -100,13 +102,11 @@ Provides: bundled(golang(github.com/go-logr/logr)) = 1.2.4 # Apache-2.0 Provides: bundled(golang(github.com/go-logr/stdr)) = 1.2.2 # MPL-2.0 -Provides: bundled(golang(github.com/go-sql-driver/mysql)) = 1.7.0 +Provides: bundled(golang(github.com/go-sql-driver/mysql)) = 1.7.1 # MIT Provides: bundled(golang(github.com/go-task/slim-sprig)) = 52ccab3 # Apache-2.0 Provides: bundled(golang(github.com/golang/glog)) = 1.1.0 -# Apache-2.0 -Provides: bundled(golang(github.com/golang/mock)) = 1.6.0 # BSD-3-Clause Provides: bundled(golang(github.com/golang/protobuf)) = 1.5.3 # BSD-3-Clause @@ -114,17 +114,17 @@ Provides: bundled(golang(github.com/golang/snappy)) = 0.0.4 # Apache-2.0 Provides: bundled(golang(github.com/google/cel-go)) = 0.15.1 # Apache-2.0 -Provides: bundled(golang(github.com/google/certificate-transparency-go)) = 1.1.4 +Provides: bundled(golang(github.com/google/certificate-transparency-go)) = 1.1.6 # Apache-2.0 -Provides: bundled(golang(github.com/google/go-tpm)) = 0.3.3 +Provides: bundled(golang(github.com/google/go-tpm)) = 0.9.0 # Apache-2.0 Provides: bundled(golang(github.com/google/go-tspi)) = 0.3.0 # Apache-2.0 Provides: bundled(golang(github.com/google/pprof)) = 4bb14d4 # BSD-3-Clause -Provides: bundled(golang(github.com/google/uuid)) = 1.3.0 +Provides: bundled(golang(github.com/google/uuid)) = 1.3.1 # BSD-3-Clause -Provides: bundled(golang(github.com/grpc-ecosystem/grpc-gateway/v2)) = 2.7.0 +Provides: bundled(golang(github.com/grpc-ecosystem/grpc-gateway/v2)) = 2.15.2 # MIT Provides: bundled(golang(github.com/huandu/xstrings)) = 1.3.3 # BSD-3-Clause @@ -148,7 +148,7 @@ Provides: bundled(golang(github.com/jackc/pgtype)) = 1.14.0 # MIT Provides: bundled(golang(github.com/jackc/pgx/v4)) = 4.18.0 # BSD-3-Clause AND Apache-2.0 AND MIT -Provides: bundled(golang(github.com/klauspost/compress)) = 1.16.7 +Provides: bundled(golang(github.com/klauspost/compress)) = 1.17.0 # MIT Provides: bundled(golang(github.com/klauspost/cpuid/v2)) = 2.2.5 # MIT @@ -162,7 +162,7 @@ Provides: bundled(golang(github.com/mattn/go-colorable)) = 0.1.8 # MIT Provides: bundled(golang(github.com/mattn/go-isatty)) = 0.0.16 # Apache-2.0 -Provides: bundled(golang(github.com/matttproud/golang_protobuf_extensions)) = 1.0.1 +Provides: bundled(golang(github.com/matttproud/golang_protobuf_extensions)) = 1.0.4 # MIT Provides: bundled(golang(github.com/mgutz/ansi)) = d51e80e # Apache-2.0 @@ -184,19 +184,19 @@ Provides: bundled(golang(github.com/pkg/errors)) = 0.9.1 # BSD-3-Clause Provides: bundled(golang(github.com/pmezard/go-difflib)) = 1.0.0 # Apache-2.0 -Provides: bundled(golang(github.com/prometheus/client_golang)) = 1.14.0 +Provides: bundled(golang(github.com/prometheus/client_golang)) = 1.15.1 # Apache-2.0 -Provides: bundled(golang(github.com/prometheus/client_model)) = 0.3.0 +Provides: bundled(golang(github.com/prometheus/client_model)) = 0.4.0 # Apache-2.0 -Provides: bundled(golang(github.com/prometheus/common)) = 0.37.0 +Provides: bundled(golang(github.com/prometheus/common)) = 0.42.0 # Apache-2.0 -Provides: bundled(golang(github.com/prometheus/procfs)) = 0.8.0 +Provides: bundled(golang(github.com/prometheus/procfs)) = 0.9.0 # MIT Provides: bundled(golang(github.com/quic-go/qpack)) = 0.4.0 # BSD-3-Clause -Provides: bundled(golang(github.com/quic-go/qtls-go1-20)) = 0.3.1 +Provides: bundled(golang(github.com/quic-go/qtls-go1-20)) = 0.3.4 # MIT -Provides: bundled(golang(github.com/quic-go/quic-go)) = 0.37.5 +Provides: bundled(golang(github.com/quic-go/quic-go)) = 0.39.0 # MIT Provides: bundled(golang(github.com/rs/xid)) = 1.5.0 # BSD-2-Clause @@ -210,9 +210,9 @@ Provides: bundled(golang(github.com/sirupsen/logrus)) = 1.9.3 # MIT Provides: bundled(golang(github.com/slackhq/nebula)) = 1.6.1 # Apache-2.0 -Provides: bundled(golang(github.com/smallstep/certificates)) = 0.24.3-rc.5 +Provides: bundled(golang(github.com/smallstep/certificates)) = 0.25.0 # Apache-2.0 -Provides: bundled(golang(github.com/smallstep/go-attestation)) = e172914 +Provides: bundled(golang(github.com/smallstep/go-attestation)) = cf579e5 # Apache-2.0 Provides: bundled(golang(github.com/smallstep/nosql)) = 0.6.0 # Apache-2.0 @@ -228,13 +228,13 @@ Provides: bundled(golang(github.com/stoewer/go-strcase)) = 1.2.0 # MIT Provides: bundled(golang(github.com/stretchr/testify)) = 1.8.4 # BSD-3-Clause -Provides: bundled(golang(github.com/tailscale/tscert)) = 4e9cb4f +Provides: bundled(golang(github.com/tailscale/tscert)) = 28a91b6 # MIT Provides: bundled(golang(github.com/urfave/cli)) = 1.22.14 # MIT Provides: bundled(golang(github.com/x448/float16)) = 0.8.4 # MIT -Provides: bundled(golang(github.com/yuin/goldmark)) = 1.5.5 +Provides: bundled(golang(github.com/yuin/goldmark)) = 1.5.6 # MIT Provides: bundled(golang(github.com/yuin/goldmark-highlighting/v2)) = 37449ab # CC0-1.0 @@ -274,39 +274,41 @@ Provides: bundled(golang(go.opentelemetry.io/proto/otlp)) = 0.19.0 # Apache-2.0 AND BSD-2-Clause Provides: bundled(golang(go.step.sm/cli-utils)) = 0.8.0 # Apache-2.0 AND BSD-2-Clause -Provides: bundled(golang(go.step.sm/crypto)) = 0.33.0 +Provides: bundled(golang(go.step.sm/crypto)) = 0.35.1 # Apache-2.0 -Provides: bundled(golang(go.step.sm/linkedca)) = 0.20.0 +Provides: bundled(golang(go.step.sm/linkedca)) = 0.20.1 +# Apache-2.0 +Provides: bundled(golang(go.uber.org/mock)) = 0.3.0 # MIT Provides: bundled(golang(go.uber.org/multierr)) = 1.11.0 # MIT Provides: bundled(golang(go.uber.org/zap)) = 1.25.0 # BSD-3-Clause -Provides: bundled(golang(golang.org/x/crypto)) = 0.12.0 +Provides: bundled(golang(golang.org/x/crypto)) = 0.14.0 # BSD-3-Clause Provides: bundled(golang(golang.org/x/exp)) = 522b1b5 # BSD-3-Clause Provides: bundled(golang(golang.org/x/mod)) = 0.11.0 # BSD-3-Clause -Provides: bundled(golang(golang.org/x/net)) = 0.14.0 +Provides: bundled(golang(golang.org/x/net)) = 0.17.0 # BSD-3-Clause -Provides: bundled(golang(golang.org/x/sync)) = 0.3.0 +Provides: bundled(golang(golang.org/x/sync)) = 0.4.0 # BSD-3-Clause -Provides: bundled(golang(golang.org/x/sys)) = 0.11.0 +Provides: bundled(golang(golang.org/x/sys)) = 0.13.0 # BSD-3-Clause -Provides: bundled(golang(golang.org/x/term)) = 0.11.0 +Provides: bundled(golang(golang.org/x/term)) = 0.13.0 # BSD-3-Clause -Provides: bundled(golang(golang.org/x/text)) = 0.12.0 +Provides: bundled(golang(golang.org/x/text)) = 0.13.0 # BSD-3-Clause Provides: bundled(golang(golang.org/x/tools)) = 0.10.0 # Apache-2.0 -Provides: bundled(golang(google.golang.org/genproto)) = ccb25ca +Provides: bundled(golang(google.golang.org/genproto)) = 007df8e # Apache-2.0 -Provides: bundled(golang(google.golang.org/genproto/googleapis/api)) = ccb25ca +Provides: bundled(golang(google.golang.org/genproto/googleapis/api)) = f966b18 # Apache-2.0 -Provides: bundled(golang(google.golang.org/genproto/googleapis/rpc)) = 782d3b1 +Provides: bundled(golang(google.golang.org/genproto/googleapis/rpc)) = e6e6cda # Apache-2.0 -Provides: bundled(golang(google.golang.org/grpc)) = 1.56.2 +Provides: bundled(golang(google.golang.org/grpc)) = 1.58.2 # BSD-3-Clause Provides: bundled(golang(google.golang.org/protobuf)) = 1.31.0 # MIT @@ -466,6 +468,9 @@ fi %changelog +* Mon Oct 30 2023 Carl George - 2.7.5-1 +- Update to version 2.7.5 + * Thu Aug 17 2023 Carl George - 2.7.4-1 - Update to version 2.7.4, resolves rhbz#2232696 - Fix CVE-2023-3978, resolves rhbz#2229582 diff --git a/sources b/sources index d143483..0b27989 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (caddy-2.7.4-vendored.tar.gz) = 92eeba301a4b957a650fd29e5742b4031e6e73eecd4fe20dc7ebc0ae42a6835f34a85a06c06dabf2070a9be730ab95dd6d60b1e001a55230e6641c3d536443b5 +SHA512 (caddy-2.7.5-vendored.tar.gz) = 963c25c171d67e5f564615d3e86f6923fb349a3c5ee2d9a37d598e3f39afdc1f4323416a24acf5e889d20e9ee55d8f61bc44c34191877566a1b693162d419bd3 From c245f0080fc875ec2ef9870cb0051e2b9eda5c39 Mon Sep 17 00:00:00 2001 From: Carl George Date: Mon, 30 Oct 2023 14:12:51 -0500 Subject: [PATCH 55/79] Test page updates - Update poweredby logos - Add symlink for system_noindex_logo.png on EL9 - Symlink directly to fedora-testpage directory on Fedora --- caddy.spec | 9 ++++++++- poweredby-black.png | Bin 1769 -> 5500 bytes poweredby-white.png | Bin 1766 -> 4548 bytes 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/caddy.spec b/caddy.spec index 3aad98b..0315cf7 100644 --- a/caddy.spec +++ b/caddy.spec @@ -368,12 +368,16 @@ install -d -m 0750 %{buildroot}%{_sharedstatedir}/caddy # welcome page %if %{defined fedora} install -D -p -m 0644 %{S:30} %{buildroot}%{_datadir}/caddy/poweredby.png +ln -s ../fedora-testpage/index.html %{buildroot}%{_datadir}/caddy/index.html %else install -D -p -m 0644 %{S:31} %{buildroot}%{_datadir}/caddy/poweredby.png -%endif ln -s ../testpage/index.html %{buildroot}%{_datadir}/caddy/index.html +%endif install -d -m 0755 %{buildroot}%{_datadir}/caddy/icons ln -s ../../pixmaps/poweredby.png %{buildroot}%{_datadir}/caddy/icons/poweredby.png +%if %{defined rhel} && 0%{?rhel} >= 9 +ln -s ../pixmaps/system-noindex-logo.png %{buildroot}%{_datadir}/caddy/system_noindex_logo.png +%endif # shell completions install -d -m 0755 %{buildroot}%{_datadir}/bash-completion/completions @@ -470,6 +474,9 @@ fi %changelog * Mon Oct 30 2023 Carl George - 2.7.5-1 - Update to version 2.7.5 +- Update poweredby logos +- Add symlink for system_noindex_logo.png on EL9 +- Symlink directly to fedora-testpage directory on Fedora * Thu Aug 17 2023 Carl George - 2.7.4-1 - Update to version 2.7.4, resolves rhbz#2232696 diff --git a/poweredby-black.png b/poweredby-black.png index eb8e2843a42082ce2e6398893f1fd978893a8fe1..f0df626a82f033c6d86dc7b98598a06f7e29c80c 100644 GIT binary patch literal 5500 zcmV-?6@%)DP)f9sr?JOBl>P#-`NF+3#9ITKUmArR22_-LzDtXg}mZKcwB)jkNV z*HY9f0jl;|tF^7xs=W%nse)D|0S!I^Gm}IC5eQHf6%_^YATxX2KW0MXJTfOdDz^E3 z-+Y-_XYY0PjWbSIzef%E52m=dI5$5(zeh)zF=l5&L&L7U z)jev|sDqoDn(X$^wry)D6xz18dcCqohFLVbs$4~G0Y;+Suh_rb8^bzk&a&fTMqM?g zX4B8h8}?Mse;UDH@KRO%eUkVa;c)oDz18iyZU}JOKdb5okx1kVd#l$gUGg!DW>w{x zJZ=$@slaMWtkLT$#=Ww)jaWZ@+$#dF7S67kS~$CUN-Q_$#?4oaZr)qH-F&_f5z)kx z(sNWkXwHjAXr9yvG8MQxmXlMue)`@UWjhMGVMh5Kmd|>~-qp5X;M}Ff`$~5=2R5$j zP7DMB6@ftD3fFZn0gr}Rc*C;8EsZ`81VOK9te9}g{(7RV|H-&IRqMZPqYo6_xa9c# zagJ^dEQ~Q<5|KB7Ex<>?V6ZrAS6(!?>M(419vF&pUE_@M>$BCFST)hNxw-WMRi+?X z0+OScMvy1lEV+I2DK#HjLkJPK@1$oeAs*wKqd zPtMlp#u?+E7xaOc9a|YAy3xc;q+osj%|(?}-^fd$~(7UtsGOOI{Kb^?Rku5bhZ%AfJK4O};Q`DyDWFF$+zD=!tQ>JNc7 zz*e}Yc+seXJJUC~^4Z>soTUau_yxibfOi$SzhF-Fm%H@syE&j~XlQt|zP`S;Ju1)W zV_H_MLX}*BYu8syjAT<>{Pb}nz>as(Do?IIZTTh2KL<&5rW)Y3!B36y5g!BXXGFdO z+?+{gOnv7f46@M48>W{p1{gNy#d}*cy4F&D3jE#U_fAV`Y3UKF8dTL`#u%T77!g@z zS=P%dSFU_NTm55?J@)8mH0oNGH9%E!RW&9eTP(|}4~0VYs%rM6U4cNLuZSEE3=xrh zph-kl8)IrBkx16bi!5y(Zj1>6N2;nNBJZl|tC2|Lbv=M`Ak!LV(cG%TROP>bcXzhv zTrY}Z#yV9J@73nojz-y$K|S(s+tl20HP8=bGMyNvh!iVmV{7>{?XuO=$8ImItgg|2 zx(i*#b=|X7bs8`Uki@y-ZC520i>c!{&xy#~a5(%-$GRmYCB6K9|1?$oE>J8Yv|rD5 z9mW_O$9cEE zC=~iby7Fnea#hX&az%9Zdo#;-WIJiRk_<|`GX=T1D>D^aQobY#5=wk5=uD-7e*iMD zNA=it*}$8Z=L5$QKh`BmN=gPfjnLKey!&g`t_9Kzhd!ULArJ^0o8|lfIF2(k8jZdx zBEKWaD3chWs`tCD`#^DVajqBL`;+utxmsTX-C=3;ZqJ%T@)EI8G;VyEQK4DlH)?*T zDv=LF`NT5%P|@tFnF!l_D$`ULh;pUpwgDqYjvQ{=_TPycj2GVa`~A1He{dY$=mz;c)WwAycMIvEO*(jrqXYUC?>BWm(Sxw|7=35D1JEktM*PUC@1A zuU@^(XWgr(7-rd>EBv4*fZn&R;-rs1i$)dAs>&l*DiKaKmUT9&wyg>S-|f_q~kel;LftLvSZo}-f^4~ z5t*K**;`fhvPdNINJrgc#*E2tYHGR+xDm)n)27`-qtWX~?1`Byil_{L@Z1nWh>AB)B&ZJIvzZHUjKZ<;aT z)g1LbDrj)v&C3t*s&n<~)fWLLB#9es+b)enA`f&lN`QujhFy_JJ#u?+qTDs!{JAhBX3nTkx1lWpU*cANDfd6qS5Fj?H@#B2B{B+cWv7q9f?F9O4eOd zQ_~y{hi?**Q-F-AZ6imH{37tZWVx!|Gi1n+uO=HMKqL}bGi1n+(?#Sjne_fENqJ(b zScd?0+2+Da7L?>P_d4hf;9Q_rhbSUv@S@S3Iw&2=4osAdqO#ldjYA z+LB!F&0XU@D9Ec8yKR>PWW8|`(_KGG600%h+(;zycDDKnrl!$*dAf_+krgXetO^E$ zKUURbKm9wvZ_CQcdXT0I7m@F0(;W(hs$AE-9=JB$ai7n3j;iJ*iQn}5{nOfSxOB{) zKR@O;&NR!i#;WSz&f2iQNqJ&gqCG{Z%T}@Fpo6afzD+z*+*^Ezj*D9Mof~G1e{jQ3 z%TtUJKxblrCeRUHl$Ml~j3jkfX<>bReXW=J!C1 zJ+iH>Z8WLDUwtSPdd!RNmX?-VfV2+}Rh^VZ{OfiXqBA0q$WCL-|9WY|{v_3G8zUDtgMNSAkTOtQe| z^F8EMw=w2X+qQq>wfz1djbZ91YGrqPMers1>krpYu1V?cy29Y6M%{tPaI!eu18-iQ zZ-XDCuNS={G9r1{BN~ma=t9%d1rKj@p*}!Lx2&oIlL8|EL}Yarb*~}4VSXypTvb1) zt*zbaRcU>F{btv7n}8l!3-2dVx^h(-RVCBF^Jj{$r8RCSf~S?1Y5XjJkG!5wL{ct{ zh9JPp{`w)s{3e&m#f}`XvhzbJQsYDPQPq^lT||!dT0fy9 zZFyBq@x%8(cS_`J+xBMSW3(MPG!O`Qa(@8I%E}H0l5gPlw8i9yf~Vlu7?V=Yn9O#T zKJ88EGD_WprW4qJXH-P%S2>K7fxB9M(5YOR-Q6tiVb`v-7#a# z3u$DYbvusJ6F50Z+>}_NkgQuQ%kr$dt*tGktccVl{=S_g_cW}O;ik*zR;4veQR~Aa zXRX-d?tF0Nv%L!|tA2|yuUc(w>1H;%%z!yn0|dSV#H<{B)k~e6oSbS%xyjCOT{q~Z zeqCMNYrs26;$wor;OSoKuUWI^+mL<)p}xL;v#PG@C=-z~$8k>dq8qr3q^FvQJX>2^ z+or1N(gCmXlAKXgRFnr?o-8-UEKa=r)I&j42Rn|Fb#0caUXVt%HdFbuhPk8F)cEpt zbovj9X>6*`#0C@djq4~csH{FShQ9&i2f#}?&AA!V+PZ?RatR;;D>qzO?kSBdF{^V| zlGsw!dq<7xJV_aLr~TiTMt=Lqks}9oRyPm`3=@$#Sx%9X)FC2wmz9+bN>{iY$8kzU zB;DZpT>y1;byYxegg>%Jj~+LPWDaaaM0)q`JxAgrBpum!$RUS33lNLN(oI$Wwxpya zr<3-c2qdS*H4hs$tZRn(-pukH77R$154?GKeo?oaE6`Eri=E9vW!#CQa8C6^R9f3t zC>B&!pDA!Bsa;bO%F_rZ0S5snENyPl)4k?$CdM(R0&VLiFHgDi3M;FB1pFFkBW4ve z{(M|=_u46eKwz?nEF|fl1GK8@7{8h{)lpI*JZ?kE;53BFC~LKMRM$vjJS!Jq37*v_p5gN<>~JZoEeT<48ZY+AJbt zLZMK&U68mz9s$z%mTkcEz?#G!14jcV0V!R*syq(vyra>D+}~BCUiC@?l@G2^;h?bG$=P2^D z$?>1nm38Nx8D`Pks>9UCYrrAE-HjC!E=j8-3$E*4q^f_W3!6NM$o=7P_?wB0p-0jf zST+^|w%6dnm(Px0;_CPN{*cdaZuC6X6 zNO4{FI^ciyP;WFEjSg&RXvi33ce<|Jf`xjUymSb=BRl=H94S!w6LF(#iK*V;MPE9?;qbkV z<9rPKiKLm4OsMLGj^jM2stb#Yi_h!Xv*#axi#(q4xxBo*^IBV5kI$BL8;L}I<2cSg zMC6Y^ACLM08dddMkw|1&x`VZ~wI7ceGp2m!&Ygc0k(A)0GeqS7nwy)au3o)5?f7Ll z9KI$P47RB1b!1)%kckI6GfK#Ehpw*}zf|JcLw$i}TYP7>8zsPoE6cYvw&;Zd^@+A^ z-7vGf1wfTwit2nXuY?-_%BP~#f;rWfp_~>!#LUez$~(=v$wnj+dBX4a2Y}xJ*%BIB zRrOZjWq`G7*S3bk;cpSo2WQIH=z>f}*-j`F`jv>B(ms^rkyhKb zXJsptb+@;o*;Nmy$a$hXv0=u9v|U+2<s7GIXO9htF5ig zn8EM5?g&*Ko$yQji7fNFK7IPU&>kp2d?DDbUAsOtxV(M)_T~*6Hl)ldwUh7L((ySye-kNMw(9#7iuun*bC7{SvD~KNOMGEiElCuUfS#WkxC+30LPh%d$qP z>fu0dU>k5LNdcgU+z<+duFj@2>lQI8;s-F2lJwf)Z2DoM6W%>Ht!ge6m4mYB2Z)Is zYxeC}yXEBg($qn7tH)VJ<|o?so*Mg``+6th#09u7@#-?+aQHRgwQS`QLsp*W=OI2! z1%wi>eM&<^!w%rdeW^2%(EL*31%Tr?r;12LQqlKvb8{=b=*+$ip|B1Gfl&gIZZ{6m z-RWw(rwZ4d_HtLVZ~!Qrv-E6BxtI8G$VW!>^i37ro4S6U5E099oRoM#M6U7b-eivg zW4rSYhZR&-UzL2gXin8AAQ36+93;q0pGQC&bh-Rdo|bke5j<(`syyE$-h z9Oq)!<uwm`99Wcw}|;(-!$Wd4cYeF?B+k0 y{bHEibhEc~|CVGo2PEBw+06k-w_$d3K=S_x2j5m0dzJ(M0000t3 delta 1752 zcmV;}1}FLaD(MY2iBL{Q4GJ0x0000DNk~Le0001G0000W2nGNE01N515C8xG32;bR za{vGY(f|Mi(gF3`fYOmRCw~TZNklmV0{F&M$l@iF@69=jam}Xst`d%t0vWoRf|=r6$E_L0vZZh zOR=weuOHUg?VLILb-8Vc^!}5boISJFnzd)m%zDgW5|cQ<_z=dD=YPxz$a+pDYx#t= z>&3J1SuDe)m;wC_Opn6ruo8D*8+PLF_$59ely8zViC)YUbNgrd73!`|wwM z39rNxge9k74i@5K{2af)vk#E+4_7=BH{eP5Cyo&FUTTzKti@$GyyXB3J3Q~4sHTSy zHsL9q-}mFsma1G8{E9+&j@#IaWy)rIuF<5~$BY%G`s*v@3Y;D26L#*67qs+$5E%o_f_P)IHUAH7{J9YcjGUSFluYrCq zzMe5IZOd4LPh~Ri$8UwP?$SF6dvIbVV~*Y(JSL8pjTLgLj52_qmeB0RUql|Zt43Dg zQ{I)eFKL*El?m-VnA$+U7q?{tolsBS3P%b<+wa|6>roD z9Xog`uG4Iki?Y5^v2cz|XdWw4fsqnfg;5R@5oXbThw6OqDBXtsSOr}v9>^4!IUeR3 zJfoq1o;U)EaZ`u4DAQ?&C`*)~U!3n%M(G!caN1XwQ@x=?RvLYMG3z_MLe2*gni1g} zTcJ<41ApDomT^B}o$>{-ENlOGgPg;4ui(@ur)2Hx^oIC3a{rVX<;1M-nN2|2cB@3TaBdR*4NqG61G;d;EPr0?n3`&Ht* z>##zE-(^@Ya=N0l^iq*;q&xjgQPV2WI+`u=lz+`4mnd+oaLNHD1chE^zylAm{rF}5w1{DbDuyMGbG zdXud5Bi7;?QB=FHgk}`47b`7o-zJWqxgwufAflJD%sHL(Q%h*}i0brb@Rb^UbEC`= zVRKG%lW@dWh%4?YSye_E6xZWrJa4by88?QN->Wn|d+^po&bM0fZOPvAop8xGbof*D zo);uf)0<$nl~s42^1%}R?b_emwtvEq@G<#>RXwZqmQ-foI}Lo-hGwLa7bo=ZP<~N14d-;|kHKR)bT^7fX@j@}No!h{DSuCb`-JZ} zS0v5D_;*LfN|ETz)E&xRueV^D;yS!Ic|S@0yiDQ%W2$byvi6}>=g`BGOWNMA`{+97 zplWo8W4bspe}vbHqjb6OX@x;kogNpa64-iIm*Ssci5Rg|Na)Vs_(5ZIlVmjU} uDj&s>wM|4`6Dp@nV*j8|{22j$zvF-YL+~0*;r~Pc0000zvs^6g`lDZ5eZ2|L`1AwRzU~`YE@9T;;QSr*0xYzt8SGt4${em zpgL?+myMtI`l?#bK0CZCJ~P9fg|tQRlRvqtcQCA{xgsYEdL*z6WuXd79AzDj*14`^ zfpivJR~**4$d>H9tyN2}8qu)xUn9ewMynN5rcV#_tnM-jm8%4fN13gTKGfiBo3;A7 zleVOq-*rN$V_pse5y?XXi&vBlS>CFJ{IJOZI>d}^0k*Y)?7e|N)N2Jcwt-wp4nAcr%Wqw2{9}H(_AJbM!iLFMf%S!HZg3eQcZH?3OCs*}uE7=*^ zJ;Q)f;A-Gf@Tr)Ecg#J|(WWikE*)yIn_&N*&Zd`5q}Xe2vP*%SO(BA=QctCshqc^s#^& z7>XnH8gTcmE?B)dlMCI>p5kNv68HxA3K$ODl5{KoYU7q0O)2^3k2-g{ER|CBo;9#X z*a^&Khf;0=W&tyR+Q?XEM4vrm)}RroR$Egx^bJ8D4+p~UhiO{jhTRVfmUpc!Di58T zYHo(_6%PUnfjZz8Kocrv!K6127S$VoZ4T}w{}}y~##GW>WST;E0F=Lx)tJ9*#DbB_ zMl3jU`8#hFs_K1p_4nIN1s|(!Q>!pD~ zEC<@f75No#S0b5V4W5nA(?Lg6k1d%Ea9G8>hwHUzsiRyEyz1*KC#E}aG;kR9yKsR| zfVZ)2B^8HY+g%SV*&W6l_(hQ)x0UPa3>*g>3giJ>fhCy#m9lt|g1*>yJ_rkb*8uMV zACqE7{4ViS%%aJmZmRMNV9l0#o$N2d`)eRsN^2GH zSKz<#UorU!Fb)_AWO=;58TcD89!MHM#*l@r_Zm#uy;uy~0X&vM)~7Kto&o;N#~KQN znwYWCz@NPi_T0)iPJeGggf;{X5e(q~sE$NB*yiWr^#ak(fjGqV$h#4P-S(b8=D?cU>5O@Bvwj*e!!!^YM?(+0mv4eM=I_ zjqC(XrhJJ}p-#-6<|P%0tQX~5$JM8bCWXc$Yz(Sgu0lS_HNMwo^u@ORgM1$U1u!-0 z^?ATUBvzV4bOoNptZZxq4W^V&VpiNQ2Li7F(^4GQAD9E|pN8yzr}ZvKn-Qm&1MYt> z3v>wRBg;xp{APD7s%SzemmDcaIK_3GGf|y}Nb^b9gm7g|=?OE^5LpP!#rp)U2j0iF z+x@U)@7}=gG2aegD2bJFIq*-+x9kcW0~{Q4j04;YR1@zS+(KfdTozf|SC}6=2uNXV@k7#^o_z-5^K7A-q3GCnb~&Scj6 zR=i!M7qRdCS&5h*IJb-7%mcE*P2u4y z#}57itd732?1Xo-H8?}iqx0`tuwNQtF9L?djMZS4?Q!BQ!!}G=o0IszCf)+B!7R)S z;VFX9FFhqKNEXvj!ziJ479uA33%Ol?A~gn=X+> zQ^pW*D{F5WzB+c^XWNR`7vxq-pmE!eG2bZ_0{mypm`2w8g^&3FV?4&L!u#Y#^9k@f z%-TltE8rfikJ4)k|E&+%A>cO54e;VDAU9_0GtAFTRy7Mpju{N}O0kArN}R=XME4S5 zVXBGso%X&ODJJ6wolYytkq=Nfhy@lm-t zb)xR7R1?+Jff3WUS&_#a++0=Zrw*%7@l>p4#MQlUq%Wd1su{`HRwwc{&7FtT57SUzID*LLTdUM~&250Sp4aJcjDT96ljERfDVMSEG+_tIFJSMczE zY0L-jZ8;zBXn9GRvOmRJF=Lx8)?)#cUurSy8hhKucShV+u1bxnBuYH*R)X~nrYMrs zPl_hi&jRcB^NZJsNvGlhrWCPsqUHTG&7`9|;9WLtBL2LlE7xmI(%f`g6R(&OSc1xK zyHb)74mgJbNMheA7Ox;|uQWcg-eWACi~#J&J4WN+t+45~m3bY%$wPKJ3HC&DHnl=V ztBF(06=g%db{w}|-clRDJsv=jl|H9ULt^nT3uFFZ- z)|L(dl}iB;c)$9Z62EO^jachhG!9mxOxmOzL4ij+#;0MCbutbEDpDNd)ztAI)&-S} zWAIL{H-Fa<@ezK1tZI}juoZ00ePhN~U`h{GCXMADtVEiKpAz31S4X;vxpsWXX2+Ta zT9AL&g1n;g(7A;bp(*a7DWwgIrj)p!+`0{*a7tBCL3!oNVtKnB3RPR{_2i}FkNY;s zf_>5Z?pZk!$pxxPy7#k`6W=1&533v{^68ozCIIdx-ml8Xns!h0m@C-!J(tve-CwYp zd#vntuzG#05(TjCpE<-Q=ikGM2VnWri5{PKIhHH+Qv9x%VtZN3+t?A6ze&8+9DrHW z*v>7%EakJrXCda1qzaX=gI$Fsh2>SpH{YRHP+oa@0Pa_$8wz6oL0#EeIH~ewgcHTm zAShJT)$6IgdpT3kxV6I-m_y!(E2$b;WBC?qNS#T`U(PXDU*mJYTUf=TJGLzi!)}i1 zhi$pHV<#t?9@v(-2CmwSljfX>I8R_FHVnLrN&}(;i1Bk2dD+d*8kNp{=aB^a7@%?4 zhy^XSgrdozZtBWnEKT!ZP3Z}jdJ0L+MOgQDI*(p_6u2-l=NS?!SR!U)rNh}V<2L}4 zqF!H(ZL_U;EaW!q&PcC{)IM07-Lb8Z3)apz9Pc3IR^Y!{DYpsR84?EBN$)FnU}n#X z%Bv9PW*~sFFdUGxYOf!<6rgBoXkQxSPYUPQg(o4W-aTVQ>7e@Fvj>%g5w9Fx9D+1Q zcG_|rDNuO;Q_A|V>K%UMCE#Jq3O<1UeBlMyt*|q(E%eWrg8Sk1$Q(a`!5=Vp<1bjB zrC(|=i#s>L``-X15xHK$M>75wYhX!~zZ{3H$=_SyZ3&^MgcuHEkKC7F1MThBDILVtj2` zNvf`!R6GwHiQQ(9s-d9)^Dp0ydVMk05tQuaymeSd((o6+nOihy@dr-&AwkDR+S23W!5FwMd($LO2(^L`t4ZEzdjIiAvR*ZeQW@DC#l=| zQY)s4WC6I6q(&^dA+iZ?uT87EqeZ1tD)|6m354r{o0qOW>BB7mJttQdJFYw#S>IZ9 z0~hXsr*EvsQbAtnAU`aQ{G_6h^y>3qF3ksc7YKHi%~%(ETjFAh|5nu4DVSA{W-XQ_ zNlEHQT?@-10r)@x@p>AE=yprF-J&iV`F6TpH~iRvy z!EObPWgI@;o77QYczd*WSV4K^wXts(RfGnz{dNIu^?gD|O!zpva8l?tRHtKIJ*&jg z;VZ|M_-*RV(0;gt`0Cmx#1}gf;_Jb!h2@n`(|j9%>Z1aW5YRde%g+$G7U+PoA|Q=F zZq1#Qh2>SpgWgNzAx;XfWV_CVOK&Ll^E8YM?TZdrel)f~^K&ft^o6g#T9GTkOB&p! zE-Dlwa)H7HxDuTt_%bYVdQBQiDHCuCa;i#j^mo{kCji!>deh2=lD|f7qsZ|6<67dC zGP)||3*V2rmIi8&zn+(j^CCsgGvX3B080KHst7fSDhSKfEpe(n5wkgf{s*Ke2S1 z^2%PhjX6iEqrF6(12p0?IKoEPaaR!ze!Q}5NOh{`ZD#o4vP%>*Lx!Ct^S2~3v`aFI inW0^hQOpeOlK%&~b*57`5d@(C0000`tkx6rtnSVW12iJv?MkLLj z&FuMl767+Msz|y{#fg@r0g`T) zR7oD=E)-x_vVjKR8GlKSNa~Sc+bU_ZBrYzrt+x_(jqTNykcR zG_wH;OV81gZcFqjx+n536akn(Tf6}DF7ewBcrLMj63E?ffqj7^fs=t_fU+eji=#hq z9B@3)Khn*0u~%x~8jx@u2kal|<~goq?Txdj(*|Hol;|hh$$xPf&@Ds0A21F05ZDp* zu^m_hjHw~MtAUS!ozA}%cpDg<*p((5XauGJD--_|JAoy@sKl-+*~vJXooqo3Iq3%c z;CxmJ7#}6!3n259(jEYlfsK@-6_}O7(FD9(;=dD^PD!$XVM*eOumiY(jF}zrw*Uv1 zjQ{+Idy0TZBY)wf4oGx=V12~CJcaE)9qW`E7>L^mpm`GH8k*y(=7-6t9(EqAuv zBwbufKqbLWlk}>jV=cFX>WA{miVFnGHxkl5WbO+33CxtFh~Y{s*oUzE<9( z-G38wiguSkkW~Ft0=PZ4qWl>QiK3W?Lk^5?`X!g08@#IW=RgFQC)w5oI(_EdSvJQ)=~5X5tfs;$j5p@VP$KMz5*OdD1X{) zaq=C6%HSkm9AW8rEr+AY#dB`Pz&{6O0oMa}5DHwGu|#9Loa##wz-r*`gli_SB8Mxt z>PL1t0pPyeL_6p1z+*WCMOccP{lJYi`n?{to1%Dbruy2OhYIkDZ)c3{cG@O93#+5J zijqAe!@smh6_cDsI4_n3S0SfxMSr;3{+Z+V4=|fhZ1QNz;2BSL;VQ)<;6Q3Cv0g;= z@)YA0!j-+IdN!ew7*B@R^6bmrt~W_KN8tuISmB1ZUeZsJ7Mt0c68}Mxu8?%H!lv`P zq&1S}o7poWJhbDl48UTA9HltV%wEs4??N4*`e?b9j7_`?djQ}B+$jS%k?IrGj3WO|^N*|00000NkvXXu0mjfk#|9J From 122f439fd02f5b57a297f2a7a0827bf2e3b0180f Mon Sep 17 00:00:00 2001 From: Neal Gompa Date: Thu, 7 Dec 2023 22:04:06 -0500 Subject: [PATCH 56/79] Include the source tarball creation script in the SRPM --- caddy.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/caddy.spec b/caddy.spec index 0315cf7..58291ca 100644 --- a/caddy.spec +++ b/caddy.spec @@ -19,7 +19,7 @@ ExclusiveArch: %{golang_arches} BuildRequires: go-rpm-macros %endif -# see create-vendor-tarball.sh in this distgit repo +# see create-vendor-tarball.sh for how to create this Source0: caddy-%{version}-vendored.tar.gz # based on reference files upstream @@ -31,6 +31,9 @@ Source22: caddy.sysusers Source30: poweredby-white.png Source31: poweredby-black.png +# Script that creates vendor tarball +Source100: create-vendor-tarball.sh + # downstream only patch to disable commands that can alter the binary Patch: 0001-Disable-commands-that-can-alter-the-binary.patch From bda70b644a5e362bcddcdd4c87c8b33f82db0d41 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 19 Jan 2024 14:56:46 +0000 Subject: [PATCH 57/79] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- caddy.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/caddy.spec b/caddy.spec index 58291ca..7967616 100644 --- a/caddy.spec +++ b/caddy.spec @@ -2,7 +2,7 @@ Name: caddy Version: 2.7.5 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Web server with automatic HTTPS # main source code is Apache-2.0 # see comments above provides tags for bundled license breakdown @@ -475,6 +475,9 @@ fi %changelog +* Fri Jan 19 2024 Fedora Release Engineering - 2.7.5-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Mon Oct 30 2023 Carl George - 2.7.5-1 - Update to version 2.7.5 - Update poweredby logos From ba87b04ada7fffd42aa1e84f28ff722031c0a887 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Tue, 23 Jan 2024 01:05:58 +0000 Subject: [PATCH 58/79] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild --- caddy.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/caddy.spec b/caddy.spec index 7967616..ea42d75 100644 --- a/caddy.spec +++ b/caddy.spec @@ -2,7 +2,7 @@ Name: caddy Version: 2.7.5 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Web server with automatic HTTPS # main source code is Apache-2.0 # see comments above provides tags for bundled license breakdown @@ -475,6 +475,9 @@ fi %changelog +* Tue Jan 23 2024 Fedora Release Engineering - 2.7.5-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + * Fri Jan 19 2024 Fedora Release Engineering - 2.7.5-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From 25a5895d9439d34842d278cf1bc412c0f6b97816 Mon Sep 17 00:00:00 2001 From: Carl George Date: Fri, 9 Feb 2024 03:14:32 -0600 Subject: [PATCH 59/79] Use {bash,zsh,fish}_completions_dir macros --- caddy.spec | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/caddy.spec b/caddy.spec index ea42d75..0564629 100644 --- a/caddy.spec +++ b/caddy.spec @@ -383,12 +383,12 @@ ln -s ../pixmaps/system-noindex-logo.png %{buildroot}%{_datadir}/caddy/system_no %endif # shell completions -install -d -m 0755 %{buildroot}%{_datadir}/bash-completion/completions -./bin/caddy completion bash > %{buildroot}%{_datadir}/bash-completion/completions/caddy -install -d -m 0755 %{buildroot}%{_datadir}/zsh/site-functions -./bin/caddy completion zsh > %{buildroot}%{_datadir}/zsh/site-functions/_caddy -install -d -m 0755 %{buildroot}%{_datadir}/fish/vendor_completions.d -./bin/caddy completion fish > %{buildroot}%{_datadir}/fish/vendor_completions.d/caddy.fish +install -d -m 0755 %{buildroot}%{bash_completions_dir} +./bin/caddy completion bash > %{buildroot}%{bash_completions_dir}/caddy +install -d -m 0755 %{buildroot}%{zsh_completions_dir} +./bin/caddy completion zsh > %{buildroot}%{zsh_completions_dir}/_caddy +install -d -m 0755 %{buildroot}%{fish_completions_dir} +./bin/caddy completion fish > %{buildroot}%{fish_completions_dir}/caddy.fish %check @@ -469,9 +469,9 @@ fi %config(noreplace) %{_sysconfdir}/caddy/Caddyfile %dir %{_sysconfdir}/caddy/Caddyfile.d %attr(0750,caddy,caddy) %dir %{_sharedstatedir}/caddy -%{_datadir}/bash-completion/completions/caddy -%{_datadir}/zsh/site-functions/_caddy -%{_datadir}/fish/vendor_completions.d/caddy.fish +%{bash_completions_dir}/caddy +%{zsh_completions_dir}/_caddy +%{fish_completions_dir}/caddy.fish %changelog From 194cfb28624a6616d7081cfe984c301ccbf48fd4 Mon Sep 17 00:00:00 2001 From: Carl George Date: Fri, 9 Feb 2024 03:16:51 -0600 Subject: [PATCH 60/79] Set ExclusiveArch to golang_arches_future on epel9 --- caddy.spec | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/caddy.spec b/caddy.spec index 0564629..94aced6 100644 --- a/caddy.spec +++ b/caddy.spec @@ -9,13 +9,10 @@ Summary: Web server with automatic HTTPS License: Apache-2.0 AND BSD-2-Clause AND BSD-3-Clause AND MIT AND BSD-2-Clause-Views AND CC0-1.0 AND ISC AND MPL-2.0 URL: https://caddyserver.com -%if %{defined fedora} -ExclusiveArch: %{golang_arches_future} -%else +%if %{defined el8} ExclusiveArch: %{golang_arches} -%endif - -%if %{undefined el8} +%else +ExclusiveArch: %{golang_arches_future} BuildRequires: go-rpm-macros %endif From 93da17829e18f85f4e1389753eb53916baafec02 Mon Sep 17 00:00:00 2001 From: Carl George Date: Fri, 9 Feb 2024 03:24:26 -0600 Subject: [PATCH 61/79] Update to version 2.7.6 rhbz#2253698 - Includes fix for CVE-2023-45142 rhbz#2246587 --- caddy.spec | 55 +++++++++++++++++++++++++++--------------------------- sources | 2 +- 2 files changed, 29 insertions(+), 28 deletions(-) diff --git a/caddy.spec b/caddy.spec index 94aced6..f0e2aee 100644 --- a/caddy.spec +++ b/caddy.spec @@ -1,8 +1,8 @@ %global goipath github.com/caddyserver/caddy Name: caddy -Version: 2.7.5 -Release: 3%{?dist} +Version: 2.7.6 +Release: 1%{?dist} Summary: Web server with automatic HTTPS # main source code is Apache-2.0 # see comments above provides tags for bundled license breakdown @@ -60,7 +60,7 @@ Provides: bundled(golang(github.com/aryann/difflib)) = ff5ff6d # MIT Provides: bundled(golang(github.com/beorn7/perks)) = 1.0.1 # Apache-2.0 -Provides: bundled(golang(github.com/caddyserver/certmagic)) = 0.19.2 +Provides: bundled(golang(github.com/caddyserver/certmagic)) = 0.20.0 # MIT Provides: bundled(golang(github.com/cenkalti/backoff/v4)) = 4.2.1 # MIT @@ -90,15 +90,13 @@ Provides: bundled(golang(github.com/felixge/httpsnoop)) = 1.0.3 # MIT Provides: bundled(golang(github.com/fxamacker/cbor/v2)) = 2.5.0 # MIT -Provides: bundled(golang(github.com/go-chi/chi)) = 4.1.2+incompatible -# MIT Provides: bundled(golang(github.com/go-chi/chi/v5)) = 5.0.10 # MIT Provides: bundled(golang(github.com/go-kit/kit)) = 0.10.0 # MIT Provides: bundled(golang(github.com/go-logfmt/logfmt)) = 0.5.1 # Apache-2.0 -Provides: bundled(golang(github.com/go-logr/logr)) = 1.2.4 +Provides: bundled(golang(github.com/go-logr/logr)) = 1.3.0 # Apache-2.0 Provides: bundled(golang(github.com/go-logr/stdr)) = 1.2.2 # MPL-2.0 @@ -106,7 +104,7 @@ Provides: bundled(golang(github.com/go-sql-driver/mysql)) = 1.7.1 # MIT Provides: bundled(golang(github.com/go-task/slim-sprig)) = 52ccab3 # Apache-2.0 -Provides: bundled(golang(github.com/golang/glog)) = 1.1.0 +Provides: bundled(golang(github.com/golang/glog)) = 1.1.2 # BSD-3-Clause Provides: bundled(golang(github.com/golang/protobuf)) = 1.5.3 # BSD-3-Clause @@ -124,7 +122,7 @@ Provides: bundled(golang(github.com/google/pprof)) = 4bb14d4 # BSD-3-Clause Provides: bundled(golang(github.com/google/uuid)) = 1.3.1 # BSD-3-Clause -Provides: bundled(golang(github.com/grpc-ecosystem/grpc-gateway/v2)) = 2.15.2 +Provides: bundled(golang(github.com/grpc-ecosystem/grpc-gateway/v2)) = 2.18.0 # MIT Provides: bundled(golang(github.com/huandu/xstrings)) = 1.3.3 # BSD-3-Clause @@ -194,9 +192,9 @@ Provides: bundled(golang(github.com/prometheus/procfs)) = 0.9.0 # MIT Provides: bundled(golang(github.com/quic-go/qpack)) = 0.4.0 # BSD-3-Clause -Provides: bundled(golang(github.com/quic-go/qtls-go1-20)) = 0.3.4 +Provides: bundled(golang(github.com/quic-go/qtls-go1-20)) = 0.4.1 # MIT -Provides: bundled(golang(github.com/quic-go/quic-go)) = 0.39.0 +Provides: bundled(golang(github.com/quic-go/quic-go)) = 0.40.0 # MIT Provides: bundled(golang(github.com/rs/xid)) = 1.5.0 # BSD-2-Clause @@ -244,7 +242,7 @@ Provides: bundled(golang(go.etcd.io/bbolt)) = 1.3.7 # MIT Provides: bundled(golang(go.mozilla.org/pkcs7)) = 33d0574 # Apache-2.0 -Provides: bundled(golang(go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp)) = 0.42.0 +Provides: bundled(golang(go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp)) = 0.45.0 # Apache-2.0 Provides: bundled(golang(go.opentelemetry.io/contrib/propagators/autoprop)) = 0.42.0 # Apache-2.0 @@ -256,21 +254,19 @@ Provides: bundled(golang(go.opentelemetry.io/contrib/propagators/jaeger)) # Apache-2.0 Provides: bundled(golang(go.opentelemetry.io/contrib/propagators/ot)) = 1.17.0 # Apache-2.0 -Provides: bundled(golang(go.opentelemetry.io/otel)) = 1.16.0 +Provides: bundled(golang(go.opentelemetry.io/otel)) = 1.21.0 # Apache-2.0 -Provides: bundled(golang(go.opentelemetry.io/otel/exporters/otlp/internal/retry)) = 1.16.0 +Provides: bundled(golang(go.opentelemetry.io/otel/exporters/otlp/otlptrace)) = 1.21.0 # Apache-2.0 -Provides: bundled(golang(go.opentelemetry.io/otel/exporters/otlp/otlptrace)) = 1.16.0 +Provides: bundled(golang(go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc)) = 1.21.0 # Apache-2.0 -Provides: bundled(golang(go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc)) = 1.16.0 +Provides: bundled(golang(go.opentelemetry.io/otel/metric)) = 1.21.0 # Apache-2.0 -Provides: bundled(golang(go.opentelemetry.io/otel/metric)) = 1.16.0 +Provides: bundled(golang(go.opentelemetry.io/otel/sdk)) = 1.21.0 # Apache-2.0 -Provides: bundled(golang(go.opentelemetry.io/otel/sdk)) = 1.16.0 +Provides: bundled(golang(go.opentelemetry.io/otel/trace)) = 1.21.0 # Apache-2.0 -Provides: bundled(golang(go.opentelemetry.io/otel/trace)) = 1.16.0 -# Apache-2.0 -Provides: bundled(golang(go.opentelemetry.io/proto/otlp)) = 0.19.0 +Provides: bundled(golang(go.opentelemetry.io/proto/otlp)) = 1.0.0 # Apache-2.0 AND BSD-2-Clause Provides: bundled(golang(go.step.sm/cli-utils)) = 0.8.0 # Apache-2.0 AND BSD-2-Clause @@ -294,7 +290,7 @@ Provides: bundled(golang(golang.org/x/net)) = 0.17.0 # BSD-3-Clause Provides: bundled(golang(golang.org/x/sync)) = 0.4.0 # BSD-3-Clause -Provides: bundled(golang(golang.org/x/sys)) = 0.13.0 +Provides: bundled(golang(golang.org/x/sys)) = 0.14.0 # BSD-3-Clause Provides: bundled(golang(golang.org/x/term)) = 0.13.0 # BSD-3-Clause @@ -302,13 +298,11 @@ Provides: bundled(golang(golang.org/x/text)) = 0.13.0 # BSD-3-Clause Provides: bundled(golang(golang.org/x/tools)) = 0.10.0 # Apache-2.0 -Provides: bundled(golang(google.golang.org/genproto)) = 007df8e +Provides: bundled(golang(google.golang.org/genproto/googleapis/api)) = 49dd2c1 # Apache-2.0 -Provides: bundled(golang(google.golang.org/genproto/googleapis/api)) = f966b18 +Provides: bundled(golang(google.golang.org/genproto/googleapis/rpc)) = 49dd2c1 # Apache-2.0 -Provides: bundled(golang(google.golang.org/genproto/googleapis/rpc)) = e6e6cda -# Apache-2.0 -Provides: bundled(golang(google.golang.org/grpc)) = 1.58.2 +Provides: bundled(golang(google.golang.org/grpc)) = 1.59.0 # BSD-3-Clause Provides: bundled(golang(google.golang.org/protobuf)) = 1.31.0 # MIT @@ -328,7 +322,7 @@ Provides: webserver %description -Caddy is the web server with automatic HTTPS. +Caddy is an extensible server platform that uses TLS by default. %prep @@ -392,6 +386,9 @@ install -d -m 0755 %{buildroot}%{fish_completions_dir} # ensure that the version was embedded correctly [[ "$(./bin/caddy version)" == "v%{version}" ]] || exit 1 +# some tests fail in mock for unknown reasons +%global gotestflags %{gotestflags} -skip 'TestACMEServerDirectory|TestHTTPRedirectWrapperWithLargeUpload' + # run the upstream tests export GOPATH=$PWD cd src/%{goipath} @@ -472,6 +469,10 @@ fi %changelog +* Fri Feb 09 2024 Carl George - 2.7.6-1 +- Update to version 2.7.6 rhbz#2253698 +- Includes fix for CVE-2023-45142 rhbz#2246587 + * Tue Jan 23 2024 Fedora Release Engineering - 2.7.5-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild diff --git a/sources b/sources index 0b27989..56548e2 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (caddy-2.7.5-vendored.tar.gz) = 963c25c171d67e5f564615d3e86f6923fb349a3c5ee2d9a37d598e3f39afdc1f4323416a24acf5e889d20e9ee55d8f61bc44c34191877566a1b693162d419bd3 +SHA512 (caddy-2.7.6-vendored.tar.gz) = de21b1b59e20ce54a8d39f6035a7d931f2ee54cd6d47b9f88f0b5b43550ec3bfd49403061d06c9dbffd6c614b257bfb9841581e00fe5ffba14caba48d2753c31 From 343b0c4c2444d463474d758adf21f587b0385359 Mon Sep 17 00:00:00 2001 From: Maxwell G Date: Sun, 11 Feb 2024 21:41:15 +0000 Subject: [PATCH 62/79] Rebuild for golang 1.22.0 --- caddy.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/caddy.spec b/caddy.spec index f0e2aee..468f148 100644 --- a/caddy.spec +++ b/caddy.spec @@ -2,7 +2,7 @@ Name: caddy Version: 2.7.6 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Web server with automatic HTTPS # main source code is Apache-2.0 # see comments above provides tags for bundled license breakdown @@ -469,6 +469,9 @@ fi %changelog +* Sun Feb 11 2024 Maxwell G - 2.7.6-2 +- Rebuild for golang 1.22.0 + * Fri Feb 09 2024 Carl George - 2.7.6-1 - Update to version 2.7.6 rhbz#2253698 - Includes fix for CVE-2023-45142 rhbz#2246587 From db85180819e77a5780e2d0ae050c3b8ab954820e Mon Sep 17 00:00:00 2001 From: Carl George Date: Fri, 5 Jul 2024 19:04:22 -0500 Subject: [PATCH 63/79] Update to version 2.8.4 rhbz#2278549 - Resolves CVE-2023-49295 rhbz#2257829 - Resolves CVE-2024-27304 rhbz#2268278 - Resolves CVE-2024-27289 rhbz#2268468 - Resolves CVE-2024-28180 rhbz#2268877 - Resolves CVE-2024-22189 rhbz#2273517 --- ...e-commands-that-can-alter-the-binary.patch | 6 +- ...hat-fail-in-an-RPM-build-environment.patch | 189 ++++++++++++++++++ caddy.spec | 183 +++++++++-------- sources | 2 +- 4 files changed, 292 insertions(+), 88 deletions(-) create mode 100644 0002-Skip-ACME-integration-tests-that-fail-in-an-RPM-build-environment.patch diff --git a/0001-Disable-commands-that-can-alter-the-binary.patch b/0001-Disable-commands-that-can-alter-the-binary.patch index 07f25a5..f733ed0 100644 --- a/0001-Disable-commands-that-can-alter-the-binary.patch +++ b/0001-Disable-commands-that-can-alter-the-binary.patch @@ -1,7 +1,7 @@ -From 4f771cd0f5f1a1a66bc142a98d3356296fa656a5 Mon Sep 17 00:00:00 2001 +From 0ccec11094eeb39666cb3395a40cc425c5f38107 Mon Sep 17 00:00:00 2001 From: Carl George Date: Wed, 16 Feb 2022 11:45:03 -0600 -Subject: [PATCH] Disable commands that can alter the binary +Subject: [PATCH 1/2] Disable commands that can alter the binary --- cmd/commands.go | 44 -------------------------------------------- @@ -63,5 +63,5 @@ index e5e1265e..972d24dc 100644 Name: "manpage", Usage: "--directory ", -- -2.41.0 +2.45.2 diff --git a/0002-Skip-ACME-integration-tests-that-fail-in-an-RPM-build-environment.patch b/0002-Skip-ACME-integration-tests-that-fail-in-an-RPM-build-environment.patch new file mode 100644 index 0000000..3749dab --- /dev/null +++ b/0002-Skip-ACME-integration-tests-that-fail-in-an-RPM-build-environment.patch @@ -0,0 +1,189 @@ +From 181946293299d605d287e0c650e89cd9ace4222b Mon Sep 17 00:00:00 2001 +From: Carl George +Date: Thu, 30 May 2024 21:48:09 -0500 +Subject: [PATCH 2/2] Skip ACME integration tests that fail in an RPM build + environment + +--- + caddytest/integration/acme_test.go | 7 +++++++ + caddytest/integration/acmeserver_test.go | 10 ++++++++++ + caddytest/integration/caddyfile_test.go | 7 +++++++ + caddytest/integration/handler_test.go | 4 ++++ + caddytest/integration/leafcertloaders_test.go | 4 ++++ + caddytest/integration/listener_test.go | 4 ++++ + 6 files changed, 36 insertions(+) + +diff --git a/caddytest/integration/acme_test.go b/caddytest/integration/acme_test.go +index ceacd1db..af087a27 100644 +--- a/caddytest/integration/acme_test.go ++++ b/caddytest/integration/acme_test.go +@@ -8,6 +8,7 @@ import ( + "fmt" + "net" + "net/http" ++ "os" + "strings" + "testing" + +@@ -23,6 +24,9 @@ const acmeChallengePort = 9081 + + // Test the basic functionality of Caddy's ACME server + func TestACMEServerWithDefaults(t *testing.T) { ++ if os.Getenv("RPM_BUILD_ROOT") != "" { ++ t.SkipNow() ++ } + ctx := context.Background() + logger, err := zap.NewDevelopment() + if err != nil { +@@ -94,6 +98,9 @@ func TestACMEServerWithDefaults(t *testing.T) { + } + + func TestACMEServerWithMismatchedChallenges(t *testing.T) { ++ if os.Getenv("RPM_BUILD_ROOT") != "" { ++ t.SkipNow() ++ } + ctx := context.Background() + logger := caddy.Log().Named("acmez") + +diff --git a/caddytest/integration/acmeserver_test.go b/caddytest/integration/acmeserver_test.go +index 22b716f8..df418741 100644 +--- a/caddytest/integration/acmeserver_test.go ++++ b/caddytest/integration/acmeserver_test.go +@@ -5,6 +5,7 @@ import ( + "crypto/ecdsa" + "crypto/elliptic" + "crypto/rand" ++ "os" + "strings" + "testing" + +@@ -15,6 +16,9 @@ import ( + ) + + func TestACMEServerDirectory(t *testing.T) { ++ if os.Getenv("RPM_BUILD_ROOT") != "" { ++ t.SkipNow() ++ } + tester := caddytest.NewTester(t) + tester.InitServer(` + { +@@ -41,6 +45,9 @@ func TestACMEServerDirectory(t *testing.T) { + } + + func TestACMEServerAllowPolicy(t *testing.T) { ++ if os.Getenv("RPM_BUILD_ROOT") != "" { ++ t.SkipNow() ++ } + tester := caddytest.NewTester(t) + tester.InitServer(` + { +@@ -131,6 +138,9 @@ func TestACMEServerAllowPolicy(t *testing.T) { + } + + func TestACMEServerDenyPolicy(t *testing.T) { ++ if os.Getenv("RPM_BUILD_ROOT") != "" { ++ t.SkipNow() ++ } + tester := caddytest.NewTester(t) + tester.InitServer(` + { +diff --git a/caddytest/integration/caddyfile_test.go b/caddytest/integration/caddyfile_test.go +index 11ffc08a..25aed784 100644 +--- a/caddytest/integration/caddyfile_test.go ++++ b/caddytest/integration/caddyfile_test.go +@@ -3,6 +3,7 @@ package integration + import ( + "net/http" + "net/url" ++ "os" + "testing" + + "github.com/caddyserver/caddy/v2/caddytest" +@@ -73,6 +74,9 @@ func TestDuplicateHosts(t *testing.T) { + } + + func TestReadCookie(t *testing.T) { ++ if os.Getenv("RPM_BUILD_ROOT") != "" { ++ t.SkipNow() ++ } + localhost, _ := url.Parse("http://localhost") + cookie := http.Cookie{ + Name: "clientname", +@@ -106,6 +110,9 @@ func TestReadCookie(t *testing.T) { + } + + func TestReplIndex(t *testing.T) { ++ if os.Getenv("RPM_BUILD_ROOT") != "" { ++ t.SkipNow() ++ } + tester := caddytest.NewTester(t) + tester.InitServer(` + { +diff --git a/caddytest/integration/handler_test.go b/caddytest/integration/handler_test.go +index afc700b0..93d07bb9 100644 +--- a/caddytest/integration/handler_test.go ++++ b/caddytest/integration/handler_test.go +@@ -3,6 +3,7 @@ package integration + import ( + "bytes" + "net/http" ++ "os" + "testing" + + "github.com/caddyserver/caddy/v2/caddytest" +@@ -32,6 +33,9 @@ func TestBrowse(t *testing.T) { + } + + func TestRespondWithJSON(t *testing.T) { ++ if os.Getenv("RPM_BUILD_ROOT") != "" { ++ t.SkipNow() ++ } + tester := caddytest.NewTester(t) + tester.InitServer(` + { +diff --git a/caddytest/integration/leafcertloaders_test.go b/caddytest/integration/leafcertloaders_test.go +index 4399902e..de8539dd 100644 +--- a/caddytest/integration/leafcertloaders_test.go ++++ b/caddytest/integration/leafcertloaders_test.go +@@ -1,12 +1,16 @@ + package integration + + import ( ++ "os" + "testing" + + "github.com/caddyserver/caddy/v2/caddytest" + ) + + func TestLeafCertLoaders(t *testing.T) { ++ if os.Getenv("RPM_BUILD_ROOT") != "" { ++ t.SkipNow() ++ } + tester := caddytest.NewTester(t) + tester.InitServer(` + { +diff --git a/caddytest/integration/listener_test.go b/caddytest/integration/listener_test.go +index 30642b1a..f1d8d07e 100644 +--- a/caddytest/integration/listener_test.go ++++ b/caddytest/integration/listener_test.go +@@ -6,6 +6,7 @@ import ( + "math/rand" + "net" + "net/http" ++ "os" + "strings" + "testing" + +@@ -51,6 +52,9 @@ func setupListenerWrapperTest(t *testing.T, handlerFunc http.HandlerFunc) *caddy + } + + func TestHTTPRedirectWrapperWithLargeUpload(t *testing.T) { ++ if os.Getenv("RPM_BUILD_ROOT") != "" { ++ t.SkipNow() ++ } + const uploadSize = (1024 * 1024) + 1 // 1 MB + 1 byte + // 1 more than an MB + body := make([]byte, uploadSize) +-- +2.45.2 + diff --git a/caddy.spec b/caddy.spec index 468f148..7e85999 100644 --- a/caddy.spec +++ b/caddy.spec @@ -1,8 +1,8 @@ %global goipath github.com/caddyserver/caddy Name: caddy -Version: 2.7.6 -Release: 2%{?dist} +Version: 2.8.4 +Release: 1%{?dist} Summary: Web server with automatic HTTPS # main source code is Apache-2.0 # see comments above provides tags for bundled license breakdown @@ -33,12 +33,14 @@ Source100: create-vendor-tarball.sh # downstream only patch to disable commands that can alter the binary Patch: 0001-Disable-commands-that-can-alter-the-binary.patch +# downstream only patch to skip ACME integration tests +Patch: 0002-Skip-ACME-integration-tests-that-fail-in-an-RPM-build-environment.patch -# https://github.com/caddyserver/caddy/commit/f45a6de20dd19e82e58c85b37e03957b2203b544 -BuildRequires: golang >= 1.20 +# https://github.com/caddyserver/caddy/commit/697cc593a17fcb39087161b058fc1dba8b767060 +BuildRequires: golang >= 1.21 # BSD-3-Clause -Provides: bundled(golang(filippo.io/edwards25519)) = 1.0.0 +Provides: bundled(golang(filippo.io/edwards25519)) = 1.1.0 # MIT AND CC0-1.0 Provides: bundled(golang(github.com/AndreasBriese/bbloom)) = 46b345b # MIT @@ -52,15 +54,17 @@ Provides: bundled(golang(github.com/Masterminds/sprig/v3)) = 3.2.3 # MIT Provides: bundled(golang(github.com/Microsoft/go-winio)) = 0.6.0 # MIT -Provides: bundled(golang(github.com/alecthomas/chroma/v2)) = 2.9.1 +Provides: bundled(golang(github.com/alecthomas/chroma/v2)) = 2.13.0 # BSD-3-Clause -Provides: bundled(golang(github.com/antlr/antlr4/runtime/Go/antlr/v4)) = 8188dc5 +Provides: bundled(golang(github.com/antlr4-go/antlr/v4)) = 4.13.0 # MIT Provides: bundled(golang(github.com/aryann/difflib)) = ff5ff6d # MIT Provides: bundled(golang(github.com/beorn7/perks)) = 1.0.1 # Apache-2.0 -Provides: bundled(golang(github.com/caddyserver/certmagic)) = 0.20.0 +Provides: bundled(golang(github.com/caddyserver/certmagic)) = 0.21.3 +# MIT +Provides: bundled(golang(github.com/caddyserver/zerossl)) = 0.1.3 # MIT Provides: bundled(golang(github.com/cenkalti/backoff/v4)) = 4.2.1 # MIT @@ -70,7 +74,7 @@ Provides: bundled(golang(github.com/cespare/xxhash/v2)) = 2.2.0 # MIT Provides: bundled(golang(github.com/chzyer/readline)) = 1.5.1 # MIT -Provides: bundled(golang(github.com/cpuguy83/go-md2man/v2)) = 2.0.2 +Provides: bundled(golang(github.com/cpuguy83/go-md2man/v2)) = 2.0.3 # ISC Provides: bundled(golang(github.com/davecgh/go-spew)) = 1.1.1 # Apache-2.0 @@ -82,21 +86,25 @@ Provides: bundled(golang(github.com/dgraph-io/ristretto)) = 0.1.0 # MIT Provides: bundled(golang(github.com/dgryski/go-farm)) = a6ae236 # MIT -Provides: bundled(golang(github.com/dlclark/regexp2)) = 1.10.0 +Provides: bundled(golang(github.com/dlclark/regexp2)) = 1.11.0 # MIT Provides: bundled(golang(github.com/dustin/go-humanize)) = 1.0.1 # MIT -Provides: bundled(golang(github.com/felixge/httpsnoop)) = 1.0.3 +Provides: bundled(golang(github.com/felixge/httpsnoop)) = 1.0.4 # MIT -Provides: bundled(golang(github.com/fxamacker/cbor/v2)) = 2.5.0 +Provides: bundled(golang(github.com/fxamacker/cbor/v2)) = 2.6.0 # MIT -Provides: bundled(golang(github.com/go-chi/chi/v5)) = 5.0.10 +Provides: bundled(golang(github.com/go-chi/chi/v5)) = 5.0.12 +# Apache-2.0 AND BSD-3-Clause +Provides: bundled(golang(github.com/go-jose/go-jose/v3)) = 3.0.3 # MIT -Provides: bundled(golang(github.com/go-kit/kit)) = 0.10.0 +Provides: bundled(golang(github.com/go-kit/kit)) = 0.13.0 # MIT -Provides: bundled(golang(github.com/go-logfmt/logfmt)) = 0.5.1 +Provides: bundled(golang(github.com/go-kit/log)) = 0.2.1 +# MIT +Provides: bundled(golang(github.com/go-logfmt/logfmt)) = 0.6.0 # Apache-2.0 -Provides: bundled(golang(github.com/go-logr/logr)) = 1.3.0 +Provides: bundled(golang(github.com/go-logr/logr)) = 1.4.1 # Apache-2.0 Provides: bundled(golang(github.com/go-logr/stdr)) = 1.2.2 # MPL-2.0 @@ -104,23 +112,23 @@ Provides: bundled(golang(github.com/go-sql-driver/mysql)) = 1.7.1 # MIT Provides: bundled(golang(github.com/go-task/slim-sprig)) = 52ccab3 # Apache-2.0 -Provides: bundled(golang(github.com/golang/glog)) = 1.1.2 +Provides: bundled(golang(github.com/golang/glog)) = 1.2.0 # BSD-3-Clause -Provides: bundled(golang(github.com/golang/protobuf)) = 1.5.3 +Provides: bundled(golang(github.com/golang/protobuf)) = 1.5.4 # BSD-3-Clause Provides: bundled(golang(github.com/golang/snappy)) = 0.0.4 # Apache-2.0 -Provides: bundled(golang(github.com/google/cel-go)) = 0.15.1 +Provides: bundled(golang(github.com/google/cel-go)) = 0.20.1 # Apache-2.0 -Provides: bundled(golang(github.com/google/certificate-transparency-go)) = 1.1.6 +Provides: bundled(golang(github.com/google/certificate-transparency-go)) = 74a5dd3 # Apache-2.0 Provides: bundled(golang(github.com/google/go-tpm)) = 0.9.0 # Apache-2.0 Provides: bundled(golang(github.com/google/go-tspi)) = 0.3.0 # Apache-2.0 -Provides: bundled(golang(github.com/google/pprof)) = 4bb14d4 +Provides: bundled(golang(github.com/google/pprof)) = ec68065 # BSD-3-Clause -Provides: bundled(golang(github.com/google/uuid)) = 1.3.1 +Provides: bundled(golang(github.com/google/uuid)) = 1.6.0 # BSD-3-Clause Provides: bundled(golang(github.com/grpc-ecosystem/grpc-gateway/v2)) = 2.18.0 # MIT @@ -132,43 +140,37 @@ Provides: bundled(golang(github.com/inconshreveable/mousetrap)) = 1.1.0 # MIT Provides: bundled(golang(github.com/jackc/chunkreader/v2)) = 2.0.1 # MIT -Provides: bundled(golang(github.com/jackc/pgconn)) = 1.14.0 +Provides: bundled(golang(github.com/jackc/pgconn)) = 1.14.3 # MIT Provides: bundled(golang(github.com/jackc/pgio)) = 1.0.0 # MIT Provides: bundled(golang(github.com/jackc/pgpassfile)) = 1.0.0 # MIT -Provides: bundled(golang(github.com/jackc/pgproto3/v2)) = 2.3.2 +Provides: bundled(golang(github.com/jackc/pgproto3/v2)) = 2.3.3 # MIT Provides: bundled(golang(github.com/jackc/pgservicefile)) = 091c0ba # MIT Provides: bundled(golang(github.com/jackc/pgtype)) = 1.14.0 # MIT -Provides: bundled(golang(github.com/jackc/pgx/v4)) = 4.18.0 +Provides: bundled(golang(github.com/jackc/pgx/v4)) = 4.18.3 # BSD-3-Clause AND Apache-2.0 AND MIT -Provides: bundled(golang(github.com/klauspost/compress)) = 1.17.0 +Provides: bundled(golang(github.com/klauspost/compress)) = 1.17.8 # MIT -Provides: bundled(golang(github.com/klauspost/cpuid/v2)) = 2.2.5 +Provides: bundled(golang(github.com/klauspost/cpuid/v2)) = 2.2.7 # MIT -Provides: bundled(golang(github.com/libdns/libdns)) = 0.2.1 +Provides: bundled(golang(github.com/libdns/libdns)) = 0.2.2 # BSD-3-Clause Provides: bundled(golang(github.com/manifoldco/promptui)) = 0.9.0 -# Apache-2.0 -Provides: bundled(golang(github.com/mastercactapus/proxyprotocol)) = 0.0.4 # MIT -Provides: bundled(golang(github.com/mattn/go-colorable)) = 0.1.8 +Provides: bundled(golang(github.com/mattn/go-colorable)) = 0.1.13 # MIT -Provides: bundled(golang(github.com/mattn/go-isatty)) = 0.0.16 -# Apache-2.0 -Provides: bundled(golang(github.com/matttproud/golang_protobuf_extensions)) = 1.0.4 +Provides: bundled(golang(github.com/mattn/go-isatty)) = 0.0.20 # MIT Provides: bundled(golang(github.com/mgutz/ansi)) = d51e80e -# Apache-2.0 -Provides: bundled(golang(github.com/mholt/acmez)) = 1.2.0 -# MIT -Provides: bundled(golang(github.com/micromdm/scep/v2)) = 2.1.0 +# Apache-2.0 AND BSD-3-Clause +Provides: bundled(golang(github.com/mholt/acmez/v2)) = 2.0.1 # BSD-3-Clause -Provides: bundled(golang(github.com/miekg/dns)) = 1.1.55 +Provides: bundled(golang(github.com/miekg/dns)) = 1.1.59 # MIT Provides: bundled(golang(github.com/mitchellh/copystructure)) = 1.2.0 # MIT @@ -176,25 +178,25 @@ Provides: bundled(golang(github.com/mitchellh/go-ps)) = 1.0.0 # MIT Provides: bundled(golang(github.com/mitchellh/reflectwalk)) = 1.0.2 # MIT -Provides: bundled(golang(github.com/onsi/ginkgo/v2)) = 2.9.5 +Provides: bundled(golang(github.com/onsi/ginkgo/v2)) = 2.13.2 +# Apache-2.0 +Provides: bundled(golang(github.com/pires/go-proxyproto)) = 0.7.0 # BSD-2-Clause Provides: bundled(golang(github.com/pkg/errors)) = 0.9.1 # BSD-3-Clause Provides: bundled(golang(github.com/pmezard/go-difflib)) = 1.0.0 # Apache-2.0 -Provides: bundled(golang(github.com/prometheus/client_golang)) = 1.15.1 +Provides: bundled(golang(github.com/prometheus/client_golang)) = 1.19.1 # Apache-2.0 -Provides: bundled(golang(github.com/prometheus/client_model)) = 0.4.0 +Provides: bundled(golang(github.com/prometheus/client_model)) = 0.5.0 # Apache-2.0 -Provides: bundled(golang(github.com/prometheus/common)) = 0.42.0 +Provides: bundled(golang(github.com/prometheus/common)) = 0.48.0 # Apache-2.0 -Provides: bundled(golang(github.com/prometheus/procfs)) = 0.9.0 +Provides: bundled(golang(github.com/prometheus/procfs)) = 0.12.0 # MIT Provides: bundled(golang(github.com/quic-go/qpack)) = 0.4.0 -# BSD-3-Clause -Provides: bundled(golang(github.com/quic-go/qtls-go1-20)) = 0.4.1 # MIT -Provides: bundled(golang(github.com/quic-go/quic-go)) = 0.40.0 +Provides: bundled(golang(github.com/quic-go/quic-go)) = 0.44.0 # MIT Provides: bundled(golang(github.com/rs/xid)) = 1.5.0 # BSD-2-Clause @@ -208,41 +210,43 @@ Provides: bundled(golang(github.com/sirupsen/logrus)) = 1.9.3 # MIT Provides: bundled(golang(github.com/slackhq/nebula)) = 1.6.1 # Apache-2.0 -Provides: bundled(golang(github.com/smallstep/certificates)) = 0.25.0 +Provides: bundled(golang(github.com/smallstep/certificates)) = 0.26.1 # Apache-2.0 -Provides: bundled(golang(github.com/smallstep/go-attestation)) = cf579e5 +Provides: bundled(golang(github.com/smallstep/go-attestation)) = 413678f # Apache-2.0 -Provides: bundled(golang(github.com/smallstep/nosql)) = 0.6.0 +Provides: bundled(golang(github.com/smallstep/nosql)) = 0.6.1 +# MIT +Provides: bundled(golang(github.com/smallstep/pkcs7)) = 3b98ecc +# MIT +Provides: bundled(golang(github.com/smallstep/scep)) = aee96d7 # Apache-2.0 -Provides: bundled(golang(github.com/smallstep/truststore)) = 0.12.1 +Provides: bundled(golang(github.com/smallstep/truststore)) = 0.13.0 # MIT Provides: bundled(golang(github.com/spf13/cast)) = 1.4.1 # Apache-2.0 -Provides: bundled(golang(github.com/spf13/cobra)) = 1.7.0 +Provides: bundled(golang(github.com/spf13/cobra)) = 1.8.0 # BSD-3-Clause Provides: bundled(golang(github.com/spf13/pflag)) = 1.0.5 # MIT Provides: bundled(golang(github.com/stoewer/go-strcase)) = 1.2.0 # MIT -Provides: bundled(golang(github.com/stretchr/testify)) = 1.8.4 +Provides: bundled(golang(github.com/stretchr/testify)) = 1.9.0 # BSD-3-Clause -Provides: bundled(golang(github.com/tailscale/tscert)) = 28a91b6 +Provides: bundled(golang(github.com/tailscale/tscert)) = bbccfbf # MIT Provides: bundled(golang(github.com/urfave/cli)) = 1.22.14 # MIT Provides: bundled(golang(github.com/x448/float16)) = 0.8.4 # MIT -Provides: bundled(golang(github.com/yuin/goldmark)) = 1.5.6 +Provides: bundled(golang(github.com/yuin/goldmark)) = 1.7.1 # MIT Provides: bundled(golang(github.com/yuin/goldmark-highlighting/v2)) = 37449ab # CC0-1.0 Provides: bundled(golang(github.com/zeebo/blake3)) = 0.2.3 # MIT -Provides: bundled(golang(go.etcd.io/bbolt)) = 1.3.7 -# MIT -Provides: bundled(golang(go.mozilla.org/pkcs7)) = 33d0574 +Provides: bundled(golang(go.etcd.io/bbolt)) = 1.3.9 # Apache-2.0 -Provides: bundled(golang(go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp)) = 0.45.0 +Provides: bundled(golang(go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp)) = 0.49.0 # Apache-2.0 Provides: bundled(golang(go.opentelemetry.io/contrib/propagators/autoprop)) = 0.42.0 # Apache-2.0 @@ -254,61 +258,67 @@ Provides: bundled(golang(go.opentelemetry.io/contrib/propagators/jaeger)) # Apache-2.0 Provides: bundled(golang(go.opentelemetry.io/contrib/propagators/ot)) = 1.17.0 # Apache-2.0 -Provides: bundled(golang(go.opentelemetry.io/otel)) = 1.21.0 +Provides: bundled(golang(go.opentelemetry.io/otel)) = 1.24.0 # Apache-2.0 Provides: bundled(golang(go.opentelemetry.io/otel/exporters/otlp/otlptrace)) = 1.21.0 # Apache-2.0 Provides: bundled(golang(go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc)) = 1.21.0 # Apache-2.0 -Provides: bundled(golang(go.opentelemetry.io/otel/metric)) = 1.21.0 +Provides: bundled(golang(go.opentelemetry.io/otel/metric)) = 1.24.0 # Apache-2.0 Provides: bundled(golang(go.opentelemetry.io/otel/sdk)) = 1.21.0 # Apache-2.0 -Provides: bundled(golang(go.opentelemetry.io/otel/trace)) = 1.21.0 +Provides: bundled(golang(go.opentelemetry.io/otel/trace)) = 1.24.0 # Apache-2.0 Provides: bundled(golang(go.opentelemetry.io/proto/otlp)) = 1.0.0 # Apache-2.0 AND BSD-2-Clause -Provides: bundled(golang(go.step.sm/cli-utils)) = 0.8.0 +Provides: bundled(golang(go.step.sm/cli-utils)) = 0.9.0 # Apache-2.0 AND BSD-2-Clause -Provides: bundled(golang(go.step.sm/crypto)) = 0.35.1 +Provides: bundled(golang(go.step.sm/crypto)) = 0.45.0 # Apache-2.0 Provides: bundled(golang(go.step.sm/linkedca)) = 0.20.1 +# MIT +Provides: bundled(golang(go.uber.org/automaxprocs)) = 1.5.3 # Apache-2.0 -Provides: bundled(golang(go.uber.org/mock)) = 0.3.0 +Provides: bundled(golang(go.uber.org/mock)) = 0.4.0 # MIT Provides: bundled(golang(go.uber.org/multierr)) = 1.11.0 # MIT -Provides: bundled(golang(go.uber.org/zap)) = 1.25.0 +Provides: bundled(golang(go.uber.org/zap)) = 1.27.0 +# MIT +Provides: bundled(golang(go.uber.org/zap/exp)) = 0.2.0 # BSD-3-Clause -Provides: bundled(golang(golang.org/x/crypto)) = 0.14.0 +Provides: bundled(golang(golang.org/x/crypto)) = 0.23.0 # BSD-3-Clause -Provides: bundled(golang(golang.org/x/exp)) = 522b1b5 +Provides: bundled(golang(golang.org/x/crypto/x509roots/fallback)) = 67b1361 # BSD-3-Clause -Provides: bundled(golang(golang.org/x/mod)) = 0.11.0 +Provides: bundled(golang(golang.org/x/exp)) = 9bf2ced # BSD-3-Clause -Provides: bundled(golang(golang.org/x/net)) = 0.17.0 +Provides: bundled(golang(golang.org/x/mod)) = 0.17.0 # BSD-3-Clause -Provides: bundled(golang(golang.org/x/sync)) = 0.4.0 +Provides: bundled(golang(golang.org/x/net)) = 0.25.0 # BSD-3-Clause -Provides: bundled(golang(golang.org/x/sys)) = 0.14.0 +Provides: bundled(golang(golang.org/x/sync)) = 0.7.0 # BSD-3-Clause -Provides: bundled(golang(golang.org/x/term)) = 0.13.0 +Provides: bundled(golang(golang.org/x/sys)) = 0.20.0 # BSD-3-Clause -Provides: bundled(golang(golang.org/x/text)) = 0.13.0 +Provides: bundled(golang(golang.org/x/term)) = 0.20.0 # BSD-3-Clause -Provides: bundled(golang(golang.org/x/tools)) = 0.10.0 +Provides: bundled(golang(golang.org/x/text)) = 0.15.0 +# BSD-3-Clause +Provides: bundled(golang(golang.org/x/time)) = 0.5.0 +# BSD-3-Clause +Provides: bundled(golang(golang.org/x/tools)) = 0.21.0 # Apache-2.0 -Provides: bundled(golang(google.golang.org/genproto/googleapis/api)) = 49dd2c1 +Provides: bundled(golang(google.golang.org/genproto/googleapis/api)) = b8a5c65 # Apache-2.0 -Provides: bundled(golang(google.golang.org/genproto/googleapis/rpc)) = 49dd2c1 +Provides: bundled(golang(google.golang.org/genproto/googleapis/rpc)) = 8cf5692 # Apache-2.0 -Provides: bundled(golang(google.golang.org/grpc)) = 1.59.0 +Provides: bundled(golang(google.golang.org/grpc)) = 1.63.2 # BSD-3-Clause -Provides: bundled(golang(google.golang.org/protobuf)) = 1.31.0 +Provides: bundled(golang(google.golang.org/protobuf)) = 1.34.1 # MIT Provides: bundled(golang(gopkg.in/natefinch/lumberjack.v2)) = 2.2.1 -# Apache-2.0 AND BSD-3-Clause -Provides: bundled(golang(gopkg.in/square/go-jose.v2)) = 2.6.0 # Apache-2.0 AND MIT Provides: bundled(golang(gopkg.in/yaml.v3)) = 3.0.1 # BSD-2-Clause-Views AND BSD-3-Clause @@ -386,9 +396,6 @@ install -d -m 0755 %{buildroot}%{fish_completions_dir} # ensure that the version was embedded correctly [[ "$(./bin/caddy version)" == "v%{version}" ]] || exit 1 -# some tests fail in mock for unknown reasons -%global gotestflags %{gotestflags} -skip 'TestACMEServerDirectory|TestHTTPRedirectWrapperWithLargeUpload' - # run the upstream tests export GOPATH=$PWD cd src/%{goipath} @@ -469,6 +476,14 @@ fi %changelog +* Fri Jul 05 2024 Carl George - 2.8.4-1 +- Update to version 2.8.4 rhbz#2278549 +- Resolves CVE-2023-49295 rhbz#2257829 +- Resolves CVE-2024-27304 rhbz#2268278 +- Resolves CVE-2024-27289 rhbz#2268468 +- Resolves CVE-2024-28180 rhbz#2268877 +- Resolves CVE-2024-22189 rhbz#2273517 + * Sun Feb 11 2024 Maxwell G - 2.7.6-2 - Rebuild for golang 1.22.0 diff --git a/sources b/sources index 56548e2..aa0786d 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (caddy-2.7.6-vendored.tar.gz) = de21b1b59e20ce54a8d39f6035a7d931f2ee54cd6d47b9f88f0b5b43550ec3bfd49403061d06c9dbffd6c614b257bfb9841581e00fe5ffba14caba48d2753c31 +SHA512 (caddy-2.8.4-vendored.tar.gz) = 4519da995327c1b5adc006267f352acf9452df1002c6545565a6679795e8dff162b6b702f218d805b25930461ec938cbd67b7e2a33111a9a96a3ea6d798cccf6 From 78fd2309e3315d055c21a51657ad7508132cfda1 Mon Sep 17 00:00:00 2001 From: Carl George Date: Fri, 5 Jul 2024 19:05:44 -0500 Subject: [PATCH 64/79] Remove LimitNPROC from systemd unit files https://github.com/caddyserver/dist/issues/107 --- caddy-api.service | 1 - caddy.service | 1 - caddy.spec | 1 + 3 files changed, 1 insertion(+), 2 deletions(-) diff --git a/caddy-api.service b/caddy-api.service index bf60c0a..255a289 100644 --- a/caddy-api.service +++ b/caddy-api.service @@ -19,7 +19,6 @@ Group=caddy ExecStart=/usr/bin/caddy run --environ --resume TimeoutStopSec=5s LimitNOFILE=1048576 -LimitNPROC=512 PrivateTmp=true ProtectHome=true ProtectSystem=full diff --git a/caddy.service b/caddy.service index f2f75cb..c6b6851 100644 --- a/caddy.service +++ b/caddy.service @@ -22,7 +22,6 @@ ExecStart=/usr/bin/caddy run --environ --config /etc/caddy/Caddyfile ExecReload=/usr/bin/caddy reload --config /etc/caddy/Caddyfile TimeoutStopSec=5s LimitNOFILE=1048576 -LimitNPROC=512 PrivateTmp=true ProtectHome=true ProtectSystem=full diff --git a/caddy.spec b/caddy.spec index 7e85999..f965007 100644 --- a/caddy.spec +++ b/caddy.spec @@ -483,6 +483,7 @@ fi - Resolves CVE-2024-27289 rhbz#2268468 - Resolves CVE-2024-28180 rhbz#2268877 - Resolves CVE-2024-22189 rhbz#2273517 +- Remove LimitNPROC from systemd unit files * Sun Feb 11 2024 Maxwell G - 2.7.6-2 - Rebuild for golang 1.22.0 From 74bfbd277597ce2afc91f690886a197091a94caa Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 17 Jul 2024 18:50:47 +0000 Subject: [PATCH 65/79] Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild --- caddy.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/caddy.spec b/caddy.spec index f965007..f6f3c1a 100644 --- a/caddy.spec +++ b/caddy.spec @@ -2,7 +2,7 @@ Name: caddy Version: 2.8.4 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Web server with automatic HTTPS # main source code is Apache-2.0 # see comments above provides tags for bundled license breakdown @@ -476,6 +476,9 @@ fi %changelog +* Wed Jul 17 2024 Fedora Release Engineering - 2.8.4-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + * Fri Jul 05 2024 Carl George - 2.8.4-1 - Update to version 2.8.4 rhbz#2278549 - Resolves CVE-2023-49295 rhbz#2257829 From 3da83887d45ed76761729532f46d191a25dc9d08 Mon Sep 17 00:00:00 2001 From: Carl George Date: Sat, 9 Nov 2024 02:57:22 -0600 Subject: [PATCH 66/79] Update to version 2.9.0 rhbz#2316289 --- ...e-commands-that-can-alter-the-binary.patch | 25 ++-- ...hat-fail-in-an-RPM-build-environment.patch | 26 ++-- caddy.spec | 117 +++++++++--------- sources | 2 +- 4 files changed, 88 insertions(+), 82 deletions(-) diff --git a/0001-Disable-commands-that-can-alter-the-binary.patch b/0001-Disable-commands-that-can-alter-the-binary.patch index f733ed0..6f1671b 100644 --- a/0001-Disable-commands-that-can-alter-the-binary.patch +++ b/0001-Disable-commands-that-can-alter-the-binary.patch @@ -1,17 +1,17 @@ -From 0ccec11094eeb39666cb3395a40cc425c5f38107 Mon Sep 17 00:00:00 2001 +From e2f7bc1fb84f8611562ef4275bfbda55b77100a7 Mon Sep 17 00:00:00 2001 From: Carl George Date: Wed, 16 Feb 2022 11:45:03 -0600 Subject: [PATCH 1/2] Disable commands that can alter the binary --- - cmd/commands.go | 44 -------------------------------------------- - 1 file changed, 44 deletions(-) + cmd/commands.go | 45 --------------------------------------------- + 1 file changed, 45 deletions(-) diff --git a/cmd/commands.go b/cmd/commands.go -index e5e1265e..972d24dc 100644 +index 259dd358..31b85a18 100644 --- a/cmd/commands.go +++ b/cmd/commands.go -@@ -394,50 +394,6 @@ is always printed to stdout. +@@ -395,51 +395,6 @@ is always printed to stdout. }, }) @@ -30,12 +30,13 @@ index e5e1265e..972d24dc 100644 - - RegisterCommand(Command{ - Name: "add-package", -- Usage: "", +- Usage: "", - Short: "Adds Caddy packages (EXPERIMENTAL)", - Long: ` -Downloads an updated Caddy binary with the specified packages (module/plugin) --added. Retains existing packages. Returns an error if the any of packages are --already included. EXPERIMENTAL: May be changed or removed. +-added, with an optional version specified (e.g., "package@version"). Retains +-existing packages. Returns an error if any of the specified packages are already +-included. EXPERIMENTAL: May be changed or removed. -`, - CobraFunc: func(cmd *cobra.Command) { - cmd.Flags().BoolP("keep-backup", "k", false, "Keep the backed up binary, instead of deleting it") @@ -59,9 +60,9 @@ index e5e1265e..972d24dc 100644 - }, - }) - - RegisterCommand(Command{ - Name: "manpage", - Usage: "--directory ", + defaultFactory.Use(func(rootCmd *cobra.Command) { + rootCmd.AddCommand(caddyCmdToCobra(Command{ + Name: "manpage", -- -2.45.2 +2.47.1 diff --git a/0002-Skip-ACME-integration-tests-that-fail-in-an-RPM-build-environment.patch b/0002-Skip-ACME-integration-tests-that-fail-in-an-RPM-build-environment.patch index 3749dab..57758b0 100644 --- a/0002-Skip-ACME-integration-tests-that-fail-in-an-RPM-build-environment.patch +++ b/0002-Skip-ACME-integration-tests-that-fail-in-an-RPM-build-environment.patch @@ -1,4 +1,4 @@ -From 181946293299d605d287e0c650e89cd9ace4222b Mon Sep 17 00:00:00 2001 +From bd8f9d326f50a62cabf01a1de06c082cfbe8e4d1 Mon Sep 17 00:00:00 2001 From: Carl George Date: Thu, 30 May 2024 21:48:09 -0500 Subject: [PATCH 2/2] Skip ACME integration tests that fail in an RPM build @@ -14,18 +14,18 @@ Subject: [PATCH 2/2] Skip ACME integration tests that fail in an RPM build 6 files changed, 36 insertions(+) diff --git a/caddytest/integration/acme_test.go b/caddytest/integration/acme_test.go -index ceacd1db..af087a27 100644 +index d7e4c296..203dd9bc 100644 --- a/caddytest/integration/acme_test.go +++ b/caddytest/integration/acme_test.go -@@ -8,6 +8,7 @@ import ( - "fmt" +@@ -9,6 +9,7 @@ import ( + "log/slog" "net" "net/http" + "os" "strings" "testing" -@@ -23,6 +24,9 @@ const acmeChallengePort = 9081 +@@ -25,6 +26,9 @@ const acmeChallengePort = 9081 // Test the basic functionality of Caddy's ACME server func TestACMEServerWithDefaults(t *testing.T) { @@ -35,7 +35,7 @@ index ceacd1db..af087a27 100644 ctx := context.Background() logger, err := zap.NewDevelopment() if err != nil { -@@ -94,6 +98,9 @@ func TestACMEServerWithDefaults(t *testing.T) { +@@ -96,6 +100,9 @@ func TestACMEServerWithDefaults(t *testing.T) { } func TestACMEServerWithMismatchedChallenges(t *testing.T) { @@ -46,18 +46,18 @@ index ceacd1db..af087a27 100644 logger := caddy.Log().Named("acmez") diff --git a/caddytest/integration/acmeserver_test.go b/caddytest/integration/acmeserver_test.go -index 22b716f8..df418741 100644 +index ca5845f8..6bc13fed 100644 --- a/caddytest/integration/acmeserver_test.go +++ b/caddytest/integration/acmeserver_test.go -@@ -5,6 +5,7 @@ import ( - "crypto/ecdsa" +@@ -6,6 +6,7 @@ import ( "crypto/elliptic" "crypto/rand" + "log/slog" + "os" "strings" "testing" -@@ -15,6 +16,9 @@ import ( +@@ -17,6 +18,9 @@ import ( ) func TestACMEServerDirectory(t *testing.T) { @@ -67,7 +67,7 @@ index 22b716f8..df418741 100644 tester := caddytest.NewTester(t) tester.InitServer(` { -@@ -41,6 +45,9 @@ func TestACMEServerDirectory(t *testing.T) { +@@ -43,6 +47,9 @@ func TestACMEServerDirectory(t *testing.T) { } func TestACMEServerAllowPolicy(t *testing.T) { @@ -77,7 +77,7 @@ index 22b716f8..df418741 100644 tester := caddytest.NewTester(t) tester.InitServer(` { -@@ -131,6 +138,9 @@ func TestACMEServerAllowPolicy(t *testing.T) { +@@ -133,6 +140,9 @@ func TestACMEServerAllowPolicy(t *testing.T) { } func TestACMEServerDenyPolicy(t *testing.T) { @@ -185,5 +185,5 @@ index 30642b1a..f1d8d07e 100644 // 1 more than an MB body := make([]byte, uploadSize) -- -2.45.2 +2.47.1 diff --git a/caddy.spec b/caddy.spec index f6f3c1a..9c5b910 100644 --- a/caddy.spec +++ b/caddy.spec @@ -1,8 +1,8 @@ %global goipath github.com/caddyserver/caddy Name: caddy -Version: 2.8.4 -Release: 2%{?dist} +Version: 2.9.0 +Release: 1%{?dist} Summary: Web server with automatic HTTPS # main source code is Apache-2.0 # see comments above provides tags for bundled license breakdown @@ -36,25 +36,27 @@ Patch: 0001-Disable-commands-that-can-alter-the-binary.patch # downstream only patch to skip ACME integration tests Patch: 0002-Skip-ACME-integration-tests-that-fail-in-an-RPM-build-environment.patch -# https://github.com/caddyserver/caddy/commit/697cc593a17fcb39087161b058fc1dba8b767060 -BuildRequires: golang >= 1.21 +# https://github.com/caddyserver/caddy/commit/2028da4e74cd41f0f7f94222c6599da1a371d4b8 +BuildRequires: golang >= 1.22.3 +# BSD-3-Clause +Provides: bundled(golang(dario.cat/mergo)) = 1.0.1 # BSD-3-Clause Provides: bundled(golang(filippo.io/edwards25519)) = 1.1.0 # MIT AND CC0-1.0 Provides: bundled(golang(github.com/AndreasBriese/bbloom)) = 46b345b # MIT -Provides: bundled(golang(github.com/BurntSushi/toml)) = 1.3.2 +Provides: bundled(golang(github.com/BurntSushi/toml)) = 1.4.0 # Apache-2.0 Provides: bundled(golang(github.com/Masterminds/goutils)) = 1.1.1 # MIT -Provides: bundled(golang(github.com/Masterminds/semver/v3)) = 3.2.0 +Provides: bundled(golang(github.com/Masterminds/semver/v3)) = 3.3.0 # MIT -Provides: bundled(golang(github.com/Masterminds/sprig/v3)) = 3.2.3 +Provides: bundled(golang(github.com/Masterminds/sprig/v3)) = 3.3.0 # MIT Provides: bundled(golang(github.com/Microsoft/go-winio)) = 0.6.0 # MIT -Provides: bundled(golang(github.com/alecthomas/chroma/v2)) = 2.13.0 +Provides: bundled(golang(github.com/alecthomas/chroma/v2)) = 2.14.0 # BSD-3-Clause Provides: bundled(golang(github.com/antlr4-go/antlr/v4)) = 4.13.0 # MIT @@ -62,19 +64,19 @@ Provides: bundled(golang(github.com/aryann/difflib)) = ff5ff6d # MIT Provides: bundled(golang(github.com/beorn7/perks)) = 1.0.1 # Apache-2.0 -Provides: bundled(golang(github.com/caddyserver/certmagic)) = 0.21.3 +Provides: bundled(golang(github.com/caddyserver/certmagic)) = 0.21.5 # MIT Provides: bundled(golang(github.com/caddyserver/zerossl)) = 0.1.3 # MIT -Provides: bundled(golang(github.com/cenkalti/backoff/v4)) = 4.2.1 +Provides: bundled(golang(github.com/cenkalti/backoff/v4)) = 4.3.0 # MIT Provides: bundled(golang(github.com/cespare/xxhash)) = 1.1.0 # MIT -Provides: bundled(golang(github.com/cespare/xxhash/v2)) = 2.2.0 +Provides: bundled(golang(github.com/cespare/xxhash/v2)) = 2.3.0 # MIT Provides: bundled(golang(github.com/chzyer/readline)) = 1.5.1 # MIT -Provides: bundled(golang(github.com/cpuguy83/go-md2man/v2)) = 2.0.3 +Provides: bundled(golang(github.com/cpuguy83/go-md2man/v2)) = 2.0.4 # ISC Provides: bundled(golang(github.com/davecgh/go-spew)) = 1.1.1 # Apache-2.0 @@ -92,6 +94,8 @@ Provides: bundled(golang(github.com/dustin/go-humanize)) = 1.0.1 # MIT Provides: bundled(golang(github.com/felixge/httpsnoop)) = 1.0.4 # MIT +Provides: bundled(golang(github.com/francoispqt/gojay)) = 1.2.13 +# MIT Provides: bundled(golang(github.com/fxamacker/cbor/v2)) = 2.6.0 # MIT Provides: bundled(golang(github.com/go-chi/chi/v5)) = 5.0.12 @@ -104,7 +108,7 @@ Provides: bundled(golang(github.com/go-kit/log)) = 0.2.1 # MIT Provides: bundled(golang(github.com/go-logfmt/logfmt)) = 0.6.0 # Apache-2.0 -Provides: bundled(golang(github.com/go-logr/logr)) = 1.4.1 +Provides: bundled(golang(github.com/go-logr/logr)) = 1.4.2 # Apache-2.0 Provides: bundled(golang(github.com/go-logr/stdr)) = 1.2.2 # MPL-2.0 @@ -112,13 +116,13 @@ Provides: bundled(golang(github.com/go-sql-driver/mysql)) = 1.7.1 # MIT Provides: bundled(golang(github.com/go-task/slim-sprig)) = 52ccab3 # Apache-2.0 -Provides: bundled(golang(github.com/golang/glog)) = 1.2.0 +Provides: bundled(golang(github.com/golang/glog)) = 1.2.2 # BSD-3-Clause Provides: bundled(golang(github.com/golang/protobuf)) = 1.5.4 # BSD-3-Clause Provides: bundled(golang(github.com/golang/snappy)) = 0.0.4 # Apache-2.0 -Provides: bundled(golang(github.com/google/cel-go)) = 0.20.1 +Provides: bundled(golang(github.com/google/cel-go)) = 0.21.0 # Apache-2.0 Provides: bundled(golang(github.com/google/certificate-transparency-go)) = 74a5dd3 # Apache-2.0 @@ -130,11 +134,9 @@ Provides: bundled(golang(github.com/google/pprof)) = ec68065 # BSD-3-Clause Provides: bundled(golang(github.com/google/uuid)) = 1.6.0 # BSD-3-Clause -Provides: bundled(golang(github.com/grpc-ecosystem/grpc-gateway/v2)) = 2.18.0 +Provides: bundled(golang(github.com/grpc-ecosystem/grpc-gateway/v2)) = 2.22.0 # MIT -Provides: bundled(golang(github.com/huandu/xstrings)) = 1.3.3 -# BSD-3-Clause -Provides: bundled(golang(github.com/imdario/mergo)) = 0.3.12 +Provides: bundled(golang(github.com/huandu/xstrings)) = 1.5.0 # Apache-2.0 Provides: bundled(golang(github.com/inconshreveable/mousetrap)) = 1.1.0 # MIT @@ -154,9 +156,9 @@ Provides: bundled(golang(github.com/jackc/pgtype)) = 1.14.0 # MIT Provides: bundled(golang(github.com/jackc/pgx/v4)) = 4.18.3 # BSD-3-Clause AND Apache-2.0 AND MIT -Provides: bundled(golang(github.com/klauspost/compress)) = 1.17.8 +Provides: bundled(golang(github.com/klauspost/compress)) = 1.17.11 # MIT -Provides: bundled(golang(github.com/klauspost/cpuid/v2)) = 2.2.7 +Provides: bundled(golang(github.com/klauspost/cpuid/v2)) = 2.2.9 # MIT Provides: bundled(golang(github.com/libdns/libdns)) = 0.2.2 # BSD-3-Clause @@ -168,9 +170,9 @@ Provides: bundled(golang(github.com/mattn/go-isatty)) = 0.0.20 # MIT Provides: bundled(golang(github.com/mgutz/ansi)) = d51e80e # Apache-2.0 AND BSD-3-Clause -Provides: bundled(golang(github.com/mholt/acmez/v2)) = 2.0.1 +Provides: bundled(golang(github.com/mholt/acmez/v3)) = 3.0.0 # BSD-3-Clause -Provides: bundled(golang(github.com/miekg/dns)) = 1.1.59 +Provides: bundled(golang(github.com/miekg/dns)) = 1.1.62 # MIT Provides: bundled(golang(github.com/mitchellh/copystructure)) = 1.2.0 # MIT @@ -180,7 +182,7 @@ Provides: bundled(golang(github.com/mitchellh/reflectwalk)) = 1.0.2 # MIT Provides: bundled(golang(github.com/onsi/ginkgo/v2)) = 2.13.2 # Apache-2.0 -Provides: bundled(golang(github.com/pires/go-proxyproto)) = 0.7.0 +Provides: bundled(golang(github.com/pires/go-proxyproto)) = b718e7c # BSD-2-Clause Provides: bundled(golang(github.com/pkg/errors)) = 0.9.1 # BSD-3-Clause @@ -194,15 +196,15 @@ Provides: bundled(golang(github.com/prometheus/common)) = 0.48.0 # Apache-2.0 Provides: bundled(golang(github.com/prometheus/procfs)) = 0.12.0 # MIT -Provides: bundled(golang(github.com/quic-go/qpack)) = 0.4.0 +Provides: bundled(golang(github.com/quic-go/qpack)) = 0.5.1 # MIT -Provides: bundled(golang(github.com/quic-go/quic-go)) = 0.44.0 +Provides: bundled(golang(github.com/quic-go/quic-go)) = 0.48.2 # MIT Provides: bundled(golang(github.com/rs/xid)) = 1.5.0 # BSD-2-Clause Provides: bundled(golang(github.com/russross/blackfriday/v2)) = 2.1.0 # MIT -Provides: bundled(golang(github.com/shopspring/decimal)) = 1.2.0 +Provides: bundled(golang(github.com/shopspring/decimal)) = 1.4.0 # MIT Provides: bundled(golang(github.com/shurcooL/sanitized_anchor_name)) = 1.0.0 # MIT @@ -222,9 +224,9 @@ Provides: bundled(golang(github.com/smallstep/scep)) = aee96d7 # Apache-2.0 Provides: bundled(golang(github.com/smallstep/truststore)) = 0.13.0 # MIT -Provides: bundled(golang(github.com/spf13/cast)) = 1.4.1 +Provides: bundled(golang(github.com/spf13/cast)) = 1.7.0 # Apache-2.0 -Provides: bundled(golang(github.com/spf13/cobra)) = 1.8.0 +Provides: bundled(golang(github.com/spf13/cobra)) = 1.8.1 # BSD-3-Clause Provides: bundled(golang(github.com/spf13/pflag)) = 1.0.5 # MIT @@ -232,21 +234,21 @@ Provides: bundled(golang(github.com/stoewer/go-strcase)) = 1.2.0 # MIT Provides: bundled(golang(github.com/stretchr/testify)) = 1.9.0 # BSD-3-Clause -Provides: bundled(golang(github.com/tailscale/tscert)) = bbccfbf +Provides: bundled(golang(github.com/tailscale/tscert)) = d3f8340 # MIT Provides: bundled(golang(github.com/urfave/cli)) = 1.22.14 # MIT Provides: bundled(golang(github.com/x448/float16)) = 0.8.4 # MIT -Provides: bundled(golang(github.com/yuin/goldmark)) = 1.7.1 +Provides: bundled(golang(github.com/yuin/goldmark)) = 1.7.8 # MIT Provides: bundled(golang(github.com/yuin/goldmark-highlighting/v2)) = 37449ab # CC0-1.0 -Provides: bundled(golang(github.com/zeebo/blake3)) = 0.2.3 +Provides: bundled(golang(github.com/zeebo/blake3)) = 0.2.4 # MIT Provides: bundled(golang(go.etcd.io/bbolt)) = 1.3.9 # Apache-2.0 -Provides: bundled(golang(go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp)) = 0.49.0 +Provides: bundled(golang(go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp)) = 0.56.0 # Apache-2.0 Provides: bundled(golang(go.opentelemetry.io/contrib/propagators/autoprop)) = 0.42.0 # Apache-2.0 @@ -258,19 +260,19 @@ Provides: bundled(golang(go.opentelemetry.io/contrib/propagators/jaeger)) # Apache-2.0 Provides: bundled(golang(go.opentelemetry.io/contrib/propagators/ot)) = 1.17.0 # Apache-2.0 -Provides: bundled(golang(go.opentelemetry.io/otel)) = 1.24.0 +Provides: bundled(golang(go.opentelemetry.io/otel)) = 1.31.0 # Apache-2.0 -Provides: bundled(golang(go.opentelemetry.io/otel/exporters/otlp/otlptrace)) = 1.21.0 +Provides: bundled(golang(go.opentelemetry.io/otel/exporters/otlp/otlptrace)) = 1.31.0 # Apache-2.0 -Provides: bundled(golang(go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc)) = 1.21.0 +Provides: bundled(golang(go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc)) = 1.31.0 # Apache-2.0 -Provides: bundled(golang(go.opentelemetry.io/otel/metric)) = 1.24.0 +Provides: bundled(golang(go.opentelemetry.io/otel/metric)) = 1.31.0 # Apache-2.0 -Provides: bundled(golang(go.opentelemetry.io/otel/sdk)) = 1.21.0 +Provides: bundled(golang(go.opentelemetry.io/otel/sdk)) = 1.31.0 # Apache-2.0 -Provides: bundled(golang(go.opentelemetry.io/otel/trace)) = 1.24.0 +Provides: bundled(golang(go.opentelemetry.io/otel/trace)) = 1.31.0 # Apache-2.0 -Provides: bundled(golang(go.opentelemetry.io/proto/otlp)) = 1.0.0 +Provides: bundled(golang(go.opentelemetry.io/proto/otlp)) = 1.3.1 # Apache-2.0 AND BSD-2-Clause Provides: bundled(golang(go.step.sm/cli-utils)) = 0.9.0 # Apache-2.0 AND BSD-2-Clause @@ -278,7 +280,7 @@ Provides: bundled(golang(go.step.sm/crypto)) = 0.45.0 # Apache-2.0 Provides: bundled(golang(go.step.sm/linkedca)) = 0.20.1 # MIT -Provides: bundled(golang(go.uber.org/automaxprocs)) = 1.5.3 +Provides: bundled(golang(go.uber.org/automaxprocs)) = 1.6.0 # Apache-2.0 Provides: bundled(golang(go.uber.org/mock)) = 0.4.0 # MIT @@ -286,37 +288,37 @@ Provides: bundled(golang(go.uber.org/multierr)) = 1.11.0 # MIT Provides: bundled(golang(go.uber.org/zap)) = 1.27.0 # MIT -Provides: bundled(golang(go.uber.org/zap/exp)) = 0.2.0 +Provides: bundled(golang(go.uber.org/zap/exp)) = 0.3.0 # BSD-3-Clause -Provides: bundled(golang(golang.org/x/crypto)) = 0.23.0 +Provides: bundled(golang(golang.org/x/crypto)) = 0.31.0 # BSD-3-Clause -Provides: bundled(golang(golang.org/x/crypto/x509roots/fallback)) = 67b1361 +Provides: bundled(golang(golang.org/x/crypto/x509roots/fallback)) = 71ed71b # BSD-3-Clause Provides: bundled(golang(golang.org/x/exp)) = 9bf2ced # BSD-3-Clause -Provides: bundled(golang(golang.org/x/mod)) = 0.17.0 +Provides: bundled(golang(golang.org/x/mod)) = 0.18.0 # BSD-3-Clause -Provides: bundled(golang(golang.org/x/net)) = 0.25.0 +Provides: bundled(golang(golang.org/x/net)) = 0.33.0 # BSD-3-Clause -Provides: bundled(golang(golang.org/x/sync)) = 0.7.0 +Provides: bundled(golang(golang.org/x/sync)) = 0.10.0 # BSD-3-Clause -Provides: bundled(golang(golang.org/x/sys)) = 0.20.0 +Provides: bundled(golang(golang.org/x/sys)) = 0.28.0 # BSD-3-Clause -Provides: bundled(golang(golang.org/x/term)) = 0.20.0 +Provides: bundled(golang(golang.org/x/term)) = 0.27.0 # BSD-3-Clause -Provides: bundled(golang(golang.org/x/text)) = 0.15.0 +Provides: bundled(golang(golang.org/x/text)) = 0.21.0 # BSD-3-Clause -Provides: bundled(golang(golang.org/x/time)) = 0.5.0 +Provides: bundled(golang(golang.org/x/time)) = 0.7.0 # BSD-3-Clause -Provides: bundled(golang(golang.org/x/tools)) = 0.21.0 +Provides: bundled(golang(golang.org/x/tools)) = 0.22.0 # Apache-2.0 -Provides: bundled(golang(google.golang.org/genproto/googleapis/api)) = b8a5c65 +Provides: bundled(golang(google.golang.org/genproto/googleapis/api)) = 5fefd90 # Apache-2.0 -Provides: bundled(golang(google.golang.org/genproto/googleapis/rpc)) = 8cf5692 +Provides: bundled(golang(google.golang.org/genproto/googleapis/rpc)) = 5fefd90 # Apache-2.0 -Provides: bundled(golang(google.golang.org/grpc)) = 1.63.2 +Provides: bundled(golang(google.golang.org/grpc)) = 1.67.1 # BSD-3-Clause -Provides: bundled(golang(google.golang.org/protobuf)) = 1.34.1 +Provides: bundled(golang(google.golang.org/protobuf)) = 1.35.1 # MIT Provides: bundled(golang(gopkg.in/natefinch/lumberjack.v2)) = 2.2.1 # Apache-2.0 AND MIT @@ -476,6 +478,9 @@ fi %changelog +* Wed Jan 01 2025 Carl George - 2.9.0-1 +- Update to version 2.9.0 rhbz#2316289 + * Wed Jul 17 2024 Fedora Release Engineering - 2.8.4-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild diff --git a/sources b/sources index aa0786d..84bb35f 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (caddy-2.8.4-vendored.tar.gz) = 4519da995327c1b5adc006267f352acf9452df1002c6545565a6679795e8dff162b6b702f218d805b25930461ec938cbd67b7e2a33111a9a96a3ea6d798cccf6 +SHA512 (caddy-2.9.0-vendored.tar.gz) = cd88f9ebb8db481d5c3d73d70f4fcd3cd945877d9344ed0a448863cce0922a9a741c0a03ea760e26a30afdefd7ea60b52ea96accb3d50ef77b2d9e4c67637ba6 From e50853b5b349ec5da8c788756735a1ad44a9a497 Mon Sep 17 00:00:00 2001 From: Carl George Date: Wed, 8 Jan 2025 15:29:42 -0600 Subject: [PATCH 67/79] Include goipaths of bundled libraries in license comments --- caddy.spec | 286 ++++++++++++++++++++++++++--------------------------- 1 file changed, 143 insertions(+), 143 deletions(-) diff --git a/caddy.spec b/caddy.spec index 9c5b910..bdfcdde 100644 --- a/caddy.spec +++ b/caddy.spec @@ -39,291 +39,291 @@ Patch: 0002-Skip-ACME-integration-tests-that-fail-in-an-RPM-build-envir # https://github.com/caddyserver/caddy/commit/2028da4e74cd41f0f7f94222c6599da1a371d4b8 BuildRequires: golang >= 1.22.3 -# BSD-3-Clause +# dario.cat/mergo : BSD-3-Clause Provides: bundled(golang(dario.cat/mergo)) = 1.0.1 -# BSD-3-Clause +# filippo.io/edwards25519 : BSD-3-Clause Provides: bundled(golang(filippo.io/edwards25519)) = 1.1.0 -# MIT AND CC0-1.0 +# github.com/AndreasBriese/bbloom : MIT AND CC0-1.0 Provides: bundled(golang(github.com/AndreasBriese/bbloom)) = 46b345b -# MIT +# github.com/BurntSushi/toml : MIT Provides: bundled(golang(github.com/BurntSushi/toml)) = 1.4.0 -# Apache-2.0 +# github.com/Masterminds/goutils : Apache-2.0 Provides: bundled(golang(github.com/Masterminds/goutils)) = 1.1.1 -# MIT +# github.com/Masterminds/semver/v3 : MIT Provides: bundled(golang(github.com/Masterminds/semver/v3)) = 3.3.0 -# MIT +# github.com/Masterminds/sprig/v3 : MIT Provides: bundled(golang(github.com/Masterminds/sprig/v3)) = 3.3.0 -# MIT +# github.com/Microsoft/go-winio : MIT Provides: bundled(golang(github.com/Microsoft/go-winio)) = 0.6.0 -# MIT +# github.com/alecthomas/chroma/v2 : MIT Provides: bundled(golang(github.com/alecthomas/chroma/v2)) = 2.14.0 -# BSD-3-Clause +# github.com/antlr4-go/antlr/v4 : BSD-3-Clause Provides: bundled(golang(github.com/antlr4-go/antlr/v4)) = 4.13.0 -# MIT +# github.com/aryann/difflib : MIT Provides: bundled(golang(github.com/aryann/difflib)) = ff5ff6d -# MIT +# github.com/beorn7/perks : MIT Provides: bundled(golang(github.com/beorn7/perks)) = 1.0.1 -# Apache-2.0 +# github.com/caddyserver/certmagic : Apache-2.0 Provides: bundled(golang(github.com/caddyserver/certmagic)) = 0.21.5 -# MIT +# github.com/caddyserver/zerossl : MIT Provides: bundled(golang(github.com/caddyserver/zerossl)) = 0.1.3 -# MIT +# github.com/cenkalti/backoff/v4 : MIT Provides: bundled(golang(github.com/cenkalti/backoff/v4)) = 4.3.0 -# MIT +# github.com/cespare/xxhash : MIT Provides: bundled(golang(github.com/cespare/xxhash)) = 1.1.0 -# MIT +# github.com/cespare/xxhash/v2 : MIT Provides: bundled(golang(github.com/cespare/xxhash/v2)) = 2.3.0 -# MIT +# github.com/chzyer/readline : MIT Provides: bundled(golang(github.com/chzyer/readline)) = 1.5.1 -# MIT +# github.com/cpuguy83/go-md2man/v2 : MIT Provides: bundled(golang(github.com/cpuguy83/go-md2man/v2)) = 2.0.4 -# ISC +# github.com/davecgh/go-spew : ISC Provides: bundled(golang(github.com/davecgh/go-spew)) = 1.1.1 -# Apache-2.0 +# github.com/dgraph-io/badger : Apache-2.0 Provides: bundled(golang(github.com/dgraph-io/badger)) = 1.6.2 -# Apache-2.0 +# github.com/dgraph-io/badger/v2 : Apache-2.0 Provides: bundled(golang(github.com/dgraph-io/badger/v2)) = 2.2007.4 -# Apache-2.0 AND MIT +# github.com/dgraph-io/ristretto : Apache-2.0 AND MIT Provides: bundled(golang(github.com/dgraph-io/ristretto)) = 0.1.0 -# MIT +# github.com/dgryski/go-farm : MIT Provides: bundled(golang(github.com/dgryski/go-farm)) = a6ae236 -# MIT +# github.com/dlclark/regexp2 : MIT Provides: bundled(golang(github.com/dlclark/regexp2)) = 1.11.0 -# MIT +# github.com/dustin/go-humanize : MIT Provides: bundled(golang(github.com/dustin/go-humanize)) = 1.0.1 -# MIT +# github.com/felixge/httpsnoop : MIT Provides: bundled(golang(github.com/felixge/httpsnoop)) = 1.0.4 -# MIT +# github.com/francoispqt/gojay : MIT Provides: bundled(golang(github.com/francoispqt/gojay)) = 1.2.13 -# MIT +# github.com/fxamacker/cbor/v2 : MIT Provides: bundled(golang(github.com/fxamacker/cbor/v2)) = 2.6.0 -# MIT +# github.com/go-chi/chi/v5 : MIT Provides: bundled(golang(github.com/go-chi/chi/v5)) = 5.0.12 -# Apache-2.0 AND BSD-3-Clause +# github.com/go-jose/go-jose/v3 : Apache-2.0 AND BSD-3-Clause Provides: bundled(golang(github.com/go-jose/go-jose/v3)) = 3.0.3 -# MIT +# github.com/go-kit/kit : MIT Provides: bundled(golang(github.com/go-kit/kit)) = 0.13.0 -# MIT +# github.com/go-kit/log : MIT Provides: bundled(golang(github.com/go-kit/log)) = 0.2.1 -# MIT +# github.com/go-logfmt/logfmt : MIT Provides: bundled(golang(github.com/go-logfmt/logfmt)) = 0.6.0 -# Apache-2.0 +# github.com/go-logr/logr : Apache-2.0 Provides: bundled(golang(github.com/go-logr/logr)) = 1.4.2 -# Apache-2.0 +# github.com/go-logr/stdr : Apache-2.0 Provides: bundled(golang(github.com/go-logr/stdr)) = 1.2.2 -# MPL-2.0 +# github.com/go-sql-driver/mysql : MPL-2.0 Provides: bundled(golang(github.com/go-sql-driver/mysql)) = 1.7.1 -# MIT +# github.com/go-task/slim-sprig : MIT Provides: bundled(golang(github.com/go-task/slim-sprig)) = 52ccab3 -# Apache-2.0 +# github.com/golang/glog : Apache-2.0 Provides: bundled(golang(github.com/golang/glog)) = 1.2.2 -# BSD-3-Clause +# github.com/golang/protobuf : BSD-3-Clause Provides: bundled(golang(github.com/golang/protobuf)) = 1.5.4 -# BSD-3-Clause +# github.com/golang/snappy : BSD-3-Clause Provides: bundled(golang(github.com/golang/snappy)) = 0.0.4 -# Apache-2.0 +# github.com/google/cel-go : Apache-2.0 Provides: bundled(golang(github.com/google/cel-go)) = 0.21.0 -# Apache-2.0 +# github.com/google/certificate-transparency-go : Apache-2.0 Provides: bundled(golang(github.com/google/certificate-transparency-go)) = 74a5dd3 -# Apache-2.0 +# github.com/google/go-tpm : Apache-2.0 Provides: bundled(golang(github.com/google/go-tpm)) = 0.9.0 -# Apache-2.0 +# github.com/google/go-tspi : Apache-2.0 Provides: bundled(golang(github.com/google/go-tspi)) = 0.3.0 -# Apache-2.0 +# github.com/google/pprof : Apache-2.0 Provides: bundled(golang(github.com/google/pprof)) = ec68065 -# BSD-3-Clause +# github.com/google/uuid : BSD-3-Clause Provides: bundled(golang(github.com/google/uuid)) = 1.6.0 -# BSD-3-Clause +# github.com/grpc-ecosystem/grpc-gateway/v2 : BSD-3-Clause Provides: bundled(golang(github.com/grpc-ecosystem/grpc-gateway/v2)) = 2.22.0 -# MIT +# github.com/huandu/xstrings : MIT Provides: bundled(golang(github.com/huandu/xstrings)) = 1.5.0 -# Apache-2.0 +# github.com/inconshreveable/mousetrap : Apache-2.0 Provides: bundled(golang(github.com/inconshreveable/mousetrap)) = 1.1.0 -# MIT +# github.com/jackc/chunkreader/v2 : MIT Provides: bundled(golang(github.com/jackc/chunkreader/v2)) = 2.0.1 -# MIT +# github.com/jackc/pgconn : MIT Provides: bundled(golang(github.com/jackc/pgconn)) = 1.14.3 -# MIT +# github.com/jackc/pgio : MIT Provides: bundled(golang(github.com/jackc/pgio)) = 1.0.0 -# MIT +# github.com/jackc/pgpassfile : MIT Provides: bundled(golang(github.com/jackc/pgpassfile)) = 1.0.0 -# MIT +# github.com/jackc/pgproto3/v2 : MIT Provides: bundled(golang(github.com/jackc/pgproto3/v2)) = 2.3.3 -# MIT +# github.com/jackc/pgservicefile : MIT Provides: bundled(golang(github.com/jackc/pgservicefile)) = 091c0ba -# MIT +# github.com/jackc/pgtype : MIT Provides: bundled(golang(github.com/jackc/pgtype)) = 1.14.0 -# MIT +# github.com/jackc/pgx/v4 : MIT Provides: bundled(golang(github.com/jackc/pgx/v4)) = 4.18.3 -# BSD-3-Clause AND Apache-2.0 AND MIT +# github.com/klauspost/compress : BSD-3-Clause AND Apache-2.0 AND MIT Provides: bundled(golang(github.com/klauspost/compress)) = 1.17.11 -# MIT +# github.com/klauspost/cpuid/v2 : MIT Provides: bundled(golang(github.com/klauspost/cpuid/v2)) = 2.2.9 -# MIT +# github.com/libdns/libdns : MIT Provides: bundled(golang(github.com/libdns/libdns)) = 0.2.2 -# BSD-3-Clause +# github.com/manifoldco/promptui : BSD-3-Clause Provides: bundled(golang(github.com/manifoldco/promptui)) = 0.9.0 -# MIT +# github.com/mattn/go-colorable : MIT Provides: bundled(golang(github.com/mattn/go-colorable)) = 0.1.13 -# MIT +# github.com/mattn/go-isatty : MIT Provides: bundled(golang(github.com/mattn/go-isatty)) = 0.0.20 -# MIT +# github.com/mgutz/ansi : MIT Provides: bundled(golang(github.com/mgutz/ansi)) = d51e80e -# Apache-2.0 AND BSD-3-Clause +# github.com/mholt/acmez/v3 : Apache-2.0 AND BSD-3-Clause Provides: bundled(golang(github.com/mholt/acmez/v3)) = 3.0.0 -# BSD-3-Clause +# github.com/miekg/dns : BSD-3-Clause Provides: bundled(golang(github.com/miekg/dns)) = 1.1.62 -# MIT +# github.com/mitchellh/copystructure : MIT Provides: bundled(golang(github.com/mitchellh/copystructure)) = 1.2.0 -# MIT +# github.com/mitchellh/go-ps : MIT Provides: bundled(golang(github.com/mitchellh/go-ps)) = 1.0.0 -# MIT +# github.com/mitchellh/reflectwalk : MIT Provides: bundled(golang(github.com/mitchellh/reflectwalk)) = 1.0.2 -# MIT +# github.com/onsi/ginkgo/v2 : MIT Provides: bundled(golang(github.com/onsi/ginkgo/v2)) = 2.13.2 -# Apache-2.0 +# github.com/pires/go-proxyproto : Apache-2.0 Provides: bundled(golang(github.com/pires/go-proxyproto)) = b718e7c -# BSD-2-Clause +# github.com/pkg/errors : BSD-2-Clause Provides: bundled(golang(github.com/pkg/errors)) = 0.9.1 -# BSD-3-Clause +# github.com/pmezard/go-difflib : BSD-3-Clause Provides: bundled(golang(github.com/pmezard/go-difflib)) = 1.0.0 -# Apache-2.0 +# github.com/prometheus/client_golang : Apache-2.0 Provides: bundled(golang(github.com/prometheus/client_golang)) = 1.19.1 -# Apache-2.0 +# github.com/prometheus/client_model : Apache-2.0 Provides: bundled(golang(github.com/prometheus/client_model)) = 0.5.0 -# Apache-2.0 +# github.com/prometheus/common : Apache-2.0 Provides: bundled(golang(github.com/prometheus/common)) = 0.48.0 -# Apache-2.0 +# github.com/prometheus/procfs : Apache-2.0 Provides: bundled(golang(github.com/prometheus/procfs)) = 0.12.0 -# MIT +# github.com/quic-go/qpack : MIT Provides: bundled(golang(github.com/quic-go/qpack)) = 0.5.1 -# MIT +# github.com/quic-go/quic-go : MIT Provides: bundled(golang(github.com/quic-go/quic-go)) = 0.48.2 -# MIT +# github.com/rs/xid : MIT Provides: bundled(golang(github.com/rs/xid)) = 1.5.0 -# BSD-2-Clause +# github.com/russross/blackfriday/v2 : BSD-2-Clause Provides: bundled(golang(github.com/russross/blackfriday/v2)) = 2.1.0 -# MIT +# github.com/shopspring/decimal : MIT Provides: bundled(golang(github.com/shopspring/decimal)) = 1.4.0 -# MIT +# github.com/shurcooL/sanitized_anchor_name : MIT Provides: bundled(golang(github.com/shurcooL/sanitized_anchor_name)) = 1.0.0 -# MIT +# github.com/sirupsen/logrus : MIT Provides: bundled(golang(github.com/sirupsen/logrus)) = 1.9.3 -# MIT +# github.com/slackhq/nebula : MIT Provides: bundled(golang(github.com/slackhq/nebula)) = 1.6.1 -# Apache-2.0 +# github.com/smallstep/certificates : Apache-2.0 Provides: bundled(golang(github.com/smallstep/certificates)) = 0.26.1 -# Apache-2.0 +# github.com/smallstep/go-attestation : Apache-2.0 Provides: bundled(golang(github.com/smallstep/go-attestation)) = 413678f -# Apache-2.0 +# github.com/smallstep/nosql : Apache-2.0 Provides: bundled(golang(github.com/smallstep/nosql)) = 0.6.1 -# MIT +# github.com/smallstep/pkcs7 : MIT Provides: bundled(golang(github.com/smallstep/pkcs7)) = 3b98ecc -# MIT +# github.com/smallstep/scep : MIT Provides: bundled(golang(github.com/smallstep/scep)) = aee96d7 -# Apache-2.0 +# github.com/smallstep/truststore : Apache-2.0 Provides: bundled(golang(github.com/smallstep/truststore)) = 0.13.0 -# MIT +# github.com/spf13/cast : MIT Provides: bundled(golang(github.com/spf13/cast)) = 1.7.0 -# Apache-2.0 +# github.com/spf13/cobra : Apache-2.0 Provides: bundled(golang(github.com/spf13/cobra)) = 1.8.1 -# BSD-3-Clause +# github.com/spf13/pflag : BSD-3-Clause Provides: bundled(golang(github.com/spf13/pflag)) = 1.0.5 -# MIT +# github.com/stoewer/go-strcase : MIT Provides: bundled(golang(github.com/stoewer/go-strcase)) = 1.2.0 -# MIT +# github.com/stretchr/testify : MIT Provides: bundled(golang(github.com/stretchr/testify)) = 1.9.0 -# BSD-3-Clause +# github.com/tailscale/tscert : BSD-3-Clause Provides: bundled(golang(github.com/tailscale/tscert)) = d3f8340 -# MIT +# github.com/urfave/cli : MIT Provides: bundled(golang(github.com/urfave/cli)) = 1.22.14 -# MIT +# github.com/x448/float16 : MIT Provides: bundled(golang(github.com/x448/float16)) = 0.8.4 -# MIT +# github.com/yuin/goldmark : MIT Provides: bundled(golang(github.com/yuin/goldmark)) = 1.7.8 -# MIT +# github.com/yuin/goldmark-highlighting/v2 : MIT Provides: bundled(golang(github.com/yuin/goldmark-highlighting/v2)) = 37449ab -# CC0-1.0 +# github.com/zeebo/blake3 : CC0-1.0 Provides: bundled(golang(github.com/zeebo/blake3)) = 0.2.4 -# MIT +# go.etcd.io/bbolt : MIT Provides: bundled(golang(go.etcd.io/bbolt)) = 1.3.9 -# Apache-2.0 +# go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp : Apache-2.0 Provides: bundled(golang(go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp)) = 0.56.0 -# Apache-2.0 +# go.opentelemetry.io/contrib/propagators/autoprop : Apache-2.0 Provides: bundled(golang(go.opentelemetry.io/contrib/propagators/autoprop)) = 0.42.0 -# Apache-2.0 +# go.opentelemetry.io/contrib/propagators/aws : Apache-2.0 Provides: bundled(golang(go.opentelemetry.io/contrib/propagators/aws)) = 1.17.0 -# Apache-2.0 +# go.opentelemetry.io/contrib/propagators/b3 : Apache-2.0 Provides: bundled(golang(go.opentelemetry.io/contrib/propagators/b3)) = 1.17.0 -# Apache-2.0 +# go.opentelemetry.io/contrib/propagators/jaeger : Apache-2.0 Provides: bundled(golang(go.opentelemetry.io/contrib/propagators/jaeger)) = 1.17.0 -# Apache-2.0 +# go.opentelemetry.io/contrib/propagators/ot : Apache-2.0 Provides: bundled(golang(go.opentelemetry.io/contrib/propagators/ot)) = 1.17.0 -# Apache-2.0 +# go.opentelemetry.io/otel : Apache-2.0 Provides: bundled(golang(go.opentelemetry.io/otel)) = 1.31.0 -# Apache-2.0 +# go.opentelemetry.io/otel/exporters/otlp/otlptrace : Apache-2.0 Provides: bundled(golang(go.opentelemetry.io/otel/exporters/otlp/otlptrace)) = 1.31.0 -# Apache-2.0 +# go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc : Apache-2.0 Provides: bundled(golang(go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc)) = 1.31.0 -# Apache-2.0 +# go.opentelemetry.io/otel/metric : Apache-2.0 Provides: bundled(golang(go.opentelemetry.io/otel/metric)) = 1.31.0 -# Apache-2.0 +# go.opentelemetry.io/otel/sdk : Apache-2.0 Provides: bundled(golang(go.opentelemetry.io/otel/sdk)) = 1.31.0 -# Apache-2.0 +# go.opentelemetry.io/otel/trace : Apache-2.0 Provides: bundled(golang(go.opentelemetry.io/otel/trace)) = 1.31.0 -# Apache-2.0 +# go.opentelemetry.io/proto/otlp : Apache-2.0 Provides: bundled(golang(go.opentelemetry.io/proto/otlp)) = 1.3.1 -# Apache-2.0 AND BSD-2-Clause +# go.step.sm/cli-utils : Apache-2.0 AND BSD-2-Clause Provides: bundled(golang(go.step.sm/cli-utils)) = 0.9.0 -# Apache-2.0 AND BSD-2-Clause +# go.step.sm/crypto : Apache-2.0 AND BSD-2-Clause Provides: bundled(golang(go.step.sm/crypto)) = 0.45.0 -# Apache-2.0 +# go.step.sm/linkedca : Apache-2.0 Provides: bundled(golang(go.step.sm/linkedca)) = 0.20.1 -# MIT +# go.uber.org/automaxprocs : MIT Provides: bundled(golang(go.uber.org/automaxprocs)) = 1.6.0 -# Apache-2.0 +# go.uber.org/mock : Apache-2.0 Provides: bundled(golang(go.uber.org/mock)) = 0.4.0 -# MIT +# go.uber.org/multierr : MIT Provides: bundled(golang(go.uber.org/multierr)) = 1.11.0 -# MIT +# go.uber.org/zap : MIT Provides: bundled(golang(go.uber.org/zap)) = 1.27.0 -# MIT +# go.uber.org/zap/exp : MIT Provides: bundled(golang(go.uber.org/zap/exp)) = 0.3.0 -# BSD-3-Clause +# golang.org/x/crypto : BSD-3-Clause Provides: bundled(golang(golang.org/x/crypto)) = 0.31.0 -# BSD-3-Clause +# golang.org/x/crypto/x509roots/fallback : BSD-3-Clause Provides: bundled(golang(golang.org/x/crypto/x509roots/fallback)) = 71ed71b -# BSD-3-Clause +# golang.org/x/exp : BSD-3-Clause Provides: bundled(golang(golang.org/x/exp)) = 9bf2ced -# BSD-3-Clause +# golang.org/x/mod : BSD-3-Clause Provides: bundled(golang(golang.org/x/mod)) = 0.18.0 -# BSD-3-Clause +# golang.org/x/net : BSD-3-Clause Provides: bundled(golang(golang.org/x/net)) = 0.33.0 -# BSD-3-Clause +# golang.org/x/sync : BSD-3-Clause Provides: bundled(golang(golang.org/x/sync)) = 0.10.0 -# BSD-3-Clause +# golang.org/x/sys : BSD-3-Clause Provides: bundled(golang(golang.org/x/sys)) = 0.28.0 -# BSD-3-Clause +# golang.org/x/term : BSD-3-Clause Provides: bundled(golang(golang.org/x/term)) = 0.27.0 -# BSD-3-Clause +# golang.org/x/text : BSD-3-Clause Provides: bundled(golang(golang.org/x/text)) = 0.21.0 -# BSD-3-Clause +# golang.org/x/time : BSD-3-Clause Provides: bundled(golang(golang.org/x/time)) = 0.7.0 -# BSD-3-Clause +# golang.org/x/tools : BSD-3-Clause Provides: bundled(golang(golang.org/x/tools)) = 0.22.0 -# Apache-2.0 +# google.golang.org/genproto/googleapis/api : Apache-2.0 Provides: bundled(golang(google.golang.org/genproto/googleapis/api)) = 5fefd90 -# Apache-2.0 +# google.golang.org/genproto/googleapis/rpc : Apache-2.0 Provides: bundled(golang(google.golang.org/genproto/googleapis/rpc)) = 5fefd90 -# Apache-2.0 +# google.golang.org/grpc : Apache-2.0 Provides: bundled(golang(google.golang.org/grpc)) = 1.67.1 -# BSD-3-Clause +# google.golang.org/protobuf : BSD-3-Clause Provides: bundled(golang(google.golang.org/protobuf)) = 1.35.1 -# MIT +# gopkg.in/natefinch/lumberjack.v2 : MIT Provides: bundled(golang(gopkg.in/natefinch/lumberjack.v2)) = 2.2.1 -# Apache-2.0 AND MIT +# gopkg.in/yaml.v3 : Apache-2.0 AND MIT Provides: bundled(golang(gopkg.in/yaml.v3)) = 3.0.1 -# BSD-2-Clause-Views AND BSD-3-Clause +# howett.net/plist : BSD-2-Clause-Views AND BSD-3-Clause Provides: bundled(golang(howett.net/plist)) = 1.0.0 BuildRequires: systemd-rpm-macros From d8ee5cf86dba97e70133abdcf95793a8ec989abd Mon Sep 17 00:00:00 2001 From: Carl George Date: Wed, 8 Jan 2025 16:56:06 -0600 Subject: [PATCH 68/79] Update to version 2.9.1 rhbz#2336409 --- caddy.spec | 51 ++++++++++++++++++++++++---------------- create-vendor-tarball.sh | 3 +-- sources | 3 ++- 3 files changed, 34 insertions(+), 23 deletions(-) diff --git a/caddy.spec b/caddy.spec index bdfcdde..f5992c5 100644 --- a/caddy.spec +++ b/caddy.spec @@ -1,23 +1,19 @@ %global goipath github.com/caddyserver/caddy Name: caddy -Version: 2.9.0 +Version: 2.9.1 Release: 1%{?dist} Summary: Web server with automatic HTTPS + # main source code is Apache-2.0 # see comments above provides tags for bundled license breakdown License: Apache-2.0 AND BSD-2-Clause AND BSD-3-Clause AND MIT AND BSD-2-Clause-Views AND CC0-1.0 AND ISC AND MPL-2.0 URL: https://caddyserver.com +Source0: https://%{goipath}/archive/v%{version}/caddy-%{version}.tar.gz -%if %{defined el8} -ExclusiveArch: %{golang_arches} -%else -ExclusiveArch: %{golang_arches_future} -BuildRequires: go-rpm-macros -%endif - -# see create-vendor-tarball.sh for how to create this -Source0: caddy-%{version}-vendored.tar.gz +# vendored dependencies +Source1: caddy-%{version}-vendor.tar.gz +Source2: create-vendor-tarball.sh # based on reference files upstream # https://github.com/caddyserver/dist @@ -28,13 +24,17 @@ Source22: caddy.sysusers Source30: poweredby-white.png Source31: poweredby-black.png -# Script that creates vendor tarball -Source100: create-vendor-tarball.sh - # downstream only patch to disable commands that can alter the binary -Patch: 0001-Disable-commands-that-can-alter-the-binary.patch +Patch1: 0001-Disable-commands-that-can-alter-the-binary.patch # downstream only patch to skip ACME integration tests -Patch: 0002-Skip-ACME-integration-tests-that-fail-in-an-RPM-build-environment.patch +Patch2: 0002-Skip-ACME-integration-tests-that-fail-in-an-RPM-build-environment.patch + +%if %{defined el8} +ExclusiveArch: %{golang_arches} +%else +BuildRequires: go-rpm-macros +ExclusiveArch: %{golang_arches_future} +%endif # https://github.com/caddyserver/caddy/commit/2028da4e74cd41f0f7f94222c6599da1a371d4b8 BuildRequires: golang >= 1.22.3 @@ -64,7 +64,7 @@ Provides: bundled(golang(github.com/aryann/difflib)) = ff5ff6d # github.com/beorn7/perks : MIT Provides: bundled(golang(github.com/beorn7/perks)) = 1.0.1 # github.com/caddyserver/certmagic : Apache-2.0 -Provides: bundled(golang(github.com/caddyserver/certmagic)) = 0.21.5 +Provides: bundled(golang(github.com/caddyserver/certmagic)) = 0.21.6 # github.com/caddyserver/zerossl : MIT Provides: bundled(golang(github.com/caddyserver/zerossl)) = 0.1.3 # github.com/cenkalti/backoff/v4 : MIT @@ -338,13 +338,15 @@ Caddy is an extensible server platform that uses TLS by default. %prep -%autosetup -p 1 +%autosetup -p 1 -a 1 mkdir -p src/$(dirname %{goipath}) ln -s $PWD src/%{goipath} %build +%if %{defined el8} export GO111MODULE=off +%endif export GOPATH=$PWD export LDFLAGS="-X %{goipath}.CustomVersion=v%{version}" %gobuild -o bin/caddy %{goipath}/cmd/caddy @@ -352,7 +354,7 @@ export LDFLAGS="-X %{goipath}.CustomVersion=v%{version}" %install # command -install -D -p -m 0755 bin/caddy %{buildroot}%{_bindir}/caddy +install -D -p -m 0755 -t %{buildroot}%{_bindir} bin/caddy # man pages ./bin/caddy manpage --directory %{buildroot}%{_mandir}/man8 @@ -362,8 +364,7 @@ install -D -p -m 0644 %{S:10} %{buildroot}%{_sysconfdir}/caddy/Caddyfile install -d -m 0755 %{buildroot}%{_sysconfdir}/caddy/Caddyfile.d # systemd units -install -D -p -m 0644 %{S:20} %{buildroot}%{_unitdir}/caddy.service -install -D -p -m 0644 %{S:21} %{buildroot}%{_unitdir}/caddy-api.service +install -D -p -m 0644 -t %{buildroot}%{_unitdir} %{S:20} %{S:21} # sysusers install -D -p -m 0644 %{S:22} %{buildroot}%{_sysusersdir}/caddy.conf @@ -472,12 +473,22 @@ fi %config(noreplace) %{_sysconfdir}/caddy/Caddyfile %dir %{_sysconfdir}/caddy/Caddyfile.d %attr(0750,caddy,caddy) %dir %{_sharedstatedir}/caddy +%if %{defined el8} +# this is normally owned by filesystem +%dir %{_datadir}/zsh +%dir %{_datadir}/zsh/site-functions +%dir %{_datadir}/fish +%dir %{_datadir}/fish/vendor_completions.d +%endif %{bash_completions_dir}/caddy %{zsh_completions_dir}/_caddy %{fish_completions_dir}/caddy.fish %changelog +* Wed Jan 08 2025 Carl George - 2.9.1-1 +- Update to version 2.9.1 rhbz#2336409 + * Wed Jan 01 2025 Carl George - 2.9.0-1 - Update to version 2.9.0 rhbz#2316289 diff --git a/create-vendor-tarball.sh b/create-vendor-tarball.sh index cf2a545..4df0320 100755 --- a/create-vendor-tarball.sh +++ b/create-vendor-tarball.sh @@ -34,5 +34,4 @@ git -c advice.detachedHead=false clone --branch $tag --depth 1 https://github.co pushd caddy-$version GOPROXY='https://proxy.golang.org,direct' go mod vendor popd -tar --exclude .git -czf caddy-$version-vendored.tar.gz caddy-$version -rm -r caddy-$version +tar -C caddy-$version -czf caddy-$version-vendor.tar.gz vendor diff --git a/sources b/sources index 84bb35f..507c3f7 100644 --- a/sources +++ b/sources @@ -1 +1,2 @@ -SHA512 (caddy-2.9.0-vendored.tar.gz) = cd88f9ebb8db481d5c3d73d70f4fcd3cd945877d9344ed0a448863cce0922a9a741c0a03ea760e26a30afdefd7ea60b52ea96accb3d50ef77b2d9e4c67637ba6 +SHA512 (caddy-2.9.1.tar.gz) = 2ed36bfe8de3a2c7270e202b2d9ab4c3c78174fcd09c02e38d61d1bd57afa6471a2a690f15edcf91f2bfb105dbf2b0c2186d0c5e6f20ec169e98c66f8f71d0f8 +SHA512 (caddy-2.9.1-vendor.tar.gz) = c37617fd38da0b9d966d5bd297d5647386d5d863d9674f530497a3c5102545e94a6279072d237a1278476365b008153484352ae79a82ff57997088d3510a1eef From ca553ea9611bbb2802570cd43c0f14d7fde0ed89 Mon Sep 17 00:00:00 2001 From: Carl George Date: Wed, 8 Jan 2025 23:05:39 -0600 Subject: [PATCH 69/79] Skip a few more flaky tests --- ...e-commands-that-can-alter-the-binary.patch | 2 +- ...hat-fail-in-an-RPM-build-environment.patch | 91 +++++++++++++++++-- caddy.spec | 4 +- 3 files changed, 88 insertions(+), 9 deletions(-) rename 0002-Skip-ACME-integration-tests-that-fail-in-an-RPM-build-environment.patch => 0002-Skip-tests-that-fail-in-an-RPM-build-environment.patch (65%) diff --git a/0001-Disable-commands-that-can-alter-the-binary.patch b/0001-Disable-commands-that-can-alter-the-binary.patch index 6f1671b..710f8c5 100644 --- a/0001-Disable-commands-that-can-alter-the-binary.patch +++ b/0001-Disable-commands-that-can-alter-the-binary.patch @@ -1,4 +1,4 @@ -From e2f7bc1fb84f8611562ef4275bfbda55b77100a7 Mon Sep 17 00:00:00 2001 +From ffc4888694c5222e9eddecb461c955d5661aa18c Mon Sep 17 00:00:00 2001 From: Carl George Date: Wed, 16 Feb 2022 11:45:03 -0600 Subject: [PATCH 1/2] Disable commands that can alter the binary diff --git a/0002-Skip-ACME-integration-tests-that-fail-in-an-RPM-build-environment.patch b/0002-Skip-tests-that-fail-in-an-RPM-build-environment.patch similarity index 65% rename from 0002-Skip-ACME-integration-tests-that-fail-in-an-RPM-build-environment.patch rename to 0002-Skip-tests-that-fail-in-an-RPM-build-environment.patch index 57758b0..5a1f9e5 100644 --- a/0002-Skip-ACME-integration-tests-that-fail-in-an-RPM-build-environment.patch +++ b/0002-Skip-tests-that-fail-in-an-RPM-build-environment.patch @@ -1,18 +1,42 @@ -From bd8f9d326f50a62cabf01a1de06c082cfbe8e4d1 Mon Sep 17 00:00:00 2001 +From 36fd7bf190357e1cf3c845d964349c161b8a18b4 Mon Sep 17 00:00:00 2001 From: Carl George Date: Thu, 30 May 2024 21:48:09 -0500 -Subject: [PATCH 2/2] Skip ACME integration tests that fail in an RPM build - environment +Subject: [PATCH 2/2] Skip tests that fail in an RPM build environment --- + caddytest/caddytest_test.go | 4 ++++ caddytest/integration/acme_test.go | 7 +++++++ caddytest/integration/acmeserver_test.go | 10 ++++++++++ - caddytest/integration/caddyfile_test.go | 7 +++++++ + caddytest/integration/autohttps_test.go | 4 ++++ + caddytest/integration/caddyfile_test.go | 10 ++++++++++ caddytest/integration/handler_test.go | 4 ++++ caddytest/integration/leafcertloaders_test.go | 4 ++++ caddytest/integration/listener_test.go | 4 ++++ - 6 files changed, 36 insertions(+) + caddytest/integration/reverseproxy_test.go | 6 ++++++ + 9 files changed, 53 insertions(+) +diff --git a/caddytest/caddytest_test.go b/caddytest/caddytest_test.go +index a9d5da93..73aec0b4 100644 +--- a/caddytest/caddytest_test.go ++++ b/caddytest/caddytest_test.go +@@ -2,6 +2,7 @@ package caddytest + + import ( + "net/http" ++ "os" + "strings" + "testing" + ) +@@ -34,6 +35,9 @@ func TestReplaceCertificatePaths(t *testing.T) { + } + + func TestLoadUnorderedJSON(t *testing.T) { ++ if os.Getenv("RPM_BUILD_ROOT") != "" { ++ t.SkipNow() ++ } + tester := NewTester(t) + tester.InitServer(` + { diff --git a/caddytest/integration/acme_test.go b/caddytest/integration/acme_test.go index d7e4c296..203dd9bc 100644 --- a/caddytest/integration/acme_test.go @@ -83,12 +107,33 @@ index ca5845f8..6bc13fed 100644 func TestACMEServerDenyPolicy(t *testing.T) { + if os.Getenv("RPM_BUILD_ROOT") != "" { + t.SkipNow() ++ } + tester := caddytest.NewTester(t) + tester.InitServer(` + { +diff --git a/caddytest/integration/autohttps_test.go b/caddytest/integration/autohttps_test.go +index 1dbdbcee..f56816d8 100644 +--- a/caddytest/integration/autohttps_test.go ++++ b/caddytest/integration/autohttps_test.go +@@ -2,12 +2,16 @@ package integration + + import ( + "net/http" ++ "os" + "testing" + + "github.com/caddyserver/caddy/v2/caddytest" + ) + + func TestAutoHTTPtoHTTPSRedirectsImplicitPort(t *testing.T) { ++ if os.Getenv("RPM_BUILD_ROOT") != "" { ++ t.SkipNow() + } tester := caddytest.NewTester(t) tester.InitServer(` { diff --git a/caddytest/integration/caddyfile_test.go b/caddytest/integration/caddyfile_test.go -index 11ffc08a..25aed784 100644 +index 11ffc08a..e1a1e375 100644 --- a/caddytest/integration/caddyfile_test.go +++ b/caddytest/integration/caddyfile_test.go @@ -3,6 +3,7 @@ package integration @@ -119,6 +164,16 @@ index 11ffc08a..25aed784 100644 tester := caddytest.NewTester(t) tester.InitServer(` { +@@ -537,6 +544,9 @@ func TestHttpRequestLocalPortPlaceholder(t *testing.T) { + } + + func TestSetThenAddQueryParams(t *testing.T) { ++ if os.Getenv("RPM_BUILD_ROOT") != "" { ++ t.SkipNow() ++ } + tester := caddytest.NewTester(t) + + tester.InitServer(` diff --git a/caddytest/integration/handler_test.go b/caddytest/integration/handler_test.go index afc700b0..93d07bb9 100644 --- a/caddytest/integration/handler_test.go @@ -184,6 +239,30 @@ index 30642b1a..f1d8d07e 100644 const uploadSize = (1024 * 1024) + 1 // 1 MB + 1 byte // 1 more than an MB body := make([]byte, uploadSize) +diff --git a/caddytest/integration/reverseproxy_test.go b/caddytest/integration/reverseproxy_test.go +index cbfe8433..cb9944d4 100644 +--- a/caddytest/integration/reverseproxy_test.go ++++ b/caddytest/integration/reverseproxy_test.go +@@ -327,6 +327,9 @@ func TestReverseProxyWithPlaceholderTCPDialAddress(t *testing.T) { + } + + func TestReverseProxyHealthCheck(t *testing.T) { ++ if os.Getenv("RPM_BUILD_ROOT") != "" { ++ t.SkipNow() ++ } + tester := caddytest.NewTester(t) + tester.InitServer(` + { +@@ -419,6 +422,9 @@ func TestReverseProxyHealthCheckUnixSocket(t *testing.T) { + } + + func TestReverseProxyHealthCheckUnixSocketWithoutPort(t *testing.T) { ++ if os.Getenv("RPM_BUILD_ROOT") != "" { ++ t.SkipNow() ++ } + if runtime.GOOS == "windows" { + t.SkipNow() + } -- 2.47.1 diff --git a/caddy.spec b/caddy.spec index f5992c5..06f8702 100644 --- a/caddy.spec +++ b/caddy.spec @@ -26,8 +26,8 @@ Source31: poweredby-black.png # downstream only patch to disable commands that can alter the binary Patch1: 0001-Disable-commands-that-can-alter-the-binary.patch -# downstream only patch to skip ACME integration tests -Patch2: 0002-Skip-ACME-integration-tests-that-fail-in-an-RPM-build-environment.patch +# downstream only patch to skip certain tests +Patch2: 0002-Skip-tests-that-fail-in-an-RPM-build-environment.patch %if %{defined el8} ExclusiveArch: %{golang_arches} From f05422fa4475c21481a9293b82f4cd04812c65b4 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 16 Jan 2025 13:10:54 +0000 Subject: [PATCH 70/79] Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild --- caddy.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/caddy.spec b/caddy.spec index 06f8702..3a0018e 100644 --- a/caddy.spec +++ b/caddy.spec @@ -2,7 +2,7 @@ Name: caddy Version: 2.9.1 -Release: 1%{?dist} +Release: 2%{?dist} Summary: Web server with automatic HTTPS # main source code is Apache-2.0 @@ -486,6 +486,9 @@ fi %changelog +* Thu Jan 16 2025 Fedora Release Engineering - 2.9.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + * Wed Jan 08 2025 Carl George - 2.9.1-1 - Update to version 2.9.1 rhbz#2336409 From 9fd11293df10a0fb398dcf035329f60edb4f467f Mon Sep 17 00:00:00 2001 From: Carl George Date: Wed, 22 Jan 2025 14:05:44 -0600 Subject: [PATCH 71/79] Run tests with -short flag like upstream to avoid test failures Resolves: FTBFS rhbz#2339573 rhbz#2339954 --- ...hat-fail-in-an-RPM-build-environment.patch | 268 ------------------ caddy.spec | 14 +- 2 files changed, 11 insertions(+), 271 deletions(-) delete mode 100644 0002-Skip-tests-that-fail-in-an-RPM-build-environment.patch diff --git a/0002-Skip-tests-that-fail-in-an-RPM-build-environment.patch b/0002-Skip-tests-that-fail-in-an-RPM-build-environment.patch deleted file mode 100644 index 5a1f9e5..0000000 --- a/0002-Skip-tests-that-fail-in-an-RPM-build-environment.patch +++ /dev/null @@ -1,268 +0,0 @@ -From 36fd7bf190357e1cf3c845d964349c161b8a18b4 Mon Sep 17 00:00:00 2001 -From: Carl George -Date: Thu, 30 May 2024 21:48:09 -0500 -Subject: [PATCH 2/2] Skip tests that fail in an RPM build environment - ---- - caddytest/caddytest_test.go | 4 ++++ - caddytest/integration/acme_test.go | 7 +++++++ - caddytest/integration/acmeserver_test.go | 10 ++++++++++ - caddytest/integration/autohttps_test.go | 4 ++++ - caddytest/integration/caddyfile_test.go | 10 ++++++++++ - caddytest/integration/handler_test.go | 4 ++++ - caddytest/integration/leafcertloaders_test.go | 4 ++++ - caddytest/integration/listener_test.go | 4 ++++ - caddytest/integration/reverseproxy_test.go | 6 ++++++ - 9 files changed, 53 insertions(+) - -diff --git a/caddytest/caddytest_test.go b/caddytest/caddytest_test.go -index a9d5da93..73aec0b4 100644 ---- a/caddytest/caddytest_test.go -+++ b/caddytest/caddytest_test.go -@@ -2,6 +2,7 @@ package caddytest - - import ( - "net/http" -+ "os" - "strings" - "testing" - ) -@@ -34,6 +35,9 @@ func TestReplaceCertificatePaths(t *testing.T) { - } - - func TestLoadUnorderedJSON(t *testing.T) { -+ if os.Getenv("RPM_BUILD_ROOT") != "" { -+ t.SkipNow() -+ } - tester := NewTester(t) - tester.InitServer(` - { -diff --git a/caddytest/integration/acme_test.go b/caddytest/integration/acme_test.go -index d7e4c296..203dd9bc 100644 ---- a/caddytest/integration/acme_test.go -+++ b/caddytest/integration/acme_test.go -@@ -9,6 +9,7 @@ import ( - "log/slog" - "net" - "net/http" -+ "os" - "strings" - "testing" - -@@ -25,6 +26,9 @@ const acmeChallengePort = 9081 - - // Test the basic functionality of Caddy's ACME server - func TestACMEServerWithDefaults(t *testing.T) { -+ if os.Getenv("RPM_BUILD_ROOT") != "" { -+ t.SkipNow() -+ } - ctx := context.Background() - logger, err := zap.NewDevelopment() - if err != nil { -@@ -96,6 +100,9 @@ func TestACMEServerWithDefaults(t *testing.T) { - } - - func TestACMEServerWithMismatchedChallenges(t *testing.T) { -+ if os.Getenv("RPM_BUILD_ROOT") != "" { -+ t.SkipNow() -+ } - ctx := context.Background() - logger := caddy.Log().Named("acmez") - -diff --git a/caddytest/integration/acmeserver_test.go b/caddytest/integration/acmeserver_test.go -index ca5845f8..6bc13fed 100644 ---- a/caddytest/integration/acmeserver_test.go -+++ b/caddytest/integration/acmeserver_test.go -@@ -6,6 +6,7 @@ import ( - "crypto/elliptic" - "crypto/rand" - "log/slog" -+ "os" - "strings" - "testing" - -@@ -17,6 +18,9 @@ import ( - ) - - func TestACMEServerDirectory(t *testing.T) { -+ if os.Getenv("RPM_BUILD_ROOT") != "" { -+ t.SkipNow() -+ } - tester := caddytest.NewTester(t) - tester.InitServer(` - { -@@ -43,6 +47,9 @@ func TestACMEServerDirectory(t *testing.T) { - } - - func TestACMEServerAllowPolicy(t *testing.T) { -+ if os.Getenv("RPM_BUILD_ROOT") != "" { -+ t.SkipNow() -+ } - tester := caddytest.NewTester(t) - tester.InitServer(` - { -@@ -133,6 +140,9 @@ func TestACMEServerAllowPolicy(t *testing.T) { - } - - func TestACMEServerDenyPolicy(t *testing.T) { -+ if os.Getenv("RPM_BUILD_ROOT") != "" { -+ t.SkipNow() -+ } - tester := caddytest.NewTester(t) - tester.InitServer(` - { -diff --git a/caddytest/integration/autohttps_test.go b/caddytest/integration/autohttps_test.go -index 1dbdbcee..f56816d8 100644 ---- a/caddytest/integration/autohttps_test.go -+++ b/caddytest/integration/autohttps_test.go -@@ -2,12 +2,16 @@ package integration - - import ( - "net/http" -+ "os" - "testing" - - "github.com/caddyserver/caddy/v2/caddytest" - ) - - func TestAutoHTTPtoHTTPSRedirectsImplicitPort(t *testing.T) { -+ if os.Getenv("RPM_BUILD_ROOT") != "" { -+ t.SkipNow() -+ } - tester := caddytest.NewTester(t) - tester.InitServer(` - { -diff --git a/caddytest/integration/caddyfile_test.go b/caddytest/integration/caddyfile_test.go -index 11ffc08a..e1a1e375 100644 ---- a/caddytest/integration/caddyfile_test.go -+++ b/caddytest/integration/caddyfile_test.go -@@ -3,6 +3,7 @@ package integration - import ( - "net/http" - "net/url" -+ "os" - "testing" - - "github.com/caddyserver/caddy/v2/caddytest" -@@ -73,6 +74,9 @@ func TestDuplicateHosts(t *testing.T) { - } - - func TestReadCookie(t *testing.T) { -+ if os.Getenv("RPM_BUILD_ROOT") != "" { -+ t.SkipNow() -+ } - localhost, _ := url.Parse("http://localhost") - cookie := http.Cookie{ - Name: "clientname", -@@ -106,6 +110,9 @@ func TestReadCookie(t *testing.T) { - } - - func TestReplIndex(t *testing.T) { -+ if os.Getenv("RPM_BUILD_ROOT") != "" { -+ t.SkipNow() -+ } - tester := caddytest.NewTester(t) - tester.InitServer(` - { -@@ -537,6 +544,9 @@ func TestHttpRequestLocalPortPlaceholder(t *testing.T) { - } - - func TestSetThenAddQueryParams(t *testing.T) { -+ if os.Getenv("RPM_BUILD_ROOT") != "" { -+ t.SkipNow() -+ } - tester := caddytest.NewTester(t) - - tester.InitServer(` -diff --git a/caddytest/integration/handler_test.go b/caddytest/integration/handler_test.go -index afc700b0..93d07bb9 100644 ---- a/caddytest/integration/handler_test.go -+++ b/caddytest/integration/handler_test.go -@@ -3,6 +3,7 @@ package integration - import ( - "bytes" - "net/http" -+ "os" - "testing" - - "github.com/caddyserver/caddy/v2/caddytest" -@@ -32,6 +33,9 @@ func TestBrowse(t *testing.T) { - } - - func TestRespondWithJSON(t *testing.T) { -+ if os.Getenv("RPM_BUILD_ROOT") != "" { -+ t.SkipNow() -+ } - tester := caddytest.NewTester(t) - tester.InitServer(` - { -diff --git a/caddytest/integration/leafcertloaders_test.go b/caddytest/integration/leafcertloaders_test.go -index 4399902e..de8539dd 100644 ---- a/caddytest/integration/leafcertloaders_test.go -+++ b/caddytest/integration/leafcertloaders_test.go -@@ -1,12 +1,16 @@ - package integration - - import ( -+ "os" - "testing" - - "github.com/caddyserver/caddy/v2/caddytest" - ) - - func TestLeafCertLoaders(t *testing.T) { -+ if os.Getenv("RPM_BUILD_ROOT") != "" { -+ t.SkipNow() -+ } - tester := caddytest.NewTester(t) - tester.InitServer(` - { -diff --git a/caddytest/integration/listener_test.go b/caddytest/integration/listener_test.go -index 30642b1a..f1d8d07e 100644 ---- a/caddytest/integration/listener_test.go -+++ b/caddytest/integration/listener_test.go -@@ -6,6 +6,7 @@ import ( - "math/rand" - "net" - "net/http" -+ "os" - "strings" - "testing" - -@@ -51,6 +52,9 @@ func setupListenerWrapperTest(t *testing.T, handlerFunc http.HandlerFunc) *caddy - } - - func TestHTTPRedirectWrapperWithLargeUpload(t *testing.T) { -+ if os.Getenv("RPM_BUILD_ROOT") != "" { -+ t.SkipNow() -+ } - const uploadSize = (1024 * 1024) + 1 // 1 MB + 1 byte - // 1 more than an MB - body := make([]byte, uploadSize) -diff --git a/caddytest/integration/reverseproxy_test.go b/caddytest/integration/reverseproxy_test.go -index cbfe8433..cb9944d4 100644 ---- a/caddytest/integration/reverseproxy_test.go -+++ b/caddytest/integration/reverseproxy_test.go -@@ -327,6 +327,9 @@ func TestReverseProxyWithPlaceholderTCPDialAddress(t *testing.T) { - } - - func TestReverseProxyHealthCheck(t *testing.T) { -+ if os.Getenv("RPM_BUILD_ROOT") != "" { -+ t.SkipNow() -+ } - tester := caddytest.NewTester(t) - tester.InitServer(` - { -@@ -419,6 +422,9 @@ func TestReverseProxyHealthCheckUnixSocket(t *testing.T) { - } - - func TestReverseProxyHealthCheckUnixSocketWithoutPort(t *testing.T) { -+ if os.Getenv("RPM_BUILD_ROOT") != "" { -+ t.SkipNow() -+ } - if runtime.GOOS == "windows" { - t.SkipNow() - } --- -2.47.1 - diff --git a/caddy.spec b/caddy.spec index 3a0018e..b9a59e7 100644 --- a/caddy.spec +++ b/caddy.spec @@ -1,8 +1,14 @@ %global goipath github.com/caddyserver/caddy +%if %{defined el8} +%global gotest() go test -short -compiler gc -ldflags "${LDFLAGS:-}" %{?**}; +%else +%global gotestflags %{gocompilerflags} -short +%endif + Name: caddy Version: 2.9.1 -Release: 2%{?dist} +Release: 3%{?dist} Summary: Web server with automatic HTTPS # main source code is Apache-2.0 @@ -26,8 +32,6 @@ Source31: poweredby-black.png # downstream only patch to disable commands that can alter the binary Patch1: 0001-Disable-commands-that-can-alter-the-binary.patch -# downstream only patch to skip certain tests -Patch2: 0002-Skip-tests-that-fail-in-an-RPM-build-environment.patch %if %{defined el8} ExclusiveArch: %{golang_arches} @@ -486,6 +490,10 @@ fi %changelog +* Wed Jan 22 2025 Carl George - 2.9.1-3 +- Run tests with -short flag like upstream to avoid test failures +- Resolves FTBFS rhbz#2339573 rhbz#2339954 + * Thu Jan 16 2025 Fedora Release Engineering - 2.9.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild From 538b1d0c53498b92691b7b97b06b349a6bfa57fe Mon Sep 17 00:00:00 2001 From: Carl George Date: Fri, 18 Apr 2025 17:27:45 -0500 Subject: [PATCH 72/79] Convert to %autorelease and %autochangelog [skip changelog] --- caddy.spec | 288 +---------------------------------------------------- changelog | 285 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 287 insertions(+), 286 deletions(-) create mode 100644 changelog diff --git a/caddy.spec b/caddy.spec index b9a59e7..7c11165 100644 --- a/caddy.spec +++ b/caddy.spec @@ -8,7 +8,7 @@ Name: caddy Version: 2.9.1 -Release: 3%{?dist} +Release: %autorelease Summary: Web server with automatic HTTPS # main source code is Apache-2.0 @@ -490,288 +490,4 @@ fi %changelog -* Wed Jan 22 2025 Carl George - 2.9.1-3 -- Run tests with -short flag like upstream to avoid test failures -- Resolves FTBFS rhbz#2339573 rhbz#2339954 - -* Thu Jan 16 2025 Fedora Release Engineering - 2.9.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild - -* Wed Jan 08 2025 Carl George - 2.9.1-1 -- Update to version 2.9.1 rhbz#2336409 - -* Wed Jan 01 2025 Carl George - 2.9.0-1 -- Update to version 2.9.0 rhbz#2316289 - -* Wed Jul 17 2024 Fedora Release Engineering - 2.8.4-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild - -* Fri Jul 05 2024 Carl George - 2.8.4-1 -- Update to version 2.8.4 rhbz#2278549 -- Resolves CVE-2023-49295 rhbz#2257829 -- Resolves CVE-2024-27304 rhbz#2268278 -- Resolves CVE-2024-27289 rhbz#2268468 -- Resolves CVE-2024-28180 rhbz#2268877 -- Resolves CVE-2024-22189 rhbz#2273517 -- Remove LimitNPROC from systemd unit files - -* Sun Feb 11 2024 Maxwell G - 2.7.6-2 -- Rebuild for golang 1.22.0 - -* Fri Feb 09 2024 Carl George - 2.7.6-1 -- Update to version 2.7.6 rhbz#2253698 -- Includes fix for CVE-2023-45142 rhbz#2246587 - -* Tue Jan 23 2024 Fedora Release Engineering - 2.7.5-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Fri Jan 19 2024 Fedora Release Engineering - 2.7.5-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild - -* Mon Oct 30 2023 Carl George - 2.7.5-1 -- Update to version 2.7.5 -- Update poweredby logos -- Add symlink for system_noindex_logo.png on EL9 -- Symlink directly to fedora-testpage directory on Fedora - -* Thu Aug 17 2023 Carl George - 2.7.4-1 -- Update to version 2.7.4, resolves rhbz#2232696 -- Fix CVE-2023-3978, resolves rhbz#2229582 - -* Tue Aug 08 2023 Carl George - 2.7.3-1 -- Update to version 2.7.3, resolves rhbz#2229638 - -* Thu Aug 03 2023 Carl George - 2.7.2-1 -- Update to version 2.7.2, resolves rhbz#2228776 - -* Thu Jul 27 2023 Carl George - 2.7.0~beta2-1 -- Update to version 2.7.0~beta2, resolves rhbz#2225732 rhbz#2124366 -- Resolves CVE-2022-41717 rhbz#2164315 -- Resolves CVE-2022-41723 rhbz#2178412 -- Add man pages -- Use generated shell completion files instead of static ones -- Add fish shell completions -- Switch to systemd sysusers - -* Wed Jul 19 2023 Fedora Release Engineering - 2.5.2-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild - -* Tue Jan 24 2023 Carl George - 2.5.2-3 -- Rebuild for CVE-2022-41717 in golang - -* Wed Jan 18 2023 Fedora Release Engineering - 2.5.2-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild - -* Tue Aug 09 2022 Carl George - 2.5.2-1 -- Latest upstream, resolves rhbz#2062499 rhbz#2113136 - -* Wed Jul 20 2022 Fedora Release Engineering - 2.4.6-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild - -* Tue Jul 19 2022 Maxwell G - 2.4.6-4 -- Rebuild for CVE-2022-{1705,32148,30631,30633,28131,30635,30632,30630,1962} in - golang - -* Fri Jun 17 2022 Robert-André Mauchin - 2.4.6-3 -- Rebuilt for CVE-2022-1996, CVE-2022-24675, CVE-2022-28327, CVE-2022-27191, - CVE-2022-29526, CVE-2022-30629 - -* Fri Feb 25 2022 Carl George - 2.4.6-2 -- Update welcome page symlink and image to work on both Fedora and EPEL - -* Wed Feb 16 2022 Carl George - 2.4.6-1 -- Latest upstream rhbz#1984163 - -* Wed Jan 19 2022 Fedora Release Engineering - 2.3.0-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild - -* Wed Jul 21 2021 Fedora Release Engineering - 2.3.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Wed Mar 03 2021 Carl George - 2.3.0-1 -- Latest upstream -- Fix vendored license handling -- Switch to white logo rhbz#1934864 - -* Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek - 2.2.1-3 -- Rebuilt for updated systemd-rpm-macros - See https://pagure.io/fesco/issue/2583. - -* Tue Jan 26 2021 Fedora Release Engineering - 2.2.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Fri Oct 30 2020 Carl George - 2.2.1-1 -- Latest upstream - -* Sat Sep 26 2020 Carl George - 2.2.0-1 -- Latest upstream - -* Sat Sep 19 2020 Carl George - 2.2.0~rc3-1 -- Latest upstream - -* Fri Aug 14 2020 Carl George - 2.1.1-2 -- Add bash and zsh completion support - -* Sun Aug 09 2020 Carl George - 2.1.1-1 -- Update to Caddy v2 -- Remove all v1 plugins -- Use vendored dependencies -- Remove devel subpackage -- Rename config file per upstream request -- Use webserver test page from system-logos-httpd - -* Sat Aug 01 2020 Fedora Release Engineering - 1.0.4-3 -- Second attempt - Rebuilt for - https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Mon Jul 27 2020 Fedora Release Engineering - 1.0.4-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Tue Jul 07 20:56:10 CEST 2020 Robert-André Mauchin - 1.0.4-1 -- Update to 1.0.4 (#1803691) - -* Mon Feb 17 2020 Elliott Sales de Andrade - 1.0.3-3 -- Rebuilt for GHSA-jf24-p9p9-4rjh - -* Tue Jan 28 2020 Fedora Release Engineering - 1.0.3-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - -* Sat Sep 07 2019 Carl George - 1.0.3-1 -- Latest upstream -- Remove bundled lego and plugins -- Remove dyn, gandi, namecheap, and rfc2136 dns providers -- Add patch0 to fix `-version` flag -- Add patch1 to adjust blackfriday import path -- Add devel subpackages -- Run test suite - -* Wed Jul 24 2019 Fedora Release Engineering - 0.11.4-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Thu May 09 2019 Carl George - 0.11.4-2 -- Switch unit file from ProtectSystem strict to full rhbz#1706651 - -* Wed Mar 06 2019 Carl George - 0.11.4-1 -- Latest upstream -- Update bundled dnsproviders to 0.1.3 -- Update bundled lego to 2.2.0 -- Enable googlecloud, route53, and azure dns providers on epel7 -- Allow custom http port with default config file rhbz#1685446 - -* Thu Jan 31 2019 Fedora Release Engineering - 0.11.1-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Wed Nov 14 2018 Carl George - 0.11.1-2 -- Buildrequires at least golang 1.10 - -* Tue Nov 13 2018 Carl George - 0.11.1-1 -- Latest upstream -- Update bundled geoip - -* Fri Oct 19 2018 Carl George - 0.11.0-3 -- Enable httpd_can_network_connect selinux boolean to connect to ACME endpoint rhbz#1641158 -- Define UDP 80/443 as selinux http_port_t for QUIC rhbz#1608548 -- Define TCP 5033 as selinux http_port_t for HTTP challenge rhbz#1641160 - -* Thu Jul 12 2018 Fedora Release Engineering - 0.11.0-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild - -* Sat May 12 2018 Carl George - 0.11.0-1 -- Latest upstream - -* Sat Apr 21 2018 Carl George - 0.10.14-1 -- Latest upstream -- Overhaul %%prep to extract everything with %%setup -- Edit lego providers to require acmev2 instead of acme -- Add provides for specific providers from %%import_path_dnsproviders and %%import_path_lego -- Add azure dns provider on f28+ - -* Fri Apr 20 2018 Carl George - 0.10.11-6 -- Enable geoip plugin on EL7 -- Only provide bundled geoip/realip/dnsproviders/lego when the respective plugin is enabled - -* Wed Apr 18 2018 Carl George - 0.10.11-5 -- Add geoip plugin - -* Tue Apr 17 2018 Carl George - 0.10.11-4 -- Correct ExclusiveArch fallback - -* Mon Apr 16 2018 Carl George - 0.10.11-3 -- Enable s390x -- Disable googlecloud and route53 dns providers on EL7 due to dependency issues - -* Fri Mar 30 2018 Carl George - 0.10.11-2 -- Add googlecloud dns provider -- Add route53 dns provider -- Set minimum golang version to 1.9 -- Set selinux labels in scriptlets - -* Sat Feb 24 2018 Carl George - 0.10.11-1 -- Latest upstream - -* Sat Feb 24 2018 Carl George - 0.10.10-4 -- Change ProtectSystem from strict to full in unit file on RHEL - -* Wed Feb 07 2018 Fedora Release Engineering - 0.10.10-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild - -* Thu Jan 11 2018 Carl George - 0.10.10-2 -- Add powerdns provider - -* Mon Oct 09 2017 Carl George - 0.10.10-1 -- Latest upstream - -* Mon Oct 02 2017 Carl George - 0.10.9-6 -- Add provides for bundled libraries - -* Mon Oct 02 2017 Carl George - 0.10.9-5 -- Enable rfc2136 dns provider -- List plugins in description - -* Mon Sep 18 2017 Carl George - 0.10.9-4 -- Exclude s390x - -* Sun Sep 17 2017 Carl George - 0.10.9-3 -- Add realip plugin -- Add conditionals for plugins - -* Sat Sep 16 2017 Carl George - 0.10.9-2 -- Add sources for caddyserver/dnsproviders and xenolf/lego -- Disable all dns providers that require additional libraries (dnsimple, dnspod, googlecloud, linode, ovh, route53, vultr) -- Rewrite default index.html - -* Tue Sep 12 2017 Carl George - 0.10.9-1 -- Latest upstream -- Add config validation to unit file -- Disable exoscale dns provider https://github.com/xenolf/lego/issues/429 - -* Fri Sep 08 2017 Carl George - 0.10.8-1 -- Latest upstream -- Build with %%gobuild macro -- Move config subdirectory from /etc/caddy/caddy.conf.d to /etc/caddy/conf.d - -* Tue Aug 29 2017 Carl George - 0.10.7-1 -- Latest upstream - -* Fri Aug 25 2017 Carl George - 0.10.6-2 -- Use SIQQUIT to stop service -- Increase the process limit from 64 to 512 -- Only `go get` in caddy/caddymain - -* Fri Aug 11 2017 Carl George - 0.10.6-1 -- Latest upstream -- Add webserver virtual provides -- Drop tmpfiles and just own /var/lib/caddy directly -- Remove PrivateDevices setting from unit file, it prevents selinux process transitions -- Disable rfc2136 dns provider https://github.com/caddyserver/dnsproviders/issues/11 - -* Sat Jun 03 2017 Carl George - 0.10.3-2 -- Rename Envfile to envfile -- Rename Caddyfile to caddy.conf -- Include additional configs from caddy.conf.d directory - -* Fri May 19 2017 Carl George - 0.10.3-1 -- Latest upstream - -* Mon May 15 2017 Carl George - 0.10.2-1 -- Initial package +%autochangelog diff --git a/changelog b/changelog new file mode 100644 index 0000000..8e10c3e --- /dev/null +++ b/changelog @@ -0,0 +1,285 @@ +* Wed Jan 22 2025 Carl George - 2.9.1-3 +- Run tests with -short flag like upstream to avoid test failures +- Resolves FTBFS rhbz#2339573 rhbz#2339954 + +* Thu Jan 16 2025 Fedora Release Engineering - 2.9.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild + +* Wed Jan 08 2025 Carl George - 2.9.1-1 +- Update to version 2.9.1 rhbz#2336409 + +* Wed Jan 01 2025 Carl George - 2.9.0-1 +- Update to version 2.9.0 rhbz#2316289 + +* Wed Jul 17 2024 Fedora Release Engineering - 2.8.4-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild + +* Fri Jul 05 2024 Carl George - 2.8.4-1 +- Update to version 2.8.4 rhbz#2278549 +- Resolves CVE-2023-49295 rhbz#2257829 +- Resolves CVE-2024-27304 rhbz#2268278 +- Resolves CVE-2024-27289 rhbz#2268468 +- Resolves CVE-2024-28180 rhbz#2268877 +- Resolves CVE-2024-22189 rhbz#2273517 +- Remove LimitNPROC from systemd unit files + +* Sun Feb 11 2024 Maxwell G - 2.7.6-2 +- Rebuild for golang 1.22.0 + +* Fri Feb 09 2024 Carl George - 2.7.6-1 +- Update to version 2.7.6 rhbz#2253698 +- Includes fix for CVE-2023-45142 rhbz#2246587 + +* Tue Jan 23 2024 Fedora Release Engineering - 2.7.5-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Fri Jan 19 2024 Fedora Release Engineering - 2.7.5-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild + +* Mon Oct 30 2023 Carl George - 2.7.5-1 +- Update to version 2.7.5 +- Update poweredby logos +- Add symlink for system_noindex_logo.png on EL9 +- Symlink directly to fedora-testpage directory on Fedora + +* Thu Aug 17 2023 Carl George - 2.7.4-1 +- Update to version 2.7.4, resolves rhbz#2232696 +- Fix CVE-2023-3978, resolves rhbz#2229582 + +* Tue Aug 08 2023 Carl George - 2.7.3-1 +- Update to version 2.7.3, resolves rhbz#2229638 + +* Thu Aug 03 2023 Carl George - 2.7.2-1 +- Update to version 2.7.2, resolves rhbz#2228776 + +* Thu Jul 27 2023 Carl George - 2.7.0~beta2-1 +- Update to version 2.7.0~beta2, resolves rhbz#2225732 rhbz#2124366 +- Resolves CVE-2022-41717 rhbz#2164315 +- Resolves CVE-2022-41723 rhbz#2178412 +- Add man pages +- Use generated shell completion files instead of static ones +- Add fish shell completions +- Switch to systemd sysusers + +* Wed Jul 19 2023 Fedora Release Engineering - 2.5.2-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild + +* Tue Jan 24 2023 Carl George - 2.5.2-3 +- Rebuild for CVE-2022-41717 in golang + +* Wed Jan 18 2023 Fedora Release Engineering - 2.5.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild + +* Tue Aug 09 2022 Carl George - 2.5.2-1 +- Latest upstream, resolves rhbz#2062499 rhbz#2113136 + +* Wed Jul 20 2022 Fedora Release Engineering - 2.4.6-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild + +* Tue Jul 19 2022 Maxwell G - 2.4.6-4 +- Rebuild for CVE-2022-{1705,32148,30631,30633,28131,30635,30632,30630,1962} in + golang + +* Fri Jun 17 2022 Robert-André Mauchin - 2.4.6-3 +- Rebuilt for CVE-2022-1996, CVE-2022-24675, CVE-2022-28327, CVE-2022-27191, + CVE-2022-29526, CVE-2022-30629 + +* Fri Feb 25 2022 Carl George - 2.4.6-2 +- Update welcome page symlink and image to work on both Fedora and EPEL + +* Wed Feb 16 2022 Carl George - 2.4.6-1 +- Latest upstream rhbz#1984163 + +* Wed Jan 19 2022 Fedora Release Engineering - 2.3.0-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild + +* Wed Jul 21 2021 Fedora Release Engineering - 2.3.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Wed Mar 03 2021 Carl George - 2.3.0-1 +- Latest upstream +- Fix vendored license handling +- Switch to white logo rhbz#1934864 + +* Tue Mar 02 2021 Zbigniew Jędrzejewski-Szmek - 2.2.1-3 +- Rebuilt for updated systemd-rpm-macros + See https://pagure.io/fesco/issue/2583. + +* Tue Jan 26 2021 Fedora Release Engineering - 2.2.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Fri Oct 30 2020 Carl George - 2.2.1-1 +- Latest upstream + +* Sat Sep 26 2020 Carl George - 2.2.0-1 +- Latest upstream + +* Sat Sep 19 2020 Carl George - 2.2.0~rc3-1 +- Latest upstream + +* Fri Aug 14 2020 Carl George - 2.1.1-2 +- Add bash and zsh completion support + +* Sun Aug 09 2020 Carl George - 2.1.1-1 +- Update to Caddy v2 +- Remove all v1 plugins +- Use vendored dependencies +- Remove devel subpackage +- Rename config file per upstream request +- Use webserver test page from system-logos-httpd + +* Sat Aug 01 2020 Fedora Release Engineering - 1.0.4-3 +- Second attempt - Rebuilt for + https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Mon Jul 27 2020 Fedora Release Engineering - 1.0.4-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Tue Jul 07 20:56:10 CEST 2020 Robert-André Mauchin - 1.0.4-1 +- Update to 1.0.4 (#1803691) + +* Mon Feb 17 2020 Elliott Sales de Andrade - 1.0.3-3 +- Rebuilt for GHSA-jf24-p9p9-4rjh + +* Tue Jan 28 2020 Fedora Release Engineering - 1.0.3-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Sat Sep 07 2019 Carl George - 1.0.3-1 +- Latest upstream +- Remove bundled lego and plugins +- Remove dyn, gandi, namecheap, and rfc2136 dns providers +- Add patch0 to fix `-version` flag +- Add patch1 to adjust blackfriday import path +- Add devel subpackages +- Run test suite + +* Wed Jul 24 2019 Fedora Release Engineering - 0.11.4-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Thu May 09 2019 Carl George - 0.11.4-2 +- Switch unit file from ProtectSystem strict to full rhbz#1706651 + +* Wed Mar 06 2019 Carl George - 0.11.4-1 +- Latest upstream +- Update bundled dnsproviders to 0.1.3 +- Update bundled lego to 2.2.0 +- Enable googlecloud, route53, and azure dns providers on epel7 +- Allow custom http port with default config file rhbz#1685446 + +* Thu Jan 31 2019 Fedora Release Engineering - 0.11.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Wed Nov 14 2018 Carl George - 0.11.1-2 +- Buildrequires at least golang 1.10 + +* Tue Nov 13 2018 Carl George - 0.11.1-1 +- Latest upstream +- Update bundled geoip + +* Fri Oct 19 2018 Carl George - 0.11.0-3 +- Enable httpd_can_network_connect selinux boolean to connect to ACME endpoint rhbz#1641158 +- Define UDP 80/443 as selinux http_port_t for QUIC rhbz#1608548 +- Define TCP 5033 as selinux http_port_t for HTTP challenge rhbz#1641160 + +* Thu Jul 12 2018 Fedora Release Engineering - 0.11.0-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Sat May 12 2018 Carl George - 0.11.0-1 +- Latest upstream + +* Sat Apr 21 2018 Carl George - 0.10.14-1 +- Latest upstream +- Overhaul %%prep to extract everything with %%setup +- Edit lego providers to require acmev2 instead of acme +- Add provides for specific providers from %%import_path_dnsproviders and %%import_path_lego +- Add azure dns provider on f28+ + +* Fri Apr 20 2018 Carl George - 0.10.11-6 +- Enable geoip plugin on EL7 +- Only provide bundled geoip/realip/dnsproviders/lego when the respective plugin is enabled + +* Wed Apr 18 2018 Carl George - 0.10.11-5 +- Add geoip plugin + +* Tue Apr 17 2018 Carl George - 0.10.11-4 +- Correct ExclusiveArch fallback + +* Mon Apr 16 2018 Carl George - 0.10.11-3 +- Enable s390x +- Disable googlecloud and route53 dns providers on EL7 due to dependency issues + +* Fri Mar 30 2018 Carl George - 0.10.11-2 +- Add googlecloud dns provider +- Add route53 dns provider +- Set minimum golang version to 1.9 +- Set selinux labels in scriptlets + +* Sat Feb 24 2018 Carl George - 0.10.11-1 +- Latest upstream + +* Sat Feb 24 2018 Carl George - 0.10.10-4 +- Change ProtectSystem from strict to full in unit file on RHEL + +* Wed Feb 07 2018 Fedora Release Engineering - 0.10.10-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Thu Jan 11 2018 Carl George - 0.10.10-2 +- Add powerdns provider + +* Mon Oct 09 2017 Carl George - 0.10.10-1 +- Latest upstream + +* Mon Oct 02 2017 Carl George - 0.10.9-6 +- Add provides for bundled libraries + +* Mon Oct 02 2017 Carl George - 0.10.9-5 +- Enable rfc2136 dns provider +- List plugins in description + +* Mon Sep 18 2017 Carl George - 0.10.9-4 +- Exclude s390x + +* Sun Sep 17 2017 Carl George - 0.10.9-3 +- Add realip plugin +- Add conditionals for plugins + +* Sat Sep 16 2017 Carl George - 0.10.9-2 +- Add sources for caddyserver/dnsproviders and xenolf/lego +- Disable all dns providers that require additional libraries (dnsimple, dnspod, googlecloud, linode, ovh, route53, vultr) +- Rewrite default index.html + +* Tue Sep 12 2017 Carl George - 0.10.9-1 +- Latest upstream +- Add config validation to unit file +- Disable exoscale dns provider https://github.com/xenolf/lego/issues/429 + +* Fri Sep 08 2017 Carl George - 0.10.8-1 +- Latest upstream +- Build with %%gobuild macro +- Move config subdirectory from /etc/caddy/caddy.conf.d to /etc/caddy/conf.d + +* Tue Aug 29 2017 Carl George - 0.10.7-1 +- Latest upstream + +* Fri Aug 25 2017 Carl George - 0.10.6-2 +- Use SIQQUIT to stop service +- Increase the process limit from 64 to 512 +- Only `go get` in caddy/caddymain + +* Fri Aug 11 2017 Carl George - 0.10.6-1 +- Latest upstream +- Add webserver virtual provides +- Drop tmpfiles and just own /var/lib/caddy directly +- Remove PrivateDevices setting from unit file, it prevents selinux process transitions +- Disable rfc2136 dns provider https://github.com/caddyserver/dnsproviders/issues/11 + +* Sat Jun 03 2017 Carl George - 0.10.3-2 +- Rename Envfile to envfile +- Rename Caddyfile to caddy.conf +- Include additional configs from caddy.conf.d directory + +* Fri May 19 2017 Carl George - 0.10.3-1 +- Latest upstream + +* Mon May 15 2017 Carl George - 0.10.2-1 +- Initial package From b7cb457c44b93db6795a0685886c9eb662930a47 Mon Sep 17 00:00:00 2001 From: Carl George Date: Fri, 18 Apr 2025 17:41:09 -0500 Subject: [PATCH 73/79] Update to version 2.10.0 rhbz#2350493 - Resolves CVE-2025-22872 - Resolves CVE-2024-45339 - Resolves CVE-2025-22869 --- caddy.spec | 613 ++++++++++++++++++++------------------- create-vendor-tarball.sh | 9 +- sources | 4 +- 3 files changed, 324 insertions(+), 302 deletions(-) diff --git a/caddy.spec b/caddy.spec index 7c11165..873f44c 100644 --- a/caddy.spec +++ b/caddy.spec @@ -7,17 +7,176 @@ %endif Name: caddy -Version: 2.9.1 +Version: 2.10.0 Release: %autorelease Summary: Web server with automatic HTTPS +URL: https://caddyserver.com # main source code is Apache-2.0 -# see comments above provides tags for bundled license breakdown -License: Apache-2.0 AND BSD-2-Clause AND BSD-3-Clause AND MIT AND BSD-2-Clause-Views AND CC0-1.0 AND ISC AND MPL-2.0 -URL: https://caddyserver.com -Source0: https://%{goipath}/archive/v%{version}/caddy-%{version}.tar.gz +# Apache-2.0: +# cel.dev/expr +# github.com/Masterminds/goutils +# github.com/caddyserver/certmagic +# github.com/dgraph-io/badger +# github.com/dgraph-io/badger/v2 +# github.com/go-logr/logr +# github.com/go-logr/stdr +# github.com/google/cel-go +# github.com/google/certificate-transparency-go +# github.com/google/go-tpm +# github.com/google/go-tspi +# github.com/google/pprof +# github.com/inconshreveable/mousetrap +# github.com/pires/go-proxyproto +# github.com/prometheus/client_model +# github.com/prometheus/procfs +# github.com/smallstep/go-attestation +# github.com/smallstep/nosql +# github.com/smallstep/truststore +# github.com/spf13/cobra +# go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp +# go.opentelemetry.io/contrib/propagators/autoprop +# go.opentelemetry.io/contrib/propagators/aws +# go.opentelemetry.io/contrib/propagators/b3 +# go.opentelemetry.io/contrib/propagators/jaeger +# go.opentelemetry.io/contrib/propagators/ot +# go.opentelemetry.io/otel +# go.opentelemetry.io/otel/exporters/otlp/otlptrace +# go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc +# go.opentelemetry.io/otel/metric +# go.opentelemetry.io/otel/sdk +# go.opentelemetry.io/otel/trace +# go.opentelemetry.io/proto/otlp +# go.step.sm/linkedca +# go.uber.org/mock +# google.golang.org/genproto/googleapis/api +# google.golang.org/genproto/googleapis/rpc +# google.golang.org/grpc +# BSD-2-Clause: +# github.com/pkg/errors +# github.com/russross/blackfriday/v2 +# BSD-3-Clause: +# dario.cat/mergo +# github.com/antlr4-go/antlr/v4 +# github.com/cloudflare/circl +# github.com/golang/protobuf +# github.com/golang/snappy +# github.com/google/uuid +# github.com/grpc-ecosystem/grpc-gateway/v2 +# github.com/manifoldco/promptui +# github.com/miekg/dns +# github.com/pbnjay/memory +# github.com/pmezard/go-difflib +# github.com/spf13/pflag +# github.com/tailscale/tscert +# golang.org/x/crypto +# golang.org/x/crypto/x509roots/fallback +# golang.org/x/exp +# golang.org/x/mod +# golang.org/x/net +# golang.org/x/sync +# golang.org/x/sys +# golang.org/x/term +# golang.org/x/text +# golang.org/x/time +# golang.org/x/tools +# google.golang.org/protobuf +# CC0-1.0: +# github.com/zeebo/blake3 +# ISC: +# github.com/davecgh/go-spew +# MIT: +# github.com/BurntSushi/toml +# github.com/KimMachineGun/automemlimit +# github.com/Masterminds/semver/v3 +# github.com/Masterminds/sprig/v3 +# github.com/Microsoft/go-winio +# github.com/alecthomas/chroma/v2 +# github.com/aryann/difflib +# github.com/beorn7/perks +# github.com/caddyserver/zerossl +# github.com/cenkalti/backoff/v4 +# github.com/cespare/xxhash +# github.com/cespare/xxhash/v2 +# github.com/chzyer/readline +# github.com/cpuguy83/go-md2man/v2 +# github.com/dgryski/go-farm +# github.com/dlclark/regexp2 +# github.com/dustin/go-humanize +# github.com/felixge/httpsnoop +# github.com/francoispqt/gojay +# github.com/fxamacker/cbor/v2 +# github.com/go-chi/chi/v5 +# github.com/go-kit/kit +# github.com/go-kit/log +# github.com/go-logfmt/logfmt +# github.com/go-task/slim-sprig +# github.com/huandu/xstrings +# github.com/jackc/chunkreader/v2 +# github.com/jackc/pgconn +# github.com/jackc/pgio +# github.com/jackc/pgpassfile +# github.com/jackc/pgproto3/v2 +# github.com/jackc/pgservicefile +# github.com/jackc/pgtype +# github.com/klauspost/cpuid/v2 +# github.com/libdns/libdns +# github.com/mattn/go-colorable +# github.com/mattn/go-isatty +# github.com/mgutz/ansi +# github.com/mitchellh/copystructure +# github.com/mitchellh/go-ps +# github.com/mitchellh/reflectwalk +# github.com/onsi/ginkgo/v2 +# github.com/quic-go/qpack +# github.com/quic-go/quic-go +# github.com/rs/xid +# github.com/shopspring/decimal +# github.com/shurcooL/sanitized_anchor_name +# github.com/sirupsen/logrus +# github.com/slackhq/nebula +# github.com/smallstep/pkcs7 +# github.com/spf13/cast +# github.com/stoewer/go-strcase +# github.com/stretchr/testify +# github.com/urfave/cli +# github.com/x448/float16 +# github.com/yuin/goldmark +# github.com/yuin/goldmark-highlighting/v2 +# go.etcd.io/bbolt +# go.uber.org/automaxprocs +# go.uber.org/multierr +# go.uber.org/zap +# go.uber.org/zap/exp +# gopkg.in/natefinch/lumberjack.v2 +# MPL-2.0: +# github.com/go-sql-driver/mysql +# Apache-2.0 AND BSD-2-Clause: +# go.step.sm/cli-utils +# go.step.sm/crypto +# Apache-2.0 AND BSD-3-Clause: +# github.com/go-jose/go-jose/v3 +# github.com/mholt/acmez/v3 +# github.com/prometheus/common +# github.com/smallstep/certificates +# Apache-2.0 AND MIT: +# github.com/dgraph-io/ristretto +# github.com/prometheus/client_golang +# gopkg.in/yaml.v3 +# BSD-2-Clause-Views AND BSD-3-Clause: +# howett.net/plist +# BSD-3-Clause AND Apache-2.0 AND MIT: +# github.com/klauspost/compress +# BSD-3-Clause AND BSD-1-Clause: +# filippo.io/edwards25519 +# MIT AND BSD-3-Clause: +# github.com/jackc/pgx/v4 +# github.com/smallstep/scep +# MIT AND CC0-1.0: +# github.com/AndreasBriese/bbloom +License: Apache-2.0 AND BSD-1-Clause AND BSD-2-Clause AND BSD-2-Clause-Views AND BSD-3-Clause AND CC0-1.0 AND ISC AND MIT AND MPL-2.0 -# vendored dependencies +Source0: https://%{goipath}/archive/v%{version}/caddy-%{version}.tar.gz Source1: caddy-%{version}-vendor.tar.gz Source2: create-vendor-tarball.sh @@ -40,302 +199,162 @@ BuildRequires: go-rpm-macros ExclusiveArch: %{golang_arches_future} %endif -# https://github.com/caddyserver/caddy/commit/2028da4e74cd41f0f7f94222c6599da1a371d4b8 -BuildRequires: golang >= 1.22.3 - -# dario.cat/mergo : BSD-3-Clause -Provides: bundled(golang(dario.cat/mergo)) = 1.0.1 -# filippo.io/edwards25519 : BSD-3-Clause -Provides: bundled(golang(filippo.io/edwards25519)) = 1.1.0 -# github.com/AndreasBriese/bbloom : MIT AND CC0-1.0 -Provides: bundled(golang(github.com/AndreasBriese/bbloom)) = 46b345b -# github.com/BurntSushi/toml : MIT -Provides: bundled(golang(github.com/BurntSushi/toml)) = 1.4.0 -# github.com/Masterminds/goutils : Apache-2.0 -Provides: bundled(golang(github.com/Masterminds/goutils)) = 1.1.1 -# github.com/Masterminds/semver/v3 : MIT -Provides: bundled(golang(github.com/Masterminds/semver/v3)) = 3.3.0 -# github.com/Masterminds/sprig/v3 : MIT -Provides: bundled(golang(github.com/Masterminds/sprig/v3)) = 3.3.0 -# github.com/Microsoft/go-winio : MIT -Provides: bundled(golang(github.com/Microsoft/go-winio)) = 0.6.0 -# github.com/alecthomas/chroma/v2 : MIT -Provides: bundled(golang(github.com/alecthomas/chroma/v2)) = 2.14.0 -# github.com/antlr4-go/antlr/v4 : BSD-3-Clause -Provides: bundled(golang(github.com/antlr4-go/antlr/v4)) = 4.13.0 -# github.com/aryann/difflib : MIT -Provides: bundled(golang(github.com/aryann/difflib)) = ff5ff6d -# github.com/beorn7/perks : MIT -Provides: bundled(golang(github.com/beorn7/perks)) = 1.0.1 -# github.com/caddyserver/certmagic : Apache-2.0 -Provides: bundled(golang(github.com/caddyserver/certmagic)) = 0.21.6 -# github.com/caddyserver/zerossl : MIT -Provides: bundled(golang(github.com/caddyserver/zerossl)) = 0.1.3 -# github.com/cenkalti/backoff/v4 : MIT -Provides: bundled(golang(github.com/cenkalti/backoff/v4)) = 4.3.0 -# github.com/cespare/xxhash : MIT -Provides: bundled(golang(github.com/cespare/xxhash)) = 1.1.0 -# github.com/cespare/xxhash/v2 : MIT -Provides: bundled(golang(github.com/cespare/xxhash/v2)) = 2.3.0 -# github.com/chzyer/readline : MIT -Provides: bundled(golang(github.com/chzyer/readline)) = 1.5.1 -# github.com/cpuguy83/go-md2man/v2 : MIT -Provides: bundled(golang(github.com/cpuguy83/go-md2man/v2)) = 2.0.4 -# github.com/davecgh/go-spew : ISC -Provides: bundled(golang(github.com/davecgh/go-spew)) = 1.1.1 -# github.com/dgraph-io/badger : Apache-2.0 -Provides: bundled(golang(github.com/dgraph-io/badger)) = 1.6.2 -# github.com/dgraph-io/badger/v2 : Apache-2.0 -Provides: bundled(golang(github.com/dgraph-io/badger/v2)) = 2.2007.4 -# github.com/dgraph-io/ristretto : Apache-2.0 AND MIT -Provides: bundled(golang(github.com/dgraph-io/ristretto)) = 0.1.0 -# github.com/dgryski/go-farm : MIT -Provides: bundled(golang(github.com/dgryski/go-farm)) = a6ae236 -# github.com/dlclark/regexp2 : MIT -Provides: bundled(golang(github.com/dlclark/regexp2)) = 1.11.0 -# github.com/dustin/go-humanize : MIT -Provides: bundled(golang(github.com/dustin/go-humanize)) = 1.0.1 -# github.com/felixge/httpsnoop : MIT -Provides: bundled(golang(github.com/felixge/httpsnoop)) = 1.0.4 -# github.com/francoispqt/gojay : MIT -Provides: bundled(golang(github.com/francoispqt/gojay)) = 1.2.13 -# github.com/fxamacker/cbor/v2 : MIT -Provides: bundled(golang(github.com/fxamacker/cbor/v2)) = 2.6.0 -# github.com/go-chi/chi/v5 : MIT -Provides: bundled(golang(github.com/go-chi/chi/v5)) = 5.0.12 -# github.com/go-jose/go-jose/v3 : Apache-2.0 AND BSD-3-Clause -Provides: bundled(golang(github.com/go-jose/go-jose/v3)) = 3.0.3 -# github.com/go-kit/kit : MIT -Provides: bundled(golang(github.com/go-kit/kit)) = 0.13.0 -# github.com/go-kit/log : MIT -Provides: bundled(golang(github.com/go-kit/log)) = 0.2.1 -# github.com/go-logfmt/logfmt : MIT -Provides: bundled(golang(github.com/go-logfmt/logfmt)) = 0.6.0 -# github.com/go-logr/logr : Apache-2.0 -Provides: bundled(golang(github.com/go-logr/logr)) = 1.4.2 -# github.com/go-logr/stdr : Apache-2.0 -Provides: bundled(golang(github.com/go-logr/stdr)) = 1.2.2 -# github.com/go-sql-driver/mysql : MPL-2.0 -Provides: bundled(golang(github.com/go-sql-driver/mysql)) = 1.7.1 -# github.com/go-task/slim-sprig : MIT -Provides: bundled(golang(github.com/go-task/slim-sprig)) = 52ccab3 -# github.com/golang/glog : Apache-2.0 -Provides: bundled(golang(github.com/golang/glog)) = 1.2.2 -# github.com/golang/protobuf : BSD-3-Clause -Provides: bundled(golang(github.com/golang/protobuf)) = 1.5.4 -# github.com/golang/snappy : BSD-3-Clause -Provides: bundled(golang(github.com/golang/snappy)) = 0.0.4 -# github.com/google/cel-go : Apache-2.0 -Provides: bundled(golang(github.com/google/cel-go)) = 0.21.0 -# github.com/google/certificate-transparency-go : Apache-2.0 -Provides: bundled(golang(github.com/google/certificate-transparency-go)) = 74a5dd3 -# github.com/google/go-tpm : Apache-2.0 -Provides: bundled(golang(github.com/google/go-tpm)) = 0.9.0 -# github.com/google/go-tspi : Apache-2.0 -Provides: bundled(golang(github.com/google/go-tspi)) = 0.3.0 -# github.com/google/pprof : Apache-2.0 -Provides: bundled(golang(github.com/google/pprof)) = ec68065 -# github.com/google/uuid : BSD-3-Clause -Provides: bundled(golang(github.com/google/uuid)) = 1.6.0 -# github.com/grpc-ecosystem/grpc-gateway/v2 : BSD-3-Clause -Provides: bundled(golang(github.com/grpc-ecosystem/grpc-gateway/v2)) = 2.22.0 -# github.com/huandu/xstrings : MIT -Provides: bundled(golang(github.com/huandu/xstrings)) = 1.5.0 -# github.com/inconshreveable/mousetrap : Apache-2.0 -Provides: bundled(golang(github.com/inconshreveable/mousetrap)) = 1.1.0 -# github.com/jackc/chunkreader/v2 : MIT -Provides: bundled(golang(github.com/jackc/chunkreader/v2)) = 2.0.1 -# github.com/jackc/pgconn : MIT -Provides: bundled(golang(github.com/jackc/pgconn)) = 1.14.3 -# github.com/jackc/pgio : MIT -Provides: bundled(golang(github.com/jackc/pgio)) = 1.0.0 -# github.com/jackc/pgpassfile : MIT -Provides: bundled(golang(github.com/jackc/pgpassfile)) = 1.0.0 -# github.com/jackc/pgproto3/v2 : MIT -Provides: bundled(golang(github.com/jackc/pgproto3/v2)) = 2.3.3 -# github.com/jackc/pgservicefile : MIT -Provides: bundled(golang(github.com/jackc/pgservicefile)) = 091c0ba -# github.com/jackc/pgtype : MIT -Provides: bundled(golang(github.com/jackc/pgtype)) = 1.14.0 -# github.com/jackc/pgx/v4 : MIT -Provides: bundled(golang(github.com/jackc/pgx/v4)) = 4.18.3 -# github.com/klauspost/compress : BSD-3-Clause AND Apache-2.0 AND MIT -Provides: bundled(golang(github.com/klauspost/compress)) = 1.17.11 -# github.com/klauspost/cpuid/v2 : MIT -Provides: bundled(golang(github.com/klauspost/cpuid/v2)) = 2.2.9 -# github.com/libdns/libdns : MIT -Provides: bundled(golang(github.com/libdns/libdns)) = 0.2.2 -# github.com/manifoldco/promptui : BSD-3-Clause -Provides: bundled(golang(github.com/manifoldco/promptui)) = 0.9.0 -# github.com/mattn/go-colorable : MIT -Provides: bundled(golang(github.com/mattn/go-colorable)) = 0.1.13 -# github.com/mattn/go-isatty : MIT -Provides: bundled(golang(github.com/mattn/go-isatty)) = 0.0.20 -# github.com/mgutz/ansi : MIT -Provides: bundled(golang(github.com/mgutz/ansi)) = d51e80e -# github.com/mholt/acmez/v3 : Apache-2.0 AND BSD-3-Clause -Provides: bundled(golang(github.com/mholt/acmez/v3)) = 3.0.0 -# github.com/miekg/dns : BSD-3-Clause -Provides: bundled(golang(github.com/miekg/dns)) = 1.1.62 -# github.com/mitchellh/copystructure : MIT -Provides: bundled(golang(github.com/mitchellh/copystructure)) = 1.2.0 -# github.com/mitchellh/go-ps : MIT -Provides: bundled(golang(github.com/mitchellh/go-ps)) = 1.0.0 -# github.com/mitchellh/reflectwalk : MIT -Provides: bundled(golang(github.com/mitchellh/reflectwalk)) = 1.0.2 -# github.com/onsi/ginkgo/v2 : MIT -Provides: bundled(golang(github.com/onsi/ginkgo/v2)) = 2.13.2 -# github.com/pires/go-proxyproto : Apache-2.0 -Provides: bundled(golang(github.com/pires/go-proxyproto)) = b718e7c -# github.com/pkg/errors : BSD-2-Clause -Provides: bundled(golang(github.com/pkg/errors)) = 0.9.1 -# github.com/pmezard/go-difflib : BSD-3-Clause -Provides: bundled(golang(github.com/pmezard/go-difflib)) = 1.0.0 -# github.com/prometheus/client_golang : Apache-2.0 -Provides: bundled(golang(github.com/prometheus/client_golang)) = 1.19.1 -# github.com/prometheus/client_model : Apache-2.0 -Provides: bundled(golang(github.com/prometheus/client_model)) = 0.5.0 -# github.com/prometheus/common : Apache-2.0 -Provides: bundled(golang(github.com/prometheus/common)) = 0.48.0 -# github.com/prometheus/procfs : Apache-2.0 -Provides: bundled(golang(github.com/prometheus/procfs)) = 0.12.0 -# github.com/quic-go/qpack : MIT -Provides: bundled(golang(github.com/quic-go/qpack)) = 0.5.1 -# github.com/quic-go/quic-go : MIT -Provides: bundled(golang(github.com/quic-go/quic-go)) = 0.48.2 -# github.com/rs/xid : MIT -Provides: bundled(golang(github.com/rs/xid)) = 1.5.0 -# github.com/russross/blackfriday/v2 : BSD-2-Clause -Provides: bundled(golang(github.com/russross/blackfriday/v2)) = 2.1.0 -# github.com/shopspring/decimal : MIT -Provides: bundled(golang(github.com/shopspring/decimal)) = 1.4.0 -# github.com/shurcooL/sanitized_anchor_name : MIT -Provides: bundled(golang(github.com/shurcooL/sanitized_anchor_name)) = 1.0.0 -# github.com/sirupsen/logrus : MIT -Provides: bundled(golang(github.com/sirupsen/logrus)) = 1.9.3 -# github.com/slackhq/nebula : MIT -Provides: bundled(golang(github.com/slackhq/nebula)) = 1.6.1 -# github.com/smallstep/certificates : Apache-2.0 -Provides: bundled(golang(github.com/smallstep/certificates)) = 0.26.1 -# github.com/smallstep/go-attestation : Apache-2.0 -Provides: bundled(golang(github.com/smallstep/go-attestation)) = 413678f -# github.com/smallstep/nosql : Apache-2.0 -Provides: bundled(golang(github.com/smallstep/nosql)) = 0.6.1 -# github.com/smallstep/pkcs7 : MIT -Provides: bundled(golang(github.com/smallstep/pkcs7)) = 3b98ecc -# github.com/smallstep/scep : MIT -Provides: bundled(golang(github.com/smallstep/scep)) = aee96d7 -# github.com/smallstep/truststore : Apache-2.0 -Provides: bundled(golang(github.com/smallstep/truststore)) = 0.13.0 -# github.com/spf13/cast : MIT -Provides: bundled(golang(github.com/spf13/cast)) = 1.7.0 -# github.com/spf13/cobra : Apache-2.0 -Provides: bundled(golang(github.com/spf13/cobra)) = 1.8.1 -# github.com/spf13/pflag : BSD-3-Clause -Provides: bundled(golang(github.com/spf13/pflag)) = 1.0.5 -# github.com/stoewer/go-strcase : MIT -Provides: bundled(golang(github.com/stoewer/go-strcase)) = 1.2.0 -# github.com/stretchr/testify : MIT -Provides: bundled(golang(github.com/stretchr/testify)) = 1.9.0 -# github.com/tailscale/tscert : BSD-3-Clause -Provides: bundled(golang(github.com/tailscale/tscert)) = d3f8340 -# github.com/urfave/cli : MIT -Provides: bundled(golang(github.com/urfave/cli)) = 1.22.14 -# github.com/x448/float16 : MIT -Provides: bundled(golang(github.com/x448/float16)) = 0.8.4 -# github.com/yuin/goldmark : MIT -Provides: bundled(golang(github.com/yuin/goldmark)) = 1.7.8 -# github.com/yuin/goldmark-highlighting/v2 : MIT -Provides: bundled(golang(github.com/yuin/goldmark-highlighting/v2)) = 37449ab -# github.com/zeebo/blake3 : CC0-1.0 -Provides: bundled(golang(github.com/zeebo/blake3)) = 0.2.4 -# go.etcd.io/bbolt : MIT -Provides: bundled(golang(go.etcd.io/bbolt)) = 1.3.9 -# go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp : Apache-2.0 -Provides: bundled(golang(go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp)) = 0.56.0 -# go.opentelemetry.io/contrib/propagators/autoprop : Apache-2.0 -Provides: bundled(golang(go.opentelemetry.io/contrib/propagators/autoprop)) = 0.42.0 -# go.opentelemetry.io/contrib/propagators/aws : Apache-2.0 -Provides: bundled(golang(go.opentelemetry.io/contrib/propagators/aws)) = 1.17.0 -# go.opentelemetry.io/contrib/propagators/b3 : Apache-2.0 -Provides: bundled(golang(go.opentelemetry.io/contrib/propagators/b3)) = 1.17.0 -# go.opentelemetry.io/contrib/propagators/jaeger : Apache-2.0 -Provides: bundled(golang(go.opentelemetry.io/contrib/propagators/jaeger)) = 1.17.0 -# go.opentelemetry.io/contrib/propagators/ot : Apache-2.0 -Provides: bundled(golang(go.opentelemetry.io/contrib/propagators/ot)) = 1.17.0 -# go.opentelemetry.io/otel : Apache-2.0 -Provides: bundled(golang(go.opentelemetry.io/otel)) = 1.31.0 -# go.opentelemetry.io/otel/exporters/otlp/otlptrace : Apache-2.0 -Provides: bundled(golang(go.opentelemetry.io/otel/exporters/otlp/otlptrace)) = 1.31.0 -# go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc : Apache-2.0 -Provides: bundled(golang(go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc)) = 1.31.0 -# go.opentelemetry.io/otel/metric : Apache-2.0 -Provides: bundled(golang(go.opentelemetry.io/otel/metric)) = 1.31.0 -# go.opentelemetry.io/otel/sdk : Apache-2.0 -Provides: bundled(golang(go.opentelemetry.io/otel/sdk)) = 1.31.0 -# go.opentelemetry.io/otel/trace : Apache-2.0 -Provides: bundled(golang(go.opentelemetry.io/otel/trace)) = 1.31.0 -# go.opentelemetry.io/proto/otlp : Apache-2.0 -Provides: bundled(golang(go.opentelemetry.io/proto/otlp)) = 1.3.1 -# go.step.sm/cli-utils : Apache-2.0 AND BSD-2-Clause -Provides: bundled(golang(go.step.sm/cli-utils)) = 0.9.0 -# go.step.sm/crypto : Apache-2.0 AND BSD-2-Clause -Provides: bundled(golang(go.step.sm/crypto)) = 0.45.0 -# go.step.sm/linkedca : Apache-2.0 -Provides: bundled(golang(go.step.sm/linkedca)) = 0.20.1 -# go.uber.org/automaxprocs : MIT -Provides: bundled(golang(go.uber.org/automaxprocs)) = 1.6.0 -# go.uber.org/mock : Apache-2.0 -Provides: bundled(golang(go.uber.org/mock)) = 0.4.0 -# go.uber.org/multierr : MIT -Provides: bundled(golang(go.uber.org/multierr)) = 1.11.0 -# go.uber.org/zap : MIT -Provides: bundled(golang(go.uber.org/zap)) = 1.27.0 -# go.uber.org/zap/exp : MIT -Provides: bundled(golang(go.uber.org/zap/exp)) = 0.3.0 -# golang.org/x/crypto : BSD-3-Clause -Provides: bundled(golang(golang.org/x/crypto)) = 0.31.0 -# golang.org/x/crypto/x509roots/fallback : BSD-3-Clause -Provides: bundled(golang(golang.org/x/crypto/x509roots/fallback)) = 71ed71b -# golang.org/x/exp : BSD-3-Clause -Provides: bundled(golang(golang.org/x/exp)) = 9bf2ced -# golang.org/x/mod : BSD-3-Clause -Provides: bundled(golang(golang.org/x/mod)) = 0.18.0 -# golang.org/x/net : BSD-3-Clause -Provides: bundled(golang(golang.org/x/net)) = 0.33.0 -# golang.org/x/sync : BSD-3-Clause -Provides: bundled(golang(golang.org/x/sync)) = 0.10.0 -# golang.org/x/sys : BSD-3-Clause -Provides: bundled(golang(golang.org/x/sys)) = 0.28.0 -# golang.org/x/term : BSD-3-Clause -Provides: bundled(golang(golang.org/x/term)) = 0.27.0 -# golang.org/x/text : BSD-3-Clause -Provides: bundled(golang(golang.org/x/text)) = 0.21.0 -# golang.org/x/time : BSD-3-Clause -Provides: bundled(golang(golang.org/x/time)) = 0.7.0 -# golang.org/x/tools : BSD-3-Clause -Provides: bundled(golang(golang.org/x/tools)) = 0.22.0 -# google.golang.org/genproto/googleapis/api : Apache-2.0 -Provides: bundled(golang(google.golang.org/genproto/googleapis/api)) = 5fefd90 -# google.golang.org/genproto/googleapis/rpc : Apache-2.0 -Provides: bundled(golang(google.golang.org/genproto/googleapis/rpc)) = 5fefd90 -# google.golang.org/grpc : Apache-2.0 -Provides: bundled(golang(google.golang.org/grpc)) = 1.67.1 -# google.golang.org/protobuf : BSD-3-Clause -Provides: bundled(golang(google.golang.org/protobuf)) = 1.35.1 -# gopkg.in/natefinch/lumberjack.v2 : MIT -Provides: bundled(golang(gopkg.in/natefinch/lumberjack.v2)) = 2.2.1 -# gopkg.in/yaml.v3 : Apache-2.0 AND MIT -Provides: bundled(golang(gopkg.in/yaml.v3)) = 3.0.1 -# howett.net/plist : BSD-2-Clause-Views AND BSD-3-Clause -Provides: bundled(golang(howett.net/plist)) = 1.0.0 - BuildRequires: systemd-rpm-macros %{?systemd_requires} %{?sysusers_requires_compat} + +# https://github.com/caddyserver/caddy/commit/172136a0a0f6aa47be4eab3727fa2482d7af6617 +BuildRequires: golang >= 1.24 Requires: system-logos-httpd Provides: webserver +Provides: bundled(golang(cel.dev/expr)) = 0.19.1 +Provides: bundled(golang(dario.cat/mergo)) = 1.0.1 +Provides: bundled(golang(filippo.io/edwards25519)) = 1.1.0 +Provides: bundled(golang(github.com/AndreasBriese/bbloom)) = 46b345b +Provides: bundled(golang(github.com/BurntSushi/toml)) = 1.4.0 +Provides: bundled(golang(github.com/KimMachineGun/automemlimit)) = 0.7.1 +Provides: bundled(golang(github.com/Masterminds/goutils)) = 1.1.1 +Provides: bundled(golang(github.com/Masterminds/semver/v3)) = 3.3.0 +Provides: bundled(golang(github.com/Masterminds/sprig/v3)) = 3.3.0 +Provides: bundled(golang(github.com/Microsoft/go-winio)) = 0.6.0 +Provides: bundled(golang(github.com/alecthomas/chroma/v2)) = 2.15.0 +Provides: bundled(golang(github.com/antlr4-go/antlr/v4)) = 4.13.0 +Provides: bundled(golang(github.com/aryann/difflib)) = ff5ff6d +Provides: bundled(golang(github.com/beorn7/perks)) = 1.0.1 +Provides: bundled(golang(github.com/caddyserver/certmagic)) = 0.23.0 +Provides: bundled(golang(github.com/caddyserver/zerossl)) = 0.1.3 +Provides: bundled(golang(github.com/cenkalti/backoff/v4)) = 4.3.0 +Provides: bundled(golang(github.com/cespare/xxhash)) = 1.1.0 +Provides: bundled(golang(github.com/cespare/xxhash/v2)) = 2.3.0 +Provides: bundled(golang(github.com/chzyer/readline)) = 1.5.1 +Provides: bundled(golang(github.com/cloudflare/circl)) = 1.6.0 +Provides: bundled(golang(github.com/cpuguy83/go-md2man/v2)) = 2.0.6 +Provides: bundled(golang(github.com/davecgh/go-spew)) = 1.1.1 +Provides: bundled(golang(github.com/dgraph-io/badger)) = 1.6.2 +Provides: bundled(golang(github.com/dgraph-io/badger/v2)) = 2.2007.4 +Provides: bundled(golang(github.com/dgraph-io/ristretto)) = 0.2.0 +Provides: bundled(golang(github.com/dgryski/go-farm)) = a6ae236 +Provides: bundled(golang(github.com/dlclark/regexp2)) = 1.11.4 +Provides: bundled(golang(github.com/dustin/go-humanize)) = 1.0.1 +Provides: bundled(golang(github.com/felixge/httpsnoop)) = 1.0.4 +Provides: bundled(golang(github.com/francoispqt/gojay)) = 1.2.13 +Provides: bundled(golang(github.com/fxamacker/cbor/v2)) = 2.6.0 +Provides: bundled(golang(github.com/go-chi/chi/v5)) = 5.2.1 +Provides: bundled(golang(github.com/go-jose/go-jose/v3)) = 3.0.4 +Provides: bundled(golang(github.com/go-kit/kit)) = 0.13.0 +Provides: bundled(golang(github.com/go-kit/log)) = 0.2.1 +Provides: bundled(golang(github.com/go-logfmt/logfmt)) = 0.6.0 +Provides: bundled(golang(github.com/go-logr/logr)) = 1.4.2 +Provides: bundled(golang(github.com/go-logr/stdr)) = 1.2.2 +Provides: bundled(golang(github.com/go-sql-driver/mysql)) = 1.7.1 +Provides: bundled(golang(github.com/go-task/slim-sprig)) = 52ccab3 +Provides: bundled(golang(github.com/golang/protobuf)) = 1.5.4 +Provides: bundled(golang(github.com/golang/snappy)) = 0.0.4 +Provides: bundled(golang(github.com/google/cel-go)) = 0.24.1 +Provides: bundled(golang(github.com/google/certificate-transparency-go)) = 74a5dd3 +Provides: bundled(golang(github.com/google/go-tpm)) = 0.9.0 +Provides: bundled(golang(github.com/google/go-tspi)) = 0.3.0 +Provides: bundled(golang(github.com/google/pprof)) = ec68065 +Provides: bundled(golang(github.com/google/uuid)) = 1.6.0 +Provides: bundled(golang(github.com/grpc-ecosystem/grpc-gateway/v2)) = 2.22.0 +Provides: bundled(golang(github.com/huandu/xstrings)) = 1.5.0 +Provides: bundled(golang(github.com/inconshreveable/mousetrap)) = 1.1.0 +Provides: bundled(golang(github.com/jackc/chunkreader/v2)) = 2.0.1 +Provides: bundled(golang(github.com/jackc/pgconn)) = 1.14.3 +Provides: bundled(golang(github.com/jackc/pgio)) = 1.0.0 +Provides: bundled(golang(github.com/jackc/pgpassfile)) = 1.0.0 +Provides: bundled(golang(github.com/jackc/pgproto3/v2)) = 2.3.3 +Provides: bundled(golang(github.com/jackc/pgservicefile)) = 091c0ba +Provides: bundled(golang(github.com/jackc/pgtype)) = 1.14.0 +Provides: bundled(golang(github.com/jackc/pgx/v4)) = 4.18.3 +Provides: bundled(golang(github.com/klauspost/compress)) = 1.18.0 +Provides: bundled(golang(github.com/klauspost/cpuid/v2)) = 2.2.10 +Provides: bundled(golang(github.com/libdns/libdns)) = 1.0.0-beta.1 +Provides: bundled(golang(github.com/manifoldco/promptui)) = 0.9.0 +Provides: bundled(golang(github.com/mattn/go-colorable)) = 0.1.13 +Provides: bundled(golang(github.com/mattn/go-isatty)) = 0.0.20 +Provides: bundled(golang(github.com/mgutz/ansi)) = d51e80e +Provides: bundled(golang(github.com/mholt/acmez/v3)) = 3.1.2 +Provides: bundled(golang(github.com/miekg/dns)) = 1.1.63 +Provides: bundled(golang(github.com/mitchellh/copystructure)) = 1.2.0 +Provides: bundled(golang(github.com/mitchellh/go-ps)) = 1.0.0 +Provides: bundled(golang(github.com/mitchellh/reflectwalk)) = 1.0.2 +Provides: bundled(golang(github.com/onsi/ginkgo/v2)) = 2.13.2 +Provides: bundled(golang(github.com/pbnjay/memory)) = 7b4eea6 +Provides: bundled(golang(github.com/pires/go-proxyproto)) = b718e7c +Provides: bundled(golang(github.com/pkg/errors)) = 0.9.1 +Provides: bundled(golang(github.com/pmezard/go-difflib)) = 1.0.0 +Provides: bundled(golang(github.com/prometheus/client_golang)) = 1.19.1 +Provides: bundled(golang(github.com/prometheus/client_model)) = 0.5.0 +Provides: bundled(golang(github.com/prometheus/common)) = 0.48.0 +Provides: bundled(golang(github.com/prometheus/procfs)) = 0.12.0 +Provides: bundled(golang(github.com/quic-go/qpack)) = 0.5.1 +Provides: bundled(golang(github.com/quic-go/quic-go)) = 0.50.1 +Provides: bundled(golang(github.com/rs/xid)) = 1.5.0 +Provides: bundled(golang(github.com/russross/blackfriday/v2)) = 2.1.0 +Provides: bundled(golang(github.com/shopspring/decimal)) = 1.4.0 +Provides: bundled(golang(github.com/shurcooL/sanitized_anchor_name)) = 1.0.0 +Provides: bundled(golang(github.com/sirupsen/logrus)) = 1.9.3 +Provides: bundled(golang(github.com/slackhq/nebula)) = 1.6.1 +Provides: bundled(golang(github.com/smallstep/certificates)) = 0.26.1 +Provides: bundled(golang(github.com/smallstep/go-attestation)) = 413678f +Provides: bundled(golang(github.com/smallstep/nosql)) = 0.6.1 +Provides: bundled(golang(github.com/smallstep/pkcs7)) = 3b98ecc +Provides: bundled(golang(github.com/smallstep/scep)) = aee96d7 +Provides: bundled(golang(github.com/smallstep/truststore)) = 0.13.0 +Provides: bundled(golang(github.com/spf13/cast)) = 1.7.0 +Provides: bundled(golang(github.com/spf13/cobra)) = 1.9.1 +Provides: bundled(golang(github.com/spf13/pflag)) = 1.0.6 +Provides: bundled(golang(github.com/stoewer/go-strcase)) = 1.2.0 +Provides: bundled(golang(github.com/stretchr/testify)) = 1.10.0 +Provides: bundled(golang(github.com/tailscale/tscert)) = d3f8340 +Provides: bundled(golang(github.com/urfave/cli)) = 1.22.14 +Provides: bundled(golang(github.com/x448/float16)) = 0.8.4 +Provides: bundled(golang(github.com/yuin/goldmark)) = 1.7.8 +Provides: bundled(golang(github.com/yuin/goldmark-highlighting/v2)) = 37449ab +Provides: bundled(golang(github.com/zeebo/blake3)) = 0.2.4 +Provides: bundled(golang(go.etcd.io/bbolt)) = 1.3.9 +Provides: bundled(golang(go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp)) = 0.56.0 +Provides: bundled(golang(go.opentelemetry.io/contrib/propagators/autoprop)) = 0.42.0 +Provides: bundled(golang(go.opentelemetry.io/contrib/propagators/aws)) = 1.17.0 +Provides: bundled(golang(go.opentelemetry.io/contrib/propagators/b3)) = 1.17.0 +Provides: bundled(golang(go.opentelemetry.io/contrib/propagators/jaeger)) = 1.17.0 +Provides: bundled(golang(go.opentelemetry.io/contrib/propagators/ot)) = 1.17.0 +Provides: bundled(golang(go.opentelemetry.io/otel)) = 1.31.0 +Provides: bundled(golang(go.opentelemetry.io/otel/exporters/otlp/otlptrace)) = 1.31.0 +Provides: bundled(golang(go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc)) = 1.31.0 +Provides: bundled(golang(go.opentelemetry.io/otel/metric)) = 1.31.0 +Provides: bundled(golang(go.opentelemetry.io/otel/sdk)) = 1.31.0 +Provides: bundled(golang(go.opentelemetry.io/otel/trace)) = 1.31.0 +Provides: bundled(golang(go.opentelemetry.io/proto/otlp)) = 1.3.1 +Provides: bundled(golang(go.step.sm/cli-utils)) = 0.9.0 +Provides: bundled(golang(go.step.sm/crypto)) = 0.45.0 +Provides: bundled(golang(go.step.sm/linkedca)) = 0.20.1 +Provides: bundled(golang(go.uber.org/automaxprocs)) = 1.6.0 +Provides: bundled(golang(go.uber.org/mock)) = 0.5.0 +Provides: bundled(golang(go.uber.org/multierr)) = 1.11.0 +Provides: bundled(golang(go.uber.org/zap)) = 1.27.0 +Provides: bundled(golang(go.uber.org/zap/exp)) = 0.3.0 +Provides: bundled(golang(golang.org/x/crypto)) = 0.36.0 +Provides: bundled(golang(golang.org/x/crypto/x509roots/fallback)) = 49bf5b8 +Provides: bundled(golang(golang.org/x/exp)) = 9bf2ced +Provides: bundled(golang(golang.org/x/mod)) = 0.24.0 +Provides: bundled(golang(golang.org/x/net)) = 0.38.0 +Provides: bundled(golang(golang.org/x/sync)) = 0.12.0 +Provides: bundled(golang(golang.org/x/sys)) = 0.31.0 +Provides: bundled(golang(golang.org/x/term)) = 0.30.0 +Provides: bundled(golang(golang.org/x/text)) = 0.23.0 +Provides: bundled(golang(golang.org/x/time)) = 0.11.0 +Provides: bundled(golang(golang.org/x/tools)) = 0.31.0 +Provides: bundled(golang(google.golang.org/genproto/googleapis/api)) = 5fefd90 +Provides: bundled(golang(google.golang.org/genproto/googleapis/rpc)) = 5fefd90 +Provides: bundled(golang(google.golang.org/grpc)) = 1.67.1 +Provides: bundled(golang(google.golang.org/protobuf)) = 1.35.1 +Provides: bundled(golang(gopkg.in/natefinch/lumberjack.v2)) = 2.2.1 +Provides: bundled(golang(gopkg.in/yaml.v3)) = 3.0.1 +Provides: bundled(golang(howett.net/plist)) = 1.0.0 + %description Caddy is an extensible server platform that uses TLS by default. @@ -364,7 +383,7 @@ install -D -p -m 0755 -t %{buildroot}%{_bindir} bin/caddy ./bin/caddy manpage --directory %{buildroot}%{_mandir}/man8 # config -install -D -p -m 0644 %{S:10} %{buildroot}%{_sysconfdir}/caddy/Caddyfile +install -D -p -m 0644 -t %{buildroot}%{_sysconfdir}/caddy %{S:10} install -d -m 0755 %{buildroot}%{_sysconfdir}/caddy/Caddyfile.d # systemd units diff --git a/create-vendor-tarball.sh b/create-vendor-tarball.sh index 4df0320..87bace1 100755 --- a/create-vendor-tarball.sh +++ b/create-vendor-tarball.sh @@ -9,6 +9,9 @@ fi set -euo pipefail +PKG="caddy" +REPO="https://github.com/caddyserver/$PKG" + # transform tag into version case $tag in *beta*) @@ -30,8 +33,8 @@ esac echo "Using tag: $tag" echo "Using version: $version" -git -c advice.detachedHead=false clone --branch $tag --depth 1 https://github.com/caddyserver/caddy.git caddy-$version -pushd caddy-$version +git -c advice.detachedHead=false clone --branch $tag --depth 1 $REPO.git $PKG-$version +pushd $PKG-$version GOPROXY='https://proxy.golang.org,direct' go mod vendor popd -tar -C caddy-$version -czf caddy-$version-vendor.tar.gz vendor +tar -C $PKG-$version -czf $PKG-$version-vendor.tar.gz vendor diff --git a/sources b/sources index 507c3f7..ebdbe02 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (caddy-2.9.1.tar.gz) = 2ed36bfe8de3a2c7270e202b2d9ab4c3c78174fcd09c02e38d61d1bd57afa6471a2a690f15edcf91f2bfb105dbf2b0c2186d0c5e6f20ec169e98c66f8f71d0f8 -SHA512 (caddy-2.9.1-vendor.tar.gz) = c37617fd38da0b9d966d5bd297d5647386d5d863d9674f530497a3c5102545e94a6279072d237a1278476365b008153484352ae79a82ff57997088d3510a1eef +SHA512 (caddy-2.10.0.tar.gz) = 9f0448b6108d088c5b9f59af8977df9adb73d62ebfc9fce038b07d927984873e39234d7d7dfd64c20e9527eccc400bd54930c5ffa21ec899a117e2c13b6ae229 +SHA512 (caddy-2.10.0-vendor.tar.gz) = 0dc3b2ebd96cd4ea937b7ffd34a8b33b5a3ffdff5fbf55357104019674319ebfcde0a1b3514897c62595409f7edc79a9da580fa3c7cc30c8913017a430f27c9a From 7f398568ca8a486af6d00084dbfd9fa8e20c17cb Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 23 Jul 2025 18:02:07 +0000 Subject: [PATCH 74/79] Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild From 9ecd047ae08fad6f018055ccd6f6cb8045a39570 Mon Sep 17 00:00:00 2001 From: Maxwell G Date: Fri, 15 Aug 2025 14:23:42 -0500 Subject: [PATCH 75/79] Rebuild for golang-1.25.0 --- caddy.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/caddy.spec b/caddy.spec index 873f44c..199f7e8 100644 --- a/caddy.spec +++ b/caddy.spec @@ -8,7 +8,7 @@ Name: caddy Version: 2.10.0 -Release: %autorelease +Release: %autorelease.1 Summary: Web server with automatic HTTPS URL: https://caddyserver.com @@ -509,4 +509,7 @@ fi %changelog +* Fri Aug 15 2025 Maxwell G - 2.10.0-1.1 +- Rebuild for golang-1.25.0 + %autochangelog From b068e4104c6face75c76ef088560d0c58fc3ecfc Mon Sep 17 00:00:00 2001 From: Maxwell G Date: Fri, 15 Aug 2025 15:26:06 -0500 Subject: [PATCH 76/79] Revert "Rebuild for golang-1.25.0" This reverts commit 9ecd047ae08fad6f018055ccd6f6cb8045a39570. --- caddy.spec | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/caddy.spec b/caddy.spec index 199f7e8..873f44c 100644 --- a/caddy.spec +++ b/caddy.spec @@ -8,7 +8,7 @@ Name: caddy Version: 2.10.0 -Release: %autorelease.1 +Release: %autorelease Summary: Web server with automatic HTTPS URL: https://caddyserver.com @@ -509,7 +509,4 @@ fi %changelog -* Fri Aug 15 2025 Maxwell G - 2.10.0-1.1 -- Rebuild for golang-1.25.0 - %autochangelog From 2e3e4085eb0ec68d81a04fe68d5d65154abd3c4b Mon Sep 17 00:00:00 2001 From: Maxwell G Date: Fri, 15 Aug 2025 16:03:06 -0500 Subject: [PATCH 77/79] Rebuild for golang-1.25.0 From a28b0a7c7d0f53e350f31ce53226d3b9082d0b65 Mon Sep 17 00:00:00 2001 From: Carl George Date: Sat, 23 Aug 2025 23:11:40 -0500 Subject: [PATCH 78/79] Update to version 2.10.2 rhbz#2390338 --- ...e-commands-that-can-alter-the-binary.patch | 44 +- caddy.spec | 417 ++++++------------ sources | 4 +- 3 files changed, 184 insertions(+), 281 deletions(-) diff --git a/0001-Disable-commands-that-can-alter-the-binary.patch b/0001-Disable-commands-that-can-alter-the-binary.patch index 710f8c5..73a53c8 100644 --- a/0001-Disable-commands-that-can-alter-the-binary.patch +++ b/0001-Disable-commands-that-can-alter-the-binary.patch @@ -1,17 +1,18 @@ -From ffc4888694c5222e9eddecb461c955d5661aa18c Mon Sep 17 00:00:00 2001 +From 41711beb6776923a84c06fad76964e5932333bd7 Mon Sep 17 00:00:00 2001 From: Carl George Date: Wed, 16 Feb 2022 11:45:03 -0600 -Subject: [PATCH 1/2] Disable commands that can alter the binary +Subject: [PATCH] Disable commands that can alter the binary --- - cmd/commands.go | 45 --------------------------------------------- - 1 file changed, 45 deletions(-) + cmd/commands.go | 45 -------------------------------------------- + cmd/commands_test.go | 8 ++++---- + 2 files changed, 4 insertions(+), 49 deletions(-) diff --git a/cmd/commands.go b/cmd/commands.go -index 259dd358..31b85a18 100644 +index c9ea636b..791ddf6d 100644 --- a/cmd/commands.go +++ b/cmd/commands.go -@@ -395,51 +395,6 @@ is always printed to stdout. +@@ -404,51 +404,6 @@ is always printed to stdout. }, }) @@ -61,8 +62,35 @@ index 259dd358..31b85a18 100644 - }) - defaultFactory.Use(func(rootCmd *cobra.Command) { - rootCmd.AddCommand(caddyCmdToCobra(Command{ + manpageCommand := Command{ Name: "manpage", +diff --git a/cmd/commands_test.go b/cmd/commands_test.go +index 085a9d78..f6d01fa3 100644 +--- a/cmd/commands_test.go ++++ b/cmd/commands_test.go +@@ -19,7 +19,7 @@ func TestCommandsAreAvailable(t *testing.T) { + // include the commands registered through calls to init in + // other packages + cmds := Commands() +- if len(cmds) != 17 { ++ if len(cmds) != 14 { + t.Errorf("expected 17 commands, got %d", len(cmds)) + } + +@@ -27,10 +27,10 @@ func TestCommandsAreAvailable(t *testing.T) { + slices.Sort(commandNames) + + expectedCommandNames := []string{ +- "adapt", "add-package", "build-info", "completion", ++ "adapt", "build-info", "completion", + "environ", "fmt", "list-modules", "manpage", +- "reload", "remove-package", "run", "start", +- "stop", "storage", "upgrade", "validate", "version", ++ "reload", "run", "start", ++ "stop", "storage", "validate", "version", + } + + if !reflect.DeepEqual(expectedCommandNames, commandNames) { -- -2.47.1 +2.50.1 diff --git a/caddy.spec b/caddy.spec index 873f44c..c7e502f 100644 --- a/caddy.spec +++ b/caddy.spec @@ -7,173 +7,13 @@ %endif Name: caddy -Version: 2.10.0 +Version: 2.10.2 Release: %autorelease Summary: Web server with automatic HTTPS URL: https://caddyserver.com # main source code is Apache-2.0 -# Apache-2.0: -# cel.dev/expr -# github.com/Masterminds/goutils -# github.com/caddyserver/certmagic -# github.com/dgraph-io/badger -# github.com/dgraph-io/badger/v2 -# github.com/go-logr/logr -# github.com/go-logr/stdr -# github.com/google/cel-go -# github.com/google/certificate-transparency-go -# github.com/google/go-tpm -# github.com/google/go-tspi -# github.com/google/pprof -# github.com/inconshreveable/mousetrap -# github.com/pires/go-proxyproto -# github.com/prometheus/client_model -# github.com/prometheus/procfs -# github.com/smallstep/go-attestation -# github.com/smallstep/nosql -# github.com/smallstep/truststore -# github.com/spf13/cobra -# go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp -# go.opentelemetry.io/contrib/propagators/autoprop -# go.opentelemetry.io/contrib/propagators/aws -# go.opentelemetry.io/contrib/propagators/b3 -# go.opentelemetry.io/contrib/propagators/jaeger -# go.opentelemetry.io/contrib/propagators/ot -# go.opentelemetry.io/otel -# go.opentelemetry.io/otel/exporters/otlp/otlptrace -# go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc -# go.opentelemetry.io/otel/metric -# go.opentelemetry.io/otel/sdk -# go.opentelemetry.io/otel/trace -# go.opentelemetry.io/proto/otlp -# go.step.sm/linkedca -# go.uber.org/mock -# google.golang.org/genproto/googleapis/api -# google.golang.org/genproto/googleapis/rpc -# google.golang.org/grpc -# BSD-2-Clause: -# github.com/pkg/errors -# github.com/russross/blackfriday/v2 -# BSD-3-Clause: -# dario.cat/mergo -# github.com/antlr4-go/antlr/v4 -# github.com/cloudflare/circl -# github.com/golang/protobuf -# github.com/golang/snappy -# github.com/google/uuid -# github.com/grpc-ecosystem/grpc-gateway/v2 -# github.com/manifoldco/promptui -# github.com/miekg/dns -# github.com/pbnjay/memory -# github.com/pmezard/go-difflib -# github.com/spf13/pflag -# github.com/tailscale/tscert -# golang.org/x/crypto -# golang.org/x/crypto/x509roots/fallback -# golang.org/x/exp -# golang.org/x/mod -# golang.org/x/net -# golang.org/x/sync -# golang.org/x/sys -# golang.org/x/term -# golang.org/x/text -# golang.org/x/time -# golang.org/x/tools -# google.golang.org/protobuf -# CC0-1.0: -# github.com/zeebo/blake3 -# ISC: -# github.com/davecgh/go-spew -# MIT: -# github.com/BurntSushi/toml -# github.com/KimMachineGun/automemlimit -# github.com/Masterminds/semver/v3 -# github.com/Masterminds/sprig/v3 -# github.com/Microsoft/go-winio -# github.com/alecthomas/chroma/v2 -# github.com/aryann/difflib -# github.com/beorn7/perks -# github.com/caddyserver/zerossl -# github.com/cenkalti/backoff/v4 -# github.com/cespare/xxhash -# github.com/cespare/xxhash/v2 -# github.com/chzyer/readline -# github.com/cpuguy83/go-md2man/v2 -# github.com/dgryski/go-farm -# github.com/dlclark/regexp2 -# github.com/dustin/go-humanize -# github.com/felixge/httpsnoop -# github.com/francoispqt/gojay -# github.com/fxamacker/cbor/v2 -# github.com/go-chi/chi/v5 -# github.com/go-kit/kit -# github.com/go-kit/log -# github.com/go-logfmt/logfmt -# github.com/go-task/slim-sprig -# github.com/huandu/xstrings -# github.com/jackc/chunkreader/v2 -# github.com/jackc/pgconn -# github.com/jackc/pgio -# github.com/jackc/pgpassfile -# github.com/jackc/pgproto3/v2 -# github.com/jackc/pgservicefile -# github.com/jackc/pgtype -# github.com/klauspost/cpuid/v2 -# github.com/libdns/libdns -# github.com/mattn/go-colorable -# github.com/mattn/go-isatty -# github.com/mgutz/ansi -# github.com/mitchellh/copystructure -# github.com/mitchellh/go-ps -# github.com/mitchellh/reflectwalk -# github.com/onsi/ginkgo/v2 -# github.com/quic-go/qpack -# github.com/quic-go/quic-go -# github.com/rs/xid -# github.com/shopspring/decimal -# github.com/shurcooL/sanitized_anchor_name -# github.com/sirupsen/logrus -# github.com/slackhq/nebula -# github.com/smallstep/pkcs7 -# github.com/spf13/cast -# github.com/stoewer/go-strcase -# github.com/stretchr/testify -# github.com/urfave/cli -# github.com/x448/float16 -# github.com/yuin/goldmark -# github.com/yuin/goldmark-highlighting/v2 -# go.etcd.io/bbolt -# go.uber.org/automaxprocs -# go.uber.org/multierr -# go.uber.org/zap -# go.uber.org/zap/exp -# gopkg.in/natefinch/lumberjack.v2 -# MPL-2.0: -# github.com/go-sql-driver/mysql -# Apache-2.0 AND BSD-2-Clause: -# go.step.sm/cli-utils -# go.step.sm/crypto -# Apache-2.0 AND BSD-3-Clause: -# github.com/go-jose/go-jose/v3 -# github.com/mholt/acmez/v3 -# github.com/prometheus/common -# github.com/smallstep/certificates -# Apache-2.0 AND MIT: -# github.com/dgraph-io/ristretto -# github.com/prometheus/client_golang -# gopkg.in/yaml.v3 -# BSD-2-Clause-Views AND BSD-3-Clause: -# howett.net/plist -# BSD-3-Clause AND Apache-2.0 AND MIT: -# github.com/klauspost/compress -# BSD-3-Clause AND BSD-1-Clause: -# filippo.io/edwards25519 -# MIT AND BSD-3-Clause: -# github.com/jackc/pgx/v4 -# github.com/smallstep/scep -# MIT AND CC0-1.0: -# github.com/AndreasBriese/bbloom +# see comments above bundled provides for a breakdown of the rest License: Apache-2.0 AND BSD-1-Clause AND BSD-2-Clause AND BSD-2-Clause-Views AND BSD-3-Clause AND CC0-1.0 AND ISC AND MIT AND MPL-2.0 Source0: https://%{goipath}/archive/v%{version}/caddy-%{version}.tar.gz @@ -203,158 +43,193 @@ BuildRequires: systemd-rpm-macros %{?systemd_requires} %{?sysusers_requires_compat} -# https://github.com/caddyserver/caddy/commit/172136a0a0f6aa47be4eab3727fa2482d7af6617 -BuildRequires: golang >= 1.24 Requires: system-logos-httpd Provides: webserver -Provides: bundled(golang(cel.dev/expr)) = 0.19.1 -Provides: bundled(golang(dario.cat/mergo)) = 1.0.1 -Provides: bundled(golang(filippo.io/edwards25519)) = 1.1.0 -Provides: bundled(golang(github.com/AndreasBriese/bbloom)) = 46b345b -Provides: bundled(golang(github.com/BurntSushi/toml)) = 1.4.0 -Provides: bundled(golang(github.com/KimMachineGun/automemlimit)) = 0.7.1 +# https://github.com/caddyserver/caddy/commit/05acc5131ed5c80acbd28ed8d907b166cd15b72c +BuildRequires: golang >= 1.25 + +# Apache-2.0: +Provides: bundled(golang(cel.dev/expr)) = 0.24.0 +Provides: bundled(golang(cloud.google.com/go/auth)) = 0.16.2 +Provides: bundled(golang(cloud.google.com/go/auth/oauth2adapt)) = 0.2.8 +Provides: bundled(golang(cloud.google.com/go/compute/metadata)) = 0.7.0 Provides: bundled(golang(github.com/Masterminds/goutils)) = 1.1.1 +Provides: bundled(golang(github.com/caddyserver/certmagic)) = 0.24.0 +Provides: bundled(golang(github.com/coreos/go-oidc/v3)) = 3.14.1 +Provides: bundled(golang(github.com/dgraph-io/badger)) = 1.6.2 +Provides: bundled(golang(github.com/dgraph-io/badger/v2)) = 2.2007.4 +Provides: bundled(golang(github.com/go-logr/logr)) = 1.4.3 +Provides: bundled(golang(github.com/go-logr/stdr)) = 1.2.2 +Provides: bundled(golang(github.com/google/cel-go)) = 0.26.0 +Provides: bundled(golang(github.com/google/certificate-transparency-go)) = 74a5dd3 +Provides: bundled(golang(github.com/google/go-tpm)) = 0.9.5 +Provides: bundled(golang(github.com/google/go-tspi)) = 0.3.0 +Provides: bundled(golang(github.com/google/s2a-go)) = 0.1.9 +Provides: bundled(golang(github.com/googleapis/enterprise-certificate-proxy)) = 0.3.6 +Provides: bundled(golang(github.com/inconshreveable/mousetrap)) = 1.1.0 +Provides: bundled(golang(github.com/kylelemons/godebug)) = 1.1.0 +Provides: bundled(golang(github.com/pires/go-proxyproto)) = 0.8.1 +Provides: bundled(golang(github.com/prometheus/client_model)) = 0.6.2 +Provides: bundled(golang(github.com/prometheus/common)) = 0.65.0 +Provides: bundled(golang(github.com/prometheus/procfs)) = 0.16.1 +Provides: bundled(golang(github.com/smallstep/go-attestation)) = 2306d5b +Provides: bundled(golang(github.com/smallstep/linkedca)) = 0.23.0 +Provides: bundled(golang(github.com/smallstep/nosql)) = 0.7.0 +Provides: bundled(golang(github.com/smallstep/truststore)) = 0.13.0 +Provides: bundled(golang(github.com/spf13/cobra)) = 1.9.1 +Provides: bundled(golang(go.opentelemetry.io/auto/sdk)) = 1.1.0 +Provides: bundled(golang(go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp)) = 0.61.0 +Provides: bundled(golang(go.opentelemetry.io/contrib/propagators/autoprop)) = 0.62.0 +Provides: bundled(golang(go.opentelemetry.io/contrib/propagators/aws)) = 1.37.0 +Provides: bundled(golang(go.opentelemetry.io/contrib/propagators/b3)) = 1.37.0 +Provides: bundled(golang(go.opentelemetry.io/contrib/propagators/jaeger)) = 1.37.0 +Provides: bundled(golang(go.opentelemetry.io/contrib/propagators/ot)) = 1.37.0 +Provides: bundled(golang(go.opentelemetry.io/otel)) = 1.37.0 +Provides: bundled(golang(go.opentelemetry.io/otel/exporters/otlp/otlptrace)) = 1.37.0 +Provides: bundled(golang(go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc)) = 1.37.0 +Provides: bundled(golang(go.opentelemetry.io/otel/metric)) = 1.37.0 +Provides: bundled(golang(go.opentelemetry.io/otel/sdk)) = 1.37.0 +Provides: bundled(golang(go.opentelemetry.io/otel/trace)) = 1.37.0 +Provides: bundled(golang(go.opentelemetry.io/proto/otlp)) = 1.7.0 +Provides: bundled(golang(go.uber.org/mock)) = 0.5.2 +Provides: bundled(golang(google.golang.org/genproto/googleapis/api)) = 513f239 +Provides: bundled(golang(google.golang.org/genproto/googleapis/rpc)) = 513f239 +Provides: bundled(golang(google.golang.org/grpc)) = 1.73.0 +Provides: bundled(golang(google.golang.org/grpc/cmd/protoc-gen-go-grpc)) = 1.5.1 + +# BSD-2-Clause: +Provides: bundled(golang(github.com/pkg/errors)) = 0.9.1 +Provides: bundled(golang(github.com/russross/blackfriday/v2)) = 2.1.0 + +# BSD-3-Clause: +Provides: bundled(golang(dario.cat/mergo)) = 1.0.1 +Provides: bundled(golang(github.com/antlr4-go/antlr/v4)) = 4.13.0 +Provides: bundled(golang(github.com/cloudflare/circl)) = 1.6.1 +Provides: bundled(golang(github.com/golang/protobuf)) = 1.5.4 +Provides: bundled(golang(github.com/golang/snappy)) = 0.0.4 +Provides: bundled(golang(github.com/google/uuid)) = 1.6.0 +Provides: bundled(golang(github.com/grpc-ecosystem/grpc-gateway/v2)) = 2.27.1 +Provides: bundled(golang(github.com/manifoldco/promptui)) = 0.9.0 +Provides: bundled(golang(github.com/miekg/dns)) = 1.1.63 +Provides: bundled(golang(github.com/munnerz/goautoneg)) = a7dc8b6 +Provides: bundled(golang(github.com/pbnjay/memory)) = 7b4eea6 +Provides: bundled(golang(github.com/pmezard/go-difflib)) = 1.0.0 +Provides: bundled(golang(github.com/spf13/pflag)) = 1.0.7 +Provides: bundled(golang(github.com/tailscale/tscert)) = d3f8340 +Provides: bundled(golang(golang.org/x/crypto)) = 0.40.0 +Provides: bundled(golang(golang.org/x/crypto/x509roots/fallback)) = 49bf5b8 +Provides: bundled(golang(golang.org/x/exp)) = 7e4ce0a +Provides: bundled(golang(golang.org/x/mod)) = 0.25.0 +Provides: bundled(golang(golang.org/x/net)) = 0.42.0 +Provides: bundled(golang(golang.org/x/oauth2)) = 0.30.0 +Provides: bundled(golang(golang.org/x/sync)) = 0.16.0 +Provides: bundled(golang(golang.org/x/sys)) = 0.34.0 +Provides: bundled(golang(golang.org/x/term)) = 0.33.0 +Provides: bundled(golang(golang.org/x/text)) = 0.27.0 +Provides: bundled(golang(golang.org/x/time)) = 0.12.0 +Provides: bundled(golang(golang.org/x/tools)) = 0.34.0 +Provides: bundled(golang(google.golang.org/api)) = 0.240.0 +Provides: bundled(golang(google.golang.org/protobuf)) = 1.36.6 + +# CC0-1.0: +Provides: bundled(golang(github.com/zeebo/blake3)) = 0.2.4 + +# ISC: +Provides: bundled(golang(github.com/davecgh/go-spew)) = 1.1.1 + +# MIT: +Provides: bundled(golang(github.com/BurntSushi/toml)) = 1.5.0 +Provides: bundled(golang(github.com/KimMachineGun/automemlimit)) = 0.7.4 Provides: bundled(golang(github.com/Masterminds/semver/v3)) = 3.3.0 Provides: bundled(golang(github.com/Masterminds/sprig/v3)) = 3.3.0 Provides: bundled(golang(github.com/Microsoft/go-winio)) = 0.6.0 -Provides: bundled(golang(github.com/alecthomas/chroma/v2)) = 2.15.0 -Provides: bundled(golang(github.com/antlr4-go/antlr/v4)) = 4.13.0 +Provides: bundled(golang(github.com/alecthomas/chroma/v2)) = 2.20.0 Provides: bundled(golang(github.com/aryann/difflib)) = ff5ff6d Provides: bundled(golang(github.com/beorn7/perks)) = 1.0.1 -Provides: bundled(golang(github.com/caddyserver/certmagic)) = 0.23.0 Provides: bundled(golang(github.com/caddyserver/zerossl)) = 0.1.3 -Provides: bundled(golang(github.com/cenkalti/backoff/v4)) = 4.3.0 +Provides: bundled(golang(github.com/ccoveille/go-safecast)) = 1.6.1 +Provides: bundled(golang(github.com/cenkalti/backoff/v5)) = 5.0.2 Provides: bundled(golang(github.com/cespare/xxhash)) = 1.1.0 Provides: bundled(golang(github.com/cespare/xxhash/v2)) = 2.3.0 Provides: bundled(golang(github.com/chzyer/readline)) = 1.5.1 -Provides: bundled(golang(github.com/cloudflare/circl)) = 1.6.0 -Provides: bundled(golang(github.com/cpuguy83/go-md2man/v2)) = 2.0.6 -Provides: bundled(golang(github.com/davecgh/go-spew)) = 1.1.1 -Provides: bundled(golang(github.com/dgraph-io/badger)) = 1.6.2 -Provides: bundled(golang(github.com/dgraph-io/badger/v2)) = 2.2007.4 -Provides: bundled(golang(github.com/dgraph-io/ristretto)) = 0.2.0 +Provides: bundled(golang(github.com/cpuguy83/go-md2man/v2)) = 2.0.7 Provides: bundled(golang(github.com/dgryski/go-farm)) = a6ae236 -Provides: bundled(golang(github.com/dlclark/regexp2)) = 1.11.4 +Provides: bundled(golang(github.com/dlclark/regexp2)) = 1.11.5 Provides: bundled(golang(github.com/dustin/go-humanize)) = 1.0.1 Provides: bundled(golang(github.com/felixge/httpsnoop)) = 1.0.4 Provides: bundled(golang(github.com/francoispqt/gojay)) = 1.2.13 -Provides: bundled(golang(github.com/fxamacker/cbor/v2)) = 2.6.0 -Provides: bundled(golang(github.com/go-chi/chi/v5)) = 5.2.1 -Provides: bundled(golang(github.com/go-jose/go-jose/v3)) = 3.0.4 -Provides: bundled(golang(github.com/go-kit/kit)) = 0.13.0 -Provides: bundled(golang(github.com/go-kit/log)) = 0.2.1 -Provides: bundled(golang(github.com/go-logfmt/logfmt)) = 0.6.0 -Provides: bundled(golang(github.com/go-logr/logr)) = 1.4.2 -Provides: bundled(golang(github.com/go-logr/stdr)) = 1.2.2 -Provides: bundled(golang(github.com/go-sql-driver/mysql)) = 1.7.1 -Provides: bundled(golang(github.com/go-task/slim-sprig)) = 52ccab3 -Provides: bundled(golang(github.com/golang/protobuf)) = 1.5.4 -Provides: bundled(golang(github.com/golang/snappy)) = 0.0.4 -Provides: bundled(golang(github.com/google/cel-go)) = 0.24.1 -Provides: bundled(golang(github.com/google/certificate-transparency-go)) = 74a5dd3 -Provides: bundled(golang(github.com/google/go-tpm)) = 0.9.0 -Provides: bundled(golang(github.com/google/go-tspi)) = 0.3.0 -Provides: bundled(golang(github.com/google/pprof)) = ec68065 -Provides: bundled(golang(github.com/google/uuid)) = 1.6.0 -Provides: bundled(golang(github.com/grpc-ecosystem/grpc-gateway/v2)) = 2.22.0 +Provides: bundled(golang(github.com/fxamacker/cbor/v2)) = 2.8.0 +Provides: bundled(golang(github.com/go-chi/chi/v5)) = 5.2.2 Provides: bundled(golang(github.com/huandu/xstrings)) = 1.5.0 -Provides: bundled(golang(github.com/inconshreveable/mousetrap)) = 1.1.0 -Provides: bundled(golang(github.com/jackc/chunkreader/v2)) = 2.0.1 -Provides: bundled(golang(github.com/jackc/pgconn)) = 1.14.3 -Provides: bundled(golang(github.com/jackc/pgio)) = 1.0.0 Provides: bundled(golang(github.com/jackc/pgpassfile)) = 1.0.0 -Provides: bundled(golang(github.com/jackc/pgproto3/v2)) = 2.3.3 Provides: bundled(golang(github.com/jackc/pgservicefile)) = 091c0ba -Provides: bundled(golang(github.com/jackc/pgtype)) = 1.14.0 -Provides: bundled(golang(github.com/jackc/pgx/v4)) = 4.18.3 -Provides: bundled(golang(github.com/klauspost/compress)) = 1.18.0 -Provides: bundled(golang(github.com/klauspost/cpuid/v2)) = 2.2.10 -Provides: bundled(golang(github.com/libdns/libdns)) = 1.0.0-beta.1 -Provides: bundled(golang(github.com/manifoldco/promptui)) = 0.9.0 +Provides: bundled(golang(github.com/jackc/pgx/v5)) = 5.6.0 +Provides: bundled(golang(github.com/jackc/puddle/v2)) = 2.2.1 +Provides: bundled(golang(github.com/klauspost/cpuid/v2)) = 2.3.0 +Provides: bundled(golang(github.com/libdns/libdns)) = 1.1.0 Provides: bundled(golang(github.com/mattn/go-colorable)) = 0.1.13 Provides: bundled(golang(github.com/mattn/go-isatty)) = 0.0.20 Provides: bundled(golang(github.com/mgutz/ansi)) = d51e80e -Provides: bundled(golang(github.com/mholt/acmez/v3)) = 3.1.2 -Provides: bundled(golang(github.com/miekg/dns)) = 1.1.63 Provides: bundled(golang(github.com/mitchellh/copystructure)) = 1.2.0 Provides: bundled(golang(github.com/mitchellh/go-ps)) = 1.0.0 Provides: bundled(golang(github.com/mitchellh/reflectwalk)) = 1.0.2 -Provides: bundled(golang(github.com/onsi/ginkgo/v2)) = 2.13.2 -Provides: bundled(golang(github.com/pbnjay/memory)) = 7b4eea6 -Provides: bundled(golang(github.com/pires/go-proxyproto)) = b718e7c -Provides: bundled(golang(github.com/pkg/errors)) = 0.9.1 -Provides: bundled(golang(github.com/pmezard/go-difflib)) = 1.0.0 -Provides: bundled(golang(github.com/prometheus/client_golang)) = 1.19.1 -Provides: bundled(golang(github.com/prometheus/client_model)) = 0.5.0 -Provides: bundled(golang(github.com/prometheus/common)) = 0.48.0 -Provides: bundled(golang(github.com/prometheus/procfs)) = 0.12.0 Provides: bundled(golang(github.com/quic-go/qpack)) = 0.5.1 -Provides: bundled(golang(github.com/quic-go/quic-go)) = 0.50.1 -Provides: bundled(golang(github.com/rs/xid)) = 1.5.0 -Provides: bundled(golang(github.com/russross/blackfriday/v2)) = 2.1.0 +Provides: bundled(golang(github.com/quic-go/quic-go)) = 0.54.0 +Provides: bundled(golang(github.com/rs/xid)) = 1.6.0 Provides: bundled(golang(github.com/shopspring/decimal)) = 1.4.0 Provides: bundled(golang(github.com/shurcooL/sanitized_anchor_name)) = 1.0.0 Provides: bundled(golang(github.com/sirupsen/logrus)) = 1.9.3 -Provides: bundled(golang(github.com/slackhq/nebula)) = 1.6.1 -Provides: bundled(golang(github.com/smallstep/certificates)) = 0.26.1 -Provides: bundled(golang(github.com/smallstep/go-attestation)) = 413678f -Provides: bundled(golang(github.com/smallstep/nosql)) = 0.6.1 -Provides: bundled(golang(github.com/smallstep/pkcs7)) = 3b98ecc -Provides: bundled(golang(github.com/smallstep/scep)) = aee96d7 -Provides: bundled(golang(github.com/smallstep/truststore)) = 0.13.0 +Provides: bundled(golang(github.com/slackhq/nebula)) = 1.9.5 +Provides: bundled(golang(github.com/smallstep/pkcs7)) = 0.2.1 Provides: bundled(golang(github.com/spf13/cast)) = 1.7.0 -Provides: bundled(golang(github.com/spf13/cobra)) = 1.9.1 -Provides: bundled(golang(github.com/spf13/pflag)) = 1.0.6 Provides: bundled(golang(github.com/stoewer/go-strcase)) = 1.2.0 Provides: bundled(golang(github.com/stretchr/testify)) = 1.10.0 -Provides: bundled(golang(github.com/tailscale/tscert)) = d3f8340 -Provides: bundled(golang(github.com/urfave/cli)) = 1.22.14 +Provides: bundled(golang(github.com/urfave/cli)) = 1.22.17 Provides: bundled(golang(github.com/x448/float16)) = 0.8.4 -Provides: bundled(golang(github.com/yuin/goldmark)) = 1.7.8 +Provides: bundled(golang(github.com/yuin/goldmark)) = 1.7.13 Provides: bundled(golang(github.com/yuin/goldmark-highlighting/v2)) = 37449ab -Provides: bundled(golang(github.com/zeebo/blake3)) = 0.2.4 -Provides: bundled(golang(go.etcd.io/bbolt)) = 1.3.9 -Provides: bundled(golang(go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp)) = 0.56.0 -Provides: bundled(golang(go.opentelemetry.io/contrib/propagators/autoprop)) = 0.42.0 -Provides: bundled(golang(go.opentelemetry.io/contrib/propagators/aws)) = 1.17.0 -Provides: bundled(golang(go.opentelemetry.io/contrib/propagators/b3)) = 1.17.0 -Provides: bundled(golang(go.opentelemetry.io/contrib/propagators/jaeger)) = 1.17.0 -Provides: bundled(golang(go.opentelemetry.io/contrib/propagators/ot)) = 1.17.0 -Provides: bundled(golang(go.opentelemetry.io/otel)) = 1.31.0 -Provides: bundled(golang(go.opentelemetry.io/otel/exporters/otlp/otlptrace)) = 1.31.0 -Provides: bundled(golang(go.opentelemetry.io/otel/exporters/otlp/otlptrace/otlptracegrpc)) = 1.31.0 -Provides: bundled(golang(go.opentelemetry.io/otel/metric)) = 1.31.0 -Provides: bundled(golang(go.opentelemetry.io/otel/sdk)) = 1.31.0 -Provides: bundled(golang(go.opentelemetry.io/otel/trace)) = 1.31.0 -Provides: bundled(golang(go.opentelemetry.io/proto/otlp)) = 1.3.1 -Provides: bundled(golang(go.step.sm/cli-utils)) = 0.9.0 -Provides: bundled(golang(go.step.sm/crypto)) = 0.45.0 -Provides: bundled(golang(go.step.sm/linkedca)) = 0.20.1 +Provides: bundled(golang(go.etcd.io/bbolt)) = 1.3.10 Provides: bundled(golang(go.uber.org/automaxprocs)) = 1.6.0 -Provides: bundled(golang(go.uber.org/mock)) = 0.5.0 Provides: bundled(golang(go.uber.org/multierr)) = 1.11.0 Provides: bundled(golang(go.uber.org/zap)) = 1.27.0 Provides: bundled(golang(go.uber.org/zap/exp)) = 0.3.0 -Provides: bundled(golang(golang.org/x/crypto)) = 0.36.0 -Provides: bundled(golang(golang.org/x/crypto/x509roots/fallback)) = 49bf5b8 -Provides: bundled(golang(golang.org/x/exp)) = 9bf2ced -Provides: bundled(golang(golang.org/x/mod)) = 0.24.0 -Provides: bundled(golang(golang.org/x/net)) = 0.38.0 -Provides: bundled(golang(golang.org/x/sync)) = 0.12.0 -Provides: bundled(golang(golang.org/x/sys)) = 0.31.0 -Provides: bundled(golang(golang.org/x/term)) = 0.30.0 -Provides: bundled(golang(golang.org/x/text)) = 0.23.0 -Provides: bundled(golang(golang.org/x/time)) = 0.11.0 -Provides: bundled(golang(golang.org/x/tools)) = 0.31.0 -Provides: bundled(golang(google.golang.org/genproto/googleapis/api)) = 5fefd90 -Provides: bundled(golang(google.golang.org/genproto/googleapis/rpc)) = 5fefd90 -Provides: bundled(golang(google.golang.org/grpc)) = 1.67.1 -Provides: bundled(golang(google.golang.org/protobuf)) = 1.35.1 Provides: bundled(golang(gopkg.in/natefinch/lumberjack.v2)) = 2.2.1 + +# MPL-2.0: +Provides: bundled(golang(github.com/go-sql-driver/mysql)) = 1.8.1 + +# Apache-2.0 AND BSD-2-Clause: +Provides: bundled(golang(go.step.sm/crypto)) = 0.67.0 +Provides: bundled(golang(github.com/smallstep/cli-utils)) = 0.12.1 + +# Apache-2.0 AND BSD-3-Clause: +Provides: bundled(golang(github.com/go-jose/go-jose/v3)) = 3.0.4 +Provides: bundled(golang(github.com/go-jose/go-jose/v4)) = 4.0.5 +Provides: bundled(golang(github.com/googleapis/gax-go/v2)) = 2.14.2 +Provides: bundled(golang(github.com/mholt/acmez/v3)) = 3.1.2 +Provides: bundled(golang(github.com/smallstep/certificates)) = 0.28.4 + +# Apache-2.0 AND MIT: +Provides: bundled(golang(github.com/dgraph-io/ristretto)) = 0.2.0 Provides: bundled(golang(gopkg.in/yaml.v3)) = 3.0.1 + +# BSD-1-Clause AND BSD-3-Clause: +Provides: bundled(golang(filippo.io/edwards25519)) = 1.1.0 + +# BSD-2-Clause-Views AND BSD-3-Clause: Provides: bundled(golang(howett.net/plist)) = 1.0.0 +# BSD-3-Clause AND MIT: +Provides: bundled(golang(github.com/smallstep/scep)) = 8cf1ca4 + +# CC0-1.0 AND MIT: +Provides: bundled(golang(github.com/AndreasBriese/bbloom)) = 46b345b + +# Apache-2.0 AND BSD-3-Clause AND MIT: +Provides: bundled(golang(github.com/klauspost/compress)) = 1.18.0 +Provides: bundled(golang(github.com/prometheus/client_golang)) = 1.23.0 + %description Caddy is an extensible server platform that uses TLS by default. diff --git a/sources b/sources index ebdbe02..83d8cbc 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (caddy-2.10.0.tar.gz) = 9f0448b6108d088c5b9f59af8977df9adb73d62ebfc9fce038b07d927984873e39234d7d7dfd64c20e9527eccc400bd54930c5ffa21ec899a117e2c13b6ae229 -SHA512 (caddy-2.10.0-vendor.tar.gz) = 0dc3b2ebd96cd4ea937b7ffd34a8b33b5a3ffdff5fbf55357104019674319ebfcde0a1b3514897c62595409f7edc79a9da580fa3c7cc30c8913017a430f27c9a +SHA512 (caddy-2.10.2.tar.gz) = 986b11e26cdaa4fbe554cf7b6bb333404fc33190945ef995122518a3fe2fe582a4cf4d2a8ab463e045857650e9deb88123f8d86a93dbdc465635755b00356205 +SHA512 (caddy-2.10.2-vendor.tar.gz) = 8b4b63f5b8ba4b29ec01da55820214f4c63a1c545756815e26d73bdcc3b3ac5aada863ef32ab6db898b90a9501c0ed6e03ed44e53612cdb8d872ab89480d466d From c364159f1a43395b33df06fb17aad705d0de76f8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alejandro=20S=C3=A1ez?= Date: Fri, 10 Oct 2025 13:09:49 +0200 Subject: [PATCH 79/79] rebuild