commit: 41b18d2299e59710c1d65d37107d763fb85f9af0 Author: Mike Gilbert <floppym <AT> gentoo <DOT> org> AuthorDate: Sat Jan 28 20:59:11 2023 +0000 Commit: Mike Gilbert <floppym <AT> gentoo <DOT> org> CommitDate: Sat Jan 28 20:59:11 2023 +0000 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=41b18d22
sys-apps/baselayout: create ${ED}/var/{run,lock} in pkg_preinst Bug: https://bugs.gentoo.org/648880 Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org> ...ayout-9999.ebuild => baselayout-2.13-r1.ebuild} | 25 ++++++++++------------ sys-apps/baselayout/baselayout-9999.ebuild | 23 +++++++++----------- 2 files changed, 21 insertions(+), 27 deletions(-) diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-2.13-r1.ebuild similarity index 94% copy from sys-apps/baselayout/baselayout-9999.ebuild copy to sys-apps/baselayout/baselayout-2.13-r1.ebuild index 845f7f7a8dfb..71073b11c747 100644 --- a/sys-apps/baselayout/baselayout-9999.ebuild +++ b/sys-apps/baselayout/baselayout-2.13-r1.ebuild @@ -12,7 +12,7 @@ if [[ ${PV} = 9999 ]]; then inherit git-r3 else SRC_URI="https://gitweb.gentoo.org/proj/${PN}.git/snapshot/${P}.tar.bz2" - KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt" + #KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris ~x86-winnt" fi LICENSE="GPL-2" @@ -21,19 +21,6 @@ IUSE="build +split-usr" RDEPEND="!sys-apps/baselayout-prefix" -pkg_pretend() { - local stop= - if [[ ! -L ${EROOT}/var/run ]] && [[ -d ${EROOT}/var/run ]]; then - eerror "${EROOT}/var/run must be a symlink to ${EROOT}/run" - stop=1 - fi - if [[ ! -L ${EROOT}/var/lock ]] && [[ -d ${EROOT}/var/lock ]]; then - eerror "${EROOT}/var/lock must be a symlink to ${EROOT}/run/lock" - stop=1 - fi - [[ -z ${stop} ]] || die "please fix this before emerging baselayout" -} - pkg_setup() { multilib_layout } @@ -222,6 +209,16 @@ pkg_preinst() { fi fi rm -f "${ED}"/usr/share/${PN}/Makefile || die + + # Create symlinks in pkg_preinst to avoid Portage collision check. + # Create the symlinks in ${ED} via dosym so that we own it. + # Only create the symlinks if it wont cause a conflict in ${EROOT}. + if [[ -L ${EROOT}/var/lock || ! -e ${EROOT}/var/lock ]]; then + dosym ../run/lock /var/lock + fi + if [[ -L ${EROOT}/var/run || ! -e ${EROOT}/var/run ]]; then + dosym ../run /var/run + fi } src_prepare() { diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild index 845f7f7a8dfb..3c3f89d714de 100644 --- a/sys-apps/baselayout/baselayout-9999.ebuild +++ b/sys-apps/baselayout/baselayout-9999.ebuild @@ -21,19 +21,6 @@ IUSE="build +split-usr" RDEPEND="!sys-apps/baselayout-prefix" -pkg_pretend() { - local stop= - if [[ ! -L ${EROOT}/var/run ]] && [[ -d ${EROOT}/var/run ]]; then - eerror "${EROOT}/var/run must be a symlink to ${EROOT}/run" - stop=1 - fi - if [[ ! -L ${EROOT}/var/lock ]] && [[ -d ${EROOT}/var/lock ]]; then - eerror "${EROOT}/var/lock must be a symlink to ${EROOT}/run/lock" - stop=1 - fi - [[ -z ${stop} ]] || die "please fix this before emerging baselayout" -} - pkg_setup() { multilib_layout } @@ -222,6 +209,16 @@ pkg_preinst() { fi fi rm -f "${ED}"/usr/share/${PN}/Makefile || die + + # Create symlinks in pkg_preinst to avoid Portage collision check. + # Create the symlinks in ${ED} via dosym so that we own it. + # Only create the symlinks if it wont cause a conflict in ${EROOT}. + if [[ -L ${EROOT}/var/lock || ! -e ${EROOT}/var/lock ]]; then + dosym ../run/lock /var/lock + fi + if [[ -L ${EROOT}/var/run || ! -e ${EROOT}/var/run ]]; then + dosym ../run /var/run + fi } src_prepare() {