swift       14/12/21 13:56:07

  Modified:             ChangeLog
  Added:                selinux-base-policy-2.20141203-r2.ebuild
  Log:
  Release of 2.20141203-r2
  
  (Portage version: 2.2.14/cvs/Linux x86_64, signed Manifest commit with key 
0x2EDD52403B68AF47)

Revision  Changes    Path
1.165                sec-policy/selinux-base-policy/ChangeLog

file : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sec-policy/selinux-base-policy/ChangeLog?rev=1.165&view=markup
plain: 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sec-policy/selinux-base-policy/ChangeLog?rev=1.165&content-type=text/plain
diff : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sec-policy/selinux-base-policy/ChangeLog?r1=1.164&r2=1.165

Index: ChangeLog
===================================================================
RCS file: /var/cvsroot/gentoo-x86/sec-policy/selinux-base-policy/ChangeLog,v
retrieving revision 1.164
retrieving revision 1.165
diff -u -r1.164 -r1.165
--- ChangeLog   7 Dec 2014 13:21:06 -0000       1.164
+++ ChangeLog   21 Dec 2014 13:56:07 -0000      1.165
@@ -1,6 +1,12 @@
 # ChangeLog for sec-policy/selinux-base-policy
 # Copyright 1999-2014 Gentoo Foundation; Distributed under the GPL v2
-# $Header: /var/cvsroot/gentoo-x86/sec-policy/selinux-base-policy/ChangeLog,v 
1.164 2014/12/07 13:21:06 perfinion Exp $
+# $Header: /var/cvsroot/gentoo-x86/sec-policy/selinux-base-policy/ChangeLog,v 
1.165 2014/12/21 13:56:07 swift Exp $
+
+*selinux-base-policy-2.20141203-r2 (21 Dec 2014)
+
+  21 Dec 2014; Sven Vermeulen <sw...@gentoo.org>
+  +selinux-base-policy-2.20141203-r2.ebuild:
+  Release of 2.20141203-r2
 
   07 Dec 2014; Jason Zaman <perfin...@gentoo.org>
   selinux-base-policy-2.20140311-r7.ebuild, selinux-base-policy-9999.ebuild:



1.1                  
sec-policy/selinux-base-policy/selinux-base-policy-2.20141203-r2.ebuild

file : 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sec-policy/selinux-base-policy/selinux-base-policy-2.20141203-r2.ebuild?rev=1.1&view=markup
plain: 
http://sources.gentoo.org/viewvc.cgi/gentoo-x86/sec-policy/selinux-base-policy/selinux-base-policy-2.20141203-r2.ebuild?rev=1.1&content-type=text/plain

Index: selinux-base-policy-2.20141203-r2.ebuild
===================================================================
# Copyright 1999-2014 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: 
/var/cvsroot/gentoo-x86/sec-policy/selinux-base-policy/selinux-base-policy-2.20141203-r2.ebuild,v
 1.1 2014/12/21 13:56:07 swift Exp $
EAPI="5"

inherit eutils

if [[ ${PV} == 9999* ]]; then
        
EGIT_REPO_URI="${SELINUX_GIT_REPO:-git://git.overlays.gentoo.org/proj/hardened-refpolicy.git
 https://git.overlays.gentoo.org/gitroot/proj/hardened-refpolicy.git}";
        EGIT_BRANCH="${SELINUX_GIT_BRANCH:-master}"
        EGIT_SOURCEDIR="${WORKDIR}/refpolicy"

        inherit git-2

        KEYWORDS=""
else
        
SRC_URI="https://raw.githubusercontent.com/wiki/TresysTechnology/refpolicy/files/refpolicy-${PV}.tar.bz2
                        
http://dev.gentoo.org/~swift/patches/${PN}/patchbundle-${PN}-${PVR}.tar.bz2";
        KEYWORDS="~amd64 ~x86"
fi

HOMEPAGE="http://www.gentoo.org/proj/en/hardened/selinux/";
DESCRIPTION="SELinux policy for core modules"

IUSE="+unconfined"

RDEPEND="=sec-policy/selinux-base-${PVR}"
PDEPEND="unconfined? ( sec-policy/selinux-unconfined )"
DEPEND=""

