summaryrefslogtreecommitdiff
path: root/www-servers/caddy
diff options
context:
space:
mode:
authorV3n3RiX <venerix@koprulu.sector>2024-02-09 11:33:56 +0000
committerV3n3RiX <venerix@koprulu.sector>2024-02-09 11:33:56 +0000
commitdbed051da899bbf15bd223d4aa40e913cc3c5b0f (patch)
treed3c3e2621a817c0f200ff2a904810fa11b2b2a04 /www-servers/caddy
parent4b63fd37a73007a6502ac56db4fc2c1c25c335fb (diff)
gentoo auto-resync : 09:02:2024 - 11:33:56
Diffstat (limited to 'www-servers/caddy')
-rw-r--r--www-servers/caddy/Manifest6
-rw-r--r--www-servers/caddy/caddy-2.7.6-r1.ebuild129
-rw-r--r--www-servers/caddy/caddy-9999.ebuild49
-rw-r--r--www-servers/caddy/metadata.xml7
4 files changed, 182 insertions, 9 deletions
diff --git a/www-servers/caddy/Manifest b/www-servers/caddy/Manifest
index c08cdc1bbdea..ab31100c5578 100644
--- a/www-servers/caddy/Manifest
+++ b/www-servers/caddy/Manifest
@@ -14,10 +14,12 @@ DIST caddy-2.7.5-docs.tar.gz 24578 BLAKE2B e08bfa37b157d8d4300198384bfc4c19cb0f5
DIST caddy-2.7.5.tar.gz 611282 BLAKE2B 86c28922f80f931452e81b0c3fa52ed0b86b2325eb2a1adf1de830a7a339772063955fd3cb5ee888cbf8c1c905b98bb6a292b592a2983012ad4fefe33c361e82 SHA512 45f6790b7c3683a8001445e932d5678fd27d204500f7301d92c4d8421f24574e113bf7c335bd277b16abe07eb3d24258358f87c68cee38905fa6d0e6bcc1c24c
DIST caddy-2.7.6-deps.tar.xz 128958740 BLAKE2B ffbe682df64a88dac9f50e9712f1d6697e58f2d9854c270321f7a0325f0b5ead7f93316756136a4435b70c5e08742c7130ce507ee4aa4696f4fb906f4eba8754 SHA512 f467144e235e09a7718cffe5ed3c40ec2d63038a6a948fe4f85d34717877af8a9959ef7e2c3ac32fd0cce522d693ccac883877f061f5cefc9512f7eed556b336
DIST caddy-2.7.6-docs.tar.gz 24583 BLAKE2B d3dbbb701d86cbfaf538f10911fdd3613b8c3c0f49ef9e229487d2a4fcef9eff79b56e9852d5c1ccd5a8d1d1898861fc8183c343c129901562b03a9092af9e61 SHA512 62e534d41e714b47265fd8089ad9e03a1a89903460976d8af27fa5f71173e076bab8574282213595e495be701b769e1a70ff9e7ec9576fbf8e821e672207faa5
+DIST caddy-2.7.6-r1-deps.tar.xz 129331604 BLAKE2B 50b83c012c70637936c83ec765758cdcd80014ca224d76a746de8640a6b36ae15ce11ec57d9fdb20a5f7b3add946209c6dde7bb4e4bd4a47ffe3ffc8971725db SHA512 a4bc56de4f7ec8e9967dde3d7ca4cbb74cba9ce0b8906ffe16f8dae3f52fff1164827942df8154eadbae80cce3ee603535b9135cf8a5126d84a9017e8aece078
DIST caddy-2.7.6.tar.gz 606077 BLAKE2B 1237edc164ec6095c9dff27c332925c4ce9d91a60e629770463bbffb1503b8b11e36033e852df3eb5bb69ffa448833b6ee2891dc0ba6dc9b43b6cce27d492179 SHA512 ef0cb6fd7f6f2a296290b4bb520300e043ad31cc612e734632ffa25cdaa23fd7d601ac4ceaa1c76285d54a07ee773360f795103ef3c2ec79516a4f18a5e844b5
EBUILD caddy-2.7.4-r1.ebuild 2170 BLAKE2B 2935ddec1231907e4baae92fbcbac0d295f5d729e78732491e5d00a1bd6b27b2b3d637eb091455cc36533fb39becfbaaff3cc1207982c1a19159fe02ef5092db SHA512 060e5d6a4d5adfb92f19d055d07b504fd6a480a80301f076ac9dc29ddd14476a104ca903b437cd7f65bd6d6aec1c0df842a7c461c0f247ebca5a2ed5e9a05ee0
EBUILD caddy-2.7.4.ebuild 1051 BLAKE2B 0b8c0c2488872aa55de08268187639b2b32d963d96cd9d1ac9403493b4337e86edf0a88a90f147c6618e0a9bacaba546b422052ef7a96931f1676a85873645fe SHA512 b6d76553c27ff5c152399728783cb4a71327ddcfc4d103b8134a90ddf8f9e5c52b29bbb8dd0766c6c3aeb5517be6d1ae0b1ca789481b0b6c0ec9738d881cf562
EBUILD caddy-2.7.5.ebuild 2468 BLAKE2B 3807de02e87cabf997015d2b2d2b3effe285d3ad141587cdb8c95658606fdb06ea35c13ff160bd27760d2e9e6618f80be5a35436aad6d4e4e3dc43b509dbf336 SHA512 4220d31c8c5d2b2c9c3706a59c73efdef5025a1a3854371bafdb71a65d283e033687c29523e7d21385e39b390d36ff0c8718e93d3619b395a532cc6f9caa9b17
+EBUILD caddy-2.7.6-r1.ebuild 3454 BLAKE2B b059dcc37cf0769184235cb557699e45840e4a7315cede6c710b5a102ed2bd0ff509387fd2e1cbce74b267be2834a08ad59f24c81e9e31981e662ba5bba587bb SHA512 b80496989acf47a77ae6767352e6cb77307ffa8dd2ff83e80c73d91022e2b29bcd5ed73150217898da4da11f3506c323badcfb5476c2f73a577547833169eebd
EBUILD caddy-2.7.6.ebuild 2425 BLAKE2B daa4f27f63e1de4bf4489856622c9a641ede71cc7aee0e6e9c9c15b8f7383b23935fc8456f7dfde5f163819317bed05b391b65b4f61346fd46928c0776403aa7 SHA512 3dc0ce07d782590c0a71a78de89d82489a6c9923912c676ac0985999f13a4e1313104386250a6a50eb94908bb0ddece6200b9a8772098c81a3ae6254a1e48fa2
-EBUILD caddy-9999.ebuild 2476 BLAKE2B cf0b64b1fdcd1cf49b72198feff6ce24b3fc45d8cac2a4ff262d085a9e6a4e98a1f18b66b6520b0e7f46db3b57d4a838efe642a6ef36fd80bb9ed733905787e3 SHA512 9bb04a07dde701e066cce3d563068c85b3fa312ab9e5537f9f4315523e9a95b2aa192afe2cc14b0f5441220e93a013eee46ce8ced58434272d336f4373b3c299
-MISC metadata.xml 714 BLAKE2B eed8116b5a2f2198e1ab0669f03ab09543022abd6cbfe364c1a923cc74cfa1ba4cda4ced4b5dee003afd9cc3236f4c428481c0cc408de18e15f4bee72a74d6d5 SHA512 f0220a3c3c3a42ec54d0880036e06f1e25494c89847b79445dfbe99d9c288840d5ee94c2a35eae0846f611b804e3f115f79e3e84d07683b3a096b2ffe734f9f8
+EBUILD caddy-9999.ebuild 3502 BLAKE2B 82addf6fa72d3ba99c2582e3b0537940733b840b980490817241eb976342f4f44d40571845e6beb5d2cae0a5ff7ead1a09eca2efa27c086e3ba9536edea69eef SHA512 0376742cfca41e29afc3f87df49d931b2933220b66acef837f8117b89d2a2d37f17b24a8ebb6cad9512f2ee0f141e453cceaa01fba5f861fcc2f44ff6c70444a
+MISC metadata.xml 980 BLAKE2B 2ee3b469fa4243c0bff38b31d2c10f82c04b740b265cb1ffe5e5d36745bb828e91ee6d02dd599232c2be657807533ed2c1a3f32d4393e876dca224fb0faac46e SHA512 9eb633a87a3c68c96ad457684f60d751122e91bfecbede4cf3e7b642a61ddc165f0ce862e65d707c1c00d3ecf605f66c813d80d918e3080dc7fc1e6745ce7115
diff --git a/www-servers/caddy/caddy-2.7.6-r1.ebuild b/www-servers/caddy/caddy-2.7.6-r1.ebuild
new file mode 100644
index 000000000000..1f0895f1e673
--- /dev/null
+++ b/www-servers/caddy/caddy-2.7.6-r1.ebuild
@@ -0,0 +1,129 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit fcaps go-module systemd shell-completion
+
+DESCRIPTION="Fast and extensible multi-platform HTTP/1-2-3 web server with automatic HTTPS"
+HOMEPAGE="https://caddyserver.com"
+
+if [[ "${PV}" == 9999* ]]; then
+ inherit git-r3
+ EGIT_REPO_URI="https://github.com/caddyserver/caddy.git"
+else
+ SRC_URI="
+ https://github.com/caddyserver/caddy/archive/v${PV}.tar.gz -> ${P}.tar.gz
+ https://dev.gentoo.org/~zmedico/dist/${PF}-deps.tar.xz
+ https://github.com/caddyserver/dist/archive/refs/tags/v${PV}.tar.gz -> ${P}-docs.tar.gz
+"
+ KEYWORDS="~amd64 ~arm64 ~loong ~riscv"
+fi
+
+# MAIN
+LICENSE="Apache-2.0"
+# deps
+LICENSE+=" BSD ECL-2.0 MIT CC0-1.0"
+SLOT="0"
+
+IUSE='events-handlers-exec'
+RESTRICT="test"
+
+RDEPEND="
+ acct-user/http
+ acct-group/http"
+DEPEND="${RDEPEND}"
+
+FILECAPS=(
+ -m 755 'cap_net_bind_service=+ep' usr/bin/"${PN}"
+)
+
+PATCHES=(
+ "${FILESDIR}"/remove-binary-altering-commands-2.7.5.patch
+)
+
+# takes a module as an only arg
+add_custom_module() {
+ local LINE_NO=$(grep -n 'plug in Caddy modules here' cmd/caddy/main.go | awk -F: '{print $1;}')
+ sed -i -e "${LINE_NO:?}a \ _ \"$1\"" cmd/caddy/main.go || die
+}
+
+src_unpack() {
+ if [[ "${PV}" == 9999* ]]; then
+ # clone main git repo
+ git-r3_src_unpack
+
+ # get extra modules
+ if use events-handlers-exec; then
+ pushd "${P}"
+ add_custom_module 'github.com/mholt/caddy-events-exec' || die
+ ego get github.com/mholt/caddy-events-exec
+ popd
+ fi
+
+ # clone dist repo (docs and misc)
+ EGIT_REPO_URI="https://github.com/caddyserver/dist.git"
+ EGIT_CHECKOUT_DIR="${WORKDIR}/dist-${PV}"
+ git-r3_src_unpack
+
+ go-module_live_vendor
+ else
+ go-module_src_unpack
+ fi
+}
+
+src_prepare() {
+ default
+ sed -i -e "s|User=caddy|User=http|g;s|Group=caddy|Group=http|g;" ../dist-"${PV}"/init/*service || die
+
+ if use events-handlers-exec && [[ "${PV}" != 9999* ]]; then
+ add_custom_module 'github.com/mholt/caddy-events-exec' || die
+ cat <<-EOF >> go.sum || die
+ github.com/mholt/caddy-events-exec v0.0.0-20231121214933-055bfd2e8b82 h1:uRsPaFNQJRDrYcSsgnH0hFhCWFXfgB8QVH8yjX+u154=
+ github.com/mholt/caddy-events-exec v0.0.0-20231121214933-055bfd2e8b82/go.mod h1:Y9JjT8YLxpmk7PeUkvsWAhzzRdC6rXP7QjAHiwmvjD0=
+ EOF
+
+ cat <<-EOF >> go.mod || die
+ require (
+ github.com/mholt/caddy-events-exec v0.0.0-20231121214933-055bfd2e8b82 // indirect
+ )
+ EOF
+ fi
+}
+
+src_compile() {
+ # https://github.com/caddyserver/caddy/blob/master/caddy.go#L843
+ if [[ ${PV} == 9999* ]]; then
+ local CUSTOM_VER="git-$(git rev-parse --short HEAD)"
+ else
+ local CUSTOM_VER="${PV}"
+ fi
+
+ ego build -ldflags "-X github.com/caddyserver/caddy/v2.CustomVersion=${CUSTOM_VER}" ./cmd/caddy
+ local sh
+ for sh in bash fish zsh; do
+ ./caddy completion "${sh}" > completion."${sh}" || die
+ done
+ ./caddy manpage -o manpages || die
+}
+
+src_install() {
+ default
+
+ dobin "${PN}"
+ insinto /etc/"${PN}"
+ doins ../dist-"${PV}"/config/Caddyfile
+ systemd_dounit ../dist-"${PV}"/init/*.service
+ newinitd "${FILESDIR}"/initd-2.7.5 "${PN}"
+ newconfd "${FILESDIR}"/confd-2.7.5 "${PN}"
+ insinto /etc/logrotate.d
+ newins "${FILESDIR}/logrotated" "${PN}"
+ insinto /usr/share/"${PN}"
+ doins ../dist-"${PV}"/welcome/index.html
+
+ newbashcomp completion.bash "${PN}"
+ newfishcomp completion.fish "${PN}".fish
+ newzshcomp completion.zsh _"${PN}"
+ newdoc ../dist-"${PV}"/init/README.md systemd-services-README.md
+ doman manpages/*
+}
diff --git a/www-servers/caddy/caddy-9999.ebuild b/www-servers/caddy/caddy-9999.ebuild
index 5657c0607730..daa4e4571bd8 100644
--- a/www-servers/caddy/caddy-9999.ebuild
+++ b/www-servers/caddy/caddy-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -12,16 +12,23 @@ if [[ "${PV}" == 9999* ]]; then
inherit git-r3
EGIT_REPO_URI="https://github.com/caddyserver/caddy.git"
else
- SRC_URI="https://github.com/caddyserver/caddy/archive/v${PV}.tar.gz -> ${P}.tar.gz"
- SRC_URI+=" https://github.com/rahilarious/gentoo-distfiles/releases/download/${P}/deps.tar.xz -> ${P}-deps.tar.xz"
- SRC_URI+=" https://github.com/caddyserver/dist/archive/refs/tags/v${PV}.tar.gz -> ${P}-docs.tar.gz"
+ SRC_URI="
+ https://github.com/caddyserver/caddy/archive/v${PV}.tar.gz -> ${P}.tar.gz
+ https://github.com/rahilarious/gentoo-distfiles/releases/download/${P}/deps.tar.xz -> ${P}-deps.tar.xz
+ https://github.com/caddyserver/dist/archive/refs/tags/v${PV}.tar.gz -> ${P}-docs.tar.gz
+"
KEYWORDS="~amd64 ~arm64 ~loong ~riscv"
fi
+# MAIN
LICENSE="Apache-2.0"
+# deps
LICENSE+=" BSD ECL-2.0 MIT CC0-1.0"
SLOT="0"
+
+IUSE='events-handlers-exec'
RESTRICT="test"
+
RDEPEND="
acct-user/http
acct-group/http"
@@ -35,12 +42,26 @@ PATCHES=(
"${FILESDIR}"/remove-binary-altering-commands-2.7.5.patch
)
+# takes a module as an only arg
+add_custom_module() {
+ local LINE_NO=$(grep -n 'plug in Caddy modules here' cmd/caddy/main.go | awk -F: '{print $1;}')
+ sed -i -e "${LINE_NO:?}a \ _ \"$1\"" cmd/caddy/main.go || die
+}
+
src_unpack() {
if [[ "${PV}" == 9999* ]]; then
- # unpack code
+ # clone main git repo
git-r3_src_unpack
- # unpack docs and misc
+ # get extra modules
+ if use events-handlers-exec; then
+ pushd "${P}"
+ add_custom_module 'github.com/mholt/caddy-events-exec' || die
+ ego get github.com/mholt/caddy-events-exec
+ popd
+ fi
+
+ # clone dist repo (docs and misc)
EGIT_REPO_URI="https://github.com/caddyserver/dist.git"
EGIT_CHECKOUT_DIR="${WORKDIR}/dist-${PV}"
git-r3_src_unpack
@@ -51,9 +72,23 @@ src_unpack() {
fi
}
-src_prepare(){
+src_prepare() {
default
sed -i -e "s|User=caddy|User=http|g;s|Group=caddy|Group=http|g;" ../dist-"${PV}"/init/*service || die
+
+ if use events-handlers-exec && [[ "${PV}" != 9999* ]]; then
+ add_custom_module 'github.com/mholt/caddy-events-exec' || die
+ cat <<-EOF >> go.sum || die
+ github.com/mholt/caddy-events-exec v0.0.0-20231121214933-055bfd2e8b82 h1:uRsPaFNQJRDrYcSsgnH0hFhCWFXfgB8QVH8yjX+u154=
+ github.com/mholt/caddy-events-exec v0.0.0-20231121214933-055bfd2e8b82/go.mod h1:Y9JjT8YLxpmk7PeUkvsWAhzzRdC6rXP7QjAHiwmvjD0=
+ EOF
+
+ cat <<-EOF >> go.mod || die
+ require (
+ github.com/mholt/caddy-events-exec v0.0.0-20231121214933-055bfd2e8b82 // indirect
+ )
+ EOF
+ fi
}
src_compile() {
diff --git a/www-servers/caddy/metadata.xml b/www-servers/caddy/metadata.xml
index 94c564bbfc25..ede41c6d550d 100644
--- a/www-servers/caddy/metadata.xml
+++ b/www-servers/caddy/metadata.xml
@@ -13,6 +13,13 @@
<email>proxy-maint@gentoo.org</email>
<name>Proxy Maintainers</name>
</maintainer>
+ <use>
+ <flag name="events-handlers-exec">
+ Builds a module which lets user exec command on Caddy events
+ https://caddyserver.com/docs/modules/events.handlers.exec
+ https://caddyserver.com/docs/caddyfile/options#event-options
+ </flag>
+ </use>
<upstream>
<remote-id type="github">caddyserver/caddy</remote-id>
<bugs-to>https://github.com/caddyserver/caddy/issues</bugs-to>