commit: 2c433c8484fb812526546a3e4449a9728318ecd4
Author: Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Feb 12 03:39:00 2026 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Feb 12 16:49:43 2026 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2c433c84
net-vpn/tor: add 0.4.9.4_rc (unkeyworded)
Signed-off-by: Sam James <sam <AT> gentoo.org>
net-vpn/tor/Manifest | 3 +
net-vpn/tor/tor-0.4.9.4_rc.ebuild | 202 ++++++++++++++++++++++++++++++++++++++
2 files changed, 205 insertions(+)
diff --git a/net-vpn/tor/Manifest b/net-vpn/tor/Manifest
index 7185f579dd60..bd79315da327 100644
--- a/net-vpn/tor/Manifest
+++ b/net-vpn/tor/Manifest
@@ -4,3 +4,6 @@ DIST tor-0.4.8.21.tar.gz.sha256sum.asc 716 BLAKE2B
e4ea78b6ed371728fd8d198bb1704
DIST tor-0.4.8.22.tar.gz 10625231 BLAKE2B
ab4d04fa8ed47a6270929599e995c9ae1beaacd48339201fe2188cce7f013d3e6f4a34ec883dcd24da4ce5b0226894a5347e1159cd8fcbc3990dae21f9c4f64b
SHA512
c7c6bfc7a2c10d045903c3e60fcff076983949fdbdf884d3f8e3eb6dc01c3e8a75abdc6e8e8efe7ac409d77932e034551ff0f6309851edd75c1134f1828aa8b3
DIST tor-0.4.8.22.tar.gz.sha256sum 86 BLAKE2B
3b0542d26386c811d8ec9c4e23d04d3a88c835758c58213a82a92e6a97986c80f5d13d59d3ebcbf71f9c9fc238e9772b7a1b6359496d75ace85928617d02c99d
SHA512
a5098f099b4826f63aecc343dd7b0afa17b502a582b27a81d449ed87bba5d0ee93ace47591d1878997d022af8d80f2ce163cd52dde63f82040c52ec4fa4bbb5d
DIST tor-0.4.8.22.tar.gz.sha256sum.asc 716 BLAKE2B
8e6d8f305bdeb7d8e67d35447440f3dde80c64c16f8de6ddf2eda42bc2b325859137488a5ef10330da34b6b1a7eb2bb672aa032abcb308b607cb25bacf14d5c9
SHA512
5ce3e2341a3b77d071158f8c0d6737d9d14b8fa4500aa0672d0d53f10e20402bbebee33b7abd3fd1a76cc00680a7f77e004e269f35a7f4a482cac9443d56a841
+DIST tor-0.4.9.4-rc.tar.gz 10691767 BLAKE2B
e75e2588c92fbddb6c59c1f510a3a22fca67026ee01b54111f3906b6ef39d964a2ceab2491c2f7ba499833b0cf22af420568183feb93af100a7f71d996653609
SHA512
1f2704a5aff7381de89cb150a52f1e97d7f7bf1f3d7788a31ee562947779cfb82dccba2b9f4ec5b576ac551417a0831416449be6fd023aaa270d6617a791f972
+DIST tor-0.4.9.4-rc.tar.gz.sha256sum 88 BLAKE2B
78f0a05101a65ec6237fafe2530266ee5f22c091acccdfe9e6a2ec9d3e35adcf75351f30aa1403ca2c2f2435a0a660e17db14073eb927f5a2bd6909b60598cc5
SHA512
494d01268c188b31f3a02c17d496d3c7d972e0d88dae94ffb4a2f0f6950b47b472a2802efc0ef798236ddb58827965f7c80a9c5433c237b4bf2fc518d5b4aeb7
+DIST tor-0.4.9.4-rc.tar.gz.sha256sum.asc 716 BLAKE2B
fcb1bc0cebe7474c848755a610677a570d0c1a39345c536a688ea64cb63044992bb9ca9112a20aa2e2a0c28d3fd71cc43d28526e7af109af917cfc552088d9c5
SHA512
8330e5246e715efe9dd12916eb43584ffd826843645a6764ca9ac75f51e7a767b73f8641a14d00fe9d6e3ea810f576840df52b65673ddba8da1543777220ac95
diff --git a/net-vpn/tor/tor-0.4.9.4_rc.ebuild
b/net-vpn/tor/tor-0.4.9.4_rc.ebuild
new file mode 100644
index 000000000000..d76d79a26c9b
--- /dev/null
+++ b/net-vpn/tor/tor-0.4.9.4_rc.ebuild
@@ -0,0 +1,202 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{11..14} )
+VERIFY_SIG_OPENPGP_KEY_PATH=/usr/share/openpgp-keys/torproject.org.asc
+inherit edo python-any-r1 readme.gentoo-r1 systemd verify-sig
+
+MY_PV="$(ver_rs 4 -)"
+MY_PF="${PN}-${MY_PV}"
+DESCRIPTION="Anonymizing overlay network for TCP"
+HOMEPAGE="https://www.torproject.org/
https://gitlab.torproject.org/tpo/core/tor/"
+
+if [[ ${PV} == 9999 ]] ; then
+ EGIT_REPO_URI="https://gitlab.torproject.org/tpo/core/tor"
+ inherit autotools git-r3
+else
+ SRC_URI="
+ https://www.torproject.org/dist/${MY_PF}.tar.gz
+
https://archive.torproject.org/tor-package-archive/${MY_PF}.tar.gz
+ verify-sig? (
+ https://dist.torproject.org/${MY_PF}.tar.gz.sha256sum
+
https://dist.torproject.org/${MY_PF}.tar.gz.sha256sum.asc
+ )
+ "
+
+ S="${WORKDIR}/${MY_PF}"
+
+ if [[ ${PV} != *_alpha* && ${PV} != *_beta* && ${PV} != *_rc* ]]; then
+ KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv
~sparc ~x86"
+ fi
+
+ BDEPEND="verify-sig? ( >=sec-keys/openpgp-keys-tor-20250713 )"
+fi
+
+# BSD in general, but for PoW, needs --enable-gpl (GPL-3 per --version)
+# We also already had GPL-2 listed here for the init script, but obviously
+# that's different from the actual binary.
+LICENSE="BSD GPL-2 GPL-3"
+SLOT="0"
+IUSE="caps doc hardened lzma +man scrypt seccomp selinux +server systemd test
zstd"
+RESTRICT="!test? ( test )"
+
+RDEPEND="
+ >=dev-libs/libevent-2.1.12-r1:=[ssl]
+ >=dev-libs/openssl-1.1.1:=[-bindist(-)]
+ virtual/zlib:=
+ caps? ( sys-libs/libcap )
+ man? ( app-text/asciidoc )
+ lzma? ( app-arch/xz-utils )
+ scrypt? ( app-crypt/libscrypt )
+ seccomp? ( >=sys-libs/libseccomp-2.4.1 )
+ systemd? ( sys-apps/systemd:= )
+ zstd? ( app-arch/zstd:= )
+"
+DEPEND="
+ ${RDEPEND}
+ test? (
+ ${DEPEND}
+ ${PYTHON_DEPS}
+ )
+"
+RDEPEND+="
+ acct-user/tor
+ acct-group/tor
+ selinux? ( sec-policy/selinux-tor )
+"
+BDEPEND+="
+ acct-user/tor
+ acct-group/tor
+"
+
+DOCS=()
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0.2.7.4-torrc.sample.patch
+)
+
+QA_CONFIG_IMPL_DECL_SKIP=(
+ # test correctly fails because -lnacl fails if not available
+ # https://bugs.gentoo.org/900092
+ crypto_scalarmult_curve25519
+)
+
+pkg_setup() {
+ use test && python-any-r1_pkg_setup
+}
+
+src_unpack() {
+ if [[ ${PV} == 9999 ]] ; then
+ git-r3_src_unpack
+ else
+ if use verify-sig; then
+ cd "${DISTDIR}" || die
+ verify-sig_verify_detached
${MY_PF}.tar.gz.sha256sum{,.asc}
+ verify-sig_verify_unsigned_checksums \
+ ${MY_PF}.tar.gz.sha256sum sha256 ${MY_PF}.tar.gz
+ cd "${WORKDIR}" || die
+ fi
+
+ default
+ fi
+}
+
+src_prepare() {
+ default
+
+ # Running shellcheck automagically isn't useful for ebuild testing.
+ echo "exit 0" > scripts/maint/checkShellScripts.sh || die
+
+ if [[ ${PV} == 9999 ]] ; then
+ eautoreconf
+ fi
+}
+
+src_configure() {
+ use doc && DOCS+=( README.md ChangeLog ReleaseNotes doc/HACKING )
+
+ export ac_cv_lib_cap_cap_init=$(usex caps)
+ export tor_cv_PYTHON="${EPYTHON}"
+ # Already set by default in profiles for our toolchain
+ export tor_cv_cflags__fcf_protection_full=no
+ export tor_cv_cflags__mbranch_protection_standard=no
+
+ local myeconfargs=(
+ --localstatedir="${EPREFIX}/var"
+ --disable-all-bugs-are-fatal
+ --enable-system-torrc
+ --disable-android
+ --disable-coverage
+ --disable-html-manual
+ --disable-libfuzzer
+ --enable-missing-doc-warnings
+ --disable-module-dirauth
+ --enable-pic
+ --disable-restart-debugging
+
+ # Unless someone asks & has a compelling reason, just always
+ # build in GPL mode for pow, given we don't want yet another USE
+ # flag combination to have to test just for the sake of it.
+ # (PoW requires GPL.)
+ --enable-gpl
+ --enable-module-pow
+
+ $(use_enable hardened gcc-hardening)
+ $(use_enable hardened linker-hardening)
+ $(use_enable man asciidoc)
+ $(use_enable man manpage)
+ $(use_enable lzma)
+ $(use_enable scrypt libscrypt)
+ $(use_enable seccomp)
+ $(use_enable server module-relay)
+ $(use_enable systemd)
+ $(use_enable test unittests)
+ $(use_enable zstd)
+ )
+
+ econf "${myeconfargs[@]}"
+}
+
+src_test() {
+ local skip_tests=(
+ # Fails in sandbox
+ :sandbox/open_filename
+ :sandbox/openat_filename
+ )
+
+ if use arm ; then
+ skip_tests+=(
+ # bug #920905
+ #
https://gitlab.torproject.org/tpo/core/tor/-/issues/40912
+ :sandbox/opendir_dirname
+ :sandbox/openat_filename
+ :sandbox/chmod_filename
+ :sandbox/chown_filename
+ :sandbox/rename_filename
+ )
+ fi
+
+ # The makefile runs these by parallel by chunking them with a script
+ # but that means we lose verbosity and can't skip individual tests
easily
+ # either.
+ edo ./src/test/test --verbose "${skip_tests[@]}"
+}
+
+src_install() {
+ default
+ readme.gentoo_create_doc
+
+ newconfd "${FILESDIR}"/tor.confd tor
+ newinitd "${FILESDIR}"/tor.initd-r9 tor
+ systemd_dounit "${FILESDIR}"/tor.service
+
+ keepdir /var/lib/tor
+
+ fperms 750 /var/lib/tor
+ fowners tor:tor /var/lib/tor
+
+ insinto /etc/tor/
+ newins "${FILESDIR}"/torrc-r2 torrc
+}