MODS="application authlogin bootloader clock consoletype cron dmesg fstools 
getty hostname hotplug init iptables libraries locallogin logging lvm miscfiles 
modutils mount mta netutils nscd portage raid rsync selinuxutil setrans ssh 
staff storage su sysadm sysnetwork tmpfiles udev userdomain usermanage 
unprivuser xdg"
LICENSE="GPL-2"
SLOT="0"
S="${WORKDIR}/"

# Code entirely copied from selinux-eclass (cannot inherit due to dependency on
# itself), when reworked reinclude it. Only postinstall (where -b base.pp is
# added) needs to remain then.

pkg_pretend() {
        for i in ${POLICY_TYPES}; do
                if [[ "${i}" == "targeted" ]] && ! use unconfined; then
                        die "If you use POLICY_TYPES=targeted, then 
USE=unconfined is mandatory."
                fi
        done
}

src_prepare() {
        local modfiles

        if [[ ${PV} != 9999* ]]; then
                # Patch the source with the base patchbundle
                cd "${S}"
                EPATCH_MULTI_MSG="Applying SELinux policy updates ... " \
                EPATCH_SUFFIX="patch" \
                EPATCH_SOURCE="${WORKDIR}" \
                EPATCH_FORCE="yes" \
                epatch
        fi

        # Apply the additional patches refered to by the module ebuild.
        # But first some magic to differentiate between bash arrays and strings
        if [[ "$(declare -p POLICY_PATCH 2>/dev/null 2>&1)" == "declare -a"* ]];
        then
                cd "${S}/refpolicy/policy/modules"
                for POLPATCH in "${POLICY_PATCH[@]}";
                do
                        epatch "${POLPATCH}"
                done
        else
                if [[ -n ${POLICY_PATCH} ]];
                then
                        cd "${S}/refpolicy/policy/modules"
                        for POLPATCH in ${POLICY_PATCH};
                        do
                                epatch "${POLPATCH}"
                        done
                fi
        fi

        # Calling user patches
        epatch_user

        # Collect only those files needed for this particular module
        for i in ${MODS}; do
                modfiles="$(find ${S}/refpolicy/policy/modules -iname $i.te) 
$modfiles"
                modfiles="$(find ${S}/refpolicy/policy/modules -iname $i.fc) 
$modfiles"
        done

        for i in ${POLICY_TYPES}; do
                mkdir "${S}"/${i} || die "Failed to create directory ${S}/${i}"
                cp "${S}"/refpolicy/doc/Makefile.example "${S}"/${i}/Makefile \
                        || die "Failed to copy Makefile.example to 
${S}/${i}/Makefile"

                cp ${modfiles} "${S}"/${i} \
                        || die "Failed to copy the module files to ${S}/${i}"
        done
}

src_compile() {
        for i in ${POLICY_TYPES}; do
                emake NAME=$i -C "${S}"/${i} || die "${i} compile failed"
        done
}

src_install() {
        local BASEDIR="/usr/share/selinux"

        for i in ${POLICY_TYPES}; do
                for j in ${MODS}; do
                        einfo "Installing ${i} ${j} policy package"
                        insinto ${BASEDIR}/${i}
                        doins "${S}"/${i}/${j}.pp || die "Failed to add ${j}.pp 
to ${i}"
                done
        done
}

pkg_postinst() {
        # Override the command from the eclass, we need to load in base as well 
here
        local COMMAND
        for i in ${MODS}; do
                COMMAND="-i ${i}.pp ${COMMAND}"
        done

        for i in ${POLICY_TYPES}; do
                einfo "Inserting the following modules, with base, into the $i 
module store: ${MODS}"

                cd /usr/share/selinux/${i} || die "Could not enter 
/usr/share/selinux/${i}"

                semodule -s ${i} -b base.pp ${COMMAND} || die "Failed to load 
in base and modules ${MODS} in the $i policy store"
        done

        # Relabel depending packages
        local PKGSET="";
        if [ -x /usr/bin/qdepends ] ; then
                PKGSET=$(/usr/bin/qdepends -Cq -r -Q ${CATEGORY}/${PN} | grep 
-v 'sec-policy/selinux-');
        elif [ -x /usr/bin/equery ] ; then
                PKGSET=$(/usr/bin/equery -Cq depends ${CATEGORY}/${PN} | grep 
-v 'sec-policy/selinux-');
        fi
        if [ -n "${PKGSET}" ] ; then
                rlpkg ${PKGSET};
        fi
}




Reply via email to