diff options
author | Jason Zaman <perfinion@gentoo.org> | 2022-04-08 18:49:33 -0700 |
---|---|---|
committer | Jason Zaman <perfinion@gentoo.org> | 2022-04-08 19:54:38 -0700 |
commit | 023b1ce085fdc6ef2573de12c30ac248578ac8c3 (patch) | |
tree | ee40c9b34c2a8b970438bd44c0ba1f09baeaac50 /sys-apps/selinux-python | |
parent | sys-apps/policycoreutils: Drop old (diff) | |
download | gentoo-023b1ce085fdc6ef2573de12c30ac248578ac8c3.tar.gz gentoo-023b1ce085fdc6ef2573de12c30ac248578ac8c3.tar.bz2 gentoo-023b1ce085fdc6ef2573de12c30ac248578ac8c3.zip |
sys-apps/selinux-python: Drop old
Package-Manager: Portage-3.0.30, Repoman-3.0.3
Signed-off-by: Jason Zaman <perfinion@gentoo.org>
Diffstat (limited to 'sys-apps/selinux-python')
-rw-r--r-- | sys-apps/selinux-python/Manifest | 2 | ||||
-rw-r--r-- | sys-apps/selinux-python/files/selinux-python-3.2-optional-networkx.patch | 271 | ||||
-rw-r--r-- | sys-apps/selinux-python/selinux-python-3.1-r2.ebuild | 93 | ||||
-rw-r--r-- | sys-apps/selinux-python/selinux-python-3.2-r1.ebuild | 115 |
4 files changed, 0 insertions, 481 deletions
diff --git a/sys-apps/selinux-python/Manifest b/sys-apps/selinux-python/Manifest index ab68bfe15782..9a42e89573e3 100644 --- a/sys-apps/selinux-python/Manifest +++ b/sys-apps/selinux-python/Manifest @@ -1,3 +1 @@ -DIST selinux-python-3.1.tar.gz 2100549 BLAKE2B c5d207bad60c379259e3bfc8f029f76d4572818cdd41a263498ed4434a70eaf7ff51af7772cfb27de0e9e4af03bcf9906ab0f6a59e88de10e81cbe0e8c5928b8 SHA512 5dd98f77ae8ea8bac6a89ec7def76e12496b9a9f8c9612c4cc1dac7a8e8c60380a00c857426bfefbcb4273706addd2594e9b467f69408ef284f082a09d45bd49 -DIST selinux-python-3.2.tar.gz 2101106 BLAKE2B b4b185a7468de68eb2146011a9bc82ffb7db9878517833c1e8dfa23279aec3dfbf46a27b70b17c1e317a2c939bcf6d1748638fd4a078325b853de34ae3c51a6f SHA512 2c3483e27c4ad6942e23e39897e0eccf61b95d685ace62315678cb49739d300d4ca4a7a51fa7a9aacaa98737446a70923855d15827eb6275ffd6999be0b2a755 DIST selinux-python-3.3.tar.gz 2101584 BLAKE2B 603aafbf316b744098bd34c79bf384d55624c086fd75147675a4a0715df3d61710a99d490f30b78d59a2c2a85fcc4db91772c24644a963b31e1a0d305c4bc83e SHA512 a69948a8b139a309f18632440e4204f49832a94b8b6be50e162d3dacb16698effeb1a77c44462e8cc7dc3dd600b887b9ab2fef618c31d3e0fe0de216a6aaebe3 diff --git a/sys-apps/selinux-python/files/selinux-python-3.2-optional-networkx.patch b/sys-apps/selinux-python/files/selinux-python-3.2-optional-networkx.patch deleted file mode 100644 index a9525ddda939..000000000000 --- a/sys-apps/selinux-python/files/selinux-python-3.2-optional-networkx.patch +++ /dev/null @@ -1,271 +0,0 @@ -Avoid importing networkx which ends up having a Fortran (and other large) -dependencies. - -https://bugs.gentoo.org/809038 -https://github.com/SELinuxProject/selinux/commit/ba23ba068364ab11ff51f52bd1e20e3c63798a62 - -From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org> -Date: Wed, 25 Aug 2021 11:19:40 +0200 -Subject: [PATCH] python: Import specific modules from setools for less deps -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Import the setools classes needed for Python bindings from specific -setools modules in order to reduce the dependency footprint -of the Python bindings. Importing the top-level module causes all -setools modules to be loaded which includes the modules that require -networkx. - -SELinux packages belong to the group of core system packages on Gentoo -Linux. It is desirable to keep the system set as small as possible, -and the dependency between setools and networkx seems to be the easiest -link to break without major loss of functionality. - -Signed-off-by: Michał Górny <mgorny@gentoo.org> ---- a/semanage/seobject.py -+++ b/semanage/seobject.py -@@ -31,7 +31,8 @@ - from semanage import * - PROGNAME = "policycoreutils" - import sepolicy --import setools -+from setools.policyrep import SELinuxPolicy -+from setools.typequery import TypeQuery - import ipaddress - - try: -@@ -1339,7 +1340,7 @@ class ibpkeyRecords(semanageRecords): - def __init__(self, args = None): - semanageRecords.__init__(self, args) - try: -- q = setools.TypeQuery(setools.SELinuxPolicy(sepolicy.get_store_policy(self.store)), attrs=["ibpkey_type"]) -+ q = TypeQuery(SELinuxPolicy(sepolicy.get_store_policy(self.store)), attrs=["ibpkey_type"]) - self.valid_types = sorted(str(t) for t in q.results()) - except: - pass -@@ -1599,7 +1600,7 @@ class ibendportRecords(semanageRecords): - def __init__(self, args = None): - semanageRecords.__init__(self, args) - try: -- q = setools.TypeQuery(setools.SELinuxPolicy(sepolicy.get_store_policy(self.store)), attrs=["ibendport_type"]) -+ q = TypeQuery(SELinuxPolicy(sepolicy.get_store_policy(self.store)), attrs=["ibendport_type"]) - self.valid_types = set(str(t) for t in q.results()) - except: - pass ---- a/sepolicy/sepolicy/__init__.py -+++ b/sepolicy/sepolicy/__init__.py -@@ -4,7 +4,6 @@ - - import errno - import selinux --import setools - import glob - import sepolgen.defaults as defaults - import sepolgen.interfaces as interfaces -@@ -13,6 +12,17 @@ - import re - import gzip - -+from setools.boolquery import BoolQuery -+from setools.portconquery import PortconQuery -+from setools.policyrep import SELinuxPolicy -+from setools.objclassquery import ObjClassQuery -+from setools.rbacrulequery import RBACRuleQuery -+from setools.rolequery import RoleQuery -+from setools.terulequery import TERuleQuery -+from setools.typeattrquery import TypeAttributeQuery -+from setools.typequery import TypeQuery -+from setools.userquery import UserQuery -+ - PROGNAME = "policycoreutils" - try: - import gettext -@@ -168,7 +178,7 @@ def policy(policy_file): - global _pol - - try: -- _pol = setools.SELinuxPolicy(policy_file) -+ _pol = SELinuxPolicy(policy_file) - except: - raise ValueError(_("Failed to read %s policy file") % policy_file) - -@@ -188,7 +198,7 @@ def info(setype, name=None): - init_policy() - - if setype == TYPE: -- q = setools.TypeQuery(_pol) -+ q = TypeQuery(_pol) - q.name = name - results = list(q.results()) - -@@ -206,7 +216,7 @@ def info(setype, name=None): - } for x in results) - - elif setype == ROLE: -- q = setools.RoleQuery(_pol) -+ q = RoleQuery(_pol) - if name: - q.name = name - -@@ -217,7 +227,7 @@ def info(setype, name=None): - } for x in q.results()) - - elif setype == ATTRIBUTE: -- q = setools.TypeAttributeQuery(_pol) -+ q = TypeAttributeQuery(_pol) - if name: - q.name = name - -@@ -227,7 +237,7 @@ def info(setype, name=None): - } for x in q.results()) - - elif setype == PORT: -- q = setools.PortconQuery(_pol) -+ q = PortconQuery(_pol) - if name: - ports = [int(i) for i in name.split("-")] - if len(ports) == 2: -@@ -251,7 +261,7 @@ def info(setype, name=None): - } for x in q.results()) - - elif setype == USER: -- q = setools.UserQuery(_pol) -+ q = UserQuery(_pol) - if name: - q.name = name - -@@ -268,7 +278,7 @@ def info(setype, name=None): - } for x in q.results()) - - elif setype == BOOLEAN: -- q = setools.BoolQuery(_pol) -+ q = BoolQuery(_pol) - if name: - q.name = name - -@@ -278,7 +288,7 @@ def info(setype, name=None): - } for x in q.results()) - - elif setype == TCLASS: -- q = setools.ObjClassQuery(_pol) -+ q = ObjClassQuery(_pol) - if name: - q.name = name - -@@ -372,11 +382,11 @@ def search(types, seinfo=None): - tertypes.append(DONTAUDIT) - - if len(tertypes) > 0: -- q = setools.TERuleQuery(_pol, -- ruletype=tertypes, -- source=source, -- target=target, -- tclass=tclass) -+ q = TERuleQuery(_pol, -+ ruletype=tertypes, -+ source=source, -+ target=target, -+ tclass=tclass) - - if PERMS in seinfo: - q.perms = seinfo[PERMS] -@@ -385,11 +395,11 @@ def search(types, seinfo=None): - - if TRANSITION in types: - rtypes = ['type_transition', 'type_change', 'type_member'] -- q = setools.TERuleQuery(_pol, -- ruletype=rtypes, -- source=source, -- target=target, -- tclass=tclass) -+ q = TERuleQuery(_pol, -+ ruletype=rtypes, -+ source=source, -+ target=target, -+ tclass=tclass) - - if PERMS in seinfo: - q.perms = seinfo[PERMS] -@@ -398,11 +408,11 @@ def search(types, seinfo=None): - - if ROLE_ALLOW in types: - ratypes = ['allow'] -- q = setools.RBACRuleQuery(_pol, -- ruletype=ratypes, -- source=source, -- target=target, -- tclass=tclass) -+ q = RBACRuleQuery(_pol, -+ ruletype=ratypes, -+ source=source, -+ target=target, -+ tclass=tclass) - - for r in q.results(): - toret.append({'source': str(r.source), -@@ -720,11 +730,11 @@ def get_all_entrypoints(): - - - def get_entrypoint_types(setype): -- q = setools.TERuleQuery(_pol, -- ruletype=[ALLOW], -- source=setype, -- tclass=["file"], -- perms=["entrypoint"]) -+ q = TERuleQuery(_pol, -+ ruletype=[ALLOW], -+ source=setype, -+ tclass=["file"], -+ perms=["entrypoint"]) - return [str(x.target) for x in q.results() if x.source == setype] - - -@@ -739,10 +749,10 @@ def get_init_transtype(path): - - - def get_init_entrypoint(transtype): -- q = setools.TERuleQuery(_pol, -- ruletype=["type_transition"], -- source="init_t", -- tclass=["process"]) -+ q = TERuleQuery(_pol, -+ ruletype=["type_transition"], -+ source="init_t", -+ tclass=["process"]) - entrypoints = [] - for i in q.results(): - try: -@@ -754,10 +764,10 @@ def get_init_entrypoint(transtype): - return entrypoints - - def get_init_entrypoints_str(): -- q = setools.TERuleQuery(_pol, -- ruletype=["type_transition"], -- source="init_t", -- tclass=["process"]) -+ q = TERuleQuery(_pol, -+ ruletype=["type_transition"], -+ source="init_t", -+ tclass=["process"]) - entrypoints = {} - for i in q.results(): - try: -@@ -837,7 +847,7 @@ def get_all_role_allows(): - return role_allows - role_allows = {} - -- q = setools.RBACRuleQuery(_pol, ruletype=[ALLOW]) -+ q = RBACRuleQuery(_pol, ruletype=[ALLOW]) - for r in q.results(): - src = str(r.source) - tgt = str(r.target) -@@ -923,7 +933,7 @@ def get_all_roles(): - if not _pol: - init_policy() - -- q = setools.RoleQuery(_pol) -+ q = RoleQuery(_pol) - roles = [str(x) for x in q.results() if str(x) != "object_r"] - return roles - diff --git a/sys-apps/selinux-python/selinux-python-3.1-r2.ebuild b/sys-apps/selinux-python/selinux-python-3.1-r2.ebuild deleted file mode 100644 index cd89ab2c85dc..000000000000 --- a/sys-apps/selinux-python/selinux-python-3.1-r2.ebuild +++ /dev/null @@ -1,93 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 -PYTHON_COMPAT=( python3_{7..9} ) -PYTHON_REQ_USE="xml" - -inherit python-r1 toolchain-funcs - -MY_P="${P//_/-}" - -MY_RELEASEDATE="20200710" -SEPOL_VER="${PV}" -SELNX_VER="${PV}" -SEMNG_VER="${PV}" - -REQUIRED_USE="${PYTHON_REQUIRED_USE}" - -DESCRIPTION="SELinux core utilities" -HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki" - -if [[ ${PV} == 9999 ]] ; then - inherit git-r3 - EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git" - S="${WORKDIR}/${MY_P}/${PN#selinux-}" -else - SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${MY_RELEASEDATE}/${MY_P}.tar.gz" - KEYWORDS="amd64 ~arm ~arm64 ~mips x86" - S="${WORKDIR}/${MY_P}" -fi - -LICENSE="GPL-2" -SLOT="0" - -DEPEND=">=sys-libs/libselinux-${SELNX_VER}:=[python] - >=sys-libs/libsemanage-${SEMNG_VER}:=[python(+)] - >=sys-libs/libsepol-${SEPOL_VER}:= - >=app-admin/setools-4.2.0[${PYTHON_USEDEP}] - >=sys-process/audit-1.5.1[python,${PYTHON_USEDEP}] - ${PYTHON_DEPS}" - -RDEPEND="${DEPEND}" - -src_prepare() { - default - sed -i 's/-Werror//g' "${S}"/*/Makefile || die "Failed to remove Werror" - - python_copy_sources -} - -src_compile() { - building() { - emake -C "${BUILD_DIR}" \ - CC="$(tc-getCC)" \ - LIBDIR="\$(PREFIX)/$(get_libdir)" - } - python_foreach_impl building -} - -src_install() { - installation() { - emake -C "${BUILD_DIR}" \ - DESTDIR="${D}" \ - LIBDIR="\$(PREFIX)/$(get_libdir)" \ - install - python_optimize - } - python_foreach_impl installation - - # Set version-specific scripts - for pyscript in audit2allow sepolgen-ifgen sepolicy chcat; do - python_replicate_script "${ED}/usr/bin/${pyscript}" - done - for pyscript in semanage; do - python_replicate_script "${ED}/usr/sbin/${pyscript}" - done - - # Create sepolgen.conf with different devel location definition - if [[ -f /etc/selinux/config ]]; - then - local selinuxtype=$(awk -F'=' '/^SELINUXTYPE/ {print $2}' /etc/selinux/config); - mkdir -p "${D}"/etc/selinux || die "Failed to create selinux directory"; - echo "SELINUX_DEVEL_PATH=/usr/share/selinux/${selinuxtype}/include:/usr/share/selinux/${selinuxtype}" > "${D}"/etc/selinux/sepolgen.conf; - else - local selinuxtype="${POLICY_TYPES%% *}"; - if [[ -n "${selinuxtype}" ]]; - then - echo "SELINUX_DEVEL_PATH=/usr/share/selinux/${selinuxtype}/include:/usr/share/selinux/${selinuxtype}" > "${D}"/etc/selinux/sepolgen.conf; - else - echo "SELINUX_DEVEL_PATH=/usr/share/selinux/strict/include:/usr/share/selinux/strict" > "${D}"/etc/selinux/sepolgen.conf; - fi - fi -} diff --git a/sys-apps/selinux-python/selinux-python-3.2-r1.ebuild b/sys-apps/selinux-python/selinux-python-3.2-r1.ebuild deleted file mode 100644 index e9ba19ba5815..000000000000 --- a/sys-apps/selinux-python/selinux-python-3.2-r1.ebuild +++ /dev/null @@ -1,115 +0,0 @@ -# Copyright 1999-2021 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -EAPI=7 -PYTHON_COMPAT=( python3_{7..9} ) -PYTHON_REQ_USE="xml" - -inherit python-r1 toolchain-funcs - -IUSE="test" -RESTRICT="!test? ( test )" -REQUIRED_USE="${PYTHON_REQUIRED_USE}" - -DESCRIPTION="SELinux core utilities" -HOMEPAGE="https://github.com/SELinuxProject/selinux/wiki" - -if [[ ${PV} == 9999 ]] ; then - inherit git-r3 - EGIT_REPO_URI="https://github.com/SELinuxProject/selinux.git" - S="${WORKDIR}/${P}/${PN#selinux-}" -else - SRC_URI="https://github.com/SELinuxProject/selinux/releases/download/${PV}/${P}.tar.gz" - KEYWORDS="amd64 arm arm64 ~mips x86" -fi - -LICENSE="GPL-2" -SLOT="0" - -RDEPEND=">=sys-libs/libselinux-${PV}:=[python] - >=sys-libs/libsemanage-${PV}:=[python(+)] - >=sys-libs/libsepol-${PV}:= - >=app-admin/setools-4.2.0[${PYTHON_USEDEP}] - >=sys-process/audit-1.5.1[python,${PYTHON_USEDEP}] - ${PYTHON_DEPS}" -DEPEND="${RDEPEND}" -BDEPEND=" - test? ( - ${RDEPEND} - >=sys-apps/secilc-${PV} - )" - -PATCHES=( - "${FILESDIR}"/${PN}-3.2-optional-networkx.patch -) - -src_prepare() { - default - sed -i 's/-Werror//g' "${S}"/*/Makefile || die "Failed to remove Werror" - - python_copy_sources -} - -src_compile() { - building() { - emake -C "${BUILD_DIR}" \ - CC="$(tc-getCC)" \ - LIBDIR="\$(PREFIX)/$(get_libdir)" - } - python_foreach_impl building -} - -src_test() { - testing() { - # The different subprojects have some interproject dependencies: - # - audit2allow depens on sepolgen - # - chcat depends on semanage - # and maybe others. - # Add all the modules of the individual subprojects to the - # PYTHONPATH, so they get actually found and used. In - # particular, already installed versions on the system are not - # used. - for dir in audit2allow chcat semanage sepolgen/src sepolicy ; do - PYTHONPATH="${BUILD_DIR}/${dir}:${PYTHONPATH}" - done - PYTHONPATH=${PYTHONPATH} \ - emake -C "${BUILD_DIR}" \ - test - } - python_foreach_impl testing -} - -src_install() { - installation() { - emake -C "${BUILD_DIR}" \ - DESTDIR="${D}" \ - LIBDIR="\$(PREFIX)/$(get_libdir)" \ - install - python_optimize - } - python_foreach_impl installation - - # Set version-specific scripts - for pyscript in audit2allow sepolgen-ifgen sepolicy chcat; do - python_replicate_script "${ED}/usr/bin/${pyscript}" - done - for pyscript in semanage; do - python_replicate_script "${ED}/usr/sbin/${pyscript}" - done - - # Create sepolgen.conf with different devel location definition - if [[ -f /etc/selinux/config ]]; - then - local selinuxtype=$(awk -F'=' '/^SELINUXTYPE/ {print $2}' /etc/selinux/config); - mkdir -p "${D}"/etc/selinux || die "Failed to create selinux directory"; - echo "SELINUX_DEVEL_PATH=/usr/share/selinux/${selinuxtype}/include:/usr/share/selinux/${selinuxtype}" > "${D}"/etc/selinux/sepolgen.conf; - else - local selinuxtype="${POLICY_TYPES%% *}"; - if [[ -n "${selinuxtype}" ]]; - then - echo "SELINUX_DEVEL_PATH=/usr/share/selinux/${selinuxtype}/include:/usr/share/selinux/${selinuxtype}" > "${D}"/etc/selinux/sepolgen.conf; - else - echo "SELINUX_DEVEL_PATH=/usr/share/selinux/strict/include:/usr/share/selinux/strict" > "${D}"/etc/selinux/sepolgen.conf; - fi - fi -} |