From f08bc8f82575baaa3d68f6724cf237067b4a98b4 Mon Sep 17 00:00:00 2001 From: Brett A C Sheffield Date: Wed, 16 Sep 2026 16:12:18 +0000 Subject: [PATCH] www-servers/vinyl-cache: add 9.0.2, 9.1.0 Add new versions to fix security bug VSV00020. Skip failing test r03996.vtc which is on upstream's list of failing tests. Bug: https://bugs.gentoo.org/982653 Closes: https://bugs.gentoo.org/982112 Link: https://vinyl-cache.org/vtest/ Signed-off-by: Brett A C Sheffield Part-of: https://codeberg.org/gentoo/gentoo/pulls/1863 Merges: https://codeberg.org/gentoo/gentoo/pulls/1863 Signed-off-by: Sam James --- www-servers/vinyl-cache/Manifest | 2 + .../vinyl-cache/vinyl-cache-9.0.2.ebuild | 131 ++++++++++++++++++ .../vinyl-cache/vinyl-cache-9.1.0.ebuild | 131 ++++++++++++++++++ 3 files changed, 264 insertions(+) create mode 100644 www-servers/vinyl-cache/vinyl-cache-9.0.2.ebuild create mode 100644 www-servers/vinyl-cache/vinyl-cache-9.1.0.ebuild diff --git a/www-servers/vinyl-cache/Manifest b/www-servers/vinyl-cache/Manifest index 0a1cc894cdd92..da2b78dffae9e 100644 --- a/www-servers/vinyl-cache/Manifest +++ b/www-servers/vinyl-cache/Manifest @@ -1,2 +1,4 @@ DIST varnish-8.0.2.tgz 4314061 BLAKE2B df9505c54815ae86d07e997ead7af5608969dccd3b91bf154fa6fa0591a3deee94b7cf4446c4c0d1e77ed5d2cb02d9ec812046f1f6db65a9df46cde911088fd4 SHA512 2eaac96d7121a750e6f18a271728d1fc7f7e8f079af38d450c8d395d6653942ac8cf970fa3c64f2ee7ea056617ebb5092cfe58b255dece6e948ce1308f602065 DIST vinyl-cache-9.0.1.tgz 6355153 BLAKE2B 4bb7b6003197be7e6363ae8e7523bc5242802a6a8b84a0782f7e4bea929ec8fb6c8ac5e849a717b650844a30ef446f07b3b83fca981af9c7a3a83d79eacb7ad4 SHA512 6aaa936e3bce6e195d469642949bf35a76cd04e6bcdc6ff1bc608ce2b37c871cab50f779918331658aefb853e78a71336ac5cf95e49524807a2929337940ab8e +DIST vinyl-cache-9.0.2.tgz 6361021 BLAKE2B 717b123a4196c1deff47dabdebbe2f3797e0801db3cb0d698e3bb3ffe7cedf9595fd4f4205b2c5411642814a25d15d0b382933e00edcb7bb8f7721ce017b8b28 SHA512 4fd10a899c475e7b8455a58135ece4dc773f97d2dd44de627b590d522c2ba541cb00658061bc767c4f1d1e64a2c89b9af2caa25ebabdd0471dbd0da2da072324 +DIST vinyl-cache-9.1.0.tgz 6481226 BLAKE2B 69075c8f2666526b6d9a291889261bb551c371e550aaea89519bfca0dcf4dd77c5fe266a5414ae9c2227b121f008f958249e4c8632369cc59bb0825dd45ad4d8 SHA512 5e8f715fb03dc47d3ce8fff2369f6f1625a63834661a6101057a7838a9a9e7baec93ddaa010d1fed76a90a52376c6cf25d1b7f845cc2fac034bcac823eabeafd diff --git a/www-servers/vinyl-cache/vinyl-cache-9.0.2.ebuild b/www-servers/vinyl-cache/vinyl-cache-9.0.2.ebuild new file mode 100644 index 0000000000000..44e7814aa5436 --- /dev/null +++ b/www-servers/vinyl-cache/vinyl-cache-9.0.2.ebuild @@ -0,0 +1,131 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{11..14} ) + +inherit autotools systemd python-r1 + +DESCRIPTION="A high-performance caching HTTP reverse proxy" +HOMEPAGE="https://vinyl-cache.org/" +SRC_URI="https://vinyl-cache.org/downloads/${P}.tgz" + +LICENSE="BSD-2 GPL-2" +SLOT="0/9" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86" +IUSE="jit selinux static-libs unwind" + +COMMON_DEPEND=" + sys-libs/readline:= + dev-libs/libedit + dev-libs/libpcre2[jit?] + sys-libs/ncurses:= + unwind? ( sys-libs/libunwind:= ) +" + +# varnish compiles stuff at run time +RDEPEND=" + ${PYTHON_DEPS} + ${COMMON_DEPEND} + acct-user/vinyl + acct-group/vinyl + sys-devel/gcc + selinux? ( sec-policy/selinux-varnishd ) +" +DEPEND=" + ${COMMON_DEPEND} + dev-python/docutils + dev-python/sphinx + virtual/pkgconfig +" + +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +# Upstream acknowledge that a small number of tests fail sporadically, including on their +# test boxes. We SKIP problematic tests here. Check https://vinyl-cache.org/vtest/ +SKIP_TESTS=( + "u00021.vtc" # Commit: 83d9fbb2961c + "r02686.vtc" # Bug: 880627 + "r02990.vtc" # Bug: 880627 + "u00008.vtc" # Bug: 880627 + "u00009.vtc" # Bug: 880627 + "t02014.vtc" # Bug: 964041 + "r03996.vtc" # Bug: 982112 +) + +src_prepare() { + default + + # Fix python shebangs for python-exec[-native-symlinks], #909330 + # skip vmodtool, as that gets installed by python_replicate_script later + local shebangs=($(grep -rl "#!/usr/bin/env python3"|grep -v vmodtool || die)) + python_setup + python_fix_shebang -q ${shebangs[*]} + + # SKIP unreliable tests + local t + for t in ${SKIP_TESTS[*]}; do + sed -i -e '/^vtest.*$/a feature cmd false' bin/vinyltest/tests/${t} || die + done + + # Remove -Werror bug #528354 + sed -i -e 's/-Werror\([^=]\)/\1/g' configure.ac || die + + # Upstream doesn't put vinyl.m4 in the m4/ directory + # We link because the Makefiles look for the file in + # the original location + ln -sf ../vinyl.m4 m4/vinyl.m4 || die + + eautoreconf +} + +src_configure() { + local myeconfargs=( + --with-contrib + $(use_enable static-libs static) + $(use_enable jit pcre2-jit) + $(use_with unwind) + --without-jemalloc + --with-statedir="/var/lib/${PN}" + ) + econf "${myeconfargs[@]}" +} + +src_install() { + emake DESTDIR="${D}" install + + python_replicate_script "${D}/usr/share/vinyl-cache/vmodtool.py" + + newinitd "${FILESDIR}"/vinyllog.initd vinyllog + newconfd "${FILESDIR}"/vinyllog.confd vinyllog + + newinitd "${FILESDIR}"/vinylncsa.initd vinylncsa + newconfd "${FILESDIR}"/vinylncsa.confd vinylncsa + + newinitd "${FILESDIR}"/vinyld.initd vinyld + newconfd "${FILESDIR}"/vinyld.confd vinyld + + insinto /etc/logrotate.d/ + newins "${FILESDIR}/vinyld.logrotate" vinyld + + diropts -m750 + + keepdir /var/lib/vinyl-cache + keepdir /var/log/vinyl-cache + + systemd_dounit "${FILESDIR}/vinyld.service" + + insinto /etc/vinyl-cache/ + doins vmod/vmod_*.vcc + doins etc/example.vcl + + dodoc README.md + dodoc doc/changes.rst + + fowners root:vinyl /etc/vinyl-cache/ + fowners vinyl:vinyl /var/lib/vinyl-cache/ + fperms 0750 /var/lib/vinyl-cache/ /etc/vinyl-cache/ + + find "${ED}" -name "*.la" -delete || die +} diff --git a/www-servers/vinyl-cache/vinyl-cache-9.1.0.ebuild b/www-servers/vinyl-cache/vinyl-cache-9.1.0.ebuild new file mode 100644 index 0000000000000..44e7814aa5436 --- /dev/null +++ b/www-servers/vinyl-cache/vinyl-cache-9.1.0.ebuild @@ -0,0 +1,131 @@ +# Copyright 1999-2026 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{11..14} ) + +inherit autotools systemd python-r1 + +DESCRIPTION="A high-performance caching HTTP reverse proxy" +HOMEPAGE="https://vinyl-cache.org/" +SRC_URI="https://vinyl-cache.org/downloads/${P}.tgz" + +LICENSE="BSD-2 GPL-2" +SLOT="0/9" +KEYWORDS="~amd64 ~arm ~arm64 ~ppc ~ppc64 ~riscv ~x86" +IUSE="jit selinux static-libs unwind" + +COMMON_DEPEND=" + sys-libs/readline:= + dev-libs/libedit + dev-libs/libpcre2[jit?] + sys-libs/ncurses:= + unwind? ( sys-libs/libunwind:= ) +" + +# varnish compiles stuff at run time +RDEPEND=" + ${PYTHON_DEPS} + ${COMMON_DEPEND} + acct-user/vinyl + acct-group/vinyl + sys-devel/gcc + selinux? ( sec-policy/selinux-varnishd ) +" +DEPEND=" + ${COMMON_DEPEND} + dev-python/docutils + dev-python/sphinx + virtual/pkgconfig +" + +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +# Upstream acknowledge that a small number of tests fail sporadically, including on their +# test boxes. We SKIP problematic tests here. Check https://vinyl-cache.org/vtest/ +SKIP_TESTS=( + "u00021.vtc" # Commit: 83d9fbb2961c + "r02686.vtc" # Bug: 880627 + "r02990.vtc" # Bug: 880627 + "u00008.vtc" # Bug: 880627 + "u00009.vtc" # Bug: 880627 + "t02014.vtc" # Bug: 964041 + "r03996.vtc" # Bug: 982112 +) + +src_prepare() { + default + + # Fix python shebangs for python-exec[-native-symlinks], #909330 + # skip vmodtool, as that gets installed by python_replicate_script later + local shebangs=($(grep -rl "#!/usr/bin/env python3"|grep -v vmodtool || die)) + python_setup + python_fix_shebang -q ${shebangs[*]} + + # SKIP unreliable tests + local t + for t in ${SKIP_TESTS[*]}; do + sed -i -e '/^vtest.*$/a feature cmd false' bin/vinyltest/tests/${t} || die + done + + # Remove -Werror bug #528354 + sed -i -e 's/-Werror\([^=]\)/\1/g' configure.ac || die + + # Upstream doesn't put vinyl.m4 in the m4/ directory + # We link because the Makefiles look for the file in + # the original location + ln -sf ../vinyl.m4 m4/vinyl.m4 || die + + eautoreconf +} + +src_configure() { + local myeconfargs=( + --with-contrib + $(use_enable static-libs static) + $(use_enable jit pcre2-jit) + $(use_with unwind) + --without-jemalloc + --with-statedir="/var/lib/${PN}" + ) + econf "${myeconfargs[@]}" +} + +src_install() { + emake DESTDIR="${D}" install + + python_replicate_script "${D}/usr/share/vinyl-cache/vmodtool.py" + + newinitd "${FILESDIR}"/vinyllog.initd vinyllog + newconfd "${FILESDIR}"/vinyllog.confd vinyllog + + newinitd "${FILESDIR}"/vinylncsa.initd vinylncsa + newconfd "${FILESDIR}"/vinylncsa.confd vinylncsa + + newinitd "${FILESDIR}"/vinyld.initd vinyld + newconfd "${FILESDIR}"/vinyld.confd vinyld + + insinto /etc/logrotate.d/ + newins "${FILESDIR}/vinyld.logrotate" vinyld + + diropts -m750 + + keepdir /var/lib/vinyl-cache + keepdir /var/log/vinyl-cache + + systemd_dounit "${FILESDIR}/vinyld.service" + + insinto /etc/vinyl-cache/ + doins vmod/vmod_*.vcc + doins etc/example.vcl + + dodoc README.md + dodoc doc/changes.rst + + fowners root:vinyl /etc/vinyl-cache/ + fowners vinyl:vinyl /var/lib/vinyl-cache/ + fperms 0750 /var/lib/vinyl-cache/ /etc/vinyl-cache/ + + find "${ED}" -name "*.la" -delete || die +}