Fix selinux configuration file location

We were installing selinux configuration files in /etc which caused problems
on upgrades. Move them into /usr and ensure that systemd sets up appropriate
temporary files. Fixes https://github.com/coreos/bugs/issues/447
This commit is contained in:
Matthew Garrett 2015-08-24 11:38:41 -07:00
parent a467ab6b1a
commit 40fca7ddf1
9 changed files with 15 additions and 4 deletions

View File

@ -1,2 +1,3 @@
d /etc/selinux/ - - - - -
L /etc/selinux/config - - - - ../../usr/lib/selinux/config
L /etc/selinux/mcs - - - - ../../usr/lib/selinux/mcs

View File

@ -160,11 +160,13 @@ src_install() {
done
systemd_dotmpfilesd "${FILESDIR}/tmpfiles.d/selinux-base.conf"
systemd-tmpfiles --root="${D}" --create selinux-base.conf
dodoc doc/Makefile.example doc/example.{te,fc,if}
doman man/man8/*.8;
insinto /etc/selinux
insinto /usr/lib/selinux
doins "${FILESDIR}/config"
insinto /etc/selinux/mcs/contexts

View File

@ -156,11 +156,14 @@ src_install() {
done
systemd_dotmpfilesd "${FILESDIR}/tmpfiles.d/selinux-base.conf"
systemd-tmpfiles --root="${D}" --create selinux-base.conf
dodoc doc/Makefile.example doc/example.{te,fc,if}
doman man/man8/*.8;
insinto /etc/selinux
insinto /usr/lib/selinux
doins "${FILESDIR}/config"
}

View File

@ -0,0 +1 @@
L /etc/selinux/semanage.conf - - - - ../../usr/lib/selinux/semanage.conf

View File

@ -5,7 +5,7 @@
EAPI="5"
PYTHON_COMPAT=( python2_7 python3_3 python3_4 )
inherit multilib python-r1 toolchain-funcs eutils multilib-minimal
inherit multilib python-r1 toolchain-funcs eutils multilib-minimal systemd
MY_P="${P//_/-}"
@ -92,6 +92,7 @@ multilib_src_compile() {
multilib_src_install() {
emake \
DEFAULT_SEMANAGE_CONF_LOCATION="${ED}/usr/lib/selinux/semanage.conf" \
LIBDIR="${ED}/usr/$(get_libdir)" \
SHLIBDIR="${ED}/usr/$(get_libdir)" \
DESTDIR="${ED}" install
@ -104,4 +105,5 @@ multilib_src_install() {
}
python_foreach_impl installation_py
fi
systemd_dotmpfilesd "${FILESDIR}/tmpfiles.d/libsemanage.conf"
}

View File

@ -5,7 +5,7 @@
EAPI="5"
PYTHON_COMPAT=( python2_7 python3_3 python3_4 )
inherit multilib python-r1 toolchain-funcs eutils multilib-minimal
inherit multilib python-r1 toolchain-funcs eutils multilib-minimal systemd
MY_P="${P//_/-}"
MY_RELEASEDATE="20150202"
@ -102,6 +102,7 @@ multilib_src_compile() {
multilib_src_install() {
emake \
DEFAULT_SEMANAGE_CONF_LOCATION="${ED}/usr/lib/selinux/semanage.conf" \
LIBDIR="${ED}/usr/$(get_libdir)" \
SHLIBDIR="${ED}/usr/$(get_libdir)" \
DESTDIR="${ED}" install
@ -114,4 +115,5 @@ multilib_src_install() {
}
python_foreach_impl installation_py
fi
systemd_dotmpfilesd "${FILESDIR}/tmpfiles.d/libsemanage.conf"
}