diff options
author | David Michael <fedora.dm0@gmail.com> | 2021-01-02 13:56:42 -0500 |
---|---|---|
committer | Jason Zaman <perfinion@gentoo.org> | 2021-01-03 00:19:55 -0800 |
commit | 89046b3cd88212448f0eca18efab776d4bb71938 (patch) | |
tree | 68c73558d64e4c5aaf9ccac81c9cd2acaaa14043 /sys-process/audit | |
parent | sys-apps/restorecond: update dependencies (diff) | |
download | gentoo-89046b3cd88212448f0eca18efab776d4bb71938.tar.gz gentoo-89046b3cd88212448f0eca18efab776d4bb71938.tar.bz2 gentoo-89046b3cd88212448f0eca18efab776d4bb71938.zip |
sys-process/audit: bump to 3.0, add python3_9, EAPI 7
Package-Manager: Portage-3.0.12, Repoman-3.0.2
Signed-off-by: David Michael <fedora.dm0@gmail.com>
Signed-off-by: Jason Zaman <perfinion@gentoo.org>
Diffstat (limited to 'sys-process/audit')
-rw-r--r-- | sys-process/audit/Manifest | 1 | ||||
-rw-r--r-- | sys-process/audit/audit-3.0.ebuild | 153 |
2 files changed, 154 insertions, 0 deletions
diff --git a/sys-process/audit/Manifest b/sys-process/audit/Manifest index d5276de092bd..d20d93756cb3 100644 --- a/sys-process/audit/Manifest +++ b/sys-process/audit/Manifest @@ -2,3 +2,4 @@ DIST audit-017e6c6ab95df55f34e339d2139def83e5dada1f.patch 852 BLAKE2B 60d8b813f5 DIST audit-2.8.4.tar.gz 1123889 BLAKE2B b80272b1984942d3c38bde30d22c736a8cc8896a2e42a9bf286446129313ce57a2a117ce26a0a5f1a4a06b4a48ddde463b8837b8c98273051be0c90e5bbebd42 SHA512 5795c565effab995cee447a2dc457ef6a6f15201fb185d7104992ac373a3cb5cfc865dd661c0896a895c96f452eff392d455064d0eead55cd7364d96e0d15c4a DIST audit-2.8.5.tar.gz 1140694 BLAKE2B 64fd0cd93f934e3dd11faf21fcd765894a9c4336d8322179980bb7df1ef5a06d301a665860aeb84fefa0cf278940668023675b99ba7f33cdcfb542d869034358 SHA512 7d416aaa21c1a167f8e911ca82aecbaba804424f3243f505066c43ecc4a62a34feb2c27555e99d3268608404793dccca0f828c63670e3aa816016fb493f8174a DIST audit-2.8.5_p80866dc78b5d.tar.gz 552094 BLAKE2B adb936a314ef2f11828ee00f3513631e06e2df09e37e68be27b1b694e278116d2f486dbde7ed57c77d9ff0bcd09309ea841959c7a66caed6770f367d65dd14f4 SHA512 7ec103bf076cfac7906748162e78835f1f65dd9d68e3a7466346e0473075beb47897adf88ab9ba0eb42db1953372aafb16cc040674b9a9c887730c062b82540a +DIST audit-3.0.tar.gz 1109442 BLAKE2B f9c94f7163522068f5f37163a242cb913acc87b5465f7f8550fad27ac1dc673fd7a98e208bd5e6fb136eac1fdadd659e599e7722426937481bbf8c66d86a1617 SHA512 b82ec73c85a8ebb5108b526673d6fe08cbe0b51376788f3ea6ed5747c4612158462893e719496dffbd723f833f84383a2d1d55fd78a3ed985ecfd19545060c88 diff --git a/sys-process/audit/audit-3.0.ebuild b/sys-process/audit/audit-3.0.ebuild new file mode 100644 index 000000000000..a460429ec25e --- /dev/null +++ b/sys-process/audit/audit-3.0.ebuild @@ -0,0 +1,153 @@ +# Copyright 1999-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +PYTHON_COMPAT=( python3_{6..9} ) + +inherit multilib multilib-minimal toolchain-funcs python-r1 linux-info systemd usr-ldscript + +DESCRIPTION="Userspace utilities for storing and processing auditing records" +HOMEPAGE="https://people.redhat.com/sgrubb/audit/" +SRC_URI="https://people.redhat.com/sgrubb/audit/${P}.tar.gz" + +LICENSE="GPL-2+ LGPL-2.1+" +SLOT="0" +KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86" +IUSE="gssapi ldap python static-libs" + +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" +# Testcases are pretty useless as they are built for RedHat users/groups and kernels. +RESTRICT="test" + +RDEPEND="gssapi? ( virtual/krb5 ) + ldap? ( net-nds/openldap ) + sys-libs/libcap-ng + python? ( ${PYTHON_DEPS} )" +DEPEND="${RDEPEND} + >=sys-kernel/linux-headers-2.6.34" # This is linux specific. +BDEPEND="python? ( dev-lang/swig:0 )" + +CONFIG_CHECK="~AUDIT" + +src_prepare() { + # audisp-remote moved in multilib_src_install_all + sed -i \ + -e "s,/sbin/audisp-remote,${EPREFIX}/usr/sbin/audisp-remote," \ + audisp/plugins/remote/au-remote.conf || die + + # Disable installing sample rules so they can be installed as docs. + echo -e '%:\n\t:' | tee rules/Makefile.{am,in} >/dev/null + + default +} + +multilib_src_configure() { + local -a myeconfargs=( + --sbindir="${EPREFIX}/sbin" + $(use_enable gssapi gssapi-krb5) + $(use_enable ldap zos-remote) + $(use_enable static-libs static) + --enable-systemd + --without-golang + --without-python + --without-python3 + ) + ECONF_SOURCE=${S} econf "${myeconfargs[@]}" + + if multilib_is_native_abi && use python; then + python_configure() { + mkdir -p "${BUILD_DIR}" + pushd "${BUILD_DIR}" &>/dev/null || die + ECONF_SOURCE=${S} econf "${myeconfargs[@]}" --with-python3 + popd &>/dev/null || die + } + python_foreach_impl python_configure + fi +} + +src_configure() { + tc-export_build_env BUILD_{CC,CPP} + local -x CC_FOR_BUILD="${BUILD_CC}" + local -x CPP_FOR_BUILD="${BUILD_CPP}" + multilib-minimal_src_configure +} + +multilib_src_compile() { + if multilib_is_native_abi; then + default + + local native_build="${BUILD_DIR}" + python_compile() { + emake -C "${BUILD_DIR}"/bindings/swig top_builddir="${native_build}" + emake -C "${BUILD_DIR}"/bindings/python/python3 top_builddir="${native_build}" + } + use python && python_foreach_impl python_compile + else + emake -C lib + emake -C auparse + fi +} + +multilib_src_install() { + if multilib_is_native_abi; then + emake DESTDIR="${D}" initdir="$(systemd_get_systemunitdir)" install + + local native_build="${BUILD_DIR}" + python_install() { + emake -C "${BUILD_DIR}"/bindings/swig DESTDIR="${D}" top_builddir="${native_build}" install + emake -C "${BUILD_DIR}"/bindings/python/python3 DESTDIR="${D}" top_builddir="${native_build}" install + python_optimize + } + use python && python_foreach_impl python_install + + # things like shadow use this so we need to be in / + gen_usr_ldscript -a audit auparse + else + emake -C lib DESTDIR="${D}" install + emake -C auparse DESTDIR="${D}" install + fi +} + +multilib_src_install_all() { + dodoc AUTHORS ChangeLog README* THANKS + docinto contrib + dodoc contrib/avc_snap + docinto contrib/plugin + dodoc contrib/plugin/* + docinto rules + dodoc rules/*rules + + newinitd "${FILESDIR}"/auditd-init.d-2.4.3 auditd + newconfd "${FILESDIR}"/auditd-conf.d-2.1.3 auditd + + [ -f "${ED}"/sbin/audisp-remote ] && \ + dodir /usr/sbin && \ + mv "${ED}"/{sbin,usr/sbin}/audisp-remote || die + + # Gentoo rules + insinto /etc/audit + newins "${FILESDIR}"/audit.rules-2.1.3 audit.rules + doins "${FILESDIR}"/audit.rules.stop* + + # audit logs go here + keepdir /var/log/audit + + find "${ED}" -type f -name '*.la' -delete || die + + # Security + lockdown_perms "${ED}" +} + +pkg_postinst() { + lockdown_perms "${EROOT}" +} + +lockdown_perms() { + # Upstream wants these to have restrictive perms. + # Should not || die as not all paths may exist. + local basedir="$1" + chmod 0750 "${basedir}"/sbin/au{ditctl,ditd,report,search,trace} 2>/dev/null + chmod 0750 "${basedir}"/var/log/audit 2>/dev/null + chmod 0640 "${basedir}"/etc/audit/{auditd.conf,audit*.rules*} 2>/dev/null +} |