public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Ben Kohler" <bkohler@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] repo/gentoo:master commit in: sys-libs/libsemanage/
Date: Thu,  2 Jul 2020 12:26:43 +0000 (UTC)	[thread overview]
Message-ID: <1593692794.a79a655cab347b276fcd15c20bc83aaa0a4fe78b.bkohler@gentoo> (raw)

commit:     a79a655cab347b276fcd15c20bc83aaa0a4fe78b
Author:     Ben Kohler <bkohler <AT> gentoo <DOT> org>
AuthorDate: Thu Jul  2 12:26:21 2020 +0000
Commit:     Ben Kohler <bkohler <AT> gentoo <DOT> org>
CommitDate: Thu Jul  2 12:26:34 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a79a655c

sys-libs/libsemanage: revbump for python fixes

A python_fix_shebang was needed.  Also it's clear that this ebuild has
never really been tested with USE="-python", so python is no longer
optional.

With these fixes, the script run in pkg_postinst can be run with || die
again.

Bug: https://bugs.gentoo.org/642634
Package-Manager: Portage-2.3.103, Repoman-2.3.23
Signed-off-by: Ben Kohler <bkohler <AT> gentoo.org>

 sys-libs/libsemanage/libsemanage-3.0-r1.ebuild | 138 +++++++++++++++++++++++++
 1 file changed, 138 insertions(+)

