# Copyright 1999-2025 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 inherit cmake eapi9-ver readme.gentoo-r1 systemd DESCRIPTION="Postfix Sender Rewriting Scheme daemon" HOMEPAGE="https://github.com/roehling/postsrsd" SRC_URI="https://github.com/roehling/postsrsd/archive/${PV}.tar.gz -> ${P}.tar.gz" # See REUSE.toml; GPL-3 for the main software, BSD for src/sha*. LICENSE="GPL-3 BSD" SLOT="0" KEYWORDS="~amd64 ~x86" IUSE="test" RESTRICT="!test? ( test )" RDEPEND="dev-libs/confuse:=" DEPEND=" ${RDEPEND} test? ( dev-libs/check ) " CHROOT_DIR="${EPREFIX}/var/lib/postsrsd" PATCHES=( "${FILESDIR}"/${PN}-2.0.11-sysconfdir.patch ) DOCS=( README.rst CHANGELOG.rst ) src_configure() { local mycmakeargs=( -DBUILD_TESTING=$(usex test) -DPOSTSRSD_CHROOTDIR="${CHROOT_DIR}" -DSYSTEMD_UNITDIR="$(systemd_get_systemunitdir)" -DSYSTEMD_SYSUSERSDIR="${EPREFIX}/usr/lib/sysusers.d" -DINSTALL_SYSTEMD_SERVICE=ON # https://github.com/roehling/postsrsd/blob/main/doc/packaging.rst#third-party-dependencies -DFETCHCONTENT_TRY_FIND_PACKAGE_MODE=ALWAYS # We don't want to run tests with sanitizers. They're # unreliable under sandbox and don't run on all platforms -DTESTS_WITH_ASAN=OFF -DWITH_MILTER=OFF -DWITH_SQLITE=OFF -DWITH_REDIS=OFF ) cmake_src_configure } src_install() { cmake_src_install newinitd "${FILESDIR}"/postsrsd-2.0.11.initd postsrsd newconfd "${FILESDIR}"/postsrsd-2.0.11.confd postsrsd keepdir "${CHROOT_DIR}" local DOC_CONTENTS="When updating from version 1.x: \n\nNote that most configuration options can no longer be set from the command line, therefore we cannot define them in OpenRC's conf.d file either. You will have to set them in ${EPREFIX}/etc/postsrsd.conf instead. \n\nIn the config file, you must *at least* set the \"domains\" variable, i.e. the local domain name. In most cases, using the output of \"postconf -h mydomain\" should be okay. \n\nAlso note that PostSRSd 2.x by default uses Unix domain sockets instead of TCP sockets, so you must update \"sender_canonical_maps\" and \"recipient_canonical_maps\" in ${EPREFIX}/etc/postfix/main.cf. (Alternatively, you can update \"socketmap\" in postsrsd.conf.) \n\nSee README.rst and the comments in postsrsd.conf for more detailed information." readme.gentoo_create_doc } pkg_postinst() { ver_replacing -lt 2.0.11-r1 && local FORCE_PRINT_ELOG=1 readme.gentoo_print_elog }