commit: 09e62af1564b77db9951ac837376abd89ccd4436 Author: Sam James <sam <AT> gentoo <DOT> org> AuthorDate: Fri Mar 21 11:19:49 2025 +0000 Commit: Sam James <sam <AT> gentoo <DOT> org> CommitDate: Fri Mar 21 11:19:49 2025 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=09e62af1
net-vpn/tor: add 0.4.8.15 Signed-off-by: Sam James <sam <AT> gentoo.org> net-vpn/tor/Manifest | 3 + net-vpn/tor/tor-0.4.8.15.ebuild | 199 ++++++++++++++++++++++++++++++++++++++++ 2 files changed, 202 insertions(+) diff --git a/net-vpn/tor/Manifest b/net-vpn/tor/Manifest index 4ef00937ec31..5f1c175230f9 100644 --- a/net-vpn/tor/Manifest +++ b/net-vpn/tor/Manifest @@ -4,3 +4,6 @@ DIST tor-0.4.8.13.tar.gz.sha256sum.asc 716 BLAKE2B 8f708838cc4b642168b689e9ce9bd DIST tor-0.4.8.14.tar.gz 9965322 BLAKE2B 335b76dec29139199ebfbc5f598b66f31bcc1d34c06bc51a4bcc64831a6cfb639fbe1fc91b1686720a4024a10c9b203d7813c734e9db47e087628e85b557fe65 SHA512 96f6c8ce00542e97d75516fcf10cf5649243f695b7c7dd3e52bdda095ea9019743648335a2689fa2e23c046e64728fecdd72b48f2ec2db30fb4216393db7f641 DIST tor-0.4.8.14.tar.gz.sha256sum 86 BLAKE2B 340def77987ebde18f94339f46e566d11dc76b0ac87f995716aafe00de5727c3274e2065ad1832695b986245e95457773b4fb9c8a8cb3817c417b9ffe8ec5bee SHA512 e2e5d952342b22a78fcb4b92518146ca8e0214af85c7b03b6bf67c38f18c85792423dc64c215db922acc6b4422ed4aa10d05da1f3fa6e2a410684b78e67e6349 DIST tor-0.4.8.14.tar.gz.sha256sum.asc 716 BLAKE2B 98d5bfb4e8db7e16ed643b5cb819fe91d09f8c981e8023278a9082936eeeee6afc712de958375ed522d10a2f8e4ac5a896b843965bf59e3edcc57985dcf4e844 SHA512 5c75db16edde17a007bc92f103559a49e2731fa4182f06d120a0f8735bada0094c878aed0d062b8e089cd9e8c6c64d2ffb17da274b014fcfdff8f949edcea59b +DIST tor-0.4.8.15.tar.gz 9927684 BLAKE2B 1e72d53c5a1db9808e025301d5e2f9f6f9b46c0ea8d322871dec9be44c8512e1429ca7ede41e8aae0aa36a0c137d8660241b5f52b1ac1b8a48938ee02b4ad455 SHA512 60fbaccee0355f6cbdaa447066ca0ccc75917ec63a78ea67698471b3da4a0f08d12a6b28f63224fca582fdae27238fff9b062a120b47a3d7ff29e172ca769085 +DIST tor-0.4.8.15.tar.gz.sha256sum 86 BLAKE2B b618fcc3c0f0e79d631de30f558e2e009683ff8d46d0564c7fe2cb777ce150a799a6b80f498852fa96acf8c8745692646f7f333627496eb42e538412da232796 SHA512 70cce3c5f51a2b45fc0e681bb55bfb86208d62a12af7a0cd2dd1eb089a6e24f125bf6ed59f6a241fc8400608c90e13973db6376c8adaff8cbbe2ea870a43e13f +DIST tor-0.4.8.15.tar.gz.sha256sum.asc 716 BLAKE2B 838a69447d49c10e8c37ed64d0c1c999d9127287d8a8293d0d9e295e4f646dc053b5bef32d58a2c7e623384d37456bcd017eec2a372018797557762b33ba6fb7 SHA512 87929ca1a80a81df858f48ecec8d3e4719d277fdc257dddb76100a271826d4c9292f10526c3567d24fdfb7cf92e3520728e3776dec994de40a5e97c0674e050d diff --git a/net-vpn/tor/tor-0.4.8.15.ebuild b/net-vpn/tor/tor-0.4.8.15.ebuild new file mode 100644 index 000000000000..cd30d48f8f7e --- /dev/null +++ b/net-vpn/tor/tor-0.4.8.15.ebuild @@ -0,0 +1,199 @@ +# Copyright 1999-2025 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 + +PYTHON_COMPAT=( python3_{10..13} ) +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 ~ppc-macos" + fi + + BDEPEND="verify-sig? ( >=sec-keys/openpgp-keys-tor-20230727 )" +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 lzma +man scrypt seccomp selinux +server systemd tor-hardening test zstd" +RESTRICT="!test? ( test )" + +RDEPEND=" + >=dev-libs/libevent-2.1.12-r1:=[ssl] + dev-libs/openssl:=[-bindist(-)] + sys-libs/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}" + + 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 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 tor-hardening gcc-hardening) + $(use_enable tor-hardening linker-hardening) + $(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 +}