diff --git a/sys-libs/libsemanage/libsemanage-3.0-r1.ebuild b/sys-libs/libsemanage/libsemanage-3.0-r1.ebuild
new file mode 100644
index 00000000000..dcff5645ff9
--- /dev/null
+++ b/sys-libs/libsemanage/libsemanage-3.0-r1.ebuild
@@ -0,0 +1,138 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI="6"
+PYTHON_COMPAT=( python{3_6,3_7,3_8} )
+
+inherit multilib python-r1 toolchain-funcs multilib-minimal
+
+MY_P="${P//_/-}"
+MY_RELEASEDATE="20191204"
+
+SEPOL_VER="${PV}"
+SELNX_VER="${PV}"
+
+DESCRIPTION="SELinux kernel and policy management library"
+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}"
+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"
+IUSE=""
+REQUIRED_USE="${PYTHON_REQUIRED_USE}"
+
+RDEPEND=">=sys-libs/libsepol-${SEPOL_VER}[${MULTILIB_USEDEP}]
+	>=sys-libs/libselinux-${SELNX_VER}[${MULTILIB_USEDEP}]
+	>=sys-process/audit-2.2.2[${MULTILIB_USEDEP}]
+	>=dev-libs/ustr-1.0.4-r2[${MULTILIB_USEDEP}]
+	${PYTHON_DEPS}"
+DEPEND="${RDEPEND}
+	>=dev-lang/swig-2.0.4-r1
+	sys-devel/bison
+	sys-devel/flex
+	virtual/pkgconfig"
+
+# tests are not meant to be run outside of the
+# full SELinux userland repo
+RESTRICT="test"
+
+src_prepare() {
+	eapply_user
+
+	echo >> "${S}/src/semanage.conf"
+	echo "# Set this to true to save the linked policy." >> "${S}/src/semanage.conf"
+	echo "# This is normally only useful for analysis" >> "${S}/src/semanage.conf"
+	echo "# or debugging of policy." >> "${S}/src/semanage.conf"
+	echo "save-linked=false" >> "${S}/src/semanage.conf"
+	echo >> "${S}/src/semanage.conf"
+	echo "# Set this to 0 to disable assertion checking." >> "${S}/src/semanage.conf"
+	echo "# This should speed up building the kernel policy" >> "${S}/src/semanage.conf"
+	echo "# from policy modules, but may leave you open to" >> "${S}/src/semanage.conf"
+	echo "# dangerous rules which assertion checking" >> "${S}/src/semanage.conf"
+	echo "# would catch." >> "${S}/src/semanage.conf"
+	echo "expand-check=1" >> "${S}/src/semanage.conf"
+	echo >> "${S}/src/semanage.conf"
+	echo "# Modules in the module store can be compressed" >> "${S}/src/semanage.conf"
+	echo "# with bzip2.  Set this to the bzip2 blocksize" >> "${S}/src/semanage.conf"
+	echo "# 1-9 when compressing.  The higher the number," >> "${S}/src/semanage.conf"
+	echo "# the more memory is traded off for disk space." >> "${S}/src/semanage.conf"
+	echo "# Set to 0 to disable bzip2 compression." >> "${S}/src/semanage.conf"
+	echo "bzip-blocksize=0" >> "${S}/src/semanage.conf"
+	echo >> "${S}/src/semanage.conf"
+	echo "# Reduce memory usage for bzip2 compression and" >> "${S}/src/semanage.conf"
+	echo "# decompression of modules in the module store." >> "${S}/src/semanage.conf"
+	echo "bzip-small=true" >> "${S}/src/semanage.conf"
+
+	multilib_copy_sources
+}
+
+multilib_src_compile() {
+	emake \
+		AR="$(tc-getAR)" \
+		CC="$(tc-getCC)" \
+		LIBDIR="${EPREFIX}/usr/$(get_libdir)" \
+		all
+
+	if multilib_is_native_abi; then
+		building_py() {
+			emake \
+				AR="$(tc-getAR)" \
+				CC="$(tc-getCC)" \
+				LIBDIR="${EPREFIX}/usr/$(get_libdir)" \
+				"$@"
+		}
+		python_foreach_impl building_py swigify
+		python_foreach_impl building_py pywrap
+	fi
+}
+
+multilib_src_install() {
+	emake \
+		LIBDIR="${EPREFIX}/usr/$(get_libdir)" \
+		DESTDIR="${ED}" install
+
+	if multilib_is_native_abi; then
+		installation_py() {
+			emake DESTDIR="${ED}" \
+				LIBDIR="${EPREFIX}/usr/$(get_libdir)" \
+				install-pywrap
+			python_optimize # bug 531638
+		}
+		python_foreach_impl installation_py
+	fi
+}
+
+multiib_src_install_all() {
+	python_setup
+	python_fix_shebang "${ED}"/usr/libexec/selinux/semanage_migrate_store
+}
+
+pkg_postinst() {
+	# Migrate the SELinux semanage configuration store if not done already
+	local selinuxtype=$(awk -F'=' '/SELINUXTYPE=/ {print $2}' "${EROOT}"/etc/selinux/config 2>/dev/null)
+	if [ -n "${selinuxtype}" ] && [ ! -d "${EROOT}"/var/lib/selinux/${selinuxtype}/active ] ; then
+		ewarn "Since the 2.4 SELinux userspace, the policy module store is moved"
+		ewarn "from /etc/selinux to /var/lib/selinux. The migration will be run now."
+		ewarn "If there are any issues, it can be done manually by running:"
+		ewarn "/usr/libexec/selinux/semanage_migrate_store"
+		ewarn "For more information, please see"
+		ewarn "- https://github.com/SELinuxProject/selinux/wiki/Policy-Store-Migration"
+	fi
+
+	# Run the store migration without rebuilds
+	for POLICY_TYPE in ${POLICY_TYPES} ; do
+		if [ ! -d "${EROOT}/var/lib/selinux/${POLICY_TYPE}/active" ] ; then
+			einfo "Migrating store ${POLICY_TYPE} (without policy rebuild)."
+			"${EROOT}/usr/libexec/selinux/semanage_migrate_store" -n -s "${POLICY_TYPE}" || die "Failed to migrate store ${POLICY_TYPE}"
+		fi
+	done
+}


             reply	other threads:[~2020-07-02 12:26 UTC|newest]

Thread overview: 84+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-07-02 12:26 Ben Kohler [this message]
  -- strict thread matches above, loose matches on Subject: below --
2024-08-12  1:23 [gentoo-commits] repo/gentoo:master commit in: sys-libs/libsemanage/ Jason Zaman
2024-06-30  0:49 Jason Zaman
2024-06-30  0:36 Jason Zaman
2024-06-06 13:49 Kenton Groombridge
2024-02-09 14:41 Kenton Groombridge
2024-01-17  1:33 Kenton Groombridge
2024-01-17  1:33 Kenton Groombridge
2024-01-08 12:28 Sam James
2024-01-08 12:03 Sam James
2023-04-09 15:14 Kenton Groombridge
2023-03-30  0:09 Kenton Groombridge
2023-03-30  0:09 Kenton Groombridge
2022-09-23  0:42 Sam James
2022-07-18 12:49 Sam James
2022-07-18 12:49 Sam James
2022-07-02 17:03 Kenton Groombridge
2022-06-04  1:03 Kenton Groombridge
2022-06-04  1:03 Kenton Groombridge
2022-06-04  1:03 Kenton Groombridge
2022-04-11  4:59 Jason Zaman
2022-04-11  3:44 Jason Zaman
2022-04-09  2:55 Jason Zaman
2022-03-27  4:40 Sam James
2022-03-27  4:40 Sam James
2022-03-27  4:39 Sam James
2022-03-27  4:39 Sam James
2021-12-28  1:14 Jason Zaman
2021-11-20 23:20 Sam James
2021-11-20 23:20 Sam James
2021-10-31  2:55 Sam James
2021-07-28 20:08 Sam James
2021-07-04 22:19 Sam James
2021-04-03  4:19 Jason Zaman
2021-04-03  4:19 Jason Zaman
2021-01-03  8:20 Jason Zaman
2020-12-18  3:31 Jason Zaman
2020-12-03  3:12 Jason Zaman
2020-11-21 20:14 Jason Zaman
2020-11-16  5:38 Jason Zaman
2020-09-15  3:41 Jason Zaman
2020-07-02 12:26 Ben Kohler
2020-02-11 19:50 Agostino Sarubbo
2020-02-11 19:43 Agostino Sarubbo
2020-02-10 21:25 Michał Górny
2019-12-08 18:39 Jason Zaman
2019-12-08 17:26 Jason Zaman
2019-12-08 17:26 Jason Zaman
2019-12-02 14:50 Jason Zaman
2019-08-17 10:09 Jason Zaman
2019-08-17 10:09 Jason Zaman
2019-03-31 13:46 Jason Zaman
2019-03-31 13:46 Jason Zaman
2019-02-09 11:49 Jason Zaman
2019-02-09 11:49 Jason Zaman
2018-06-26  2:07 Jason Zaman
2018-05-27 11:08 Jason Zaman
2018-05-25  7:29 Jason Zaman
2018-05-25  7:29 Jason Zaman
2018-05-13 17:28 Jason Zaman
2018-05-13 17:28 Jason Zaman
2018-04-27  4:45 Jason Zaman
2018-04-27  4:45 Jason Zaman
2018-04-26 11:22 Jason Zaman
2018-04-26 11:22 Jason Zaman
2018-03-02  6:27 Jason Zaman
2017-09-23  2:15 Jason Zaman
2017-09-23  2:15 Jason Zaman
2017-08-07 16:48 Jason Zaman
2017-08-07 16:48 Jason Zaman
2017-07-22 11:08 Jason Zaman
2017-07-22 11:08 Jason Zaman
2017-07-09 10:03 Jason Zaman
2017-07-09 10:03 Jason Zaman
2017-06-13 15:20 Jason Zaman
2017-06-13 15:20 Jason Zaman
2017-05-26 22:54 David Seifert
2016-12-12 14:01 Jason Zaman
2016-10-03  7:30 Jason Zaman
2016-06-01 14:15 Jason Zaman
2016-03-13 19:47 Sven Vermeulen
2016-02-17 20:11 Mike Frysinger
2015-12-21  8:57 Jason Zaman
2015-10-10 15:25 Jason Zaman

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1593692794.a79a655cab347b276fcd15c20bc83aaa0a4fe78b.bkohler@gentoo \
    --to=bkohler@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox