public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2018-05-24  3:36 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2018-05-24  3:36 UTC (permalink / raw
  To: gentoo-commits

commit:     21fd030f84718ed28179c2f468a22b4ae93f5d67
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Thu May 24 03:14:03 2018 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Thu May 24 03:14:42 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=21fd030f

sys-apps/baselayout: 2.5-r1 bump for bug #656380

Package-Manager: Portage-2.3.24, Repoman-2.3.6

 sys-apps/baselayout/baselayout-2.5-r1.ebuild | 272 +++++++++++++++++++++++++++
 1 file changed, 272 insertions(+)

diff --git a/sys-apps/baselayout/baselayout-2.5-r1.ebuild b/sys-apps/baselayout/baselayout-2.5-r1.ebuild
new file mode 100644
index 00000000000..866701708dc
--- /dev/null
+++ b/sys-apps/baselayout/baselayout-2.5-r1.ebuild
@@ -0,0 +1,272 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit multilib versionator prefix
+
+DESCRIPTION="Filesystem baselayout and init scripts"
+HOMEPAGE="https://www.gentoo.org/"
+if [[ ${PV} = 9999 ]]; then
+	EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/${PN}.git"
+	inherit git-r3
+else
+	SRC_URI="https://gitweb.gentoo.org/proj/${PN}.git/snapshot/${P}.tar.bz2"
+	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="build kernel_FreeBSD kernel_linux +split-usr"
+
+pkg_setup() {
+	multilib_layout
+}
+
+# Create our multilib dirs - the Makefile has no knowledge of this
+multilib_layout() {
+	local def_libdir libdir libdirs
+	def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
+	libdirs=$(get_all_libdirs)
+	: ${libdirs:=lib}	# it isn't that we don't trust multilib.eclass...
+
+	[ -z "${def_libdir}" ] && die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
+
+	# figure out which paths should be symlinks and which should be directories
+	local dirs syms exp d
+	for libdir in ${libdirs} ; do
+		if use split-usr ; then
+			exp=( {,usr/,usr/local/}${libdir} )
+		else
+			exp=( {usr/,usr/local/}${libdir} )
+		fi
+		for d in "${exp[@]}" ; do
+			# most things should be dirs
+			if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
+				[ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
+			else
+				[ -h "${d}" ] && syms+=" ${d}"
+			fi
+		done
+	done
+	if [ -n "${syms}${dirs}" ] ; then
+		ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
+		ewarn "have these paths configured as follows:"
+		[ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
+		[ -n "${syms}" ] && ewarn "directories:${syms}"
+		ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
+		ewarn "If things fail, you will need to manually create/move the directories."
+		echo
+	fi
+
+	# setup symlinks and dirs where we expect them to be; do not migrate
+	# data ... just fall over in that case.
+	local prefix prefix_lst
+	if use split-usr ; then
+		prefix_lst=( "${EROOT}"{,usr/,usr/local/} )
+	else
+		prefix_lst=( "${EROOT}"{usr/,usr/local/} )
+	fi
+	for prefix in "${prefix_lst[@]}"; do
+		if [ "${SYMLINK_LIB}" = yes ] ; then
+			# we need to make sure "lib" points to the native libdir
+			if [ -h "${prefix}lib" ] ; then
+				# it's already a symlink!  assume it's pointing to right place ...
+				continue
+			elif [ -d "${prefix}lib" ] ; then
+				# "lib" is a dir, so need to convert to a symlink
+				ewarn "Converting ${prefix}lib from a dir to a symlink"
+				rm -f "${prefix}lib"/.keep
+				if rmdir "${prefix}lib" 2>/dev/null ; then
+					ln -s ${def_libdir} "${prefix}lib" || die
+				else
+					die "non-empty dir found where we needed a symlink: ${prefix}lib"
+				fi
+			else
+				# nothing exists, so just set it up sanely
+				ewarn "Initializing ${prefix}lib as a symlink"
+				mkdir -p "${prefix}" || die
+				rm -f "${prefix}lib" || die
+				ln -s ${def_libdir} "${prefix}lib" || die
+				mkdir -p "${prefix}${def_libdir}" #423571
+			fi
+		else
+			# we need to make sure "lib" is a dir
+			if [ -h "${prefix}lib" ] ; then
+				# "lib" is a symlink, so need to convert to a dir
+				ewarn "Converting ${prefix}lib from a symlink to a dir"
+				rm -f "${prefix}lib" || die
+				if [ -d "${prefix}lib32" ] ; then
+					ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
+					mv "${prefix}lib32" "${prefix}lib" || die
+				else
+					mkdir -p "${prefix}lib" || die
+				fi
+			elif [ -d "${prefix}lib" ] && ! has lib32 ${libdirs} ; then
+				# make sure the old "lib" ABI location does not exist; we
+				# only symlinked the lib dir on systems where we moved it
+				# to "lib32" ...
+				case ${CHOST} in
+				*-gentoo-freebsd*) ;; # We want it the other way on fbsd.
+				i?86*|x86_64*|powerpc*|sparc*|s390*)
+					if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
+						rm -f "${prefix}lib32"/.keep
+						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
+							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
+							die "non-empty dir found where there should be none: ${prefix}lib32"
+						fi
+					fi
+					;;
+				esac
+			else
+				# nothing exists, so just set it up sanely
+				ewarn "Initializing ${prefix}lib as a dir"
+				mkdir -p "${prefix}lib" || die
+			fi
+		fi
+	done
+	if ! use split-usr ; then
+		for libdir in ${libdirs}; do
+			if [[ ! -e "${EROOT}${libdir}" ]]; then
+				ln -s usr/"${libdir}" "${EROOT}${libdir}"
+			fi
+		done
+	fi
+}
+
+pkg_preinst() {
+	# This is written in src_install (so it's in CONTENTS), but punt all
+	# pending updates to avoid user having to do etc-update (and make the
+	# pkg_postinst logic simpler).
+	rm -f "${EROOT}"/etc/._cfg????_gentoo-release
+
+	# We need to install directories and maybe some dev nodes when building
+	# stages, but they cannot be in CONTENTS.
+	# Also, we cannot reference $S as binpkg will break so we do this.
+	multilib_layout
+	if use build ; then
+		if use split-usr ; then
+			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
+		else
+			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
+		fi
+	fi
+	rm -f "${ED}"/usr/share/${PN}/Makefile
+}
+
+src_prepare() {
+	default
+	if use prefix; then
+		hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
+		hprefixify etc/{env.d/50baselayout,shells} share.Linux/passwd
+		echo PATH=/usr/bin:/bin >> etc/env.d/99host
+		echo ROOTPATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
+	fi
+
+	# handle multilib paths.  do it here because we want this behavior
+	# regardless of the C library that you're using.  we do explicitly
+	# list paths which the native ldconfig searches, but this isn't
+	# problematic as it doesn't change the resulting ld.so.cache or
+	# take longer to generate.  similarly, listing both the native
+	# path and the symlinked path doesn't change the resulting cache.
+	local libdir ldpaths
+	for libdir in $(get_all_libdirs) ; do
+		ldpaths+=":${EPREFIX}/${libdir}:${EPREFIX}/usr/${libdir}"
+		ldpaths+=":${EPREFIX}/usr/local/${libdir}"
+	done
+	echo "LDPATH='${ldpaths#:}'" >> etc/env.d/50baselayout
+
+	# rc-scripts version for testing of features that *should* be present
+	echo "Gentoo Base System release ${PV}" > etc/gentoo-release
+}
+
+src_install() {
+	emake \
+		OS=$(usex kernel_FreeBSD BSD Linux) \
+		DESTDIR="${ED}" \
+		install
+	dodoc ChangeLog
+
+	# need the makefile in pkg_preinst
+	insinto /usr/share/${PN}
+	doins Makefile
+}
+
+pkg_postinst() {
+	local x
+
+	# We installed some files to /usr/share/baselayout instead of /etc to stop
+	# (1) overwriting the user's settings
+	# (2) screwing things up when attempting to merge files
+	# (3) accidentally packaging up personal files with quickpkg
+	# If they don't exist then we install them
+	for x in master.passwd passwd shadow group fstab ; do
+		[ -e "${EROOT}etc/${x}" ] && continue
+		[ -e "${EROOT}usr/share/baselayout/${x}" ] || continue
+		cp -p "${EROOT}usr/share/baselayout/${x}" "${EROOT}"etc
+	done
+
+	# Force shadow permissions to not be world-readable #260993
+	for x in shadow ; do
+		[ -e "${EROOT}etc/${x}" ] && chmod o-rwx "${EROOT}etc/${x}"
+	done
+
+	# Take care of the etc-update for the user
+	if [ -e "${EROOT}"etc/._cfg0000_gentoo-release ] ; then
+		mv "${EROOT}"etc/._cfg0000_gentoo-release "${EROOT}"etc/gentoo-release
+	fi
+
+	# whine about users that lack passwords #193541
+	if [[ -e "${EROOT}"etc/shadow ]] ; then
+		local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
+		if [[ -n ${bad_users} ]] ; then
+			echo
+			ewarn "The following users lack passwords!"
+			ewarn ${bad_users}
+		fi
+	fi
+
+	# whine about users with invalid shells #215698
+	if [[ -e "${EROOT}"etc/passwd ]] ; then
+		local bad_shells=$(awk -F: 'system("test -e " $7) { print $1 " - " $7}' "${EROOT}"etc/passwd | sort)
+		if [[ -n ${bad_shells} ]] ; then
+			echo
+			ewarn "The following users have non-existent shells!"
+			ewarn "${bad_shells}"
+		fi
+	fi
+
+	# https://bugs.gentoo.org/361349
+	if use kernel_linux; then
+		mkdir -p "${EROOT}"run
+
+		local found fstype mountpoint
+		while read -r _ mountpoint fstype _; do
+		[[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
+		done < "${ROOT}"proc/mounts
+		[[ -z ${found} ]] &&
+			ewarn "You should reboot now to get /run mounted with tmpfs!"
+	fi
+
+	for x in ${REPLACING_VERSIONS}; do
+		if ! version_is_at_least 2.4 ${x}; then
+			ewarn "After updating ${EROOT}etc/profile, please run"
+			ewarn "env-update && . /etc/profile"
+		fi
+
+		if ! version_is_at_least 2.5 ${x}; then
+			ewarn "Please run env-update then log out and back in to"
+			ewarn "update your path."
+		fi
+		# clean up after 2.5 typos
+		# https://bugs.gentoo.org/show_bug.cgi?id=656380
+		if [[ ${x} == 2.5 ]]; then
+			rm -fr "${EROOT}{,usr"
+		fi
+	done
+
+	if [[ -e "${EROOT}"etc/env.d/00basic ]]; then
+		ewarn "${EROOT}etc/env.d/00basic is now ${EROOT}etc/env.d/50baselayout"
+		ewarn "Please migrate your changes."
+	fi
+}


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2024-11-04 19:54 Mike Gilbert
  0 siblings, 0 replies; 124+ messages in thread
From: Mike Gilbert @ 2024-11-04 19:54 UTC (permalink / raw
  To: gentoo-commits

commit:     48be0183b5be5e28fc67ec9cc49ef810e34b40e6
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Mon Nov  4 19:54:12 2024 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Mon Nov  4 19:54:12 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=48be0183

sys-apps/baselayout: update EAPI 7 -> 8

Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>

 sys-apps/baselayout/baselayout-9999.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
index b2ffad64281b..8be27c569375 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-9999.ebuild
@@ -1,7 +1,7 @@
 # Copyright 1999-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI=7
+EAPI=8
 
 inherit multilib prefix
 


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2024-11-04 19:52 Mike Gilbert
  0 siblings, 0 replies; 124+ messages in thread
From: Mike Gilbert @ 2024-11-04 19:52 UTC (permalink / raw
  To: gentoo-commits

commit:     7d4cc2a86a0e89c016c5d9e0c105f81089a339e1
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Mon Nov  4 19:50:32 2024 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Mon Nov  4 19:50:32 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7d4cc2a8

sys-apps/baselayout: add 2.17, drop 2.16

Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>

 sys-apps/baselayout/Manifest                                           | 2 +-
 sys-apps/baselayout/{baselayout-2.16.ebuild => baselayout-2.17.ebuild} | 0
 2 files changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys-apps/baselayout/Manifest b/sys-apps/baselayout/Manifest
index 4c828bd5647b..7c4216b9bc96 100644
--- a/sys-apps/baselayout/Manifest
+++ b/sys-apps/baselayout/Manifest
@@ -1,3 +1,3 @@
 DIST baselayout-2.14.tar.bz2 30182 BLAKE2B c5f67795233e565c2c75c97a55c000aec98e901bb0a25f1aeb52b01b44d7c09bfc6e67813234629ca71ff32d603e82ada8e66e5ab6007fa0664b95367256320d SHA512 bffd118f5e92975b9247d854fc5683a311dbcd03efa37a13dfd05d04e92a6e784858d3a55aa689f782229afc5985e829eb332c08a79eed081bf0a47720ca7e8a
 DIST baselayout-2.15.tar.bz2 30214 BLAKE2B 58d81b935c52deddeae60314f040a85767c7df30e38c694090dded4a9d593be8fb3c181e6e9496cc8e0987481b6b13f57a74038f9f21a0b27c76528d066cd5f5 SHA512 3d1a64e2802b53bcc537633fd23224ebea60b79d58f4b692175598cd43015e0d60dfdfb81c03f3541d28fe77f04022298236db726ea7e5119cc217d6bfb74d4b
-DIST baselayout-2.16.tar.bz2 30260 BLAKE2B 19c213d6ad25f0e200ea75bff481ab4aab45742df67e941211888f017f7ecd4054733878f7e4e19ebb242615fcb7f002765668f97a4f554733173251d4f836f5 SHA512 5668d1eb550c9b422f7ab732f25e0cb53d376501d2ba76b8219eab6a3b7aa60c485d9949bef498a394c099ee592553d8c7413266f4610555cb6dc1ccf7d05500
+DIST baselayout-2.17.tar.bz2 30274 BLAKE2B b5016fd8ec8646fe9fcc05d893a5732f2301bff93fc3c4400f6db955cabadd19f517fab8c73f3ee7e8224d7f5e1cff8f4d3afec1d5ebd1bef25b2c9f1812b2ec SHA512 8991f8064b7b1d7ebbd202479b9e12b955b76640cc3f1728551313517f78a40465e3f11f57c7c5827b9a3312b822a37b556399de36190febeb2343ce203b7681

diff --git a/sys-apps/baselayout/baselayout-2.16.ebuild b/sys-apps/baselayout/baselayout-2.17.ebuild
similarity index 100%
rename from sys-apps/baselayout/baselayout-2.16.ebuild
rename to sys-apps/baselayout/baselayout-2.17.ebuild


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2024-11-03 23:37 Mike Gilbert
  0 siblings, 0 replies; 124+ messages in thread
From: Mike Gilbert @ 2024-11-03 23:37 UTC (permalink / raw
  To: gentoo-commits

commit:     c9ce71da010638a2ca33c895674b95b3f231f029
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Sun Nov  3 23:36:59 2024 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Sun Nov  3 23:36:59 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c9ce71da

sys-apps/baselayout: add 2.16

Closes: https://bugs.gentoo.org/910758
Closes: https://bugs.gentoo.org/937941
Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>

 sys-apps/baselayout/Manifest               |   1 +
 sys-apps/baselayout/baselayout-2.16.ebuild | 364 +++++++++++++++++++++++++++++
 2 files changed, 365 insertions(+)

diff --git a/sys-apps/baselayout/Manifest b/sys-apps/baselayout/Manifest
index 5a578fa0cc19..4c828bd5647b 100644
--- a/sys-apps/baselayout/Manifest
+++ b/sys-apps/baselayout/Manifest
@@ -1,2 +1,3 @@
 DIST baselayout-2.14.tar.bz2 30182 BLAKE2B c5f67795233e565c2c75c97a55c000aec98e901bb0a25f1aeb52b01b44d7c09bfc6e67813234629ca71ff32d603e82ada8e66e5ab6007fa0664b95367256320d SHA512 bffd118f5e92975b9247d854fc5683a311dbcd03efa37a13dfd05d04e92a6e784858d3a55aa689f782229afc5985e829eb332c08a79eed081bf0a47720ca7e8a
 DIST baselayout-2.15.tar.bz2 30214 BLAKE2B 58d81b935c52deddeae60314f040a85767c7df30e38c694090dded4a9d593be8fb3c181e6e9496cc8e0987481b6b13f57a74038f9f21a0b27c76528d066cd5f5 SHA512 3d1a64e2802b53bcc537633fd23224ebea60b79d58f4b692175598cd43015e0d60dfdfb81c03f3541d28fe77f04022298236db726ea7e5119cc217d6bfb74d4b
+DIST baselayout-2.16.tar.bz2 30260 BLAKE2B 19c213d6ad25f0e200ea75bff481ab4aab45742df67e941211888f017f7ecd4054733878f7e4e19ebb242615fcb7f002765668f97a4f554733173251d4f836f5 SHA512 5668d1eb550c9b422f7ab732f25e0cb53d376501d2ba76b8219eab6a3b7aa60c485d9949bef498a394c099ee592553d8c7413266f4610555cb6dc1ccf7d05500

diff --git a/sys-apps/baselayout/baselayout-2.16.ebuild b/sys-apps/baselayout/baselayout-2.16.ebuild
new file mode 100644
index 000000000000..a9bf8ec222fb
--- /dev/null
+++ b/sys-apps/baselayout/baselayout-2.16.ebuild
@@ -0,0 +1,364 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit multilib prefix
+
+DESCRIPTION="Filesystem baselayout and init scripts"
+HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
+if [[ ${PV} = 9999 ]]; then
+	EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/${PN}.git"
+	inherit git-r3
+else
+	SRC_URI="https://gitweb.gentoo.org/proj/${PN}.git/snapshot/${P}.tar.bz2"
+	KEYWORDS="~alpha amd64 arm arm64 hppa ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="build +split-usr"
+
+RDEPEND="!sys-apps/baselayout-prefix"
+
+riscv_compat_symlink() {
+	# Here we apply some special sauce for riscv.
+	# Two multilib layouts exist for now:
+	# 1) one level libdirs, (32bit) "lib" and (64bit) "lib64"
+	#    these are chosen by us to closely resemble other arches
+	# 2) two level libdirs, "lib64/lp64d" "lib64/lp64" "lib32/ilp32d" ...
+	#    this is the glibc/gcc default
+	# Unfortunately, the default has only one fallback, which is "lib"
+	# for both 32bit and 64bit. So things do not break in 1), we need
+	# to provide compatibility symlinks...
+
+	# This function has exactly two parameters:
+	# - the default libdir, to determine if 1) or 2) applies
+	# - the location of the symlink (which points to ".")
+
+	# Note: we call this only in the ${SYMLINK_LIB} = no codepath, since
+	# there never was a ${SYMLINK_LIB} = yes riscv profile.
+
+	case ${CHOST} in
+	riscv*)
+		# are we on a one level libdir profile? is there no symlink yet?
+		if [[ ${1} != */* && ! -L ${2} ]] ; then
+			ln -s . $2 || die "Unable to make $2 riscv compatibility symlink"
+		fi
+		;;
+	esac
+}
+
+# Create our multilib dirs - the Makefile has no knowledge of this
+multilib_layout() {
+	local dir def_libdir libdir libdirs
+	local prefix prefix_lst
+	def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
+	libdirs=$(get_all_libdirs)
+
+	if [[ -z "${SYMLINK_LIB}" || ${SYMLINK_LIB} = no ]] ; then
+		prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
+		for prefix in "${prefix_lst[@]}"; do
+			for libdir in ${libdirs}; do
+				dir="${prefix}${libdir}"
+				if [[ -e "${dir}" ]]; then
+					[[ ! -d "${dir}" ]] &&
+						die "${dir} exists but is not a directory"
+					continue
+				fi
+				if ! use split-usr && [[ ${prefix} = ${EROOT}/ ]]; then
+					# for the special case of riscv multilib, we drop the
+					# second part of two-component libdirs, e.g. lib64/lp64
+					libdir="${libdir%%/*}"
+					dir="${prefix}${libdir}"
+					if [[ -h "${dir}" ]] ; then
+						if use riscv ; then
+							# with riscv we get now double entries so we
+							# need to ignore already existing symlinks
+							einfo "symlink ${dir} already exists (riscv)"
+						else
+							die "symlink ${dir} already exists"
+						fi
+					else
+						einfo "symlinking ${dir} to usr/${libdir}"
+						ln -s usr/${libdir} ${dir} ||
+							die "Unable to make ${dir} symlink"
+					fi
+				else
+					einfo "creating directory ${dir}"
+					mkdir -p "${dir}" ||
+						die "Unable to create ${dir} directory"
+				fi
+			done
+			[[ -d "${prefix}${def_libdir}" ]] && riscv_compat_symlink "${def_libdir}" "${prefix}${def_libdir}/${DEFAULT_ABI}"
+		done
+		return 0
+	fi
+
+	[ -z "${def_libdir}" ] &&
+		die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
+
+	# figure out which paths should be symlinks and which should be directories
+	local dirs syms exp d
+	for libdir in ${libdirs} ; do
+		if use split-usr ; then
+			exp=( {,usr/,usr/local/}${libdir} )
+		else
+			exp=( {usr/,usr/local/}${libdir} )
+		fi
+		for d in "${exp[@]}" ; do
+			# most things should be dirs
+			if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
+				[ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
+			else
+				[ -h "${d}" ] && syms+=" ${d}"
+			fi
+		done
+	done
+	if [ -n "${syms}${dirs}" ] ; then
+		ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
+		ewarn "have these paths configured as follows:"
+		[ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
+		[ -n "${syms}" ] && ewarn "directories:${syms}"
+		ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
+		ewarn "If things fail, you will need to manually create/move the directories."
+		echo
+	fi
+
+	# setup symlinks and dirs where we expect them to be; do not migrate
+	# data ... just fall over in that case.
+	if use split-usr ; then
+		prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
+	else
+		prefix_lst=( "${EROOT}"/{usr/,usr/local/} )
+	fi
+	for prefix in "${prefix_lst[@]}"; do
+		if [ "${SYMLINK_LIB}" = yes ] ; then
+			# we need to make sure "lib" points to the native libdir
+			if [ -h "${prefix}lib" ] ; then
+				# it's already a symlink!  assume it's pointing to right place ...
+				continue
+			elif [ -d "${prefix}lib" ] ; then
+				# "lib" is a dir, so need to convert to a symlink
+				ewarn "Converting ${prefix}lib from a dir to a symlink"
+				rm -f "${prefix}lib"/.keep || die
+				if rmdir "${prefix}lib" 2>/dev/null ; then
+					ln -s ${def_libdir} "${prefix}lib" || die
+				else
+					die "non-empty dir found where we needed a symlink: ${prefix}lib"
+				fi
+			else
+				# nothing exists, so just set it up sanely
+				ewarn "Initializing ${prefix}lib as a symlink"
+				mkdir -p "${prefix}" || die
+				rm -f "${prefix}lib" || die
+				ln -s ${def_libdir} "${prefix}lib" || die
+				mkdir -p "${prefix}${def_libdir}" || die #423571
+			fi
+		else
+			# we need to make sure "lib" is a dir
+			if [ -h "${prefix}lib" ] ; then
+				# "lib" is a symlink, so need to convert to a dir
+				ewarn "Converting ${prefix}lib from a symlink to a dir"
+				rm -f "${prefix}lib" || die
+				if [ -d "${prefix}lib32" ] ; then
+					ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
+					mv "${prefix}lib32" "${prefix}lib" || die
+				else
+					mkdir -p "${prefix}lib" || die
+				fi
+			elif [ -d "${prefix}lib" ] && ! has lib32 ${libdirs} ; then
+				# make sure the old "lib" ABI location does not exist; we
+				# only symlinked the lib dir on systems where we moved it
+				# to "lib32" ...
+				case ${CHOST} in
+				i?86*|x86_64*|powerpc*|sparc*|s390*)
+					if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
+						rm -f "${prefix}lib32"/.keep || die
+						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
+							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
+							die "non-empty dir found where there should be none: ${prefix}lib32"
+						fi
+					fi
+					;;
+				esac
+			else
+				# nothing exists, so just set it up sanely
+				ewarn "Initializing ${prefix}lib as a dir"
+				mkdir -p "${prefix}lib" || die
+			fi
+		fi
+	done
+	if ! use split-usr ; then
+		for libdir in ${libdirs}; do
+			if [[ ! -e "${EROOT}${libdir}" ]]; then
+				ln -s usr/"${libdir}" "${EROOT}${libdir}" ||
+					die "Unable to make ${EROOT}${libdir} symlink"
+			fi
+		done
+	fi
+}
+
+pkg_setup() {
+	multilib_layout
+}
+
+src_prepare() {
+	default
+
+	# don't want symlinked directories in PATH on systems with usr-merge
+	if ! use split-usr && ! use prefix-guest; then
+		sed \
+			-e 's|:/usr/sbin:|:|g' \
+			-e 's|:/sbin:|:|g' \
+			-e 's|:/bin:|:|g' \
+			-i etc/env.d/50baselayout || die
+	fi
+
+	if use prefix; then
+		hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
+		hprefixify etc/shells share/passwd
+		hprefixify -w '/PATH=/' etc/env.d/50baselayout
+		hprefixify -w 1 etc/env.d/50baselayout
+		echo PATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
+		echo ROOTPATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
+		echo MANPATH=/usr/share/man >> etc/env.d/99host
+
+		# change branding
+		sed -i \
+			-e '/gentoo-release/s/Gentoo Base/Gentoo Prefix Base/' \
+			-e '/make_os_release/s/${OS}/Prefix/' \
+			Makefile || die
+	fi
+
+	# handle multilib paths.  do it here because we want this behavior
+	# regardless of the C library that you're using.  we do explicitly
+	# list paths which the native ldconfig searches, but this isn't
+	# problematic as it doesn't change the resulting ld.so.cache or
+	# take longer to generate.  similarly, listing both the native
+	# path and the symlinked path doesn't change the resulting cache.
+	local libdir ldpaths
+	for libdir in $(get_all_libdirs) ; do
+		if use split-usr || use prefix-guest; then
+			ldpaths+=":${EPREFIX}/${libdir}"
+		fi
+		ldpaths+=":${EPREFIX}/usr/${libdir}"
+		ldpaths+=":${EPREFIX}/usr/local/${libdir}"
+	done
+	echo "LDPATH='${ldpaths#:}'" >> etc/env.d/50baselayout
+}
+
+src_install() {
+	emake \
+		DESTDIR="${ED}" \
+		install
+
+	if [[ ${CHOST} == *-darwin* ]] ; then
+		# add SDK path which contains development manpages
+		echo "MANPATH=${EPREFIX}/MacOSX.sdk/usr/share/man" \
+			> "${ED}"/etc/env.d/98macos-sdk
+	fi
+
+	# need the makefile in pkg_preinst
+	insinto /usr/share/${PN}
+	doins Makefile
+
+	dodoc ChangeLog
+
+	# bug 858596
+	if use prefix-guest ; then
+		dodir sbin
+		cat > "${ED}"/sbin/runscript <<- EOF
+			#!/usr/bin/env sh
+			source "${EPREFIX}/lib/gentoo/functions.sh"
+
+			eerror "runscript/openrc-run not supported by Gentoo Prefix Base System release ${PV}" 1>&2
+			exit 1
+		EOF
+		chmod 755 "${ED}"/sbin/runscript || die
+		cp "${ED}"/sbin/{runscript,openrc-run} || die
+	fi
+}
+
+pkg_preinst() {
+	# We need to install directories and maybe some dev nodes when building
+	# stages, but they cannot be in CONTENTS.
+	# Also, we cannot reference $S as binpkg will break so we do this.
+	multilib_layout
+	if use build ; then
+		if use split-usr ; then
+			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
+		else
+			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
+		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
+}
+
+pkg_postinst() {
+	local x
+
+	# We installed some files to /usr/share/baselayout instead of /etc to stop
+	# (1) overwriting the user's settings
+	# (2) screwing things up when attempting to merge files
+	# (3) accidentally packaging up personal files with quickpkg
+	# If they don't exist then we install them
+	for x in master.passwd passwd shadow group fstab ; do
+		[ -e "${EROOT}/etc/${x}" ] && continue
+		[ -e "${EROOT}/usr/share/baselayout/${x}" ] || continue
+		cp -p "${EROOT}/usr/share/baselayout/${x}" "${EROOT}"/etc || die
+	done
+
+	# Force shadow permissions to not be world-readable #260993
+	for x in shadow ; do
+		if [ -e "${EROOT}/etc/${x}" ] ; then
+			chmod o-rwx "${EROOT}/etc/${x}" || die
+		fi
+	done
+	# whine about users that lack passwords #193541
+	if [[ -e "${EROOT}"/etc/shadow ]] ; then
+		local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
+		if [[ -n ${bad_users} ]] ; then
+			echo
+			ewarn "The following users lack passwords!"
+			ewarn ${bad_users}
+		fi
+	fi
+
+	# whine about users with invalid shells #215698
+	if [[ -e "${EROOT}"/etc/passwd ]] ; then
+		local bad_shells=$(awk -F: 'system("test -e ${ROOT}" $7) { print $1 " - " $7}' "${EROOT}"/etc/passwd | sort)
+		if [[ -n ${bad_shells} ]] ; then
+			echo
+			ewarn "The following users have non-existent shells!"
+			ewarn "${bad_shells}"
+		fi
+	fi
+
+	# https://bugs.gentoo.org/361349
+	if use kernel_linux; then
+		mkdir -p "${EROOT}"/run || die
+
+		local found fstype mountpoint
+		while read -r _ mountpoint fstype _; do
+		[[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
+		done < "${ROOT}"/proc/mounts
+		[[ -z ${found} ]] &&
+			ewarn "You should reboot now to get /run mounted with tmpfs!"
+	fi
+
+	if [[ -e "${EROOT}"/etc/env.d/00basic ]]; then
+		ewarn "${EROOT}/etc/env.d/00basic is now ${EROOT}/etc/env.d/50baselayout"
+		ewarn "Please migrate your changes."
+	fi
+}


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2024-04-30 18:52 Arthur Zamarin
  0 siblings, 0 replies; 124+ messages in thread
From: Arthur Zamarin @ 2024-04-30 18:52 UTC (permalink / raw
  To: gentoo-commits

commit:     c9389baad07aeb6b50f8048d6a62b540ae465887
Author:     Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Tue Apr 30 18:52:05 2024 +0000
Commit:     Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Tue Apr 30 18:52:05 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c9389baa

sys-apps/baselayout: Stabilize 2.15 ALLARCHES, #930985

Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>

 sys-apps/baselayout/baselayout-2.15.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys-apps/baselayout/baselayout-2.15.ebuild b/sys-apps/baselayout/baselayout-2.15.ebuild
index 8dfcf1d42876..0c730c42ecfd 100644
--- a/sys-apps/baselayout/baselayout-2.15.ebuild
+++ b/sys-apps/baselayout/baselayout-2.15.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 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+	KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
 fi
 
 LICENSE="GPL-2"


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2024-03-12  1:43 Mike Gilbert
  0 siblings, 0 replies; 124+ messages in thread
From: Mike Gilbert @ 2024-03-12  1:43 UTC (permalink / raw
  To: gentoo-commits

commit:     71fd183c98543ba45b23b29632be816c0c2f291a
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Tue Mar 12 01:43:12 2024 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Tue Mar 12 01:43:12 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=71fd183c

sys-apps/baselayout: add 2.15

Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>

 sys-apps/baselayout/Manifest               |   1 +
 sys-apps/baselayout/baselayout-2.15.ebuild | 364 +++++++++++++++++++++++++++++
 2 files changed, 365 insertions(+)

diff --git a/sys-apps/baselayout/Manifest b/sys-apps/baselayout/Manifest
index 91204109c0f5..5a578fa0cc19 100644
--- a/sys-apps/baselayout/Manifest
+++ b/sys-apps/baselayout/Manifest
@@ -1 +1,2 @@
 DIST baselayout-2.14.tar.bz2 30182 BLAKE2B c5f67795233e565c2c75c97a55c000aec98e901bb0a25f1aeb52b01b44d7c09bfc6e67813234629ca71ff32d603e82ada8e66e5ab6007fa0664b95367256320d SHA512 bffd118f5e92975b9247d854fc5683a311dbcd03efa37a13dfd05d04e92a6e784858d3a55aa689f782229afc5985e829eb332c08a79eed081bf0a47720ca7e8a
+DIST baselayout-2.15.tar.bz2 30214 BLAKE2B 58d81b935c52deddeae60314f040a85767c7df30e38c694090dded4a9d593be8fb3c181e6e9496cc8e0987481b6b13f57a74038f9f21a0b27c76528d066cd5f5 SHA512 3d1a64e2802b53bcc537633fd23224ebea60b79d58f4b692175598cd43015e0d60dfdfb81c03f3541d28fe77f04022298236db726ea7e5119cc217d6bfb74d4b

diff --git a/sys-apps/baselayout/baselayout-2.15.ebuild b/sys-apps/baselayout/baselayout-2.15.ebuild
new file mode 100644
index 000000000000..8dfcf1d42876
--- /dev/null
+++ b/sys-apps/baselayout/baselayout-2.15.ebuild
@@ -0,0 +1,364 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit multilib prefix
+
+DESCRIPTION="Filesystem baselayout and init scripts"
+HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
+if [[ ${PV} = 9999 ]]; then
+	EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/${PN}.git"
+	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 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="build +split-usr"
+
+RDEPEND="!sys-apps/baselayout-prefix"
+
+riscv_compat_symlink() {
+	# Here we apply some special sauce for riscv.
+	# Two multilib layouts exist for now:
+	# 1) one level libdirs, (32bit) "lib" and (64bit) "lib64"
+	#    these are chosen by us to closely resemble other arches
+	# 2) two level libdirs, "lib64/lp64d" "lib64/lp64" "lib32/ilp32d" ...
+	#    this is the glibc/gcc default
+	# Unfortunately, the default has only one fallback, which is "lib"
+	# for both 32bit and 64bit. So things do not break in 1), we need
+	# to provide compatibility symlinks...
+
+	# This function has exactly two parameters:
+	# - the default libdir, to determine if 1) or 2) applies
+	# - the location of the symlink (which points to ".")
+
+	# Note: we call this only in the ${SYMLINK_LIB} = no codepath, since
+	# there never was a ${SYMLINK_LIB} = yes riscv profile.
+
+	case ${CHOST} in
+	riscv*)
+		# are we on a one level libdir profile? is there no symlink yet?
+		if [[ ${1} != */* && ! -L ${2} ]] ; then
+			ln -s . $2 || die "Unable to make $2 riscv compatibility symlink"
+		fi
+		;;
+	esac
+}
+
+# Create our multilib dirs - the Makefile has no knowledge of this
+multilib_layout() {
+	local dir def_libdir libdir libdirs
+	local prefix prefix_lst
+	def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
+	libdirs=$(get_all_libdirs)
+
+	if [[ -z "${SYMLINK_LIB}" || ${SYMLINK_LIB} = no ]] ; then
+		prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
+		for prefix in "${prefix_lst[@]}"; do
+			for libdir in ${libdirs}; do
+				dir="${prefix}${libdir}"
+				if [[ -e "${dir}" ]]; then
+					[[ ! -d "${dir}" ]] &&
+						die "${dir} exists but is not a directory"
+					continue
+				fi
+				if ! use split-usr && [[ ${prefix} = ${EROOT}/ ]]; then
+					# for the special case of riscv multilib, we drop the
+					# second part of two-component libdirs, e.g. lib64/lp64
+					libdir="${libdir%%/*}"
+					dir="${prefix}${libdir}"
+					if [[ -h "${dir}" ]] ; then
+						if use riscv ; then
+							# with riscv we get now double entries so we
+							# need to ignore already existing symlinks
+							einfo "symlink ${dir} already exists (riscv)"
+						else
+							die "symlink ${dir} already exists"
+						fi
+					else
+						einfo "symlinking ${dir} to usr/${libdir}"
+						ln -s usr/${libdir} ${dir} ||
+							die "Unable to make ${dir} symlink"
+					fi
+				else
+					einfo "creating directory ${dir}"
+					mkdir -p "${dir}" ||
+						die "Unable to create ${dir} directory"
+				fi
+			done
+			[[ -d "${prefix}${def_libdir}" ]] && riscv_compat_symlink "${def_libdir}" "${prefix}${def_libdir}/${DEFAULT_ABI}"
+		done
+		return 0
+	fi
+
+	[ -z "${def_libdir}" ] &&
+		die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
+
+	# figure out which paths should be symlinks and which should be directories
+	local dirs syms exp d
+	for libdir in ${libdirs} ; do
+		if use split-usr ; then
+			exp=( {,usr/,usr/local/}${libdir} )
+		else
+			exp=( {usr/,usr/local/}${libdir} )
+		fi
+		for d in "${exp[@]}" ; do
+			# most things should be dirs
+			if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
+				[ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
+			else
+				[ -h "${d}" ] && syms+=" ${d}"
+			fi
+		done
+	done
+	if [ -n "${syms}${dirs}" ] ; then
+		ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
+		ewarn "have these paths configured as follows:"
+		[ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
+		[ -n "${syms}" ] && ewarn "directories:${syms}"
+		ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
+		ewarn "If things fail, you will need to manually create/move the directories."
+		echo
+	fi
+
+	# setup symlinks and dirs where we expect them to be; do not migrate
+	# data ... just fall over in that case.
+	if use split-usr ; then
+		prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
+	else
+		prefix_lst=( "${EROOT}"/{usr/,usr/local/} )
+	fi
+	for prefix in "${prefix_lst[@]}"; do
+		if [ "${SYMLINK_LIB}" = yes ] ; then
+			# we need to make sure "lib" points to the native libdir
+			if [ -h "${prefix}lib" ] ; then
+				# it's already a symlink!  assume it's pointing to right place ...
+				continue
+			elif [ -d "${prefix}lib" ] ; then
+				# "lib" is a dir, so need to convert to a symlink
+				ewarn "Converting ${prefix}lib from a dir to a symlink"
+				rm -f "${prefix}lib"/.keep || die
+				if rmdir "${prefix}lib" 2>/dev/null ; then
+					ln -s ${def_libdir} "${prefix}lib" || die
+				else
+					die "non-empty dir found where we needed a symlink: ${prefix}lib"
+				fi
+			else
+				# nothing exists, so just set it up sanely
+				ewarn "Initializing ${prefix}lib as a symlink"
+				mkdir -p "${prefix}" || die
+				rm -f "${prefix}lib" || die
+				ln -s ${def_libdir} "${prefix}lib" || die
+				mkdir -p "${prefix}${def_libdir}" || die #423571
+			fi
+		else
+			# we need to make sure "lib" is a dir
+			if [ -h "${prefix}lib" ] ; then
+				# "lib" is a symlink, so need to convert to a dir
+				ewarn "Converting ${prefix}lib from a symlink to a dir"
+				rm -f "${prefix}lib" || die
+				if [ -d "${prefix}lib32" ] ; then
+					ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
+					mv "${prefix}lib32" "${prefix}lib" || die
+				else
+					mkdir -p "${prefix}lib" || die
+				fi
+			elif [ -d "${prefix}lib" ] && ! has lib32 ${libdirs} ; then
+				# make sure the old "lib" ABI location does not exist; we
+				# only symlinked the lib dir on systems where we moved it
+				# to "lib32" ...
+				case ${CHOST} in
+				i?86*|x86_64*|powerpc*|sparc*|s390*)
+					if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
+						rm -f "${prefix}lib32"/.keep || die
+						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
+							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
+							die "non-empty dir found where there should be none: ${prefix}lib32"
+						fi
+					fi
+					;;
+				esac
+			else
+				# nothing exists, so just set it up sanely
+				ewarn "Initializing ${prefix}lib as a dir"
+				mkdir -p "${prefix}lib" || die
+			fi
+		fi
+	done
+	if ! use split-usr ; then
+		for libdir in ${libdirs}; do
+			if [[ ! -e "${EROOT}${libdir}" ]]; then
+				ln -s usr/"${libdir}" "${EROOT}${libdir}" ||
+					die "Unable to make ${EROOT}${libdir} symlink"
+			fi
+		done
+	fi
+}
+
+pkg_setup() {
+	multilib_layout
+}
+
+src_prepare() {
+	default
+
+	# don't want symlinked directories in PATH on systems with usr-merge
+	if ! use split-usr && ! use prefix-guest; then
+		sed \
+			-e 's|:/usr/sbin:|:|g' \
+			-e 's|:/sbin:|:|g' \
+			-e 's|:/bin:|:|g' \
+			-i etc/env.d/50baselayout || die
+	fi
+
+	if use prefix; then
+		hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
+		hprefixify etc/shells share/passwd
+		hprefixify -w '/PATH=/' etc/env.d/50baselayout
+		hprefixify -w 1 etc/env.d/50baselayout
+		echo PATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
+		echo ROOTPATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
+		echo MANPATH=/usr/share/man >> etc/env.d/99host
+
+		# change branding
+		sed -i \
+			-e '/gentoo-release/s/Gentoo Base/Gentoo Prefix Base/' \
+			-e '/make_os_release/s/${OS}/Prefix/' \
+			Makefile || die
+	fi
+
+	# handle multilib paths.  do it here because we want this behavior
+	# regardless of the C library that you're using.  we do explicitly
+	# list paths which the native ldconfig searches, but this isn't
+	# problematic as it doesn't change the resulting ld.so.cache or
+	# take longer to generate.  similarly, listing both the native
+	# path and the symlinked path doesn't change the resulting cache.
+	local libdir ldpaths
+	for libdir in $(get_all_libdirs) ; do
+		if use split-usr || use prefix-guest; then
+			ldpaths+=":${EPREFIX}/${libdir}"
+		fi
+		ldpaths+=":${EPREFIX}/usr/${libdir}"
+		ldpaths+=":${EPREFIX}/usr/local/${libdir}"
+	done
+	echo "LDPATH='${ldpaths#:}'" >> etc/env.d/50baselayout
+}
+
+src_install() {
+	emake \
+		DESTDIR="${ED}" \
+		install
+
+	if [[ ${CHOST} == *-darwin* ]] ; then
+		# add SDK path which contains development manpages
+		echo "MANPATH=${EPREFIX}/MacOSX.sdk/usr/share/man" \
+			> "${ED}"/etc/env.d/98macos-sdk
+	fi
+
+	# need the makefile in pkg_preinst
+	insinto /usr/share/${PN}
+	doins Makefile
+
+	dodoc ChangeLog
+
+	# bug 858596
+	if use prefix-guest ; then
+		dodir sbin
+		cat > "${ED}"/sbin/runscript <<- EOF
+			#!/usr/bin/env sh
+			source "${EPREFIX}/lib/gentoo/functions.sh"
+
+			eerror "runscript/openrc-run not supported by Gentoo Prefix Base System release ${PV}" 1>&2
+			exit 1
+		EOF
+		chmod 755 "${ED}"/sbin/runscript || die
+		cp "${ED}"/sbin/{runscript,openrc-run} || die
+	fi
+}
+
+pkg_preinst() {
+	# We need to install directories and maybe some dev nodes when building
+	# stages, but they cannot be in CONTENTS.
+	# Also, we cannot reference $S as binpkg will break so we do this.
+	multilib_layout
+	if use build ; then
+		if use split-usr ; then
+			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
+		else
+			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
+		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
+}
+
+pkg_postinst() {
+	local x
+
+	# We installed some files to /usr/share/baselayout instead of /etc to stop
+	# (1) overwriting the user's settings
+	# (2) screwing things up when attempting to merge files
+	# (3) accidentally packaging up personal files with quickpkg
+	# If they don't exist then we install them
+	for x in master.passwd passwd shadow group fstab ; do
+		[ -e "${EROOT}/etc/${x}" ] && continue
+		[ -e "${EROOT}/usr/share/baselayout/${x}" ] || continue
+		cp -p "${EROOT}/usr/share/baselayout/${x}" "${EROOT}"/etc || die
+	done
+
+	# Force shadow permissions to not be world-readable #260993
+	for x in shadow ; do
+		if [ -e "${EROOT}/etc/${x}" ] ; then
+			chmod o-rwx "${EROOT}/etc/${x}" || die
+		fi
+	done
+	# whine about users that lack passwords #193541
+	if [[ -e "${EROOT}"/etc/shadow ]] ; then
+		local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
+		if [[ -n ${bad_users} ]] ; then
+			echo
+			ewarn "The following users lack passwords!"
+			ewarn ${bad_users}
+		fi
+	fi
+
+	# whine about users with invalid shells #215698
+	if [[ -e "${EROOT}"/etc/passwd ]] ; then
+		local bad_shells=$(awk -F: 'system("test -e ${ROOT}" $7) { print $1 " - " $7}' "${EROOT}"/etc/passwd | sort)
+		if [[ -n ${bad_shells} ]] ; then
+			echo
+			ewarn "The following users have non-existent shells!"
+			ewarn "${bad_shells}"
+		fi
+	fi
+
+	# https://bugs.gentoo.org/361349
+	if use kernel_linux; then
+		mkdir -p "${EROOT}"/run || die
+
+		local found fstype mountpoint
+		while read -r _ mountpoint fstype _; do
+		[[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
+		done < "${ROOT}"/proc/mounts
+		[[ -z ${found} ]] &&
+			ewarn "You should reboot now to get /run mounted with tmpfs!"
+	fi
+
+	if [[ -e "${EROOT}"/etc/env.d/00basic ]]; then
+		ewarn "${EROOT}/etc/env.d/00basic is now ${EROOT}/etc/env.d/50baselayout"
+		ewarn "Please migrate your changes."
+	fi
+}


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2024-02-15 21:17 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2024-02-15 21:17 UTC (permalink / raw
  To: gentoo-commits

commit:     95bd597b9dfba4233b591e27066466704e93236d
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Thu Feb 15 21:14:38 2024 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Thu Feb 15 21:15:22 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=95bd597b

sys-apps/baselayout: drop 2.14

Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-apps/baselayout/baselayout-2.14.ebuild | 350 -----------------------------
 1 file changed, 350 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-2.14.ebuild b/sys-apps/baselayout/baselayout-2.14.ebuild
deleted file mode 100644
index 98121cf026dd..000000000000
--- a/sys-apps/baselayout/baselayout-2.14.ebuild
+++ /dev/null
@@ -1,350 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit multilib prefix
-
-DESCRIPTION="Filesystem baselayout and init scripts"
-HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
-if [[ ${PV} = 9999 ]]; then
-	EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/${PN}.git"
-	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 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
-fi
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="build +split-usr"
-
-RDEPEND="!sys-apps/baselayout-prefix"
-
-riscv_compat_symlink() {
-	# Here we apply some special sauce for riscv.
-	# Two multilib layouts exist for now:
-	# 1) one level libdirs, (32bit) "lib" and (64bit) "lib64"
-	#    these are chosen by us to closely resemble other arches
-	# 2) two level libdirs, "lib64/lp64d" "lib64/lp64" "lib32/ilp32d" ...
-	#    this is the glibc/gcc default
-	# Unfortunately, the default has only one fallback, which is "lib"
-	# for both 32bit and 64bit. So things do not break in 1), we need
-	# to provide compatibility symlinks...
-
-	# This function has exactly two parameters:
-	# - the default libdir, to determine if 1) or 2) applies
-	# - the location of the symlink (which points to ".")
-
-	# Note: we call this only in the ${SYMLINK_LIB} = no codepath, since
-	# there never was a ${SYMLINK_LIB} = yes riscv profile.
-
-	case ${CHOST} in
-	riscv*)
-		# are we on a one level libdir profile? is there no symlink yet?
-		if [[ ${1} != */* && ! -L ${2} ]] ; then
-			ln -s . $2 || die "Unable to make $2 riscv compatibility symlink"
-		fi
-		;;
-	esac
-}
-
-# Create our multilib dirs - the Makefile has no knowledge of this
-multilib_layout() {
-	local dir def_libdir libdir libdirs
-	local prefix prefix_lst
-	def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
-	libdirs=$(get_all_libdirs)
-
-	if [[ -z "${SYMLINK_LIB}" || ${SYMLINK_LIB} = no ]] ; then
-		prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
-		for prefix in "${prefix_lst[@]}"; do
-			for libdir in ${libdirs}; do
-				dir="${prefix}${libdir}"
-				if [[ -e "${dir}" ]]; then
-					[[ ! -d "${dir}" ]] &&
-						die "${dir} exists but is not a directory"
-					continue
-				fi
-				if ! use split-usr && [[ ${prefix} = ${EROOT}/ ]]; then
-					libdir="${libdir%%/*}"
-					dir="${prefix}${libdir}"
-					einfo "symlinking ${dir} to usr/${libdir}"
-					ln -s usr/${libdir} ${dir} ||
-						die "Unable to make ${dir} symlink"
-				else
-					einfo "creating directory ${dir}"
-					mkdir -p "${dir}" ||
-						die "Unable to create ${dir} directory"
-				fi
-			done
-			[[ -d "${prefix}${def_libdir}" ]] && riscv_compat_symlink "${def_libdir}" "${prefix}${def_libdir}/${DEFAULT_ABI}"
-		done
-		return 0
-	fi
-
-	[ -z "${def_libdir}" ] &&
-		die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
-
-	# figure out which paths should be symlinks and which should be directories
-	local dirs syms exp d
-	for libdir in ${libdirs} ; do
-		if use split-usr ; then
-			exp=( {,usr/,usr/local/}${libdir} )
-		else
-			exp=( {usr/,usr/local/}${libdir} )
-		fi
-		for d in "${exp[@]}" ; do
-			# most things should be dirs
-			if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
-				[ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
-			else
-				[ -h "${d}" ] && syms+=" ${d}"
-			fi
-		done
-	done
-	if [ -n "${syms}${dirs}" ] ; then
-		ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
-		ewarn "have these paths configured as follows:"
-		[ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
-		[ -n "${syms}" ] && ewarn "directories:${syms}"
-		ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
-		ewarn "If things fail, you will need to manually create/move the directories."
-		echo
-	fi
-
-	# setup symlinks and dirs where we expect them to be; do not migrate
-	# data ... just fall over in that case.
-	if use split-usr ; then
-		prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
-	else
-		prefix_lst=( "${EROOT}"/{usr/,usr/local/} )
-	fi
-	for prefix in "${prefix_lst[@]}"; do
-		if [ "${SYMLINK_LIB}" = yes ] ; then
-			# we need to make sure "lib" points to the native libdir
-			if [ -h "${prefix}lib" ] ; then
-				# it's already a symlink!  assume it's pointing to right place ...
-				continue
-			elif [ -d "${prefix}lib" ] ; then
-				# "lib" is a dir, so need to convert to a symlink
-				ewarn "Converting ${prefix}lib from a dir to a symlink"
-				rm -f "${prefix}lib"/.keep || die
-				if rmdir "${prefix}lib" 2>/dev/null ; then
-					ln -s ${def_libdir} "${prefix}lib" || die
-				else
-					die "non-empty dir found where we needed a symlink: ${prefix}lib"
-				fi
-			else
-				# nothing exists, so just set it up sanely
-				ewarn "Initializing ${prefix}lib as a symlink"
-				mkdir -p "${prefix}" || die
-				rm -f "${prefix}lib" || die
-				ln -s ${def_libdir} "${prefix}lib" || die
-				mkdir -p "${prefix}${def_libdir}" || die #423571
-			fi
-		else
-			# we need to make sure "lib" is a dir
-			if [ -h "${prefix}lib" ] ; then
-				# "lib" is a symlink, so need to convert to a dir
-				ewarn "Converting ${prefix}lib from a symlink to a dir"
-				rm -f "${prefix}lib" || die
-				if [ -d "${prefix}lib32" ] ; then
-					ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
-					mv "${prefix}lib32" "${prefix}lib" || die
-				else
-					mkdir -p "${prefix}lib" || die
-				fi
-			elif [ -d "${prefix}lib" ] && ! has lib32 ${libdirs} ; then
-				# make sure the old "lib" ABI location does not exist; we
-				# only symlinked the lib dir on systems where we moved it
-				# to "lib32" ...
-				case ${CHOST} in
-				i?86*|x86_64*|powerpc*|sparc*|s390*)
-					if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
-						rm -f "${prefix}lib32"/.keep || die
-						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
-							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
-							die "non-empty dir found where there should be none: ${prefix}lib32"
-						fi
-					fi
-					;;
-				esac
-			else
-				# nothing exists, so just set it up sanely
-				ewarn "Initializing ${prefix}lib as a dir"
-				mkdir -p "${prefix}lib" || die
-			fi
-		fi
-	done
-	if ! use split-usr ; then
-		for libdir in ${libdirs}; do
-			if [[ ! -e "${EROOT}${libdir}" ]]; then
-				ln -s usr/"${libdir}" "${EROOT}${libdir}" ||
-					die "Unable to make ${EROOT}${libdir} symlink"
-			fi
-		done
-	fi
-}
-
-pkg_setup() {
-	multilib_layout
-}
-
-src_prepare() {
-	default
-
-	# don't want symlinked directories in PATH on systems with usr-merge
-	if ! use split-usr && ! use prefix-guest; then
-		sed \
-			-e 's|:/usr/sbin:|:|g' \
-			-e 's|:/sbin:|:|g' \
-			-e 's|:/bin:|:|g' \
-			-i etc/env.d/50baselayout || die
-	fi
-
-	if use prefix; then
-		hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
-		hprefixify etc/shells share/passwd
-		hprefixify -w '/PATH=/' etc/env.d/50baselayout
-		hprefixify -w 1 etc/env.d/50baselayout
-		echo PATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
-
-		# change branding
-		sed -i \
-			-e '/gentoo-release/s/Gentoo Base/Gentoo Prefix Base/' \
-			-e '/make_os_release/s/${OS}/Prefix/' \
-			Makefile || die
-	fi
-
-	# handle multilib paths.  do it here because we want this behavior
-	# regardless of the C library that you're using.  we do explicitly
-	# list paths which the native ldconfig searches, but this isn't
-	# problematic as it doesn't change the resulting ld.so.cache or
-	# take longer to generate.  similarly, listing both the native
-	# path and the symlinked path doesn't change the resulting cache.
-	local libdir ldpaths
-	for libdir in $(get_all_libdirs) ; do
-		if use split-usr || use prefix-guest; then
-			ldpaths+=":${EPREFIX}/${libdir}"
-		fi
-		ldpaths+=":${EPREFIX}/usr/${libdir}"
-		ldpaths+=":${EPREFIX}/usr/local/${libdir}"
-	done
-	echo "LDPATH='${ldpaths#:}'" >> etc/env.d/50baselayout
-}
-
-src_install() {
-	emake \
-		DESTDIR="${ED}" \
-		install
-
-	if [[ ${CHOST} == *-darwin* ]] ; then
-		# add SDK path which contains development manpages
-		echo "MANPATH=${EPREFIX}/MacOSX.sdk/usr/share/man" \
-			> "${ED}"/etc/env.d/98macos-sdk
-	fi
-
-	# need the makefile in pkg_preinst
-	insinto /usr/share/${PN}
-	doins Makefile
-
-	dodoc ChangeLog
-
-	# bug 858596
-	if use prefix-guest ; then
-		dodir sbin
-		cat > "${ED}"/sbin/runscript <<- EOF
-			#!/usr/bin/env sh
-			source "${EPREFIX}/lib/gentoo/functions.sh"
-
-			eerror "runscript/openrc-run not supported by Gentoo Prefix Base System release ${PV}" 1>&2
-			exit 1
-		EOF
-		chmod 755 "${ED}"/sbin/runscript || die
-		cp "${ED}"/sbin/{runscript,openrc-run} || die
-	fi
-}
-
-pkg_preinst() {
-	# We need to install directories and maybe some dev nodes when building
-	# stages, but they cannot be in CONTENTS.
-	# Also, we cannot reference $S as binpkg will break so we do this.
-	multilib_layout
-	if use build ; then
-		if use split-usr ; then
-			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
-		else
-			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
-		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
-}
-
-pkg_postinst() {
-	local x
-
-	# We installed some files to /usr/share/baselayout instead of /etc to stop
-	# (1) overwriting the user's settings
-	# (2) screwing things up when attempting to merge files
-	# (3) accidentally packaging up personal files with quickpkg
-	# If they don't exist then we install them
-	for x in master.passwd passwd shadow group fstab ; do
-		[ -e "${EROOT}/etc/${x}" ] && continue
-		[ -e "${EROOT}/usr/share/baselayout/${x}" ] || continue
-		cp -p "${EROOT}/usr/share/baselayout/${x}" "${EROOT}"/etc || die
-	done
-
-	# Force shadow permissions to not be world-readable #260993
-	for x in shadow ; do
-		if [ -e "${EROOT}/etc/${x}" ] ; then
-			chmod o-rwx "${EROOT}/etc/${x}" || die
-		fi
-	done
-	# whine about users that lack passwords #193541
-	if [[ -e "${EROOT}"/etc/shadow ]] ; then
-		local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
-		if [[ -n ${bad_users} ]] ; then
-			echo
-			ewarn "The following users lack passwords!"
-			ewarn ${bad_users}
-		fi
-	fi
-
-	# whine about users with invalid shells #215698
-	if [[ -e "${EROOT}"/etc/passwd ]] ; then
-		local bad_shells=$(awk -F: 'system("test -e ${ROOT}" $7) { print $1 " - " $7}' "${EROOT}"/etc/passwd | sort)
-		if [[ -n ${bad_shells} ]] ; then
-			echo
-			ewarn "The following users have non-existent shells!"
-			ewarn "${bad_shells}"
-		fi
-	fi
-
-	# https://bugs.gentoo.org/361349
-	if use kernel_linux; then
-		mkdir -p "${EROOT}"/run || die
-
-		local found fstype mountpoint
-		while read -r _ mountpoint fstype _; do
-		[[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
-		done < "${ROOT}"/proc/mounts
-		[[ -z ${found} ]] &&
-			ewarn "You should reboot now to get /run mounted with tmpfs!"
-	fi
-
-	if [[ -e "${EROOT}"/etc/env.d/00basic ]]; then
-		ewarn "${EROOT}/etc/env.d/00basic is now ${EROOT}/etc/env.d/50baselayout"
-		ewarn "Please migrate your changes."
-	fi
-}


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2024-02-09 12:18 Andreas K. Hüttel
  0 siblings, 0 replies; 124+ messages in thread
From: Andreas K. Hüttel @ 2024-02-09 12:18 UTC (permalink / raw
  To: gentoo-commits

commit:     652b5e27bb7c15574678d9cd837f6e24639e713b
Author:     Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Fri Feb  9 12:16:31 2024 +0000
Commit:     Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Fri Feb  9 12:16:31 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=652b5e27

sys-apps/baselayout: Add bugfix for riscv multilib stage builds

Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>

 ...elayout-9999.ebuild => baselayout-2.14-r3.ebuild} | 20 ++++++++++++++++----
 sys-apps/baselayout/baselayout-9999.ebuild           | 18 +++++++++++++++---
 2 files changed, 31 insertions(+), 7 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-2.14-r3.ebuild
similarity index 95%
copy from sys-apps/baselayout/baselayout-9999.ebuild
copy to sys-apps/baselayout/baselayout-2.14-r3.ebuild
index 76beeff5aac8..820c4f714c44 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-2.14-r3.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 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+	KEYWORDS="~riscv"
 fi
 
 LICENSE="GPL-2"
@@ -67,11 +67,23 @@ multilib_layout() {
 					continue
 				fi
 				if ! use split-usr && [[ ${prefix} = ${EROOT}/ ]]; then
+					# for the special case of riscv multilib, we drop the
+					# second part of two-component libdirs, e.g. lib64/lp64
 					libdir="${libdir%%/*}"
 					dir="${prefix}${libdir}"
-					einfo "symlinking ${dir} to usr/${libdir}"
-					ln -s usr/${libdir} ${dir} ||
-						die "Unable to make ${dir} symlink"
+					if [[ -h "${dir}" ]] ; then
+						if use riscv ; then
+							# with riscv we get now double entries so we
+							# need to ignore already existing symlinks
+							einfo "symlink ${dir} already exists (riscv)"
+						else
+							die "symlink ${dir} already exists"
+						fi
+					else
+						einfo "symlinking ${dir} to usr/${libdir}"
+						ln -s usr/${libdir} ${dir} ||
+							die "Unable to make ${dir} symlink"
+					fi
 				else
 					einfo "creating directory ${dir}"
 					mkdir -p "${dir}" ||

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
index 76beeff5aac8..8dfcf1d42876 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-9999.ebuild
@@ -67,11 +67,23 @@ multilib_layout() {
 					continue
 				fi
 				if ! use split-usr && [[ ${prefix} = ${EROOT}/ ]]; then
+					# for the special case of riscv multilib, we drop the
+					# second part of two-component libdirs, e.g. lib64/lp64
 					libdir="${libdir%%/*}"
 					dir="${prefix}${libdir}"
-					einfo "symlinking ${dir} to usr/${libdir}"
-					ln -s usr/${libdir} ${dir} ||
-						die "Unable to make ${dir} symlink"
+					if [[ -h "${dir}" ]] ; then
+						if use riscv ; then
+							# with riscv we get now double entries so we
+							# need to ignore already existing symlinks
+							einfo "symlink ${dir} already exists (riscv)"
+						else
+							die "symlink ${dir} already exists"
+						fi
+					else
+						einfo "symlinking ${dir} to usr/${libdir}"
+						ln -s usr/${libdir} ${dir} ||
+							die "Unable to make ${dir} symlink"
+					fi
 				else
 					einfo "creating directory ${dir}"
 					mkdir -p "${dir}" ||


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2024-02-08 17:37 Mike Gilbert
  0 siblings, 0 replies; 124+ messages in thread
From: Mike Gilbert @ 2024-02-08 17:37 UTC (permalink / raw
  To: gentoo-commits

commit:     2334eb2d0b76ee113e0bf438c6e719a90c95b235
Author:     Yiyang Wu <xgreenlandforwyy <AT> gmail <DOT> com>
AuthorDate: Thu Feb  8 07:39:02 2024 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Thu Feb  8 17:36:16 2024 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2334eb2d

sys-apps/baselayout: ROOTPATH should have host paths on Prefix

Same as PATH, ROOTPATH should be modified to contain host paths. This
fixes app-shells/zsh not having host paths when EUID=1000 or root user,
because it sets ROOTPATH as PATH in /etc/zsh/zprofile, which make zsh's
behavior align with bash.

Closes: https://bugs.gentoo.org/924032
Signed-off-by: Yiyang Wu <xgreenlandforwyy <AT> gmail.com>
Closes: https://github.com/gentoo/gentoo/pull/35225
Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>

 .../{baselayout-2.14-r1.ebuild => baselayout-2.14-r2.ebuild}           | 3 ++-
 sys-apps/baselayout/baselayout-9999.ebuild                             | 3 ++-
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-2.14-r1.ebuild b/sys-apps/baselayout/baselayout-2.14-r2.ebuild
similarity index 99%
rename from sys-apps/baselayout/baselayout-2.14-r1.ebuild
rename to sys-apps/baselayout/baselayout-2.14-r2.ebuild
index d95e2efe9ff4..72bb2496fd2d 100644
--- a/sys-apps/baselayout/baselayout-2.14-r1.ebuild
+++ b/sys-apps/baselayout/baselayout-2.14-r2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=7
@@ -209,6 +209,7 @@ src_prepare() {
 		hprefixify -w '/PATH=/' etc/env.d/50baselayout
 		hprefixify -w 1 etc/env.d/50baselayout
 		echo PATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
+		echo ROOTPATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
 		echo MANPATH=/usr/share/man >> etc/env.d/99host
 
 		# change branding

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
index b1f52aa3baa7..76beeff5aac8 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=7
@@ -209,6 +209,7 @@ src_prepare() {
 		hprefixify -w '/PATH=/' etc/env.d/50baselayout
 		hprefixify -w 1 etc/env.d/50baselayout
 		echo PATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
+		echo ROOTPATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
 		echo MANPATH=/usr/share/man >> etc/env.d/99host
 
 		# change branding


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2023-12-15  7:14 Sam James
  0 siblings, 0 replies; 124+ messages in thread
From: Sam James @ 2023-12-15  7:14 UTC (permalink / raw
  To: gentoo-commits

commit:     149c3e87635361615ebc1fe8934252ccecb0c198
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Fri Dec 15 07:13:24 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Fri Dec 15 07:13:24 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=149c3e87

sys-apps/baselayout: Stabilize 2.14-r1 ALLARCHES, #919951

Signed-off-by: Sam James <sam <AT> gentoo.org>

 sys-apps/baselayout/baselayout-2.14-r1.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys-apps/baselayout/baselayout-2.14-r1.ebuild b/sys-apps/baselayout/baselayout-2.14-r1.ebuild
index b1f52aa3baa7..d95e2efe9ff4 100644
--- a/sys-apps/baselayout/baselayout-2.14-r1.ebuild
+++ b/sys-apps/baselayout/baselayout-2.14-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 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+	KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
 fi
 
 LICENSE="GPL-2"


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2023-11-12 10:38 Fabian Groffen
  0 siblings, 0 replies; 124+ messages in thread
From: Fabian Groffen @ 2023-11-12 10:38 UTC (permalink / raw
  To: gentoo-commits

commit:     31d50df80c6df2ec3da32b17c54559a8c1023051
Author:     Fabian Groffen <grobian <AT> gentoo <DOT> org>
AuthorDate: Sun Nov 12 10:36:32 2023 +0000
Commit:     Fabian Groffen <grobian <AT> gentoo <DOT> org>
CommitDate: Sun Nov 12 10:36:32 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=31d50df8

sys-apps/baselayout: ensure MANPATH contains host pages on Prefix

etc/man_db.conf's MANPATH is overriden by env MANPATH, which we set by
default in Gentoo, generated from env.d.  In order to make system
manpages available in Prefix, ensure /usr/share/man appears in MANPATH
as last entry.

Signed-off-by: Fabian Groffen <grobian <AT> gentoo.org>

 .../baselayout/{baselayout-9999.ebuild => baselayout-2.14-r1.ebuild}     | 1 +
 sys-apps/baselayout/baselayout-9999.ebuild                               | 1 +
 2 files changed, 2 insertions(+)

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-2.14-r1.ebuild
similarity index 99%
copy from sys-apps/baselayout/baselayout-9999.ebuild
copy to sys-apps/baselayout/baselayout-2.14-r1.ebuild
index 9e5d229d2ea4..b1f52aa3baa7 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-2.14-r1.ebuild
@@ -209,6 +209,7 @@ src_prepare() {
 		hprefixify -w '/PATH=/' etc/env.d/50baselayout
 		hprefixify -w 1 etc/env.d/50baselayout
 		echo PATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
+		echo MANPATH=/usr/share/man >> etc/env.d/99host
 
 		# change branding
 		sed -i \

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
index 9e5d229d2ea4..b1f52aa3baa7 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-9999.ebuild
@@ -209,6 +209,7 @@ src_prepare() {
 		hprefixify -w '/PATH=/' etc/env.d/50baselayout
 		hprefixify -w 1 etc/env.d/50baselayout
 		echo PATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
+		echo MANPATH=/usr/share/man >> etc/env.d/99host
 
 		# change branding
 		sed -i \


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2023-08-22 16:09 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2023-08-22 16:09 UTC (permalink / raw
  To: gentoo-commits

commit:     e0a880ff74077542a5948257e43af4a3251e0abd
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 22 16:09:49 2023 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Tue Aug 22 16:09:49 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e0a880ff

sys-apps/baselayout: sync live

Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-apps/baselayout/baselayout-9999.ebuild | 17 -----------------
 1 file changed, 17 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
index a588c68f51e9..9e5d229d2ea4 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-9999.ebuild
@@ -343,23 +343,6 @@ pkg_postinst() {
 			ewarn "You should reboot now to get /run mounted with tmpfs!"
 	fi
 
-	for x in ${REPLACING_VERSIONS}; do
-		if ver_test 2.4 -lt ${x}; then
-			ewarn "After updating ${EROOT}/etc/profile, please run"
-			ewarn "env-update && . /etc/profile"
-		fi
-
-		if ver_test 2.6 -lt ${x}; then
-			ewarn "Please run env-update then log out and back in to"
-			ewarn "update your path."
-		fi
-		# clean up after 2.5 typos
-		# https://bugs.gentoo.org/show_bug.cgi?id=656380
-		if [[ ${x} == 2.5 ]]; then
-			rm -fr "${EROOT}/{,usr" || die
-		fi
-	done
-
 	if [[ -e "${EROOT}"/etc/env.d/00basic ]]; then
 		ewarn "${EROOT}/etc/env.d/00basic is now ${EROOT}/etc/env.d/50baselayout"
 		ewarn "Please migrate your changes."


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2023-08-22 16:09 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2023-08-22 16:09 UTC (permalink / raw
  To: gentoo-commits

commit:     8f7e0b6ef89d51d7b8b06866d4343765d0bc9f91
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Tue Aug 22 16:09:49 2023 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Tue Aug 22 16:09:49 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8f7e0b6e

sys-apps/baselayout: remove 2.4 and 2.6 migration code

Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-apps/baselayout/baselayout-2.14.ebuild | 17 -----------------
 1 file changed, 17 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-2.14.ebuild b/sys-apps/baselayout/baselayout-2.14.ebuild
index 8cc92f9d92cc..98121cf026dd 100644
--- a/sys-apps/baselayout/baselayout-2.14.ebuild
+++ b/sys-apps/baselayout/baselayout-2.14.ebuild
@@ -343,23 +343,6 @@ pkg_postinst() {
 			ewarn "You should reboot now to get /run mounted with tmpfs!"
 	fi
 
-	for x in ${REPLACING_VERSIONS}; do
-		if ver_test 2.4 -lt ${x}; then
-			ewarn "After updating ${EROOT}/etc/profile, please run"
-			ewarn "env-update && . /etc/profile"
-		fi
-
-		if ver_test 2.6 -lt ${x}; then
-			ewarn "Please run env-update then log out and back in to"
-			ewarn "update your path."
-		fi
-		# clean up after 2.5 typos
-		# https://bugs.gentoo.org/show_bug.cgi?id=656380
-		if [[ ${x} == 2.5 ]]; then
-			rm -fr "${EROOT}/{,usr" || die
-		fi
-	done
-
 	if [[ -e "${EROOT}"/etc/env.d/00basic ]]; then
 		ewarn "${EROOT}/etc/env.d/00basic is now ${EROOT}/etc/env.d/50baselayout"
 		ewarn "Please migrate your changes."


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2023-08-21 22:47 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2023-08-21 22:47 UTC (permalink / raw
  To: gentoo-commits

commit:     7d0228b796b1322e05ebc29a355d0f51d86edc37
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Mon Aug 21 22:46:48 2023 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Mon Aug 21 22:47:17 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7d0228b7

sys-apps/baselayout: drop 2.13-r1

Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-apps/baselayout/Manifest                  |   1 -
 sys-apps/baselayout/baselayout-2.13-r1.ebuild | 367 --------------------------
 2 files changed, 368 deletions(-)

diff --git a/sys-apps/baselayout/Manifest b/sys-apps/baselayout/Manifest
index 8f24feb7c25e..91204109c0f5 100644
--- a/sys-apps/baselayout/Manifest
+++ b/sys-apps/baselayout/Manifest
@@ -1,2 +1 @@
-DIST baselayout-2.13.tar.bz2 29423 BLAKE2B a399e515297d3a936c5821205f1f0d6de844580099936be50e80a463b9fa6239aead52b7b371136680e263e326f7e6a1faea8cd8db0f11462cf0e8166707fc91 SHA512 ff16f20cf2c65258ab6d48c403607113f84fc57ffee6650652202746095f402f8c6a4f22040d0bb9310180945131bed6a0fda3717b39080a987e4f5224339095
 DIST baselayout-2.14.tar.bz2 30182 BLAKE2B c5f67795233e565c2c75c97a55c000aec98e901bb0a25f1aeb52b01b44d7c09bfc6e67813234629ca71ff32d603e82ada8e66e5ab6007fa0664b95367256320d SHA512 bffd118f5e92975b9247d854fc5683a311dbcd03efa37a13dfd05d04e92a6e784858d3a55aa689f782229afc5985e829eb332c08a79eed081bf0a47720ca7e8a

diff --git a/sys-apps/baselayout/baselayout-2.13-r1.ebuild b/sys-apps/baselayout/baselayout-2.13-r1.ebuild
deleted file mode 100644
index 8cc92f9d92cc..000000000000
--- a/sys-apps/baselayout/baselayout-2.13-r1.ebuild
+++ /dev/null
@@ -1,367 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit multilib prefix
-
-DESCRIPTION="Filesystem baselayout and init scripts"
-HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
-if [[ ${PV} = 9999 ]]; then
-	EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/${PN}.git"
-	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 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
-fi
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="build +split-usr"
-
-RDEPEND="!sys-apps/baselayout-prefix"
-
-riscv_compat_symlink() {
-	# Here we apply some special sauce for riscv.
-	# Two multilib layouts exist for now:
-	# 1) one level libdirs, (32bit) "lib" and (64bit) "lib64"
-	#    these are chosen by us to closely resemble other arches
-	# 2) two level libdirs, "lib64/lp64d" "lib64/lp64" "lib32/ilp32d" ...
-	#    this is the glibc/gcc default
-	# Unfortunately, the default has only one fallback, which is "lib"
-	# for both 32bit and 64bit. So things do not break in 1), we need
-	# to provide compatibility symlinks...
-
-	# This function has exactly two parameters:
-	# - the default libdir, to determine if 1) or 2) applies
-	# - the location of the symlink (which points to ".")
-
-	# Note: we call this only in the ${SYMLINK_LIB} = no codepath, since
-	# there never was a ${SYMLINK_LIB} = yes riscv profile.
-
-	case ${CHOST} in
-	riscv*)
-		# are we on a one level libdir profile? is there no symlink yet?
-		if [[ ${1} != */* && ! -L ${2} ]] ; then
-			ln -s . $2 || die "Unable to make $2 riscv compatibility symlink"
-		fi
-		;;
-	esac
-}
-
-# Create our multilib dirs - the Makefile has no knowledge of this
-multilib_layout() {
-	local dir def_libdir libdir libdirs
-	local prefix prefix_lst
-	def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
-	libdirs=$(get_all_libdirs)
-
-	if [[ -z "${SYMLINK_LIB}" || ${SYMLINK_LIB} = no ]] ; then
-		prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
-		for prefix in "${prefix_lst[@]}"; do
-			for libdir in ${libdirs}; do
-				dir="${prefix}${libdir}"
-				if [[ -e "${dir}" ]]; then
-					[[ ! -d "${dir}" ]] &&
-						die "${dir} exists but is not a directory"
-					continue
-				fi
-				if ! use split-usr && [[ ${prefix} = ${EROOT}/ ]]; then
-					libdir="${libdir%%/*}"
-					dir="${prefix}${libdir}"
-					einfo "symlinking ${dir} to usr/${libdir}"
-					ln -s usr/${libdir} ${dir} ||
-						die "Unable to make ${dir} symlink"
-				else
-					einfo "creating directory ${dir}"
-					mkdir -p "${dir}" ||
-						die "Unable to create ${dir} directory"
-				fi
-			done
-			[[ -d "${prefix}${def_libdir}" ]] && riscv_compat_symlink "${def_libdir}" "${prefix}${def_libdir}/${DEFAULT_ABI}"
-		done
-		return 0
-	fi
-
-	[ -z "${def_libdir}" ] &&
-		die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
-
-	# figure out which paths should be symlinks and which should be directories
-	local dirs syms exp d
-	for libdir in ${libdirs} ; do
-		if use split-usr ; then
-			exp=( {,usr/,usr/local/}${libdir} )
-		else
-			exp=( {usr/,usr/local/}${libdir} )
-		fi
-		for d in "${exp[@]}" ; do
-			# most things should be dirs
-			if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
-				[ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
-			else
-				[ -h "${d}" ] && syms+=" ${d}"
-			fi
-		done
-	done
-	if [ -n "${syms}${dirs}" ] ; then
-		ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
-		ewarn "have these paths configured as follows:"
-		[ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
-		[ -n "${syms}" ] && ewarn "directories:${syms}"
-		ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
-		ewarn "If things fail, you will need to manually create/move the directories."
-		echo
-	fi
-
-	# setup symlinks and dirs where we expect them to be; do not migrate
-	# data ... just fall over in that case.
-	if use split-usr ; then
-		prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
-	else
-		prefix_lst=( "${EROOT}"/{usr/,usr/local/} )
-	fi
-	for prefix in "${prefix_lst[@]}"; do
-		if [ "${SYMLINK_LIB}" = yes ] ; then
-			# we need to make sure "lib" points to the native libdir
-			if [ -h "${prefix}lib" ] ; then
-				# it's already a symlink!  assume it's pointing to right place ...
-				continue
-			elif [ -d "${prefix}lib" ] ; then
-				# "lib" is a dir, so need to convert to a symlink
-				ewarn "Converting ${prefix}lib from a dir to a symlink"
-				rm -f "${prefix}lib"/.keep || die
-				if rmdir "${prefix}lib" 2>/dev/null ; then
-					ln -s ${def_libdir} "${prefix}lib" || die
-				else
-					die "non-empty dir found where we needed a symlink: ${prefix}lib"
-				fi
-			else
-				# nothing exists, so just set it up sanely
-				ewarn "Initializing ${prefix}lib as a symlink"
-				mkdir -p "${prefix}" || die
-				rm -f "${prefix}lib" || die
-				ln -s ${def_libdir} "${prefix}lib" || die
-				mkdir -p "${prefix}${def_libdir}" || die #423571
-			fi
-		else
-			# we need to make sure "lib" is a dir
-			if [ -h "${prefix}lib" ] ; then
-				# "lib" is a symlink, so need to convert to a dir
-				ewarn "Converting ${prefix}lib from a symlink to a dir"
-				rm -f "${prefix}lib" || die
-				if [ -d "${prefix}lib32" ] ; then
-					ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
-					mv "${prefix}lib32" "${prefix}lib" || die
-				else
-					mkdir -p "${prefix}lib" || die
-				fi
-			elif [ -d "${prefix}lib" ] && ! has lib32 ${libdirs} ; then
-				# make sure the old "lib" ABI location does not exist; we
-				# only symlinked the lib dir on systems where we moved it
-				# to "lib32" ...
-				case ${CHOST} in
-				i?86*|x86_64*|powerpc*|sparc*|s390*)
-					if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
-						rm -f "${prefix}lib32"/.keep || die
-						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
-							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
-							die "non-empty dir found where there should be none: ${prefix}lib32"
-						fi
-					fi
-					;;
-				esac
-			else
-				# nothing exists, so just set it up sanely
-				ewarn "Initializing ${prefix}lib as a dir"
-				mkdir -p "${prefix}lib" || die
-			fi
-		fi
-	done
-	if ! use split-usr ; then
-		for libdir in ${libdirs}; do
-			if [[ ! -e "${EROOT}${libdir}" ]]; then
-				ln -s usr/"${libdir}" "${EROOT}${libdir}" ||
-					die "Unable to make ${EROOT}${libdir} symlink"
-			fi
-		done
-	fi
-}
-
-pkg_setup() {
-	multilib_layout
-}
-
-src_prepare() {
-	default
-
-	# don't want symlinked directories in PATH on systems with usr-merge
-	if ! use split-usr && ! use prefix-guest; then
-		sed \
-			-e 's|:/usr/sbin:|:|g' \
-			-e 's|:/sbin:|:|g' \
-			-e 's|:/bin:|:|g' \
-			-i etc/env.d/50baselayout || die
-	fi
-
-	if use prefix; then
-		hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
-		hprefixify etc/shells share/passwd
-		hprefixify -w '/PATH=/' etc/env.d/50baselayout
-		hprefixify -w 1 etc/env.d/50baselayout
-		echo PATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
-
-		# change branding
-		sed -i \
-			-e '/gentoo-release/s/Gentoo Base/Gentoo Prefix Base/' \
-			-e '/make_os_release/s/${OS}/Prefix/' \
-			Makefile || die
-	fi
-
-	# handle multilib paths.  do it here because we want this behavior
-	# regardless of the C library that you're using.  we do explicitly
-	# list paths which the native ldconfig searches, but this isn't
-	# problematic as it doesn't change the resulting ld.so.cache or
-	# take longer to generate.  similarly, listing both the native
-	# path and the symlinked path doesn't change the resulting cache.
-	local libdir ldpaths
-	for libdir in $(get_all_libdirs) ; do
-		if use split-usr || use prefix-guest; then
-			ldpaths+=":${EPREFIX}/${libdir}"
-		fi
-		ldpaths+=":${EPREFIX}/usr/${libdir}"
-		ldpaths+=":${EPREFIX}/usr/local/${libdir}"
-	done
-	echo "LDPATH='${ldpaths#:}'" >> etc/env.d/50baselayout
-}
-
-src_install() {
-	emake \
-		DESTDIR="${ED}" \
-		install
-
-	if [[ ${CHOST} == *-darwin* ]] ; then
-		# add SDK path which contains development manpages
-		echo "MANPATH=${EPREFIX}/MacOSX.sdk/usr/share/man" \
-			> "${ED}"/etc/env.d/98macos-sdk
-	fi
-
-	# need the makefile in pkg_preinst
-	insinto /usr/share/${PN}
-	doins Makefile
-
-	dodoc ChangeLog
-
-	# bug 858596
-	if use prefix-guest ; then
-		dodir sbin
-		cat > "${ED}"/sbin/runscript <<- EOF
-			#!/usr/bin/env sh
-			source "${EPREFIX}/lib/gentoo/functions.sh"
-
-			eerror "runscript/openrc-run not supported by Gentoo Prefix Base System release ${PV}" 1>&2
-			exit 1
-		EOF
-		chmod 755 "${ED}"/sbin/runscript || die
-		cp "${ED}"/sbin/{runscript,openrc-run} || die
-	fi
-}
-
-pkg_preinst() {
-	# We need to install directories and maybe some dev nodes when building
-	# stages, but they cannot be in CONTENTS.
-	# Also, we cannot reference $S as binpkg will break so we do this.
-	multilib_layout
-	if use build ; then
-		if use split-usr ; then
-			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
-		else
-			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
-		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
-}
-
-pkg_postinst() {
-	local x
-
-	# We installed some files to /usr/share/baselayout instead of /etc to stop
-	# (1) overwriting the user's settings
-	# (2) screwing things up when attempting to merge files
-	# (3) accidentally packaging up personal files with quickpkg
-	# If they don't exist then we install them
-	for x in master.passwd passwd shadow group fstab ; do
-		[ -e "${EROOT}/etc/${x}" ] && continue
-		[ -e "${EROOT}/usr/share/baselayout/${x}" ] || continue
-		cp -p "${EROOT}/usr/share/baselayout/${x}" "${EROOT}"/etc || die
-	done
-
-	# Force shadow permissions to not be world-readable #260993
-	for x in shadow ; do
-		if [ -e "${EROOT}/etc/${x}" ] ; then
-			chmod o-rwx "${EROOT}/etc/${x}" || die
-		fi
-	done
-	# whine about users that lack passwords #193541
-	if [[ -e "${EROOT}"/etc/shadow ]] ; then
-		local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
-		if [[ -n ${bad_users} ]] ; then
-			echo
-			ewarn "The following users lack passwords!"
-			ewarn ${bad_users}
-		fi
-	fi
-
-	# whine about users with invalid shells #215698
-	if [[ -e "${EROOT}"/etc/passwd ]] ; then
-		local bad_shells=$(awk -F: 'system("test -e ${ROOT}" $7) { print $1 " - " $7}' "${EROOT}"/etc/passwd | sort)
-		if [[ -n ${bad_shells} ]] ; then
-			echo
-			ewarn "The following users have non-existent shells!"
-			ewarn "${bad_shells}"
-		fi
-	fi
-
-	# https://bugs.gentoo.org/361349
-	if use kernel_linux; then
-		mkdir -p "${EROOT}"/run || die
-
-		local found fstype mountpoint
-		while read -r _ mountpoint fstype _; do
-		[[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
-		done < "${ROOT}"/proc/mounts
-		[[ -z ${found} ]] &&
-			ewarn "You should reboot now to get /run mounted with tmpfs!"
-	fi
-
-	for x in ${REPLACING_VERSIONS}; do
-		if ver_test 2.4 -lt ${x}; then
-			ewarn "After updating ${EROOT}/etc/profile, please run"
-			ewarn "env-update && . /etc/profile"
-		fi
-
-		if ver_test 2.6 -lt ${x}; then
-			ewarn "Please run env-update then log out and back in to"
-			ewarn "update your path."
-		fi
-		# clean up after 2.5 typos
-		# https://bugs.gentoo.org/show_bug.cgi?id=656380
-		if [[ ${x} == 2.5 ]]; then
-			rm -fr "${EROOT}/{,usr" || die
-		fi
-	done
-
-	if [[ -e "${EROOT}"/etc/env.d/00basic ]]; then
-		ewarn "${EROOT}/etc/env.d/00basic is now ${EROOT}/etc/env.d/50baselayout"
-		ewarn "Please migrate your changes."
-	fi
-}


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2023-08-19  6:23 Sam James
  0 siblings, 0 replies; 124+ messages in thread
From: Sam James @ 2023-08-19  6:23 UTC (permalink / raw
  To: gentoo-commits

commit:     f707985bc0f9cfe3ee1ecce3a174cb8724b9eec3
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sat Aug 19 06:23:20 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sat Aug 19 06:23:20 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f707985b

sys-apps/baselayout: Stabilize 2.14 ALLARCHES, #912566

Signed-off-by: Sam James <sam <AT> gentoo.org>

 sys-apps/baselayout/baselayout-2.14.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys-apps/baselayout/baselayout-2.14.ebuild b/sys-apps/baselayout/baselayout-2.14.ebuild
index a588c68f51e9..8cc92f9d92cc 100644
--- a/sys-apps/baselayout/baselayout-2.14.ebuild
+++ b/sys-apps/baselayout/baselayout-2.14.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 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+	KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
 fi
 
 LICENSE="GPL-2"


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2023-07-18 22:41 Sam James
  0 siblings, 0 replies; 124+ messages in thread
From: Sam James @ 2023-07-18 22:41 UTC (permalink / raw
  To: gentoo-commits

commit:     f5bd9a131476d5972a2c4bf8009bdcff9a974750
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue Jul 18 22:40:33 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Jul 18 22:41:24 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f5bd9a13

sys-apps/baselayout: add gentoo upstream metadata

Signed-off-by: Sam James <sam <AT> gentoo.org>

 sys-apps/baselayout/metadata.xml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/sys-apps/baselayout/metadata.xml b/sys-apps/baselayout/metadata.xml
index 46609925fe80..035853bc0d4c 100644
--- a/sys-apps/baselayout/metadata.xml
+++ b/sys-apps/baselayout/metadata.xml
@@ -11,6 +11,7 @@
 </maintainer>
 <stabilize-allarches/>
 <upstream>
+	<remote-id type="gentoo">proj/baselayout</remote-id>
 	<remote-id type="github">gentoo/baselayout</remote-id>
 </upstream>
 </pkgmetadata>


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2023-07-18 22:41 Sam James
  0 siblings, 0 replies; 124+ messages in thread
From: Sam James @ 2023-07-18 22:41 UTC (permalink / raw
  To: gentoo-commits

commit:     6d31f9249d8befc9285ed08449c2225455c075dd
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue Jul 18 22:40:56 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Jul 18 22:41:25 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6d31f924

sys-apps/baselayout: fix metadata indentation

Signed-off-by: Sam James <sam <AT> gentoo.org>

 sys-apps/baselayout/metadata.xml | 26 +++++++++++++-------------
 1 file changed, 13 insertions(+), 13 deletions(-)

diff --git a/sys-apps/baselayout/metadata.xml b/sys-apps/baselayout/metadata.xml
index 035853bc0d4c..6a97f0c772f0 100644
--- a/sys-apps/baselayout/metadata.xml
+++ b/sys-apps/baselayout/metadata.xml
@@ -1,17 +1,17 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
 <pkgmetadata>
-<maintainer type="person">
-	<email>williamh@gentoo.org</email>
-	<name>William Hubbs</name>
-</maintainer>
-<maintainer type="project">
-	<email>base-system@gentoo.org</email>
-	<name>Gentoo Base System</name>
-</maintainer>
-<stabilize-allarches/>
-<upstream>
-	<remote-id type="gentoo">proj/baselayout</remote-id>
-	<remote-id type="github">gentoo/baselayout</remote-id>
-</upstream>
+	<maintainer type="person">
+		<email>williamh@gentoo.org</email>
+		<name>William Hubbs</name>
+	</maintainer>
+	<maintainer type="project">
+		<email>base-system@gentoo.org</email>
+		<name>Gentoo Base System</name>
+	</maintainer>
+	<stabilize-allarches/>
+	<upstream>
+		<remote-id type="gentoo">proj/baselayout</remote-id>
+		<remote-id type="github">gentoo/baselayout</remote-id>
+	</upstream>
 </pkgmetadata>


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2023-07-18 22:41 Sam James
  0 siblings, 0 replies; 124+ messages in thread
From: Sam James @ 2023-07-18 22:41 UTC (permalink / raw
  To: gentoo-commits

commit:     d80bbdf6f6c2bd347be27dd05dc601ffc21b2cad
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Tue Jul 18 22:40:14 2023 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Jul 18 22:41:23 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d80bbdf6

sys-apps/baselayout: add github upstream metadata

Signed-off-by: Sam James <sam <AT> gentoo.org>

 sys-apps/baselayout/metadata.xml | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/sys-apps/baselayout/metadata.xml b/sys-apps/baselayout/metadata.xml
index 4bd3a8b6d8f0..46609925fe80 100644
--- a/sys-apps/baselayout/metadata.xml
+++ b/sys-apps/baselayout/metadata.xml
@@ -9,5 +9,8 @@
 	<email>base-system@gentoo.org</email>
 	<name>Gentoo Base System</name>
 </maintainer>
-	<stabilize-allarches/>
+<stabilize-allarches/>
+<upstream>
+	<remote-id type="github">gentoo/baselayout</remote-id>
+</upstream>
 </pkgmetadata>


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2023-07-09  1:32 Mike Gilbert
  0 siblings, 0 replies; 124+ messages in thread
From: Mike Gilbert @ 2023-07-09  1:32 UTC (permalink / raw
  To: gentoo-commits

commit:     e6a1b3610fba8ef576da75ea19e3b40feaf50f6b
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Sun Jul  9 01:31:52 2023 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Sun Jul  9 01:31:52 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e6a1b361

sys-apps/baselayout: drop 2.9

Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>

 sys-apps/baselayout/Manifest              |   1 -
 sys-apps/baselayout/baselayout-2.9.ebuild | 370 ------------------------------
 2 files changed, 371 deletions(-)

diff --git a/sys-apps/baselayout/Manifest b/sys-apps/baselayout/Manifest
index 547771aec137..8f24feb7c25e 100644
--- a/sys-apps/baselayout/Manifest
+++ b/sys-apps/baselayout/Manifest
@@ -1,3 +1,2 @@
 DIST baselayout-2.13.tar.bz2 29423 BLAKE2B a399e515297d3a936c5821205f1f0d6de844580099936be50e80a463b9fa6239aead52b7b371136680e263e326f7e6a1faea8cd8db0f11462cf0e8166707fc91 SHA512 ff16f20cf2c65258ab6d48c403607113f84fc57ffee6650652202746095f402f8c6a4f22040d0bb9310180945131bed6a0fda3717b39080a987e4f5224339095
 DIST baselayout-2.14.tar.bz2 30182 BLAKE2B c5f67795233e565c2c75c97a55c000aec98e901bb0a25f1aeb52b01b44d7c09bfc6e67813234629ca71ff32d603e82ada8e66e5ab6007fa0664b95367256320d SHA512 bffd118f5e92975b9247d854fc5683a311dbcd03efa37a13dfd05d04e92a6e784858d3a55aa689f782229afc5985e829eb332c08a79eed081bf0a47720ca7e8a
-DIST baselayout-2.9.tar.bz2 30200 BLAKE2B 3a997e847e853a5bcdce7eb06d50fda4727a6c408ca614bdc8dd576bfc9296d3c625c4e8791dbdb078dd5088f818e5ee98eea5d14d737f465ed225554da26180 SHA512 c07726141446c9d9202bac19642baf819b28a838814e1dd3c200d1768af64a913bd9188923029e0b0edf7e420d5aad7bdde278d6c24c4f40029fddbad28d8e02

diff --git a/sys-apps/baselayout/baselayout-2.9.ebuild b/sys-apps/baselayout/baselayout-2.9.ebuild
deleted file mode 100644
index 4cf8882d3ef8..000000000000
--- a/sys-apps/baselayout/baselayout-2.9.ebuild
+++ /dev/null
@@ -1,370 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit multilib prefix
-
-DESCRIPTION="Filesystem baselayout and init scripts"
-HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
-if [[ ${PV} = 9999 ]]; then
-	EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/${PN}.git"
-	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 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
-fi
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="build +split-usr"
-
-RDEPEND="!sys-apps/baselayout-prefix"
-
-pkg_setup() {
-	multilib_layout
-}
-
-riscv_compat_symlink() {
-	# Here we apply some special sauce for riscv.
-	# Two multilib layouts exist for now:
-	# 1) one level libdirs, (32bit) "lib" and (64bit) "lib64"
-	#    these are chosen by us to closely resemble other arches
-	# 2) two level libdirs, "lib64/lp64d" "lib64/lp64" "lib32/ilp32d" ...
-	#    this is the glibc/gcc default
-	# Unfortunately, the default has only one fallback, which is "lib"
-	# for both 32bit and 64bit. So things do not break in 1), we need
-	# to provide compatibility symlinks...
-
-	# This function has exactly two parameters:
-	# - the default libdir, to determine if 1) or 2) applies
-	# - the location of the symlink (which points to ".")
-
-	# Note: we call this only in the ${SYMLINK_LIB} = no codepath, since
-	# there never was a ${SYMLINK_LIB} = yes riscv profile.
-
-	case ${CHOST} in
-	riscv*)
-		# are we on a one level libdir profile? is there no symlink yet?
-		if [[ ${1} != */* && ! -L ${2} ]] ; then
-			ln -s . $2 || die "Unable to make $2 riscv compatibility symlink"
-		fi
-		;;
-	esac
-}
-
-# Create our multilib dirs - the Makefile has no knowledge of this
-multilib_layout() {
-	local dir def_libdir libdir libdirs
-	local prefix prefix_lst
-	def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
-	libdirs=$(get_all_libdirs)
-
-	if [[ -z "${SYMLINK_LIB}" || ${SYMLINK_LIB} = no ]] ; then
-		prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
-		for prefix in "${prefix_lst[@]}"; do
-			for libdir in ${libdirs}; do
-				dir="${prefix}${libdir}"
-				if [[ -e "${dir}" ]]; then
-					[[ ! -d "${dir}" ]] &&
-						die "${dir} exists but is not a directory"
-					continue
-				fi
-				if ! use split-usr && [[ ${prefix} = ${EROOT}/ ]]; then
-					libdir="${libdir%%/*}"
-					dir="${prefix}${libdir}"
-					einfo "symlinking ${dir} to usr/${libdir}"
-					ln -s usr/${libdir} ${dir} ||
-						die "Unable to make ${dir} symlink"
-				else
-					einfo "creating directory ${dir}"
-					mkdir -p "${dir}" ||
-						die "Unable to create ${dir} directory"
-				fi
-			done
-			riscv_compat_symlink "${def_libdir}" "${prefix}${def_libdir}/${DEFAULT_ABI}"
-		done
-		return 0
-	fi
-
-	[ -z "${def_libdir}" ] &&
-		die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
-
-	# figure out which paths should be symlinks and which should be directories
-	local dirs syms exp d
-	for libdir in ${libdirs} ; do
-		if use split-usr ; then
-			exp=( {,usr/,usr/local/}${libdir} )
-		else
-			exp=( {usr/,usr/local/}${libdir} )
-		fi
-		for d in "${exp[@]}" ; do
-			# most things should be dirs
-			if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
-				[ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
-			else
-				[ -h "${d}" ] && syms+=" ${d}"
-			fi
-		done
-	done
-	if [ -n "${syms}${dirs}" ] ; then
-		ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
-		ewarn "have these paths configured as follows:"
-		[ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
-		[ -n "${syms}" ] && ewarn "directories:${syms}"
-		ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
-		ewarn "If things fail, you will need to manually create/move the directories."
-		echo
-	fi
-
-	# setup symlinks and dirs where we expect them to be; do not migrate
-	# data ... just fall over in that case.
-	if use split-usr ; then
-		prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
-	else
-		prefix_lst=( "${EROOT}"/{usr/,usr/local/} )
-	fi
-	for prefix in "${prefix_lst[@]}"; do
-		if [ "${SYMLINK_LIB}" = yes ] ; then
-			# we need to make sure "lib" points to the native libdir
-			if [ -h "${prefix}lib" ] ; then
-				# it's already a symlink!  assume it's pointing to right place ...
-				continue
-			elif [ -d "${prefix}lib" ] ; then
-				# "lib" is a dir, so need to convert to a symlink
-				ewarn "Converting ${prefix}lib from a dir to a symlink"
-				rm -f "${prefix}lib"/.keep || die
-				if rmdir "${prefix}lib" 2>/dev/null ; then
-					ln -s ${def_libdir} "${prefix}lib" || die
-				else
-					die "non-empty dir found where we needed a symlink: ${prefix}lib"
-				fi
-			else
-				# nothing exists, so just set it up sanely
-				ewarn "Initializing ${prefix}lib as a symlink"
-				mkdir -p "${prefix}" || die
-				rm -f "${prefix}lib" || die
-				ln -s ${def_libdir} "${prefix}lib" || die
-				mkdir -p "${prefix}${def_libdir}" || die #423571
-			fi
-		else
-			# we need to make sure "lib" is a dir
-			if [ -h "${prefix}lib" ] ; then
-				# "lib" is a symlink, so need to convert to a dir
-				ewarn "Converting ${prefix}lib from a symlink to a dir"
-				rm -f "${prefix}lib" || die
-				if [ -d "${prefix}lib32" ] ; then
-					ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
-					mv "${prefix}lib32" "${prefix}lib" || die
-				else
-					mkdir -p "${prefix}lib" || die
-				fi
-			elif [ -d "${prefix}lib" ] && ! has lib32 ${libdirs} ; then
-				# make sure the old "lib" ABI location does not exist; we
-				# only symlinked the lib dir on systems where we moved it
-				# to "lib32" ...
-				case ${CHOST} in
-				*-gentoo-freebsd*) ;; # We want it the other way on fbsd.
-				i?86*|x86_64*|powerpc*|sparc*|s390*)
-					if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
-						rm -f "${prefix}lib32"/.keep || die
-						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
-							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
-							die "non-empty dir found where there should be none: ${prefix}lib32"
-						fi
-					fi
-					;;
-				esac
-			else
-				# nothing exists, so just set it up sanely
-				ewarn "Initializing ${prefix}lib as a dir"
-				mkdir -p "${prefix}lib" || die
-			fi
-		fi
-	done
-	if ! use split-usr ; then
-		for libdir in ${libdirs}; do
-			if [[ ! -e "${EROOT}${libdir}" ]]; then
-				ln -s usr/"${libdir}" "${EROOT}${libdir}" ||
-					die "Unable to make ${EROOT}${libdir} symlink"
-			fi
-		done
-	fi
-}
-
-pkg_preinst() {
-	# This is written in src_install (so it's in CONTENTS), but punt all
-	# pending updates to avoid user having to do etc-update (and make the
-	# pkg_postinst logic simpler).
-	rm -f "${EROOT}"/etc/._cfg????_gentoo-release || die
-
-	# We need to install directories and maybe some dev nodes when building
-	# stages, but they cannot be in CONTENTS.
-	# Also, we cannot reference $S as binpkg will break so we do this.
-	multilib_layout
-	if use build ; then
-		if use split-usr ; then
-			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
-		else
-			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
-		fi
-	fi
-	rm -f "${ED}"/usr/share/${PN}/Makefile || die
-}
-
-src_prepare() {
-	default
-
-	# don't want symlinked directories in PATH on systems with usr-merge
-	if ! use split-usr && ! use prefix-guest; then
-		sed \
-			-e 's|:/usr/sbin:|:|g' \
-			-e 's|:/sbin:|:|g' \
-			-e 's|:/bin:|:|g' \
-			-i etc/env.d/50baselayout || die
-	fi
-
-	if use prefix; then
-		hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
-		hprefixify etc/shells share.Linux/passwd
-		hprefixify -w '/PATH=/' etc/env.d/50baselayout
-		hprefixify -w 1 etc/env.d/50baselayout
-		echo PATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
-
-		# change branding
-		sed -i \
-			-e '/gentoo-release/s/Gentoo Base/Gentoo Prefix Base/' \
-			-e '/make_os_release/s/${OS}/Prefix/' \
-			Makefile || die
-	fi
-
-	# handle multilib paths.  do it here because we want this behavior
-	# regardless of the C library that you're using.  we do explicitly
-	# list paths which the native ldconfig searches, but this isn't
-	# problematic as it doesn't change the resulting ld.so.cache or
-	# take longer to generate.  similarly, listing both the native
-	# path and the symlinked path doesn't change the resulting cache.
-	local libdir ldpaths
-	for libdir in $(get_all_libdirs) ; do
-		if use split-usr || use prefix-guest; then
-			ldpaths+=":${EPREFIX}/${libdir}"
-		fi
-		ldpaths+=":${EPREFIX}/usr/${libdir}"
-		ldpaths+=":${EPREFIX}/usr/local/${libdir}"
-	done
-	echo "LDPATH='${ldpaths#:}'" >> etc/env.d/50baselayout
-}
-
-src_install() {
-	emake \
-		OS=Linux \
-		DESTDIR="${ED}" \
-		install
-
-	if [[ ${CHOST} == *-darwin* ]] ; then
-		# add SDK path which contains development manpages
-		echo "MANPATH=${EPREFIX}/MacOSX.sdk/usr/share/man" \
-			> "${ED}"/etc/env.d/98macos-sdk
-	fi
-
-	# need the makefile in pkg_preinst
-	insinto /usr/share/${PN}
-	doins Makefile
-
-	dodoc ChangeLog
-
-	# bug 858596
-	if use prefix-guest ; then
-		dodir sbin
-		cat > "${ED}"/sbin/runscript <<- EOF
-			#!/usr/bin/env sh
-			source "${EPREFIX}/lib/gentoo/functions.sh"
-
-			eerror "runscript/openrc-run not supported by Gentoo Prefix Base System release ${PV}" 1>&2
-			exit 1
-		EOF
-		chmod 755 "${ED}"/sbin/runscript || die
-		cp "${ED}"/sbin/{runscript,openrc-run} || die
-	fi
-}
-
-pkg_postinst() {
-	local x
-
-	# We installed some files to /usr/share/baselayout instead of /etc to stop
-	# (1) overwriting the user's settings
-	# (2) screwing things up when attempting to merge files
-	# (3) accidentally packaging up personal files with quickpkg
-	# If they don't exist then we install them
-	for x in master.passwd passwd shadow group fstab ; do
-		[ -e "${EROOT}/etc/${x}" ] && continue
-		[ -e "${EROOT}/usr/share/baselayout/${x}" ] || continue
-		cp -p "${EROOT}/usr/share/baselayout/${x}" "${EROOT}"/etc || die
-	done
-
-	# Force shadow permissions to not be world-readable #260993
-	for x in shadow ; do
-		if [ -e "${EROOT}/etc/${x}" ] ; then
-			chmod o-rwx "${EROOT}/etc/${x}" || die
-		fi
-	done
-
-	# Take care of the etc-update for the user
-	if [ -e "${EROOT}"/etc/._cfg0000_gentoo-release ] ; then
-		mv "${EROOT}"/etc/._cfg0000_gentoo-release "${EROOT}"/etc/gentoo-release || die
-	fi
-
-	# whine about users that lack passwords #193541
-	if [[ -e "${EROOT}"/etc/shadow ]] ; then
-		local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
-		if [[ -n ${bad_users} ]] ; then
-			echo
-			ewarn "The following users lack passwords!"
-			ewarn ${bad_users}
-		fi
-	fi
-
-	# whine about users with invalid shells #215698
-	if [[ -e "${EROOT}"/etc/passwd ]] ; then
-		local bad_shells=$(awk -F: 'system("test -e ${ROOT}" $7) { print $1 " - " $7}' "${EROOT}"/etc/passwd | sort)
-		if [[ -n ${bad_shells} ]] ; then
-			echo
-			ewarn "The following users have non-existent shells!"
-			ewarn "${bad_shells}"
-		fi
-	fi
-
-	# https://bugs.gentoo.org/361349
-	if use kernel_linux; then
-		mkdir -p "${EROOT}"/run || die
-
-		local found fstype mountpoint
-		while read -r _ mountpoint fstype _; do
-		[[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
-		done < "${ROOT}"/proc/mounts
-		[[ -z ${found} ]] &&
-			ewarn "You should reboot now to get /run mounted with tmpfs!"
-	fi
-
-	for x in ${REPLACING_VERSIONS}; do
-		if ver_test 2.4 -lt ${x}; then
-			ewarn "After updating ${EROOT}/etc/profile, please run"
-			ewarn "env-update && . /etc/profile"
-		fi
-
-		if ver_test 2.6 -lt ${x}; then
-			ewarn "Please run env-update then log out and back in to"
-			ewarn "update your path."
-		fi
-		# clean up after 2.5 typos
-		# https://bugs.gentoo.org/show_bug.cgi?id=656380
-		if [[ ${x} == 2.5 ]]; then
-			rm -fr "${EROOT}/{,usr" || die
-		fi
-	done
-
-	if [[ -e "${EROOT}"/etc/env.d/00basic ]]; then
-		ewarn "${EROOT}/etc/env.d/00basic is now ${EROOT}/etc/env.d/50baselayout"
-		ewarn "Please migrate your changes."
-	fi
-}


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2023-07-09  1:32 Mike Gilbert
  0 siblings, 0 replies; 124+ messages in thread
From: Mike Gilbert @ 2023-07-09  1:32 UTC (permalink / raw
  To: gentoo-commits

commit:     d148943deee0e9d74622cff112e680069b324dc6
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Sun Jul  9 01:29:52 2023 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Sun Jul  9 01:29:52 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d148943d

sys-apps/baselayout: add 2.14

Bug: https://bugs.gentoo.org/909664
Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>

 sys-apps/baselayout/Manifest               |   1 +
 sys-apps/baselayout/baselayout-2.14.ebuild | 367 +++++++++++++++++++++++++++++
 2 files changed, 368 insertions(+)

diff --git a/sys-apps/baselayout/Manifest b/sys-apps/baselayout/Manifest
index 294492d1164a..547771aec137 100644
--- a/sys-apps/baselayout/Manifest
+++ b/sys-apps/baselayout/Manifest
@@ -1,2 +1,3 @@
 DIST baselayout-2.13.tar.bz2 29423 BLAKE2B a399e515297d3a936c5821205f1f0d6de844580099936be50e80a463b9fa6239aead52b7b371136680e263e326f7e6a1faea8cd8db0f11462cf0e8166707fc91 SHA512 ff16f20cf2c65258ab6d48c403607113f84fc57ffee6650652202746095f402f8c6a4f22040d0bb9310180945131bed6a0fda3717b39080a987e4f5224339095
+DIST baselayout-2.14.tar.bz2 30182 BLAKE2B c5f67795233e565c2c75c97a55c000aec98e901bb0a25f1aeb52b01b44d7c09bfc6e67813234629ca71ff32d603e82ada8e66e5ab6007fa0664b95367256320d SHA512 bffd118f5e92975b9247d854fc5683a311dbcd03efa37a13dfd05d04e92a6e784858d3a55aa689f782229afc5985e829eb332c08a79eed081bf0a47720ca7e8a
 DIST baselayout-2.9.tar.bz2 30200 BLAKE2B 3a997e847e853a5bcdce7eb06d50fda4727a6c408ca614bdc8dd576bfc9296d3c625c4e8791dbdb078dd5088f818e5ee98eea5d14d737f465ed225554da26180 SHA512 c07726141446c9d9202bac19642baf819b28a838814e1dd3c200d1768af64a913bd9188923029e0b0edf7e420d5aad7bdde278d6c24c4f40029fddbad28d8e02

diff --git a/sys-apps/baselayout/baselayout-2.14.ebuild b/sys-apps/baselayout/baselayout-2.14.ebuild
new file mode 100644
index 000000000000..a588c68f51e9
--- /dev/null
+++ b/sys-apps/baselayout/baselayout-2.14.ebuild
@@ -0,0 +1,367 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit multilib prefix
+
+DESCRIPTION="Filesystem baselayout and init scripts"
+HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
+if [[ ${PV} = 9999 ]]; then
+	EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/${PN}.git"
+	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 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="build +split-usr"
+
+RDEPEND="!sys-apps/baselayout-prefix"
+
+riscv_compat_symlink() {
+	# Here we apply some special sauce for riscv.
+	# Two multilib layouts exist for now:
+	# 1) one level libdirs, (32bit) "lib" and (64bit) "lib64"
+	#    these are chosen by us to closely resemble other arches
+	# 2) two level libdirs, "lib64/lp64d" "lib64/lp64" "lib32/ilp32d" ...
+	#    this is the glibc/gcc default
+	# Unfortunately, the default has only one fallback, which is "lib"
+	# for both 32bit and 64bit. So things do not break in 1), we need
+	# to provide compatibility symlinks...
+
+	# This function has exactly two parameters:
+	# - the default libdir, to determine if 1) or 2) applies
+	# - the location of the symlink (which points to ".")
+
+	# Note: we call this only in the ${SYMLINK_LIB} = no codepath, since
+	# there never was a ${SYMLINK_LIB} = yes riscv profile.
+
+	case ${CHOST} in
+	riscv*)
+		# are we on a one level libdir profile? is there no symlink yet?
+		if [[ ${1} != */* && ! -L ${2} ]] ; then
+			ln -s . $2 || die "Unable to make $2 riscv compatibility symlink"
+		fi
+		;;
+	esac
+}
+
+# Create our multilib dirs - the Makefile has no knowledge of this
+multilib_layout() {
+	local dir def_libdir libdir libdirs
+	local prefix prefix_lst
+	def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
+	libdirs=$(get_all_libdirs)
+
+	if [[ -z "${SYMLINK_LIB}" || ${SYMLINK_LIB} = no ]] ; then
+		prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
+		for prefix in "${prefix_lst[@]}"; do
+			for libdir in ${libdirs}; do
+				dir="${prefix}${libdir}"
+				if [[ -e "${dir}" ]]; then
+					[[ ! -d "${dir}" ]] &&
+						die "${dir} exists but is not a directory"
+					continue
+				fi
+				if ! use split-usr && [[ ${prefix} = ${EROOT}/ ]]; then
+					libdir="${libdir%%/*}"
+					dir="${prefix}${libdir}"
+					einfo "symlinking ${dir} to usr/${libdir}"
+					ln -s usr/${libdir} ${dir} ||
+						die "Unable to make ${dir} symlink"
+				else
+					einfo "creating directory ${dir}"
+					mkdir -p "${dir}" ||
+						die "Unable to create ${dir} directory"
+				fi
+			done
+			[[ -d "${prefix}${def_libdir}" ]] && riscv_compat_symlink "${def_libdir}" "${prefix}${def_libdir}/${DEFAULT_ABI}"
+		done
+		return 0
+	fi
+
+	[ -z "${def_libdir}" ] &&
+		die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
+
+	# figure out which paths should be symlinks and which should be directories
+	local dirs syms exp d
+	for libdir in ${libdirs} ; do
+		if use split-usr ; then
+			exp=( {,usr/,usr/local/}${libdir} )
+		else
+			exp=( {usr/,usr/local/}${libdir} )
+		fi
+		for d in "${exp[@]}" ; do
+			# most things should be dirs
+			if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
+				[ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
+			else
+				[ -h "${d}" ] && syms+=" ${d}"
+			fi
+		done
+	done
+	if [ -n "${syms}${dirs}" ] ; then
+		ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
+		ewarn "have these paths configured as follows:"
+		[ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
+		[ -n "${syms}" ] && ewarn "directories:${syms}"
+		ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
+		ewarn "If things fail, you will need to manually create/move the directories."
+		echo
+	fi
+
+	# setup symlinks and dirs where we expect them to be; do not migrate
+	# data ... just fall over in that case.
+	if use split-usr ; then
+		prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
+	else
+		prefix_lst=( "${EROOT}"/{usr/,usr/local/} )
+	fi
+	for prefix in "${prefix_lst[@]}"; do
+		if [ "${SYMLINK_LIB}" = yes ] ; then
+			# we need to make sure "lib" points to the native libdir
+			if [ -h "${prefix}lib" ] ; then
+				# it's already a symlink!  assume it's pointing to right place ...
+				continue
+			elif [ -d "${prefix}lib" ] ; then
+				# "lib" is a dir, so need to convert to a symlink
+				ewarn "Converting ${prefix}lib from a dir to a symlink"
+				rm -f "${prefix}lib"/.keep || die
+				if rmdir "${prefix}lib" 2>/dev/null ; then
+					ln -s ${def_libdir} "${prefix}lib" || die
+				else
+					die "non-empty dir found where we needed a symlink: ${prefix}lib"
+				fi
+			else
+				# nothing exists, so just set it up sanely
+				ewarn "Initializing ${prefix}lib as a symlink"
+				mkdir -p "${prefix}" || die
+				rm -f "${prefix}lib" || die
+				ln -s ${def_libdir} "${prefix}lib" || die
+				mkdir -p "${prefix}${def_libdir}" || die #423571
+			fi
+		else
+			# we need to make sure "lib" is a dir
+			if [ -h "${prefix}lib" ] ; then
+				# "lib" is a symlink, so need to convert to a dir
+				ewarn "Converting ${prefix}lib from a symlink to a dir"
+				rm -f "${prefix}lib" || die
+				if [ -d "${prefix}lib32" ] ; then
+					ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
+					mv "${prefix}lib32" "${prefix}lib" || die
+				else
+					mkdir -p "${prefix}lib" || die
+				fi
+			elif [ -d "${prefix}lib" ] && ! has lib32 ${libdirs} ; then
+				# make sure the old "lib" ABI location does not exist; we
+				# only symlinked the lib dir on systems where we moved it
+				# to "lib32" ...
+				case ${CHOST} in
+				i?86*|x86_64*|powerpc*|sparc*|s390*)
+					if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
+						rm -f "${prefix}lib32"/.keep || die
+						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
+							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
+							die "non-empty dir found where there should be none: ${prefix}lib32"
+						fi
+					fi
+					;;
+				esac
+			else
+				# nothing exists, so just set it up sanely
+				ewarn "Initializing ${prefix}lib as a dir"
+				mkdir -p "${prefix}lib" || die
+			fi
+		fi
+	done
+	if ! use split-usr ; then
+		for libdir in ${libdirs}; do
+			if [[ ! -e "${EROOT}${libdir}" ]]; then
+				ln -s usr/"${libdir}" "${EROOT}${libdir}" ||
+					die "Unable to make ${EROOT}${libdir} symlink"
+			fi
+		done
+	fi
+}
+
+pkg_setup() {
+	multilib_layout
+}
+
+src_prepare() {
+	default
+
+	# don't want symlinked directories in PATH on systems with usr-merge
+	if ! use split-usr && ! use prefix-guest; then
+		sed \
+			-e 's|:/usr/sbin:|:|g' \
+			-e 's|:/sbin:|:|g' \
+			-e 's|:/bin:|:|g' \
+			-i etc/env.d/50baselayout || die
+	fi
+
+	if use prefix; then
+		hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
+		hprefixify etc/shells share/passwd
+		hprefixify -w '/PATH=/' etc/env.d/50baselayout
+		hprefixify -w 1 etc/env.d/50baselayout
+		echo PATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
+
+		# change branding
+		sed -i \
+			-e '/gentoo-release/s/Gentoo Base/Gentoo Prefix Base/' \
+			-e '/make_os_release/s/${OS}/Prefix/' \
+			Makefile || die
+	fi
+
+	# handle multilib paths.  do it here because we want this behavior
+	# regardless of the C library that you're using.  we do explicitly
+	# list paths which the native ldconfig searches, but this isn't
+	# problematic as it doesn't change the resulting ld.so.cache or
+	# take longer to generate.  similarly, listing both the native
+	# path and the symlinked path doesn't change the resulting cache.
+	local libdir ldpaths
+	for libdir in $(get_all_libdirs) ; do
+		if use split-usr || use prefix-guest; then
+			ldpaths+=":${EPREFIX}/${libdir}"
+		fi
+		ldpaths+=":${EPREFIX}/usr/${libdir}"
+		ldpaths+=":${EPREFIX}/usr/local/${libdir}"
+	done
+	echo "LDPATH='${ldpaths#:}'" >> etc/env.d/50baselayout
+}
+
+src_install() {
+	emake \
+		DESTDIR="${ED}" \
+		install
+
+	if [[ ${CHOST} == *-darwin* ]] ; then
+		# add SDK path which contains development manpages
+		echo "MANPATH=${EPREFIX}/MacOSX.sdk/usr/share/man" \
+			> "${ED}"/etc/env.d/98macos-sdk
+	fi
+
+	# need the makefile in pkg_preinst
+	insinto /usr/share/${PN}
+	doins Makefile
+
+	dodoc ChangeLog
+
+	# bug 858596
+	if use prefix-guest ; then
+		dodir sbin
+		cat > "${ED}"/sbin/runscript <<- EOF
+			#!/usr/bin/env sh
+			source "${EPREFIX}/lib/gentoo/functions.sh"
+
+			eerror "runscript/openrc-run not supported by Gentoo Prefix Base System release ${PV}" 1>&2
+			exit 1
+		EOF
+		chmod 755 "${ED}"/sbin/runscript || die
+		cp "${ED}"/sbin/{runscript,openrc-run} || die
+	fi
+}
+
+pkg_preinst() {
+	# We need to install directories and maybe some dev nodes when building
+	# stages, but they cannot be in CONTENTS.
+	# Also, we cannot reference $S as binpkg will break so we do this.
+	multilib_layout
+	if use build ; then
+		if use split-usr ; then
+			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
+		else
+			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
+		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
+}
+
+pkg_postinst() {
+	local x
+
+	# We installed some files to /usr/share/baselayout instead of /etc to stop
+	# (1) overwriting the user's settings
+	# (2) screwing things up when attempting to merge files
+	# (3) accidentally packaging up personal files with quickpkg
+	# If they don't exist then we install them
+	for x in master.passwd passwd shadow group fstab ; do
+		[ -e "${EROOT}/etc/${x}" ] && continue
+		[ -e "${EROOT}/usr/share/baselayout/${x}" ] || continue
+		cp -p "${EROOT}/usr/share/baselayout/${x}" "${EROOT}"/etc || die
+	done
+
+	# Force shadow permissions to not be world-readable #260993
+	for x in shadow ; do
+		if [ -e "${EROOT}/etc/${x}" ] ; then
+			chmod o-rwx "${EROOT}/etc/${x}" || die
+		fi
+	done
+	# whine about users that lack passwords #193541
+	if [[ -e "${EROOT}"/etc/shadow ]] ; then
+		local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
+		if [[ -n ${bad_users} ]] ; then
+			echo
+			ewarn "The following users lack passwords!"
+			ewarn ${bad_users}
+		fi
+	fi
+
+	# whine about users with invalid shells #215698
+	if [[ -e "${EROOT}"/etc/passwd ]] ; then
+		local bad_shells=$(awk -F: 'system("test -e ${ROOT}" $7) { print $1 " - " $7}' "${EROOT}"/etc/passwd | sort)
+		if [[ -n ${bad_shells} ]] ; then
+			echo
+			ewarn "The following users have non-existent shells!"
+			ewarn "${bad_shells}"
+		fi
+	fi
+
+	# https://bugs.gentoo.org/361349
+	if use kernel_linux; then
+		mkdir -p "${EROOT}"/run || die
+
+		local found fstype mountpoint
+		while read -r _ mountpoint fstype _; do
+		[[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
+		done < "${ROOT}"/proc/mounts
+		[[ -z ${found} ]] &&
+			ewarn "You should reboot now to get /run mounted with tmpfs!"
+	fi
+
+	for x in ${REPLACING_VERSIONS}; do
+		if ver_test 2.4 -lt ${x}; then
+			ewarn "After updating ${EROOT}/etc/profile, please run"
+			ewarn "env-update && . /etc/profile"
+		fi
+
+		if ver_test 2.6 -lt ${x}; then
+			ewarn "Please run env-update then log out and back in to"
+			ewarn "update your path."
+		fi
+		# clean up after 2.5 typos
+		# https://bugs.gentoo.org/show_bug.cgi?id=656380
+		if [[ ${x} == 2.5 ]]; then
+			rm -fr "${EROOT}/{,usr" || die
+		fi
+	done
+
+	if [[ -e "${EROOT}"/etc/env.d/00basic ]]; then
+		ewarn "${EROOT}/etc/env.d/00basic is now ${EROOT}/etc/env.d/50baselayout"
+		ewarn "Please migrate your changes."
+	fi
+}


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2023-07-05  0:41 Mike Gilbert
  0 siblings, 0 replies; 124+ messages in thread
From: Mike Gilbert @ 2023-07-05  0:41 UTC (permalink / raw
  To: gentoo-commits

commit:     da8169c96af55704989cc0ccb4176917d97b35d3
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Wed Jul  5 00:39:03 2023 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Wed Jul  5 00:41:41 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=da8169c9

sys-apps/baselayout: move pkg_setup and pkg_preinst

This moves them to the traditional place according to phase execution
order.

Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>

 sys-apps/baselayout/baselayout-2.13-r1.ebuild | 52 +++++++++++++--------------
 sys-apps/baselayout/baselayout-9999.ebuild    | 52 +++++++++++++--------------
 2 files changed, 52 insertions(+), 52 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-2.13-r1.ebuild b/sys-apps/baselayout/baselayout-2.13-r1.ebuild
index 49f04008670b..8cc92f9d92cc 100644
--- a/sys-apps/baselayout/baselayout-2.13-r1.ebuild
+++ b/sys-apps/baselayout/baselayout-2.13-r1.ebuild
@@ -21,10 +21,6 @@ IUSE="build +split-usr"
 
 RDEPEND="!sys-apps/baselayout-prefix"
 
-pkg_setup() {
-	multilib_layout
-}
-
 riscv_compat_symlink() {
 	# Here we apply some special sauce for riscv.
 	# Two multilib layouts exist for now:
@@ -191,29 +187,8 @@ multilib_layout() {
 	fi
 }
 
-pkg_preinst() {
-	# We need to install directories and maybe some dev nodes when building
-	# stages, but they cannot be in CONTENTS.
-	# Also, we cannot reference $S as binpkg will break so we do this.
+pkg_setup() {
 	multilib_layout
-	if use build ; then
-		if use split-usr ; then
-			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
-		else
-			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
-		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() {
@@ -291,6 +266,31 @@ src_install() {
 	fi
 }
 
+pkg_preinst() {
+	# We need to install directories and maybe some dev nodes when building
+	# stages, but they cannot be in CONTENTS.
+	# Also, we cannot reference $S as binpkg will break so we do this.
+	multilib_layout
+	if use build ; then
+		if use split-usr ; then
+			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
+		else
+			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
+		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
+}
+
 pkg_postinst() {
 	local x
 

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
index 2294e5e84cc3..a588c68f51e9 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-9999.ebuild
@@ -21,10 +21,6 @@ IUSE="build +split-usr"
 
 RDEPEND="!sys-apps/baselayout-prefix"
 
-pkg_setup() {
-	multilib_layout
-}
-
 riscv_compat_symlink() {
 	# Here we apply some special sauce for riscv.
 	# Two multilib layouts exist for now:
@@ -191,29 +187,8 @@ multilib_layout() {
 	fi
 }
 
-pkg_preinst() {
-	# We need to install directories and maybe some dev nodes when building
-	# stages, but they cannot be in CONTENTS.
-	# Also, we cannot reference $S as binpkg will break so we do this.
+pkg_setup() {
 	multilib_layout
-	if use build ; then
-		if use split-usr ; then
-			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
-		else
-			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
-		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() {
@@ -291,6 +266,31 @@ src_install() {
 	fi
 }
 
+pkg_preinst() {
+	# We need to install directories and maybe some dev nodes when building
+	# stages, but they cannot be in CONTENTS.
+	# Also, we cannot reference $S as binpkg will break so we do this.
+	multilib_layout
+	if use build ; then
+		if use split-usr ; then
+			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
+		else
+			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
+		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
+}
+
 pkg_postinst() {
 	local x
 


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2023-03-04  5:34 Arthur Zamarin
  0 siblings, 0 replies; 124+ messages in thread
From: Arthur Zamarin @ 2023-03-04  5:34 UTC (permalink / raw
  To: gentoo-commits

commit:     25cf83415ce660bcdce29a42e9ba3e66528e38e2
Author:     Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Sat Mar  4 05:34:27 2023 +0000
Commit:     Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Sat Mar  4 05:34:27 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=25cf8341

sys-apps/baselayout: Stabilize 2.13-r1 ALLARCHES, #899366

Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>

 sys-apps/baselayout/baselayout-2.13-r1.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys-apps/baselayout/baselayout-2.13-r1.ebuild b/sys-apps/baselayout/baselayout-2.13-r1.ebuild
index 64d8126ed757..b4cae7e3bf71 100644
--- a/sys-apps/baselayout/baselayout-2.13-r1.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"


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2023-01-29  0:10 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2023-01-29  0:10 UTC (permalink / raw
  To: gentoo-commits

commit:     1b48c31a457d9d0fd39425e30ec1965e1b2923dd
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Sun Jan 29 00:10:05 2023 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Sun Jan 29 00:10:05 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1b48c31a

sys-apps/baselayout: sync live

Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-apps/baselayout/baselayout-9999.ebuild | 11 -----------
 1 file changed, 11 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
index afc0043d403a..64d8126ed757 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-9999.ebuild
@@ -192,11 +192,6 @@ multilib_layout() {
 }
 
 pkg_preinst() {
-	# This is written in src_install (so it's in CONTENTS), but punt all
-	# pending updates to avoid user having to do etc-update (and make the
-	# pkg_postinst logic simpler).
-	rm -f "${EROOT}"/etc/._cfg????_gentoo-release || die
-
 	# We need to install directories and maybe some dev nodes when building
 	# stages, but they cannot be in CONTENTS.
 	# Also, we cannot reference $S as binpkg will break so we do this.
@@ -316,12 +311,6 @@ pkg_postinst() {
 			chmod o-rwx "${EROOT}/etc/${x}" || die
 		fi
 	done
-
-	# Take care of the etc-update for the user
-	if [ -e "${EROOT}"/etc/._cfg0000_gentoo-release ] ; then
-		mv "${EROOT}"/etc/._cfg0000_gentoo-release "${EROOT}"/etc/gentoo-release || die
-	fi
-
 	# whine about users that lack passwords #193541
 	if [[ -e "${EROOT}"/etc/shadow ]] ; then
 		local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2023-01-29  0:10 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2023-01-29  0:10 UTC (permalink / raw
  To: gentoo-commits

commit:     8fcbeac51966b91f9695093e654f0c76055fa635
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Sun Jan 29 00:10:05 2023 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Sun Jan 29 00:10:05 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8fcbeac5

sys-apps/baselayout: handle /etc/gentoo-release with CONFIG_PROTECT_MASK

Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-apps/baselayout/baselayout-2.13-r1.ebuild | 11 -----------
 1 file changed, 11 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-2.13-r1.ebuild b/sys-apps/baselayout/baselayout-2.13-r1.ebuild
index afc0043d403a..64d8126ed757 100644
--- a/sys-apps/baselayout/baselayout-2.13-r1.ebuild
+++ b/sys-apps/baselayout/baselayout-2.13-r1.ebuild
@@ -192,11 +192,6 @@ multilib_layout() {
 }
 
 pkg_preinst() {
-	# This is written in src_install (so it's in CONTENTS), but punt all
-	# pending updates to avoid user having to do etc-update (and make the
-	# pkg_postinst logic simpler).
-	rm -f "${EROOT}"/etc/._cfg????_gentoo-release || die
-
 	# We need to install directories and maybe some dev nodes when building
 	# stages, but they cannot be in CONTENTS.
 	# Also, we cannot reference $S as binpkg will break so we do this.
@@ -316,12 +311,6 @@ pkg_postinst() {
 			chmod o-rwx "${EROOT}/etc/${x}" || die
 		fi
 	done
-
-	# Take care of the etc-update for the user
-	if [ -e "${EROOT}"/etc/._cfg0000_gentoo-release ] ; then
-		mv "${EROOT}"/etc/._cfg0000_gentoo-release "${EROOT}"/etc/gentoo-release || die
-	fi
-
 	# whine about users that lack passwords #193541
 	if [[ -e "${EROOT}"/etc/shadow ]] ; then
 		local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2023-01-28 22:14 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2023-01-28 22:14 UTC (permalink / raw
  To: gentoo-commits

commit:     12a58c22e40211eab2fd901279e8f81cb8e588eb
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 28 22:13:43 2023 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Sat Jan 28 22:13:43 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=12a58c22

sys-apps/baselayout: sync live

Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-apps/baselayout/baselayout-9999.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
index 3c3f89d714de..afc0043d403a 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-9999.ebuild
@@ -235,7 +235,7 @@ src_prepare() {
 
 	if use prefix; then
 		hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
-		hprefixify etc/shells share.Linux/passwd
+		hprefixify etc/shells share/passwd
 		hprefixify -w '/PATH=/' etc/env.d/50baselayout
 		hprefixify -w 1 etc/env.d/50baselayout
 		echo PATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2023-01-28 22:14 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2023-01-28 22:14 UTC (permalink / raw
  To: gentoo-commits

commit:     1cbc36adc37249afbc864623bf2a3f4fb5a9c35d
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 28 22:13:42 2023 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Sat Jan 28 22:13:42 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1cbc36ad

sys-apps/baselayout: drop 2.13

Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-apps/baselayout/baselayout-2.13.ebuild | 376 -----------------------------
 1 file changed, 376 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-2.13.ebuild b/sys-apps/baselayout/baselayout-2.13.ebuild
deleted file mode 100644
index 97ceb30c3290..000000000000
--- a/sys-apps/baselayout/baselayout-2.13.ebuild
+++ /dev/null
@@ -1,376 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit multilib prefix
-
-DESCRIPTION="Filesystem baselayout and init scripts"
-HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
-if [[ ${PV} = 9999 ]]; then
-	EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/${PN}.git"
-	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"
-fi
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="build +split-usr"
-
-RDEPEND="!sys-apps/baselayout-prefix"
-
-pkg_setup() {
-	multilib_layout
-}
-
-riscv_compat_symlink() {
-	# Here we apply some special sauce for riscv.
-	# Two multilib layouts exist for now:
-	# 1) one level libdirs, (32bit) "lib" and (64bit) "lib64"
-	#    these are chosen by us to closely resemble other arches
-	# 2) two level libdirs, "lib64/lp64d" "lib64/lp64" "lib32/ilp32d" ...
-	#    this is the glibc/gcc default
-	# Unfortunately, the default has only one fallback, which is "lib"
-	# for both 32bit and 64bit. So things do not break in 1), we need
-	# to provide compatibility symlinks...
-
-	# This function has exactly two parameters:
-	# - the default libdir, to determine if 1) or 2) applies
-	# - the location of the symlink (which points to ".")
-
-	# Note: we call this only in the ${SYMLINK_LIB} = no codepath, since
-	# there never was a ${SYMLINK_LIB} = yes riscv profile.
-
-	case ${CHOST} in
-	riscv*)
-		# are we on a one level libdir profile? is there no symlink yet?
-		if [[ ${1} != */* && ! -L ${2} ]] ; then
-			ln -s . $2 || die "Unable to make $2 riscv compatibility symlink"
-		fi
-		;;
-	esac
-}
-
-# Create our multilib dirs - the Makefile has no knowledge of this
-multilib_layout() {
-	local dir def_libdir libdir libdirs
-	local prefix prefix_lst
-	def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
-	libdirs=$(get_all_libdirs)
-
-	if [[ -z "${SYMLINK_LIB}" || ${SYMLINK_LIB} = no ]] ; then
-		prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
-		for prefix in "${prefix_lst[@]}"; do
-			for libdir in ${libdirs}; do
-				dir="${prefix}${libdir}"
-				if [[ -e "${dir}" ]]; then
-					[[ ! -d "${dir}" ]] &&
-						die "${dir} exists but is not a directory"
-					continue
-				fi
-				if ! use split-usr && [[ ${prefix} = ${EROOT}/ ]]; then
-					libdir="${libdir%%/*}"
-					dir="${prefix}${libdir}"
-					einfo "symlinking ${dir} to usr/${libdir}"
-					ln -s usr/${libdir} ${dir} ||
-						die "Unable to make ${dir} symlink"
-				else
-					einfo "creating directory ${dir}"
-					mkdir -p "${dir}" ||
-						die "Unable to create ${dir} directory"
-				fi
-			done
-			[[ -d "${prefix}${def_libdir}" ]] && riscv_compat_symlink "${def_libdir}" "${prefix}${def_libdir}/${DEFAULT_ABI}"
-		done
-		return 0
-	fi
-
-	[ -z "${def_libdir}" ] &&
-		die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
-
-	# figure out which paths should be symlinks and which should be directories
-	local dirs syms exp d
-	for libdir in ${libdirs} ; do
-		if use split-usr ; then
-			exp=( {,usr/,usr/local/}${libdir} )
-		else
-			exp=( {usr/,usr/local/}${libdir} )
-		fi
-		for d in "${exp[@]}" ; do
-			# most things should be dirs
-			if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
-				[ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
-			else
-				[ -h "${d}" ] && syms+=" ${d}"
-			fi
-		done
-	done
-	if [ -n "${syms}${dirs}" ] ; then
-		ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
-		ewarn "have these paths configured as follows:"
-		[ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
-		[ -n "${syms}" ] && ewarn "directories:${syms}"
-		ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
-		ewarn "If things fail, you will need to manually create/move the directories."
-		echo
-	fi
-
-	# setup symlinks and dirs where we expect them to be; do not migrate
-	# data ... just fall over in that case.
-	if use split-usr ; then
-		prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
-	else
-		prefix_lst=( "${EROOT}"/{usr/,usr/local/} )
-	fi
-	for prefix in "${prefix_lst[@]}"; do
-		if [ "${SYMLINK_LIB}" = yes ] ; then
-			# we need to make sure "lib" points to the native libdir
-			if [ -h "${prefix}lib" ] ; then
-				# it's already a symlink!  assume it's pointing to right place ...
-				continue
-			elif [ -d "${prefix}lib" ] ; then
-				# "lib" is a dir, so need to convert to a symlink
-				ewarn "Converting ${prefix}lib from a dir to a symlink"
-				rm -f "${prefix}lib"/.keep || die
-				if rmdir "${prefix}lib" 2>/dev/null ; then
-					ln -s ${def_libdir} "${prefix}lib" || die
-				else
-					die "non-empty dir found where we needed a symlink: ${prefix}lib"
-				fi
-			else
-				# nothing exists, so just set it up sanely
-				ewarn "Initializing ${prefix}lib as a symlink"
-				mkdir -p "${prefix}" || die
-				rm -f "${prefix}lib" || die
-				ln -s ${def_libdir} "${prefix}lib" || die
-				mkdir -p "${prefix}${def_libdir}" || die #423571
-			fi
-		else
-			# we need to make sure "lib" is a dir
-			if [ -h "${prefix}lib" ] ; then
-				# "lib" is a symlink, so need to convert to a dir
-				ewarn "Converting ${prefix}lib from a symlink to a dir"
-				rm -f "${prefix}lib" || die
-				if [ -d "${prefix}lib32" ] ; then
-					ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
-					mv "${prefix}lib32" "${prefix}lib" || die
-				else
-					mkdir -p "${prefix}lib" || die
-				fi
-			elif [ -d "${prefix}lib" ] && ! has lib32 ${libdirs} ; then
-				# make sure the old "lib" ABI location does not exist; we
-				# only symlinked the lib dir on systems where we moved it
-				# to "lib32" ...
-				case ${CHOST} in
-				i?86*|x86_64*|powerpc*|sparc*|s390*)
-					if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
-						rm -f "${prefix}lib32"/.keep || die
-						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
-							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
-							die "non-empty dir found where there should be none: ${prefix}lib32"
-						fi
-					fi
-					;;
-				esac
-			else
-				# nothing exists, so just set it up sanely
-				ewarn "Initializing ${prefix}lib as a dir"
-				mkdir -p "${prefix}lib" || die
-			fi
-		fi
-	done
-	if ! use split-usr ; then
-		for libdir in ${libdirs}; do
-			if [[ ! -e "${EROOT}${libdir}" ]]; then
-				ln -s usr/"${libdir}" "${EROOT}${libdir}" ||
-					die "Unable to make ${EROOT}${libdir} symlink"
-			fi
-		done
-	fi
-}
-
-pkg_preinst() {
-	# This is written in src_install (so it's in CONTENTS), but punt all
-	# pending updates to avoid user having to do etc-update (and make the
-	# pkg_postinst logic simpler).
-	rm -f "${EROOT}"/etc/._cfg????_gentoo-release || die
-
-	# We need to install directories and maybe some dev nodes when building
-	# stages, but they cannot be in CONTENTS.
-	# Also, we cannot reference $S as binpkg will break so we do this.
-	multilib_layout
-	if use build ; then
-		if use split-usr ; then
-			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
-		else
-			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
-		fi
-	fi
-	rm -f "${ED}"/usr/share/${PN}/Makefile || die
-}
-
-src_prepare() {
-	default
-
-	# don't want symlinked directories in PATH on systems with usr-merge
-	if ! use split-usr && ! use prefix-guest; then
-		sed \
-			-e 's|:/usr/sbin:|:|g' \
-			-e 's|:/sbin:|:|g' \
-			-e 's|:/bin:|:|g' \
-			-i etc/env.d/50baselayout || die
-	fi
-
-	if use prefix; then
-		hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
-		hprefixify etc/shells share.Linux/passwd
-		hprefixify -w '/PATH=/' etc/env.d/50baselayout
-		hprefixify -w 1 etc/env.d/50baselayout
-		echo PATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
-
-		# change branding
-		sed -i \
-			-e '/gentoo-release/s/Gentoo Base/Gentoo Prefix Base/' \
-			-e '/make_os_release/s/${OS}/Prefix/' \
-			Makefile || die
-	fi
-
-	# handle multilib paths.  do it here because we want this behavior
-	# regardless of the C library that you're using.  we do explicitly
-	# list paths which the native ldconfig searches, but this isn't
-	# problematic as it doesn't change the resulting ld.so.cache or
-	# take longer to generate.  similarly, listing both the native
-	# path and the symlinked path doesn't change the resulting cache.
-	local libdir ldpaths
-	for libdir in $(get_all_libdirs) ; do
-		if use split-usr || use prefix-guest; then
-			ldpaths+=":${EPREFIX}/${libdir}"
-		fi
-		ldpaths+=":${EPREFIX}/usr/${libdir}"
-		ldpaths+=":${EPREFIX}/usr/local/${libdir}"
-	done
-	echo "LDPATH='${ldpaths#:}'" >> etc/env.d/50baselayout
-}
-
-src_install() {
-	emake \
-		DESTDIR="${ED}" \
-		install
-
-	if [[ ${CHOST} == *-darwin* ]] ; then
-		# add SDK path which contains development manpages
-		echo "MANPATH=${EPREFIX}/MacOSX.sdk/usr/share/man" \
-			> "${ED}"/etc/env.d/98macos-sdk
-	fi
-
-	# need the makefile in pkg_preinst
-	insinto /usr/share/${PN}
-	doins Makefile
-
-	dodoc ChangeLog
-
-	# bug 858596
-	if use prefix-guest ; then
-		dodir sbin
-		cat > "${ED}"/sbin/runscript <<- EOF
-			#!/usr/bin/env sh
-			source "${EPREFIX}/lib/gentoo/functions.sh"
-
-			eerror "runscript/openrc-run not supported by Gentoo Prefix Base System release ${PV}" 1>&2
-			exit 1
-		EOF
-		chmod 755 "${ED}"/sbin/runscript || die
-		cp "${ED}"/sbin/{runscript,openrc-run} || die
-	fi
-}
-
-pkg_postinst() {
-	local x
-
-	# We installed some files to /usr/share/baselayout instead of /etc to stop
-	# (1) overwriting the user's settings
-	# (2) screwing things up when attempting to merge files
-	# (3) accidentally packaging up personal files with quickpkg
-	# If they don't exist then we install them
-	for x in master.passwd passwd shadow group fstab ; do
-		[ -e "${EROOT}/etc/${x}" ] && continue
-		[ -e "${EROOT}/usr/share/baselayout/${x}" ] || continue
-		cp -p "${EROOT}/usr/share/baselayout/${x}" "${EROOT}"/etc || die
-	done
-
-	# Force shadow permissions to not be world-readable #260993
-	for x in shadow ; do
-		if [ -e "${EROOT}/etc/${x}" ] ; then
-			chmod o-rwx "${EROOT}/etc/${x}" || die
-		fi
-	done
-
-	# Take care of the etc-update for the user
-	if [ -e "${EROOT}"/etc/._cfg0000_gentoo-release ] ; then
-		mv "${EROOT}"/etc/._cfg0000_gentoo-release "${EROOT}"/etc/gentoo-release || die
-	fi
-
-	# whine about users that lack passwords #193541
-	if [[ -e "${EROOT}"/etc/shadow ]] ; then
-		local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
-		if [[ -n ${bad_users} ]] ; then
-			echo
-			ewarn "The following users lack passwords!"
-			ewarn ${bad_users}
-		fi
-	fi
-
-	# whine about users with invalid shells #215698
-	if [[ -e "${EROOT}"/etc/passwd ]] ; then
-		local bad_shells=$(awk -F: 'system("test -e ${ROOT}" $7) { print $1 " - " $7}' "${EROOT}"/etc/passwd | sort)
-		if [[ -n ${bad_shells} ]] ; then
-			echo
-			ewarn "The following users have non-existent shells!"
-			ewarn "${bad_shells}"
-		fi
-	fi
-
-	# https://bugs.gentoo.org/361349
-	if use kernel_linux; then
-		mkdir -p "${EROOT}"/run || die
-
-		local found fstype mountpoint
-		while read -r _ mountpoint fstype _; do
-		[[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
-		done < "${ROOT}"/proc/mounts
-		[[ -z ${found} ]] &&
-			ewarn "You should reboot now to get /run mounted with tmpfs!"
-	fi
-
-	for x in ${REPLACING_VERSIONS}; do
-		if ver_test 2.4 -lt ${x}; then
-			ewarn "After updating ${EROOT}/etc/profile, please run"
-			ewarn "env-update && . /etc/profile"
-		fi
-
-		if ver_test 2.6 -lt ${x}; then
-			ewarn "Please run env-update then log out and back in to"
-			ewarn "update your path."
-		fi
-		# clean up after 2.5 typos
-		# https://bugs.gentoo.org/show_bug.cgi?id=656380
-		if [[ ${x} == 2.5 ]]; then
-			rm -fr "${EROOT}/{,usr" || die
-		fi
-	done
-
-	if [[ -e "${EROOT}"/etc/env.d/00basic ]]; then
-		ewarn "${EROOT}/etc/env.d/00basic is now ${EROOT}/etc/env.d/50baselayout"
-		ewarn "Please migrate your changes."
-	fi
-
-	# Restore /var/run and /var/lock if we just removed them from 2.11 or 2.12
-	if [[ ! -L ${EROOT}/var/run && ! -e ${EROOT}/var/run ]]; then
-		ln -s ../run "${EROOT}"/var/run
-	fi
-	if [[ ! -L ${EROOT}/var/lock && ! -e ${EROOT}/var/lock ]]; then
-		ln -s ../run/lock "${EROOT}"/var/lock
-	fi
-}


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2023-01-28 22:06 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2023-01-28 22:06 UTC (permalink / raw
  To: gentoo-commits

commit:     81841dc2b3180e9fb30540c6d2d63cda96d9ecf7
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 28 22:01:57 2023 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Sat Jan 28 22:06:05 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=81841dc2

sys-apps/baselayout:  fix the passwd file path for prefix

Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-apps/baselayout/baselayout-2.13-r1.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys-apps/baselayout/baselayout-2.13-r1.ebuild b/sys-apps/baselayout/baselayout-2.13-r1.ebuild
index 71073b11c747..5ef1316a5e6c 100644
--- a/sys-apps/baselayout/baselayout-2.13-r1.ebuild
+++ b/sys-apps/baselayout/baselayout-2.13-r1.ebuild
@@ -235,7 +235,7 @@ src_prepare() {
 
 	if use prefix; then
 		hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
-		hprefixify etc/shells share.Linux/passwd
+		hprefixify etc/shells share/passwd
 		hprefixify -w '/PATH=/' etc/env.d/50baselayout
 		hprefixify -w 1 etc/env.d/50baselayout
 		echo PATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2023-01-28 22:06 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2023-01-28 22:06 UTC (permalink / raw
  To: gentoo-commits

commit:     dab116d7128c9ce1566f2841696765663240ca36
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 28 22:03:22 2023 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Sat Jan 28 22:06:05 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=dab116d7

sys-apps/baselayout: keyword 2.13-r1

Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-apps/baselayout/baselayout-2.13-r1.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys-apps/baselayout/baselayout-2.13-r1.ebuild b/sys-apps/baselayout/baselayout-2.13-r1.ebuild
index 5ef1316a5e6c..afc0043d403a 100644
--- a/sys-apps/baselayout/baselayout-2.13-r1.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"


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2023-01-28 21:00 Mike Gilbert
  0 siblings, 0 replies; 124+ messages in thread
From: Mike Gilbert @ 2023-01-28 21:00 UTC (permalink / raw
  To: gentoo-commits

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() {


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2023-01-28  2:17 Mike Gilbert
  0 siblings, 0 replies; 124+ messages in thread
From: Mike Gilbert @ 2023-01-28  2:17 UTC (permalink / raw
  To: gentoo-commits

commit:     3dcff3b5a60cd6fbead3da67835600db188b6972
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 28 02:16:54 2023 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Sat Jan 28 02:17:33 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3dcff3b5

sys-apps/baselayout: add 2.13, drop 2.12

Bug: https://bugs.gentoo.org/648880
Bug: https://bugs.gentoo.org/892267
Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>

 sys-apps/baselayout/Manifest                        |  2 +-
 ...aselayout-2.12.ebuild => baselayout-2.13.ebuild} | 21 ++++++++-------------
 2 files changed, 9 insertions(+), 14 deletions(-)

diff --git a/sys-apps/baselayout/Manifest b/sys-apps/baselayout/Manifest
index 97df516f916b..294492d1164a 100644
--- a/sys-apps/baselayout/Manifest
+++ b/sys-apps/baselayout/Manifest
@@ -1,2 +1,2 @@
-DIST baselayout-2.12.tar.bz2 29275 BLAKE2B 5708137748e484555ed7f91301c5bc079189e744fc14f708d8b95ab82ad9392166690af6424ee486d95c7b0ce85b6f23fcadd7f95c31920a3424e86431d9b41f SHA512 8c4ad7cf459254c07d1a05300b5e9a600aa259a0f38c55e74c0a60a1a1f9da92c9de5de58cfb735738b64deb6955d6f80ae174925cded07c61c3371323dce152
+DIST baselayout-2.13.tar.bz2 29423 BLAKE2B a399e515297d3a936c5821205f1f0d6de844580099936be50e80a463b9fa6239aead52b7b371136680e263e326f7e6a1faea8cd8db0f11462cf0e8166707fc91 SHA512 ff16f20cf2c65258ab6d48c403607113f84fc57ffee6650652202746095f402f8c6a4f22040d0bb9310180945131bed6a0fda3717b39080a987e4f5224339095
 DIST baselayout-2.9.tar.bz2 30200 BLAKE2B 3a997e847e853a5bcdce7eb06d50fda4727a6c408ca614bdc8dd576bfc9296d3c625c4e8791dbdb078dd5088f818e5ee98eea5d14d737f465ed225554da26180 SHA512 c07726141446c9d9202bac19642baf819b28a838814e1dd3c200d1768af64a913bd9188923029e0b0edf7e420d5aad7bdde278d6c24c4f40029fddbad28d8e02

diff --git a/sys-apps/baselayout/baselayout-2.12.ebuild b/sys-apps/baselayout/baselayout-2.13.ebuild
similarity index 96%
rename from sys-apps/baselayout/baselayout-2.12.ebuild
rename to sys-apps/baselayout/baselayout-2.13.ebuild
index 845f7f7a8dfb..97ceb30c3290 100644
--- a/sys-apps/baselayout/baselayout-2.12.ebuild
+++ b/sys-apps/baselayout/baselayout-2.13.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
 }
@@ -378,4 +365,12 @@ pkg_postinst() {
 		ewarn "${EROOT}/etc/env.d/00basic is now ${EROOT}/etc/env.d/50baselayout"
 		ewarn "Please migrate your changes."
 	fi
+
+	# Restore /var/run and /var/lock if we just removed them from 2.11 or 2.12
+	if [[ ! -L ${EROOT}/var/run && ! -e ${EROOT}/var/run ]]; then
+		ln -s ../run "${EROOT}"/var/run
+	fi
+	if [[ ! -L ${EROOT}/var/lock && ! -e ${EROOT}/var/lock ]]; then
+		ln -s ../run/lock "${EROOT}"/var/lock
+	fi
 }


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2023-01-28  0:38 Mike Gilbert
  0 siblings, 0 replies; 124+ messages in thread
From: Mike Gilbert @ 2023-01-28  0:38 UTC (permalink / raw
  To: gentoo-commits

commit:     07d3824141c8893b4e6565ddce1253705834f64b
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 28 00:36:02 2023 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Sat Jan 28 00:36:18 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=07d38241

sys-apps/baselayout: add 2.12, drop 2.11

This reverts the addition of the ACCESSIBILITY_ENABLED and
QT_LINUX_ACCESSIBILITY_ALWAYS_ON environment variables.

Bug: https://bugs.gentoo.org/853820
Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>

 sys-apps/baselayout/Manifest                                           | 2 +-
 sys-apps/baselayout/{baselayout-2.11.ebuild => baselayout-2.12.ebuild} | 0
 2 files changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys-apps/baselayout/Manifest b/sys-apps/baselayout/Manifest
index 0e2859f5b9c1..97df516f916b 100644
--- a/sys-apps/baselayout/Manifest
+++ b/sys-apps/baselayout/Manifest
@@ -1,2 +1,2 @@
-DIST baselayout-2.11.tar.bz2 29103 BLAKE2B 8e7c5023a868dbb21d5a0c84e4d570bc306dc13e7b699bfb336cbd476c232cf124d2b9dbcdbbb76e82b6e0b207fcc67594ff8cbeaf488af071801c65464fe72e SHA512 c540fda753d405b6754113961fd1430bef27b9aaeb970ad0c787b705de3947198e0181831f0c38e1cdd1937332ca1bd41030f8be9348b21c27fde5d319ef760b
+DIST baselayout-2.12.tar.bz2 29275 BLAKE2B 5708137748e484555ed7f91301c5bc079189e744fc14f708d8b95ab82ad9392166690af6424ee486d95c7b0ce85b6f23fcadd7f95c31920a3424e86431d9b41f SHA512 8c4ad7cf459254c07d1a05300b5e9a600aa259a0f38c55e74c0a60a1a1f9da92c9de5de58cfb735738b64deb6955d6f80ae174925cded07c61c3371323dce152
 DIST baselayout-2.9.tar.bz2 30200 BLAKE2B 3a997e847e853a5bcdce7eb06d50fda4727a6c408ca614bdc8dd576bfc9296d3c625c4e8791dbdb078dd5088f818e5ee98eea5d14d737f465ed225554da26180 SHA512 c07726141446c9d9202bac19642baf819b28a838814e1dd3c200d1768af64a913bd9188923029e0b0edf7e420d5aad7bdde278d6c24c4f40029fddbad28d8e02

diff --git a/sys-apps/baselayout/baselayout-2.11.ebuild b/sys-apps/baselayout/baselayout-2.12.ebuild
similarity index 100%
rename from sys-apps/baselayout/baselayout-2.11.ebuild
rename to sys-apps/baselayout/baselayout-2.12.ebuild


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2023-01-28  0:20 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2023-01-28  0:20 UTC (permalink / raw
  To: gentoo-commits

commit:     4a8d092fd621f923e81d0b5d67e3180f781e410f
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 28 00:19:59 2023 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Sat Jan 28 00:20:28 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4a8d092f

sys-apps/baselayout: sync live

Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-apps/baselayout/baselayout-9999.ebuild | 13 +++++++++++++
 1 file changed, 13 insertions(+)

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
index a5cb994667ce..845f7f7a8dfb 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-9999.ebuild
@@ -21,6 +21,19 @@ 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
 }


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2023-01-28  0:08 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2023-01-28  0:08 UTC (permalink / raw
  To: gentoo-commits

commit:     0ae2af9e3288d4e8519d42ff7caf5eb621ce2e69
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Sat Jan 28 00:08:52 2023 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Sat Jan 28 00:08:52 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0ae2af9e

sys-apps/baselayout: typo fix

Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-apps/baselayout/baselayout-2.11.ebuild | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-2.11.ebuild b/sys-apps/baselayout/baselayout-2.11.ebuild
index 481c65c7b9c3..845f7f7a8dfb 100644
--- a/sys-apps/baselayout/baselayout-2.11.ebuild
+++ b/sys-apps/baselayout/baselayout-2.11.ebuild
@@ -23,11 +23,11 @@ RDEPEND="!sys-apps/baselayout-prefix"
 
 pkg_pretend() {
 	local stop=
-	if [[ ! -L ${EROOT}/var/run && -d ${EROOT}/var/run ]]; then
+	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
+	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


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2023-01-27 22:38 Mike Gilbert
  0 siblings, 0 replies; 124+ messages in thread
From: Mike Gilbert @ 2023-01-27 22:38 UTC (permalink / raw
  To: gentoo-commits

commit:     f64897648984946a0aff01d66dceca89adbb194b
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Fri Jan 27 22:36:57 2023 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Fri Jan 27 22:37:56 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f6489764

sys-apps/baselayout: tweak /var/{run,lock} check

We only need to abort if these exist as a directory.

Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>

 sys-apps/baselayout/baselayout-2.11.ebuild | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-2.11.ebuild b/sys-apps/baselayout/baselayout-2.11.ebuild
index f5fe6bb8aa50..481c65c7b9c3 100644
--- a/sys-apps/baselayout/baselayout-2.11.ebuild
+++ b/sys-apps/baselayout/baselayout-2.11.ebuild
@@ -22,17 +22,16 @@ IUSE="build +split-usr"
 RDEPEND="!sys-apps/baselayout-prefix"
 
 pkg_pretend() {
-	local stop
-	if [[ ! -L "${EROOT}"/var/run ]]; then
+	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 ]]; then
+	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
-	[[ -n ${stop} ]] &&
-		die "please fix this before emerging baselayout"
+	[[ -z ${stop} ]] || die "please fix this before emerging baselayout"
 }
 
 pkg_setup() {


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2023-01-27 21:47 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2023-01-27 21:47 UTC (permalink / raw
  To: gentoo-commits

commit:     89e1ff1e114d9b8f2aff054f3d7ddc4e40af1512
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Fri Jan 27 21:45:26 2023 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Fri Jan 27 21:47:45 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=89e1ff1e

sys-apps/baselayout: abort if /var/run or /var/lock need to be migrated

Check to see if /var/run or /var/lock are not symlinks and abort if this
is the case. since this version of baselayout claims ownership of these
symlinks.

Closes: https://bugs.gentoo.org/892267
Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-apps/baselayout/baselayout-2.11.ebuild | 14 ++++++++++++++
 1 file changed, 14 insertions(+)

diff --git a/sys-apps/baselayout/baselayout-2.11.ebuild b/sys-apps/baselayout/baselayout-2.11.ebuild
index a5cb994667ce..f5fe6bb8aa50 100644
--- a/sys-apps/baselayout/baselayout-2.11.ebuild
+++ b/sys-apps/baselayout/baselayout-2.11.ebuild
@@ -21,6 +21,20 @@ IUSE="build +split-usr"
 
 RDEPEND="!sys-apps/baselayout-prefix"
 
+pkg_pretend() {
+	local stop
+	if [[ ! -L "${EROOT}"/var/run ]]; then
+		eerror "${EROOT}/var/run must be a symlink to ${EROOT}/run"
+		stop=1
+	fi
+	if [[ ! -L "${EROOT}"/var/lock ]]; then
+		eerror "${EROOT}/var/lock must be a symlink to ${EROOT}/run/lock"
+		stop=1
+	fi
+	[[ -n ${stop} ]] &&
+		die "please fix this before emerging baselayout"
+}
+
 pkg_setup() {
 	multilib_layout
 }


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2023-01-27 18:21 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2023-01-27 18:21 UTC (permalink / raw
  To: gentoo-commits

commit:     632fef9cb500ab043abfe11e1c2e40a31eb326ad
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Fri Jan 27 18:21:23 2023 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Fri Jan 27 18:21:23 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=632fef9c

sys-apps/baselayout: drop 2.9-r1, 2.10

Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-apps/baselayout/Manifest                 |   1 -
 sys-apps/baselayout/baselayout-2.10.ebuild   | 368 --------------------------
 sys-apps/baselayout/baselayout-2.9-r1.ebuild | 370 ---------------------------
 3 files changed, 739 deletions(-)

diff --git a/sys-apps/baselayout/Manifest b/sys-apps/baselayout/Manifest
index 7f2d31a0f657..0e2859f5b9c1 100644
--- a/sys-apps/baselayout/Manifest
+++ b/sys-apps/baselayout/Manifest
@@ -1,3 +1,2 @@
-DIST baselayout-2.10.tar.bz2 29013 BLAKE2B aae2973c7564865c1ad6f1e0c7835ff937d437373074dc757768408953f91524447f7757d6b3afcac2315ff6bcdddb5df74f725246a40fec06172016ca09344f SHA512 b80964f6b4142ae2b66e78263c7edabf803e41aa3e6e29913e6e3c3b5948459c77932e3ca3f177bbabee749e7622d7d9434a25767e5757f43ede8033c3159afd
 DIST baselayout-2.11.tar.bz2 29103 BLAKE2B 8e7c5023a868dbb21d5a0c84e4d570bc306dc13e7b699bfb336cbd476c232cf124d2b9dbcdbbb76e82b6e0b207fcc67594ff8cbeaf488af071801c65464fe72e SHA512 c540fda753d405b6754113961fd1430bef27b9aaeb970ad0c787b705de3947198e0181831f0c38e1cdd1937332ca1bd41030f8be9348b21c27fde5d319ef760b
 DIST baselayout-2.9.tar.bz2 30200 BLAKE2B 3a997e847e853a5bcdce7eb06d50fda4727a6c408ca614bdc8dd576bfc9296d3c625c4e8791dbdb078dd5088f818e5ee98eea5d14d737f465ed225554da26180 SHA512 c07726141446c9d9202bac19642baf819b28a838814e1dd3c200d1768af64a913bd9188923029e0b0edf7e420d5aad7bdde278d6c24c4f40029fddbad28d8e02

diff --git a/sys-apps/baselayout/baselayout-2.10.ebuild b/sys-apps/baselayout/baselayout-2.10.ebuild
deleted file mode 100644
index a5cb994667ce..000000000000
--- a/sys-apps/baselayout/baselayout-2.10.ebuild
+++ /dev/null
@@ -1,368 +0,0 @@
-# Copyright 1999-2023 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit multilib prefix
-
-DESCRIPTION="Filesystem baselayout and init scripts"
-HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
-if [[ ${PV} = 9999 ]]; then
-	EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/${PN}.git"
-	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"
-fi
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="build +split-usr"
-
-RDEPEND="!sys-apps/baselayout-prefix"
-
-pkg_setup() {
-	multilib_layout
-}
-
-riscv_compat_symlink() {
-	# Here we apply some special sauce for riscv.
-	# Two multilib layouts exist for now:
-	# 1) one level libdirs, (32bit) "lib" and (64bit) "lib64"
-	#    these are chosen by us to closely resemble other arches
-	# 2) two level libdirs, "lib64/lp64d" "lib64/lp64" "lib32/ilp32d" ...
-	#    this is the glibc/gcc default
-	# Unfortunately, the default has only one fallback, which is "lib"
-	# for both 32bit and 64bit. So things do not break in 1), we need
-	# to provide compatibility symlinks...
-
-	# This function has exactly two parameters:
-	# - the default libdir, to determine if 1) or 2) applies
-	# - the location of the symlink (which points to ".")
-
-	# Note: we call this only in the ${SYMLINK_LIB} = no codepath, since
-	# there never was a ${SYMLINK_LIB} = yes riscv profile.
-
-	case ${CHOST} in
-	riscv*)
-		# are we on a one level libdir profile? is there no symlink yet?
-		if [[ ${1} != */* && ! -L ${2} ]] ; then
-			ln -s . $2 || die "Unable to make $2 riscv compatibility symlink"
-		fi
-		;;
-	esac
-}
-
-# Create our multilib dirs - the Makefile has no knowledge of this
-multilib_layout() {
-	local dir def_libdir libdir libdirs
-	local prefix prefix_lst
-	def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
-	libdirs=$(get_all_libdirs)
-
-	if [[ -z "${SYMLINK_LIB}" || ${SYMLINK_LIB} = no ]] ; then
-		prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
-		for prefix in "${prefix_lst[@]}"; do
-			for libdir in ${libdirs}; do
-				dir="${prefix}${libdir}"
-				if [[ -e "${dir}" ]]; then
-					[[ ! -d "${dir}" ]] &&
-						die "${dir} exists but is not a directory"
-					continue
-				fi
-				if ! use split-usr && [[ ${prefix} = ${EROOT}/ ]]; then
-					libdir="${libdir%%/*}"
-					dir="${prefix}${libdir}"
-					einfo "symlinking ${dir} to usr/${libdir}"
-					ln -s usr/${libdir} ${dir} ||
-						die "Unable to make ${dir} symlink"
-				else
-					einfo "creating directory ${dir}"
-					mkdir -p "${dir}" ||
-						die "Unable to create ${dir} directory"
-				fi
-			done
-			[[ -d "${prefix}${def_libdir}" ]] && riscv_compat_symlink "${def_libdir}" "${prefix}${def_libdir}/${DEFAULT_ABI}"
-		done
-		return 0
-	fi
-
-	[ -z "${def_libdir}" ] &&
-		die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
-
-	# figure out which paths should be symlinks and which should be directories
-	local dirs syms exp d
-	for libdir in ${libdirs} ; do
-		if use split-usr ; then
-			exp=( {,usr/,usr/local/}${libdir} )
-		else
-			exp=( {usr/,usr/local/}${libdir} )
-		fi
-		for d in "${exp[@]}" ; do
-			# most things should be dirs
-			if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
-				[ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
-			else
-				[ -h "${d}" ] && syms+=" ${d}"
-			fi
-		done
-	done
-	if [ -n "${syms}${dirs}" ] ; then
-		ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
-		ewarn "have these paths configured as follows:"
-		[ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
-		[ -n "${syms}" ] && ewarn "directories:${syms}"
-		ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
-		ewarn "If things fail, you will need to manually create/move the directories."
-		echo
-	fi
-
-	# setup symlinks and dirs where we expect them to be; do not migrate
-	# data ... just fall over in that case.
-	if use split-usr ; then
-		prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
-	else
-		prefix_lst=( "${EROOT}"/{usr/,usr/local/} )
-	fi
-	for prefix in "${prefix_lst[@]}"; do
-		if [ "${SYMLINK_LIB}" = yes ] ; then
-			# we need to make sure "lib" points to the native libdir
-			if [ -h "${prefix}lib" ] ; then
-				# it's already a symlink!  assume it's pointing to right place ...
-				continue
-			elif [ -d "${prefix}lib" ] ; then
-				# "lib" is a dir, so need to convert to a symlink
-				ewarn "Converting ${prefix}lib from a dir to a symlink"
-				rm -f "${prefix}lib"/.keep || die
-				if rmdir "${prefix}lib" 2>/dev/null ; then
-					ln -s ${def_libdir} "${prefix}lib" || die
-				else
-					die "non-empty dir found where we needed a symlink: ${prefix}lib"
-				fi
-			else
-				# nothing exists, so just set it up sanely
-				ewarn "Initializing ${prefix}lib as a symlink"
-				mkdir -p "${prefix}" || die
-				rm -f "${prefix}lib" || die
-				ln -s ${def_libdir} "${prefix}lib" || die
-				mkdir -p "${prefix}${def_libdir}" || die #423571
-			fi
-		else
-			# we need to make sure "lib" is a dir
-			if [ -h "${prefix}lib" ] ; then
-				# "lib" is a symlink, so need to convert to a dir
-				ewarn "Converting ${prefix}lib from a symlink to a dir"
-				rm -f "${prefix}lib" || die
-				if [ -d "${prefix}lib32" ] ; then
-					ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
-					mv "${prefix}lib32" "${prefix}lib" || die
-				else
-					mkdir -p "${prefix}lib" || die
-				fi
-			elif [ -d "${prefix}lib" ] && ! has lib32 ${libdirs} ; then
-				# make sure the old "lib" ABI location does not exist; we
-				# only symlinked the lib dir on systems where we moved it
-				# to "lib32" ...
-				case ${CHOST} in
-				i?86*|x86_64*|powerpc*|sparc*|s390*)
-					if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
-						rm -f "${prefix}lib32"/.keep || die
-						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
-							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
-							die "non-empty dir found where there should be none: ${prefix}lib32"
-						fi
-					fi
-					;;
-				esac
-			else
-				# nothing exists, so just set it up sanely
-				ewarn "Initializing ${prefix}lib as a dir"
-				mkdir -p "${prefix}lib" || die
-			fi
-		fi
-	done
-	if ! use split-usr ; then
-		for libdir in ${libdirs}; do
-			if [[ ! -e "${EROOT}${libdir}" ]]; then
-				ln -s usr/"${libdir}" "${EROOT}${libdir}" ||
-					die "Unable to make ${EROOT}${libdir} symlink"
-			fi
-		done
-	fi
-}
-
-pkg_preinst() {
-	# This is written in src_install (so it's in CONTENTS), but punt all
-	# pending updates to avoid user having to do etc-update (and make the
-	# pkg_postinst logic simpler).
-	rm -f "${EROOT}"/etc/._cfg????_gentoo-release || die
-
-	# We need to install directories and maybe some dev nodes when building
-	# stages, but they cannot be in CONTENTS.
-	# Also, we cannot reference $S as binpkg will break so we do this.
-	multilib_layout
-	if use build ; then
-		if use split-usr ; then
-			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
-		else
-			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
-		fi
-	fi
-	rm -f "${ED}"/usr/share/${PN}/Makefile || die
-}
-
-src_prepare() {
-	default
-
-	# don't want symlinked directories in PATH on systems with usr-merge
-	if ! use split-usr && ! use prefix-guest; then
-		sed \
-			-e 's|:/usr/sbin:|:|g' \
-			-e 's|:/sbin:|:|g' \
-			-e 's|:/bin:|:|g' \
-			-i etc/env.d/50baselayout || die
-	fi
-
-	if use prefix; then
-		hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
-		hprefixify etc/shells share.Linux/passwd
-		hprefixify -w '/PATH=/' etc/env.d/50baselayout
-		hprefixify -w 1 etc/env.d/50baselayout
-		echo PATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
-
-		# change branding
-		sed -i \
-			-e '/gentoo-release/s/Gentoo Base/Gentoo Prefix Base/' \
-			-e '/make_os_release/s/${OS}/Prefix/' \
-			Makefile || die
-	fi
-
-	# handle multilib paths.  do it here because we want this behavior
-	# regardless of the C library that you're using.  we do explicitly
-	# list paths which the native ldconfig searches, but this isn't
-	# problematic as it doesn't change the resulting ld.so.cache or
-	# take longer to generate.  similarly, listing both the native
-	# path and the symlinked path doesn't change the resulting cache.
-	local libdir ldpaths
-	for libdir in $(get_all_libdirs) ; do
-		if use split-usr || use prefix-guest; then
-			ldpaths+=":${EPREFIX}/${libdir}"
-		fi
-		ldpaths+=":${EPREFIX}/usr/${libdir}"
-		ldpaths+=":${EPREFIX}/usr/local/${libdir}"
-	done
-	echo "LDPATH='${ldpaths#:}'" >> etc/env.d/50baselayout
-}
-
-src_install() {
-	emake \
-		DESTDIR="${ED}" \
-		install
-
-	if [[ ${CHOST} == *-darwin* ]] ; then
-		# add SDK path which contains development manpages
-		echo "MANPATH=${EPREFIX}/MacOSX.sdk/usr/share/man" \
-			> "${ED}"/etc/env.d/98macos-sdk
-	fi
-
-	# need the makefile in pkg_preinst
-	insinto /usr/share/${PN}
-	doins Makefile
-
-	dodoc ChangeLog
-
-	# bug 858596
-	if use prefix-guest ; then
-		dodir sbin
-		cat > "${ED}"/sbin/runscript <<- EOF
-			#!/usr/bin/env sh
-			source "${EPREFIX}/lib/gentoo/functions.sh"
-
-			eerror "runscript/openrc-run not supported by Gentoo Prefix Base System release ${PV}" 1>&2
-			exit 1
-		EOF
-		chmod 755 "${ED}"/sbin/runscript || die
-		cp "${ED}"/sbin/{runscript,openrc-run} || die
-	fi
-}
-
-pkg_postinst() {
-	local x
-
-	# We installed some files to /usr/share/baselayout instead of /etc to stop
-	# (1) overwriting the user's settings
-	# (2) screwing things up when attempting to merge files
-	# (3) accidentally packaging up personal files with quickpkg
-	# If they don't exist then we install them
-	for x in master.passwd passwd shadow group fstab ; do
-		[ -e "${EROOT}/etc/${x}" ] && continue
-		[ -e "${EROOT}/usr/share/baselayout/${x}" ] || continue
-		cp -p "${EROOT}/usr/share/baselayout/${x}" "${EROOT}"/etc || die
-	done
-
-	# Force shadow permissions to not be world-readable #260993
-	for x in shadow ; do
-		if [ -e "${EROOT}/etc/${x}" ] ; then
-			chmod o-rwx "${EROOT}/etc/${x}" || die
-		fi
-	done
-
-	# Take care of the etc-update for the user
-	if [ -e "${EROOT}"/etc/._cfg0000_gentoo-release ] ; then
-		mv "${EROOT}"/etc/._cfg0000_gentoo-release "${EROOT}"/etc/gentoo-release || die
-	fi
-
-	# whine about users that lack passwords #193541
-	if [[ -e "${EROOT}"/etc/shadow ]] ; then
-		local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
-		if [[ -n ${bad_users} ]] ; then
-			echo
-			ewarn "The following users lack passwords!"
-			ewarn ${bad_users}
-		fi
-	fi
-
-	# whine about users with invalid shells #215698
-	if [[ -e "${EROOT}"/etc/passwd ]] ; then
-		local bad_shells=$(awk -F: 'system("test -e ${ROOT}" $7) { print $1 " - " $7}' "${EROOT}"/etc/passwd | sort)
-		if [[ -n ${bad_shells} ]] ; then
-			echo
-			ewarn "The following users have non-existent shells!"
-			ewarn "${bad_shells}"
-		fi
-	fi
-
-	# https://bugs.gentoo.org/361349
-	if use kernel_linux; then
-		mkdir -p "${EROOT}"/run || die
-
-		local found fstype mountpoint
-		while read -r _ mountpoint fstype _; do
-		[[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
-		done < "${ROOT}"/proc/mounts
-		[[ -z ${found} ]] &&
-			ewarn "You should reboot now to get /run mounted with tmpfs!"
-	fi
-
-	for x in ${REPLACING_VERSIONS}; do
-		if ver_test 2.4 -lt ${x}; then
-			ewarn "After updating ${EROOT}/etc/profile, please run"
-			ewarn "env-update && . /etc/profile"
-		fi
-
-		if ver_test 2.6 -lt ${x}; then
-			ewarn "Please run env-update then log out and back in to"
-			ewarn "update your path."
-		fi
-		# clean up after 2.5 typos
-		# https://bugs.gentoo.org/show_bug.cgi?id=656380
-		if [[ ${x} == 2.5 ]]; then
-			rm -fr "${EROOT}/{,usr" || die
-		fi
-	done
-
-	if [[ -e "${EROOT}"/etc/env.d/00basic ]]; then
-		ewarn "${EROOT}/etc/env.d/00basic is now ${EROOT}/etc/env.d/50baselayout"
-		ewarn "Please migrate your changes."
-	fi
-}

diff --git a/sys-apps/baselayout/baselayout-2.9-r1.ebuild b/sys-apps/baselayout/baselayout-2.9-r1.ebuild
deleted file mode 100644
index 198a5ba595b0..000000000000
--- a/sys-apps/baselayout/baselayout-2.9-r1.ebuild
+++ /dev/null
@@ -1,370 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit multilib prefix
-
-DESCRIPTION="Filesystem baselayout and init scripts"
-HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
-if [[ ${PV} = 9999 ]]; then
-	EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/${PN}.git"
-	inherit git-r3
-else
-	SRC_URI="https://gitweb.gentoo.org/proj/${PN}.git/snapshot/${P}.tar.bz2"
-	KEYWORDS="~riscv"
-fi
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="build +split-usr"
-
-RDEPEND="!sys-apps/baselayout-prefix"
-
-pkg_setup() {
-	multilib_layout
-}
-
-riscv_compat_symlink() {
-	# Here we apply some special sauce for riscv.
-	# Two multilib layouts exist for now:
-	# 1) one level libdirs, (32bit) "lib" and (64bit) "lib64"
-	#    these are chosen by us to closely resemble other arches
-	# 2) two level libdirs, "lib64/lp64d" "lib64/lp64" "lib32/ilp32d" ...
-	#    this is the glibc/gcc default
-	# Unfortunately, the default has only one fallback, which is "lib"
-	# for both 32bit and 64bit. So things do not break in 1), we need
-	# to provide compatibility symlinks...
-
-	# This function has exactly two parameters:
-	# - the default libdir, to determine if 1) or 2) applies
-	# - the location of the symlink (which points to ".")
-
-	# Note: we call this only in the ${SYMLINK_LIB} = no codepath, since
-	# there never was a ${SYMLINK_LIB} = yes riscv profile.
-
-	case ${CHOST} in
-	riscv*)
-		# are we on a one level libdir profile? is there no symlink yet?
-		if [[ ${1} != */* && ! -L ${2} ]] ; then
-			ln -s . $2 || die "Unable to make $2 riscv compatibility symlink"
-		fi
-		;;
-	esac
-}
-
-# Create our multilib dirs - the Makefile has no knowledge of this
-multilib_layout() {
-	local dir def_libdir libdir libdirs
-	local prefix prefix_lst
-	def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
-	libdirs=$(get_all_libdirs)
-
-	if [[ -z "${SYMLINK_LIB}" || ${SYMLINK_LIB} = no ]] ; then
-		prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
-		for prefix in "${prefix_lst[@]}"; do
-			for libdir in ${libdirs}; do
-				dir="${prefix}${libdir}"
-				if [[ -e "${dir}" ]]; then
-					[[ ! -d "${dir}" ]] &&
-						die "${dir} exists but is not a directory"
-					continue
-				fi
-				if ! use split-usr && [[ ${prefix} = ${EROOT}/ ]]; then
-					libdir="${libdir%%/*}"
-					dir="${prefix}${libdir}"
-					einfo "symlinking ${dir} to usr/${libdir}"
-					ln -s usr/${libdir} ${dir} ||
-						die "Unable to make ${dir} symlink"
-				else
-					einfo "creating directory ${dir}"
-					mkdir -p "${dir}" ||
-						die "Unable to create ${dir} directory"
-				fi
-			done
-			[[ -d "${prefix}${def_libdir}" ]] && riscv_compat_symlink "${def_libdir}" "${prefix}${def_libdir}/${DEFAULT_ABI}"
-		done
-		return 0
-	fi
-
-	[ -z "${def_libdir}" ] &&
-		die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
-
-	# figure out which paths should be symlinks and which should be directories
-	local dirs syms exp d
-	for libdir in ${libdirs} ; do
-		if use split-usr ; then
-			exp=( {,usr/,usr/local/}${libdir} )
-		else
-			exp=( {usr/,usr/local/}${libdir} )
-		fi
-		for d in "${exp[@]}" ; do
-			# most things should be dirs
-			if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
-				[ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
-			else
-				[ -h "${d}" ] && syms+=" ${d}"
-			fi
-		done
-	done
-	if [ -n "${syms}${dirs}" ] ; then
-		ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
-		ewarn "have these paths configured as follows:"
-		[ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
-		[ -n "${syms}" ] && ewarn "directories:${syms}"
-		ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
-		ewarn "If things fail, you will need to manually create/move the directories."
-		echo
-	fi
-
-	# setup symlinks and dirs where we expect them to be; do not migrate
-	# data ... just fall over in that case.
-	if use split-usr ; then
-		prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
-	else
-		prefix_lst=( "${EROOT}"/{usr/,usr/local/} )
-	fi
-	for prefix in "${prefix_lst[@]}"; do
-		if [ "${SYMLINK_LIB}" = yes ] ; then
-			# we need to make sure "lib" points to the native libdir
-			if [ -h "${prefix}lib" ] ; then
-				# it's already a symlink!  assume it's pointing to right place ...
-				continue
-			elif [ -d "${prefix}lib" ] ; then
-				# "lib" is a dir, so need to convert to a symlink
-				ewarn "Converting ${prefix}lib from a dir to a symlink"
-				rm -f "${prefix}lib"/.keep || die
-				if rmdir "${prefix}lib" 2>/dev/null ; then
-					ln -s ${def_libdir} "${prefix}lib" || die
-				else
-					die "non-empty dir found where we needed a symlink: ${prefix}lib"
-				fi
-			else
-				# nothing exists, so just set it up sanely
-				ewarn "Initializing ${prefix}lib as a symlink"
-				mkdir -p "${prefix}" || die
-				rm -f "${prefix}lib" || die
-				ln -s ${def_libdir} "${prefix}lib" || die
-				mkdir -p "${prefix}${def_libdir}" || die #423571
-			fi
-		else
-			# we need to make sure "lib" is a dir
-			if [ -h "${prefix}lib" ] ; then
-				# "lib" is a symlink, so need to convert to a dir
-				ewarn "Converting ${prefix}lib from a symlink to a dir"
-				rm -f "${prefix}lib" || die
-				if [ -d "${prefix}lib32" ] ; then
-					ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
-					mv "${prefix}lib32" "${prefix}lib" || die
-				else
-					mkdir -p "${prefix}lib" || die
-				fi
-			elif [ -d "${prefix}lib" ] && ! has lib32 ${libdirs} ; then
-				# make sure the old "lib" ABI location does not exist; we
-				# only symlinked the lib dir on systems where we moved it
-				# to "lib32" ...
-				case ${CHOST} in
-				*-gentoo-freebsd*) ;; # We want it the other way on fbsd.
-				i?86*|x86_64*|powerpc*|sparc*|s390*)
-					if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
-						rm -f "${prefix}lib32"/.keep || die
-						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
-							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
-							die "non-empty dir found where there should be none: ${prefix}lib32"
-						fi
-					fi
-					;;
-				esac
-			else
-				# nothing exists, so just set it up sanely
-				ewarn "Initializing ${prefix}lib as a dir"
-				mkdir -p "${prefix}lib" || die
-			fi
-		fi
-	done
-	if ! use split-usr ; then
-		for libdir in ${libdirs}; do
-			if [[ ! -e "${EROOT}${libdir}" ]]; then
-				ln -s usr/"${libdir}" "${EROOT}${libdir}" ||
-					die "Unable to make ${EROOT}${libdir} symlink"
-			fi
-		done
-	fi
-}
-
-pkg_preinst() {
-	# This is written in src_install (so it's in CONTENTS), but punt all
-	# pending updates to avoid user having to do etc-update (and make the
-	# pkg_postinst logic simpler).
-	rm -f "${EROOT}"/etc/._cfg????_gentoo-release || die
-
-	# We need to install directories and maybe some dev nodes when building
-	# stages, but they cannot be in CONTENTS.
-	# Also, we cannot reference $S as binpkg will break so we do this.
-	multilib_layout
-	if use build ; then
-		if use split-usr ; then
-			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
-		else
-			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
-		fi
-	fi
-	rm -f "${ED}"/usr/share/${PN}/Makefile || die
-}
-
-src_prepare() {
-	default
-
-	# don't want symlinked directories in PATH on systems with usr-merge
-	if ! use split-usr && ! use prefix-guest; then
-		sed \
-			-e 's|:/usr/sbin:|:|g' \
-			-e 's|:/sbin:|:|g' \
-			-e 's|:/bin:|:|g' \
-			-i etc/env.d/50baselayout || die
-	fi
-
-	if use prefix; then
-		hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
-		hprefixify etc/shells share.Linux/passwd
-		hprefixify -w '/PATH=/' etc/env.d/50baselayout
-		hprefixify -w 1 etc/env.d/50baselayout
-		echo PATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
-
-		# change branding
-		sed -i \
-			-e '/gentoo-release/s/Gentoo Base/Gentoo Prefix Base/' \
-			-e '/make_os_release/s/${OS}/Prefix/' \
-			Makefile || die
-	fi
-
-	# handle multilib paths.  do it here because we want this behavior
-	# regardless of the C library that you're using.  we do explicitly
-	# list paths which the native ldconfig searches, but this isn't
-	# problematic as it doesn't change the resulting ld.so.cache or
-	# take longer to generate.  similarly, listing both the native
-	# path and the symlinked path doesn't change the resulting cache.
-	local libdir ldpaths
-	for libdir in $(get_all_libdirs) ; do
-		if use split-usr || use prefix-guest; then
-			ldpaths+=":${EPREFIX}/${libdir}"
-		fi
-		ldpaths+=":${EPREFIX}/usr/${libdir}"
-		ldpaths+=":${EPREFIX}/usr/local/${libdir}"
-	done
-	echo "LDPATH='${ldpaths#:}'" >> etc/env.d/50baselayout
-}
-
-src_install() {
-	emake \
-		OS=Linux \
-		DESTDIR="${ED}" \
-		install
-
-	if [[ ${CHOST} == *-darwin* ]] ; then
-		# add SDK path which contains development manpages
-		echo "MANPATH=${EPREFIX}/MacOSX.sdk/usr/share/man" \
-			> "${ED}"/etc/env.d/98macos-sdk
-	fi
-
-	# need the makefile in pkg_preinst
-	insinto /usr/share/${PN}
-	doins Makefile
-
-	dodoc ChangeLog
-
-	# bug 858596
-	if use prefix-guest ; then
-		dodir sbin
-		cat > "${ED}"/sbin/runscript <<- EOF
-			#!/usr/bin/env sh
-			source "${EPREFIX}/lib/gentoo/functions.sh"
-
-			eerror "runscript/openrc-run not supported by Gentoo Prefix Base System release ${PV}" 1>&2
-			exit 1
-		EOF
-		chmod 755 "${ED}"/sbin/runscript || die
-		cp "${ED}"/sbin/{runscript,openrc-run} || die
-	fi
-}
-
-pkg_postinst() {
-	local x
-
-	# We installed some files to /usr/share/baselayout instead of /etc to stop
-	# (1) overwriting the user's settings
-	# (2) screwing things up when attempting to merge files
-	# (3) accidentally packaging up personal files with quickpkg
-	# If they don't exist then we install them
-	for x in master.passwd passwd shadow group fstab ; do
-		[ -e "${EROOT}/etc/${x}" ] && continue
-		[ -e "${EROOT}/usr/share/baselayout/${x}" ] || continue
-		cp -p "${EROOT}/usr/share/baselayout/${x}" "${EROOT}"/etc || die
-	done
-
-	# Force shadow permissions to not be world-readable #260993
-	for x in shadow ; do
-		if [ -e "${EROOT}/etc/${x}" ] ; then
-			chmod o-rwx "${EROOT}/etc/${x}" || die
-		fi
-	done
-
-	# Take care of the etc-update for the user
-	if [ -e "${EROOT}"/etc/._cfg0000_gentoo-release ] ; then
-		mv "${EROOT}"/etc/._cfg0000_gentoo-release "${EROOT}"/etc/gentoo-release || die
-	fi
-
-	# whine about users that lack passwords #193541
-	if [[ -e "${EROOT}"/etc/shadow ]] ; then
-		local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
-		if [[ -n ${bad_users} ]] ; then
-			echo
-			ewarn "The following users lack passwords!"
-			ewarn ${bad_users}
-		fi
-	fi
-
-	# whine about users with invalid shells #215698
-	if [[ -e "${EROOT}"/etc/passwd ]] ; then
-		local bad_shells=$(awk -F: 'system("test -e ${ROOT}" $7) { print $1 " - " $7}' "${EROOT}"/etc/passwd | sort)
-		if [[ -n ${bad_shells} ]] ; then
-			echo
-			ewarn "The following users have non-existent shells!"
-			ewarn "${bad_shells}"
-		fi
-	fi
-
-	# https://bugs.gentoo.org/361349
-	if use kernel_linux; then
-		mkdir -p "${EROOT}"/run || die
-
-		local found fstype mountpoint
-		while read -r _ mountpoint fstype _; do
-		[[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
-		done < "${ROOT}"/proc/mounts
-		[[ -z ${found} ]] &&
-			ewarn "You should reboot now to get /run mounted with tmpfs!"
-	fi
-
-	for x in ${REPLACING_VERSIONS}; do
-		if ver_test 2.4 -lt ${x}; then
-			ewarn "After updating ${EROOT}/etc/profile, please run"
-			ewarn "env-update && . /etc/profile"
-		fi
-
-		if ver_test 2.6 -lt ${x}; then
-			ewarn "Please run env-update then log out and back in to"
-			ewarn "update your path."
-		fi
-		# clean up after 2.5 typos
-		# https://bugs.gentoo.org/show_bug.cgi?id=656380
-		if [[ ${x} == 2.5 ]]; then
-			rm -fr "${EROOT}/{,usr" || die
-		fi
-	done
-
-	if [[ -e "${EROOT}"/etc/env.d/00basic ]]; then
-		ewarn "${EROOT}/etc/env.d/00basic is now ${EROOT}/etc/env.d/50baselayout"
-		ewarn "Please migrate your changes."
-	fi
-}


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2023-01-27 18:19 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2023-01-27 18:19 UTC (permalink / raw
  To: gentoo-commits

commit:     4a59315b90cd7fddce27d9c8edd4964439b65ca6
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Fri Jan 27 18:19:17 2023 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Fri Jan 27 18:19:34 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4a59315b

sys-apps/baselayout: add 2.11

Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-apps/baselayout/Manifest               |   1 +
 sys-apps/baselayout/baselayout-2.11.ebuild | 368 +++++++++++++++++++++++++++++
 2 files changed, 369 insertions(+)

diff --git a/sys-apps/baselayout/Manifest b/sys-apps/baselayout/Manifest
index 1d8e64864daa..7f2d31a0f657 100644
--- a/sys-apps/baselayout/Manifest
+++ b/sys-apps/baselayout/Manifest
@@ -1,2 +1,3 @@
 DIST baselayout-2.10.tar.bz2 29013 BLAKE2B aae2973c7564865c1ad6f1e0c7835ff937d437373074dc757768408953f91524447f7757d6b3afcac2315ff6bcdddb5df74f725246a40fec06172016ca09344f SHA512 b80964f6b4142ae2b66e78263c7edabf803e41aa3e6e29913e6e3c3b5948459c77932e3ca3f177bbabee749e7622d7d9434a25767e5757f43ede8033c3159afd
+DIST baselayout-2.11.tar.bz2 29103 BLAKE2B 8e7c5023a868dbb21d5a0c84e4d570bc306dc13e7b699bfb336cbd476c232cf124d2b9dbcdbbb76e82b6e0b207fcc67594ff8cbeaf488af071801c65464fe72e SHA512 c540fda753d405b6754113961fd1430bef27b9aaeb970ad0c787b705de3947198e0181831f0c38e1cdd1937332ca1bd41030f8be9348b21c27fde5d319ef760b
 DIST baselayout-2.9.tar.bz2 30200 BLAKE2B 3a997e847e853a5bcdce7eb06d50fda4727a6c408ca614bdc8dd576bfc9296d3c625c4e8791dbdb078dd5088f818e5ee98eea5d14d737f465ed225554da26180 SHA512 c07726141446c9d9202bac19642baf819b28a838814e1dd3c200d1768af64a913bd9188923029e0b0edf7e420d5aad7bdde278d6c24c4f40029fddbad28d8e02

diff --git a/sys-apps/baselayout/baselayout-2.11.ebuild b/sys-apps/baselayout/baselayout-2.11.ebuild
new file mode 100644
index 000000000000..a5cb994667ce
--- /dev/null
+++ b/sys-apps/baselayout/baselayout-2.11.ebuild
@@ -0,0 +1,368 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit multilib prefix
+
+DESCRIPTION="Filesystem baselayout and init scripts"
+HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
+if [[ ${PV} = 9999 ]]; then
+	EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/${PN}.git"
+	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"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="build +split-usr"
+
+RDEPEND="!sys-apps/baselayout-prefix"
+
+pkg_setup() {
+	multilib_layout
+}
+
+riscv_compat_symlink() {
+	# Here we apply some special sauce for riscv.
+	# Two multilib layouts exist for now:
+	# 1) one level libdirs, (32bit) "lib" and (64bit) "lib64"
+	#    these are chosen by us to closely resemble other arches
+	# 2) two level libdirs, "lib64/lp64d" "lib64/lp64" "lib32/ilp32d" ...
+	#    this is the glibc/gcc default
+	# Unfortunately, the default has only one fallback, which is "lib"
+	# for both 32bit and 64bit. So things do not break in 1), we need
+	# to provide compatibility symlinks...
+
+	# This function has exactly two parameters:
+	# - the default libdir, to determine if 1) or 2) applies
+	# - the location of the symlink (which points to ".")
+
+	# Note: we call this only in the ${SYMLINK_LIB} = no codepath, since
+	# there never was a ${SYMLINK_LIB} = yes riscv profile.
+
+	case ${CHOST} in
+	riscv*)
+		# are we on a one level libdir profile? is there no symlink yet?
+		if [[ ${1} != */* && ! -L ${2} ]] ; then
+			ln -s . $2 || die "Unable to make $2 riscv compatibility symlink"
+		fi
+		;;
+	esac
+}
+
+# Create our multilib dirs - the Makefile has no knowledge of this
+multilib_layout() {
+	local dir def_libdir libdir libdirs
+	local prefix prefix_lst
+	def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
+	libdirs=$(get_all_libdirs)
+
+	if [[ -z "${SYMLINK_LIB}" || ${SYMLINK_LIB} = no ]] ; then
+		prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
+		for prefix in "${prefix_lst[@]}"; do
+			for libdir in ${libdirs}; do
+				dir="${prefix}${libdir}"
+				if [[ -e "${dir}" ]]; then
+					[[ ! -d "${dir}" ]] &&
+						die "${dir} exists but is not a directory"
+					continue
+				fi
+				if ! use split-usr && [[ ${prefix} = ${EROOT}/ ]]; then
+					libdir="${libdir%%/*}"
+					dir="${prefix}${libdir}"
+					einfo "symlinking ${dir} to usr/${libdir}"
+					ln -s usr/${libdir} ${dir} ||
+						die "Unable to make ${dir} symlink"
+				else
+					einfo "creating directory ${dir}"
+					mkdir -p "${dir}" ||
+						die "Unable to create ${dir} directory"
+				fi
+			done
+			[[ -d "${prefix}${def_libdir}" ]] && riscv_compat_symlink "${def_libdir}" "${prefix}${def_libdir}/${DEFAULT_ABI}"
+		done
+		return 0
+	fi
+
+	[ -z "${def_libdir}" ] &&
+		die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
+
+	# figure out which paths should be symlinks and which should be directories
+	local dirs syms exp d
+	for libdir in ${libdirs} ; do
+		if use split-usr ; then
+			exp=( {,usr/,usr/local/}${libdir} )
+		else
+			exp=( {usr/,usr/local/}${libdir} )
+		fi
+		for d in "${exp[@]}" ; do
+			# most things should be dirs
+			if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
+				[ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
+			else
+				[ -h "${d}" ] && syms+=" ${d}"
+			fi
+		done
+	done
+	if [ -n "${syms}${dirs}" ] ; then
+		ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
+		ewarn "have these paths configured as follows:"
+		[ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
+		[ -n "${syms}" ] && ewarn "directories:${syms}"
+		ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
+		ewarn "If things fail, you will need to manually create/move the directories."
+		echo
+	fi
+
+	# setup symlinks and dirs where we expect them to be; do not migrate
+	# data ... just fall over in that case.
+	if use split-usr ; then
+		prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
+	else
+		prefix_lst=( "${EROOT}"/{usr/,usr/local/} )
+	fi
+	for prefix in "${prefix_lst[@]}"; do
+		if [ "${SYMLINK_LIB}" = yes ] ; then
+			# we need to make sure "lib" points to the native libdir
+			if [ -h "${prefix}lib" ] ; then
+				# it's already a symlink!  assume it's pointing to right place ...
+				continue
+			elif [ -d "${prefix}lib" ] ; then
+				# "lib" is a dir, so need to convert to a symlink
+				ewarn "Converting ${prefix}lib from a dir to a symlink"
+				rm -f "${prefix}lib"/.keep || die
+				if rmdir "${prefix}lib" 2>/dev/null ; then
+					ln -s ${def_libdir} "${prefix}lib" || die
+				else
+					die "non-empty dir found where we needed a symlink: ${prefix}lib"
+				fi
+			else
+				# nothing exists, so just set it up sanely
+				ewarn "Initializing ${prefix}lib as a symlink"
+				mkdir -p "${prefix}" || die
+				rm -f "${prefix}lib" || die
+				ln -s ${def_libdir} "${prefix}lib" || die
+				mkdir -p "${prefix}${def_libdir}" || die #423571
+			fi
+		else
+			# we need to make sure "lib" is a dir
+			if [ -h "${prefix}lib" ] ; then
+				# "lib" is a symlink, so need to convert to a dir
+				ewarn "Converting ${prefix}lib from a symlink to a dir"
+				rm -f "${prefix}lib" || die
+				if [ -d "${prefix}lib32" ] ; then
+					ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
+					mv "${prefix}lib32" "${prefix}lib" || die
+				else
+					mkdir -p "${prefix}lib" || die
+				fi
+			elif [ -d "${prefix}lib" ] && ! has lib32 ${libdirs} ; then
+				# make sure the old "lib" ABI location does not exist; we
+				# only symlinked the lib dir on systems where we moved it
+				# to "lib32" ...
+				case ${CHOST} in
+				i?86*|x86_64*|powerpc*|sparc*|s390*)
+					if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
+						rm -f "${prefix}lib32"/.keep || die
+						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
+							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
+							die "non-empty dir found where there should be none: ${prefix}lib32"
+						fi
+					fi
+					;;
+				esac
+			else
+				# nothing exists, so just set it up sanely
+				ewarn "Initializing ${prefix}lib as a dir"
+				mkdir -p "${prefix}lib" || die
+			fi
+		fi
+	done
+	if ! use split-usr ; then
+		for libdir in ${libdirs}; do
+			if [[ ! -e "${EROOT}${libdir}" ]]; then
+				ln -s usr/"${libdir}" "${EROOT}${libdir}" ||
+					die "Unable to make ${EROOT}${libdir} symlink"
+			fi
+		done
+	fi
+}
+
+pkg_preinst() {
+	# This is written in src_install (so it's in CONTENTS), but punt all
+	# pending updates to avoid user having to do etc-update (and make the
+	# pkg_postinst logic simpler).
+	rm -f "${EROOT}"/etc/._cfg????_gentoo-release || die
+
+	# We need to install directories and maybe some dev nodes when building
+	# stages, but they cannot be in CONTENTS.
+	# Also, we cannot reference $S as binpkg will break so we do this.
+	multilib_layout
+	if use build ; then
+		if use split-usr ; then
+			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
+		else
+			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
+		fi
+	fi
+	rm -f "${ED}"/usr/share/${PN}/Makefile || die
+}
+
+src_prepare() {
+	default
+
+	# don't want symlinked directories in PATH on systems with usr-merge
+	if ! use split-usr && ! use prefix-guest; then
+		sed \
+			-e 's|:/usr/sbin:|:|g' \
+			-e 's|:/sbin:|:|g' \
+			-e 's|:/bin:|:|g' \
+			-i etc/env.d/50baselayout || die
+	fi
+
+	if use prefix; then
+		hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
+		hprefixify etc/shells share.Linux/passwd
+		hprefixify -w '/PATH=/' etc/env.d/50baselayout
+		hprefixify -w 1 etc/env.d/50baselayout
+		echo PATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
+
+		# change branding
+		sed -i \
+			-e '/gentoo-release/s/Gentoo Base/Gentoo Prefix Base/' \
+			-e '/make_os_release/s/${OS}/Prefix/' \
+			Makefile || die
+	fi
+
+	# handle multilib paths.  do it here because we want this behavior
+	# regardless of the C library that you're using.  we do explicitly
+	# list paths which the native ldconfig searches, but this isn't
+	# problematic as it doesn't change the resulting ld.so.cache or
+	# take longer to generate.  similarly, listing both the native
+	# path and the symlinked path doesn't change the resulting cache.
+	local libdir ldpaths
+	for libdir in $(get_all_libdirs) ; do
+		if use split-usr || use prefix-guest; then
+			ldpaths+=":${EPREFIX}/${libdir}"
+		fi
+		ldpaths+=":${EPREFIX}/usr/${libdir}"
+		ldpaths+=":${EPREFIX}/usr/local/${libdir}"
+	done
+	echo "LDPATH='${ldpaths#:}'" >> etc/env.d/50baselayout
+}
+
+src_install() {
+	emake \
+		DESTDIR="${ED}" \
+		install
+
+	if [[ ${CHOST} == *-darwin* ]] ; then
+		# add SDK path which contains development manpages
+		echo "MANPATH=${EPREFIX}/MacOSX.sdk/usr/share/man" \
+			> "${ED}"/etc/env.d/98macos-sdk
+	fi
+
+	# need the makefile in pkg_preinst
+	insinto /usr/share/${PN}
+	doins Makefile
+
+	dodoc ChangeLog
+
+	# bug 858596
+	if use prefix-guest ; then
+		dodir sbin
+		cat > "${ED}"/sbin/runscript <<- EOF
+			#!/usr/bin/env sh
+			source "${EPREFIX}/lib/gentoo/functions.sh"
+
+			eerror "runscript/openrc-run not supported by Gentoo Prefix Base System release ${PV}" 1>&2
+			exit 1
+		EOF
+		chmod 755 "${ED}"/sbin/runscript || die
+		cp "${ED}"/sbin/{runscript,openrc-run} || die
+	fi
+}
+
+pkg_postinst() {
+	local x
+
+	# We installed some files to /usr/share/baselayout instead of /etc to stop
+	# (1) overwriting the user's settings
+	# (2) screwing things up when attempting to merge files
+	# (3) accidentally packaging up personal files with quickpkg
+	# If they don't exist then we install them
+	for x in master.passwd passwd shadow group fstab ; do
+		[ -e "${EROOT}/etc/${x}" ] && continue
+		[ -e "${EROOT}/usr/share/baselayout/${x}" ] || continue
+		cp -p "${EROOT}/usr/share/baselayout/${x}" "${EROOT}"/etc || die
+	done
+
+	# Force shadow permissions to not be world-readable #260993
+	for x in shadow ; do
+		if [ -e "${EROOT}/etc/${x}" ] ; then
+			chmod o-rwx "${EROOT}/etc/${x}" || die
+		fi
+	done
+
+	# Take care of the etc-update for the user
+	if [ -e "${EROOT}"/etc/._cfg0000_gentoo-release ] ; then
+		mv "${EROOT}"/etc/._cfg0000_gentoo-release "${EROOT}"/etc/gentoo-release || die
+	fi
+
+	# whine about users that lack passwords #193541
+	if [[ -e "${EROOT}"/etc/shadow ]] ; then
+		local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
+		if [[ -n ${bad_users} ]] ; then
+			echo
+			ewarn "The following users lack passwords!"
+			ewarn ${bad_users}
+		fi
+	fi
+
+	# whine about users with invalid shells #215698
+	if [[ -e "${EROOT}"/etc/passwd ]] ; then
+		local bad_shells=$(awk -F: 'system("test -e ${ROOT}" $7) { print $1 " - " $7}' "${EROOT}"/etc/passwd | sort)
+		if [[ -n ${bad_shells} ]] ; then
+			echo
+			ewarn "The following users have non-existent shells!"
+			ewarn "${bad_shells}"
+		fi
+	fi
+
+	# https://bugs.gentoo.org/361349
+	if use kernel_linux; then
+		mkdir -p "${EROOT}"/run || die
+
+		local found fstype mountpoint
+		while read -r _ mountpoint fstype _; do
+		[[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
+		done < "${ROOT}"/proc/mounts
+		[[ -z ${found} ]] &&
+			ewarn "You should reboot now to get /run mounted with tmpfs!"
+	fi
+
+	for x in ${REPLACING_VERSIONS}; do
+		if ver_test 2.4 -lt ${x}; then
+			ewarn "After updating ${EROOT}/etc/profile, please run"
+			ewarn "env-update && . /etc/profile"
+		fi
+
+		if ver_test 2.6 -lt ${x}; then
+			ewarn "Please run env-update then log out and back in to"
+			ewarn "update your path."
+		fi
+		# clean up after 2.5 typos
+		# https://bugs.gentoo.org/show_bug.cgi?id=656380
+		if [[ ${x} == 2.5 ]]; then
+			rm -fr "${EROOT}/{,usr" || die
+		fi
+	done
+
+	if [[ -e "${EROOT}"/etc/env.d/00basic ]]; then
+		ewarn "${EROOT}/etc/env.d/00basic is now ${EROOT}/etc/env.d/50baselayout"
+		ewarn "Please migrate your changes."
+	fi
+}


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2023-01-27 17:30 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2023-01-27 17:30 UTC (permalink / raw
  To: gentoo-commits

commit:     8922ff37ff381fde642f486cd74922ec060c4a15
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Fri Jan 27 17:29:04 2023 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Fri Jan 27 17:29:21 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8922ff37

sys-apps/baselayout: add 2.10

Closes: https://bugs.gentoo.org/648880
Closes: https://bugs.gentoo.org/853820
Closes: https://bugs.gentoo.org/888807
Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-apps/baselayout/Manifest               |   1 +
 sys-apps/baselayout/baselayout-2.10.ebuild | 368 +++++++++++++++++++++++++++++
 2 files changed, 369 insertions(+)

diff --git a/sys-apps/baselayout/Manifest b/sys-apps/baselayout/Manifest
index 44609f8f1a9d..1d8e64864daa 100644
--- a/sys-apps/baselayout/Manifest
+++ b/sys-apps/baselayout/Manifest
@@ -1 +1,2 @@
+DIST baselayout-2.10.tar.bz2 29013 BLAKE2B aae2973c7564865c1ad6f1e0c7835ff937d437373074dc757768408953f91524447f7757d6b3afcac2315ff6bcdddb5df74f725246a40fec06172016ca09344f SHA512 b80964f6b4142ae2b66e78263c7edabf803e41aa3e6e29913e6e3c3b5948459c77932e3ca3f177bbabee749e7622d7d9434a25767e5757f43ede8033c3159afd
 DIST baselayout-2.9.tar.bz2 30200 BLAKE2B 3a997e847e853a5bcdce7eb06d50fda4727a6c408ca614bdc8dd576bfc9296d3c625c4e8791dbdb078dd5088f818e5ee98eea5d14d737f465ed225554da26180 SHA512 c07726141446c9d9202bac19642baf819b28a838814e1dd3c200d1768af64a913bd9188923029e0b0edf7e420d5aad7bdde278d6c24c4f40029fddbad28d8e02

diff --git a/sys-apps/baselayout/baselayout-2.10.ebuild b/sys-apps/baselayout/baselayout-2.10.ebuild
new file mode 100644
index 000000000000..a5cb994667ce
--- /dev/null
+++ b/sys-apps/baselayout/baselayout-2.10.ebuild
@@ -0,0 +1,368 @@
+# Copyright 1999-2023 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit multilib prefix
+
+DESCRIPTION="Filesystem baselayout and init scripts"
+HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
+if [[ ${PV} = 9999 ]]; then
+	EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/${PN}.git"
+	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"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="build +split-usr"
+
+RDEPEND="!sys-apps/baselayout-prefix"
+
+pkg_setup() {
+	multilib_layout
+}
+
+riscv_compat_symlink() {
+	# Here we apply some special sauce for riscv.
+	# Two multilib layouts exist for now:
+	# 1) one level libdirs, (32bit) "lib" and (64bit) "lib64"
+	#    these are chosen by us to closely resemble other arches
+	# 2) two level libdirs, "lib64/lp64d" "lib64/lp64" "lib32/ilp32d" ...
+	#    this is the glibc/gcc default
+	# Unfortunately, the default has only one fallback, which is "lib"
+	# for both 32bit and 64bit. So things do not break in 1), we need
+	# to provide compatibility symlinks...
+
+	# This function has exactly two parameters:
+	# - the default libdir, to determine if 1) or 2) applies
+	# - the location of the symlink (which points to ".")
+
+	# Note: we call this only in the ${SYMLINK_LIB} = no codepath, since
+	# there never was a ${SYMLINK_LIB} = yes riscv profile.
+
+	case ${CHOST} in
+	riscv*)
+		# are we on a one level libdir profile? is there no symlink yet?
+		if [[ ${1} != */* && ! -L ${2} ]] ; then
+			ln -s . $2 || die "Unable to make $2 riscv compatibility symlink"
+		fi
+		;;
+	esac
+}
+
+# Create our multilib dirs - the Makefile has no knowledge of this
+multilib_layout() {
+	local dir def_libdir libdir libdirs
+	local prefix prefix_lst
+	def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
+	libdirs=$(get_all_libdirs)
+
+	if [[ -z "${SYMLINK_LIB}" || ${SYMLINK_LIB} = no ]] ; then
+		prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
+		for prefix in "${prefix_lst[@]}"; do
+			for libdir in ${libdirs}; do
+				dir="${prefix}${libdir}"
+				if [[ -e "${dir}" ]]; then
+					[[ ! -d "${dir}" ]] &&
+						die "${dir} exists but is not a directory"
+					continue
+				fi
+				if ! use split-usr && [[ ${prefix} = ${EROOT}/ ]]; then
+					libdir="${libdir%%/*}"
+					dir="${prefix}${libdir}"
+					einfo "symlinking ${dir} to usr/${libdir}"
+					ln -s usr/${libdir} ${dir} ||
+						die "Unable to make ${dir} symlink"
+				else
+					einfo "creating directory ${dir}"
+					mkdir -p "${dir}" ||
+						die "Unable to create ${dir} directory"
+				fi
+			done
+			[[ -d "${prefix}${def_libdir}" ]] && riscv_compat_symlink "${def_libdir}" "${prefix}${def_libdir}/${DEFAULT_ABI}"
+		done
+		return 0
+	fi
+
+	[ -z "${def_libdir}" ] &&
+		die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
+
+	# figure out which paths should be symlinks and which should be directories
+	local dirs syms exp d
+	for libdir in ${libdirs} ; do
+		if use split-usr ; then
+			exp=( {,usr/,usr/local/}${libdir} )
+		else
+			exp=( {usr/,usr/local/}${libdir} )
+		fi
+		for d in "${exp[@]}" ; do
+			# most things should be dirs
+			if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
+				[ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
+			else
+				[ -h "${d}" ] && syms+=" ${d}"
+			fi
+		done
+	done
+	if [ -n "${syms}${dirs}" ] ; then
+		ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
+		ewarn "have these paths configured as follows:"
+		[ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
+		[ -n "${syms}" ] && ewarn "directories:${syms}"
+		ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
+		ewarn "If things fail, you will need to manually create/move the directories."
+		echo
+	fi
+
+	# setup symlinks and dirs where we expect them to be; do not migrate
+	# data ... just fall over in that case.
+	if use split-usr ; then
+		prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
+	else
+		prefix_lst=( "${EROOT}"/{usr/,usr/local/} )
+	fi
+	for prefix in "${prefix_lst[@]}"; do
+		if [ "${SYMLINK_LIB}" = yes ] ; then
+			# we need to make sure "lib" points to the native libdir
+			if [ -h "${prefix}lib" ] ; then
+				# it's already a symlink!  assume it's pointing to right place ...
+				continue
+			elif [ -d "${prefix}lib" ] ; then
+				# "lib" is a dir, so need to convert to a symlink
+				ewarn "Converting ${prefix}lib from a dir to a symlink"
+				rm -f "${prefix}lib"/.keep || die
+				if rmdir "${prefix}lib" 2>/dev/null ; then
+					ln -s ${def_libdir} "${prefix}lib" || die
+				else
+					die "non-empty dir found where we needed a symlink: ${prefix}lib"
+				fi
+			else
+				# nothing exists, so just set it up sanely
+				ewarn "Initializing ${prefix}lib as a symlink"
+				mkdir -p "${prefix}" || die
+				rm -f "${prefix}lib" || die
+				ln -s ${def_libdir} "${prefix}lib" || die
+				mkdir -p "${prefix}${def_libdir}" || die #423571
+			fi
+		else
+			# we need to make sure "lib" is a dir
+			if [ -h "${prefix}lib" ] ; then
+				# "lib" is a symlink, so need to convert to a dir
+				ewarn "Converting ${prefix}lib from a symlink to a dir"
+				rm -f "${prefix}lib" || die
+				if [ -d "${prefix}lib32" ] ; then
+					ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
+					mv "${prefix}lib32" "${prefix}lib" || die
+				else
+					mkdir -p "${prefix}lib" || die
+				fi
+			elif [ -d "${prefix}lib" ] && ! has lib32 ${libdirs} ; then
+				# make sure the old "lib" ABI location does not exist; we
+				# only symlinked the lib dir on systems where we moved it
+				# to "lib32" ...
+				case ${CHOST} in
+				i?86*|x86_64*|powerpc*|sparc*|s390*)
+					if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
+						rm -f "${prefix}lib32"/.keep || die
+						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
+							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
+							die "non-empty dir found where there should be none: ${prefix}lib32"
+						fi
+					fi
+					;;
+				esac
+			else
+				# nothing exists, so just set it up sanely
+				ewarn "Initializing ${prefix}lib as a dir"
+				mkdir -p "${prefix}lib" || die
+			fi
+		fi
+	done
+	if ! use split-usr ; then
+		for libdir in ${libdirs}; do
+			if [[ ! -e "${EROOT}${libdir}" ]]; then
+				ln -s usr/"${libdir}" "${EROOT}${libdir}" ||
+					die "Unable to make ${EROOT}${libdir} symlink"
+			fi
+		done
+	fi
+}
+
+pkg_preinst() {
+	# This is written in src_install (so it's in CONTENTS), but punt all
+	# pending updates to avoid user having to do etc-update (and make the
+	# pkg_postinst logic simpler).
+	rm -f "${EROOT}"/etc/._cfg????_gentoo-release || die
+
+	# We need to install directories and maybe some dev nodes when building
+	# stages, but they cannot be in CONTENTS.
+	# Also, we cannot reference $S as binpkg will break so we do this.
+	multilib_layout
+	if use build ; then
+		if use split-usr ; then
+			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
+		else
+			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
+		fi
+	fi
+	rm -f "${ED}"/usr/share/${PN}/Makefile || die
+}
+
+src_prepare() {
+	default
+
+	# don't want symlinked directories in PATH on systems with usr-merge
+	if ! use split-usr && ! use prefix-guest; then
+		sed \
+			-e 's|:/usr/sbin:|:|g' \
+			-e 's|:/sbin:|:|g' \
+			-e 's|:/bin:|:|g' \
+			-i etc/env.d/50baselayout || die
+	fi
+
+	if use prefix; then
+		hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
+		hprefixify etc/shells share.Linux/passwd
+		hprefixify -w '/PATH=/' etc/env.d/50baselayout
+		hprefixify -w 1 etc/env.d/50baselayout
+		echo PATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
+
+		# change branding
+		sed -i \
+			-e '/gentoo-release/s/Gentoo Base/Gentoo Prefix Base/' \
+			-e '/make_os_release/s/${OS}/Prefix/' \
+			Makefile || die
+	fi
+
+	# handle multilib paths.  do it here because we want this behavior
+	# regardless of the C library that you're using.  we do explicitly
+	# list paths which the native ldconfig searches, but this isn't
+	# problematic as it doesn't change the resulting ld.so.cache or
+	# take longer to generate.  similarly, listing both the native
+	# path and the symlinked path doesn't change the resulting cache.
+	local libdir ldpaths
+	for libdir in $(get_all_libdirs) ; do
+		if use split-usr || use prefix-guest; then
+			ldpaths+=":${EPREFIX}/${libdir}"
+		fi
+		ldpaths+=":${EPREFIX}/usr/${libdir}"
+		ldpaths+=":${EPREFIX}/usr/local/${libdir}"
+	done
+	echo "LDPATH='${ldpaths#:}'" >> etc/env.d/50baselayout
+}
+
+src_install() {
+	emake \
+		DESTDIR="${ED}" \
+		install
+
+	if [[ ${CHOST} == *-darwin* ]] ; then
+		# add SDK path which contains development manpages
+		echo "MANPATH=${EPREFIX}/MacOSX.sdk/usr/share/man" \
+			> "${ED}"/etc/env.d/98macos-sdk
+	fi
+
+	# need the makefile in pkg_preinst
+	insinto /usr/share/${PN}
+	doins Makefile
+
+	dodoc ChangeLog
+
+	# bug 858596
+	if use prefix-guest ; then
+		dodir sbin
+		cat > "${ED}"/sbin/runscript <<- EOF
+			#!/usr/bin/env sh
+			source "${EPREFIX}/lib/gentoo/functions.sh"
+
+			eerror "runscript/openrc-run not supported by Gentoo Prefix Base System release ${PV}" 1>&2
+			exit 1
+		EOF
+		chmod 755 "${ED}"/sbin/runscript || die
+		cp "${ED}"/sbin/{runscript,openrc-run} || die
+	fi
+}
+
+pkg_postinst() {
+	local x
+
+	# We installed some files to /usr/share/baselayout instead of /etc to stop
+	# (1) overwriting the user's settings
+	# (2) screwing things up when attempting to merge files
+	# (3) accidentally packaging up personal files with quickpkg
+	# If they don't exist then we install them
+	for x in master.passwd passwd shadow group fstab ; do
+		[ -e "${EROOT}/etc/${x}" ] && continue
+		[ -e "${EROOT}/usr/share/baselayout/${x}" ] || continue
+		cp -p "${EROOT}/usr/share/baselayout/${x}" "${EROOT}"/etc || die
+	done
+
+	# Force shadow permissions to not be world-readable #260993
+	for x in shadow ; do
+		if [ -e "${EROOT}/etc/${x}" ] ; then
+			chmod o-rwx "${EROOT}/etc/${x}" || die
+		fi
+	done
+
+	# Take care of the etc-update for the user
+	if [ -e "${EROOT}"/etc/._cfg0000_gentoo-release ] ; then
+		mv "${EROOT}"/etc/._cfg0000_gentoo-release "${EROOT}"/etc/gentoo-release || die
+	fi
+
+	# whine about users that lack passwords #193541
+	if [[ -e "${EROOT}"/etc/shadow ]] ; then
+		local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
+		if [[ -n ${bad_users} ]] ; then
+			echo
+			ewarn "The following users lack passwords!"
+			ewarn ${bad_users}
+		fi
+	fi
+
+	# whine about users with invalid shells #215698
+	if [[ -e "${EROOT}"/etc/passwd ]] ; then
+		local bad_shells=$(awk -F: 'system("test -e ${ROOT}" $7) { print $1 " - " $7}' "${EROOT}"/etc/passwd | sort)
+		if [[ -n ${bad_shells} ]] ; then
+			echo
+			ewarn "The following users have non-existent shells!"
+			ewarn "${bad_shells}"
+		fi
+	fi
+
+	# https://bugs.gentoo.org/361349
+	if use kernel_linux; then
+		mkdir -p "${EROOT}"/run || die
+
+		local found fstype mountpoint
+		while read -r _ mountpoint fstype _; do
+		[[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
+		done < "${ROOT}"/proc/mounts
+		[[ -z ${found} ]] &&
+			ewarn "You should reboot now to get /run mounted with tmpfs!"
+	fi
+
+	for x in ${REPLACING_VERSIONS}; do
+		if ver_test 2.4 -lt ${x}; then
+			ewarn "After updating ${EROOT}/etc/profile, please run"
+			ewarn "env-update && . /etc/profile"
+		fi
+
+		if ver_test 2.6 -lt ${x}; then
+			ewarn "Please run env-update then log out and back in to"
+			ewarn "update your path."
+		fi
+		# clean up after 2.5 typos
+		# https://bugs.gentoo.org/show_bug.cgi?id=656380
+		if [[ ${x} == 2.5 ]]; then
+			rm -fr "${EROOT}/{,usr" || die
+		fi
+	done
+
+	if [[ -e "${EROOT}"/etc/env.d/00basic ]]; then
+		ewarn "${EROOT}/etc/env.d/00basic is now ${EROOT}/etc/env.d/50baselayout"
+		ewarn "Please migrate your changes."
+	fi
+}


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2023-01-26  3:51 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2023-01-26  3:51 UTC (permalink / raw
  To: gentoo-commits

commit:     29bc54b194f8501e0db6f1192a6b2a42a7eb5d6a
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Thu Jan 26 03:50:58 2023 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Thu Jan 26 03:51:48 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=29bc54b1

sys-apps/baselayout: move fhs compatibility symlinks to the makefile

Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-apps/baselayout/baselayout-9999.ebuild | 6 ------
 1 file changed, 6 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
index de1e77f28689..a5cb994667ce 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-9999.ebuild
@@ -259,12 +259,6 @@ src_install() {
 		DESTDIR="${ED}" \
 		install
 
-	# FHS compatibility symlinks
-	dosym ../proc/self/mounts /etc/mtab
-	dosym ../run /var/run
-	dosym ../run/lock /var/lock
-	dosym ../var/tmp /usr/tmp
-
 	if [[ ${CHOST} == *-darwin* ]] ; then
 		# add SDK path which contains development manpages
 		echo "MANPATH=${EPREFIX}/MacOSX.sdk/usr/share/man" \


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2023-01-26  0:13 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2023-01-26  0:13 UTC (permalink / raw
  To: gentoo-commits

commit:     b91cfbd5648d0b1a9d9532e52bc6d701921dc621
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Thu Jan 26 00:11:22 2023 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Thu Jan 26 00:12:48 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b91cfbd5

sys-apps/baselayout: create fhs compatible symlinks in the ebuild

This needs to happen so that we own the symlinks.

Bug: https://bugs.gentoo.org/648880
Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-apps/baselayout/baselayout-9999.ebuild | 6 ++++++
 1 file changed, 6 insertions(+)

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
index a5cb994667ce..de1e77f28689 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-9999.ebuild
@@ -259,6 +259,12 @@ src_install() {
 		DESTDIR="${ED}" \
 		install
 
+	# FHS compatibility symlinks
+	dosym ../proc/self/mounts /etc/mtab
+	dosym ../run /var/run
+	dosym ../run/lock /var/lock
+	dosym ../var/tmp /usr/tmp
+
 	if [[ ${CHOST} == *-darwin* ]] ; then
 		# add SDK path which contains development manpages
 		echo "MANPATH=${EPREFIX}/MacOSX.sdk/usr/share/man" \


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2023-01-24 22:58 Andreas K. Hüttel
  0 siblings, 0 replies; 124+ messages in thread
From: Andreas K. Hüttel @ 2023-01-24 22:58 UTC (permalink / raw
  To: gentoo-commits

commit:     c6dce91299dc71c90f302e2d25828f7b2dfff477
Author:     Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Tue Jan 24 22:56:50 2023 +0000
Commit:     Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Tue Jan 24 22:56:50 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c6dce912

sys-apps/baselayout: Fix merged-usr riscv case

Closes: https://bugs.gentoo.org/796893
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>

 .../{baselayout-9999.ebuild => baselayout-2.9-r1.ebuild}          | 8 +++++---
 sys-apps/baselayout/baselayout-9999.ebuild                        | 2 +-
 2 files changed, 6 insertions(+), 4 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-2.9-r1.ebuild
similarity index 97%
copy from sys-apps/baselayout/baselayout-9999.ebuild
copy to sys-apps/baselayout/baselayout-2.9-r1.ebuild
index 35af87850d7c..198a5ba595b0 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-2.9-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=7
@@ -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="~riscv"
 fi
 
 LICENSE="GPL-2"
@@ -82,7 +82,7 @@ multilib_layout() {
 						die "Unable to create ${dir} directory"
 				fi
 			done
-			riscv_compat_symlink "${def_libdir}" "${prefix}${def_libdir}/${DEFAULT_ABI}"
+			[[ -d "${prefix}${def_libdir}" ]] && riscv_compat_symlink "${def_libdir}" "${prefix}${def_libdir}/${DEFAULT_ABI}"
 		done
 		return 0
 	fi
@@ -164,6 +164,7 @@ multilib_layout() {
 				# only symlinked the lib dir on systems where we moved it
 				# to "lib32" ...
 				case ${CHOST} in
+				*-gentoo-freebsd*) ;; # We want it the other way on fbsd.
 				i?86*|x86_64*|powerpc*|sparc*|s390*)
 					if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
 						rm -f "${prefix}lib32"/.keep || die
@@ -256,6 +257,7 @@ src_prepare() {
 
 src_install() {
 	emake \
+		OS=Linux \
 		DESTDIR="${ED}" \
 		install
 

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
index 35af87850d7c..a5cb994667ce 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-9999.ebuild
@@ -82,7 +82,7 @@ multilib_layout() {
 						die "Unable to create ${dir} directory"
 				fi
 			done
-			riscv_compat_symlink "${def_libdir}" "${prefix}${def_libdir}/${DEFAULT_ABI}"
+			[[ -d "${prefix}${def_libdir}" ]] && riscv_compat_symlink "${def_libdir}" "${prefix}${def_libdir}/${DEFAULT_ABI}"
 		done
 		return 0
 	fi


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2023-01-04  6:37 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2023-01-04  6:37 UTC (permalink / raw
  To: gentoo-commits

commit:     64d0ddf64fc6ec5cb3168dff14ab5259ae2e9206
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Wed Jan  4 06:35:19 2023 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Wed Jan  4 06:36:48 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=64d0ddf6

sys-apps/baselayout: add back the case statement

We may only need to do this on the specific hosts listed.
More research needs to be done before I can remove the case statement.

Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-apps/baselayout/baselayout-9999.ebuild | 16 ++++++++++------
 1 file changed, 10 insertions(+), 6 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
index 6a97e21522d9..35af87850d7c 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-9999.ebuild
@@ -163,13 +163,17 @@ multilib_layout() {
 				# make sure the old "lib" ABI location does not exist; we
 				# only symlinked the lib dir on systems where we moved it
 				# to "lib32" ...
-				if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
-					rm -f "${prefix}lib32"/.keep || die
-					if ! rmdir "${prefix}lib32" 2>/dev/null ; then
-						ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
-						die "non-empty dir found where there should be none: ${prefix}lib32"
+				case ${CHOST} in
+				i?86*|x86_64*|powerpc*|sparc*|s390*)
+					if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
+						rm -f "${prefix}lib32"/.keep || die
+						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
+							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
+							die "non-empty dir found where there should be none: ${prefix}lib32"
+						fi
 					fi
-				fi
+					;;
+				esac
 			else
 				# nothing exists, so just set it up sanely
 				ewarn "Initializing ${prefix}lib as a dir"


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2023-01-04  6:21 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2023-01-04  6:21 UTC (permalink / raw
  To: gentoo-commits

commit:     49a7344fcfa1b0b75e02afe61fe807771ac71702
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Wed Jan  4 06:20:48 2023 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Wed Jan  4 06:20:48 2023 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=49a7344f

sys-apps/baselayout: remove bsd specific code

Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-apps/baselayout/baselayout-9999.ebuild | 20 +++++++-------------
 1 file changed, 7 insertions(+), 13 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
index b7fc36bdb833..6a97e21522d9 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2022 Gentoo Authors
+# Copyright 1999-2023 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=7
@@ -163,18 +163,13 @@ multilib_layout() {
 				# make sure the old "lib" ABI location does not exist; we
 				# only symlinked the lib dir on systems where we moved it
 				# to "lib32" ...
-				case ${CHOST} in
-				*-gentoo-freebsd*) ;; # We want it the other way on fbsd.
-				i?86*|x86_64*|powerpc*|sparc*|s390*)
-					if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
-						rm -f "${prefix}lib32"/.keep || die
-						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
-							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
-							die "non-empty dir found where there should be none: ${prefix}lib32"
-						fi
+				if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
+					rm -f "${prefix}lib32"/.keep || die
+					if ! rmdir "${prefix}lib32" 2>/dev/null ; then
+						ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
+						die "non-empty dir found where there should be none: ${prefix}lib32"
 					fi
-					;;
-				esac
+				fi
 			else
 				# nothing exists, so just set it up sanely
 				ewarn "Initializing ${prefix}lib as a dir"
@@ -257,7 +252,6 @@ src_prepare() {
 
 src_install() {
 	emake \
-		OS=Linux \
 		DESTDIR="${ED}" \
 		install
 


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2022-11-14 21:03 Mike Gilbert
  0 siblings, 0 replies; 124+ messages in thread
From: Mike Gilbert @ 2022-11-14 21:03 UTC (permalink / raw
  To: gentoo-commits

commit:     2775c355b884c1e66e15490d63921a4dad336224
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Mon Nov 14 21:01:34 2022 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Mon Nov 14 21:01:34 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2775c355

sys-apps/baselayout: drop 2.7-r3, 2.8, 2.8-r3

Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>

 sys-apps/baselayout/Manifest                 |   2 -
 sys-apps/baselayout/baselayout-2.7-r3.ebuild | 347 -------------------------
 sys-apps/baselayout/baselayout-2.8-r3.ebuild | 370 ---------------------------
 sys-apps/baselayout/baselayout-2.8.ebuild    | 338 ------------------------
 4 files changed, 1057 deletions(-)

diff --git a/sys-apps/baselayout/Manifest b/sys-apps/baselayout/Manifest
index 17b0a2be2cb7..44609f8f1a9d 100644
--- a/sys-apps/baselayout/Manifest
+++ b/sys-apps/baselayout/Manifest
@@ -1,3 +1 @@
-DIST baselayout-2.7.tar.bz2 30317 BLAKE2B 7b7c284b7d0a9608a0d03dbde0d62d793829b61d5361f5062fdeb8880a2f792c142e20acf7fa92e713e2ebb0bd1609ca65bc8a4191f2bf2c5df4f474eaeef1ee SHA512 8b28d2dc20fd5887db5c0e6b67a4217c4d0730529023fc57fb1ee95a431e1f492fb21e3e66980bef766819e9f542dc7e4ad3ae25465390194bbf970c3653c88e
-DIST baselayout-2.8.tar.bz2 30236 BLAKE2B 0bac62dd5585f1f550da8c99d06a7f8ab6cdd473b0499a8f0ac58a5c43e3883b42adb7f80c172d894fae93a6ddb6fec7a65cad9897f4a2532b481c82065ed96b SHA512 506d7cc8399b530eabc9ba2d16cbb6c024350f9487a2a9168c670cee9876f62e5a716942f698c4883013d6ccc9591c2d7fc2ac9d782f0ce8d724371ca94c739a
 DIST baselayout-2.9.tar.bz2 30200 BLAKE2B 3a997e847e853a5bcdce7eb06d50fda4727a6c408ca614bdc8dd576bfc9296d3c625c4e8791dbdb078dd5088f818e5ee98eea5d14d737f465ed225554da26180 SHA512 c07726141446c9d9202bac19642baf819b28a838814e1dd3c200d1768af64a913bd9188923029e0b0edf7e420d5aad7bdde278d6c24c4f40029fddbad28d8e02

diff --git a/sys-apps/baselayout/baselayout-2.7-r3.ebuild b/sys-apps/baselayout/baselayout-2.7-r3.ebuild
deleted file mode 100644
index 3293e119b3c9..000000000000
--- a/sys-apps/baselayout/baselayout-2.7-r3.ebuild
+++ /dev/null
@@ -1,347 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit multilib prefix
-
-DESCRIPTION="Filesystem baselayout and init scripts"
-HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
-if [[ ${PV} = 9999 ]]; then
-	EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/${PN}.git"
-	inherit git-r3
-else
-	SRC_URI="https://gitweb.gentoo.org/proj/${PN}.git/snapshot/${P}.tar.bz2"
-	KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
-fi
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="build +split-usr"
-
-pkg_setup() {
-	multilib_layout
-}
-
-riscv_compat_symlink() {
-	# Here we apply some special sauce for riscv.
-	# Two multilib layouts exist for now:
-	# 1) one level libdirs, (32bit) "lib" and (64bit) "lib64"
-	#    these are chosen by us to closely resemble other arches
-	# 2) two level libdirs, "lib64/lp64d" "lib64/lp64" "lib32/ilp32d" ...
-	#    this is the glibc/gcc default
-	# Unfortunately, the default has only one fallback, which is "lib"
-	# for both 32bit and 64bit. So things do not break in 1), we need
-	# to provide compatibility symlinks...
-
-	# This function has exactly two parameters:
-	# - the default libdir, to determine if 1) or 2) applies
-	# - the location of the symlink (which points to ".")
-
-	# Note: we call this only in the ${SYMLINK_LIB} = no codepath, since
-	# there never was a ${SYMLINK_LIB} = yes riscv profile.
-
-	case ${CHOST} in
-	riscv*)
-		# are we on a one level libdir profile? is there no symlink yet?
-		if [[ ${1} != */* && ! -L ${2} ]] ; then
-			ln -s . $2 || die "Unable to make $2 riscv compatibility symlink"
-		fi
-		;;
-	esac
-}
-
-# Create our multilib dirs - the Makefile has no knowledge of this
-multilib_layout() {
-	local dir def_libdir libdir libdirs
-	local prefix prefix_lst
-	def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
-	libdirs=$(get_all_libdirs)
-
-	if [[ -z "${SYMLINK_LIB}" || ${SYMLINK_LIB} = no ]] ; then
-		prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
-		for prefix in "${prefix_lst[@]}"; do
-			for libdir in ${libdirs}; do
-				dir="${prefix}${libdir}"
-				if [[ -e "${dir}" ]]; then
-					[[ ! -d "${dir}" ]] &&
-						die "${dir} exists but is not a directory"
-					continue
-				fi
-				if ! use split-usr && [[ ${prefix} = ${EROOT}/ ]]; then
-					libdir="${libdir%%/*}"
-					dir="${prefix}${libdir}"
-					einfo "symlinking ${dir} to usr/${libdir}"
-					ln -s usr/${libdir} ${dir} ||
-						die "Unable to make ${dir} symlink"
-				else
-					einfo "creating directory ${dir}"
-					mkdir -p "${dir}" ||
-						die "Unable to create ${dir} directory"
-				fi
-			done
-			riscv_compat_symlink "${def_libdir}" "${prefix}${def_libdir}/${DEFAULT_ABI}"
-		done
-		return 0
-	fi
-
-	[ -z "${def_libdir}" ] &&
-		die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
-
-	# figure out which paths should be symlinks and which should be directories
-	local dirs syms exp d
-	for libdir in ${libdirs} ; do
-		if use split-usr ; then
-			exp=( {,usr/,usr/local/}${libdir} )
-		else
-			exp=( {usr/,usr/local/}${libdir} )
-		fi
-		for d in "${exp[@]}" ; do
-			# most things should be dirs
-			if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
-				[ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
-			else
-				[ -h "${d}" ] && syms+=" ${d}"
-			fi
-		done
-	done
-	if [ -n "${syms}${dirs}" ] ; then
-		ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
-		ewarn "have these paths configured as follows:"
-		[ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
-		[ -n "${syms}" ] && ewarn "directories:${syms}"
-		ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
-		ewarn "If things fail, you will need to manually create/move the directories."
-		echo
-	fi
-
-	# setup symlinks and dirs where we expect them to be; do not migrate
-	# data ... just fall over in that case.
-	if use split-usr ; then
-		prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
-	else
-		prefix_lst=( "${EROOT}"/{usr/,usr/local/} )
-	fi
-	for prefix in "${prefix_lst[@]}"; do
-		if [ "${SYMLINK_LIB}" = yes ] ; then
-			# we need to make sure "lib" points to the native libdir
-			if [ -h "${prefix}lib" ] ; then
-				# it's already a symlink!  assume it's pointing to right place ...
-				continue
-			elif [ -d "${prefix}lib" ] ; then
-				# "lib" is a dir, so need to convert to a symlink
-				ewarn "Converting ${prefix}lib from a dir to a symlink"
-				rm -f "${prefix}lib"/.keep || die
-				if rmdir "${prefix}lib" 2>/dev/null ; then
-					ln -s ${def_libdir} "${prefix}lib" || die
-				else
-					die "non-empty dir found where we needed a symlink: ${prefix}lib"
-				fi
-			else
-				# nothing exists, so just set it up sanely
-				ewarn "Initializing ${prefix}lib as a symlink"
-				mkdir -p "${prefix}" || die
-				rm -f "${prefix}lib" || die
-				ln -s ${def_libdir} "${prefix}lib" || die
-				mkdir -p "${prefix}${def_libdir}" || die #423571
-			fi
-		else
-			# we need to make sure "lib" is a dir
-			if [ -h "${prefix}lib" ] ; then
-				# "lib" is a symlink, so need to convert to a dir
-				ewarn "Converting ${prefix}lib from a symlink to a dir"
-				rm -f "${prefix}lib" || die
-				if [ -d "${prefix}lib32" ] ; then
-					ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
-					mv "${prefix}lib32" "${prefix}lib" || die
-				else
-					mkdir -p "${prefix}lib" || die
-				fi
-			elif [ -d "${prefix}lib" ] && ! has lib32 ${libdirs} ; then
-				# make sure the old "lib" ABI location does not exist; we
-				# only symlinked the lib dir on systems where we moved it
-				# to "lib32" ...
-				case ${CHOST} in
-				*-gentoo-freebsd*) ;; # We want it the other way on fbsd.
-				i?86*|x86_64*|powerpc*|sparc*|s390*)
-					if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
-						rm -f "${prefix}lib32"/.keep || die
-						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
-							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
-							die "non-empty dir found where there should be none: ${prefix}lib32"
-						fi
-					fi
-					;;
-				esac
-			else
-				# nothing exists, so just set it up sanely
-				ewarn "Initializing ${prefix}lib as a dir"
-				mkdir -p "${prefix}lib" || die
-			fi
-		fi
-	done
-	if ! use split-usr ; then
-		for libdir in ${libdirs}; do
-			if [[ ! -e "${EROOT}${libdir}" ]]; then
-				ln -s usr/"${libdir}" "${EROOT}${libdir}" ||
-					die "Unable to make ${EROOT}${libdir} symlink"
-			fi
-		done
-	fi
-}
-
-pkg_preinst() {
-	# This is written in src_install (so it's in CONTENTS), but punt all
-	# pending updates to avoid user having to do etc-update (and make the
-	# pkg_postinst logic simpler).
-	rm -f "${EROOT}"/etc/._cfg????_gentoo-release || die
-
-	# We need to install directories and maybe some dev nodes when building
-	# stages, but they cannot be in CONTENTS.
-	# Also, we cannot reference $S as binpkg will break so we do this.
-	multilib_layout
-	if use build ; then
-		if use split-usr ; then
-			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
-		else
-			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
-		fi
-	fi
-	rm -f "${ED}"/usr/share/${PN}/Makefile || die
-}
-
-src_prepare() {
-	default
-	if use prefix; then
-		hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
-		hprefixify etc/{env.d/50baselayout,shells} share.Linux/passwd
-		echo PATH=/usr/bin:/bin >> etc/env.d/99host
-		echo ROOTPATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
-	fi
-
-	# don't want symlinked directories in PATH on systems with usr-merge
-	if ! use split-usr; then
-		sed \
-			-e 's|/usr/local/sbin:||g' \
-			-e 's|:/usr/sbin:|:|g' \
-			-e 's|:/sbin:|:|g' \
-			-e 's|:/bin:|:|g' \
-			-i etc/env.d/50baselayout || die
-	fi
-
-	# handle multilib paths.  do it here because we want this behavior
-	# regardless of the C library that you're using.  we do explicitly
-	# list paths which the native ldconfig searches, but this isn't
-	# problematic as it doesn't change the resulting ld.so.cache or
-	# take longer to generate.  similarly, listing both the native
-	# path and the symlinked path doesn't change the resulting cache.
-	local libdir ldpaths
-	for libdir in $(get_all_libdirs) ; do
-		use split-usr && ldpaths+=":${EPREFIX}/${libdir}"
-		ldpaths+=":${EPREFIX}/usr/${libdir}"
-		ldpaths+=":${EPREFIX}/usr/local/${libdir}"
-	done
-	echo "LDPATH='${ldpaths#:}'" >> etc/env.d/50baselayout
-
-	# rc-scripts version for testing of features that *should* be present
-	echo "Gentoo Base System release ${PV}" > etc/gentoo-release
-}
-
-src_install() {
-	emake \
-		OS=Linux \
-		DESTDIR="${ED}" \
-		install
-	dodoc ChangeLog
-	rm "${ED}"/etc/sysctl.d/README || die
-
-	# need the makefile in pkg_preinst
-	insinto /usr/share/${PN}
-	doins Makefile
-
-	# This is needed for https://bugs.gentoo.org/732142
-	dodir /usr/lib
-	mv "${ED}"/etc/os-release "${ED}"/usr/lib || die
-	dosym ../usr/lib/os-release /etc/os-release
-}
-
-pkg_postinst() {
-	local x
-
-	# We installed some files to /usr/share/baselayout instead of /etc to stop
-	# (1) overwriting the user's settings
-	# (2) screwing things up when attempting to merge files
-	# (3) accidentally packaging up personal files with quickpkg
-	# If they don't exist then we install them
-	for x in master.passwd passwd shadow group fstab ; do
-		[ -e "${EROOT}/etc/${x}" ] && continue
-		[ -e "${EROOT}/usr/share/baselayout/${x}" ] || continue
-		cp -p "${EROOT}/usr/share/baselayout/${x}" "${EROOT}"/etc || die
-	done
-
-	# Force shadow permissions to not be world-readable #260993
-	for x in shadow ; do
-		if [ -e "${EROOT}/etc/${x}" ] ; then
-			chmod o-rwx "${EROOT}/etc/${x}" || die
-		fi
-	done
-
-	# Take care of the etc-update for the user
-	if [ -e "${EROOT}"/etc/._cfg0000_gentoo-release ] ; then
-		mv "${EROOT}"/etc/._cfg0000_gentoo-release "${EROOT}"/etc/gentoo-release || die
-	fi
-
-	# whine about users that lack passwords #193541
-	if [[ -e "${EROOT}"/etc/shadow ]] ; then
-		local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
-		if [[ -n ${bad_users} ]] ; then
-			echo
-			ewarn "The following users lack passwords!"
-			ewarn ${bad_users}
-		fi
-	fi
-
-	# whine about users with invalid shells #215698
-	if [[ -e "${EROOT}"/etc/passwd ]] ; then
-		local bad_shells=$(awk -F: 'system("test -e ${ROOT}" $7) { print $1 " - " $7}' "${EROOT}"/etc/passwd | sort)
-		if [[ -n ${bad_shells} ]] ; then
-			echo
-			ewarn "The following users have non-existent shells!"
-			ewarn "${bad_shells}"
-		fi
-	fi
-
-	# https://bugs.gentoo.org/361349
-	if use kernel_linux; then
-		mkdir -p "${EROOT}"/run || die
-
-		local found fstype mountpoint
-		while read -r _ mountpoint fstype _; do
-		[[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
-		done < "${ROOT}"/proc/mounts
-		[[ -z ${found} ]] &&
-			ewarn "You should reboot now to get /run mounted with tmpfs!"
-	fi
-
-	for x in ${REPLACING_VERSIONS}; do
-		if ver_test 2.4 -lt ${x}; then
-			ewarn "After updating ${EROOT}/etc/profile, please run"
-			ewarn "env-update && . /etc/profile"
-		fi
-
-		if ver_test 2.6 -lt ${x}; then
-			ewarn "Please run env-update then log out and back in to"
-			ewarn "update your path."
-		fi
-		# clean up after 2.5 typos
-		# https://bugs.gentoo.org/show_bug.cgi?id=656380
-		if [[ ${x} == 2.5 ]]; then
-			rm -fr "${EROOT}/{,usr" || die
-		fi
-	done
-
-	if [[ -e "${EROOT}"/etc/env.d/00basic ]]; then
-		ewarn "${EROOT}/etc/env.d/00basic is now ${EROOT}/etc/env.d/50baselayout"
-		ewarn "Please migrate your changes."
-	fi
-}

diff --git a/sys-apps/baselayout/baselayout-2.8-r3.ebuild b/sys-apps/baselayout/baselayout-2.8-r3.ebuild
deleted file mode 100644
index b7fc36bdb833..000000000000
--- a/sys-apps/baselayout/baselayout-2.8-r3.ebuild
+++ /dev/null
@@ -1,370 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit multilib prefix
-
-DESCRIPTION="Filesystem baselayout and init scripts"
-HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
-if [[ ${PV} = 9999 ]]; then
-	EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/${PN}.git"
-	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"
-fi
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="build +split-usr"
-
-RDEPEND="!sys-apps/baselayout-prefix"
-
-pkg_setup() {
-	multilib_layout
-}
-
-riscv_compat_symlink() {
-	# Here we apply some special sauce for riscv.
-	# Two multilib layouts exist for now:
-	# 1) one level libdirs, (32bit) "lib" and (64bit) "lib64"
-	#    these are chosen by us to closely resemble other arches
-	# 2) two level libdirs, "lib64/lp64d" "lib64/lp64" "lib32/ilp32d" ...
-	#    this is the glibc/gcc default
-	# Unfortunately, the default has only one fallback, which is "lib"
-	# for both 32bit and 64bit. So things do not break in 1), we need
-	# to provide compatibility symlinks...
-
-	# This function has exactly two parameters:
-	# - the default libdir, to determine if 1) or 2) applies
-	# - the location of the symlink (which points to ".")
-
-	# Note: we call this only in the ${SYMLINK_LIB} = no codepath, since
-	# there never was a ${SYMLINK_LIB} = yes riscv profile.
-
-	case ${CHOST} in
-	riscv*)
-		# are we on a one level libdir profile? is there no symlink yet?
-		if [[ ${1} != */* && ! -L ${2} ]] ; then
-			ln -s . $2 || die "Unable to make $2 riscv compatibility symlink"
-		fi
-		;;
-	esac
-}
-
-# Create our multilib dirs - the Makefile has no knowledge of this
-multilib_layout() {
-	local dir def_libdir libdir libdirs
-	local prefix prefix_lst
-	def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
-	libdirs=$(get_all_libdirs)
-
-	if [[ -z "${SYMLINK_LIB}" || ${SYMLINK_LIB} = no ]] ; then
-		prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
-		for prefix in "${prefix_lst[@]}"; do
-			for libdir in ${libdirs}; do
-				dir="${prefix}${libdir}"
-				if [[ -e "${dir}" ]]; then
-					[[ ! -d "${dir}" ]] &&
-						die "${dir} exists but is not a directory"
-					continue
-				fi
-				if ! use split-usr && [[ ${prefix} = ${EROOT}/ ]]; then
-					libdir="${libdir%%/*}"
-					dir="${prefix}${libdir}"
-					einfo "symlinking ${dir} to usr/${libdir}"
-					ln -s usr/${libdir} ${dir} ||
-						die "Unable to make ${dir} symlink"
-				else
-					einfo "creating directory ${dir}"
-					mkdir -p "${dir}" ||
-						die "Unable to create ${dir} directory"
-				fi
-			done
-			riscv_compat_symlink "${def_libdir}" "${prefix}${def_libdir}/${DEFAULT_ABI}"
-		done
-		return 0
-	fi
-
-	[ -z "${def_libdir}" ] &&
-		die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
-
-	# figure out which paths should be symlinks and which should be directories
-	local dirs syms exp d
-	for libdir in ${libdirs} ; do
-		if use split-usr ; then
-			exp=( {,usr/,usr/local/}${libdir} )
-		else
-			exp=( {usr/,usr/local/}${libdir} )
-		fi
-		for d in "${exp[@]}" ; do
-			# most things should be dirs
-			if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
-				[ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
-			else
-				[ -h "${d}" ] && syms+=" ${d}"
-			fi
-		done
-	done
-	if [ -n "${syms}${dirs}" ] ; then
-		ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
-		ewarn "have these paths configured as follows:"
-		[ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
-		[ -n "${syms}" ] && ewarn "directories:${syms}"
-		ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
-		ewarn "If things fail, you will need to manually create/move the directories."
-		echo
-	fi
-
-	# setup symlinks and dirs where we expect them to be; do not migrate
-	# data ... just fall over in that case.
-	if use split-usr ; then
-		prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
-	else
-		prefix_lst=( "${EROOT}"/{usr/,usr/local/} )
-	fi
-	for prefix in "${prefix_lst[@]}"; do
-		if [ "${SYMLINK_LIB}" = yes ] ; then
-			# we need to make sure "lib" points to the native libdir
-			if [ -h "${prefix}lib" ] ; then
-				# it's already a symlink!  assume it's pointing to right place ...
-				continue
-			elif [ -d "${prefix}lib" ] ; then
-				# "lib" is a dir, so need to convert to a symlink
-				ewarn "Converting ${prefix}lib from a dir to a symlink"
-				rm -f "${prefix}lib"/.keep || die
-				if rmdir "${prefix}lib" 2>/dev/null ; then
-					ln -s ${def_libdir} "${prefix}lib" || die
-				else
-					die "non-empty dir found where we needed a symlink: ${prefix}lib"
-				fi
-			else
-				# nothing exists, so just set it up sanely
-				ewarn "Initializing ${prefix}lib as a symlink"
-				mkdir -p "${prefix}" || die
-				rm -f "${prefix}lib" || die
-				ln -s ${def_libdir} "${prefix}lib" || die
-				mkdir -p "${prefix}${def_libdir}" || die #423571
-			fi
-		else
-			# we need to make sure "lib" is a dir
-			if [ -h "${prefix}lib" ] ; then
-				# "lib" is a symlink, so need to convert to a dir
-				ewarn "Converting ${prefix}lib from a symlink to a dir"
-				rm -f "${prefix}lib" || die
-				if [ -d "${prefix}lib32" ] ; then
-					ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
-					mv "${prefix}lib32" "${prefix}lib" || die
-				else
-					mkdir -p "${prefix}lib" || die
-				fi
-			elif [ -d "${prefix}lib" ] && ! has lib32 ${libdirs} ; then
-				# make sure the old "lib" ABI location does not exist; we
-				# only symlinked the lib dir on systems where we moved it
-				# to "lib32" ...
-				case ${CHOST} in
-				*-gentoo-freebsd*) ;; # We want it the other way on fbsd.
-				i?86*|x86_64*|powerpc*|sparc*|s390*)
-					if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
-						rm -f "${prefix}lib32"/.keep || die
-						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
-							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
-							die "non-empty dir found where there should be none: ${prefix}lib32"
-						fi
-					fi
-					;;
-				esac
-			else
-				# nothing exists, so just set it up sanely
-				ewarn "Initializing ${prefix}lib as a dir"
-				mkdir -p "${prefix}lib" || die
-			fi
-		fi
-	done
-	if ! use split-usr ; then
-		for libdir in ${libdirs}; do
-			if [[ ! -e "${EROOT}${libdir}" ]]; then
-				ln -s usr/"${libdir}" "${EROOT}${libdir}" ||
-					die "Unable to make ${EROOT}${libdir} symlink"
-			fi
-		done
-	fi
-}
-
-pkg_preinst() {
-	# This is written in src_install (so it's in CONTENTS), but punt all
-	# pending updates to avoid user having to do etc-update (and make the
-	# pkg_postinst logic simpler).
-	rm -f "${EROOT}"/etc/._cfg????_gentoo-release || die
-
-	# We need to install directories and maybe some dev nodes when building
-	# stages, but they cannot be in CONTENTS.
-	# Also, we cannot reference $S as binpkg will break so we do this.
-	multilib_layout
-	if use build ; then
-		if use split-usr ; then
-			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
-		else
-			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
-		fi
-	fi
-	rm -f "${ED}"/usr/share/${PN}/Makefile || die
-}
-
-src_prepare() {
-	default
-
-	# don't want symlinked directories in PATH on systems with usr-merge
-	if ! use split-usr && ! use prefix-guest; then
-		sed \
-			-e 's|:/usr/sbin:|:|g' \
-			-e 's|:/sbin:|:|g' \
-			-e 's|:/bin:|:|g' \
-			-i etc/env.d/50baselayout || die
-	fi
-
-	if use prefix; then
-		hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
-		hprefixify etc/shells share.Linux/passwd
-		hprefixify -w '/PATH=/' etc/env.d/50baselayout
-		hprefixify -w 1 etc/env.d/50baselayout
-		echo PATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
-
-		# change branding
-		sed -i \
-			-e '/gentoo-release/s/Gentoo Base/Gentoo Prefix Base/' \
-			-e '/make_os_release/s/${OS}/Prefix/' \
-			Makefile || die
-	fi
-
-	# handle multilib paths.  do it here because we want this behavior
-	# regardless of the C library that you're using.  we do explicitly
-	# list paths which the native ldconfig searches, but this isn't
-	# problematic as it doesn't change the resulting ld.so.cache or
-	# take longer to generate.  similarly, listing both the native
-	# path and the symlinked path doesn't change the resulting cache.
-	local libdir ldpaths
-	for libdir in $(get_all_libdirs) ; do
-		if use split-usr || use prefix-guest; then
-			ldpaths+=":${EPREFIX}/${libdir}"
-		fi
-		ldpaths+=":${EPREFIX}/usr/${libdir}"
-		ldpaths+=":${EPREFIX}/usr/local/${libdir}"
-	done
-	echo "LDPATH='${ldpaths#:}'" >> etc/env.d/50baselayout
-}
-
-src_install() {
-	emake \
-		OS=Linux \
-		DESTDIR="${ED}" \
-		install
-
-	if [[ ${CHOST} == *-darwin* ]] ; then
-		# add SDK path which contains development manpages
-		echo "MANPATH=${EPREFIX}/MacOSX.sdk/usr/share/man" \
-			> "${ED}"/etc/env.d/98macos-sdk
-	fi
-
-	# need the makefile in pkg_preinst
-	insinto /usr/share/${PN}
-	doins Makefile
-
-	dodoc ChangeLog
-
-	# bug 858596
-	if use prefix-guest ; then
-		dodir sbin
-		cat > "${ED}"/sbin/runscript <<- EOF
-			#!/usr/bin/env sh
-			source "${EPREFIX}/lib/gentoo/functions.sh"
-
-			eerror "runscript/openrc-run not supported by Gentoo Prefix Base System release ${PV}" 1>&2
-			exit 1
-		EOF
-		chmod 755 "${ED}"/sbin/runscript || die
-		cp "${ED}"/sbin/{runscript,openrc-run} || die
-	fi
-}
-
-pkg_postinst() {
-	local x
-
-	# We installed some files to /usr/share/baselayout instead of /etc to stop
-	# (1) overwriting the user's settings
-	# (2) screwing things up when attempting to merge files
-	# (3) accidentally packaging up personal files with quickpkg
-	# If they don't exist then we install them
-	for x in master.passwd passwd shadow group fstab ; do
-		[ -e "${EROOT}/etc/${x}" ] && continue
-		[ -e "${EROOT}/usr/share/baselayout/${x}" ] || continue
-		cp -p "${EROOT}/usr/share/baselayout/${x}" "${EROOT}"/etc || die
-	done
-
-	# Force shadow permissions to not be world-readable #260993
-	for x in shadow ; do
-		if [ -e "${EROOT}/etc/${x}" ] ; then
-			chmod o-rwx "${EROOT}/etc/${x}" || die
-		fi
-	done
-
-	# Take care of the etc-update for the user
-	if [ -e "${EROOT}"/etc/._cfg0000_gentoo-release ] ; then
-		mv "${EROOT}"/etc/._cfg0000_gentoo-release "${EROOT}"/etc/gentoo-release || die
-	fi
-
-	# whine about users that lack passwords #193541
-	if [[ -e "${EROOT}"/etc/shadow ]] ; then
-		local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
-		if [[ -n ${bad_users} ]] ; then
-			echo
-			ewarn "The following users lack passwords!"
-			ewarn ${bad_users}
-		fi
-	fi
-
-	# whine about users with invalid shells #215698
-	if [[ -e "${EROOT}"/etc/passwd ]] ; then
-		local bad_shells=$(awk -F: 'system("test -e ${ROOT}" $7) { print $1 " - " $7}' "${EROOT}"/etc/passwd | sort)
-		if [[ -n ${bad_shells} ]] ; then
-			echo
-			ewarn "The following users have non-existent shells!"
-			ewarn "${bad_shells}"
-		fi
-	fi
-
-	# https://bugs.gentoo.org/361349
-	if use kernel_linux; then
-		mkdir -p "${EROOT}"/run || die
-
-		local found fstype mountpoint
-		while read -r _ mountpoint fstype _; do
-		[[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
-		done < "${ROOT}"/proc/mounts
-		[[ -z ${found} ]] &&
-			ewarn "You should reboot now to get /run mounted with tmpfs!"
-	fi
-
-	for x in ${REPLACING_VERSIONS}; do
-		if ver_test 2.4 -lt ${x}; then
-			ewarn "After updating ${EROOT}/etc/profile, please run"
-			ewarn "env-update && . /etc/profile"
-		fi
-
-		if ver_test 2.6 -lt ${x}; then
-			ewarn "Please run env-update then log out and back in to"
-			ewarn "update your path."
-		fi
-		# clean up after 2.5 typos
-		# https://bugs.gentoo.org/show_bug.cgi?id=656380
-		if [[ ${x} == 2.5 ]]; then
-			rm -fr "${EROOT}/{,usr" || die
-		fi
-	done
-
-	if [[ -e "${EROOT}"/etc/env.d/00basic ]]; then
-		ewarn "${EROOT}/etc/env.d/00basic is now ${EROOT}/etc/env.d/50baselayout"
-		ewarn "Please migrate your changes."
-	fi
-}

diff --git a/sys-apps/baselayout/baselayout-2.8.ebuild b/sys-apps/baselayout/baselayout-2.8.ebuild
deleted file mode 100644
index 5767ed31ca80..000000000000
--- a/sys-apps/baselayout/baselayout-2.8.ebuild
+++ /dev/null
@@ -1,338 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit multilib prefix
-
-DESCRIPTION="Filesystem baselayout and init scripts"
-HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
-if [[ ${PV} = 9999 ]]; then
-	EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/${PN}.git"
-	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"
-fi
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="build +split-usr"
-
-pkg_setup() {
-	multilib_layout
-}
-
-riscv_compat_symlink() {
-	# Here we apply some special sauce for riscv.
-	# Two multilib layouts exist for now:
-	# 1) one level libdirs, (32bit) "lib" and (64bit) "lib64"
-	#    these are chosen by us to closely resemble other arches
-	# 2) two level libdirs, "lib64/lp64d" "lib64/lp64" "lib32/ilp32d" ...
-	#    this is the glibc/gcc default
-	# Unfortunately, the default has only one fallback, which is "lib"
-	# for both 32bit and 64bit. So things do not break in 1), we need
-	# to provide compatibility symlinks...
-
-	# This function has exactly two parameters:
-	# - the default libdir, to determine if 1) or 2) applies
-	# - the location of the symlink (which points to ".")
-
-	# Note: we call this only in the ${SYMLINK_LIB} = no codepath, since
-	# there never was a ${SYMLINK_LIB} = yes riscv profile.
-
-	case ${CHOST} in
-	riscv*)
-		# are we on a one level libdir profile? is there no symlink yet?
-		if [[ ${1} != */* && ! -L ${2} ]] ; then
-			ln -s . $2 || die "Unable to make $2 riscv compatibility symlink"
-		fi
-		;;
-	esac
-}
-
-# Create our multilib dirs - the Makefile has no knowledge of this
-multilib_layout() {
-	local dir def_libdir libdir libdirs
-	local prefix prefix_lst
-	def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
-	libdirs=$(get_all_libdirs)
-
-	if [[ -z "${SYMLINK_LIB}" || ${SYMLINK_LIB} = no ]] ; then
-		prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
-		for prefix in "${prefix_lst[@]}"; do
-			for libdir in ${libdirs}; do
-				dir="${prefix}${libdir}"
-				if [[ -e "${dir}" ]]; then
-					[[ ! -d "${dir}" ]] &&
-						die "${dir} exists but is not a directory"
-					continue
-				fi
-				if ! use split-usr && [[ ${prefix} = ${EROOT}/ ]]; then
-					libdir="${libdir%%/*}"
-					dir="${prefix}${libdir}"
-					einfo "symlinking ${dir} to usr/${libdir}"
-					ln -s usr/${libdir} ${dir} ||
-						die "Unable to make ${dir} symlink"
-				else
-					einfo "creating directory ${dir}"
-					mkdir -p "${dir}" ||
-						die "Unable to create ${dir} directory"
-				fi
-			done
-			riscv_compat_symlink "${def_libdir}" "${prefix}${def_libdir}/${DEFAULT_ABI}"
-		done
-		return 0
-	fi
-
-	[ -z "${def_libdir}" ] &&
-		die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
-
-	# figure out which paths should be symlinks and which should be directories
-	local dirs syms exp d
-	for libdir in ${libdirs} ; do
-		if use split-usr ; then
-			exp=( {,usr/,usr/local/}${libdir} )
-		else
-			exp=( {usr/,usr/local/}${libdir} )
-		fi
-		for d in "${exp[@]}" ; do
-			# most things should be dirs
-			if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
-				[ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
-			else
-				[ -h "${d}" ] && syms+=" ${d}"
-			fi
-		done
-	done
-	if [ -n "${syms}${dirs}" ] ; then
-		ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
-		ewarn "have these paths configured as follows:"
-		[ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
-		[ -n "${syms}" ] && ewarn "directories:${syms}"
-		ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
-		ewarn "If things fail, you will need to manually create/move the directories."
-		echo
-	fi
-
-	# setup symlinks and dirs where we expect them to be; do not migrate
-	# data ... just fall over in that case.
-	if use split-usr ; then
-		prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
-	else
-		prefix_lst=( "${EROOT}"/{usr/,usr/local/} )
-	fi
-	for prefix in "${prefix_lst[@]}"; do
-		if [ "${SYMLINK_LIB}" = yes ] ; then
-			# we need to make sure "lib" points to the native libdir
-			if [ -h "${prefix}lib" ] ; then
-				# it's already a symlink!  assume it's pointing to right place ...
-				continue
-			elif [ -d "${prefix}lib" ] ; then
-				# "lib" is a dir, so need to convert to a symlink
-				ewarn "Converting ${prefix}lib from a dir to a symlink"
-				rm -f "${prefix}lib"/.keep || die
-				if rmdir "${prefix}lib" 2>/dev/null ; then
-					ln -s ${def_libdir} "${prefix}lib" || die
-				else
-					die "non-empty dir found where we needed a symlink: ${prefix}lib"
-				fi
-			else
-				# nothing exists, so just set it up sanely
-				ewarn "Initializing ${prefix}lib as a symlink"
-				mkdir -p "${prefix}" || die
-				rm -f "${prefix}lib" || die
-				ln -s ${def_libdir} "${prefix}lib" || die
-				mkdir -p "${prefix}${def_libdir}" || die #423571
-			fi
-		else
-			# we need to make sure "lib" is a dir
-			if [ -h "${prefix}lib" ] ; then
-				# "lib" is a symlink, so need to convert to a dir
-				ewarn "Converting ${prefix}lib from a symlink to a dir"
-				rm -f "${prefix}lib" || die
-				if [ -d "${prefix}lib32" ] ; then
-					ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
-					mv "${prefix}lib32" "${prefix}lib" || die
-				else
-					mkdir -p "${prefix}lib" || die
-				fi
-			elif [ -d "${prefix}lib" ] && ! has lib32 ${libdirs} ; then
-				# make sure the old "lib" ABI location does not exist; we
-				# only symlinked the lib dir on systems where we moved it
-				# to "lib32" ...
-				case ${CHOST} in
-				*-gentoo-freebsd*) ;; # We want it the other way on fbsd.
-				i?86*|x86_64*|powerpc*|sparc*|s390*)
-					if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
-						rm -f "${prefix}lib32"/.keep || die
-						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
-							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
-							die "non-empty dir found where there should be none: ${prefix}lib32"
-						fi
-					fi
-					;;
-				esac
-			else
-				# nothing exists, so just set it up sanely
-				ewarn "Initializing ${prefix}lib as a dir"
-				mkdir -p "${prefix}lib" || die
-			fi
-		fi
-	done
-	if ! use split-usr ; then
-		for libdir in ${libdirs}; do
-			if [[ ! -e "${EROOT}${libdir}" ]]; then
-				ln -s usr/"${libdir}" "${EROOT}${libdir}" ||
-					die "Unable to make ${EROOT}${libdir} symlink"
-			fi
-		done
-	fi
-}
-
-pkg_preinst() {
-	# This is written in src_install (so it's in CONTENTS), but punt all
-	# pending updates to avoid user having to do etc-update (and make the
-	# pkg_postinst logic simpler).
-	rm -f "${EROOT}"/etc/._cfg????_gentoo-release || die
-
-	# We need to install directories and maybe some dev nodes when building
-	# stages, but they cannot be in CONTENTS.
-	# Also, we cannot reference $S as binpkg will break so we do this.
-	multilib_layout
-	if use build ; then
-		if use split-usr ; then
-			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
-		else
-			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
-		fi
-	fi
-	rm -f "${ED}"/usr/share/${PN}/Makefile || die
-}
-
-src_prepare() {
-	default
-	if use prefix; then
-		hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
-		hprefixify etc/{env.d/50baselayout,shells} share.Linux/passwd
-		echo PATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
-	fi
-
-	# don't want symlinked directories in PATH on systems with usr-merge
-	if ! use split-usr; then
-		sed \
-			-e 's|/usr/local/sbin:||g' \
-			-e 's|:/usr/sbin:|:|g' \
-			-e 's|:/sbin:|:|g' \
-			-e 's|:/bin:|:|g' \
-			-i etc/env.d/50baselayout || die
-	fi
-
-	# handle multilib paths.  do it here because we want this behavior
-	# regardless of the C library that you're using.  we do explicitly
-	# list paths which the native ldconfig searches, but this isn't
-	# problematic as it doesn't change the resulting ld.so.cache or
-	# take longer to generate.  similarly, listing both the native
-	# path and the symlinked path doesn't change the resulting cache.
-	local libdir ldpaths
-	for libdir in $(get_all_libdirs) ; do
-		use split-usr && ldpaths+=":${EPREFIX}/${libdir}"
-		ldpaths+=":${EPREFIX}/usr/${libdir}"
-		ldpaths+=":${EPREFIX}/usr/local/${libdir}"
-	done
-	echo "LDPATH='${ldpaths#:}'" >> etc/env.d/50baselayout
-}
-
-src_install() {
-	emake \
-		OS=Linux \
-		DESTDIR="${ED}" \
-		install
-
-	# need the makefile in pkg_preinst
-	insinto /usr/share/${PN}
-	doins Makefile
-
-	dodoc ChangeLog
-}
-
-pkg_postinst() {
-	local x
-
-	# We installed some files to /usr/share/baselayout instead of /etc to stop
-	# (1) overwriting the user's settings
-	# (2) screwing things up when attempting to merge files
-	# (3) accidentally packaging up personal files with quickpkg
-	# If they don't exist then we install them
-	for x in master.passwd passwd shadow group fstab ; do
-		[ -e "${EROOT}/etc/${x}" ] && continue
-		[ -e "${EROOT}/usr/share/baselayout/${x}" ] || continue
-		cp -p "${EROOT}/usr/share/baselayout/${x}" "${EROOT}"/etc || die
-	done
-
-	# Force shadow permissions to not be world-readable #260993
-	for x in shadow ; do
-		if [ -e "${EROOT}/etc/${x}" ] ; then
-			chmod o-rwx "${EROOT}/etc/${x}" || die
-		fi
-	done
-
-	# Take care of the etc-update for the user
-	if [ -e "${EROOT}"/etc/._cfg0000_gentoo-release ] ; then
-		mv "${EROOT}"/etc/._cfg0000_gentoo-release "${EROOT}"/etc/gentoo-release || die
-	fi
-
-	# whine about users that lack passwords #193541
-	if [[ -e "${EROOT}"/etc/shadow ]] ; then
-		local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
-		if [[ -n ${bad_users} ]] ; then
-			echo
-			ewarn "The following users lack passwords!"
-			ewarn ${bad_users}
-		fi
-	fi
-
-	# whine about users with invalid shells #215698
-	if [[ -e "${EROOT}"/etc/passwd ]] ; then
-		local bad_shells=$(awk -F: 'system("test -e ${ROOT}" $7) { print $1 " - " $7}' "${EROOT}"/etc/passwd | sort)
-		if [[ -n ${bad_shells} ]] ; then
-			echo
-			ewarn "The following users have non-existent shells!"
-			ewarn "${bad_shells}"
-		fi
-	fi
-
-	# https://bugs.gentoo.org/361349
-	if use kernel_linux; then
-		mkdir -p "${EROOT}"/run || die
-
-		local found fstype mountpoint
-		while read -r _ mountpoint fstype _; do
-		[[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
-		done < "${ROOT}"/proc/mounts
-		[[ -z ${found} ]] &&
-			ewarn "You should reboot now to get /run mounted with tmpfs!"
-	fi
-
-	for x in ${REPLACING_VERSIONS}; do
-		if ver_test 2.4 -lt ${x}; then
-			ewarn "After updating ${EROOT}/etc/profile, please run"
-			ewarn "env-update && . /etc/profile"
-		fi
-
-		if ver_test 2.6 -lt ${x}; then
-			ewarn "Please run env-update then log out and back in to"
-			ewarn "update your path."
-		fi
-		# clean up after 2.5 typos
-		# https://bugs.gentoo.org/show_bug.cgi?id=656380
-		if [[ ${x} == 2.5 ]]; then
-			rm -fr "${EROOT}/{,usr" || die
-		fi
-	done
-
-	if [[ -e "${EROOT}"/etc/env.d/00basic ]]; then
-		ewarn "${EROOT}/etc/env.d/00basic is now ${EROOT}/etc/env.d/50baselayout"
-		ewarn "Please migrate your changes."
-	fi
-}


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2022-11-14 20:26 Arthur Zamarin
  0 siblings, 0 replies; 124+ messages in thread
From: Arthur Zamarin @ 2022-11-14 20:26 UTC (permalink / raw
  To: gentoo-commits

commit:     2f7993ea177cf8ca5696ccfd6b76caf4b9be9eac
Author:     Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Mon Nov 14 20:26:03 2022 +0000
Commit:     Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Mon Nov 14 20:26:03 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2f7993ea

sys-apps/baselayout: Stabilize 2.9 ALLARCHES, #881299

Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>

 sys-apps/baselayout/baselayout-2.9.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys-apps/baselayout/baselayout-2.9.ebuild b/sys-apps/baselayout/baselayout-2.9.ebuild
index b7fc36bdb833..6cb197c3c6fe 100644
--- a/sys-apps/baselayout/baselayout-2.9.ebuild
+++ b/sys-apps/baselayout/baselayout-2.9.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"


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2022-09-18 21:50 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2022-09-18 21:50 UTC (permalink / raw
  To: gentoo-commits

commit:     b7f04e012e67a11a111f9fdd8c1f4adc2aebab02
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Sun Sep 18 21:50:00 2022 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Sun Sep 18 21:50:31 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b7f04e01

sys-apps/baselayout: add 2.9

Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-apps/baselayout/Manifest              |   1 +
 sys-apps/baselayout/baselayout-2.9.ebuild | 370 ++++++++++++++++++++++++++++++
 2 files changed, 371 insertions(+)

diff --git a/sys-apps/baselayout/Manifest b/sys-apps/baselayout/Manifest
index a24c7a1d49bb..17b0a2be2cb7 100644
--- a/sys-apps/baselayout/Manifest
+++ b/sys-apps/baselayout/Manifest
@@ -1,2 +1,3 @@
 DIST baselayout-2.7.tar.bz2 30317 BLAKE2B 7b7c284b7d0a9608a0d03dbde0d62d793829b61d5361f5062fdeb8880a2f792c142e20acf7fa92e713e2ebb0bd1609ca65bc8a4191f2bf2c5df4f474eaeef1ee SHA512 8b28d2dc20fd5887db5c0e6b67a4217c4d0730529023fc57fb1ee95a431e1f492fb21e3e66980bef766819e9f542dc7e4ad3ae25465390194bbf970c3653c88e
 DIST baselayout-2.8.tar.bz2 30236 BLAKE2B 0bac62dd5585f1f550da8c99d06a7f8ab6cdd473b0499a8f0ac58a5c43e3883b42adb7f80c172d894fae93a6ddb6fec7a65cad9897f4a2532b481c82065ed96b SHA512 506d7cc8399b530eabc9ba2d16cbb6c024350f9487a2a9168c670cee9876f62e5a716942f698c4883013d6ccc9591c2d7fc2ac9d782f0ce8d724371ca94c739a
+DIST baselayout-2.9.tar.bz2 30200 BLAKE2B 3a997e847e853a5bcdce7eb06d50fda4727a6c408ca614bdc8dd576bfc9296d3c625c4e8791dbdb078dd5088f818e5ee98eea5d14d737f465ed225554da26180 SHA512 c07726141446c9d9202bac19642baf819b28a838814e1dd3c200d1768af64a913bd9188923029e0b0edf7e420d5aad7bdde278d6c24c4f40029fddbad28d8e02

diff --git a/sys-apps/baselayout/baselayout-2.9.ebuild b/sys-apps/baselayout/baselayout-2.9.ebuild
new file mode 100644
index 000000000000..b7fc36bdb833
--- /dev/null
+++ b/sys-apps/baselayout/baselayout-2.9.ebuild
@@ -0,0 +1,370 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit multilib prefix
+
+DESCRIPTION="Filesystem baselayout and init scripts"
+HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
+if [[ ${PV} = 9999 ]]; then
+	EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/${PN}.git"
+	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"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="build +split-usr"
+
+RDEPEND="!sys-apps/baselayout-prefix"
+
+pkg_setup() {
+	multilib_layout
+}
+
+riscv_compat_symlink() {
+	# Here we apply some special sauce for riscv.
+	# Two multilib layouts exist for now:
+	# 1) one level libdirs, (32bit) "lib" and (64bit) "lib64"
+	#    these are chosen by us to closely resemble other arches
+	# 2) two level libdirs, "lib64/lp64d" "lib64/lp64" "lib32/ilp32d" ...
+	#    this is the glibc/gcc default
+	# Unfortunately, the default has only one fallback, which is "lib"
+	# for both 32bit and 64bit. So things do not break in 1), we need
+	# to provide compatibility symlinks...
+
+	# This function has exactly two parameters:
+	# - the default libdir, to determine if 1) or 2) applies
+	# - the location of the symlink (which points to ".")
+
+	# Note: we call this only in the ${SYMLINK_LIB} = no codepath, since
+	# there never was a ${SYMLINK_LIB} = yes riscv profile.
+
+	case ${CHOST} in
+	riscv*)
+		# are we on a one level libdir profile? is there no symlink yet?
+		if [[ ${1} != */* && ! -L ${2} ]] ; then
+			ln -s . $2 || die "Unable to make $2 riscv compatibility symlink"
+		fi
+		;;
+	esac
+}
+
+# Create our multilib dirs - the Makefile has no knowledge of this
+multilib_layout() {
+	local dir def_libdir libdir libdirs
+	local prefix prefix_lst
+	def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
+	libdirs=$(get_all_libdirs)
+
+	if [[ -z "${SYMLINK_LIB}" || ${SYMLINK_LIB} = no ]] ; then
+		prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
+		for prefix in "${prefix_lst[@]}"; do
+			for libdir in ${libdirs}; do
+				dir="${prefix}${libdir}"
+				if [[ -e "${dir}" ]]; then
+					[[ ! -d "${dir}" ]] &&
+						die "${dir} exists but is not a directory"
+					continue
+				fi
+				if ! use split-usr && [[ ${prefix} = ${EROOT}/ ]]; then
+					libdir="${libdir%%/*}"
+					dir="${prefix}${libdir}"
+					einfo "symlinking ${dir} to usr/${libdir}"
+					ln -s usr/${libdir} ${dir} ||
+						die "Unable to make ${dir} symlink"
+				else
+					einfo "creating directory ${dir}"
+					mkdir -p "${dir}" ||
+						die "Unable to create ${dir} directory"
+				fi
+			done
+			riscv_compat_symlink "${def_libdir}" "${prefix}${def_libdir}/${DEFAULT_ABI}"
+		done
+		return 0
+	fi
+
+	[ -z "${def_libdir}" ] &&
+		die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
+
+	# figure out which paths should be symlinks and which should be directories
+	local dirs syms exp d
+	for libdir in ${libdirs} ; do
+		if use split-usr ; then
+			exp=( {,usr/,usr/local/}${libdir} )
+		else
+			exp=( {usr/,usr/local/}${libdir} )
+		fi
+		for d in "${exp[@]}" ; do
+			# most things should be dirs
+			if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
+				[ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
+			else
+				[ -h "${d}" ] && syms+=" ${d}"
+			fi
+		done
+	done
+	if [ -n "${syms}${dirs}" ] ; then
+		ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
+		ewarn "have these paths configured as follows:"
+		[ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
+		[ -n "${syms}" ] && ewarn "directories:${syms}"
+		ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
+		ewarn "If things fail, you will need to manually create/move the directories."
+		echo
+	fi
+
+	# setup symlinks and dirs where we expect them to be; do not migrate
+	# data ... just fall over in that case.
+	if use split-usr ; then
+		prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
+	else
+		prefix_lst=( "${EROOT}"/{usr/,usr/local/} )
+	fi
+	for prefix in "${prefix_lst[@]}"; do
+		if [ "${SYMLINK_LIB}" = yes ] ; then
+			# we need to make sure "lib" points to the native libdir
+			if [ -h "${prefix}lib" ] ; then
+				# it's already a symlink!  assume it's pointing to right place ...
+				continue
+			elif [ -d "${prefix}lib" ] ; then
+				# "lib" is a dir, so need to convert to a symlink
+				ewarn "Converting ${prefix}lib from a dir to a symlink"
+				rm -f "${prefix}lib"/.keep || die
+				if rmdir "${prefix}lib" 2>/dev/null ; then
+					ln -s ${def_libdir} "${prefix}lib" || die
+				else
+					die "non-empty dir found where we needed a symlink: ${prefix}lib"
+				fi
+			else
+				# nothing exists, so just set it up sanely
+				ewarn "Initializing ${prefix}lib as a symlink"
+				mkdir -p "${prefix}" || die
+				rm -f "${prefix}lib" || die
+				ln -s ${def_libdir} "${prefix}lib" || die
+				mkdir -p "${prefix}${def_libdir}" || die #423571
+			fi
+		else
+			# we need to make sure "lib" is a dir
+			if [ -h "${prefix}lib" ] ; then
+				# "lib" is a symlink, so need to convert to a dir
+				ewarn "Converting ${prefix}lib from a symlink to a dir"
+				rm -f "${prefix}lib" || die
+				if [ -d "${prefix}lib32" ] ; then
+					ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
+					mv "${prefix}lib32" "${prefix}lib" || die
+				else
+					mkdir -p "${prefix}lib" || die
+				fi
+			elif [ -d "${prefix}lib" ] && ! has lib32 ${libdirs} ; then
+				# make sure the old "lib" ABI location does not exist; we
+				# only symlinked the lib dir on systems where we moved it
+				# to "lib32" ...
+				case ${CHOST} in
+				*-gentoo-freebsd*) ;; # We want it the other way on fbsd.
+				i?86*|x86_64*|powerpc*|sparc*|s390*)
+					if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
+						rm -f "${prefix}lib32"/.keep || die
+						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
+							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
+							die "non-empty dir found where there should be none: ${prefix}lib32"
+						fi
+					fi
+					;;
+				esac
+			else
+				# nothing exists, so just set it up sanely
+				ewarn "Initializing ${prefix}lib as a dir"
+				mkdir -p "${prefix}lib" || die
+			fi
+		fi
+	done
+	if ! use split-usr ; then
+		for libdir in ${libdirs}; do
+			if [[ ! -e "${EROOT}${libdir}" ]]; then
+				ln -s usr/"${libdir}" "${EROOT}${libdir}" ||
+					die "Unable to make ${EROOT}${libdir} symlink"
+			fi
+		done
+	fi
+}
+
+pkg_preinst() {
+	# This is written in src_install (so it's in CONTENTS), but punt all
+	# pending updates to avoid user having to do etc-update (and make the
+	# pkg_postinst logic simpler).
+	rm -f "${EROOT}"/etc/._cfg????_gentoo-release || die
+
+	# We need to install directories and maybe some dev nodes when building
+	# stages, but they cannot be in CONTENTS.
+	# Also, we cannot reference $S as binpkg will break so we do this.
+	multilib_layout
+	if use build ; then
+		if use split-usr ; then
+			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
+		else
+			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
+		fi
+	fi
+	rm -f "${ED}"/usr/share/${PN}/Makefile || die
+}
+
+src_prepare() {
+	default
+
+	# don't want symlinked directories in PATH on systems with usr-merge
+	if ! use split-usr && ! use prefix-guest; then
+		sed \
+			-e 's|:/usr/sbin:|:|g' \
+			-e 's|:/sbin:|:|g' \
+			-e 's|:/bin:|:|g' \
+			-i etc/env.d/50baselayout || die
+	fi
+
+	if use prefix; then
+		hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
+		hprefixify etc/shells share.Linux/passwd
+		hprefixify -w '/PATH=/' etc/env.d/50baselayout
+		hprefixify -w 1 etc/env.d/50baselayout
+		echo PATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
+
+		# change branding
+		sed -i \
+			-e '/gentoo-release/s/Gentoo Base/Gentoo Prefix Base/' \
+			-e '/make_os_release/s/${OS}/Prefix/' \
+			Makefile || die
+	fi
+
+	# handle multilib paths.  do it here because we want this behavior
+	# regardless of the C library that you're using.  we do explicitly
+	# list paths which the native ldconfig searches, but this isn't
+	# problematic as it doesn't change the resulting ld.so.cache or
+	# take longer to generate.  similarly, listing both the native
+	# path and the symlinked path doesn't change the resulting cache.
+	local libdir ldpaths
+	for libdir in $(get_all_libdirs) ; do
+		if use split-usr || use prefix-guest; then
+			ldpaths+=":${EPREFIX}/${libdir}"
+		fi
+		ldpaths+=":${EPREFIX}/usr/${libdir}"
+		ldpaths+=":${EPREFIX}/usr/local/${libdir}"
+	done
+	echo "LDPATH='${ldpaths#:}'" >> etc/env.d/50baselayout
+}
+
+src_install() {
+	emake \
+		OS=Linux \
+		DESTDIR="${ED}" \
+		install
+
+	if [[ ${CHOST} == *-darwin* ]] ; then
+		# add SDK path which contains development manpages
+		echo "MANPATH=${EPREFIX}/MacOSX.sdk/usr/share/man" \
+			> "${ED}"/etc/env.d/98macos-sdk
+	fi
+
+	# need the makefile in pkg_preinst
+	insinto /usr/share/${PN}
+	doins Makefile
+
+	dodoc ChangeLog
+
+	# bug 858596
+	if use prefix-guest ; then
+		dodir sbin
+		cat > "${ED}"/sbin/runscript <<- EOF
+			#!/usr/bin/env sh
+			source "${EPREFIX}/lib/gentoo/functions.sh"
+
+			eerror "runscript/openrc-run not supported by Gentoo Prefix Base System release ${PV}" 1>&2
+			exit 1
+		EOF
+		chmod 755 "${ED}"/sbin/runscript || die
+		cp "${ED}"/sbin/{runscript,openrc-run} || die
+	fi
+}
+
+pkg_postinst() {
+	local x
+
+	# We installed some files to /usr/share/baselayout instead of /etc to stop
+	# (1) overwriting the user's settings
+	# (2) screwing things up when attempting to merge files
+	# (3) accidentally packaging up personal files with quickpkg
+	# If they don't exist then we install them
+	for x in master.passwd passwd shadow group fstab ; do
+		[ -e "${EROOT}/etc/${x}" ] && continue
+		[ -e "${EROOT}/usr/share/baselayout/${x}" ] || continue
+		cp -p "${EROOT}/usr/share/baselayout/${x}" "${EROOT}"/etc || die
+	done
+
+	# Force shadow permissions to not be world-readable #260993
+	for x in shadow ; do
+		if [ -e "${EROOT}/etc/${x}" ] ; then
+			chmod o-rwx "${EROOT}/etc/${x}" || die
+		fi
+	done
+
+	# Take care of the etc-update for the user
+	if [ -e "${EROOT}"/etc/._cfg0000_gentoo-release ] ; then
+		mv "${EROOT}"/etc/._cfg0000_gentoo-release "${EROOT}"/etc/gentoo-release || die
+	fi
+
+	# whine about users that lack passwords #193541
+	if [[ -e "${EROOT}"/etc/shadow ]] ; then
+		local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
+		if [[ -n ${bad_users} ]] ; then
+			echo
+			ewarn "The following users lack passwords!"
+			ewarn ${bad_users}
+		fi
+	fi
+
+	# whine about users with invalid shells #215698
+	if [[ -e "${EROOT}"/etc/passwd ]] ; then
+		local bad_shells=$(awk -F: 'system("test -e ${ROOT}" $7) { print $1 " - " $7}' "${EROOT}"/etc/passwd | sort)
+		if [[ -n ${bad_shells} ]] ; then
+			echo
+			ewarn "The following users have non-existent shells!"
+			ewarn "${bad_shells}"
+		fi
+	fi
+
+	# https://bugs.gentoo.org/361349
+	if use kernel_linux; then
+		mkdir -p "${EROOT}"/run || die
+
+		local found fstype mountpoint
+		while read -r _ mountpoint fstype _; do
+		[[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
+		done < "${ROOT}"/proc/mounts
+		[[ -z ${found} ]] &&
+			ewarn "You should reboot now to get /run mounted with tmpfs!"
+	fi
+
+	for x in ${REPLACING_VERSIONS}; do
+		if ver_test 2.4 -lt ${x}; then
+			ewarn "After updating ${EROOT}/etc/profile, please run"
+			ewarn "env-update && . /etc/profile"
+		fi
+
+		if ver_test 2.6 -lt ${x}; then
+			ewarn "Please run env-update then log out and back in to"
+			ewarn "update your path."
+		fi
+		# clean up after 2.5 typos
+		# https://bugs.gentoo.org/show_bug.cgi?id=656380
+		if [[ ${x} == 2.5 ]]; then
+			rm -fr "${EROOT}/{,usr" || die
+		fi
+	done
+
+	if [[ -e "${EROOT}"/etc/env.d/00basic ]]; then
+		ewarn "${EROOT}/etc/env.d/00basic is now ${EROOT}/etc/env.d/50baselayout"
+		ewarn "Please migrate your changes."
+	fi
+}


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2022-09-18  3:12 Mike Gilbert
  0 siblings, 0 replies; 124+ messages in thread
From: Mike Gilbert @ 2022-09-18  3:12 UTC (permalink / raw
  To: gentoo-commits

commit:     b607b26fff6dd73d886f2dc0afc1cf439510e509
Author:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
AuthorDate: Sun Sep 18 03:09:30 2022 +0000
Commit:     Mike Gilbert <floppym <AT> gentoo <DOT> org>
CommitDate: Sun Sep 18 03:10:02 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b607b26f

sys-apps/baselayout: don't prune /usr/local/sbin from PATH on merged-usr

Signed-off-by: Mike Gilbert <floppym <AT> gentoo.org>

 .../baselayout/{baselayout-2.8-r2.ebuild => baselayout-2.8-r3.ebuild}    | 1 -
 sys-apps/baselayout/baselayout-9999.ebuild                               | 1 -
 2 files changed, 2 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-2.8-r2.ebuild b/sys-apps/baselayout/baselayout-2.8-r3.ebuild
similarity index 99%
rename from sys-apps/baselayout/baselayout-2.8-r2.ebuild
rename to sys-apps/baselayout/baselayout-2.8-r3.ebuild
index c6296f1a6f94..b7fc36bdb833 100644
--- a/sys-apps/baselayout/baselayout-2.8-r2.ebuild
+++ b/sys-apps/baselayout/baselayout-2.8-r3.ebuild
@@ -218,7 +218,6 @@ src_prepare() {
 	# don't want symlinked directories in PATH on systems with usr-merge
 	if ! use split-usr && ! use prefix-guest; then
 		sed \
-			-e 's|/usr/local/sbin:||g' \
 			-e 's|:/usr/sbin:|:|g' \
 			-e 's|:/sbin:|:|g' \
 			-e 's|:/bin:|:|g' \

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
index c6296f1a6f94..b7fc36bdb833 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-9999.ebuild
@@ -218,7 +218,6 @@ src_prepare() {
 	# don't want symlinked directories in PATH on systems with usr-merge
 	if ! use split-usr && ! use prefix-guest; then
 		sed \
-			-e 's|/usr/local/sbin:||g' \
 			-e 's|:/usr/sbin:|:|g' \
 			-e 's|:/sbin:|:|g' \
 			-e 's|:/bin:|:|g' \


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2022-07-17 15:50 Fabian Groffen
  0 siblings, 0 replies; 124+ messages in thread
From: Fabian Groffen @ 2022-07-17 15:50 UTC (permalink / raw
  To: gentoo-commits

commit:     ea3a7d8ebed102d8856e00cc1e7014994d0f503d
Author:     Fabian Groffen <grobian <AT> gentoo <DOT> org>
AuthorDate: Sun Jul 17 15:49:34 2022 +0000
Commit:     Fabian Groffen <grobian <AT> gentoo <DOT> org>
CommitDate: Sun Jul 17 15:50:13 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ea3a7d8e

sys-apps/baselayout-2.8-r2: provide runscript for prefix-guest installs

Closes: https://bugs.gentoo.org/858596
Signed-off-by: Fabian Groffen <grobian <AT> gentoo.org>

 .../{baselayout-2.8-r1.ebuild => baselayout-2.8-r2.ebuild} | 14 ++++++++++++++
 sys-apps/baselayout/baselayout-9999.ebuild                 | 14 ++++++++++++++
 2 files changed, 28 insertions(+)

diff --git a/sys-apps/baselayout/baselayout-2.8-r1.ebuild b/sys-apps/baselayout/baselayout-2.8-r2.ebuild
similarity index 96%
rename from sys-apps/baselayout/baselayout-2.8-r1.ebuild
rename to sys-apps/baselayout/baselayout-2.8-r2.ebuild
index c7096be3d978..c6296f1a6f94 100644
--- a/sys-apps/baselayout/baselayout-2.8-r1.ebuild
+++ b/sys-apps/baselayout/baselayout-2.8-r2.ebuild
@@ -273,6 +273,20 @@ src_install() {
 	doins Makefile
 
 	dodoc ChangeLog
+
+	# bug 858596
+	if use prefix-guest ; then
+		dodir sbin
+		cat > "${ED}"/sbin/runscript <<- EOF
+			#!/usr/bin/env sh
+			source "${EPREFIX}/lib/gentoo/functions.sh"
+
+			eerror "runscript/openrc-run not supported by Gentoo Prefix Base System release ${PV}" 1>&2
+			exit 1
+		EOF
+		chmod 755 "${ED}"/sbin/runscript || die
+		cp "${ED}"/sbin/{runscript,openrc-run} || die
+	fi
 }
 
 pkg_postinst() {

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
index c7096be3d978..c6296f1a6f94 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-9999.ebuild
@@ -273,6 +273,20 @@ src_install() {
 	doins Makefile
 
 	dodoc ChangeLog
+
+	# bug 858596
+	if use prefix-guest ; then
+		dodir sbin
+		cat > "${ED}"/sbin/runscript <<- EOF
+			#!/usr/bin/env sh
+			source "${EPREFIX}/lib/gentoo/functions.sh"
+
+			eerror "runscript/openrc-run not supported by Gentoo Prefix Base System release ${PV}" 1>&2
+			exit 1
+		EOF
+		chmod 755 "${ED}"/sbin/runscript || die
+		cp "${ED}"/sbin/{runscript,openrc-run} || die
+	fi
 }
 
 pkg_postinst() {


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2022-07-14 19:30 Fabian Groffen
  0 siblings, 0 replies; 124+ messages in thread
From: Fabian Groffen @ 2022-07-14 19:30 UTC (permalink / raw
  To: gentoo-commits

commit:     7daff7c1239b712c3064f435afd4c8ba80390ebb
Author:     Fabian Groffen <grobian <AT> gentoo <DOT> org>
AuthorDate: Thu Jul 14 19:26:43 2022 +0000
Commit:     Fabian Groffen <grobian <AT> gentoo <DOT> org>
CommitDate: Thu Jul 14 19:29:55 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7daff7c1

sys-apps/baselayout-2.8-r1: add support for prefix-guest + keywords

Signed-off-by: Fabian Groffen <grobian <AT> gentoo.org>

 ...layout-9999.ebuild => baselayout-2.8-r1.ebuild} | 35 +++++++++++++++++-----
 sys-apps/baselayout/baselayout-9999.ebuild         | 35 +++++++++++++++++-----
 2 files changed, 54 insertions(+), 16 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-2.8-r1.ebuild
similarity index 92%
copy from sys-apps/baselayout/baselayout-9999.ebuild
copy to sys-apps/baselayout/baselayout-2.8-r1.ebuild
index 089e43e1cb8c..c7096be3d978 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-2.8-r1.ebuild
@@ -12,13 +12,15 @@ 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 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+	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"
 SLOT="0"
 IUSE="build +split-usr"
 
+RDEPEND="!sys-apps/baselayout-prefix"
+
 pkg_setup() {
 	multilib_layout
 }
@@ -212,14 +214,9 @@ pkg_preinst() {
 
 src_prepare() {
 	default
-	if use prefix; then
-		hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
-		hprefixify etc/{env.d/50baselayout,shells} share.Linux/passwd
-		echo PATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
-	fi
 
 	# don't want symlinked directories in PATH on systems with usr-merge
-	if ! use split-usr; then
+	if ! use split-usr && ! use prefix-guest; then
 		sed \
 			-e 's|/usr/local/sbin:||g' \
 			-e 's|:/usr/sbin:|:|g' \
@@ -228,6 +225,20 @@ src_prepare() {
 			-i etc/env.d/50baselayout || die
 	fi
 
+	if use prefix; then
+		hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
+		hprefixify etc/shells share.Linux/passwd
+		hprefixify -w '/PATH=/' etc/env.d/50baselayout
+		hprefixify -w 1 etc/env.d/50baselayout
+		echo PATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
+
+		# change branding
+		sed -i \
+			-e '/gentoo-release/s/Gentoo Base/Gentoo Prefix Base/' \
+			-e '/make_os_release/s/${OS}/Prefix/' \
+			Makefile || die
+	fi
+
 	# handle multilib paths.  do it here because we want this behavior
 	# regardless of the C library that you're using.  we do explicitly
 	# list paths which the native ldconfig searches, but this isn't
@@ -236,7 +247,9 @@ src_prepare() {
 	# path and the symlinked path doesn't change the resulting cache.
 	local libdir ldpaths
 	for libdir in $(get_all_libdirs) ; do
-		use split-usr && ldpaths+=":${EPREFIX}/${libdir}"
+		if use split-usr || use prefix-guest; then
+			ldpaths+=":${EPREFIX}/${libdir}"
+		fi
 		ldpaths+=":${EPREFIX}/usr/${libdir}"
 		ldpaths+=":${EPREFIX}/usr/local/${libdir}"
 	done
@@ -249,6 +262,12 @@ src_install() {
 		DESTDIR="${ED}" \
 		install
 
+	if [[ ${CHOST} == *-darwin* ]] ; then
+		# add SDK path which contains development manpages
+		echo "MANPATH=${EPREFIX}/MacOSX.sdk/usr/share/man" \
+			> "${ED}"/etc/env.d/98macos-sdk
+	fi
+
 	# need the makefile in pkg_preinst
 	insinto /usr/share/${PN}
 	doins Makefile

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
index 089e43e1cb8c..c7096be3d978 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-9999.ebuild
@@ -12,13 +12,15 @@ 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 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+	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"
 SLOT="0"
 IUSE="build +split-usr"
 
+RDEPEND="!sys-apps/baselayout-prefix"
+
 pkg_setup() {
 	multilib_layout
 }
@@ -212,14 +214,9 @@ pkg_preinst() {
 
 src_prepare() {
 	default
-	if use prefix; then
-		hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
-		hprefixify etc/{env.d/50baselayout,shells} share.Linux/passwd
-		echo PATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
-	fi
 
 	# don't want symlinked directories in PATH on systems with usr-merge
-	if ! use split-usr; then
+	if ! use split-usr && ! use prefix-guest; then
 		sed \
 			-e 's|/usr/local/sbin:||g' \
 			-e 's|:/usr/sbin:|:|g' \
@@ -228,6 +225,20 @@ src_prepare() {
 			-i etc/env.d/50baselayout || die
 	fi
 
+	if use prefix; then
+		hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
+		hprefixify etc/shells share.Linux/passwd
+		hprefixify -w '/PATH=/' etc/env.d/50baselayout
+		hprefixify -w 1 etc/env.d/50baselayout
+		echo PATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
+
+		# change branding
+		sed -i \
+			-e '/gentoo-release/s/Gentoo Base/Gentoo Prefix Base/' \
+			-e '/make_os_release/s/${OS}/Prefix/' \
+			Makefile || die
+	fi
+
 	# handle multilib paths.  do it here because we want this behavior
 	# regardless of the C library that you're using.  we do explicitly
 	# list paths which the native ldconfig searches, but this isn't
@@ -236,7 +247,9 @@ src_prepare() {
 	# path and the symlinked path doesn't change the resulting cache.
 	local libdir ldpaths
 	for libdir in $(get_all_libdirs) ; do
-		use split-usr && ldpaths+=":${EPREFIX}/${libdir}"
+		if use split-usr || use prefix-guest; then
+			ldpaths+=":${EPREFIX}/${libdir}"
+		fi
 		ldpaths+=":${EPREFIX}/usr/${libdir}"
 		ldpaths+=":${EPREFIX}/usr/local/${libdir}"
 	done
@@ -249,6 +262,12 @@ src_install() {
 		DESTDIR="${ED}" \
 		install
 
+	if [[ ${CHOST} == *-darwin* ]] ; then
+		# add SDK path which contains development manpages
+		echo "MANPATH=${EPREFIX}/MacOSX.sdk/usr/share/man" \
+			> "${ED}"/etc/env.d/98macos-sdk
+	fi
+
 	# need the makefile in pkg_preinst
 	insinto /usr/share/${PN}
 	doins Makefile


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2022-05-28 21:01 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2022-05-28 21:01 UTC (permalink / raw
  To: gentoo-commits

commit:     46d93604b6cfaeda6830a7587030e300dff04207
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Sat May 28 21:00:52 2022 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Sat May 28 21:01:24 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=46d93604

sys-apps/baselayout: drop 2.7, 2.7-r1, 2.7-r2

Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-apps/baselayout/baselayout-2.7-r1.ebuild | 317 --------------------------
 sys-apps/baselayout/baselayout-2.7-r2.ebuild | 318 ---------------------------
 sys-apps/baselayout/baselayout-2.7.ebuild    | 312 --------------------------
 3 files changed, 947 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-2.7-r1.ebuild b/sys-apps/baselayout/baselayout-2.7-r1.ebuild
deleted file mode 100644
index 69b7db6825d2..000000000000
--- a/sys-apps/baselayout/baselayout-2.7-r1.ebuild
+++ /dev/null
@@ -1,317 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit multilib versionator prefix
-
-DESCRIPTION="Filesystem baselayout and init scripts"
-HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
-if [[ ${PV} = 9999 ]]; then
-	EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/${PN}.git"
-	inherit git-r3
-else
-	SRC_URI="https://gitweb.gentoo.org/proj/${PN}.git/snapshot/${P}.tar.bz2"
-	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-fi
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="build +split-usr"
-
-pkg_setup() {
-	multilib_layout
-}
-
-# Create our multilib dirs - the Makefile has no knowledge of this
-multilib_layout() {
-	local dir def_libdir libdir libdirs
-	local prefix prefix_lst
-	def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
-	libdirs=$(get_all_libdirs)
-	: ${libdirs:=lib}	# it isn't that we don't trust multilib.eclass...
-
-	if [[ -z "${SYMLINK_LIB}" || ${SYMLINK_LIB} = no ]] ; then
-		prefix_lst=( "${EROOT}"{,usr/,usr/local/} )
-		for prefix in "${prefix_lst[@]}"; do
-			for libdir in ${libdirs}; do
-				dir="${prefix}${libdir}"
-				if [[ -e "${dir}" ]]; then
-					[[ ! -d "${dir}" ]] &&
-						die "${dir} exists but is not a directory"
-					continue
-				fi
-				if ! use split-usr && [[ ${prefix} = ${EROOT} ]]; then
-					einfo "symlinking ${dir} to usr/${libdir}"
-					ln -s usr/${libdir} ${dir} ||
-						die " Unable to make ${dir} symlink"
-				else
-					einfo "creating directory ${dir}"
-					mkdir -p "${dir}" ||
-						die "Unable to create ${dir} directory"
-				fi
-			done
-		done
-		return 0
-	fi
-
-	[ -z "${def_libdir}" ] &&
-		die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
-
-	# figure out which paths should be symlinks and which should be directories
-	local dirs syms exp d
-	for libdir in ${libdirs} ; do
-		if use split-usr ; then
-			exp=( {,usr/,usr/local/}${libdir} )
-		else
-			exp=( {usr/,usr/local/}${libdir} )
-		fi
-		for d in "${exp[@]}" ; do
-			# most things should be dirs
-			if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
-				[ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
-			else
-				[ -h "${d}" ] && syms+=" ${d}"
-			fi
-		done
-	done
-	if [ -n "${syms}${dirs}" ] ; then
-		ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
-		ewarn "have these paths configured as follows:"
-		[ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
-		[ -n "${syms}" ] && ewarn "directories:${syms}"
-		ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
-		ewarn "If things fail, you will need to manually create/move the directories."
-		echo
-	fi
-
-	# setup symlinks and dirs where we expect them to be; do not migrate
-	# data ... just fall over in that case.
-	if use split-usr ; then
-		prefix_lst=( "${EROOT}"{,usr/,usr/local/} )
-	else
-		prefix_lst=( "${EROOT}"{usr/,usr/local/} )
-	fi
-	for prefix in "${prefix_lst[@]}"; do
-		if [ "${SYMLINK_LIB}" = yes ] ; then
-			# we need to make sure "lib" points to the native libdir
-			if [ -h "${prefix}lib" ] ; then
-				# it's already a symlink!  assume it's pointing to right place ...
-				continue
-			elif [ -d "${prefix}lib" ] ; then
-				# "lib" is a dir, so need to convert to a symlink
-				ewarn "Converting ${prefix}lib from a dir to a symlink"
-				rm -f "${prefix}lib"/.keep || die
-				if rmdir "${prefix}lib" 2>/dev/null ; then
-					ln -s ${def_libdir} "${prefix}lib" || die
-				else
-					die "non-empty dir found where we needed a symlink: ${prefix}lib"
-				fi
-			else
-				# nothing exists, so just set it up sanely
-				ewarn "Initializing ${prefix}lib as a symlink"
-				mkdir -p "${prefix}" || die
-				rm -f "${prefix}lib" || die
-				ln -s ${def_libdir} "${prefix}lib" || die
-				mkdir -p "${prefix}${def_libdir}" || die #423571
-			fi
-		else
-			# we need to make sure "lib" is a dir
-			if [ -h "${prefix}lib" ] ; then
-				# "lib" is a symlink, so need to convert to a dir
-				ewarn "Converting ${prefix}lib from a symlink to a dir"
-				rm -f "${prefix}lib" || die
-				if [ -d "${prefix}lib32" ] ; then
-					ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
-					mv "${prefix}lib32" "${prefix}lib" || die
-				else
-					mkdir -p "${prefix}lib" || die
-				fi
-			elif [ -d "${prefix}lib" ] && ! has lib32 ${libdirs} ; then
-				# make sure the old "lib" ABI location does not exist; we
-				# only symlinked the lib dir on systems where we moved it
-				# to "lib32" ...
-				case ${CHOST} in
-				*-gentoo-freebsd*) ;; # We want it the other way on fbsd.
-				i?86*|x86_64*|powerpc*|sparc*|s390*)
-					if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
-						rm -f "${prefix}lib32"/.keep || die
-						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
-							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
-							die "non-empty dir found where there should be none: ${prefix}lib32"
-						fi
-					fi
-					;;
-				esac
-			else
-				# nothing exists, so just set it up sanely
-				ewarn "Initializing ${prefix}lib as a dir"
-				mkdir -p "${prefix}lib" || die
-			fi
-		fi
-	done
-	if ! use split-usr ; then
-		for libdir in ${libdirs}; do
-			if [[ ! -e "${EROOT}${libdir}" ]]; then
-				ln -s usr/"${libdir}" "${EROOT}${libdir}" ||
-					die " Unable to make ${EROOT}${libdir} symlink"
-			fi
-		done
-	fi
-}
-
-pkg_preinst() {
-	# This is written in src_install (so it's in CONTENTS), but punt all
-	# pending updates to avoid user having to do etc-update (and make the
-	# pkg_postinst logic simpler).
-	rm -f "${EROOT}"/etc/._cfg????_gentoo-release || die
-
-	# We need to install directories and maybe some dev nodes when building
-	# stages, but they cannot be in CONTENTS.
-	# Also, we cannot reference $S as binpkg will break so we do this.
-	multilib_layout
-	if use build ; then
-		if use split-usr ; then
-			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
-		else
-			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
-		fi
-	fi
-	rm -f "${ED}"/usr/share/${PN}/Makefile || die
-}
-
-src_prepare() {
-	default
-	if use prefix; then
-		hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
-		hprefixify etc/{env.d/50baselayout,shells} share.Linux/passwd
-		echo PATH=/usr/bin:/bin >> etc/env.d/99host
-		echo ROOTPATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
-	fi
-
-	# don't want symlinked directories in PATH on systems with usr-merge
-	if ! use split-usr; then
-		sed \
-			-e 's|/usr/local/sbin:||g' \
-			-e 's|:/usr/sbin:|:|g' \
-			-e 's|:/sbin:|:|g' \
-			-e 's|:/bin:|:|g' \
-			-i etc/env.d/50baselayout || die
-	fi
-
-	# handle multilib paths.  do it here because we want this behavior
-	# regardless of the C library that you're using.  we do explicitly
-	# list paths which the native ldconfig searches, but this isn't
-	# problematic as it doesn't change the resulting ld.so.cache or
-	# take longer to generate.  similarly, listing both the native
-	# path and the symlinked path doesn't change the resulting cache.
-	local libdir ldpaths
-	for libdir in $(get_all_libdirs) ; do
-		use split-usr && ldpaths+=":${EPREFIX}/${libdir}"
-		ldpaths+=":${EPREFIX}/usr/${libdir}"
-		ldpaths+=":${EPREFIX}/usr/local/${libdir}"
-	done
-	echo "LDPATH='${ldpaths#:}'" >> etc/env.d/50baselayout
-
-	# rc-scripts version for testing of features that *should* be present
-	echo "Gentoo Base System release ${PV}" > etc/gentoo-release
-}
-
-src_install() {
-	emake \
-		OS=Linux \
-		DESTDIR="${ED}" \
-		install
-	dodoc ChangeLog
-	rm "${ED}"/etc/sysctl.d/README || die
-
-	# need the makefile in pkg_preinst
-	insinto /usr/share/${PN}
-	doins Makefile
-
-	# This is needed for https://bugs.gentoo.org/732142
-	dodir /usr/lib
-	mv "${ED}"/etc/os-release "${ED}"/usr/lib || die
-	dosym ../usr/lib/os-release /etc/os-release
-}
-
-pkg_postinst() {
-	local x
-
-	# We installed some files to /usr/share/baselayout instead of /etc to stop
-	# (1) overwriting the user's settings
-	# (2) screwing things up when attempting to merge files
-	# (3) accidentally packaging up personal files with quickpkg
-	# If they don't exist then we install them
-	for x in master.passwd passwd shadow group fstab ; do
-		[ -e "${EROOT}etc/${x}" ] && continue
-		[ -e "${EROOT}usr/share/baselayout/${x}" ] || continue
-		cp -p "${EROOT}usr/share/baselayout/${x}" "${EROOT}"etc || die
-	done
-
-	# Force shadow permissions to not be world-readable #260993
-	for x in shadow ; do
-		if [ -e "${EROOT}etc/${x}" ] ; then
-			chmod o-rwx "${EROOT}etc/${x}" || die
-		fi
-	done
-
-	# Take care of the etc-update for the user
-	if [ -e "${EROOT}"etc/._cfg0000_gentoo-release ] ; then
-		mv "${EROOT}"etc/._cfg0000_gentoo-release "${EROOT}"etc/gentoo-release || die
-	fi
-
-	# whine about users that lack passwords #193541
-	if [[ -e "${EROOT}"etc/shadow ]] ; then
-		local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
-		if [[ -n ${bad_users} ]] ; then
-			echo
-			ewarn "The following users lack passwords!"
-			ewarn ${bad_users}
-		fi
-	fi
-
-	# whine about users with invalid shells #215698
-	if [[ -e "${EROOT}"etc/passwd ]] ; then
-		local bad_shells=$(awk -F: 'system("test -e " $7) { print $1 " - " $7}' "${EROOT}"etc/passwd | sort)
-		if [[ -n ${bad_shells} ]] ; then
-			echo
-			ewarn "The following users have non-existent shells!"
-			ewarn "${bad_shells}"
-		fi
-	fi
-
-	# https://bugs.gentoo.org/361349
-	if use kernel_linux; then
-		mkdir -p "${EROOT}"run || die
-
-		local found fstype mountpoint
-		while read -r _ mountpoint fstype _; do
-		[[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
-		done < "${ROOT}"proc/mounts
-		[[ -z ${found} ]] &&
-			ewarn "You should reboot now to get /run mounted with tmpfs!"
-	fi
-
-	for x in ${REPLACING_VERSIONS}; do
-		if ! version_is_at_least 2.4 ${x}; then
-			ewarn "After updating ${EROOT}etc/profile, please run"
-			ewarn "env-update && . /etc/profile"
-		fi
-
-		if ! version_is_at_least 2.6 ${x}; then
-			ewarn "Please run env-update then log out and back in to"
-			ewarn "update your path."
-		fi
-		# clean up after 2.5 typos
-		# https://bugs.gentoo.org/show_bug.cgi?id=656380
-		if [[ ${x} == 2.5 ]]; then
-			rm -fr "${EROOT}{,usr" || die
-		fi
-	done
-
-	if [[ -e "${EROOT}"etc/env.d/00basic ]]; then
-		ewarn "${EROOT}etc/env.d/00basic is now ${EROOT}etc/env.d/50baselayout"
-		ewarn "Please migrate your changes."
-	fi
-}

diff --git a/sys-apps/baselayout/baselayout-2.7-r2.ebuild b/sys-apps/baselayout/baselayout-2.7-r2.ebuild
deleted file mode 100644
index 3e57665e1bf2..000000000000
--- a/sys-apps/baselayout/baselayout-2.7-r2.ebuild
+++ /dev/null
@@ -1,318 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-
-inherit multilib prefix
-
-DESCRIPTION="Filesystem baselayout and init scripts"
-HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
-if [[ ${PV} = 9999 ]]; then
-	EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/${PN}.git"
-	inherit git-r3
-else
-	SRC_URI="https://gitweb.gentoo.org/proj/${PN}.git/snapshot/${P}.tar.bz2"
-	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-fi
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="build +split-usr"
-
-pkg_setup() {
-	multilib_layout
-}
-
-# Create our multilib dirs - the Makefile has no knowledge of this
-multilib_layout() {
-	local dir def_libdir libdir libdirs
-	local prefix prefix_lst
-	def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
-	libdirs=$(get_all_libdirs)
-
-	if [[ -z "${SYMLINK_LIB}" || ${SYMLINK_LIB} = no ]] ; then
-		prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
-		for prefix in "${prefix_lst[@]}"; do
-			for libdir in ${libdirs}; do
-				dir="${prefix}${libdir}"
-				if [[ -e "${dir}" ]]; then
-					[[ ! -d "${dir}" ]] &&
-						die "${dir} exists but is not a directory"
-					continue
-				fi
-				if ! use split-usr && [[ ${prefix} = ${EROOT}/ ]]; then
-					libdir="${libdir%%/*}"
-					dir="${prefix}${libdir}"
-					einfo "symlinking ${dir} to usr/${libdir}"
-					ln -s usr/${libdir} ${dir} ||
-						die "Unable to make ${dir} symlink"
-				else
-					einfo "creating directory ${dir}"
-					mkdir -p "${dir}" ||
-						die "Unable to create ${dir} directory"
-				fi
-			done
-		done
-		return 0
-	fi
-
-	[ -z "${def_libdir}" ] &&
-		die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
-
-	# figure out which paths should be symlinks and which should be directories
-	local dirs syms exp d
-	for libdir in ${libdirs} ; do
-		if use split-usr ; then
-			exp=( {,usr/,usr/local/}${libdir} )
-		else
-			exp=( {usr/,usr/local/}${libdir} )
-		fi
-		for d in "${exp[@]}" ; do
-			# most things should be dirs
-			if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
-				[ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
-			else
-				[ -h "${d}" ] && syms+=" ${d}"
-			fi
-		done
-	done
-	if [ -n "${syms}${dirs}" ] ; then
-		ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
-		ewarn "have these paths configured as follows:"
-		[ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
-		[ -n "${syms}" ] && ewarn "directories:${syms}"
-		ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
-		ewarn "If things fail, you will need to manually create/move the directories."
-		echo
-	fi
-
-	# setup symlinks and dirs where we expect them to be; do not migrate
-	# data ... just fall over in that case.
-	if use split-usr ; then
-		prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
-	else
-		prefix_lst=( "${EROOT}"/{usr/,usr/local/} )
-	fi
-	for prefix in "${prefix_lst[@]}"; do
-		if [ "${SYMLINK_LIB}" = yes ] ; then
-			# we need to make sure "lib" points to the native libdir
-			if [ -h "${prefix}lib" ] ; then
-				# it's already a symlink!  assume it's pointing to right place ...
-				continue
-			elif [ -d "${prefix}lib" ] ; then
-				# "lib" is a dir, so need to convert to a symlink
-				ewarn "Converting ${prefix}lib from a dir to a symlink"
-				rm -f "${prefix}lib"/.keep || die
-				if rmdir "${prefix}lib" 2>/dev/null ; then
-					ln -s ${def_libdir} "${prefix}lib" || die
-				else
-					die "non-empty dir found where we needed a symlink: ${prefix}lib"
-				fi
-			else
-				# nothing exists, so just set it up sanely
-				ewarn "Initializing ${prefix}lib as a symlink"
-				mkdir -p "${prefix}" || die
-				rm -f "${prefix}lib" || die
-				ln -s ${def_libdir} "${prefix}lib" || die
-				mkdir -p "${prefix}${def_libdir}" || die #423571
-			fi
-		else
-			# we need to make sure "lib" is a dir
-			if [ -h "${prefix}lib" ] ; then
-				# "lib" is a symlink, so need to convert to a dir
-				ewarn "Converting ${prefix}lib from a symlink to a dir"
-				rm -f "${prefix}lib" || die
-				if [ -d "${prefix}lib32" ] ; then
-					ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
-					mv "${prefix}lib32" "${prefix}lib" || die
-				else
-					mkdir -p "${prefix}lib" || die
-				fi
-			elif [ -d "${prefix}lib" ] && ! has lib32 ${libdirs} ; then
-				# make sure the old "lib" ABI location does not exist; we
-				# only symlinked the lib dir on systems where we moved it
-				# to "lib32" ...
-				case ${CHOST} in
-				*-gentoo-freebsd*) ;; # We want it the other way on fbsd.
-				i?86*|x86_64*|powerpc*|sparc*|s390*)
-					if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
-						rm -f "${prefix}lib32"/.keep || die
-						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
-							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
-							die "non-empty dir found where there should be none: ${prefix}lib32"
-						fi
-					fi
-					;;
-				esac
-			else
-				# nothing exists, so just set it up sanely
-				ewarn "Initializing ${prefix}lib as a dir"
-				mkdir -p "${prefix}lib" || die
-			fi
-		fi
-	done
-	if ! use split-usr ; then
-		for libdir in ${libdirs}; do
-			if [[ ! -e "${EROOT}${libdir}" ]]; then
-				ln -s usr/"${libdir}" "${EROOT}${libdir}" ||
-					die "Unable to make ${EROOT}${libdir} symlink"
-			fi
-		done
-	fi
-}
-
-pkg_preinst() {
-	# This is written in src_install (so it's in CONTENTS), but punt all
-	# pending updates to avoid user having to do etc-update (and make the
-	# pkg_postinst logic simpler).
-	rm -f "${EROOT}"/etc/._cfg????_gentoo-release || die
-
-	# We need to install directories and maybe some dev nodes when building
-	# stages, but they cannot be in CONTENTS.
-	# Also, we cannot reference $S as binpkg will break so we do this.
-	multilib_layout
-	if use build ; then
-		if use split-usr ; then
-			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
-		else
-			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
-		fi
-	fi
-	rm -f "${ED}"/usr/share/${PN}/Makefile || die
-}
-
-src_prepare() {
-	default
-	if use prefix; then
-		hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
-		hprefixify etc/{env.d/50baselayout,shells} share.Linux/passwd
-		echo PATH=/usr/bin:/bin >> etc/env.d/99host
-		echo ROOTPATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
-	fi
-
-	# don't want symlinked directories in PATH on systems with usr-merge
-	if ! use split-usr; then
-		sed \
-			-e 's|/usr/local/sbin:||g' \
-			-e 's|:/usr/sbin:|:|g' \
-			-e 's|:/sbin:|:|g' \
-			-e 's|:/bin:|:|g' \
-			-i etc/env.d/50baselayout || die
-	fi
-
-	# handle multilib paths.  do it here because we want this behavior
-	# regardless of the C library that you're using.  we do explicitly
-	# list paths which the native ldconfig searches, but this isn't
-	# problematic as it doesn't change the resulting ld.so.cache or
-	# take longer to generate.  similarly, listing both the native
-	# path and the symlinked path doesn't change the resulting cache.
-	local libdir ldpaths
-	for libdir in $(get_all_libdirs) ; do
-		use split-usr && ldpaths+=":${EPREFIX}/${libdir}"
-		ldpaths+=":${EPREFIX}/usr/${libdir}"
-		ldpaths+=":${EPREFIX}/usr/local/${libdir}"
-	done
-	echo "LDPATH='${ldpaths#:}'" >> etc/env.d/50baselayout
-
-	# rc-scripts version for testing of features that *should* be present
-	echo "Gentoo Base System release ${PV}" > etc/gentoo-release
-}
-
-src_install() {
-	emake \
-		OS=Linux \
-		DESTDIR="${ED}" \
-		install
-	dodoc ChangeLog
-	rm "${ED}"/etc/sysctl.d/README || die
-
-	# need the makefile in pkg_preinst
-	insinto /usr/share/${PN}
-	doins Makefile
-
-	# This is needed for https://bugs.gentoo.org/732142
-	dodir /usr/lib
-	mv "${ED}"/etc/os-release "${ED}"/usr/lib || die
-	dosym ../usr/lib/os-release /etc/os-release
-}
-
-pkg_postinst() {
-	local x
-
-	# We installed some files to /usr/share/baselayout instead of /etc to stop
-	# (1) overwriting the user's settings
-	# (2) screwing things up when attempting to merge files
-	# (3) accidentally packaging up personal files with quickpkg
-	# If they don't exist then we install them
-	for x in master.passwd passwd shadow group fstab ; do
-		[ -e "${EROOT}/etc/${x}" ] && continue
-		[ -e "${EROOT}/usr/share/baselayout/${x}" ] || continue
-		cp -p "${EROOT}/usr/share/baselayout/${x}" "${EROOT}"/etc || die
-	done
-
-	# Force shadow permissions to not be world-readable #260993
-	for x in shadow ; do
-		if [ -e "${EROOT}/etc/${x}" ] ; then
-			chmod o-rwx "${EROOT}/etc/${x}" || die
-		fi
-	done
-
-	# Take care of the etc-update for the user
-	if [ -e "${EROOT}"/etc/._cfg0000_gentoo-release ] ; then
-		mv "${EROOT}"/etc/._cfg0000_gentoo-release "${EROOT}"/etc/gentoo-release || die
-	fi
-
-	# whine about users that lack passwords #193541
-	if [[ -e "${EROOT}"/etc/shadow ]] ; then
-		local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
-		if [[ -n ${bad_users} ]] ; then
-			echo
-			ewarn "The following users lack passwords!"
-			ewarn ${bad_users}
-		fi
-	fi
-
-	# whine about users with invalid shells #215698
-	if [[ -e "${EROOT}"/etc/passwd ]] ; then
-		local bad_shells=$(awk -F: 'system("test -e ${ROOT}" $7) { print $1 " - " $7}' "${EROOT}"/etc/passwd | sort)
-		if [[ -n ${bad_shells} ]] ; then
-			echo
-			ewarn "The following users have non-existent shells!"
-			ewarn "${bad_shells}"
-		fi
-	fi
-
-	# https://bugs.gentoo.org/361349
-	if use kernel_linux; then
-		mkdir -p "${EROOT}"/run || die
-
-		local found fstype mountpoint
-		while read -r _ mountpoint fstype _; do
-		[[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
-		done < "${ROOT}"/proc/mounts
-		[[ -z ${found} ]] &&
-			ewarn "You should reboot now to get /run mounted with tmpfs!"
-	fi
-
-	for x in ${REPLACING_VERSIONS}; do
-		if ver_test 2.4 -lt ${x}; then
-			ewarn "After updating ${EROOT}/etc/profile, please run"
-			ewarn "env-update && . /etc/profile"
-		fi
-
-		if ver_test 2.6 -lt ${x}; then
-			ewarn "Please run env-update then log out and back in to"
-			ewarn "update your path."
-		fi
-		# clean up after 2.5 typos
-		# https://bugs.gentoo.org/show_bug.cgi?id=656380
-		if [[ ${x} == 2.5 ]]; then
-			rm -fr "${EROOT}/{,usr" || die
-		fi
-	done
-
-	if [[ -e "${EROOT}"/etc/env.d/00basic ]]; then
-		ewarn "${EROOT}/etc/env.d/00basic is now ${EROOT}/etc/env.d/50baselayout"
-		ewarn "Please migrate your changes."
-	fi
-}

diff --git a/sys-apps/baselayout/baselayout-2.7.ebuild b/sys-apps/baselayout/baselayout-2.7.ebuild
deleted file mode 100644
index b9c1e7df5282..000000000000
--- a/sys-apps/baselayout/baselayout-2.7.ebuild
+++ /dev/null
@@ -1,312 +0,0 @@
-# Copyright 1999-2022 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit multilib versionator prefix
-
-DESCRIPTION="Filesystem baselayout and init scripts"
-HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
-if [[ ${PV} = 9999 ]]; then
-	EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/${PN}.git"
-	inherit git-r3
-else
-	SRC_URI="https://gitweb.gentoo.org/proj/${PN}.git/snapshot/${P}.tar.bz2"
-	KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
-fi
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="build +split-usr"
-
-pkg_setup() {
-	multilib_layout
-}
-
-# Create our multilib dirs - the Makefile has no knowledge of this
-multilib_layout() {
-	local dir def_libdir libdir libdirs
-	local prefix prefix_lst
-	def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
-	libdirs=$(get_all_libdirs)
-	: ${libdirs:=lib}	# it isn't that we don't trust multilib.eclass...
-
-	if [[ -z "${SYMLINK_LIB}" || ${SYMLINK_LIB} = no ]] ; then
-		prefix_lst=( "${EROOT}"{,usr/,usr/local/} )
-		for prefix in "${prefix_lst[@]}"; do
-			for libdir in ${libdirs}; do
-				dir="${prefix}${libdir}"
-				if [[ -e "${dir}" ]]; then
-					[[ ! -d "${dir}" ]] &&
-						die "${dir} exists but is not a directory"
-					continue
-				fi
-				if ! use split-usr && [[ ${prefix} = ${EROOT} ]]; then
-					einfo "symlinking ${dir} to usr/${libdir}"
-					ln -s usr/${libdir} ${dir} ||
-						die " Unable to make ${dir} symlink"
-				else
-					einfo "creating directory ${dir}"
-					mkdir -p "${dir}" ||
-						die "Unable to create ${dir} directory"
-				fi
-			done
-		done
-		return 0
-	fi
-
-	[ -z "${def_libdir}" ] &&
-		die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
-
-	# figure out which paths should be symlinks and which should be directories
-	local dirs syms exp d
-	for libdir in ${libdirs} ; do
-		if use split-usr ; then
-			exp=( {,usr/,usr/local/}${libdir} )
-		else
-			exp=( {usr/,usr/local/}${libdir} )
-		fi
-		for d in "${exp[@]}" ; do
-			# most things should be dirs
-			if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
-				[ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
-			else
-				[ -h "${d}" ] && syms+=" ${d}"
-			fi
-		done
-	done
-	if [ -n "${syms}${dirs}" ] ; then
-		ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
-		ewarn "have these paths configured as follows:"
-		[ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
-		[ -n "${syms}" ] && ewarn "directories:${syms}"
-		ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
-		ewarn "If things fail, you will need to manually create/move the directories."
-		echo
-	fi
-
-	# setup symlinks and dirs where we expect them to be; do not migrate
-	# data ... just fall over in that case.
-	if use split-usr ; then
-		prefix_lst=( "${EROOT}"{,usr/,usr/local/} )
-	else
-		prefix_lst=( "${EROOT}"{usr/,usr/local/} )
-	fi
-	for prefix in "${prefix_lst[@]}"; do
-		if [ "${SYMLINK_LIB}" = yes ] ; then
-			# we need to make sure "lib" points to the native libdir
-			if [ -h "${prefix}lib" ] ; then
-				# it's already a symlink!  assume it's pointing to right place ...
-				continue
-			elif [ -d "${prefix}lib" ] ; then
-				# "lib" is a dir, so need to convert to a symlink
-				ewarn "Converting ${prefix}lib from a dir to a symlink"
-				rm -f "${prefix}lib"/.keep || die
-				if rmdir "${prefix}lib" 2>/dev/null ; then
-					ln -s ${def_libdir} "${prefix}lib" || die
-				else
-					die "non-empty dir found where we needed a symlink: ${prefix}lib"
-				fi
-			else
-				# nothing exists, so just set it up sanely
-				ewarn "Initializing ${prefix}lib as a symlink"
-				mkdir -p "${prefix}" || die
-				rm -f "${prefix}lib" || die
-				ln -s ${def_libdir} "${prefix}lib" || die
-				mkdir -p "${prefix}${def_libdir}" || die #423571
-			fi
-		else
-			# we need to make sure "lib" is a dir
-			if [ -h "${prefix}lib" ] ; then
-				# "lib" is a symlink, so need to convert to a dir
-				ewarn "Converting ${prefix}lib from a symlink to a dir"
-				rm -f "${prefix}lib" || die
-				if [ -d "${prefix}lib32" ] ; then
-					ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
-					mv "${prefix}lib32" "${prefix}lib" || die
-				else
-					mkdir -p "${prefix}lib" || die
-				fi
-			elif [ -d "${prefix}lib" ] && ! has lib32 ${libdirs} ; then
-				# make sure the old "lib" ABI location does not exist; we
-				# only symlinked the lib dir on systems where we moved it
-				# to "lib32" ...
-				case ${CHOST} in
-				*-gentoo-freebsd*) ;; # We want it the other way on fbsd.
-				i?86*|x86_64*|powerpc*|sparc*|s390*)
-					if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
-						rm -f "${prefix}lib32"/.keep || die
-						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
-							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
-							die "non-empty dir found where there should be none: ${prefix}lib32"
-						fi
-					fi
-					;;
-				esac
-			else
-				# nothing exists, so just set it up sanely
-				ewarn "Initializing ${prefix}lib as a dir"
-				mkdir -p "${prefix}lib" || die
-			fi
-		fi
-	done
-	if ! use split-usr ; then
-		for libdir in ${libdirs}; do
-			if [[ ! -e "${EROOT}${libdir}" ]]; then
-				ln -s usr/"${libdir}" "${EROOT}${libdir}" ||
-					die " Unable to make ${EROOT}${libdir} symlink"
-			fi
-		done
-	fi
-}
-
-pkg_preinst() {
-	# This is written in src_install (so it's in CONTENTS), but punt all
-	# pending updates to avoid user having to do etc-update (and make the
-	# pkg_postinst logic simpler).
-	rm -f "${EROOT}"/etc/._cfg????_gentoo-release || die
-
-	# We need to install directories and maybe some dev nodes when building
-	# stages, but they cannot be in CONTENTS.
-	# Also, we cannot reference $S as binpkg will break so we do this.
-	multilib_layout
-	if use build ; then
-		if use split-usr ; then
-			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
-		else
-			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
-		fi
-	fi
-	rm -f "${ED}"/usr/share/${PN}/Makefile || die
-}
-
-src_prepare() {
-	default
-	if use prefix; then
-		hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
-		hprefixify etc/{env.d/50baselayout,shells} share.Linux/passwd
-		echo PATH=/usr/bin:/bin >> etc/env.d/99host
-		echo ROOTPATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
-	fi
-
-	# don't want symlinked directories in PATH on systems with usr-merge
-	if ! use split-usr; then
-		sed \
-			-e 's|/usr/local/sbin:||g' \
-			-e 's|:/usr/sbin:|:|g' \
-			-e 's|:/sbin:|:|g' \
-			-e 's|:/bin:|:|g' \
-			-i etc/env.d/50baselayout || die
-	fi
-
-	# handle multilib paths.  do it here because we want this behavior
-	# regardless of the C library that you're using.  we do explicitly
-	# list paths which the native ldconfig searches, but this isn't
-	# problematic as it doesn't change the resulting ld.so.cache or
-	# take longer to generate.  similarly, listing both the native
-	# path and the symlinked path doesn't change the resulting cache.
-	local libdir ldpaths
-	for libdir in $(get_all_libdirs) ; do
-		use split-usr && ldpaths+=":${EPREFIX}/${libdir}"
-		ldpaths+=":${EPREFIX}/usr/${libdir}"
-		ldpaths+=":${EPREFIX}/usr/local/${libdir}"
-	done
-	echo "LDPATH='${ldpaths#:}'" >> etc/env.d/50baselayout
-
-	# rc-scripts version for testing of features that *should* be present
-	echo "Gentoo Base System release ${PV}" > etc/gentoo-release
-}
-
-src_install() {
-	emake \
-		OS=Linux \
-		DESTDIR="${ED}" \
-		install
-	dodoc ChangeLog
-	rm "${ED}"/etc/sysctl.d/README || die
-
-	# need the makefile in pkg_preinst
-	insinto /usr/share/${PN}
-	doins Makefile
-}
-
-pkg_postinst() {
-	local x
-
-	# We installed some files to /usr/share/baselayout instead of /etc to stop
-	# (1) overwriting the user's settings
-	# (2) screwing things up when attempting to merge files
-	# (3) accidentally packaging up personal files with quickpkg
-	# If they don't exist then we install them
-	for x in master.passwd passwd shadow group fstab ; do
-		[ -e "${EROOT}etc/${x}" ] && continue
-		[ -e "${EROOT}usr/share/baselayout/${x}" ] || continue
-		cp -p "${EROOT}usr/share/baselayout/${x}" "${EROOT}"etc || die
-	done
-
-	# Force shadow permissions to not be world-readable #260993
-	for x in shadow ; do
-		if [ -e "${EROOT}etc/${x}" ] ; then
-			chmod o-rwx "${EROOT}etc/${x}" || die
-		fi
-	done
-
-	# Take care of the etc-update for the user
-	if [ -e "${EROOT}"etc/._cfg0000_gentoo-release ] ; then
-		mv "${EROOT}"etc/._cfg0000_gentoo-release "${EROOT}"etc/gentoo-release || die
-	fi
-
-	# whine about users that lack passwords #193541
-	if [[ -e "${EROOT}"etc/shadow ]] ; then
-		local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
-		if [[ -n ${bad_users} ]] ; then
-			echo
-			ewarn "The following users lack passwords!"
-			ewarn ${bad_users}
-		fi
-	fi
-
-	# whine about users with invalid shells #215698
-	if [[ -e "${EROOT}"etc/passwd ]] ; then
-		local bad_shells=$(awk -F: 'system("test -e " $7) { print $1 " - " $7}' "${EROOT}"etc/passwd | sort)
-		if [[ -n ${bad_shells} ]] ; then
-			echo
-			ewarn "The following users have non-existent shells!"
-			ewarn "${bad_shells}"
-		fi
-	fi
-
-	# https://bugs.gentoo.org/361349
-	if use kernel_linux; then
-		mkdir -p "${EROOT}"run || die
-
-		local found fstype mountpoint
-		while read -r _ mountpoint fstype _; do
-		[[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
-		done < "${ROOT}"proc/mounts
-		[[ -z ${found} ]] &&
-			ewarn "You should reboot now to get /run mounted with tmpfs!"
-	fi
-
-	for x in ${REPLACING_VERSIONS}; do
-		if ! version_is_at_least 2.4 ${x}; then
-			ewarn "After updating ${EROOT}etc/profile, please run"
-			ewarn "env-update && . /etc/profile"
-		fi
-
-		if ! version_is_at_least 2.6 ${x}; then
-			ewarn "Please run env-update then log out and back in to"
-			ewarn "update your path."
-		fi
-		# clean up after 2.5 typos
-		# https://bugs.gentoo.org/show_bug.cgi?id=656380
-		if [[ ${x} == 2.5 ]]; then
-			rm -fr "${EROOT}{,usr" || die
-		fi
-	done
-
-	if [[ -e "${EROOT}"etc/env.d/00basic ]]; then
-		ewarn "${EROOT}etc/env.d/00basic is now ${EROOT}etc/env.d/50baselayout"
-		ewarn "Please migrate your changes."
-	fi
-}


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2022-05-28 20:59 Jakov Smolić
  0 siblings, 0 replies; 124+ messages in thread
From: Jakov Smolić @ 2022-05-28 20:59 UTC (permalink / raw
  To: gentoo-commits

commit:     0bbd02df42c26839706585fa00caffd97ceba557
Author:     Jakov Smolić <jsmolic <AT> gentoo <DOT> org>
AuthorDate: Sat May 28 20:59:00 2022 +0000
Commit:     Jakov Smolić <jsmolic <AT> gentoo <DOT> org>
CommitDate: Sat May 28 20:59:00 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0bbd02df

sys-apps/baselayout: Stabilize 2.8 ALLARCHES, #847967

Signed-off-by: Jakov Smolić <jsmolic <AT> gentoo.org>

 sys-apps/baselayout/baselayout-2.8.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys-apps/baselayout/baselayout-2.8.ebuild b/sys-apps/baselayout/baselayout-2.8.ebuild
index d237814a2a9d..5767ed31ca80 100644
--- a/sys-apps/baselayout/baselayout-2.8.ebuild
+++ b/sys-apps/baselayout/baselayout-2.8.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"
+	KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
 fi
 
 LICENSE="GPL-2"


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2022-01-04 10:30 David Seifert
  0 siblings, 0 replies; 124+ messages in thread
From: David Seifert @ 2022-01-04 10:30 UTC (permalink / raw
  To: gentoo-commits

commit:     22de2cf46c8e4e8167a05dcc166586f663261b0d
Author:     David Seifert <soap <AT> gentoo <DOT> org>
AuthorDate: Tue Jan  4 10:29:54 2022 +0000
Commit:     David Seifert <soap <AT> gentoo <DOT> org>
CommitDate: Tue Jan  4 10:29:54 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=22de2cf4

sys-apps/baselayout: remove implicit kernel_linux

Signed-off-by: David Seifert <soap <AT> gentoo.org>

 sys-apps/baselayout/baselayout-2.7-r1.ebuild | 2 +-
 sys-apps/baselayout/baselayout-2.7-r2.ebuild | 2 +-
 sys-apps/baselayout/baselayout-2.7-r3.ebuild | 2 +-
 sys-apps/baselayout/baselayout-2.7.ebuild    | 2 +-
 sys-apps/baselayout/baselayout-2.8.ebuild    | 2 +-
 sys-apps/baselayout/baselayout-9999.ebuild   | 2 +-
 6 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-2.7-r1.ebuild b/sys-apps/baselayout/baselayout-2.7-r1.ebuild
index 8242b63fa3f5..69b7db6825d2 100644
--- a/sys-apps/baselayout/baselayout-2.7-r1.ebuild
+++ b/sys-apps/baselayout/baselayout-2.7-r1.ebuild
@@ -17,7 +17,7 @@ fi
 
 LICENSE="GPL-2"
 SLOT="0"
-IUSE="build kernel_linux +split-usr"
+IUSE="build +split-usr"
 
 pkg_setup() {
 	multilib_layout

diff --git a/sys-apps/baselayout/baselayout-2.7-r2.ebuild b/sys-apps/baselayout/baselayout-2.7-r2.ebuild
index 9aa9a7262318..3e57665e1bf2 100644
--- a/sys-apps/baselayout/baselayout-2.7-r2.ebuild
+++ b/sys-apps/baselayout/baselayout-2.7-r2.ebuild
@@ -17,7 +17,7 @@ fi
 
 LICENSE="GPL-2"
 SLOT="0"
-IUSE="build kernel_linux +split-usr"
+IUSE="build +split-usr"
 
 pkg_setup() {
 	multilib_layout

diff --git a/sys-apps/baselayout/baselayout-2.7-r3.ebuild b/sys-apps/baselayout/baselayout-2.7-r3.ebuild
index 4a1dd494ea72..3293e119b3c9 100644
--- a/sys-apps/baselayout/baselayout-2.7-r3.ebuild
+++ b/sys-apps/baselayout/baselayout-2.7-r3.ebuild
@@ -17,7 +17,7 @@ fi
 
 LICENSE="GPL-2"
 SLOT="0"
-IUSE="build kernel_linux +split-usr"
+IUSE="build +split-usr"
 
 pkg_setup() {
 	multilib_layout

diff --git a/sys-apps/baselayout/baselayout-2.7.ebuild b/sys-apps/baselayout/baselayout-2.7.ebuild
index ce51d06cbaa9..b9c1e7df5282 100644
--- a/sys-apps/baselayout/baselayout-2.7.ebuild
+++ b/sys-apps/baselayout/baselayout-2.7.ebuild
@@ -17,7 +17,7 @@ fi
 
 LICENSE="GPL-2"
 SLOT="0"
-IUSE="build kernel_linux +split-usr"
+IUSE="build +split-usr"
 
 pkg_setup() {
 	multilib_layout

diff --git a/sys-apps/baselayout/baselayout-2.8.ebuild b/sys-apps/baselayout/baselayout-2.8.ebuild
index 603fb5026694..089e43e1cb8c 100644
--- a/sys-apps/baselayout/baselayout-2.8.ebuild
+++ b/sys-apps/baselayout/baselayout-2.8.ebuild
@@ -17,7 +17,7 @@ fi
 
 LICENSE="GPL-2"
 SLOT="0"
-IUSE="build kernel_linux +split-usr"
+IUSE="build +split-usr"
 
 pkg_setup() {
 	multilib_layout

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
index 603fb5026694..089e43e1cb8c 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-9999.ebuild
@@ -17,7 +17,7 @@ fi
 
 LICENSE="GPL-2"
 SLOT="0"
-IUSE="build kernel_linux +split-usr"
+IUSE="build +split-usr"
 
 pkg_setup() {
 	multilib_layout


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2022-01-04  3:29 Sam James
  0 siblings, 0 replies; 124+ messages in thread
From: Sam James @ 2022-01-04  3:29 UTC (permalink / raw
  To: gentoo-commits

commit:     39827317e97d0e0d6ddb5a6ecf642c5da27f4192
Author:     David Seifert <soap <AT> gentoo <DOT> org>
AuthorDate: Mon Jan  3 15:45:23 2022 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Tue Jan  4 03:28:54 2022 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=39827317

sys-apps/baselayout: remove kernel_FreeBSD

Signed-off-by: David Seifert <soap <AT> gentoo.org>
Signed-off-by: Sam James <sam <AT> gentoo.org>

 sys-apps/baselayout/baselayout-2.7-r1.ebuild | 6 +++---
 sys-apps/baselayout/baselayout-2.7-r2.ebuild | 6 +++---
 sys-apps/baselayout/baselayout-2.7-r3.ebuild | 6 +++---
 sys-apps/baselayout/baselayout-2.7.ebuild    | 6 +++---
 sys-apps/baselayout/baselayout-2.8.ebuild    | 6 +++---
 sys-apps/baselayout/baselayout-9999.ebuild   | 6 +++---
 6 files changed, 18 insertions(+), 18 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-2.7-r1.ebuild b/sys-apps/baselayout/baselayout-2.7-r1.ebuild
index 3d5fac97ac66..8242b63fa3f5 100644
--- a/sys-apps/baselayout/baselayout-2.7-r1.ebuild
+++ b/sys-apps/baselayout/baselayout-2.7-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=6
@@ -17,7 +17,7 @@ fi
 
 LICENSE="GPL-2"
 SLOT="0"
-IUSE="build kernel_FreeBSD kernel_linux +split-usr"
+IUSE="build kernel_linux +split-usr"
 
 pkg_setup() {
 	multilib_layout
@@ -219,7 +219,7 @@ src_prepare() {
 
 src_install() {
 	emake \
-		OS=$(usex kernel_FreeBSD BSD Linux) \
+		OS=Linux \
 		DESTDIR="${ED}" \
 		install
 	dodoc ChangeLog

diff --git a/sys-apps/baselayout/baselayout-2.7-r2.ebuild b/sys-apps/baselayout/baselayout-2.7-r2.ebuild
index a37d17f3b8d1..9aa9a7262318 100644
--- a/sys-apps/baselayout/baselayout-2.7-r2.ebuild
+++ b/sys-apps/baselayout/baselayout-2.7-r2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=7
@@ -17,7 +17,7 @@ fi
 
 LICENSE="GPL-2"
 SLOT="0"
-IUSE="build kernel_FreeBSD kernel_linux +split-usr"
+IUSE="build kernel_linux +split-usr"
 
 pkg_setup() {
 	multilib_layout
@@ -220,7 +220,7 @@ src_prepare() {
 
 src_install() {
 	emake \
-		OS=$(usex kernel_FreeBSD BSD Linux) \
+		OS=Linux \
 		DESTDIR="${ED}" \
 		install
 	dodoc ChangeLog

diff --git a/sys-apps/baselayout/baselayout-2.7-r3.ebuild b/sys-apps/baselayout/baselayout-2.7-r3.ebuild
index a734733f48f8..4a1dd494ea72 100644
--- a/sys-apps/baselayout/baselayout-2.7-r3.ebuild
+++ b/sys-apps/baselayout/baselayout-2.7-r3.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=7
@@ -17,7 +17,7 @@ fi
 
 LICENSE="GPL-2"
 SLOT="0"
-IUSE="build kernel_FreeBSD kernel_linux +split-usr"
+IUSE="build kernel_linux +split-usr"
 
 pkg_setup() {
 	multilib_layout
@@ -249,7 +249,7 @@ src_prepare() {
 
 src_install() {
 	emake \
-		OS=$(usex kernel_FreeBSD BSD Linux) \
+		OS=Linux \
 		DESTDIR="${ED}" \
 		install
 	dodoc ChangeLog

diff --git a/sys-apps/baselayout/baselayout-2.7.ebuild b/sys-apps/baselayout/baselayout-2.7.ebuild
index cb06c4a3e20d..ce51d06cbaa9 100644
--- a/sys-apps/baselayout/baselayout-2.7.ebuild
+++ b/sys-apps/baselayout/baselayout-2.7.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=6
@@ -17,7 +17,7 @@ fi
 
 LICENSE="GPL-2"
 SLOT="0"
-IUSE="build kernel_FreeBSD kernel_linux +split-usr"
+IUSE="build kernel_linux +split-usr"
 
 pkg_setup() {
 	multilib_layout
@@ -219,7 +219,7 @@ src_prepare() {
 
 src_install() {
 	emake \
-		OS=$(usex kernel_FreeBSD BSD Linux) \
+		OS=Linux \
 		DESTDIR="${ED}" \
 		install
 	dodoc ChangeLog

diff --git a/sys-apps/baselayout/baselayout-2.8.ebuild b/sys-apps/baselayout/baselayout-2.8.ebuild
index c5f4dbf7dda3..603fb5026694 100644
--- a/sys-apps/baselayout/baselayout-2.8.ebuild
+++ b/sys-apps/baselayout/baselayout-2.8.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=7
@@ -17,7 +17,7 @@ fi
 
 LICENSE="GPL-2"
 SLOT="0"
-IUSE="build kernel_FreeBSD kernel_linux +split-usr"
+IUSE="build kernel_linux +split-usr"
 
 pkg_setup() {
 	multilib_layout
@@ -245,7 +245,7 @@ src_prepare() {
 
 src_install() {
 	emake \
-		OS=$(usex kernel_FreeBSD BSD Linux) \
+		OS=Linux \
 		DESTDIR="${ED}" \
 		install
 

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
index c5f4dbf7dda3..603fb5026694 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2021 Gentoo Authors
+# Copyright 1999-2022 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=7
@@ -17,7 +17,7 @@ fi
 
 LICENSE="GPL-2"
 SLOT="0"
-IUSE="build kernel_FreeBSD kernel_linux +split-usr"
+IUSE="build kernel_linux +split-usr"
 
 pkg_setup() {
 	multilib_layout
@@ -245,7 +245,7 @@ src_prepare() {
 
 src_install() {
 	emake \
-		OS=$(usex kernel_FreeBSD BSD Linux) \
+		OS=Linux \
 		DESTDIR="${ED}" \
 		install
 


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2021-11-15  9:27 Jakov Smolić
  0 siblings, 0 replies; 124+ messages in thread
From: Jakov Smolić @ 2021-11-15  9:27 UTC (permalink / raw
  To: gentoo-commits

commit:     0045b513d361c06720767c3375495caddd7ffea2
Author:     Jakov Smolić <jsmolic <AT> gentoo <DOT> org>
AuthorDate: Mon Nov 15 09:27:15 2021 +0000
Commit:     Jakov Smolić <jsmolic <AT> gentoo <DOT> org>
CommitDate: Mon Nov 15 09:27:15 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0045b513

sys-apps/baselayout: Stabilize 2.7-r3 ALLARCHES, #795393

Signed-off-by: Jakov Smolić <jsmolic <AT> gentoo.org>

 sys-apps/baselayout/baselayout-2.7-r3.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys-apps/baselayout/baselayout-2.7-r3.ebuild b/sys-apps/baselayout/baselayout-2.7-r3.ebuild
index c83d1da82dc4..a734733f48f8 100644
--- a/sys-apps/baselayout/baselayout-2.7-r3.ebuild
+++ b/sys-apps/baselayout/baselayout-2.7-r3.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 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+	KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
 fi
 
 LICENSE="GPL-2"


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2021-09-29  0:19 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2021-09-29  0:19 UTC (permalink / raw
  To: gentoo-commits

commit:     51ccd7f82d83f1926b92e39e5d87ae6a5b45d9ac
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Wed Sep 29 00:19:09 2021 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Wed Sep 29 00:19:27 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=51ccd7f8

sys-apps/baselayout: add keywords to 2.8

Package-Manager: Portage-3.0.20, Repoman-3.0.3
Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-apps/baselayout/baselayout-2.8.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys-apps/baselayout/baselayout-2.8.ebuild b/sys-apps/baselayout/baselayout-2.8.ebuild
index 17df4a83021..c5f4dbf7dda 100644
--- a/sys-apps/baselayout/baselayout-2.8.ebuild
+++ b/sys-apps/baselayout/baselayout-2.8.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 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
 fi
 
 LICENSE="GPL-2"


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2021-09-28 17:59 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2021-09-28 17:59 UTC (permalink / raw
  To: gentoo-commits

commit:     9a1c976568166ac9236b1e5a9b5aa98ac32887f7
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Tue Sep 28 17:58:50 2021 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Tue Sep 28 17:59:06 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9a1c9765

sys-apps/baselayout: remove extra file

Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-apps/baselayout/x | 11 -----------
 1 file changed, 11 deletions(-)

diff --git a/sys-apps/baselayout/x b/sys-apps/baselayout/x
deleted file mode 100644
index a6859d9f723..00000000000
--- a/sys-apps/baselayout/x
+++ /dev/null
@@ -1,11 +0,0 @@
---- baselayout-2.8.ebuild	2021-09-27 16:54:24.631071046 -0500
-+++ baselayout-9999.ebuild	2021-09-27 15:56:09.320772518 -0500
-@@ -12,7 +12,7 @@
- 	inherit git-r3
- else
- 	SRC_URI="https://gitweb.gentoo.org/proj/${PN}.git/snapshot/${P}.tar.bz2"
--#	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
-+	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
- fi
- 
- LICENSE="GPL-2"


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2021-09-27 22:09 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2021-09-27 22:09 UTC (permalink / raw
  To: gentoo-commits

commit:     6569413acb19c0a23e0c6aeea9270f2787762589
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Mon Sep 27 22:09:07 2021 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Mon Sep 27 22:09:33 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6569413a

sys-apps/baselayout: 2.8 bump (no keywords)

Package-Manager: Portage-3.0.20, Repoman-3.0.3
Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-apps/baselayout/Manifest              |   1 +
 sys-apps/baselayout/baselayout-2.8.ebuild | 338 ++++++++++++++++++++++++++++++
 sys-apps/baselayout/x                     |  11 +
 3 files changed, 350 insertions(+)

diff --git a/sys-apps/baselayout/Manifest b/sys-apps/baselayout/Manifest
index 112675aad11..a24c7a1d49b 100644
--- a/sys-apps/baselayout/Manifest
+++ b/sys-apps/baselayout/Manifest
@@ -1 +1,2 @@
 DIST baselayout-2.7.tar.bz2 30317 BLAKE2B 7b7c284b7d0a9608a0d03dbde0d62d793829b61d5361f5062fdeb8880a2f792c142e20acf7fa92e713e2ebb0bd1609ca65bc8a4191f2bf2c5df4f474eaeef1ee SHA512 8b28d2dc20fd5887db5c0e6b67a4217c4d0730529023fc57fb1ee95a431e1f492fb21e3e66980bef766819e9f542dc7e4ad3ae25465390194bbf970c3653c88e
+DIST baselayout-2.8.tar.bz2 30236 BLAKE2B 0bac62dd5585f1f550da8c99d06a7f8ab6cdd473b0499a8f0ac58a5c43e3883b42adb7f80c172d894fae93a6ddb6fec7a65cad9897f4a2532b481c82065ed96b SHA512 506d7cc8399b530eabc9ba2d16cbb6c024350f9487a2a9168c670cee9876f62e5a716942f698c4883013d6ccc9591c2d7fc2ac9d782f0ce8d724371ca94c739a

diff --git a/sys-apps/baselayout/baselayout-2.8.ebuild b/sys-apps/baselayout/baselayout-2.8.ebuild
new file mode 100644
index 00000000000..17df4a83021
--- /dev/null
+++ b/sys-apps/baselayout/baselayout-2.8.ebuild
@@ -0,0 +1,338 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+inherit multilib prefix
+
+DESCRIPTION="Filesystem baselayout and init scripts"
+HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
+if [[ ${PV} = 9999 ]]; then
+	EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/${PN}.git"
+	inherit git-r3
+else
+	SRC_URI="https://gitweb.gentoo.org/proj/${PN}.git/snapshot/${P}.tar.bz2"
+#	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="build kernel_FreeBSD kernel_linux +split-usr"
+
+pkg_setup() {
+	multilib_layout
+}
+
+riscv_compat_symlink() {
+	# Here we apply some special sauce for riscv.
+	# Two multilib layouts exist for now:
+	# 1) one level libdirs, (32bit) "lib" and (64bit) "lib64"
+	#    these are chosen by us to closely resemble other arches
+	# 2) two level libdirs, "lib64/lp64d" "lib64/lp64" "lib32/ilp32d" ...
+	#    this is the glibc/gcc default
+	# Unfortunately, the default has only one fallback, which is "lib"
+	# for both 32bit and 64bit. So things do not break in 1), we need
+	# to provide compatibility symlinks...
+
+	# This function has exactly two parameters:
+	# - the default libdir, to determine if 1) or 2) applies
+	# - the location of the symlink (which points to ".")
+
+	# Note: we call this only in the ${SYMLINK_LIB} = no codepath, since
+	# there never was a ${SYMLINK_LIB} = yes riscv profile.
+
+	case ${CHOST} in
+	riscv*)
+		# are we on a one level libdir profile? is there no symlink yet?
+		if [[ ${1} != */* && ! -L ${2} ]] ; then
+			ln -s . $2 || die "Unable to make $2 riscv compatibility symlink"
+		fi
+		;;
+	esac
+}
+
+# Create our multilib dirs - the Makefile has no knowledge of this
+multilib_layout() {
+	local dir def_libdir libdir libdirs
+	local prefix prefix_lst
+	def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
+	libdirs=$(get_all_libdirs)
+
+	if [[ -z "${SYMLINK_LIB}" || ${SYMLINK_LIB} = no ]] ; then
+		prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
+		for prefix in "${prefix_lst[@]}"; do
+			for libdir in ${libdirs}; do
+				dir="${prefix}${libdir}"
+				if [[ -e "${dir}" ]]; then
+					[[ ! -d "${dir}" ]] &&
+						die "${dir} exists but is not a directory"
+					continue
+				fi
+				if ! use split-usr && [[ ${prefix} = ${EROOT}/ ]]; then
+					libdir="${libdir%%/*}"
+					dir="${prefix}${libdir}"
+					einfo "symlinking ${dir} to usr/${libdir}"
+					ln -s usr/${libdir} ${dir} ||
+						die "Unable to make ${dir} symlink"
+				else
+					einfo "creating directory ${dir}"
+					mkdir -p "${dir}" ||
+						die "Unable to create ${dir} directory"
+				fi
+			done
+			riscv_compat_symlink "${def_libdir}" "${prefix}${def_libdir}/${DEFAULT_ABI}"
+		done
+		return 0
+	fi
+
+	[ -z "${def_libdir}" ] &&
+		die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
+
+	# figure out which paths should be symlinks and which should be directories
+	local dirs syms exp d
+	for libdir in ${libdirs} ; do
+		if use split-usr ; then
+			exp=( {,usr/,usr/local/}${libdir} )
+		else
+			exp=( {usr/,usr/local/}${libdir} )
+		fi
+		for d in "${exp[@]}" ; do
+			# most things should be dirs
+			if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
+				[ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
+			else
+				[ -h "${d}" ] && syms+=" ${d}"
+			fi
+		done
+	done
+	if [ -n "${syms}${dirs}" ] ; then
+		ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
+		ewarn "have these paths configured as follows:"
+		[ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
+		[ -n "${syms}" ] && ewarn "directories:${syms}"
+		ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
+		ewarn "If things fail, you will need to manually create/move the directories."
+		echo
+	fi
+
+	# setup symlinks and dirs where we expect them to be; do not migrate
+	# data ... just fall over in that case.
+	if use split-usr ; then
+		prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
+	else
+		prefix_lst=( "${EROOT}"/{usr/,usr/local/} )
+	fi
+	for prefix in "${prefix_lst[@]}"; do
+		if [ "${SYMLINK_LIB}" = yes ] ; then
+			# we need to make sure "lib" points to the native libdir
+			if [ -h "${prefix}lib" ] ; then
+				# it's already a symlink!  assume it's pointing to right place ...
+				continue
+			elif [ -d "${prefix}lib" ] ; then
+				# "lib" is a dir, so need to convert to a symlink
+				ewarn "Converting ${prefix}lib from a dir to a symlink"
+				rm -f "${prefix}lib"/.keep || die
+				if rmdir "${prefix}lib" 2>/dev/null ; then
+					ln -s ${def_libdir} "${prefix}lib" || die
+				else
+					die "non-empty dir found where we needed a symlink: ${prefix}lib"
+				fi
+			else
+				# nothing exists, so just set it up sanely
+				ewarn "Initializing ${prefix}lib as a symlink"
+				mkdir -p "${prefix}" || die
+				rm -f "${prefix}lib" || die
+				ln -s ${def_libdir} "${prefix}lib" || die
+				mkdir -p "${prefix}${def_libdir}" || die #423571
+			fi
+		else
+			# we need to make sure "lib" is a dir
+			if [ -h "${prefix}lib" ] ; then
+				# "lib" is a symlink, so need to convert to a dir
+				ewarn "Converting ${prefix}lib from a symlink to a dir"
+				rm -f "${prefix}lib" || die
+				if [ -d "${prefix}lib32" ] ; then
+					ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
+					mv "${prefix}lib32" "${prefix}lib" || die
+				else
+					mkdir -p "${prefix}lib" || die
+				fi
+			elif [ -d "${prefix}lib" ] && ! has lib32 ${libdirs} ; then
+				# make sure the old "lib" ABI location does not exist; we
+				# only symlinked the lib dir on systems where we moved it
+				# to "lib32" ...
+				case ${CHOST} in
+				*-gentoo-freebsd*) ;; # We want it the other way on fbsd.
+				i?86*|x86_64*|powerpc*|sparc*|s390*)
+					if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
+						rm -f "${prefix}lib32"/.keep || die
+						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
+							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
+							die "non-empty dir found where there should be none: ${prefix}lib32"
+						fi
+					fi
+					;;
+				esac
+			else
+				# nothing exists, so just set it up sanely
+				ewarn "Initializing ${prefix}lib as a dir"
+				mkdir -p "${prefix}lib" || die
+			fi
+		fi
+	done
+	if ! use split-usr ; then
+		for libdir in ${libdirs}; do
+			if [[ ! -e "${EROOT}${libdir}" ]]; then
+				ln -s usr/"${libdir}" "${EROOT}${libdir}" ||
+					die "Unable to make ${EROOT}${libdir} symlink"
+			fi
+		done
+	fi
+}
+
+pkg_preinst() {
+	# This is written in src_install (so it's in CONTENTS), but punt all
+	# pending updates to avoid user having to do etc-update (and make the
+	# pkg_postinst logic simpler).
+	rm -f "${EROOT}"/etc/._cfg????_gentoo-release || die
+
+	# We need to install directories and maybe some dev nodes when building
+	# stages, but they cannot be in CONTENTS.
+	# Also, we cannot reference $S as binpkg will break so we do this.
+	multilib_layout
+	if use build ; then
+		if use split-usr ; then
+			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
+		else
+			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
+		fi
+	fi
+	rm -f "${ED}"/usr/share/${PN}/Makefile || die
+}
+
+src_prepare() {
+	default
+	if use prefix; then
+		hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
+		hprefixify etc/{env.d/50baselayout,shells} share.Linux/passwd
+		echo PATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
+	fi
+
+	# don't want symlinked directories in PATH on systems with usr-merge
+	if ! use split-usr; then
+		sed \
+			-e 's|/usr/local/sbin:||g' \
+			-e 's|:/usr/sbin:|:|g' \
+			-e 's|:/sbin:|:|g' \
+			-e 's|:/bin:|:|g' \
+			-i etc/env.d/50baselayout || die
+	fi
+
+	# handle multilib paths.  do it here because we want this behavior
+	# regardless of the C library that you're using.  we do explicitly
+	# list paths which the native ldconfig searches, but this isn't
+	# problematic as it doesn't change the resulting ld.so.cache or
+	# take longer to generate.  similarly, listing both the native
+	# path and the symlinked path doesn't change the resulting cache.
+	local libdir ldpaths
+	for libdir in $(get_all_libdirs) ; do
+		use split-usr && ldpaths+=":${EPREFIX}/${libdir}"
+		ldpaths+=":${EPREFIX}/usr/${libdir}"
+		ldpaths+=":${EPREFIX}/usr/local/${libdir}"
+	done
+	echo "LDPATH='${ldpaths#:}'" >> etc/env.d/50baselayout
+}
+
+src_install() {
+	emake \
+		OS=$(usex kernel_FreeBSD BSD Linux) \
+		DESTDIR="${ED}" \
+		install
+
+	# need the makefile in pkg_preinst
+	insinto /usr/share/${PN}
+	doins Makefile
+
+	dodoc ChangeLog
+}
+
+pkg_postinst() {
+	local x
+
+	# We installed some files to /usr/share/baselayout instead of /etc to stop
+	# (1) overwriting the user's settings
+	# (2) screwing things up when attempting to merge files
+	# (3) accidentally packaging up personal files with quickpkg
+	# If they don't exist then we install them
+	for x in master.passwd passwd shadow group fstab ; do
+		[ -e "${EROOT}/etc/${x}" ] && continue
+		[ -e "${EROOT}/usr/share/baselayout/${x}" ] || continue
+		cp -p "${EROOT}/usr/share/baselayout/${x}" "${EROOT}"/etc || die
+	done
+
+	# Force shadow permissions to not be world-readable #260993
+	for x in shadow ; do
+		if [ -e "${EROOT}/etc/${x}" ] ; then
+			chmod o-rwx "${EROOT}/etc/${x}" || die
+		fi
+	done
+
+	# Take care of the etc-update for the user
+	if [ -e "${EROOT}"/etc/._cfg0000_gentoo-release ] ; then
+		mv "${EROOT}"/etc/._cfg0000_gentoo-release "${EROOT}"/etc/gentoo-release || die
+	fi
+
+	# whine about users that lack passwords #193541
+	if [[ -e "${EROOT}"/etc/shadow ]] ; then
+		local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
+		if [[ -n ${bad_users} ]] ; then
+			echo
+			ewarn "The following users lack passwords!"
+			ewarn ${bad_users}
+		fi
+	fi
+
+	# whine about users with invalid shells #215698
+	if [[ -e "${EROOT}"/etc/passwd ]] ; then
+		local bad_shells=$(awk -F: 'system("test -e ${ROOT}" $7) { print $1 " - " $7}' "${EROOT}"/etc/passwd | sort)
+		if [[ -n ${bad_shells} ]] ; then
+			echo
+			ewarn "The following users have non-existent shells!"
+			ewarn "${bad_shells}"
+		fi
+	fi
+
+	# https://bugs.gentoo.org/361349
+	if use kernel_linux; then
+		mkdir -p "${EROOT}"/run || die
+
+		local found fstype mountpoint
+		while read -r _ mountpoint fstype _; do
+		[[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
+		done < "${ROOT}"/proc/mounts
+		[[ -z ${found} ]] &&
+			ewarn "You should reboot now to get /run mounted with tmpfs!"
+	fi
+
+	for x in ${REPLACING_VERSIONS}; do
+		if ver_test 2.4 -lt ${x}; then
+			ewarn "After updating ${EROOT}/etc/profile, please run"
+			ewarn "env-update && . /etc/profile"
+		fi
+
+		if ver_test 2.6 -lt ${x}; then
+			ewarn "Please run env-update then log out and back in to"
+			ewarn "update your path."
+		fi
+		# clean up after 2.5 typos
+		# https://bugs.gentoo.org/show_bug.cgi?id=656380
+		if [[ ${x} == 2.5 ]]; then
+			rm -fr "${EROOT}/{,usr" || die
+		fi
+	done
+
+	if [[ -e "${EROOT}"/etc/env.d/00basic ]]; then
+		ewarn "${EROOT}/etc/env.d/00basic is now ${EROOT}/etc/env.d/50baselayout"
+		ewarn "Please migrate your changes."
+	fi
+}

diff --git a/sys-apps/baselayout/x b/sys-apps/baselayout/x
new file mode 100644
index 00000000000..a6859d9f723
--- /dev/null
+++ b/sys-apps/baselayout/x
@@ -0,0 +1,11 @@
+--- baselayout-2.8.ebuild	2021-09-27 16:54:24.631071046 -0500
++++ baselayout-9999.ebuild	2021-09-27 15:56:09.320772518 -0500
+@@ -12,7 +12,7 @@
+ 	inherit git-r3
+ else
+ 	SRC_URI="https://gitweb.gentoo.org/proj/${PN}.git/snapshot/${P}.tar.bz2"
+-#	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
++	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+ fi
+ 
+ LICENSE="GPL-2"


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2021-09-27 20:58 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2021-09-27 20:58 UTC (permalink / raw
  To: gentoo-commits

commit:     422b0fec97ce1c6f80319ca53398e2922b0c6ae2
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Mon Sep 27 20:55:44 2021 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Mon Sep 27 20:57:53 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=422b0fec

sys-apps/baselayout: install os-release via the makefile

Package-Manager: Portage-3.0.20, Repoman-3.0.3
Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-apps/baselayout/baselayout-9999.ebuild | 8 ++------
 1 file changed, 2 insertions(+), 6 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
index 5df53f3739a..c5f4dbf7dda 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-9999.ebuild
@@ -244,20 +244,16 @@ src_prepare() {
 }
 
 src_install() {
-	dodir /usr/lib
 	emake \
 		OS=$(usex kernel_FreeBSD BSD Linux) \
 		DESTDIR="${ED}" \
 		install
-	if use kernel_linux; then
-		insinto /lib
-		doins -r lib.Linux/*
-	fi
-	dodoc ChangeLog
 
 	# need the makefile in pkg_preinst
 	insinto /usr/share/${PN}
 	doins Makefile
+
+	dodoc ChangeLog
 }
 
 pkg_postinst() {


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2021-09-27 20:38 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2021-09-27 20:38 UTC (permalink / raw
  To: gentoo-commits

commit:     9a9deabd0fe4d01d457ef808e6fdaac36bd1ef81
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Mon Sep 27 20:29:10 2021 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Mon Sep 27 20:38:22 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9a9deabd

Revert "sys-apps/baselayout: stop using install target in makefile"

This reverts commit d2c10afa5573e5efaf1f6845cb47e3f8cc226812.
It will be cleaner to use the Makefile where possible.

Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-apps/baselayout/baselayout-9999.ebuild | 21 +++++++--------------
 1 file changed, 7 insertions(+), 14 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
index 9988d48fbad..5df53f3739a 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-9999.ebuild
@@ -244,27 +244,20 @@ src_prepare() {
 }
 
 src_install() {
-	local OS="$(usex kernel_linux 'Linux' 'BSD')"
-	insinto /etc
-	doins -r etc/* etc.${OS}/*
-	printf '%s\n' "Gentoo Base System release ${PV}" > "${T}"/gentoo-release
-	doins "${T}"/gentoo-release
-	dosym ../usr/lib/os-release /etc/os-release
-
+	dodir /usr/lib
+	emake \
+		OS=$(usex kernel_FreeBSD BSD Linux) \
+		DESTDIR="${ED}" \
+		install
 	if use kernel_linux; then
 		insinto /lib
 		doins -r lib.Linux/*
 	fi
-	insinto /usr/lib
-	./make_os_release ${OS} ${PV} > "${T}"/os-release
-	doins "${T}"/os-release
+	dodoc ChangeLog
 
-	insinto /usr/share/${PN}
-	doins -r share.${OS}/*
 	# need the makefile in pkg_preinst
+	insinto /usr/share/${PN}
 	doins Makefile
-
-	dodoc ChangeLog
 }
 
 pkg_postinst() {


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2021-09-27 20:10 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2021-09-27 20:10 UTC (permalink / raw
  To: gentoo-commits

commit:     d2c10afa5573e5efaf1f6845cb47e3f8cc226812
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Mon Sep 27 20:05:57 2021 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Mon Sep 27 20:10:26 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d2c10afa

sys-apps/baselayout: stop using install target in makefile

Package-Manager: Portage-3.0.20, Repoman-3.0.3
Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-apps/baselayout/baselayout-9999.ebuild | 21 ++++++++++++++-------
 1 file changed, 14 insertions(+), 7 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
index 5df53f3739a..9988d48fbad 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-9999.ebuild
@@ -244,20 +244,27 @@ src_prepare() {
 }
 
 src_install() {
-	dodir /usr/lib
-	emake \
-		OS=$(usex kernel_FreeBSD BSD Linux) \
-		DESTDIR="${ED}" \
-		install
+	local OS="$(usex kernel_linux 'Linux' 'BSD')"
+	insinto /etc
+	doins -r etc/* etc.${OS}/*
+	printf '%s\n' "Gentoo Base System release ${PV}" > "${T}"/gentoo-release
+	doins "${T}"/gentoo-release
+	dosym ../usr/lib/os-release /etc/os-release
+
 	if use kernel_linux; then
 		insinto /lib
 		doins -r lib.Linux/*
 	fi
-	dodoc ChangeLog
+	insinto /usr/lib
+	./make_os_release ${OS} ${PV} > "${T}"/os-release
+	doins "${T}"/os-release
 
-	# need the makefile in pkg_preinst
 	insinto /usr/share/${PN}
+	doins -r share.${OS}/*
+	# need the makefile in pkg_preinst
 	doins Makefile
+
+	dodoc ChangeLog
 }
 
 pkg_postinst() {


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2021-09-27 18:28 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2021-09-27 18:28 UTC (permalink / raw
  To: gentoo-commits

commit:     e96ccd3d636a4af6bfd4c5b86500c5e4ccd30b8a
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Mon Sep 27 18:25:28 2021 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Mon Sep 27 18:27:30 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e96ccd3d

sys-apps/baselayout: install sysctl.d and modprobe.d in /lib on linux

Package-Manager: Portage-3.0.20, Repoman-3.0.3
Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-apps/baselayout/baselayout-9999.ebuild | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
index fd82615d04a..5df53f3739a 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-9999.ebuild
@@ -244,10 +244,15 @@ src_prepare() {
 }
 
 src_install() {
+	dodir /usr/lib
 	emake \
 		OS=$(usex kernel_FreeBSD BSD Linux) \
 		DESTDIR="${ED}" \
 		install
+	if use kernel_linux; then
+		insinto /lib
+		doins -r lib.Linux/*
+	fi
 	dodoc ChangeLog
 
 	# need the makefile in pkg_preinst


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2021-09-25 22:37 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2021-09-25 22:37 UTC (permalink / raw
  To: gentoo-commits

commit:     9e8a8faaf012c18fd247706f1051a29cd8edc303
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Sat Sep 25 22:36:31 2021 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Sat Sep 25 22:37:24 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9e8a8faa

sys-apps/baselayout: remove the call to remove /etc/sysctl.d/README

This file is no longer installed by upstream so remove the call to
remove it.

Package-Manager: Portage-3.0.20, Repoman-3.0.3
Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-apps/baselayout/baselayout-9999.ebuild | 1 -
 1 file changed, 1 deletion(-)

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
index 84c0a536ea3..fd82615d04a 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-9999.ebuild
@@ -249,7 +249,6 @@ src_install() {
 		DESTDIR="${ED}" \
 		install
 	dodoc ChangeLog
-	rm "${ED}"/etc/sysctl.d/README || die
 
 	# need the makefile in pkg_preinst
 	insinto /usr/share/${PN}


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2021-09-24 23:15 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2021-09-24 23:15 UTC (permalink / raw
  To: gentoo-commits

commit:     4ce50fe689addf7ebc8861af8b290145bb741b6c
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Fri Sep 24 23:14:03 2021 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Fri Sep 24 23:15:11 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4ce50fe6

sys-apps/baselayout:

Move handling of the os-release file upstream.

Closes: https://bugs.gentoo.org/788190
Package-Manager: Portage-3.0.20, Repoman-3.0.3
Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-apps/baselayout/baselayout-9999.ebuild | 5 -----
 1 file changed, 5 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
index c5e8cb6d02c..84c0a536ea3 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-9999.ebuild
@@ -254,11 +254,6 @@ src_install() {
 	# need the makefile in pkg_preinst
 	insinto /usr/share/${PN}
 	doins Makefile
-
-	# This is needed for https://bugs.gentoo.org/732142
-	dodir /usr/lib
-	mv "${ED}"/etc/os-release "${ED}"/usr/lib || die
-	dosym ../usr/lib/os-release /etc/os-release
 }
 
 pkg_postinst() {


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2021-09-24 21:16 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2021-09-24 21:16 UTC (permalink / raw
  To: gentoo-commits

commit:     6adf02a980849788c51b183befebfb34543a58c7
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Fri Sep 24 20:38:40 2021 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Fri Sep 24 21:16:32 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6adf02a9

sys-apps/baselayout: drop creation of etc/gentoo-release

This is now created in the upstream Makefile.

Package-Manager: Portage-3.0.20, Repoman-3.0.3
Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-apps/baselayout/baselayout-9999.ebuild | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
index dc56d7e0851..c5e8cb6d02c 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-9999.ebuild
@@ -241,9 +241,6 @@ src_prepare() {
 		ldpaths+=":${EPREFIX}/usr/local/${libdir}"
 	done
 	echo "LDPATH='${ldpaths#:}'" >> etc/env.d/50baselayout
-
-	# rc-scripts version for testing of features that *should* be present
-	echo "Gentoo Base System release ${PV}" > etc/gentoo-release
 }
 
 src_install() {


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2021-09-24 19:11 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2021-09-24 19:11 UTC (permalink / raw
  To: gentoo-commits

commit:     47377989e9b04af58cd7b398ca540df19a8cf441
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Fri Sep 24 19:07:14 2021 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Fri Sep 24 19:10:54 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=47377989

sys-apps/baselayout: sync ROOTPATH to PATH

Rootpath hasn't been a thing for quite some time, so remove it.
Everyone uses $PATH these days.

Package-Manager: Portage-3.0.20, Repoman-3.0.3
Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-apps/baselayout/baselayout-9999.ebuild | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
index c83d1da82dc..dc56d7e0851 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-9999.ebuild
@@ -215,8 +215,7 @@ src_prepare() {
 	if use prefix; then
 		hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
 		hprefixify etc/{env.d/50baselayout,shells} share.Linux/passwd
-		echo PATH=/usr/bin:/bin >> etc/env.d/99host
-		echo ROOTPATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
+		echo PATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
 	fi
 
 	# don't want symlinked directories in PATH on systems with usr-merge


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2021-06-12 19:43 Andreas K. Hüttel
  0 siblings, 0 replies; 124+ messages in thread
From: Andreas K. Hüttel @ 2021-06-12 19:43 UTC (permalink / raw
  To: gentoo-commits

commit:     e5779ed450cb40d944b013b1257a385714544d0c
Author:     Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
AuthorDate: Sat Jun 12 19:40:39 2021 +0000
Commit:     Andreas K. Hüttel <dilfridge <AT> gentoo <DOT> org>
CommitDate: Sat Jun 12 19:42:52 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e5779ed4

sys-apps/baselayout: Add riscv compat symlink for 1-level libdir

Approved by williamh

Package-Manager: Portage-3.0.18, Repoman-3.0.2
Signed-off-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>

 ...layout-9999.ebuild => baselayout-2.7-r3.ebuild} | 41 ++++++++++++++++++++++
 sys-apps/baselayout/baselayout-9999.ebuild         | 41 ++++++++++++++++++++++
 2 files changed, 82 insertions(+)

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-2.7-r3.ebuild
similarity index 87%
copy from sys-apps/baselayout/baselayout-9999.ebuild
copy to sys-apps/baselayout/baselayout-2.7-r3.ebuild
index 9f4a53a1c18..c83d1da82dc 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-2.7-r3.ebuild
@@ -23,6 +23,34 @@ pkg_setup() {
 	multilib_layout
 }
 
+riscv_compat_symlink() {
+	# Here we apply some special sauce for riscv.
+	# Two multilib layouts exist for now:
+	# 1) one level libdirs, (32bit) "lib" and (64bit) "lib64"
+	#    these are chosen by us to closely resemble other arches
+	# 2) two level libdirs, "lib64/lp64d" "lib64/lp64" "lib32/ilp32d" ...
+	#    this is the glibc/gcc default
+	# Unfortunately, the default has only one fallback, which is "lib"
+	# for both 32bit and 64bit. So things do not break in 1), we need
+	# to provide compatibility symlinks...
+
+	# This function has exactly two parameters:
+	# - the default libdir, to determine if 1) or 2) applies
+	# - the location of the symlink (which points to ".")
+
+	# Note: we call this only in the ${SYMLINK_LIB} = no codepath, since
+	# there never was a ${SYMLINK_LIB} = yes riscv profile.
+
+	case ${CHOST} in
+	riscv*)
+		# are we on a one level libdir profile? is there no symlink yet?
+		if [[ ${1} != */* && ! -L ${2} ]] ; then
+			ln -s . $2 || die "Unable to make $2 riscv compatibility symlink"
+		fi
+		;;
+	esac
+}
+
 # Create our multilib dirs - the Makefile has no knowledge of this
 multilib_layout() {
 	local dir def_libdir libdir libdirs
@@ -52,6 +80,7 @@ multilib_layout() {
 						die "Unable to create ${dir} directory"
 				fi
 			done
+			riscv_compat_symlink "${def_libdir}" "${prefix}${def_libdir}/${DEFAULT_ABI}"
 		done
 		return 0
 	fi
@@ -282,6 +311,18 @@ pkg_postinst() {
 		fi
 	fi
 
+	# https://bugs.gentoo.org/361349
+	if use kernel_linux; then
+		mkdir -p "${EROOT}"/run || die
+
+		local found fstype mountpoint
+		while read -r _ mountpoint fstype _; do
+		[[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
+		done < "${ROOT}"/proc/mounts
+		[[ -z ${found} ]] &&
+			ewarn "You should reboot now to get /run mounted with tmpfs!"
+	fi
+
 	for x in ${REPLACING_VERSIONS}; do
 		if ver_test 2.4 -lt ${x}; then
 			ewarn "After updating ${EROOT}/etc/profile, please run"

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
index 9f4a53a1c18..c83d1da82dc 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-9999.ebuild
@@ -23,6 +23,34 @@ pkg_setup() {
 	multilib_layout
 }
 
+riscv_compat_symlink() {
+	# Here we apply some special sauce for riscv.
+	# Two multilib layouts exist for now:
+	# 1) one level libdirs, (32bit) "lib" and (64bit) "lib64"
+	#    these are chosen by us to closely resemble other arches
+	# 2) two level libdirs, "lib64/lp64d" "lib64/lp64" "lib32/ilp32d" ...
+	#    this is the glibc/gcc default
+	# Unfortunately, the default has only one fallback, which is "lib"
+	# for both 32bit and 64bit. So things do not break in 1), we need
+	# to provide compatibility symlinks...
+
+	# This function has exactly two parameters:
+	# - the default libdir, to determine if 1) or 2) applies
+	# - the location of the symlink (which points to ".")
+
+	# Note: we call this only in the ${SYMLINK_LIB} = no codepath, since
+	# there never was a ${SYMLINK_LIB} = yes riscv profile.
+
+	case ${CHOST} in
+	riscv*)
+		# are we on a one level libdir profile? is there no symlink yet?
+		if [[ ${1} != */* && ! -L ${2} ]] ; then
+			ln -s . $2 || die "Unable to make $2 riscv compatibility symlink"
+		fi
+		;;
+	esac
+}
+
 # Create our multilib dirs - the Makefile has no knowledge of this
 multilib_layout() {
 	local dir def_libdir libdir libdirs
@@ -52,6 +80,7 @@ multilib_layout() {
 						die "Unable to create ${dir} directory"
 				fi
 			done
+			riscv_compat_symlink "${def_libdir}" "${prefix}${def_libdir}/${DEFAULT_ABI}"
 		done
 		return 0
 	fi
@@ -282,6 +311,18 @@ pkg_postinst() {
 		fi
 	fi
 
+	# https://bugs.gentoo.org/361349
+	if use kernel_linux; then
+		mkdir -p "${EROOT}"/run || die
+
+		local found fstype mountpoint
+		while read -r _ mountpoint fstype _; do
+		[[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
+		done < "${ROOT}"/proc/mounts
+		[[ -z ${found} ]] &&
+			ewarn "You should reboot now to get /run mounted with tmpfs!"
+	fi
+
 	for x in ${REPLACING_VERSIONS}; do
 		if ver_test 2.4 -lt ${x}; then
 			ewarn "After updating ${EROOT}/etc/profile, please run"


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2021-05-12 20:11 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2021-05-12 20:11 UTC (permalink / raw
  To: gentoo-commits

commit:     5e594b78a696a6d00b5f75ffd0d40d7a8a80f348
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Tue May 11 22:24:33 2021 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Wed May 12 20:11:15 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5e594b78

sys-apps/baselayout: remove old /run setup

This was needed to create /run on live systems.
There have been several baselayout versions since /run was created, so
it should be safe to remove it.

Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-apps/baselayout/baselayout-9999.ebuild | 12 ------------
 1 file changed, 12 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
index a37d17f3b8d..9f4a53a1c18 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-9999.ebuild
@@ -282,18 +282,6 @@ pkg_postinst() {
 		fi
 	fi
 
-	# https://bugs.gentoo.org/361349
-	if use kernel_linux; then
-		mkdir -p "${EROOT}"/run || die
-
-		local found fstype mountpoint
-		while read -r _ mountpoint fstype _; do
-		[[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
-		done < "${ROOT}"/proc/mounts
-		[[ -z ${found} ]] &&
-			ewarn "You should reboot now to get /run mounted with tmpfs!"
-	fi
-
 	for x in ${REPLACING_VERSIONS}; do
 		if ver_test 2.4 -lt ${x}; then
 			ewarn "After updating ${EROOT}/etc/profile, please run"


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2021-04-16 16:38 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2021-04-16 16:38 UTC (permalink / raw
  To: gentoo-commits

commit:     701ffbd641d1867102b5feb98fab4a4df69a0171
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Fri Apr 16 16:36:23 2021 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Fri Apr 16 16:37:46 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=701ffbd6

sys-apps/baselayout: remove old versions

Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-apps/baselayout/Manifest                   |   2 -
 sys-apps/baselayout/baselayout-2.4.1-r2.ebuild | 248 ---------------------
 sys-apps/baselayout/baselayout-2.6-r1.ebuild   | 297 -------------------------
 3 files changed, 547 deletions(-)

diff --git a/sys-apps/baselayout/Manifest b/sys-apps/baselayout/Manifest
index 293c93ad739..112675aad11 100644
--- a/sys-apps/baselayout/Manifest
+++ b/sys-apps/baselayout/Manifest
@@ -1,3 +1 @@
-DIST baselayout-2.4.1.tar.bz2 31307 BLAKE2B da26f7fbeefa5efecb6e5d9ded6c2bf3148cd1fcfc6ebb86535f5a9c086c4bb55f6a8420a3c0d0f7008251637f3e4653db875ec427745d039f753008d2f21be2 SHA512 e505ad81834aafb574ffee9bc1fce216c1c8c7fa11b0095580f87a37e4b9efb057ee78db7cd5affc64f05d5dd0592c671304414c119b37d86dfaa1e7b84ce7c1
-DIST baselayout-2.6.tar.bz2 31871 BLAKE2B 4a51d173dc5a2837f78cd1247b5eadd89e7d0b5f2dbc72e75f027b0c23a5db9a386c53e756e80240f36ad4d63e3fe421bf9510c18321d7a31fda140ad47b2860 SHA512 5cad5faf56871ae951120643e29db0c39fea6dc845b4755382bd469eca32639ec6cd0cd046d3c439a7cc607b18770036f9c256260d35beaffb094e23cb13740b
 DIST baselayout-2.7.tar.bz2 30317 BLAKE2B 7b7c284b7d0a9608a0d03dbde0d62d793829b61d5361f5062fdeb8880a2f792c142e20acf7fa92e713e2ebb0bd1609ca65bc8a4191f2bf2c5df4f474eaeef1ee SHA512 8b28d2dc20fd5887db5c0e6b67a4217c4d0730529023fc57fb1ee95a431e1f492fb21e3e66980bef766819e9f542dc7e4ad3ae25465390194bbf970c3653c88e

diff --git a/sys-apps/baselayout/baselayout-2.4.1-r2.ebuild b/sys-apps/baselayout/baselayout-2.4.1-r2.ebuild
deleted file mode 100644
index c3d6a9fa3dc..00000000000
--- a/sys-apps/baselayout/baselayout-2.4.1-r2.ebuild
+++ /dev/null
@@ -1,248 +0,0 @@
-# Copyright 1999-2021 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit eutils multilib versionator prefix
-
-DESCRIPTION="Filesystem baselayout and init scripts"
-HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
-SRC_URI="https://gitweb.gentoo.org/proj/baselayout.git/snapshot/${P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86"
-IUSE="build kernel_linux"
-
-pkg_setup() {
-	multilib_layout
-}
-
-# Create our multilib dirs - the Makefile has no knowledge of this
-multilib_layout() {
-	local libdir libdirs=$(get_all_libdirs) def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
-	: ${libdirs:=lib}	# it isn't that we don't trust multilib.eclass...
-
-	[ -z "${def_libdir}" ] &&
-		die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
-
-	# figure out which paths should be symlinks and which should be directories
-	local dirs syms exp d
-	for libdir in ${libdirs} ; do
-		exp=( {,usr/,usr/local/}${libdir} )
-		for d in "${exp[@]}" ; do
-			# most things should be dirs
-			if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
-				[ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
-			else
-				[ -h "${d}" ] && syms+=" ${d}"
-			fi
-		done
-	done
-	if [ -n "${syms}${dirs}" ] ; then
-		ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
-		ewarn "have these paths configured as follows:"
-		[ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
-		[ -n "${syms}" ] && ewarn "directories:${syms}"
-		ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
-		ewarn "If things fail, you will need to manually create/move the directories."
-		echo
-	fi
-
-	# setup symlinks and dirs where we expect them to be; do not migrate
-	# data ... just fall over in that case.
-	local prefix
-	for prefix in "${EROOT}"{,usr/,usr/local/} ; do
-		if [ "${SYMLINK_LIB}" = yes ] ; then
-			# we need to make sure "lib" points to the native libdir
-			if [ -h "${prefix}lib" ] ; then
-				# it's already a symlink!  assume it's pointing to right place ...
-				continue
-			elif [ -d "${prefix}lib" ] ; then
-				# "lib" is a dir, so need to convert to a symlink
-				ewarn "Converting ${prefix}lib from a dir to a symlink"
-				rm -f "${prefix}lib"/.keep
-				if rmdir "${prefix}lib" 2>/dev/null ; then
-					ln -s ${def_libdir} "${prefix}lib" || die
-				else
-					die "non-empty dir found where we needed a symlink: ${prefix}lib"
-				fi
-			else
-				# nothing exists, so just set it up sanely
-				ewarn "Initializing ${prefix}lib as a symlink"
-				mkdir -p "${prefix}" || die
-				rm -f "${prefix}lib" || die
-				ln -s ${def_libdir} "${prefix}lib" || die
-				mkdir -p "${prefix}${def_libdir}" #423571
-			fi
-		else
-			# we need to make sure "lib" is a dir
-			if [ -h "${prefix}lib" ] ; then
-				# "lib" is a symlink, so need to convert to a dir
-				ewarn "Converting ${prefix}lib from a symlink to a dir"
-				rm -f "${prefix}lib" || die
-				if [ -d "${prefix}lib32" ] ; then
-					ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
-					mv "${prefix}lib32" "${prefix}lib" || die
-				else
-					mkdir -p "${prefix}lib" || die
-				fi
-			elif [ -d "${prefix}lib" ] && ! has lib32 ${libdirs} ; then
-				# make sure the old "lib" ABI location does not exist; we
-				# only symlinked the lib dir on systems where we moved it
-				# to "lib32" ...
-				case ${CHOST} in
-				*-gentoo-freebsd*) ;; # We want it the other way on fbsd.
-				i?86*|x86_64*|powerpc*|sparc*|s390*)
-					if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
-						rm -f "${prefix}lib32"/.keep
-						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
-							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
-							die "non-empty dir found where there should be none: ${prefix}lib32"
-						fi
-					fi
-					;;
-				esac
-			else
-				# nothing exists, so just set it up sanely
-				ewarn "Initializing ${prefix}lib as a dir"
-				mkdir -p "${prefix}lib" || die
-			fi
-		fi
-	done
-}
-
-pkg_preinst() {
-	# Bug #217848 - Since the remap_dns_vars() called by pkg_preinst() of
-	# the baselayout-1.x ebuild copies all the real configs from the user's
-	# /etc/conf.d into ${D}, it makes them all appear to be the default
-	# versions. In order to protect them from being unmerged after this
-	# upgrade, modify their timestamps.
-	touch "${EROOT}"/etc/conf.d/* 2>/dev/null
-
-	# This is written in src_install (so it's in CONTENTS), but punt all
-	# pending updates to avoid user having to do etc-update (and make the
-	# pkg_postinst logic simpler).
-	rm -f "${EROOT}"/etc/._cfg????_gentoo-release
-
-	# We need to install directories and maybe some dev nodes when building
-	# stages, but they cannot be in CONTENTS.
-	# Also, we cannot reference $S as binpkg will break so we do this.
-	multilib_layout
-	if use build ; then
-		emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
-	fi
-	rm -f "${ED}"/usr/share/${PN}/Makefile
-}
-
-src_prepare() {
-	default
-	if use prefix; then
-		hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
-		hprefixify etc/{env.d/50baselayout,shells} share.Linux/passwd
-		echo PATH=/usr/bin:/bin >> etc/env.d/99host
-		echo ROOTPATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
-	fi
-
-	# handle multilib paths.  do it here because we want this behavior
-	# regardless of the C library that you're using.  we do explicitly
-	# list paths which the native ldconfig searches, but this isn't
-	# problematic as it doesn't change the resulting ld.so.cache or
-	# take longer to generate.  similarly, listing both the native
-	# path and the symlinked path doesn't change the resulting cache.
-	local libdir ldpaths
-	for libdir in $(get_all_libdirs) ; do
-		ldpaths+=":${EPREFIX}/${libdir}:${EPREFIX}/usr/${libdir}"
-		ldpaths+=":${EPREFIX}/usr/local/${libdir}"
-	done
-	echo "LDPATH='${ldpaths#:}'" >> etc/env.d/50baselayout
-
-	# rc-scripts version for testing of features that *should* be present
-	echo "Gentoo Base System release ${PV}" > etc/gentoo-release
-}
-
-src_install() {
-	emake \
-		OS=$(usex kernel_FreeBSD BSD Linux) \
-		DESTDIR="${ED}" \
-		install
-	dodoc ChangeLog
-
-	# need the makefile in pkg_preinst
-	insinto /usr/share/${PN}
-	doins Makefile
-}
-
-pkg_postinst() {
-	local x
-
-	# We installed some files to /usr/share/baselayout instead of /etc to stop
-	# (1) overwriting the user's settings
-	# (2) screwing things up when attempting to merge files
-	# (3) accidentally packaging up personal files with quickpkg
-	# If they don't exist then we install them
-	for x in master.passwd passwd shadow group fstab ; do
-		[ -e "${EROOT}etc/${x}" ] && continue
-		[ -e "${EROOT}usr/share/baselayout/${x}" ] || continue
-		cp -p "${EROOT}usr/share/baselayout/${x}" "${EROOT}"etc
-	done
-
-	# Force shadow permissions to not be world-readable #260993
-	for x in shadow ; do
-		[ -e "${EROOT}etc/${x}" ] && chmod o-rwx "${EROOT}etc/${x}"
-	done
-
-	# Take care of the etc-update for the user
-	if [ -e "${EROOT}"etc/._cfg0000_gentoo-release ] ; then
-		mv "${EROOT}"etc/._cfg0000_gentoo-release "${EROOT}"etc/gentoo-release
-	fi
-
-	# whine about users that lack passwords #193541
-	if [[ -e "${EROOT}"etc/shadow ]] ; then
-		local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
-		if [[ -n ${bad_users} ]] ; then
-			echo
-			ewarn "The following users lack passwords!"
-			ewarn ${bad_users}
-		fi
-	fi
-
-	# baselayout leaves behind a lot of .keep files, so let's clean them up
-	find "${EROOT}"lib*/rcscripts/ -name .keep -exec rm -f {} + 2>/dev/null
-	find "${EROOT}"lib*/rcscripts/ -depth -type d -exec rmdir {} + 2>/dev/null
-
-	# whine about users with invalid shells #215698
-	if [[ -e "${EROOT}"etc/passwd ]] ; then
-		local bad_shells=$(awk -F: 'system("test -e " $7) { print $1 " - " $7}' "${EROOT}"etc/passwd | sort)
-		if [[ -n ${bad_shells} ]] ; then
-			echo
-			ewarn "The following users have non-existent shells!"
-			ewarn "${bad_shells}"
-		fi
-	fi
-
-	# https://bugs.gentoo.org/361349
-	if use kernel_linux; then
-		mkdir -p "${EROOT}"run
-
-		local found fstype mountpoint
-		while read -r _ mountpoint fstype _; do
-		[[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
-		done < "${ROOT}"proc/mounts
-		[[ -z ${found} ]] &&
-			ewarn "You should reboot now to get /run mounted with tmpfs!"
-	fi
-
-	for x in ${REPLACING_VERSIONS}; do
-		if ! version_is_at_least 2.4 ${v}; then
-			ewarn "After updating ${EROOT}etc/profile, please run"
-			ewarn "env-update and . /etc/profile"
-			break
-		fi
-	done
-
-	if [[ -e "${EROOT}"etc/env.d/00basic ]]; then
-		ewarn "${EROOT}etc/env.d/00basic is now ${EROOT}etc/env.d/50baselayout"
-		ewarn "Please migrate your changes."
-	fi
-}

diff --git a/sys-apps/baselayout/baselayout-2.6-r1.ebuild b/sys-apps/baselayout/baselayout-2.6-r1.ebuild
deleted file mode 100644
index 5471a444eb2..00000000000
--- a/sys-apps/baselayout/baselayout-2.6-r1.ebuild
+++ /dev/null
@@ -1,297 +0,0 @@
-# Copyright 1999-2020 Gentoo Authors
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit multilib versionator prefix
-
-DESCRIPTION="Filesystem baselayout and init scripts"
-HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
-if [[ ${PV} = 9999 ]]; then
-	EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/${PN}.git"
-	inherit git-r3
-else
-	SRC_URI="https://gitweb.gentoo.org/proj/${PN}.git/snapshot/${P}.tar.bz2"
-	KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sparc x86"
-fi
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="build kernel_FreeBSD kernel_linux +split-usr"
-
-pkg_setup() {
-	multilib_layout
-}
-
-# Create our multilib dirs - the Makefile has no knowledge of this
-multilib_layout() {
-	local dir def_libdir libdir libdirs
-	local prefix prefix_lst
-	def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
-	libdirs=$(get_all_libdirs)
-	: ${libdirs:=lib}	# it isn't that we don't trust multilib.eclass...
-
-	if [[ -z "${SYMLINK_LIB}" || ${SYMLINK_LIB} = no ]] ; then
-		prefix_lst=( "${EROOT}"{,usr/,usr/local/} )
-		for prefix in ${prefix_lst[@]}; do
-			for libdir in ${libdirs}; do
-				dir="${prefix}${libdir}"
-				if [[ -e "${dir}" ]]; then
-					[[ ! -d "${dir}" ]] &&
-						die "${dir} exists but is not a directory"
-					continue
-				fi
-				if ! use split-usr && [[ ${prefix} = ${EROOT} ]]; then
-					einfo "symlinking ${dir} to usr/${libdir}"
-					ln -s usr/${libdir} ${dir} ||
-						die " Unable to make ${dir} symlink"
-				else
-					einfo "creating directory ${dir}"
-					mkdir -p "${dir}" ||
-						die "Unable to create ${dir} directory"
-				fi
-			done
-		done
-		return 0
-	fi
-
-	[ -z "${def_libdir}" ] &&
-		die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
-
-	# figure out which paths should be symlinks and which should be directories
-	local dirs syms exp d
-	for libdir in ${libdirs} ; do
-		if use split-usr ; then
-			exp=( {,usr/,usr/local/}${libdir} )
-		else
-			exp=( {usr/,usr/local/}${libdir} )
-		fi
-		for d in "${exp[@]}" ; do
-			# most things should be dirs
-			if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
-				[ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
-			else
-				[ -h "${d}" ] && syms+=" ${d}"
-			fi
-		done
-	done
-	if [ -n "${syms}${dirs}" ] ; then
-		ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
-		ewarn "have these paths configured as follows:"
-		[ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
-		[ -n "${syms}" ] && ewarn "directories:${syms}"
-		ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
-		ewarn "If things fail, you will need to manually create/move the directories."
-		echo
-	fi
-
-	# setup symlinks and dirs where we expect them to be; do not migrate
-	# data ... just fall over in that case.
-	if use split-usr ; then
-		prefix_lst=( "${EROOT}"{,usr/,usr/local/} )
-	else
-		prefix_lst=( "${EROOT}"{usr/,usr/local/} )
-	fi
-	for prefix in "${prefix_lst[@]}"; do
-		if [ "${SYMLINK_LIB}" = yes ] ; then
-			# we need to make sure "lib" points to the native libdir
-			if [ -h "${prefix}lib" ] ; then
-				# it's already a symlink!  assume it's pointing to right place ...
-				continue
-			elif [ -d "${prefix}lib" ] ; then
-				# "lib" is a dir, so need to convert to a symlink
-				ewarn "Converting ${prefix}lib from a dir to a symlink"
-				rm -f "${prefix}lib"/.keep
-				if rmdir "${prefix}lib" 2>/dev/null ; then
-					ln -s ${def_libdir} "${prefix}lib" || die
-				else
-					die "non-empty dir found where we needed a symlink: ${prefix}lib"
-				fi
-			else
-				# nothing exists, so just set it up sanely
-				ewarn "Initializing ${prefix}lib as a symlink"
-				mkdir -p "${prefix}" || die
-				rm -f "${prefix}lib" || die
-				ln -s ${def_libdir} "${prefix}lib" || die
-				mkdir -p "${prefix}${def_libdir}" #423571
-			fi
-		else
-			# we need to make sure "lib" is a dir
-			if [ -h "${prefix}lib" ] ; then
-				# "lib" is a symlink, so need to convert to a dir
-				ewarn "Converting ${prefix}lib from a symlink to a dir"
-				rm -f "${prefix}lib" || die
-				if [ -d "${prefix}lib32" ] ; then
-					ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
-					mv "${prefix}lib32" "${prefix}lib" || die
-				else
-					mkdir -p "${prefix}lib" || die
-				fi
-			elif [ -d "${prefix}lib" ] && ! has lib32 ${libdirs} ; then
-				# make sure the old "lib" ABI location does not exist; we
-				# only symlinked the lib dir on systems where we moved it
-				# to "lib32" ...
-				case ${CHOST} in
-				*-gentoo-freebsd*) ;; # We want it the other way on fbsd.
-				i?86*|x86_64*|powerpc*|sparc*|s390*)
-					if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
-						rm -f "${prefix}lib32"/.keep
-						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
-							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
-							die "non-empty dir found where there should be none: ${prefix}lib32"
-						fi
-					fi
-					;;
-				esac
-			else
-				# nothing exists, so just set it up sanely
-				ewarn "Initializing ${prefix}lib as a dir"
-				mkdir -p "${prefix}lib" || die
-			fi
-		fi
-	done
-	if ! use split-usr ; then
-		for libdir in ${libdirs}; do
-			if [[ ! -e "${EROOT}${libdir}" ]]; then
-				ln -s usr/"${libdir}" "${EROOT}${libdir}"
-			fi
-		done
-	fi
-}
-
-pkg_preinst() {
-	# This is written in src_install (so it's in CONTENTS), but punt all
-	# pending updates to avoid user having to do etc-update (and make the
-	# pkg_postinst logic simpler).
-	rm -f "${EROOT}"/etc/._cfg????_gentoo-release
-
-	# We need to install directories and maybe some dev nodes when building
-	# stages, but they cannot be in CONTENTS.
-	# Also, we cannot reference $S as binpkg will break so we do this.
-	multilib_layout
-	if use build ; then
-		if use split-usr ; then
-			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
-		else
-			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
-		fi
-	fi
-	rm -f "${ED}"/usr/share/${PN}/Makefile
-}
-
-src_prepare() {
-	default
-	if use prefix; then
-		hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
-		hprefixify etc/{env.d/50baselayout,shells} share.Linux/passwd
-		echo PATH=/usr/bin:/bin >> etc/env.d/99host
-		echo ROOTPATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
-	fi
-
-	# handle multilib paths.  do it here because we want this behavior
-	# regardless of the C library that you're using.  we do explicitly
-	# list paths which the native ldconfig searches, but this isn't
-	# problematic as it doesn't change the resulting ld.so.cache or
-	# take longer to generate.  similarly, listing both the native
-	# path and the symlinked path doesn't change the resulting cache.
-	local libdir ldpaths
-	for libdir in $(get_all_libdirs) ; do
-		ldpaths+=":${EPREFIX}/${libdir}:${EPREFIX}/usr/${libdir}"
-		ldpaths+=":${EPREFIX}/usr/local/${libdir}"
-	done
-	echo "LDPATH='${ldpaths#:}'" >> etc/env.d/50baselayout
-
-	# rc-scripts version for testing of features that *should* be present
-	echo "Gentoo Base System release ${PV}" > etc/gentoo-release
-}
-
-src_install() {
-	emake \
-		OS=$(usex kernel_FreeBSD BSD Linux) \
-		DESTDIR="${ED}" \
-		install
-	dodoc ChangeLog
-
-	# need the makefile in pkg_preinst
-	insinto /usr/share/${PN}
-	doins Makefile
-}
-
-pkg_postinst() {
-	local x
-
-	# We installed some files to /usr/share/baselayout instead of /etc to stop
-	# (1) overwriting the user's settings
-	# (2) screwing things up when attempting to merge files
-	# (3) accidentally packaging up personal files with quickpkg
-	# If they don't exist then we install them
-	for x in master.passwd passwd shadow group fstab ; do
-		[ -e "${EROOT}etc/${x}" ] && continue
-		[ -e "${EROOT}usr/share/baselayout/${x}" ] || continue
-		cp -p "${EROOT}usr/share/baselayout/${x}" "${EROOT}"etc
-	done
-
-	# Force shadow permissions to not be world-readable #260993
-	for x in shadow ; do
-		[ -e "${EROOT}etc/${x}" ] && chmod o-rwx "${EROOT}etc/${x}"
-	done
-
-	# Take care of the etc-update for the user
-	if [ -e "${EROOT}"etc/._cfg0000_gentoo-release ] ; then
-		mv "${EROOT}"etc/._cfg0000_gentoo-release "${EROOT}"etc/gentoo-release
-	fi
-
-	# whine about users that lack passwords #193541
-	if [[ -e "${EROOT}"etc/shadow ]] ; then
-		local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
-		if [[ -n ${bad_users} ]] ; then
-			echo
-			ewarn "The following users lack passwords!"
-			ewarn ${bad_users}
-		fi
-	fi
-
-	# whine about users with invalid shells #215698
-	if [[ -e "${EROOT}"etc/passwd ]] ; then
-		local bad_shells=$(awk -F: 'system("test -e " $7) { print $1 " - " $7}' "${EROOT}"etc/passwd | sort)
-		if [[ -n ${bad_shells} ]] ; then
-			echo
-			ewarn "The following users have non-existent shells!"
-			ewarn "${bad_shells}"
-		fi
-	fi
-
-	# https://bugs.gentoo.org/361349
-	if use kernel_linux; then
-		mkdir -p "${EROOT}"run
-
-		local found fstype mountpoint
-		while read -r _ mountpoint fstype _; do
-		[[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
-		done < "${ROOT}"proc/mounts
-		[[ -z ${found} ]] &&
-			ewarn "You should reboot now to get /run mounted with tmpfs!"
-	fi
-
-	for x in ${REPLACING_VERSIONS}; do
-		if ! version_is_at_least 2.4 ${x}; then
-			ewarn "After updating ${EROOT}etc/profile, please run"
-			ewarn "env-update && . /etc/profile"
-		fi
-
-		if ! version_is_at_least 2.6 ${x}; then
-			ewarn "Please run env-update then log out and back in to"
-			ewarn "update your path."
-		fi
-		# clean up after 2.5 typos
-		# https://bugs.gentoo.org/show_bug.cgi?id=656380
-		if [[ ${x} == 2.5 ]]; then
-			rm -fr "${EROOT}{,usr"
-		fi
-	done
-
-	if [[ -e "${EROOT}"etc/env.d/00basic ]]; then
-		ewarn "${EROOT}etc/env.d/00basic is now ${EROOT}etc/env.d/50baselayout"
-		ewarn "Please migrate your changes."
-	fi
-}


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2021-04-16 16:26 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2021-04-16 16:26 UTC (permalink / raw
  To: gentoo-commits

commit:     b0ced97b588ac34ba5730ff812248e4e7f2af1cd
Author:     David Michael <fedora.dm0 <AT> gmail <DOT> com>
AuthorDate: Mon Mar 29 15:28:36 2021 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Fri Apr 16 16:25:51 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b0ced97b

sys-apps/baselayout: EAPI 7, fix RISC-V UsrMerge, sync live

This fixes the UsrMerge layout on RISC-V with its subdirectory
libdirs so that only lib and lib64 and links.

It also updates the test for bad shells to look in the target root.

Closes: https://bugs.gentoo.org/728674
Signed-off-by: David Michael <fedora.dm0 <AT> gmail.com>
Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 ...layout-9999.ebuild => baselayout-2.7-r2.ebuild} | 74 ++++++++++++----------
 sys-apps/baselayout/baselayout-9999.ebuild         | 74 ++++++++++++----------
 2 files changed, 82 insertions(+), 66 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-2.7-r2.ebuild
similarity index 82%
copy from sys-apps/baselayout/baselayout-9999.ebuild
copy to sys-apps/baselayout/baselayout-2.7-r2.ebuild
index ee4f298e840..a37d17f3b8d 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-2.7-r2.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI=6
+EAPI=7
 
-inherit multilib versionator prefix
+inherit multilib prefix
 
 DESCRIPTION="Filesystem baselayout and init scripts"
 HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
@@ -29,10 +29,9 @@ multilib_layout() {
 	local prefix prefix_lst
 	def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
 	libdirs=$(get_all_libdirs)
-	: ${libdirs:=lib}	# it isn't that we don't trust multilib.eclass...
 
 	if [[ -z "${SYMLINK_LIB}" || ${SYMLINK_LIB} = no ]] ; then
-		prefix_lst=( "${EROOT}"{,usr/,usr/local/} )
+		prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
 		for prefix in "${prefix_lst[@]}"; do
 			for libdir in ${libdirs}; do
 				dir="${prefix}${libdir}"
@@ -41,10 +40,12 @@ multilib_layout() {
 						die "${dir} exists but is not a directory"
 					continue
 				fi
-				if ! use split-usr && [[ ${prefix} = ${EROOT} ]]; then
+				if ! use split-usr && [[ ${prefix} = ${EROOT}/ ]]; then
+					libdir="${libdir%%/*}"
+					dir="${prefix}${libdir}"
 					einfo "symlinking ${dir} to usr/${libdir}"
 					ln -s usr/${libdir} ${dir} ||
-						die " Unable to make ${dir} symlink"
+						die "Unable to make ${dir} symlink"
 				else
 					einfo "creating directory ${dir}"
 					mkdir -p "${dir}" ||
@@ -88,9 +89,9 @@ multilib_layout() {
 	# setup symlinks and dirs where we expect them to be; do not migrate
 	# data ... just fall over in that case.
 	if use split-usr ; then
-		prefix_lst=( "${EROOT}"{,usr/,usr/local/} )
+		prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
 	else
-		prefix_lst=( "${EROOT}"{usr/,usr/local/} )
+		prefix_lst=( "${EROOT}"/{usr/,usr/local/} )
 	fi
 	for prefix in "${prefix_lst[@]}"; do
 		if [ "${SYMLINK_LIB}" = yes ] ; then
@@ -101,7 +102,7 @@ multilib_layout() {
 			elif [ -d "${prefix}lib" ] ; then
 				# "lib" is a dir, so need to convert to a symlink
 				ewarn "Converting ${prefix}lib from a dir to a symlink"
-				rm -f "${prefix}lib"/.keep
+				rm -f "${prefix}lib"/.keep || die
 				if rmdir "${prefix}lib" 2>/dev/null ; then
 					ln -s ${def_libdir} "${prefix}lib" || die
 				else
@@ -113,7 +114,7 @@ multilib_layout() {
 				mkdir -p "${prefix}" || die
 				rm -f "${prefix}lib" || die
 				ln -s ${def_libdir} "${prefix}lib" || die
-				mkdir -p "${prefix}${def_libdir}" #423571
+				mkdir -p "${prefix}${def_libdir}" || die #423571
 			fi
 		else
 			# we need to make sure "lib" is a dir
@@ -135,7 +136,7 @@ multilib_layout() {
 				*-gentoo-freebsd*) ;; # We want it the other way on fbsd.
 				i?86*|x86_64*|powerpc*|sparc*|s390*)
 					if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
-						rm -f "${prefix}lib32"/.keep
+						rm -f "${prefix}lib32"/.keep || die
 						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
 							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
 							die "non-empty dir found where there should be none: ${prefix}lib32"
@@ -154,7 +155,7 @@ multilib_layout() {
 		for libdir in ${libdirs}; do
 			if [[ ! -e "${EROOT}${libdir}" ]]; then
 				ln -s usr/"${libdir}" "${EROOT}${libdir}" ||
-					die " Unable to make ${EROOT}${libdir} symlink"
+					die "Unable to make ${EROOT}${libdir} symlink"
 			fi
 		done
 	fi
@@ -164,7 +165,7 @@ pkg_preinst() {
 	# This is written in src_install (so it's in CONTENTS), but punt all
 	# pending updates to avoid user having to do etc-update (and make the
 	# pkg_postinst logic simpler).
-	rm -f "${EROOT}"/etc/._cfg????_gentoo-release
+	rm -f "${EROOT}"/etc/._cfg????_gentoo-release || die
 
 	# We need to install directories and maybe some dev nodes when building
 	# stages, but they cannot be in CONTENTS.
@@ -177,7 +178,7 @@ pkg_preinst() {
 			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
 		fi
 	fi
-	rm -f "${ED}"/usr/share/${PN}/Makefile
+	rm -f "${ED}"/usr/share/${PN}/Makefile || die
 }
 
 src_prepare() {
@@ -223,11 +224,16 @@ src_install() {
 		DESTDIR="${ED}" \
 		install
 	dodoc ChangeLog
-	rm "${ED}"/etc/sysctl.d/README
+	rm "${ED}"/etc/sysctl.d/README || die
 
 	# need the makefile in pkg_preinst
 	insinto /usr/share/${PN}
 	doins Makefile
+
+	# This is needed for https://bugs.gentoo.org/732142
+	dodir /usr/lib
+	mv "${ED}"/etc/os-release "${ED}"/usr/lib || die
+	dosym ../usr/lib/os-release /etc/os-release
 }
 
 pkg_postinst() {
@@ -239,23 +245,25 @@ pkg_postinst() {
 	# (3) accidentally packaging up personal files with quickpkg
 	# If they don't exist then we install them
 	for x in master.passwd passwd shadow group fstab ; do
-		[ -e "${EROOT}etc/${x}" ] && continue
-		[ -e "${EROOT}usr/share/baselayout/${x}" ] || continue
-		cp -p "${EROOT}usr/share/baselayout/${x}" "${EROOT}"etc
+		[ -e "${EROOT}/etc/${x}" ] && continue
+		[ -e "${EROOT}/usr/share/baselayout/${x}" ] || continue
+		cp -p "${EROOT}/usr/share/baselayout/${x}" "${EROOT}"/etc || die
 	done
 
 	# Force shadow permissions to not be world-readable #260993
 	for x in shadow ; do
-		[ -e "${EROOT}etc/${x}" ] && chmod o-rwx "${EROOT}etc/${x}"
+		if [ -e "${EROOT}/etc/${x}" ] ; then
+			chmod o-rwx "${EROOT}/etc/${x}" || die
+		fi
 	done
 
 	# Take care of the etc-update for the user
-	if [ -e "${EROOT}"etc/._cfg0000_gentoo-release ] ; then
-		mv "${EROOT}"etc/._cfg0000_gentoo-release "${EROOT}"etc/gentoo-release
+	if [ -e "${EROOT}"/etc/._cfg0000_gentoo-release ] ; then
+		mv "${EROOT}"/etc/._cfg0000_gentoo-release "${EROOT}"/etc/gentoo-release || die
 	fi
 
 	# whine about users that lack passwords #193541
-	if [[ -e "${EROOT}"etc/shadow ]] ; then
+	if [[ -e "${EROOT}"/etc/shadow ]] ; then
 		local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
 		if [[ -n ${bad_users} ]] ; then
 			echo
@@ -265,8 +273,8 @@ pkg_postinst() {
 	fi
 
 	# whine about users with invalid shells #215698
-	if [[ -e "${EROOT}"etc/passwd ]] ; then
-		local bad_shells=$(awk -F: 'system("test -e " $7) { print $1 " - " $7}' "${EROOT}"etc/passwd | sort)
+	if [[ -e "${EROOT}"/etc/passwd ]] ; then
+		local bad_shells=$(awk -F: 'system("test -e ${ROOT}" $7) { print $1 " - " $7}' "${EROOT}"/etc/passwd | sort)
 		if [[ -n ${bad_shells} ]] ; then
 			echo
 			ewarn "The following users have non-existent shells!"
@@ -276,35 +284,35 @@ pkg_postinst() {
 
 	# https://bugs.gentoo.org/361349
 	if use kernel_linux; then
-		mkdir -p "${EROOT}"run
+		mkdir -p "${EROOT}"/run || die
 
 		local found fstype mountpoint
 		while read -r _ mountpoint fstype _; do
 		[[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
-		done < "${ROOT}"proc/mounts
+		done < "${ROOT}"/proc/mounts
 		[[ -z ${found} ]] &&
 			ewarn "You should reboot now to get /run mounted with tmpfs!"
 	fi
 
 	for x in ${REPLACING_VERSIONS}; do
-		if ! version_is_at_least 2.4 ${x}; then
-			ewarn "After updating ${EROOT}etc/profile, please run"
+		if ver_test 2.4 -lt ${x}; then
+			ewarn "After updating ${EROOT}/etc/profile, please run"
 			ewarn "env-update && . /etc/profile"
 		fi
 
-		if ! version_is_at_least 2.6 ${x}; then
+		if ver_test 2.6 -lt ${x}; then
 			ewarn "Please run env-update then log out and back in to"
 			ewarn "update your path."
 		fi
 		# clean up after 2.5 typos
 		# https://bugs.gentoo.org/show_bug.cgi?id=656380
 		if [[ ${x} == 2.5 ]]; then
-			rm -fr "${EROOT}{,usr"
+			rm -fr "${EROOT}/{,usr" || die
 		fi
 	done
 
-	if [[ -e "${EROOT}"etc/env.d/00basic ]]; then
-		ewarn "${EROOT}etc/env.d/00basic is now ${EROOT}etc/env.d/50baselayout"
+	if [[ -e "${EROOT}"/etc/env.d/00basic ]]; then
+		ewarn "${EROOT}/etc/env.d/00basic is now ${EROOT}/etc/env.d/50baselayout"
 		ewarn "Please migrate your changes."
 	fi
 }

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
index ee4f298e840..a37d17f3b8d 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-9999.ebuild
@@ -1,9 +1,9 @@
-# Copyright 1999-2020 Gentoo Authors
+# Copyright 1999-2021 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI=6
+EAPI=7
 
-inherit multilib versionator prefix
+inherit multilib prefix
 
 DESCRIPTION="Filesystem baselayout and init scripts"
 HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
@@ -29,10 +29,9 @@ multilib_layout() {
 	local prefix prefix_lst
 	def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
 	libdirs=$(get_all_libdirs)
-	: ${libdirs:=lib}	# it isn't that we don't trust multilib.eclass...
 
 	if [[ -z "${SYMLINK_LIB}" || ${SYMLINK_LIB} = no ]] ; then
-		prefix_lst=( "${EROOT}"{,usr/,usr/local/} )
+		prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
 		for prefix in "${prefix_lst[@]}"; do
 			for libdir in ${libdirs}; do
 				dir="${prefix}${libdir}"
@@ -41,10 +40,12 @@ multilib_layout() {
 						die "${dir} exists but is not a directory"
 					continue
 				fi
-				if ! use split-usr && [[ ${prefix} = ${EROOT} ]]; then
+				if ! use split-usr && [[ ${prefix} = ${EROOT}/ ]]; then
+					libdir="${libdir%%/*}"
+					dir="${prefix}${libdir}"
 					einfo "symlinking ${dir} to usr/${libdir}"
 					ln -s usr/${libdir} ${dir} ||
-						die " Unable to make ${dir} symlink"
+						die "Unable to make ${dir} symlink"
 				else
 					einfo "creating directory ${dir}"
 					mkdir -p "${dir}" ||
@@ -88,9 +89,9 @@ multilib_layout() {
 	# setup symlinks and dirs where we expect them to be; do not migrate
 	# data ... just fall over in that case.
 	if use split-usr ; then
-		prefix_lst=( "${EROOT}"{,usr/,usr/local/} )
+		prefix_lst=( "${EROOT}"/{,usr/,usr/local/} )
 	else
-		prefix_lst=( "${EROOT}"{usr/,usr/local/} )
+		prefix_lst=( "${EROOT}"/{usr/,usr/local/} )
 	fi
 	for prefix in "${prefix_lst[@]}"; do
 		if [ "${SYMLINK_LIB}" = yes ] ; then
@@ -101,7 +102,7 @@ multilib_layout() {
 			elif [ -d "${prefix}lib" ] ; then
 				# "lib" is a dir, so need to convert to a symlink
 				ewarn "Converting ${prefix}lib from a dir to a symlink"
-				rm -f "${prefix}lib"/.keep
+				rm -f "${prefix}lib"/.keep || die
 				if rmdir "${prefix}lib" 2>/dev/null ; then
 					ln -s ${def_libdir} "${prefix}lib" || die
 				else
@@ -113,7 +114,7 @@ multilib_layout() {
 				mkdir -p "${prefix}" || die
 				rm -f "${prefix}lib" || die
 				ln -s ${def_libdir} "${prefix}lib" || die
-				mkdir -p "${prefix}${def_libdir}" #423571
+				mkdir -p "${prefix}${def_libdir}" || die #423571
 			fi
 		else
 			# we need to make sure "lib" is a dir
@@ -135,7 +136,7 @@ multilib_layout() {
 				*-gentoo-freebsd*) ;; # We want it the other way on fbsd.
 				i?86*|x86_64*|powerpc*|sparc*|s390*)
 					if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
-						rm -f "${prefix}lib32"/.keep
+						rm -f "${prefix}lib32"/.keep || die
 						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
 							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
 							die "non-empty dir found where there should be none: ${prefix}lib32"
@@ -154,7 +155,7 @@ multilib_layout() {
 		for libdir in ${libdirs}; do
 			if [[ ! -e "${EROOT}${libdir}" ]]; then
 				ln -s usr/"${libdir}" "${EROOT}${libdir}" ||
-					die " Unable to make ${EROOT}${libdir} symlink"
+					die "Unable to make ${EROOT}${libdir} symlink"
 			fi
 		done
 	fi
@@ -164,7 +165,7 @@ pkg_preinst() {
 	# This is written in src_install (so it's in CONTENTS), but punt all
 	# pending updates to avoid user having to do etc-update (and make the
 	# pkg_postinst logic simpler).
-	rm -f "${EROOT}"/etc/._cfg????_gentoo-release
+	rm -f "${EROOT}"/etc/._cfg????_gentoo-release || die
 
 	# We need to install directories and maybe some dev nodes when building
 	# stages, but they cannot be in CONTENTS.
@@ -177,7 +178,7 @@ pkg_preinst() {
 			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
 		fi
 	fi
-	rm -f "${ED}"/usr/share/${PN}/Makefile
+	rm -f "${ED}"/usr/share/${PN}/Makefile || die
 }
 
 src_prepare() {
@@ -223,11 +224,16 @@ src_install() {
 		DESTDIR="${ED}" \
 		install
 	dodoc ChangeLog
-	rm "${ED}"/etc/sysctl.d/README
+	rm "${ED}"/etc/sysctl.d/README || die
 
 	# need the makefile in pkg_preinst
 	insinto /usr/share/${PN}
 	doins Makefile
+
+	# This is needed for https://bugs.gentoo.org/732142
+	dodir /usr/lib
+	mv "${ED}"/etc/os-release "${ED}"/usr/lib || die
+	dosym ../usr/lib/os-release /etc/os-release
 }
 
 pkg_postinst() {
@@ -239,23 +245,25 @@ pkg_postinst() {
 	# (3) accidentally packaging up personal files with quickpkg
 	# If they don't exist then we install them
 	for x in master.passwd passwd shadow group fstab ; do
-		[ -e "${EROOT}etc/${x}" ] && continue
-		[ -e "${EROOT}usr/share/baselayout/${x}" ] || continue
-		cp -p "${EROOT}usr/share/baselayout/${x}" "${EROOT}"etc
+		[ -e "${EROOT}/etc/${x}" ] && continue
+		[ -e "${EROOT}/usr/share/baselayout/${x}" ] || continue
+		cp -p "${EROOT}/usr/share/baselayout/${x}" "${EROOT}"/etc || die
 	done
 
 	# Force shadow permissions to not be world-readable #260993
 	for x in shadow ; do
-		[ -e "${EROOT}etc/${x}" ] && chmod o-rwx "${EROOT}etc/${x}"
+		if [ -e "${EROOT}/etc/${x}" ] ; then
+			chmod o-rwx "${EROOT}/etc/${x}" || die
+		fi
 	done
 
 	# Take care of the etc-update for the user
-	if [ -e "${EROOT}"etc/._cfg0000_gentoo-release ] ; then
-		mv "${EROOT}"etc/._cfg0000_gentoo-release "${EROOT}"etc/gentoo-release
+	if [ -e "${EROOT}"/etc/._cfg0000_gentoo-release ] ; then
+		mv "${EROOT}"/etc/._cfg0000_gentoo-release "${EROOT}"/etc/gentoo-release || die
 	fi
 
 	# whine about users that lack passwords #193541
-	if [[ -e "${EROOT}"etc/shadow ]] ; then
+	if [[ -e "${EROOT}"/etc/shadow ]] ; then
 		local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
 		if [[ -n ${bad_users} ]] ; then
 			echo
@@ -265,8 +273,8 @@ pkg_postinst() {
 	fi
 
 	# whine about users with invalid shells #215698
-	if [[ -e "${EROOT}"etc/passwd ]] ; then
-		local bad_shells=$(awk -F: 'system("test -e " $7) { print $1 " - " $7}' "${EROOT}"etc/passwd | sort)
+	if [[ -e "${EROOT}"/etc/passwd ]] ; then
+		local bad_shells=$(awk -F: 'system("test -e ${ROOT}" $7) { print $1 " - " $7}' "${EROOT}"/etc/passwd | sort)
 		if [[ -n ${bad_shells} ]] ; then
 			echo
 			ewarn "The following users have non-existent shells!"
@@ -276,35 +284,35 @@ pkg_postinst() {
 
 	# https://bugs.gentoo.org/361349
 	if use kernel_linux; then
-		mkdir -p "${EROOT}"run
+		mkdir -p "${EROOT}"/run || die
 
 		local found fstype mountpoint
 		while read -r _ mountpoint fstype _; do
 		[[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
-		done < "${ROOT}"proc/mounts
+		done < "${ROOT}"/proc/mounts
 		[[ -z ${found} ]] &&
 			ewarn "You should reboot now to get /run mounted with tmpfs!"
 	fi
 
 	for x in ${REPLACING_VERSIONS}; do
-		if ! version_is_at_least 2.4 ${x}; then
-			ewarn "After updating ${EROOT}etc/profile, please run"
+		if ver_test 2.4 -lt ${x}; then
+			ewarn "After updating ${EROOT}/etc/profile, please run"
 			ewarn "env-update && . /etc/profile"
 		fi
 
-		if ! version_is_at_least 2.6 ${x}; then
+		if ver_test 2.6 -lt ${x}; then
 			ewarn "Please run env-update then log out and back in to"
 			ewarn "update your path."
 		fi
 		# clean up after 2.5 typos
 		# https://bugs.gentoo.org/show_bug.cgi?id=656380
 		if [[ ${x} == 2.5 ]]; then
-			rm -fr "${EROOT}{,usr"
+			rm -fr "${EROOT}/{,usr" || die
 		fi
 	done
 
-	if [[ -e "${EROOT}"etc/env.d/00basic ]]; then
-		ewarn "${EROOT}etc/env.d/00basic is now ${EROOT}etc/env.d/50baselayout"
+	if [[ -e "${EROOT}"/etc/env.d/00basic ]]; then
+		ewarn "${EROOT}/etc/env.d/00basic is now ${EROOT}/etc/env.d/50baselayout"
 		ewarn "Please migrate your changes."
 	fi
 }


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2020-11-14 17:07 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2020-11-14 17:07 UTC (permalink / raw
  To: gentoo-commits

commit:     892dfe550af8c3d7c033b68408275582edf6504e
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Sat Nov 14 17:01:45 2020 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Sat Nov 14 17:07:24 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=892dfe55

sys-apps/baselayout: 2.7-r1 bump

Closes: https://bugs.gentoo.org/732142
Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-apps/baselayout/baselayout-2.7-r1.ebuild | 317 +++++++++++++++++++++++++++
 1 file changed, 317 insertions(+)

diff --git a/sys-apps/baselayout/baselayout-2.7-r1.ebuild b/sys-apps/baselayout/baselayout-2.7-r1.ebuild
new file mode 100644
index 00000000000..3d5fac97ac6
--- /dev/null
+++ b/sys-apps/baselayout/baselayout-2.7-r1.ebuild
@@ -0,0 +1,317 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit multilib versionator prefix
+
+DESCRIPTION="Filesystem baselayout and init scripts"
+HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
+if [[ ${PV} = 9999 ]]; then
+	EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/${PN}.git"
+	inherit git-r3
+else
+	SRC_URI="https://gitweb.gentoo.org/proj/${PN}.git/snapshot/${P}.tar.bz2"
+	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="build kernel_FreeBSD kernel_linux +split-usr"
+
+pkg_setup() {
+	multilib_layout
+}
+
+# Create our multilib dirs - the Makefile has no knowledge of this
+multilib_layout() {
+	local dir def_libdir libdir libdirs
+	local prefix prefix_lst
+	def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
+	libdirs=$(get_all_libdirs)
+	: ${libdirs:=lib}	# it isn't that we don't trust multilib.eclass...
+
+	if [[ -z "${SYMLINK_LIB}" || ${SYMLINK_LIB} = no ]] ; then
+		prefix_lst=( "${EROOT}"{,usr/,usr/local/} )
+		for prefix in "${prefix_lst[@]}"; do
+			for libdir in ${libdirs}; do
+				dir="${prefix}${libdir}"
+				if [[ -e "${dir}" ]]; then
+					[[ ! -d "${dir}" ]] &&
+						die "${dir} exists but is not a directory"
+					continue
+				fi
+				if ! use split-usr && [[ ${prefix} = ${EROOT} ]]; then
+					einfo "symlinking ${dir} to usr/${libdir}"
+					ln -s usr/${libdir} ${dir} ||
+						die " Unable to make ${dir} symlink"
+				else
+					einfo "creating directory ${dir}"
+					mkdir -p "${dir}" ||
+						die "Unable to create ${dir} directory"
+				fi
+			done
+		done
+		return 0
+	fi
+
+	[ -z "${def_libdir}" ] &&
+		die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
+
+	# figure out which paths should be symlinks and which should be directories
+	local dirs syms exp d
+	for libdir in ${libdirs} ; do
+		if use split-usr ; then
+			exp=( {,usr/,usr/local/}${libdir} )
+		else
+			exp=( {usr/,usr/local/}${libdir} )
+		fi
+		for d in "${exp[@]}" ; do
+			# most things should be dirs
+			if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
+				[ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
+			else
+				[ -h "${d}" ] && syms+=" ${d}"
+			fi
+		done
+	done
+	if [ -n "${syms}${dirs}" ] ; then
+		ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
+		ewarn "have these paths configured as follows:"
+		[ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
+		[ -n "${syms}" ] && ewarn "directories:${syms}"
+		ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
+		ewarn "If things fail, you will need to manually create/move the directories."
+		echo
+	fi
+
+	# setup symlinks and dirs where we expect them to be; do not migrate
+	# data ... just fall over in that case.
+	if use split-usr ; then
+		prefix_lst=( "${EROOT}"{,usr/,usr/local/} )
+	else
+		prefix_lst=( "${EROOT}"{usr/,usr/local/} )
+	fi
+	for prefix in "${prefix_lst[@]}"; do
+		if [ "${SYMLINK_LIB}" = yes ] ; then
+			# we need to make sure "lib" points to the native libdir
+			if [ -h "${prefix}lib" ] ; then
+				# it's already a symlink!  assume it's pointing to right place ...
+				continue
+			elif [ -d "${prefix}lib" ] ; then
+				# "lib" is a dir, so need to convert to a symlink
+				ewarn "Converting ${prefix}lib from a dir to a symlink"
+				rm -f "${prefix}lib"/.keep || die
+				if rmdir "${prefix}lib" 2>/dev/null ; then
+					ln -s ${def_libdir} "${prefix}lib" || die
+				else
+					die "non-empty dir found where we needed a symlink: ${prefix}lib"
+				fi
+			else
+				# nothing exists, so just set it up sanely
+				ewarn "Initializing ${prefix}lib as a symlink"
+				mkdir -p "${prefix}" || die
+				rm -f "${prefix}lib" || die
+				ln -s ${def_libdir} "${prefix}lib" || die
+				mkdir -p "${prefix}${def_libdir}" || die #423571
+			fi
+		else
+			# we need to make sure "lib" is a dir
+			if [ -h "${prefix}lib" ] ; then
+				# "lib" is a symlink, so need to convert to a dir
+				ewarn "Converting ${prefix}lib from a symlink to a dir"
+				rm -f "${prefix}lib" || die
+				if [ -d "${prefix}lib32" ] ; then
+					ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
+					mv "${prefix}lib32" "${prefix}lib" || die
+				else
+					mkdir -p "${prefix}lib" || die
+				fi
+			elif [ -d "${prefix}lib" ] && ! has lib32 ${libdirs} ; then
+				# make sure the old "lib" ABI location does not exist; we
+				# only symlinked the lib dir on systems where we moved it
+				# to "lib32" ...
+				case ${CHOST} in
+				*-gentoo-freebsd*) ;; # We want it the other way on fbsd.
+				i?86*|x86_64*|powerpc*|sparc*|s390*)
+					if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
+						rm -f "${prefix}lib32"/.keep || die
+						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
+							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
+							die "non-empty dir found where there should be none: ${prefix}lib32"
+						fi
+					fi
+					;;
+				esac
+			else
+				# nothing exists, so just set it up sanely
+				ewarn "Initializing ${prefix}lib as a dir"
+				mkdir -p "${prefix}lib" || die
+			fi
+		fi
+	done
+	if ! use split-usr ; then
+		for libdir in ${libdirs}; do
+			if [[ ! -e "${EROOT}${libdir}" ]]; then
+				ln -s usr/"${libdir}" "${EROOT}${libdir}" ||
+					die " Unable to make ${EROOT}${libdir} symlink"
+			fi
+		done
+	fi
+}
+
+pkg_preinst() {
+	# This is written in src_install (so it's in CONTENTS), but punt all
+	# pending updates to avoid user having to do etc-update (and make the
+	# pkg_postinst logic simpler).
+	rm -f "${EROOT}"/etc/._cfg????_gentoo-release || die
+
+	# We need to install directories and maybe some dev nodes when building
+	# stages, but they cannot be in CONTENTS.
+	# Also, we cannot reference $S as binpkg will break so we do this.
+	multilib_layout
+	if use build ; then
+		if use split-usr ; then
+			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
+		else
+			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
+		fi
+	fi
+	rm -f "${ED}"/usr/share/${PN}/Makefile || die
+}
+
+src_prepare() {
+	default
+	if use prefix; then
+		hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
+		hprefixify etc/{env.d/50baselayout,shells} share.Linux/passwd
+		echo PATH=/usr/bin:/bin >> etc/env.d/99host
+		echo ROOTPATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
+	fi
+
+	# don't want symlinked directories in PATH on systems with usr-merge
+	if ! use split-usr; then
+		sed \
+			-e 's|/usr/local/sbin:||g' \
+			-e 's|:/usr/sbin:|:|g' \
+			-e 's|:/sbin:|:|g' \
+			-e 's|:/bin:|:|g' \
+			-i etc/env.d/50baselayout || die
+	fi
+
+	# handle multilib paths.  do it here because we want this behavior
+	# regardless of the C library that you're using.  we do explicitly
+	# list paths which the native ldconfig searches, but this isn't
+	# problematic as it doesn't change the resulting ld.so.cache or
+	# take longer to generate.  similarly, listing both the native
+	# path and the symlinked path doesn't change the resulting cache.
+	local libdir ldpaths
+	for libdir in $(get_all_libdirs) ; do
+		use split-usr && ldpaths+=":${EPREFIX}/${libdir}"
+		ldpaths+=":${EPREFIX}/usr/${libdir}"
+		ldpaths+=":${EPREFIX}/usr/local/${libdir}"
+	done
+	echo "LDPATH='${ldpaths#:}'" >> etc/env.d/50baselayout
+
+	# rc-scripts version for testing of features that *should* be present
+	echo "Gentoo Base System release ${PV}" > etc/gentoo-release
+}
+
+src_install() {
+	emake \
+		OS=$(usex kernel_FreeBSD BSD Linux) \
+		DESTDIR="${ED}" \
+		install
+	dodoc ChangeLog
+	rm "${ED}"/etc/sysctl.d/README || die
+
+	# need the makefile in pkg_preinst
+	insinto /usr/share/${PN}
+	doins Makefile
+
+	# This is needed for https://bugs.gentoo.org/732142
+	dodir /usr/lib
+	mv "${ED}"/etc/os-release "${ED}"/usr/lib || die
+	dosym ../usr/lib/os-release /etc/os-release
+}
+
+pkg_postinst() {
+	local x
+
+	# We installed some files to /usr/share/baselayout instead of /etc to stop
+	# (1) overwriting the user's settings
+	# (2) screwing things up when attempting to merge files
+	# (3) accidentally packaging up personal files with quickpkg
+	# If they don't exist then we install them
+	for x in master.passwd passwd shadow group fstab ; do
+		[ -e "${EROOT}etc/${x}" ] && continue
+		[ -e "${EROOT}usr/share/baselayout/${x}" ] || continue
+		cp -p "${EROOT}usr/share/baselayout/${x}" "${EROOT}"etc || die
+	done
+
+	# Force shadow permissions to not be world-readable #260993
+	for x in shadow ; do
+		if [ -e "${EROOT}etc/${x}" ] ; then
+			chmod o-rwx "${EROOT}etc/${x}" || die
+		fi
+	done
+
+	# Take care of the etc-update for the user
+	if [ -e "${EROOT}"etc/._cfg0000_gentoo-release ] ; then
+		mv "${EROOT}"etc/._cfg0000_gentoo-release "${EROOT}"etc/gentoo-release || die
+	fi
+
+	# whine about users that lack passwords #193541
+	if [[ -e "${EROOT}"etc/shadow ]] ; then
+		local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
+		if [[ -n ${bad_users} ]] ; then
+			echo
+			ewarn "The following users lack passwords!"
+			ewarn ${bad_users}
+		fi
+	fi
+
+	# whine about users with invalid shells #215698
+	if [[ -e "${EROOT}"etc/passwd ]] ; then
+		local bad_shells=$(awk -F: 'system("test -e " $7) { print $1 " - " $7}' "${EROOT}"etc/passwd | sort)
+		if [[ -n ${bad_shells} ]] ; then
+			echo
+			ewarn "The following users have non-existent shells!"
+			ewarn "${bad_shells}"
+		fi
+	fi
+
+	# https://bugs.gentoo.org/361349
+	if use kernel_linux; then
+		mkdir -p "${EROOT}"run || die
+
+		local found fstype mountpoint
+		while read -r _ mountpoint fstype _; do
+		[[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
+		done < "${ROOT}"proc/mounts
+		[[ -z ${found} ]] &&
+			ewarn "You should reboot now to get /run mounted with tmpfs!"
+	fi
+
+	for x in ${REPLACING_VERSIONS}; do
+		if ! version_is_at_least 2.4 ${x}; then
+			ewarn "After updating ${EROOT}etc/profile, please run"
+			ewarn "env-update && . /etc/profile"
+		fi
+
+		if ! version_is_at_least 2.6 ${x}; then
+			ewarn "Please run env-update then log out and back in to"
+			ewarn "update your path."
+		fi
+		# clean up after 2.5 typos
+		# https://bugs.gentoo.org/show_bug.cgi?id=656380
+		if [[ ${x} == 2.5 ]]; then
+			rm -fr "${EROOT}{,usr" || die
+		fi
+	done
+
+	if [[ -e "${EROOT}"etc/env.d/00basic ]]; then
+		ewarn "${EROOT}etc/env.d/00basic is now ${EROOT}etc/env.d/50baselayout"
+		ewarn "Please migrate your changes."
+	fi
+}


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2020-08-30 21:59 Sam James
  0 siblings, 0 replies; 124+ messages in thread
From: Sam James @ 2020-08-30 21:59 UTC (permalink / raw
  To: gentoo-commits

commit:     9cfef7e1d0ee1255e3e5fa175993183e65ecbf6a
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sun Aug 30 21:58:54 2020 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Aug 30 21:58:54 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9cfef7e1

sys-apps/baselayout: Stabilize 2.7 ALLARCHES, #737664

Signed-off-by: Sam James <sam <AT> gentoo.org>

 sys-apps/baselayout/baselayout-2.7.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys-apps/baselayout/baselayout-2.7.ebuild b/sys-apps/baselayout/baselayout-2.7.ebuild
index 25ccf0871bf..1a631d10b93 100644
--- a/sys-apps/baselayout/baselayout-2.7.ebuild
+++ b/sys-apps/baselayout/baselayout-2.7.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 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+	KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86"
 fi
 
 LICENSE="GPL-2"


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2020-08-30 21:51 Sam James
  0 siblings, 0 replies; 124+ messages in thread
From: Sam James @ 2020-08-30 21:51 UTC (permalink / raw
  To: gentoo-commits

commit:     06ac2d1b2f51097301bbed348abc3805fd8dbe76
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Sun Aug 30 21:51:14 2020 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Sun Aug 30 21:51:46 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=06ac2d1b

sys-apps/baselayout: mark ALLARCHES

Acked-by: William Hubbs <williamh <AT> gentoo.org>
Bug: https://bugs.gentoo.org/737664
Package-Manager: Portage-3.0.4, Repoman-3.0.1
Signed-off-by: Sam James <sam <AT> gentoo.org>

 sys-apps/baselayout/metadata.xml | 1 +
 1 file changed, 1 insertion(+)

diff --git a/sys-apps/baselayout/metadata.xml b/sys-apps/baselayout/metadata.xml
index 53e04953d60..0b72092a22d 100644
--- a/sys-apps/baselayout/metadata.xml
+++ b/sys-apps/baselayout/metadata.xml
@@ -9,4 +9,5 @@
 	<email>base-system@gentoo.org</email>
 	<name>Gentoo Base System</name>
 </maintainer>
+	<stabilize-allarches/>
 </pkgmetadata>


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2020-08-20 15:28 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2020-08-20 15:28 UTC (permalink / raw
  To: gentoo-commits

commit:     28ec90ba6326a46a7b9bd10c6ce9afec37457157
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Thu Aug 20 15:15:43 2020 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Thu Aug 20 15:27:55 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=28ec90ba

sys-apps/baselayout: add missing dies

Package-Manager: Portage-3.0.3, Repoman-3.0.0
Signed-off-by: Sam James <sam <AT> gentoo.org>
Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-apps/baselayout/baselayout-2.7.ebuild | 24 +++++++++++++-----------
 1 file changed, 13 insertions(+), 11 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-2.7.ebuild b/sys-apps/baselayout/baselayout-2.7.ebuild
index ee4f298e840..25ccf0871bf 100644
--- a/sys-apps/baselayout/baselayout-2.7.ebuild
+++ b/sys-apps/baselayout/baselayout-2.7.ebuild
@@ -101,7 +101,7 @@ multilib_layout() {
 			elif [ -d "${prefix}lib" ] ; then
 				# "lib" is a dir, so need to convert to a symlink
 				ewarn "Converting ${prefix}lib from a dir to a symlink"
-				rm -f "${prefix}lib"/.keep
+				rm -f "${prefix}lib"/.keep || die
 				if rmdir "${prefix}lib" 2>/dev/null ; then
 					ln -s ${def_libdir} "${prefix}lib" || die
 				else
@@ -113,7 +113,7 @@ multilib_layout() {
 				mkdir -p "${prefix}" || die
 				rm -f "${prefix}lib" || die
 				ln -s ${def_libdir} "${prefix}lib" || die
-				mkdir -p "${prefix}${def_libdir}" #423571
+				mkdir -p "${prefix}${def_libdir}" || die #423571
 			fi
 		else
 			# we need to make sure "lib" is a dir
@@ -135,7 +135,7 @@ multilib_layout() {
 				*-gentoo-freebsd*) ;; # We want it the other way on fbsd.
 				i?86*|x86_64*|powerpc*|sparc*|s390*)
 					if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
-						rm -f "${prefix}lib32"/.keep
+						rm -f "${prefix}lib32"/.keep || die
 						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
 							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
 							die "non-empty dir found where there should be none: ${prefix}lib32"
@@ -164,7 +164,7 @@ pkg_preinst() {
 	# This is written in src_install (so it's in CONTENTS), but punt all
 	# pending updates to avoid user having to do etc-update (and make the
 	# pkg_postinst logic simpler).
-	rm -f "${EROOT}"/etc/._cfg????_gentoo-release
+	rm -f "${EROOT}"/etc/._cfg????_gentoo-release || die
 
 	# We need to install directories and maybe some dev nodes when building
 	# stages, but they cannot be in CONTENTS.
@@ -177,7 +177,7 @@ pkg_preinst() {
 			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
 		fi
 	fi
-	rm -f "${ED}"/usr/share/${PN}/Makefile
+	rm -f "${ED}"/usr/share/${PN}/Makefile || die
 }
 
 src_prepare() {
@@ -223,7 +223,7 @@ src_install() {
 		DESTDIR="${ED}" \
 		install
 	dodoc ChangeLog
-	rm "${ED}"/etc/sysctl.d/README
+	rm "${ED}"/etc/sysctl.d/README || die
 
 	# need the makefile in pkg_preinst
 	insinto /usr/share/${PN}
@@ -241,17 +241,19 @@ pkg_postinst() {
 	for x in master.passwd passwd shadow group fstab ; do
 		[ -e "${EROOT}etc/${x}" ] && continue
 		[ -e "${EROOT}usr/share/baselayout/${x}" ] || continue
-		cp -p "${EROOT}usr/share/baselayout/${x}" "${EROOT}"etc
+		cp -p "${EROOT}usr/share/baselayout/${x}" "${EROOT}"etc || die
 	done
 
 	# Force shadow permissions to not be world-readable #260993
 	for x in shadow ; do
-		[ -e "${EROOT}etc/${x}" ] && chmod o-rwx "${EROOT}etc/${x}"
+		if [ -e "${EROOT}etc/${x}" ] ; then
+			chmod o-rwx "${EROOT}etc/${x}" || die
+		fi
 	done
 
 	# Take care of the etc-update for the user
 	if [ -e "${EROOT}"etc/._cfg0000_gentoo-release ] ; then
-		mv "${EROOT}"etc/._cfg0000_gentoo-release "${EROOT}"etc/gentoo-release
+		mv "${EROOT}"etc/._cfg0000_gentoo-release "${EROOT}"etc/gentoo-release || die
 	fi
 
 	# whine about users that lack passwords #193541
@@ -276,7 +278,7 @@ pkg_postinst() {
 
 	# https://bugs.gentoo.org/361349
 	if use kernel_linux; then
-		mkdir -p "${EROOT}"run
+		mkdir -p "${EROOT}"run || die
 
 		local found fstype mountpoint
 		while read -r _ mountpoint fstype _; do
@@ -299,7 +301,7 @@ pkg_postinst() {
 		# clean up after 2.5 typos
 		# https://bugs.gentoo.org/show_bug.cgi?id=656380
 		if [[ ${x} == 2.5 ]]; then
-			rm -fr "${EROOT}{,usr"
+			rm -fr "${EROOT}{,usr" || die
 		fi
 	done
 


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2020-08-20 14:51 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2020-08-20 14:51 UTC (permalink / raw
  To: gentoo-commits

commit:     410804ae543ad927dc2b75f125cde04baa907a77
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Thu Aug 20 14:50:47 2020 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Thu Aug 20 14:50:47 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=410804ae

sys-apps/baselayout: sync live

Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-apps/baselayout/baselayout-9999.ebuild | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
index a94078654b8..ee4f298e840 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-9999.ebuild
@@ -33,7 +33,7 @@ multilib_layout() {
 
 	if [[ -z "${SYMLINK_LIB}" || ${SYMLINK_LIB} = no ]] ; then
 		prefix_lst=( "${EROOT}"{,usr/,usr/local/} )
-		for prefix in ${prefix_lst[@]}; do
+		for prefix in "${prefix_lst[@]}"; do
 			for libdir in ${libdirs}; do
 				dir="${prefix}${libdir}"
 				if [[ -e "${dir}" ]]; then
@@ -153,7 +153,8 @@ multilib_layout() {
 	if ! use split-usr ; then
 		for libdir in ${libdirs}; do
 			if [[ ! -e "${EROOT}${libdir}" ]]; then
-				ln -s usr/"${libdir}" "${EROOT}${libdir}"
+				ln -s usr/"${libdir}" "${EROOT}${libdir}" ||
+					die " Unable to make ${EROOT}${libdir} symlink"
 			fi
 		done
 	fi
@@ -222,6 +223,7 @@ src_install() {
 		DESTDIR="${ED}" \
 		install
 	dodoc ChangeLog
+	rm "${ED}"/etc/sysctl.d/README
 
 	# need the makefile in pkg_preinst
 	insinto /usr/share/${PN}


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2020-08-20 14:47 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2020-08-20 14:47 UTC (permalink / raw
  To: gentoo-commits

commit:     aca04a15a282ceed47c01eceed3e115594fd14fb
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Sat Jun 20 23:37:33 2020 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Thu Aug 20 14:46:58 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=aca04a15

sys-apps/baselayout: fix quoting and add a missing die call

Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-apps/baselayout/baselayout-2.7.ebuild | 5 +++--
 1 file changed, 3 insertions(+), 2 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-2.7.ebuild b/sys-apps/baselayout/baselayout-2.7.ebuild
index 104cf105212..ee4f298e840 100644
--- a/sys-apps/baselayout/baselayout-2.7.ebuild
+++ b/sys-apps/baselayout/baselayout-2.7.ebuild
@@ -33,7 +33,7 @@ multilib_layout() {
 
 	if [[ -z "${SYMLINK_LIB}" || ${SYMLINK_LIB} = no ]] ; then
 		prefix_lst=( "${EROOT}"{,usr/,usr/local/} )
-		for prefix in ${prefix_lst[@]}; do
+		for prefix in "${prefix_lst[@]}"; do
 			for libdir in ${libdirs}; do
 				dir="${prefix}${libdir}"
 				if [[ -e "${dir}" ]]; then
@@ -153,7 +153,8 @@ multilib_layout() {
 	if ! use split-usr ; then
 		for libdir in ${libdirs}; do
 			if [[ ! -e "${EROOT}${libdir}" ]]; then
-				ln -s usr/"${libdir}" "${EROOT}${libdir}"
+				ln -s usr/"${libdir}" "${EROOT}${libdir}" ||
+					die " Unable to make ${EROOT}${libdir} symlink"
 			fi
 		done
 	fi


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2020-02-17  2:39 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2020-02-17  2:39 UTC (permalink / raw
  To: gentoo-commits

commit:     f748bd9537327ad329a56a794fa54a56df56309a
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Mon Feb 17 02:32:58 2020 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Mon Feb 17 02:38:59 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f748bd95

sys-apps/baselayout: remove README from /etc/sysctl.d for OpenRC collision

Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-apps/baselayout/baselayout-2.7.ebuild | 1 +
 1 file changed, 1 insertion(+)

diff --git a/sys-apps/baselayout/baselayout-2.7.ebuild b/sys-apps/baselayout/baselayout-2.7.ebuild
index a4b8ca535ac..ea29ca415bd 100644
--- a/sys-apps/baselayout/baselayout-2.7.ebuild
+++ b/sys-apps/baselayout/baselayout-2.7.ebuild
@@ -222,6 +222,7 @@ src_install() {
 		DESTDIR="${ED}" \
 		install
 	dodoc ChangeLog
+	rm "${ED}"/etc/sysctl.d/README
 
 	# need the makefile in pkg_preinst
 	insinto /usr/share/${PN}


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2020-02-10  4:31 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2020-02-10  4:31 UTC (permalink / raw
  To: gentoo-commits

commit:     63ef2e4f68dd4b6978641f4fbcd2d04af400d65c
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Mon Feb 10 04:31:31 2020 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Mon Feb 10 04:31:31 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=63ef2e4f

sys-apps/baselayout: 2.7 bump

Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-apps/baselayout/Manifest              |   1 +
 sys-apps/baselayout/baselayout-2.7.ebuild | 308 ++++++++++++++++++++++++++++++
 2 files changed, 309 insertions(+)

diff --git a/sys-apps/baselayout/Manifest b/sys-apps/baselayout/Manifest
index b9d9da5be83..293c93ad739 100644
--- a/sys-apps/baselayout/Manifest
+++ b/sys-apps/baselayout/Manifest
@@ -1,2 +1,3 @@
 DIST baselayout-2.4.1.tar.bz2 31307 BLAKE2B da26f7fbeefa5efecb6e5d9ded6c2bf3148cd1fcfc6ebb86535f5a9c086c4bb55f6a8420a3c0d0f7008251637f3e4653db875ec427745d039f753008d2f21be2 SHA512 e505ad81834aafb574ffee9bc1fce216c1c8c7fa11b0095580f87a37e4b9efb057ee78db7cd5affc64f05d5dd0592c671304414c119b37d86dfaa1e7b84ce7c1
 DIST baselayout-2.6.tar.bz2 31871 BLAKE2B 4a51d173dc5a2837f78cd1247b5eadd89e7d0b5f2dbc72e75f027b0c23a5db9a386c53e756e80240f36ad4d63e3fe421bf9510c18321d7a31fda140ad47b2860 SHA512 5cad5faf56871ae951120643e29db0c39fea6dc845b4755382bd469eca32639ec6cd0cd046d3c439a7cc607b18770036f9c256260d35beaffb094e23cb13740b
+DIST baselayout-2.7.tar.bz2 30317 BLAKE2B 7b7c284b7d0a9608a0d03dbde0d62d793829b61d5361f5062fdeb8880a2f792c142e20acf7fa92e713e2ebb0bd1609ca65bc8a4191f2bf2c5df4f474eaeef1ee SHA512 8b28d2dc20fd5887db5c0e6b67a4217c4d0730529023fc57fb1ee95a431e1f492fb21e3e66980bef766819e9f542dc7e4ad3ae25465390194bbf970c3653c88e

diff --git a/sys-apps/baselayout/baselayout-2.7.ebuild b/sys-apps/baselayout/baselayout-2.7.ebuild
new file mode 100644
index 00000000000..a4b8ca535ac
--- /dev/null
+++ b/sys-apps/baselayout/baselayout-2.7.ebuild
@@ -0,0 +1,308 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit multilib versionator prefix
+
+DESCRIPTION="Filesystem baselayout and init scripts"
+HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
+if [[ ${PV} = 9999 ]]; then
+	EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/${PN}.git"
+	inherit git-r3
+else
+	SRC_URI="https://gitweb.gentoo.org/proj/${PN}.git/snapshot/${P}.tar.bz2"
+	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="build kernel_FreeBSD kernel_linux +split-usr"
+
+pkg_setup() {
+	multilib_layout
+}
+
+# Create our multilib dirs - the Makefile has no knowledge of this
+multilib_layout() {
+	local dir def_libdir libdir libdirs
+	local prefix prefix_lst
+	def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
+	libdirs=$(get_all_libdirs)
+	: ${libdirs:=lib}	# it isn't that we don't trust multilib.eclass...
+
+	if [[ -z "${SYMLINK_LIB}" || ${SYMLINK_LIB} = no ]] ; then
+		prefix_lst=( "${EROOT}"{,usr/,usr/local/} )
+		for prefix in ${prefix_lst[@]}; do
+			for libdir in ${libdirs}; do
+				dir="${prefix}${libdir}"
+				if [[ -e "${dir}" ]]; then
+					[[ ! -d "${dir}" ]] &&
+						die "${dir} exists but is not a directory"
+					continue
+				fi
+				if ! use split-usr && [[ ${prefix} = ${EROOT} ]]; then
+					einfo "symlinking ${dir} to usr/${libdir}"
+					ln -s usr/${libdir} ${dir} ||
+						die " Unable to make ${dir} symlink"
+				else
+					einfo "creating directory ${dir}"
+					mkdir -p "${dir}" ||
+						die "Unable to create ${dir} directory"
+				fi
+			done
+		done
+		return 0
+	fi
+
+	[ -z "${def_libdir}" ] &&
+		die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
+
+	# figure out which paths should be symlinks and which should be directories
+	local dirs syms exp d
+	for libdir in ${libdirs} ; do
+		if use split-usr ; then
+			exp=( {,usr/,usr/local/}${libdir} )
+		else
+			exp=( {usr/,usr/local/}${libdir} )
+		fi
+		for d in "${exp[@]}" ; do
+			# most things should be dirs
+			if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
+				[ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
+			else
+				[ -h "${d}" ] && syms+=" ${d}"
+			fi
+		done
+	done
+	if [ -n "${syms}${dirs}" ] ; then
+		ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
+		ewarn "have these paths configured as follows:"
+		[ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
+		[ -n "${syms}" ] && ewarn "directories:${syms}"
+		ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
+		ewarn "If things fail, you will need to manually create/move the directories."
+		echo
+	fi
+
+	# setup symlinks and dirs where we expect them to be; do not migrate
+	# data ... just fall over in that case.
+	if use split-usr ; then
+		prefix_lst=( "${EROOT}"{,usr/,usr/local/} )
+	else
+		prefix_lst=( "${EROOT}"{usr/,usr/local/} )
+	fi
+	for prefix in "${prefix_lst[@]}"; do
+		if [ "${SYMLINK_LIB}" = yes ] ; then
+			# we need to make sure "lib" points to the native libdir
+			if [ -h "${prefix}lib" ] ; then
+				# it's already a symlink!  assume it's pointing to right place ...
+				continue
+			elif [ -d "${prefix}lib" ] ; then
+				# "lib" is a dir, so need to convert to a symlink
+				ewarn "Converting ${prefix}lib from a dir to a symlink"
+				rm -f "${prefix}lib"/.keep
+				if rmdir "${prefix}lib" 2>/dev/null ; then
+					ln -s ${def_libdir} "${prefix}lib" || die
+				else
+					die "non-empty dir found where we needed a symlink: ${prefix}lib"
+				fi
+			else
+				# nothing exists, so just set it up sanely
+				ewarn "Initializing ${prefix}lib as a symlink"
+				mkdir -p "${prefix}" || die
+				rm -f "${prefix}lib" || die
+				ln -s ${def_libdir} "${prefix}lib" || die
+				mkdir -p "${prefix}${def_libdir}" #423571
+			fi
+		else
+			# we need to make sure "lib" is a dir
+			if [ -h "${prefix}lib" ] ; then
+				# "lib" is a symlink, so need to convert to a dir
+				ewarn "Converting ${prefix}lib from a symlink to a dir"
+				rm -f "${prefix}lib" || die
+				if [ -d "${prefix}lib32" ] ; then
+					ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
+					mv "${prefix}lib32" "${prefix}lib" || die
+				else
+					mkdir -p "${prefix}lib" || die
+				fi
+			elif [ -d "${prefix}lib" ] && ! has lib32 ${libdirs} ; then
+				# make sure the old "lib" ABI location does not exist; we
+				# only symlinked the lib dir on systems where we moved it
+				# to "lib32" ...
+				case ${CHOST} in
+				*-gentoo-freebsd*) ;; # We want it the other way on fbsd.
+				i?86*|x86_64*|powerpc*|sparc*|s390*)
+					if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
+						rm -f "${prefix}lib32"/.keep
+						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
+							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
+							die "non-empty dir found where there should be none: ${prefix}lib32"
+						fi
+					fi
+					;;
+				esac
+			else
+				# nothing exists, so just set it up sanely
+				ewarn "Initializing ${prefix}lib as a dir"
+				mkdir -p "${prefix}lib" || die
+			fi
+		fi
+	done
+	if ! use split-usr ; then
+		for libdir in ${libdirs}; do
+			if [[ ! -e "${EROOT}${libdir}" ]]; then
+				ln -s usr/"${libdir}" "${EROOT}${libdir}"
+			fi
+		done
+	fi
+}
+
+pkg_preinst() {
+	# This is written in src_install (so it's in CONTENTS), but punt all
+	# pending updates to avoid user having to do etc-update (and make the
+	# pkg_postinst logic simpler).
+	rm -f "${EROOT}"/etc/._cfg????_gentoo-release
+
+	# We need to install directories and maybe some dev nodes when building
+	# stages, but they cannot be in CONTENTS.
+	# Also, we cannot reference $S as binpkg will break so we do this.
+	multilib_layout
+	if use build ; then
+		if use split-usr ; then
+			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
+		else
+			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
+		fi
+	fi
+	rm -f "${ED}"/usr/share/${PN}/Makefile
+}
+
+src_prepare() {
+	default
+	if use prefix; then
+		hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
+		hprefixify etc/{env.d/50baselayout,shells} share.Linux/passwd
+		echo PATH=/usr/bin:/bin >> etc/env.d/99host
+		echo ROOTPATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
+	fi
+
+	# don't want symlinked directories in PATH on systems with usr-merge
+	if ! use split-usr; then
+		sed \
+			-e 's|/usr/local/sbin:||g' \
+			-e 's|:/usr/sbin:|:|g' \
+			-e 's|:/sbin:|:|g' \
+			-e 's|:/bin:|:|g' \
+			-i etc/env.d/50baselayout || die
+	fi
+
+	# handle multilib paths.  do it here because we want this behavior
+	# regardless of the C library that you're using.  we do explicitly
+	# list paths which the native ldconfig searches, but this isn't
+	# problematic as it doesn't change the resulting ld.so.cache or
+	# take longer to generate.  similarly, listing both the native
+	# path and the symlinked path doesn't change the resulting cache.
+	local libdir ldpaths
+	for libdir in $(get_all_libdirs) ; do
+		use split-usr && ldpaths+=":${EPREFIX}/${libdir}"
+		ldpaths+=":${EPREFIX}/usr/${libdir}"
+		ldpaths+=":${EPREFIX}/usr/local/${libdir}"
+	done
+	echo "LDPATH='${ldpaths#:}'" >> etc/env.d/50baselayout
+
+	# rc-scripts version for testing of features that *should* be present
+	echo "Gentoo Base System release ${PV}" > etc/gentoo-release
+}
+
+src_install() {
+	emake \
+		OS=$(usex kernel_FreeBSD BSD Linux) \
+		DESTDIR="${ED}" \
+		install
+	dodoc ChangeLog
+
+	# need the makefile in pkg_preinst
+	insinto /usr/share/${PN}
+	doins Makefile
+}
+
+pkg_postinst() {
+	local x
+
+	# We installed some files to /usr/share/baselayout instead of /etc to stop
+	# (1) overwriting the user's settings
+	# (2) screwing things up when attempting to merge files
+	# (3) accidentally packaging up personal files with quickpkg
+	# If they don't exist then we install them
+	for x in master.passwd passwd shadow group fstab ; do
+		[ -e "${EROOT}etc/${x}" ] && continue
+		[ -e "${EROOT}usr/share/baselayout/${x}" ] || continue
+		cp -p "${EROOT}usr/share/baselayout/${x}" "${EROOT}"etc
+	done
+
+	# Force shadow permissions to not be world-readable #260993
+	for x in shadow ; do
+		[ -e "${EROOT}etc/${x}" ] && chmod o-rwx "${EROOT}etc/${x}"
+	done
+
+	# Take care of the etc-update for the user
+	if [ -e "${EROOT}"etc/._cfg0000_gentoo-release ] ; then
+		mv "${EROOT}"etc/._cfg0000_gentoo-release "${EROOT}"etc/gentoo-release
+	fi
+
+	# whine about users that lack passwords #193541
+	if [[ -e "${EROOT}"etc/shadow ]] ; then
+		local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
+		if [[ -n ${bad_users} ]] ; then
+			echo
+			ewarn "The following users lack passwords!"
+			ewarn ${bad_users}
+		fi
+	fi
+
+	# whine about users with invalid shells #215698
+	if [[ -e "${EROOT}"etc/passwd ]] ; then
+		local bad_shells=$(awk -F: 'system("test -e " $7) { print $1 " - " $7}' "${EROOT}"etc/passwd | sort)
+		if [[ -n ${bad_shells} ]] ; then
+			echo
+			ewarn "The following users have non-existent shells!"
+			ewarn "${bad_shells}"
+		fi
+	fi
+
+	# https://bugs.gentoo.org/361349
+	if use kernel_linux; then
+		mkdir -p "${EROOT}"run
+
+		local found fstype mountpoint
+		while read -r _ mountpoint fstype _; do
+		[[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
+		done < "${ROOT}"proc/mounts
+		[[ -z ${found} ]] &&
+			ewarn "You should reboot now to get /run mounted with tmpfs!"
+	fi
+
+	for x in ${REPLACING_VERSIONS}; do
+		if ! version_is_at_least 2.4 ${x}; then
+			ewarn "After updating ${EROOT}etc/profile, please run"
+			ewarn "env-update && . /etc/profile"
+		fi
+
+		if ! version_is_at_least 2.6 ${x}; then
+			ewarn "Please run env-update then log out and back in to"
+			ewarn "update your path."
+		fi
+		# clean up after 2.5 typos
+		# https://bugs.gentoo.org/show_bug.cgi?id=656380
+		if [[ ${x} == 2.5 ]]; then
+			rm -fr "${EROOT}{,usr"
+		fi
+	done
+
+	if [[ -e "${EROOT}"etc/env.d/00basic ]]; then
+		ewarn "${EROOT}etc/env.d/00basic is now ${EROOT}etc/env.d/50baselayout"
+		ewarn "Please migrate your changes."
+	fi
+}


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2020-02-10  4:31 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2020-02-10  4:31 UTC (permalink / raw
  To: gentoo-commits

commit:     b4e246839d42a3c9a839801759c20f69c27df964
Author:     David Seifert <soap <AT> gentoo <DOT> org>
AuthorDate: Mon Feb 10 04:31:09 2020 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Mon Feb 10 04:31:09 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b4e24683

sys-apps/baselayout: Remove symlinked components when USE="-split-usr"

Closes: https://bugs.gentoo.org/708698
Package-Manager: Portage-2.3.87, Repoman-2.3.20
Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-apps/baselayout/baselayout-9999.ebuild | 15 +++++++++++++--
 1 file changed, 13 insertions(+), 2 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
index 274767b5eab..a4b8ca535ac 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2019 Gentoo Authors
+# Copyright 1999-2020 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=6
@@ -188,6 +188,16 @@ src_prepare() {
 		echo ROOTPATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
 	fi
 
+	# don't want symlinked directories in PATH on systems with usr-merge
+	if ! use split-usr; then
+		sed \
+			-e 's|/usr/local/sbin:||g' \
+			-e 's|:/usr/sbin:|:|g' \
+			-e 's|:/sbin:|:|g' \
+			-e 's|:/bin:|:|g' \
+			-i etc/env.d/50baselayout || die
+	fi
+
 	# handle multilib paths.  do it here because we want this behavior
 	# regardless of the C library that you're using.  we do explicitly
 	# list paths which the native ldconfig searches, but this isn't
@@ -196,7 +206,8 @@ src_prepare() {
 	# path and the symlinked path doesn't change the resulting cache.
 	local libdir ldpaths
 	for libdir in $(get_all_libdirs) ; do
-		ldpaths+=":${EPREFIX}/${libdir}:${EPREFIX}/usr/${libdir}"
+		use split-usr && ldpaths+=":${EPREFIX}/${libdir}"
+		ldpaths+=":${EPREFIX}/usr/${libdir}"
 		ldpaths+=":${EPREFIX}/usr/local/${libdir}"
 	done
 	echo "LDPATH='${ldpaths#:}'" >> etc/env.d/50baselayout


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2020-02-08 14:18 David Seifert
  0 siblings, 0 replies; 124+ messages in thread
From: David Seifert @ 2020-02-08 14:18 UTC (permalink / raw
  To: gentoo-commits

commit:     47970ff621c9550581c6eb29e901cb2fee7d1b0c
Author:     David Seifert <soap <AT> gentoo <DOT> org>
AuthorDate: Sat Feb  8 14:17:54 2020 +0000
Commit:     David Seifert <soap <AT> gentoo <DOT> org>
CommitDate: Sat Feb  8 14:17:54 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=47970ff6

sys-apps/baselayout: [QA] Fix BadHomepage

Signed-off-by: David Seifert <soap <AT> gentoo.org>

 sys-apps/baselayout/baselayout-2.4.1-r2.ebuild | 2 +-
 sys-apps/baselayout/baselayout-2.6-r1.ebuild   | 2 +-
 sys-apps/baselayout/baselayout-9999.ebuild     | 2 +-
 3 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-2.4.1-r2.ebuild b/sys-apps/baselayout/baselayout-2.4.1-r2.ebuild
index fc42f2d3ae7..1b25f4786fe 100644
--- a/sys-apps/baselayout/baselayout-2.4.1-r2.ebuild
+++ b/sys-apps/baselayout/baselayout-2.4.1-r2.ebuild
@@ -6,7 +6,7 @@ EAPI=6
 inherit eutils multilib versionator prefix
 
 DESCRIPTION="Filesystem baselayout and init scripts"
-HOMEPAGE="https://www.gentoo.org/"
+HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
 SRC_URI="https://gitweb.gentoo.org/proj/baselayout.git/snapshot/${P}.tar.bz2"
 
 LICENSE="GPL-2"

diff --git a/sys-apps/baselayout/baselayout-2.6-r1.ebuild b/sys-apps/baselayout/baselayout-2.6-r1.ebuild
index 6398d236aca..0e9f29a7874 100644
--- a/sys-apps/baselayout/baselayout-2.6-r1.ebuild
+++ b/sys-apps/baselayout/baselayout-2.6-r1.ebuild
@@ -6,7 +6,7 @@ EAPI=6
 inherit multilib versionator prefix
 
 DESCRIPTION="Filesystem baselayout and init scripts"
-HOMEPAGE="https://www.gentoo.org/"
+HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
 if [[ ${PV} = 9999 ]]; then
 	EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/${PN}.git"
 	inherit git-r3

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
index dc992108fe8..274767b5eab 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-9999.ebuild
@@ -6,7 +6,7 @@ EAPI=6
 inherit multilib versionator prefix
 
 DESCRIPTION="Filesystem baselayout and init scripts"
-HOMEPAGE="https://www.gentoo.org/"
+HOMEPAGE="https://wiki.gentoo.org/wiki/No_homepage"
 if [[ ${PV} = 9999 ]]; then
 	EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/${PN}.git"
 	inherit git-r3


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2019-10-16 18:29 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2019-10-16 18:29 UTC (permalink / raw
  To: gentoo-commits

commit:     e8968e1a686d8cfd12193ab3d00b365e98295310
Author:     William Hubbs <william.hubbs <AT> sony <DOT> com>
AuthorDate: Wed Oct 16 18:25:33 2019 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Wed Oct 16 18:26:52 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e8968e1a

sys-apps/baselayout: remove split-usr from metadata since it is global

Copyright: Sony Interactive Entertainment Inc.
Package-Manager: Portage-2.3.76, Repoman-2.3.16
Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-apps/baselayout/metadata.xml | 3 ---
 1 file changed, 3 deletions(-)

diff --git a/sys-apps/baselayout/metadata.xml b/sys-apps/baselayout/metadata.xml
index 8a7288dd9a8..53e04953d60 100644
--- a/sys-apps/baselayout/metadata.xml
+++ b/sys-apps/baselayout/metadata.xml
@@ -9,7 +9,4 @@
 	<email>base-system@gentoo.org</email>
 	<name>Gentoo Base System</name>
 </maintainer>
-<use>
-	<flag name="split-usr">Enable this if /bin and /usr/bin are separate directories</flag>
-</use>
 </pkgmetadata>


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2019-05-04 18:36 Mikle Kolyada
  0 siblings, 0 replies; 124+ messages in thread
From: Mikle Kolyada @ 2019-05-04 18:36 UTC (permalink / raw
  To: gentoo-commits

commit:     f98d0f8ca90ea5e93f876c89ae83e87f9de60255
Author:     Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
AuthorDate: Sat May  4 18:35:53 2019 +0000
Commit:     Mikle Kolyada <zlogene <AT> gentoo <DOT> org>
CommitDate: Sat May  4 18:35:53 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f98d0f8c

sys-apps/baselayout: Add ~riscv keyword

Signed-off-by: Mikle Kolyada <zlogene <AT> gentoo.org>
Package-Manager: Portage-2.3.62, Repoman-2.3.11

 sys-apps/baselayout/baselayout-2.4.1-r2.ebuild | 4 ++--
 sys-apps/baselayout/baselayout-2.6-r1.ebuild   | 4 ++--
 sys-apps/baselayout/baselayout-9999.ebuild     | 2 +-
 3 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-2.4.1-r2.ebuild b/sys-apps/baselayout/baselayout-2.4.1-r2.ebuild
index a3a7fc30d9a..5adb7126676 100644
--- a/sys-apps/baselayout/baselayout-2.4.1-r2.ebuild
+++ b/sys-apps/baselayout/baselayout-2.4.1-r2.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2019 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=6
@@ -11,7 +11,7 @@ SRC_URI="https://gitweb.gentoo.org/proj/baselayout.git/snapshot/${P}.tar.bz2"
 
 LICENSE="GPL-2"
 SLOT="0"
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 ~riscv s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd"
 IUSE="build kernel_linux"
 
 pkg_setup() {

diff --git a/sys-apps/baselayout/baselayout-2.6-r1.ebuild b/sys-apps/baselayout/baselayout-2.6-r1.ebuild
index 5a33d62f420..46f9625ff45 100644
--- a/sys-apps/baselayout/baselayout-2.6-r1.ebuild
+++ b/sys-apps/baselayout/baselayout-2.6-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Authors
+# Copyright 1999-2019 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=6
@@ -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 ~m68k ~mips ppc ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd ~x86-fbsd"
+	KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~riscv ~s390 ~sh ~sparc x86 ~amd64-fbsd ~x86-fbsd"
 fi
 
 LICENSE="GPL-2"

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
index 74c90b6df27..698bb775923 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-9999.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 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
 fi
 
 LICENSE="GPL-2"


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2019-03-03 18:54 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2019-03-03 18:54 UTC (permalink / raw
  To: gentoo-commits

commit:     20f8576c593f9dc674012fcad444f61952c39498
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Sun Mar  3 18:29:52 2019 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Sun Mar  3 18:53:45 2019 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=20f8576c

sys-apps/baselayout: sync live

Package-Manager: Portage-2.3.62, Repoman-2.3.12
Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-apps/baselayout/baselayout-9999.ebuild | 30 +++++++++++++++++++++++++++---
 1 file changed, 27 insertions(+), 3 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
index 0428b0afbb9..74c90b6df27 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-9999.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2019 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=6
@@ -25,11 +25,36 @@ pkg_setup() {
 
 # Create our multilib dirs - the Makefile has no knowledge of this
 multilib_layout() {
-	local def_libdir libdir libdirs
+	local dir def_libdir libdir libdirs
+	local prefix prefix_lst
 	def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
 	libdirs=$(get_all_libdirs)
 	: ${libdirs:=lib}	# it isn't that we don't trust multilib.eclass...
 
+	if [[ -z "${SYMLINK_LIB}" || ${SYMLINK_LIB} = no ]] ; then
+		prefix_lst=( "${EROOT}"{,usr/,usr/local/} )
+		for prefix in ${prefix_lst[@]}; do
+			for libdir in ${libdirs}; do
+				dir="${prefix}${libdir}"
+				if [[ -e "${dir}" ]]; then
+					[[ ! -d "${dir}" ]] &&
+						die "${dir} exists but is not a directory"
+					continue
+				fi
+				if ! use split-usr && [[ ${prefix} = ${EROOT} ]]; then
+					einfo "symlinking ${dir} to usr/${libdir}"
+					ln -s usr/${libdir} ${dir} ||
+						die " Unable to make ${dir} symlink"
+				else
+					einfo "creating directory ${dir}"
+					mkdir -p "${dir}" ||
+						die "Unable to create ${dir} directory"
+				fi
+			done
+		done
+		return 0
+	fi
+
 	[ -z "${def_libdir}" ] &&
 		die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
 
@@ -62,7 +87,6 @@ multilib_layout() {
 
 	# setup symlinks and dirs where we expect them to be; do not migrate
 	# data ... just fall over in that case.
-	local prefix prefix_lst
 	if use split-usr ; then
 		prefix_lst=( "${EROOT}"{,usr/,usr/local/} )
 	else


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2018-11-30 12:14 Jeroen Roovers
  0 siblings, 0 replies; 124+ messages in thread
From: Jeroen Roovers @ 2018-11-30 12:14 UTC (permalink / raw
  To: gentoo-commits

commit:     f7c520ec9e4cddbaefc018c02d5d2f322a5910f1
Author:     Jeroen Roovers <jer <AT> gentoo <DOT> org>
AuthorDate: Fri Nov 30 11:17:43 2018 +0000
Commit:     Jeroen Roovers <jer <AT> gentoo <DOT> org>
CommitDate: Fri Nov 30 12:14:29 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f7c520ec

sys-apps/baselayout: Stable for HPPA too.

Package-Manager: Portage-2.3.52, Repoman-2.3.12
RepoMan-Options: --ignore-arches
Signed-off-by: Jeroen Roovers <jer <AT> gentoo.org>

 sys-apps/baselayout/baselayout-2.6-r1.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys-apps/baselayout/baselayout-2.6-r1.ebuild b/sys-apps/baselayout/baselayout-2.6-r1.ebuild
index 1abe713e1c6..5a33d62f420 100644
--- a/sys-apps/baselayout/baselayout-2.6-r1.ebuild
+++ b/sys-apps/baselayout/baselayout-2.6-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 ~m68k ~mips ppc ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd ~x86-fbsd"
+	KEYWORDS="alpha amd64 arm arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd ~x86-fbsd"
 fi
 
 LICENSE="GPL-2"


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2018-11-12 11:13 Lars Wendler
  0 siblings, 0 replies; 124+ messages in thread
From: Lars Wendler @ 2018-11-12 11:13 UTC (permalink / raw
  To: gentoo-commits

commit:     1290aa226a91adaf3bc7435fca0c56f45c824f09
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Mon Nov 12 11:13:29 2018 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Mon Nov 12 11:13:43 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1290aa22

sys-apps/baselayout: Removed old.

Package-Manager: Portage-2.3.51, Repoman-2.3.12
Signed-off-by: Lars Wendler <polynomial-c <AT> gentoo.org>

 sys-apps/baselayout/baselayout-2.6.ebuild | 273 ------------------------------
 1 file changed, 273 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-2.6.ebuild b/sys-apps/baselayout/baselayout-2.6.ebuild
deleted file mode 100644
index 0428b0afbb9..00000000000
--- a/sys-apps/baselayout/baselayout-2.6.ebuild
+++ /dev/null
@@ -1,273 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit multilib versionator prefix
-
-DESCRIPTION="Filesystem baselayout and init scripts"
-HOMEPAGE="https://www.gentoo.org/"
-if [[ ${PV} = 9999 ]]; then
-	EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/${PN}.git"
-	inherit git-r3
-else
-	SRC_URI="https://gitweb.gentoo.org/proj/${PN}.git/snapshot/${P}.tar.bz2"
-	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
-fi
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="build kernel_FreeBSD kernel_linux +split-usr"
-
-pkg_setup() {
-	multilib_layout
-}
-
-# Create our multilib dirs - the Makefile has no knowledge of this
-multilib_layout() {
-	local def_libdir libdir libdirs
-	def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
-	libdirs=$(get_all_libdirs)
-	: ${libdirs:=lib}	# it isn't that we don't trust multilib.eclass...
-
-	[ -z "${def_libdir}" ] &&
-		die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
-
-	# figure out which paths should be symlinks and which should be directories
-	local dirs syms exp d
-	for libdir in ${libdirs} ; do
-		if use split-usr ; then
-			exp=( {,usr/,usr/local/}${libdir} )
-		else
-			exp=( {usr/,usr/local/}${libdir} )
-		fi
-		for d in "${exp[@]}" ; do
-			# most things should be dirs
-			if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
-				[ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
-			else
-				[ -h "${d}" ] && syms+=" ${d}"
-			fi
-		done
-	done
-	if [ -n "${syms}${dirs}" ] ; then
-		ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
-		ewarn "have these paths configured as follows:"
-		[ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
-		[ -n "${syms}" ] && ewarn "directories:${syms}"
-		ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
-		ewarn "If things fail, you will need to manually create/move the directories."
-		echo
-	fi
-
-	# setup symlinks and dirs where we expect them to be; do not migrate
-	# data ... just fall over in that case.
-	local prefix prefix_lst
-	if use split-usr ; then
-		prefix_lst=( "${EROOT}"{,usr/,usr/local/} )
-	else
-		prefix_lst=( "${EROOT}"{usr/,usr/local/} )
-	fi
-	for prefix in "${prefix_lst[@]}"; do
-		if [ "${SYMLINK_LIB}" = yes ] ; then
-			# we need to make sure "lib" points to the native libdir
-			if [ -h "${prefix}lib" ] ; then
-				# it's already a symlink!  assume it's pointing to right place ...
-				continue
-			elif [ -d "${prefix}lib" ] ; then
-				# "lib" is a dir, so need to convert to a symlink
-				ewarn "Converting ${prefix}lib from a dir to a symlink"
-				rm -f "${prefix}lib"/.keep
-				if rmdir "${prefix}lib" 2>/dev/null ; then
-					ln -s ${def_libdir} "${prefix}lib" || die
-				else
-					die "non-empty dir found where we needed a symlink: ${prefix}lib"
-				fi
-			else
-				# nothing exists, so just set it up sanely
-				ewarn "Initializing ${prefix}lib as a symlink"
-				mkdir -p "${prefix}" || die
-				rm -f "${prefix}lib" || die
-				ln -s ${def_libdir} "${prefix}lib" || die
-				mkdir -p "${prefix}${def_libdir}" #423571
-			fi
-		else
-			# we need to make sure "lib" is a dir
-			if [ -h "${prefix}lib" ] ; then
-				# "lib" is a symlink, so need to convert to a dir
-				ewarn "Converting ${prefix}lib from a symlink to a dir"
-				rm -f "${prefix}lib" || die
-				if [ -d "${prefix}lib32" ] ; then
-					ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
-					mv "${prefix}lib32" "${prefix}lib" || die
-				else
-					mkdir -p "${prefix}lib" || die
-				fi
-			elif [ -d "${prefix}lib" ] && ! has lib32 ${libdirs} ; then
-				# make sure the old "lib" ABI location does not exist; we
-				# only symlinked the lib dir on systems where we moved it
-				# to "lib32" ...
-				case ${CHOST} in
-				*-gentoo-freebsd*) ;; # We want it the other way on fbsd.
-				i?86*|x86_64*|powerpc*|sparc*|s390*)
-					if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
-						rm -f "${prefix}lib32"/.keep
-						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
-							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
-							die "non-empty dir found where there should be none: ${prefix}lib32"
-						fi
-					fi
-					;;
-				esac
-			else
-				# nothing exists, so just set it up sanely
-				ewarn "Initializing ${prefix}lib as a dir"
-				mkdir -p "${prefix}lib" || die
-			fi
-		fi
-	done
-	if ! use split-usr ; then
-		for libdir in ${libdirs}; do
-			if [[ ! -e "${EROOT}${libdir}" ]]; then
-				ln -s usr/"${libdir}" "${EROOT}${libdir}"
-			fi
-		done
-	fi
-}
-
-pkg_preinst() {
-	# This is written in src_install (so it's in CONTENTS), but punt all
-	# pending updates to avoid user having to do etc-update (and make the
-	# pkg_postinst logic simpler).
-	rm -f "${EROOT}"/etc/._cfg????_gentoo-release
-
-	# We need to install directories and maybe some dev nodes when building
-	# stages, but they cannot be in CONTENTS.
-	# Also, we cannot reference $S as binpkg will break so we do this.
-	multilib_layout
-	if use build ; then
-		if use split-usr ; then
-			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
-		else
-			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
-		fi
-	fi
-	rm -f "${ED}"/usr/share/${PN}/Makefile
-}
-
-src_prepare() {
-	default
-	if use prefix; then
-		hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
-		hprefixify etc/{env.d/50baselayout,shells} share.Linux/passwd
-		echo PATH=/usr/bin:/bin >> etc/env.d/99host
-		echo ROOTPATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
-	fi
-
-	# handle multilib paths.  do it here because we want this behavior
-	# regardless of the C library that you're using.  we do explicitly
-	# list paths which the native ldconfig searches, but this isn't
-	# problematic as it doesn't change the resulting ld.so.cache or
-	# take longer to generate.  similarly, listing both the native
-	# path and the symlinked path doesn't change the resulting cache.
-	local libdir ldpaths
-	for libdir in $(get_all_libdirs) ; do
-		ldpaths+=":${EPREFIX}/${libdir}:${EPREFIX}/usr/${libdir}"
-		ldpaths+=":${EPREFIX}/usr/local/${libdir}"
-	done
-	echo "LDPATH='${ldpaths#:}'" >> etc/env.d/50baselayout
-
-	# rc-scripts version for testing of features that *should* be present
-	echo "Gentoo Base System release ${PV}" > etc/gentoo-release
-}
-
-src_install() {
-	emake \
-		OS=$(usex kernel_FreeBSD BSD Linux) \
-		DESTDIR="${ED}" \
-		install
-	dodoc ChangeLog
-
-	# need the makefile in pkg_preinst
-	insinto /usr/share/${PN}
-	doins Makefile
-}
-
-pkg_postinst() {
-	local x
-
-	# We installed some files to /usr/share/baselayout instead of /etc to stop
-	# (1) overwriting the user's settings
-	# (2) screwing things up when attempting to merge files
-	# (3) accidentally packaging up personal files with quickpkg
-	# If they don't exist then we install them
-	for x in master.passwd passwd shadow group fstab ; do
-		[ -e "${EROOT}etc/${x}" ] && continue
-		[ -e "${EROOT}usr/share/baselayout/${x}" ] || continue
-		cp -p "${EROOT}usr/share/baselayout/${x}" "${EROOT}"etc
-	done
-
-	# Force shadow permissions to not be world-readable #260993
-	for x in shadow ; do
-		[ -e "${EROOT}etc/${x}" ] && chmod o-rwx "${EROOT}etc/${x}"
-	done
-
-	# Take care of the etc-update for the user
-	if [ -e "${EROOT}"etc/._cfg0000_gentoo-release ] ; then
-		mv "${EROOT}"etc/._cfg0000_gentoo-release "${EROOT}"etc/gentoo-release
-	fi
-
-	# whine about users that lack passwords #193541
-	if [[ -e "${EROOT}"etc/shadow ]] ; then
-		local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
-		if [[ -n ${bad_users} ]] ; then
-			echo
-			ewarn "The following users lack passwords!"
-			ewarn ${bad_users}
-		fi
-	fi
-
-	# whine about users with invalid shells #215698
-	if [[ -e "${EROOT}"etc/passwd ]] ; then
-		local bad_shells=$(awk -F: 'system("test -e " $7) { print $1 " - " $7}' "${EROOT}"etc/passwd | sort)
-		if [[ -n ${bad_shells} ]] ; then
-			echo
-			ewarn "The following users have non-existent shells!"
-			ewarn "${bad_shells}"
-		fi
-	fi
-
-	# https://bugs.gentoo.org/361349
-	if use kernel_linux; then
-		mkdir -p "${EROOT}"run
-
-		local found fstype mountpoint
-		while read -r _ mountpoint fstype _; do
-		[[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
-		done < "${ROOT}"proc/mounts
-		[[ -z ${found} ]] &&
-			ewarn "You should reboot now to get /run mounted with tmpfs!"
-	fi
-
-	for x in ${REPLACING_VERSIONS}; do
-		if ! version_is_at_least 2.4 ${x}; then
-			ewarn "After updating ${EROOT}etc/profile, please run"
-			ewarn "env-update && . /etc/profile"
-		fi
-
-		if ! version_is_at_least 2.6 ${x}; then
-			ewarn "Please run env-update then log out and back in to"
-			ewarn "update your path."
-		fi
-		# clean up after 2.5 typos
-		# https://bugs.gentoo.org/show_bug.cgi?id=656380
-		if [[ ${x} == 2.5 ]]; then
-			rm -fr "${EROOT}{,usr"
-		fi
-	done
-
-	if [[ -e "${EROOT}"etc/env.d/00basic ]]; then
-		ewarn "${EROOT}etc/env.d/00basic is now ${EROOT}etc/env.d/50baselayout"
-		ewarn "Please migrate your changes."
-	fi
-}


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2018-11-08  0:15 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2018-11-08  0:15 UTC (permalink / raw
  To: gentoo-commits

commit:     fd889d6c7dce3714649d67a766ef22c18df0d127
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Thu Nov  8 00:10:45 2018 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Thu Nov  8 00:13:46 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fd889d6c

sys-apps/baselayout: Mark 2.6-r1 stable

Package-Manager: Portage-2.3.51, Repoman-2.3.11
Signed-off-by: William Hubbs <williamh <AT> gentoo.org>

 sys-apps/baselayout/baselayout-2.6-r1.ebuild | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-2.6-r1.ebuild b/sys-apps/baselayout/baselayout-2.6-r1.ebuild
index daa903ef83a..1abe713e1c6 100644
--- a/sys-apps/baselayout/baselayout-2.6-r1.ebuild
+++ b/sys-apps/baselayout/baselayout-2.6-r1.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2018 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 EAPI=6
@@ -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 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+	KEYWORDS="alpha amd64 arm arm64 ~hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd ~x86-fbsd"
 fi
 
 LICENSE="GPL-2"


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2018-07-25 16:36 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2018-07-25 16:36 UTC (permalink / raw
  To: gentoo-commits

commit:     f76ddbcf61ac79ad9f5881e30200eaa190f71c21
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Wed Jul 25 16:35:24 2018 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Wed Jul 25 16:35:59 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f76ddbcf

sys-apps/baselayout: 2.6-r1 bump for 17.1 profiles

Package-Manager: Portage-2.3.40, Repoman-2.3.9

 sys-apps/baselayout/baselayout-2.6-r1.ebuild | 297 +++++++++++++++++++++++++++
 1 file changed, 297 insertions(+)

diff --git a/sys-apps/baselayout/baselayout-2.6-r1.ebuild b/sys-apps/baselayout/baselayout-2.6-r1.ebuild
new file mode 100644
index 00000000000..daa903ef83a
--- /dev/null
+++ b/sys-apps/baselayout/baselayout-2.6-r1.ebuild
@@ -0,0 +1,297 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit multilib versionator prefix
+
+DESCRIPTION="Filesystem baselayout and init scripts"
+HOMEPAGE="https://www.gentoo.org/"
+if [[ ${PV} = 9999 ]]; then
+	EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/${PN}.git"
+	inherit git-r3
+else
+	SRC_URI="https://gitweb.gentoo.org/proj/${PN}.git/snapshot/${P}.tar.bz2"
+	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="build kernel_FreeBSD kernel_linux +split-usr"
+
+pkg_setup() {
+	multilib_layout
+}
+
+# Create our multilib dirs - the Makefile has no knowledge of this
+multilib_layout() {
+	local dir def_libdir libdir libdirs
+	local prefix prefix_lst
+	def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
+	libdirs=$(get_all_libdirs)
+	: ${libdirs:=lib}	# it isn't that we don't trust multilib.eclass...
+
+	if [[ -z "${SYMLINK_LIB}" || ${SYMLINK_LIB} = no ]] ; then
+		prefix_lst=( "${EROOT}"{,usr/,usr/local/} )
+		for prefix in ${prefix_lst[@]}; do
+			for libdir in ${libdirs}; do
+				dir="${prefix}${libdir}"
+				if [[ -e "${dir}" ]]; then
+					[[ ! -d "${dir}" ]] &&
+						die "${dir} exists but is not a directory"
+					continue
+				fi
+				if ! use split-usr && [[ ${prefix} = ${EROOT} ]]; then
+					einfo "symlinking ${dir} to usr/${libdir}"
+					ln -s usr/${libdir} ${dir} ||
+						die " Unable to make ${dir} symlink"
+				else
+					einfo "creating directory ${dir}"
+					mkdir -p "${dir}" ||
+						die "Unable to create ${dir} directory"
+				fi
+			done
+		done
+		return 0
+	fi
+
+	[ -z "${def_libdir}" ] &&
+		die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
+
+	# figure out which paths should be symlinks and which should be directories
+	local dirs syms exp d
+	for libdir in ${libdirs} ; do
+		if use split-usr ; then
+			exp=( {,usr/,usr/local/}${libdir} )
+		else
+			exp=( {usr/,usr/local/}${libdir} )
+		fi
+		for d in "${exp[@]}" ; do
+			# most things should be dirs
+			if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
+				[ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
+			else
+				[ -h "${d}" ] && syms+=" ${d}"
+			fi
+		done
+	done
+	if [ -n "${syms}${dirs}" ] ; then
+		ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
+		ewarn "have these paths configured as follows:"
+		[ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
+		[ -n "${syms}" ] && ewarn "directories:${syms}"
+		ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
+		ewarn "If things fail, you will need to manually create/move the directories."
+		echo
+	fi
+
+	# setup symlinks and dirs where we expect them to be; do not migrate
+	# data ... just fall over in that case.
+	if use split-usr ; then
+		prefix_lst=( "${EROOT}"{,usr/,usr/local/} )
+	else
+		prefix_lst=( "${EROOT}"{usr/,usr/local/} )
+	fi
+	for prefix in "${prefix_lst[@]}"; do
+		if [ "${SYMLINK_LIB}" = yes ] ; then
+			# we need to make sure "lib" points to the native libdir
+			if [ -h "${prefix}lib" ] ; then
+				# it's already a symlink!  assume it's pointing to right place ...
+				continue
+			elif [ -d "${prefix}lib" ] ; then
+				# "lib" is a dir, so need to convert to a symlink
+				ewarn "Converting ${prefix}lib from a dir to a symlink"
+				rm -f "${prefix}lib"/.keep
+				if rmdir "${prefix}lib" 2>/dev/null ; then
+					ln -s ${def_libdir} "${prefix}lib" || die
+				else
+					die "non-empty dir found where we needed a symlink: ${prefix}lib"
+				fi
+			else
+				# nothing exists, so just set it up sanely
+				ewarn "Initializing ${prefix}lib as a symlink"
+				mkdir -p "${prefix}" || die
+				rm -f "${prefix}lib" || die
+				ln -s ${def_libdir} "${prefix}lib" || die
+				mkdir -p "${prefix}${def_libdir}" #423571
+			fi
+		else
+			# we need to make sure "lib" is a dir
+			if [ -h "${prefix}lib" ] ; then
+				# "lib" is a symlink, so need to convert to a dir
+				ewarn "Converting ${prefix}lib from a symlink to a dir"
+				rm -f "${prefix}lib" || die
+				if [ -d "${prefix}lib32" ] ; then
+					ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
+					mv "${prefix}lib32" "${prefix}lib" || die
+				else
+					mkdir -p "${prefix}lib" || die
+				fi
+			elif [ -d "${prefix}lib" ] && ! has lib32 ${libdirs} ; then
+				# make sure the old "lib" ABI location does not exist; we
+				# only symlinked the lib dir on systems where we moved it
+				# to "lib32" ...
+				case ${CHOST} in
+				*-gentoo-freebsd*) ;; # We want it the other way on fbsd.
+				i?86*|x86_64*|powerpc*|sparc*|s390*)
+					if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
+						rm -f "${prefix}lib32"/.keep
+						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
+							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
+							die "non-empty dir found where there should be none: ${prefix}lib32"
+						fi
+					fi
+					;;
+				esac
+			else
+				# nothing exists, so just set it up sanely
+				ewarn "Initializing ${prefix}lib as a dir"
+				mkdir -p "${prefix}lib" || die
+			fi
+		fi
+	done
+	if ! use split-usr ; then
+		for libdir in ${libdirs}; do
+			if [[ ! -e "${EROOT}${libdir}" ]]; then
+				ln -s usr/"${libdir}" "${EROOT}${libdir}"
+			fi
+		done
+	fi
+}
+
+pkg_preinst() {
+	# This is written in src_install (so it's in CONTENTS), but punt all
+	# pending updates to avoid user having to do etc-update (and make the
+	# pkg_postinst logic simpler).
+	rm -f "${EROOT}"/etc/._cfg????_gentoo-release
+
+	# We need to install directories and maybe some dev nodes when building
+	# stages, but they cannot be in CONTENTS.
+	# Also, we cannot reference $S as binpkg will break so we do this.
+	multilib_layout
+	if use build ; then
+		if use split-usr ; then
+			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
+		else
+			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
+		fi
+	fi
+	rm -f "${ED}"/usr/share/${PN}/Makefile
+}
+
+src_prepare() {
+	default
+	if use prefix; then
+		hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
+		hprefixify etc/{env.d/50baselayout,shells} share.Linux/passwd
+		echo PATH=/usr/bin:/bin >> etc/env.d/99host
+		echo ROOTPATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
+	fi
+
+	# handle multilib paths.  do it here because we want this behavior
+	# regardless of the C library that you're using.  we do explicitly
+	# list paths which the native ldconfig searches, but this isn't
+	# problematic as it doesn't change the resulting ld.so.cache or
+	# take longer to generate.  similarly, listing both the native
+	# path and the symlinked path doesn't change the resulting cache.
+	local libdir ldpaths
+	for libdir in $(get_all_libdirs) ; do
+		ldpaths+=":${EPREFIX}/${libdir}:${EPREFIX}/usr/${libdir}"
+		ldpaths+=":${EPREFIX}/usr/local/${libdir}"
+	done
+	echo "LDPATH='${ldpaths#:}'" >> etc/env.d/50baselayout
+
+	# rc-scripts version for testing of features that *should* be present
+	echo "Gentoo Base System release ${PV}" > etc/gentoo-release
+}
+
+src_install() {
+	emake \
+		OS=$(usex kernel_FreeBSD BSD Linux) \
+		DESTDIR="${ED}" \
+		install
+	dodoc ChangeLog
+
+	# need the makefile in pkg_preinst
+	insinto /usr/share/${PN}
+	doins Makefile
+}
+
+pkg_postinst() {
+	local x
+
+	# We installed some files to /usr/share/baselayout instead of /etc to stop
+	# (1) overwriting the user's settings
+	# (2) screwing things up when attempting to merge files
+	# (3) accidentally packaging up personal files with quickpkg
+	# If they don't exist then we install them
+	for x in master.passwd passwd shadow group fstab ; do
+		[ -e "${EROOT}etc/${x}" ] && continue
+		[ -e "${EROOT}usr/share/baselayout/${x}" ] || continue
+		cp -p "${EROOT}usr/share/baselayout/${x}" "${EROOT}"etc
+	done
+
+	# Force shadow permissions to not be world-readable #260993
+	for x in shadow ; do
+		[ -e "${EROOT}etc/${x}" ] && chmod o-rwx "${EROOT}etc/${x}"
+	done
+
+	# Take care of the etc-update for the user
+	if [ -e "${EROOT}"etc/._cfg0000_gentoo-release ] ; then
+		mv "${EROOT}"etc/._cfg0000_gentoo-release "${EROOT}"etc/gentoo-release
+	fi
+
+	# whine about users that lack passwords #193541
+	if [[ -e "${EROOT}"etc/shadow ]] ; then
+		local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
+		if [[ -n ${bad_users} ]] ; then
+			echo
+			ewarn "The following users lack passwords!"
+			ewarn ${bad_users}
+		fi
+	fi
+
+	# whine about users with invalid shells #215698
+	if [[ -e "${EROOT}"etc/passwd ]] ; then
+		local bad_shells=$(awk -F: 'system("test -e " $7) { print $1 " - " $7}' "${EROOT}"etc/passwd | sort)
+		if [[ -n ${bad_shells} ]] ; then
+			echo
+			ewarn "The following users have non-existent shells!"
+			ewarn "${bad_shells}"
+		fi
+	fi
+
+	# https://bugs.gentoo.org/361349
+	if use kernel_linux; then
+		mkdir -p "${EROOT}"run
+
+		local found fstype mountpoint
+		while read -r _ mountpoint fstype _; do
+		[[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
+		done < "${ROOT}"proc/mounts
+		[[ -z ${found} ]] &&
+			ewarn "You should reboot now to get /run mounted with tmpfs!"
+	fi
+
+	for x in ${REPLACING_VERSIONS}; do
+		if ! version_is_at_least 2.4 ${x}; then
+			ewarn "After updating ${EROOT}etc/profile, please run"
+			ewarn "env-update && . /etc/profile"
+		fi
+
+		if ! version_is_at_least 2.6 ${x}; then
+			ewarn "Please run env-update then log out and back in to"
+			ewarn "update your path."
+		fi
+		# clean up after 2.5 typos
+		# https://bugs.gentoo.org/show_bug.cgi?id=656380
+		if [[ ${x} == 2.5 ]]; then
+			rm -fr "${EROOT}{,usr"
+		fi
+	done
+
+	if [[ -e "${EROOT}"etc/env.d/00basic ]]; then
+		ewarn "${EROOT}etc/env.d/00basic is now ${EROOT}etc/env.d/50baselayout"
+		ewarn "Please migrate your changes."
+	fi
+}


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2018-07-22 16:47 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2018-07-22 16:47 UTC (permalink / raw
  To: gentoo-commits

commit:     9ba90c21126de9ad98404761c59a76817921e5fa
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Sun Jul 22 16:46:10 2018 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Sun Jul 22 16:46:49 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9ba90c21

sys-apps/baselayout: style change

Package-Manager: Portage-2.3.40, Repoman-2.3.9

 sys-apps/baselayout/baselayout-2.4.1-r2.ebuild | 3 ++-
 sys-apps/baselayout/baselayout-2.6.ebuild      | 3 ++-
 sys-apps/baselayout/baselayout-9999.ebuild     | 3 ++-
 3 files changed, 6 insertions(+), 3 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-2.4.1-r2.ebuild b/sys-apps/baselayout/baselayout-2.4.1-r2.ebuild
index d5f5254ba60..a3a7fc30d9a 100644
--- a/sys-apps/baselayout/baselayout-2.4.1-r2.ebuild
+++ b/sys-apps/baselayout/baselayout-2.4.1-r2.ebuild
@@ -23,7 +23,8 @@ multilib_layout() {
 	local libdir libdirs=$(get_all_libdirs) def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
 	: ${libdirs:=lib}	# it isn't that we don't trust multilib.eclass...
 
-	[ -z "${def_libdir}" ] && die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
+	[ -z "${def_libdir}" ] &&
+		die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
 
 	# figure out which paths should be symlinks and which should be directories
 	local dirs syms exp d

diff --git a/sys-apps/baselayout/baselayout-2.6.ebuild b/sys-apps/baselayout/baselayout-2.6.ebuild
index c32ab3e4495..0428b0afbb9 100644
--- a/sys-apps/baselayout/baselayout-2.6.ebuild
+++ b/sys-apps/baselayout/baselayout-2.6.ebuild
@@ -30,7 +30,8 @@ multilib_layout() {
 	libdirs=$(get_all_libdirs)
 	: ${libdirs:=lib}	# it isn't that we don't trust multilib.eclass...
 
-	[ -z "${def_libdir}" ] && die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
+	[ -z "${def_libdir}" ] &&
+		die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
 
 	# figure out which paths should be symlinks and which should be directories
 	local dirs syms exp d

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
index c32ab3e4495..0428b0afbb9 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-9999.ebuild
@@ -30,7 +30,8 @@ multilib_layout() {
 	libdirs=$(get_all_libdirs)
 	: ${libdirs:=lib}	# it isn't that we don't trust multilib.eclass...
 
-	[ -z "${def_libdir}" ] && die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
+	[ -z "${def_libdir}" ] &&
+		die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
 
 	# figure out which paths should be symlinks and which should be directories
 	local dirs syms exp d


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2018-05-31 20:03 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2018-05-31 20:03 UTC (permalink / raw
  To: gentoo-commits

commit:     6f2f02098247654fb9a38a5252eea301ce827321
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Thu May 31 20:01:38 2018 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Thu May 31 20:01:38 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6f2f0209

sys-apps/baselayout:  remove broken 2.5-r1 version

Package-Manager: Portage-2.3.24, Repoman-2.3.6

 sys-apps/baselayout/Manifest                 |   1 -
 sys-apps/baselayout/baselayout-2.5-r1.ebuild | 272 ---------------------------
 2 files changed, 273 deletions(-)

diff --git a/sys-apps/baselayout/Manifest b/sys-apps/baselayout/Manifest
index e11a0bd8f7d..b9d9da5be83 100644
--- a/sys-apps/baselayout/Manifest
+++ b/sys-apps/baselayout/Manifest
@@ -1,3 +1,2 @@
 DIST baselayout-2.4.1.tar.bz2 31307 BLAKE2B da26f7fbeefa5efecb6e5d9ded6c2bf3148cd1fcfc6ebb86535f5a9c086c4bb55f6a8420a3c0d0f7008251637f3e4653db875ec427745d039f753008d2f21be2 SHA512 e505ad81834aafb574ffee9bc1fce216c1c8c7fa11b0095580f87a37e4b9efb057ee78db7cd5affc64f05d5dd0592c671304414c119b37d86dfaa1e7b84ce7c1
-DIST baselayout-2.5.tar.bz2 31368 BLAKE2B 73a939bf9a180da151804045ff0e57e4def11e9bca8f55b2b891437712877b718faaf7d6ef006161d92e853c747246b20adc7d26105832c5c3120510325cbc67 SHA512 5705740c0be47a7c76d480c1173fd69a5cfc278351f34ab0c4f54220da81617fc4755c8f61888985611f77881cc89b273775fec593915f344076fc3264ea6934
 DIST baselayout-2.6.tar.bz2 31871 BLAKE2B 4a51d173dc5a2837f78cd1247b5eadd89e7d0b5f2dbc72e75f027b0c23a5db9a386c53e756e80240f36ad4d63e3fe421bf9510c18321d7a31fda140ad47b2860 SHA512 5cad5faf56871ae951120643e29db0c39fea6dc845b4755382bd469eca32639ec6cd0cd046d3c439a7cc607b18770036f9c256260d35beaffb094e23cb13740b

diff --git a/sys-apps/baselayout/baselayout-2.5-r1.ebuild b/sys-apps/baselayout/baselayout-2.5-r1.ebuild
deleted file mode 100644
index 866701708dc..00000000000
--- a/sys-apps/baselayout/baselayout-2.5-r1.ebuild
+++ /dev/null
@@ -1,272 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit multilib versionator prefix
-
-DESCRIPTION="Filesystem baselayout and init scripts"
-HOMEPAGE="https://www.gentoo.org/"
-if [[ ${PV} = 9999 ]]; then
-	EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/${PN}.git"
-	inherit git-r3
-else
-	SRC_URI="https://gitweb.gentoo.org/proj/${PN}.git/snapshot/${P}.tar.bz2"
-	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
-fi
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="build kernel_FreeBSD kernel_linux +split-usr"
-
-pkg_setup() {
-	multilib_layout
-}
-
-# Create our multilib dirs - the Makefile has no knowledge of this
-multilib_layout() {
-	local def_libdir libdir libdirs
-	def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
-	libdirs=$(get_all_libdirs)
-	: ${libdirs:=lib}	# it isn't that we don't trust multilib.eclass...
-
-	[ -z "${def_libdir}" ] && die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
-
-	# figure out which paths should be symlinks and which should be directories
-	local dirs syms exp d
-	for libdir in ${libdirs} ; do
-		if use split-usr ; then
-			exp=( {,usr/,usr/local/}${libdir} )
-		else
-			exp=( {usr/,usr/local/}${libdir} )
-		fi
-		for d in "${exp[@]}" ; do
-			# most things should be dirs
-			if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
-				[ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
-			else
-				[ -h "${d}" ] && syms+=" ${d}"
-			fi
-		done
-	done
-	if [ -n "${syms}${dirs}" ] ; then
-		ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
-		ewarn "have these paths configured as follows:"
-		[ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
-		[ -n "${syms}" ] && ewarn "directories:${syms}"
-		ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
-		ewarn "If things fail, you will need to manually create/move the directories."
-		echo
-	fi
-
-	# setup symlinks and dirs where we expect them to be; do not migrate
-	# data ... just fall over in that case.
-	local prefix prefix_lst
-	if use split-usr ; then
-		prefix_lst=( "${EROOT}"{,usr/,usr/local/} )
-	else
-		prefix_lst=( "${EROOT}"{usr/,usr/local/} )
-	fi
-	for prefix in "${prefix_lst[@]}"; do
-		if [ "${SYMLINK_LIB}" = yes ] ; then
-			# we need to make sure "lib" points to the native libdir
-			if [ -h "${prefix}lib" ] ; then
-				# it's already a symlink!  assume it's pointing to right place ...
-				continue
-			elif [ -d "${prefix}lib" ] ; then
-				# "lib" is a dir, so need to convert to a symlink
-				ewarn "Converting ${prefix}lib from a dir to a symlink"
-				rm -f "${prefix}lib"/.keep
-				if rmdir "${prefix}lib" 2>/dev/null ; then
-					ln -s ${def_libdir} "${prefix}lib" || die
-				else
-					die "non-empty dir found where we needed a symlink: ${prefix}lib"
-				fi
-			else
-				# nothing exists, so just set it up sanely
-				ewarn "Initializing ${prefix}lib as a symlink"
-				mkdir -p "${prefix}" || die
-				rm -f "${prefix}lib" || die
-				ln -s ${def_libdir} "${prefix}lib" || die
-				mkdir -p "${prefix}${def_libdir}" #423571
-			fi
-		else
-			# we need to make sure "lib" is a dir
-			if [ -h "${prefix}lib" ] ; then
-				# "lib" is a symlink, so need to convert to a dir
-				ewarn "Converting ${prefix}lib from a symlink to a dir"
-				rm -f "${prefix}lib" || die
-				if [ -d "${prefix}lib32" ] ; then
-					ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
-					mv "${prefix}lib32" "${prefix}lib" || die
-				else
-					mkdir -p "${prefix}lib" || die
-				fi
-			elif [ -d "${prefix}lib" ] && ! has lib32 ${libdirs} ; then
-				# make sure the old "lib" ABI location does not exist; we
-				# only symlinked the lib dir on systems where we moved it
-				# to "lib32" ...
-				case ${CHOST} in
-				*-gentoo-freebsd*) ;; # We want it the other way on fbsd.
-				i?86*|x86_64*|powerpc*|sparc*|s390*)
-					if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
-						rm -f "${prefix}lib32"/.keep
-						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
-							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
-							die "non-empty dir found where there should be none: ${prefix}lib32"
-						fi
-					fi
-					;;
-				esac
-			else
-				# nothing exists, so just set it up sanely
-				ewarn "Initializing ${prefix}lib as a dir"
-				mkdir -p "${prefix}lib" || die
-			fi
-		fi
-	done
-	if ! use split-usr ; then
-		for libdir in ${libdirs}; do
-			if [[ ! -e "${EROOT}${libdir}" ]]; then
-				ln -s usr/"${libdir}" "${EROOT}${libdir}"
-			fi
-		done
-	fi
-}
-
-pkg_preinst() {
-	# This is written in src_install (so it's in CONTENTS), but punt all
-	# pending updates to avoid user having to do etc-update (and make the
-	# pkg_postinst logic simpler).
-	rm -f "${EROOT}"/etc/._cfg????_gentoo-release
-
-	# We need to install directories and maybe some dev nodes when building
-	# stages, but they cannot be in CONTENTS.
-	# Also, we cannot reference $S as binpkg will break so we do this.
-	multilib_layout
-	if use build ; then
-		if use split-usr ; then
-			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
-		else
-			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
-		fi
-	fi
-	rm -f "${ED}"/usr/share/${PN}/Makefile
-}
-
-src_prepare() {
-	default
-	if use prefix; then
-		hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
-		hprefixify etc/{env.d/50baselayout,shells} share.Linux/passwd
-		echo PATH=/usr/bin:/bin >> etc/env.d/99host
-		echo ROOTPATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
-	fi
-
-	# handle multilib paths.  do it here because we want this behavior
-	# regardless of the C library that you're using.  we do explicitly
-	# list paths which the native ldconfig searches, but this isn't
-	# problematic as it doesn't change the resulting ld.so.cache or
-	# take longer to generate.  similarly, listing both the native
-	# path and the symlinked path doesn't change the resulting cache.
-	local libdir ldpaths
-	for libdir in $(get_all_libdirs) ; do
-		ldpaths+=":${EPREFIX}/${libdir}:${EPREFIX}/usr/${libdir}"
-		ldpaths+=":${EPREFIX}/usr/local/${libdir}"
-	done
-	echo "LDPATH='${ldpaths#:}'" >> etc/env.d/50baselayout
-
-	# rc-scripts version for testing of features that *should* be present
-	echo "Gentoo Base System release ${PV}" > etc/gentoo-release
-}
-
-src_install() {
-	emake \
-		OS=$(usex kernel_FreeBSD BSD Linux) \
-		DESTDIR="${ED}" \
-		install
-	dodoc ChangeLog
-
-	# need the makefile in pkg_preinst
-	insinto /usr/share/${PN}
-	doins Makefile
-}
-
-pkg_postinst() {
-	local x
-
-	# We installed some files to /usr/share/baselayout instead of /etc to stop
-	# (1) overwriting the user's settings
-	# (2) screwing things up when attempting to merge files
-	# (3) accidentally packaging up personal files with quickpkg
-	# If they don't exist then we install them
-	for x in master.passwd passwd shadow group fstab ; do
-		[ -e "${EROOT}etc/${x}" ] && continue
-		[ -e "${EROOT}usr/share/baselayout/${x}" ] || continue
-		cp -p "${EROOT}usr/share/baselayout/${x}" "${EROOT}"etc
-	done
-
-	# Force shadow permissions to not be world-readable #260993
-	for x in shadow ; do
-		[ -e "${EROOT}etc/${x}" ] && chmod o-rwx "${EROOT}etc/${x}"
-	done
-
-	# Take care of the etc-update for the user
-	if [ -e "${EROOT}"etc/._cfg0000_gentoo-release ] ; then
-		mv "${EROOT}"etc/._cfg0000_gentoo-release "${EROOT}"etc/gentoo-release
-	fi
-
-	# whine about users that lack passwords #193541
-	if [[ -e "${EROOT}"etc/shadow ]] ; then
-		local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
-		if [[ -n ${bad_users} ]] ; then
-			echo
-			ewarn "The following users lack passwords!"
-			ewarn ${bad_users}
-		fi
-	fi
-
-	# whine about users with invalid shells #215698
-	if [[ -e "${EROOT}"etc/passwd ]] ; then
-		local bad_shells=$(awk -F: 'system("test -e " $7) { print $1 " - " $7}' "${EROOT}"etc/passwd | sort)
-		if [[ -n ${bad_shells} ]] ; then
-			echo
-			ewarn "The following users have non-existent shells!"
-			ewarn "${bad_shells}"
-		fi
-	fi
-
-	# https://bugs.gentoo.org/361349
-	if use kernel_linux; then
-		mkdir -p "${EROOT}"run
-
-		local found fstype mountpoint
-		while read -r _ mountpoint fstype _; do
-		[[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
-		done < "${ROOT}"proc/mounts
-		[[ -z ${found} ]] &&
-			ewarn "You should reboot now to get /run mounted with tmpfs!"
-	fi
-
-	for x in ${REPLACING_VERSIONS}; do
-		if ! version_is_at_least 2.4 ${x}; then
-			ewarn "After updating ${EROOT}etc/profile, please run"
-			ewarn "env-update && . /etc/profile"
-		fi
-
-		if ! version_is_at_least 2.5 ${x}; then
-			ewarn "Please run env-update then log out and back in to"
-			ewarn "update your path."
-		fi
-		# clean up after 2.5 typos
-		# https://bugs.gentoo.org/show_bug.cgi?id=656380
-		if [[ ${x} == 2.5 ]]; then
-			rm -fr "${EROOT}{,usr"
-		fi
-	done
-
-	if [[ -e "${EROOT}"etc/env.d/00basic ]]; then
-		ewarn "${EROOT}etc/env.d/00basic is now ${EROOT}etc/env.d/50baselayout"
-		ewarn "Please migrate your changes."
-	fi
-}


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2018-05-29  0:53 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2018-05-29  0:53 UTC (permalink / raw
  To: gentoo-commits

commit:     80e77709f57eea217fc9ca79c9ef648c843f8259
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Tue May 29 00:51:47 2018 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Tue May 29 00:53:02 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=80e77709

sys-apps/baselayout: sync live ebuild

Package-Manager: Portage-2.3.24, Repoman-2.3.6

 sys-apps/baselayout/baselayout-9999.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
index 866701708dc..c32ab3e4495 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-9999.ebuild
@@ -254,7 +254,7 @@ pkg_postinst() {
 			ewarn "env-update && . /etc/profile"
 		fi
 
-		if ! version_is_at_least 2.5 ${x}; then
+		if ! version_is_at_least 2.6 ${x}; then
 			ewarn "Please run env-update then log out and back in to"
 			ewarn "update your path."
 		fi


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2018-05-28 20:19 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2018-05-28 20:19 UTC (permalink / raw
  To: gentoo-commits

commit:     b48a095d8b961b269304dfab948c80bf557f2386
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Mon May 28 20:18:46 2018 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Mon May 28 20:18:46 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b48a095d

sys-apps/baselayout-2.6: typo fix

 sys-apps/baselayout/baselayout-2.6.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys-apps/baselayout/baselayout-2.6.ebuild b/sys-apps/baselayout/baselayout-2.6.ebuild
index 866701708dc..c32ab3e4495 100644
--- a/sys-apps/baselayout/baselayout-2.6.ebuild
+++ b/sys-apps/baselayout/baselayout-2.6.ebuild
@@ -254,7 +254,7 @@ pkg_postinst() {
 			ewarn "env-update && . /etc/profile"
 		fi
 
-		if ! version_is_at_least 2.5 ${x}; then
+		if ! version_is_at_least 2.6 ${x}; then
 			ewarn "Please run env-update then log out and back in to"
 			ewarn "update your path."
 		fi


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2018-05-28 20:14 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2018-05-28 20:14 UTC (permalink / raw
  To: gentoo-commits

commit:     f20b3833cb60131d3a725cbe0789ab45037655ea
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Mon May 28 20:12:49 2018 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Mon May 28 20:13:41 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f20b3833

sys-apps/baselayout: 2.6 bump

Package-Manager: Portage-2.3.24, Repoman-2.3.6

 sys-apps/baselayout/Manifest              |   1 +
 sys-apps/baselayout/baselayout-2.6.ebuild | 272 ++++++++++++++++++++++++++++++
 2 files changed, 273 insertions(+)

diff --git a/sys-apps/baselayout/Manifest b/sys-apps/baselayout/Manifest
index 0512ad54a4a..e11a0bd8f7d 100644
--- a/sys-apps/baselayout/Manifest
+++ b/sys-apps/baselayout/Manifest
@@ -1,2 +1,3 @@
 DIST baselayout-2.4.1.tar.bz2 31307 BLAKE2B da26f7fbeefa5efecb6e5d9ded6c2bf3148cd1fcfc6ebb86535f5a9c086c4bb55f6a8420a3c0d0f7008251637f3e4653db875ec427745d039f753008d2f21be2 SHA512 e505ad81834aafb574ffee9bc1fce216c1c8c7fa11b0095580f87a37e4b9efb057ee78db7cd5affc64f05d5dd0592c671304414c119b37d86dfaa1e7b84ce7c1
 DIST baselayout-2.5.tar.bz2 31368 BLAKE2B 73a939bf9a180da151804045ff0e57e4def11e9bca8f55b2b891437712877b718faaf7d6ef006161d92e853c747246b20adc7d26105832c5c3120510325cbc67 SHA512 5705740c0be47a7c76d480c1173fd69a5cfc278351f34ab0c4f54220da81617fc4755c8f61888985611f77881cc89b273775fec593915f344076fc3264ea6934
+DIST baselayout-2.6.tar.bz2 31871 BLAKE2B 4a51d173dc5a2837f78cd1247b5eadd89e7d0b5f2dbc72e75f027b0c23a5db9a386c53e756e80240f36ad4d63e3fe421bf9510c18321d7a31fda140ad47b2860 SHA512 5cad5faf56871ae951120643e29db0c39fea6dc845b4755382bd469eca32639ec6cd0cd046d3c439a7cc607b18770036f9c256260d35beaffb094e23cb13740b

diff --git a/sys-apps/baselayout/baselayout-2.6.ebuild b/sys-apps/baselayout/baselayout-2.6.ebuild
new file mode 100644
index 00000000000..866701708dc
--- /dev/null
+++ b/sys-apps/baselayout/baselayout-2.6.ebuild
@@ -0,0 +1,272 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit multilib versionator prefix
+
+DESCRIPTION="Filesystem baselayout and init scripts"
+HOMEPAGE="https://www.gentoo.org/"
+if [[ ${PV} = 9999 ]]; then
+	EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/${PN}.git"
+	inherit git-r3
+else
+	SRC_URI="https://gitweb.gentoo.org/proj/${PN}.git/snapshot/${P}.tar.bz2"
+	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="build kernel_FreeBSD kernel_linux +split-usr"
+
+pkg_setup() {
+	multilib_layout
+}
+
+# Create our multilib dirs - the Makefile has no knowledge of this
+multilib_layout() {
+	local def_libdir libdir libdirs
+	def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
+	libdirs=$(get_all_libdirs)
+	: ${libdirs:=lib}	# it isn't that we don't trust multilib.eclass...
+
+	[ -z "${def_libdir}" ] && die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
+
+	# figure out which paths should be symlinks and which should be directories
+	local dirs syms exp d
+	for libdir in ${libdirs} ; do
+		if use split-usr ; then
+			exp=( {,usr/,usr/local/}${libdir} )
+		else
+			exp=( {usr/,usr/local/}${libdir} )
+		fi
+		for d in "${exp[@]}" ; do
+			# most things should be dirs
+			if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
+				[ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
+			else
+				[ -h "${d}" ] && syms+=" ${d}"
+			fi
+		done
+	done
+	if [ -n "${syms}${dirs}" ] ; then
+		ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
+		ewarn "have these paths configured as follows:"
+		[ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
+		[ -n "${syms}" ] && ewarn "directories:${syms}"
+		ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
+		ewarn "If things fail, you will need to manually create/move the directories."
+		echo
+	fi
+
+	# setup symlinks and dirs where we expect them to be; do not migrate
+	# data ... just fall over in that case.
+	local prefix prefix_lst
+	if use split-usr ; then
+		prefix_lst=( "${EROOT}"{,usr/,usr/local/} )
+	else
+		prefix_lst=( "${EROOT}"{usr/,usr/local/} )
+	fi
+	for prefix in "${prefix_lst[@]}"; do
+		if [ "${SYMLINK_LIB}" = yes ] ; then
+			# we need to make sure "lib" points to the native libdir
+			if [ -h "${prefix}lib" ] ; then
+				# it's already a symlink!  assume it's pointing to right place ...
+				continue
+			elif [ -d "${prefix}lib" ] ; then
+				# "lib" is a dir, so need to convert to a symlink
+				ewarn "Converting ${prefix}lib from a dir to a symlink"
+				rm -f "${prefix}lib"/.keep
+				if rmdir "${prefix}lib" 2>/dev/null ; then
+					ln -s ${def_libdir} "${prefix}lib" || die
+				else
+					die "non-empty dir found where we needed a symlink: ${prefix}lib"
+				fi
+			else
+				# nothing exists, so just set it up sanely
+				ewarn "Initializing ${prefix}lib as a symlink"
+				mkdir -p "${prefix}" || die
+				rm -f "${prefix}lib" || die
+				ln -s ${def_libdir} "${prefix}lib" || die
+				mkdir -p "${prefix}${def_libdir}" #423571
+			fi
+		else
+			# we need to make sure "lib" is a dir
+			if [ -h "${prefix}lib" ] ; then
+				# "lib" is a symlink, so need to convert to a dir
+				ewarn "Converting ${prefix}lib from a symlink to a dir"
+				rm -f "${prefix}lib" || die
+				if [ -d "${prefix}lib32" ] ; then
+					ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
+					mv "${prefix}lib32" "${prefix}lib" || die
+				else
+					mkdir -p "${prefix}lib" || die
+				fi
+			elif [ -d "${prefix}lib" ] && ! has lib32 ${libdirs} ; then
+				# make sure the old "lib" ABI location does not exist; we
+				# only symlinked the lib dir on systems where we moved it
+				# to "lib32" ...
+				case ${CHOST} in
+				*-gentoo-freebsd*) ;; # We want it the other way on fbsd.
+				i?86*|x86_64*|powerpc*|sparc*|s390*)
+					if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
+						rm -f "${prefix}lib32"/.keep
+						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
+							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
+							die "non-empty dir found where there should be none: ${prefix}lib32"
+						fi
+					fi
+					;;
+				esac
+			else
+				# nothing exists, so just set it up sanely
+				ewarn "Initializing ${prefix}lib as a dir"
+				mkdir -p "${prefix}lib" || die
+			fi
+		fi
+	done
+	if ! use split-usr ; then
+		for libdir in ${libdirs}; do
+			if [[ ! -e "${EROOT}${libdir}" ]]; then
+				ln -s usr/"${libdir}" "${EROOT}${libdir}"
+			fi
+		done
+	fi
+}
+
+pkg_preinst() {
+	# This is written in src_install (so it's in CONTENTS), but punt all
+	# pending updates to avoid user having to do etc-update (and make the
+	# pkg_postinst logic simpler).
+	rm -f "${EROOT}"/etc/._cfg????_gentoo-release
+
+	# We need to install directories and maybe some dev nodes when building
+	# stages, but they cannot be in CONTENTS.
+	# Also, we cannot reference $S as binpkg will break so we do this.
+	multilib_layout
+	if use build ; then
+		if use split-usr ; then
+			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
+		else
+			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
+		fi
+	fi
+	rm -f "${ED}"/usr/share/${PN}/Makefile
+}
+
+src_prepare() {
+	default
+	if use prefix; then
+		hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
+		hprefixify etc/{env.d/50baselayout,shells} share.Linux/passwd
+		echo PATH=/usr/bin:/bin >> etc/env.d/99host
+		echo ROOTPATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
+	fi
+
+	# handle multilib paths.  do it here because we want this behavior
+	# regardless of the C library that you're using.  we do explicitly
+	# list paths which the native ldconfig searches, but this isn't
+	# problematic as it doesn't change the resulting ld.so.cache or
+	# take longer to generate.  similarly, listing both the native
+	# path and the symlinked path doesn't change the resulting cache.
+	local libdir ldpaths
+	for libdir in $(get_all_libdirs) ; do
+		ldpaths+=":${EPREFIX}/${libdir}:${EPREFIX}/usr/${libdir}"
+		ldpaths+=":${EPREFIX}/usr/local/${libdir}"
+	done
+	echo "LDPATH='${ldpaths#:}'" >> etc/env.d/50baselayout
+
+	# rc-scripts version for testing of features that *should* be present
+	echo "Gentoo Base System release ${PV}" > etc/gentoo-release
+}
+
+src_install() {
+	emake \
+		OS=$(usex kernel_FreeBSD BSD Linux) \
+		DESTDIR="${ED}" \
+		install
+	dodoc ChangeLog
+
+	# need the makefile in pkg_preinst
+	insinto /usr/share/${PN}
+	doins Makefile
+}
+
+pkg_postinst() {
+	local x
+
+	# We installed some files to /usr/share/baselayout instead of /etc to stop
+	# (1) overwriting the user's settings
+	# (2) screwing things up when attempting to merge files
+	# (3) accidentally packaging up personal files with quickpkg
+	# If they don't exist then we install them
+	for x in master.passwd passwd shadow group fstab ; do
+		[ -e "${EROOT}etc/${x}" ] && continue
+		[ -e "${EROOT}usr/share/baselayout/${x}" ] || continue
+		cp -p "${EROOT}usr/share/baselayout/${x}" "${EROOT}"etc
+	done
+
+	# Force shadow permissions to not be world-readable #260993
+	for x in shadow ; do
+		[ -e "${EROOT}etc/${x}" ] && chmod o-rwx "${EROOT}etc/${x}"
+	done
+
+	# Take care of the etc-update for the user
+	if [ -e "${EROOT}"etc/._cfg0000_gentoo-release ] ; then
+		mv "${EROOT}"etc/._cfg0000_gentoo-release "${EROOT}"etc/gentoo-release
+	fi
+
+	# whine about users that lack passwords #193541
+	if [[ -e "${EROOT}"etc/shadow ]] ; then
+		local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
+		if [[ -n ${bad_users} ]] ; then
+			echo
+			ewarn "The following users lack passwords!"
+			ewarn ${bad_users}
+		fi
+	fi
+
+	# whine about users with invalid shells #215698
+	if [[ -e "${EROOT}"etc/passwd ]] ; then
+		local bad_shells=$(awk -F: 'system("test -e " $7) { print $1 " - " $7}' "${EROOT}"etc/passwd | sort)
+		if [[ -n ${bad_shells} ]] ; then
+			echo
+			ewarn "The following users have non-existent shells!"
+			ewarn "${bad_shells}"
+		fi
+	fi
+
+	# https://bugs.gentoo.org/361349
+	if use kernel_linux; then
+		mkdir -p "${EROOT}"run
+
+		local found fstype mountpoint
+		while read -r _ mountpoint fstype _; do
+		[[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
+		done < "${ROOT}"proc/mounts
+		[[ -z ${found} ]] &&
+			ewarn "You should reboot now to get /run mounted with tmpfs!"
+	fi
+
+	for x in ${REPLACING_VERSIONS}; do
+		if ! version_is_at_least 2.4 ${x}; then
+			ewarn "After updating ${EROOT}etc/profile, please run"
+			ewarn "env-update && . /etc/profile"
+		fi
+
+		if ! version_is_at_least 2.5 ${x}; then
+			ewarn "Please run env-update then log out and back in to"
+			ewarn "update your path."
+		fi
+		# clean up after 2.5 typos
+		# https://bugs.gentoo.org/show_bug.cgi?id=656380
+		if [[ ${x} == 2.5 ]]; then
+			rm -fr "${EROOT}{,usr"
+		fi
+	done
+
+	if [[ -e "${EROOT}"etc/env.d/00basic ]]; then
+		ewarn "${EROOT}etc/env.d/00basic is now ${EROOT}etc/env.d/50baselayout"
+		ewarn "Please migrate your changes."
+	fi
+}


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2018-05-24 17:13 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2018-05-24 17:13 UTC (permalink / raw
  To: gentoo-commits

commit:     bc57417ab8fc26344b67634ef95cb9f1cc8b27f5
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Thu May 24 17:11:35 2018 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Thu May 24 17:13:44 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bc57417a

sys-apps/baselayout: sync live ebuild

Package-Manager: Portage-2.3.24, Repoman-2.3.6

 sys-apps/baselayout/baselayout-9999.ebuild | 11 ++++++++---
 1 file changed, 8 insertions(+), 3 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
index 2d016a01e5b..866701708dc 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-9999.ebuild
@@ -63,11 +63,11 @@ multilib_layout() {
 	# data ... just fall over in that case.
 	local prefix prefix_lst
 	if use split-usr ; then
-		prefix_lst="${EROOT}"{,usr/,usr/local/}
+		prefix_lst=( "${EROOT}"{,usr/,usr/local/} )
 	else
-		prefix_lst="${EROOT}"{usr/,usr/local/}
+		prefix_lst=( "${EROOT}"{usr/,usr/local/} )
 	fi
-	for prefix in "${prefix_lst}"; do
+	for prefix in "${prefix_lst[@]}"; do
 		if [ "${SYMLINK_LIB}" = yes ] ; then
 			# we need to make sure "lib" points to the native libdir
 			if [ -h "${prefix}lib" ] ; then
@@ -258,6 +258,11 @@ pkg_postinst() {
 			ewarn "Please run env-update then log out and back in to"
 			ewarn "update your path."
 		fi
+		# clean up after 2.5 typos
+		# https://bugs.gentoo.org/show_bug.cgi?id=656380
+		if [[ ${x} == 2.5 ]]; then
+			rm -fr "${EROOT}{,usr"
+		fi
 	done
 
 	if [[ -e "${EROOT}"etc/env.d/00basic ]]; then


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2018-05-24 15:49 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2018-05-24 15:49 UTC (permalink / raw
  To: gentoo-commits

commit:     261af461654f7df645f9f28b199a2136adf625b6
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Thu May 24 15:41:38 2018 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Thu May 24 15:48:47 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=261af461

sys-apps/baselayout: remove broken 2.5 version

Package-Manager: Portage-2.3.24, Repoman-2.3.6

 sys-apps/baselayout/baselayout-2.5.ebuild | 267 ------------------------------
 1 file changed, 267 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-2.5.ebuild b/sys-apps/baselayout/baselayout-2.5.ebuild
deleted file mode 100644
index 2d016a01e5b..00000000000
--- a/sys-apps/baselayout/baselayout-2.5.ebuild
+++ /dev/null
@@ -1,267 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit multilib versionator prefix
-
-DESCRIPTION="Filesystem baselayout and init scripts"
-HOMEPAGE="https://www.gentoo.org/"
-if [[ ${PV} = 9999 ]]; then
-	EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/${PN}.git"
-	inherit git-r3
-else
-	SRC_URI="https://gitweb.gentoo.org/proj/${PN}.git/snapshot/${P}.tar.bz2"
-	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
-fi
-
-LICENSE="GPL-2"
-SLOT="0"
-IUSE="build kernel_FreeBSD kernel_linux +split-usr"
-
-pkg_setup() {
-	multilib_layout
-}
-
-# Create our multilib dirs - the Makefile has no knowledge of this
-multilib_layout() {
-	local def_libdir libdir libdirs
-	def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
-	libdirs=$(get_all_libdirs)
-	: ${libdirs:=lib}	# it isn't that we don't trust multilib.eclass...
-
-	[ -z "${def_libdir}" ] && die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
-
-	# figure out which paths should be symlinks and which should be directories
-	local dirs syms exp d
-	for libdir in ${libdirs} ; do
-		if use split-usr ; then
-			exp=( {,usr/,usr/local/}${libdir} )
-		else
-			exp=( {usr/,usr/local/}${libdir} )
-		fi
-		for d in "${exp[@]}" ; do
-			# most things should be dirs
-			if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
-				[ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
-			else
-				[ -h "${d}" ] && syms+=" ${d}"
-			fi
-		done
-	done
-	if [ -n "${syms}${dirs}" ] ; then
-		ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
-		ewarn "have these paths configured as follows:"
-		[ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
-		[ -n "${syms}" ] && ewarn "directories:${syms}"
-		ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
-		ewarn "If things fail, you will need to manually create/move the directories."
-		echo
-	fi
-
-	# setup symlinks and dirs where we expect them to be; do not migrate
-	# data ... just fall over in that case.
-	local prefix prefix_lst
-	if use split-usr ; then
-		prefix_lst="${EROOT}"{,usr/,usr/local/}
-	else
-		prefix_lst="${EROOT}"{usr/,usr/local/}
-	fi
-	for prefix in "${prefix_lst}"; do
-		if [ "${SYMLINK_LIB}" = yes ] ; then
-			# we need to make sure "lib" points to the native libdir
-			if [ -h "${prefix}lib" ] ; then
-				# it's already a symlink!  assume it's pointing to right place ...
-				continue
-			elif [ -d "${prefix}lib" ] ; then
-				# "lib" is a dir, so need to convert to a symlink
-				ewarn "Converting ${prefix}lib from a dir to a symlink"
-				rm -f "${prefix}lib"/.keep
-				if rmdir "${prefix}lib" 2>/dev/null ; then
-					ln -s ${def_libdir} "${prefix}lib" || die
-				else
-					die "non-empty dir found where we needed a symlink: ${prefix}lib"
-				fi
-			else
-				# nothing exists, so just set it up sanely
-				ewarn "Initializing ${prefix}lib as a symlink"
-				mkdir -p "${prefix}" || die
-				rm -f "${prefix}lib" || die
-				ln -s ${def_libdir} "${prefix}lib" || die
-				mkdir -p "${prefix}${def_libdir}" #423571
-			fi
-		else
-			# we need to make sure "lib" is a dir
-			if [ -h "${prefix}lib" ] ; then
-				# "lib" is a symlink, so need to convert to a dir
-				ewarn "Converting ${prefix}lib from a symlink to a dir"
-				rm -f "${prefix}lib" || die
-				if [ -d "${prefix}lib32" ] ; then
-					ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
-					mv "${prefix}lib32" "${prefix}lib" || die
-				else
-					mkdir -p "${prefix}lib" || die
-				fi
-			elif [ -d "${prefix}lib" ] && ! has lib32 ${libdirs} ; then
-				# make sure the old "lib" ABI location does not exist; we
-				# only symlinked the lib dir on systems where we moved it
-				# to "lib32" ...
-				case ${CHOST} in
-				*-gentoo-freebsd*) ;; # We want it the other way on fbsd.
-				i?86*|x86_64*|powerpc*|sparc*|s390*)
-					if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
-						rm -f "${prefix}lib32"/.keep
-						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
-							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
-							die "non-empty dir found where there should be none: ${prefix}lib32"
-						fi
-					fi
-					;;
-				esac
-			else
-				# nothing exists, so just set it up sanely
-				ewarn "Initializing ${prefix}lib as a dir"
-				mkdir -p "${prefix}lib" || die
-			fi
-		fi
-	done
-	if ! use split-usr ; then
-		for libdir in ${libdirs}; do
-			if [[ ! -e "${EROOT}${libdir}" ]]; then
-				ln -s usr/"${libdir}" "${EROOT}${libdir}"
-			fi
-		done
-	fi
-}
-
-pkg_preinst() {
-	# This is written in src_install (so it's in CONTENTS), but punt all
-	# pending updates to avoid user having to do etc-update (and make the
-	# pkg_postinst logic simpler).
-	rm -f "${EROOT}"/etc/._cfg????_gentoo-release
-
-	# We need to install directories and maybe some dev nodes when building
-	# stages, but they cannot be in CONTENTS.
-	# Also, we cannot reference $S as binpkg will break so we do this.
-	multilib_layout
-	if use build ; then
-		if use split-usr ; then
-			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
-		else
-			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
-		fi
-	fi
-	rm -f "${ED}"/usr/share/${PN}/Makefile
-}
-
-src_prepare() {
-	default
-	if use prefix; then
-		hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
-		hprefixify etc/{env.d/50baselayout,shells} share.Linux/passwd
-		echo PATH=/usr/bin:/bin >> etc/env.d/99host
-		echo ROOTPATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
-	fi
-
-	# handle multilib paths.  do it here because we want this behavior
-	# regardless of the C library that you're using.  we do explicitly
-	# list paths which the native ldconfig searches, but this isn't
-	# problematic as it doesn't change the resulting ld.so.cache or
-	# take longer to generate.  similarly, listing both the native
-	# path and the symlinked path doesn't change the resulting cache.
-	local libdir ldpaths
-	for libdir in $(get_all_libdirs) ; do
-		ldpaths+=":${EPREFIX}/${libdir}:${EPREFIX}/usr/${libdir}"
-		ldpaths+=":${EPREFIX}/usr/local/${libdir}"
-	done
-	echo "LDPATH='${ldpaths#:}'" >> etc/env.d/50baselayout
-
-	# rc-scripts version for testing of features that *should* be present
-	echo "Gentoo Base System release ${PV}" > etc/gentoo-release
-}
-
-src_install() {
-	emake \
-		OS=$(usex kernel_FreeBSD BSD Linux) \
-		DESTDIR="${ED}" \
-		install
-	dodoc ChangeLog
-
-	# need the makefile in pkg_preinst
-	insinto /usr/share/${PN}
-	doins Makefile
-}
-
-pkg_postinst() {
-	local x
-
-	# We installed some files to /usr/share/baselayout instead of /etc to stop
-	# (1) overwriting the user's settings
-	# (2) screwing things up when attempting to merge files
-	# (3) accidentally packaging up personal files with quickpkg
-	# If they don't exist then we install them
-	for x in master.passwd passwd shadow group fstab ; do
-		[ -e "${EROOT}etc/${x}" ] && continue
-		[ -e "${EROOT}usr/share/baselayout/${x}" ] || continue
-		cp -p "${EROOT}usr/share/baselayout/${x}" "${EROOT}"etc
-	done
-
-	# Force shadow permissions to not be world-readable #260993
-	for x in shadow ; do
-		[ -e "${EROOT}etc/${x}" ] && chmod o-rwx "${EROOT}etc/${x}"
-	done
-
-	# Take care of the etc-update for the user
-	if [ -e "${EROOT}"etc/._cfg0000_gentoo-release ] ; then
-		mv "${EROOT}"etc/._cfg0000_gentoo-release "${EROOT}"etc/gentoo-release
-	fi
-
-	# whine about users that lack passwords #193541
-	if [[ -e "${EROOT}"etc/shadow ]] ; then
-		local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
-		if [[ -n ${bad_users} ]] ; then
-			echo
-			ewarn "The following users lack passwords!"
-			ewarn ${bad_users}
-		fi
-	fi
-
-	# whine about users with invalid shells #215698
-	if [[ -e "${EROOT}"etc/passwd ]] ; then
-		local bad_shells=$(awk -F: 'system("test -e " $7) { print $1 " - " $7}' "${EROOT}"etc/passwd | sort)
-		if [[ -n ${bad_shells} ]] ; then
-			echo
-			ewarn "The following users have non-existent shells!"
-			ewarn "${bad_shells}"
-		fi
-	fi
-
-	# https://bugs.gentoo.org/361349
-	if use kernel_linux; then
-		mkdir -p "${EROOT}"run
-
-		local found fstype mountpoint
-		while read -r _ mountpoint fstype _; do
-		[[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
-		done < "${ROOT}"proc/mounts
-		[[ -z ${found} ]] &&
-			ewarn "You should reboot now to get /run mounted with tmpfs!"
-	fi
-
-	for x in ${REPLACING_VERSIONS}; do
-		if ! version_is_at_least 2.4 ${x}; then
-			ewarn "After updating ${EROOT}etc/profile, please run"
-			ewarn "env-update && . /etc/profile"
-		fi
-
-		if ! version_is_at_least 2.5 ${x}; then
-			ewarn "Please run env-update then log out and back in to"
-			ewarn "update your path."
-		fi
-	done
-
-	if [[ -e "${EROOT}"etc/env.d/00basic ]]; then
-		ewarn "${EROOT}etc/env.d/00basic is now ${EROOT}etc/env.d/50baselayout"
-		ewarn "Please migrate your changes."
-	fi
-}


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2018-05-23 22:06 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2018-05-23 22:06 UTC (permalink / raw
  To: gentoo-commits

commit:     cab9f91ab52211bde36ad5a28ee5ea3eebb5c6df
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Wed May 23 22:00:05 2018 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Wed May 23 22:00:44 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cab9f91a

sys-apps/baselayout: 2.5 version bump

Package-Manager: Portage-2.3.24, Repoman-2.3.6

 sys-apps/baselayout/Manifest              |   1 +
 sys-apps/baselayout/baselayout-2.5.ebuild | 267 ++++++++++++++++++++++++++++++
 2 files changed, 268 insertions(+)

diff --git a/sys-apps/baselayout/Manifest b/sys-apps/baselayout/Manifest
index 33d8ce22d8f..0512ad54a4a 100644
--- a/sys-apps/baselayout/Manifest
+++ b/sys-apps/baselayout/Manifest
@@ -1 +1,2 @@
 DIST baselayout-2.4.1.tar.bz2 31307 BLAKE2B da26f7fbeefa5efecb6e5d9ded6c2bf3148cd1fcfc6ebb86535f5a9c086c4bb55f6a8420a3c0d0f7008251637f3e4653db875ec427745d039f753008d2f21be2 SHA512 e505ad81834aafb574ffee9bc1fce216c1c8c7fa11b0095580f87a37e4b9efb057ee78db7cd5affc64f05d5dd0592c671304414c119b37d86dfaa1e7b84ce7c1
+DIST baselayout-2.5.tar.bz2 31368 BLAKE2B 73a939bf9a180da151804045ff0e57e4def11e9bca8f55b2b891437712877b718faaf7d6ef006161d92e853c747246b20adc7d26105832c5c3120510325cbc67 SHA512 5705740c0be47a7c76d480c1173fd69a5cfc278351f34ab0c4f54220da81617fc4755c8f61888985611f77881cc89b273775fec593915f344076fc3264ea6934

diff --git a/sys-apps/baselayout/baselayout-2.5.ebuild b/sys-apps/baselayout/baselayout-2.5.ebuild
new file mode 100644
index 00000000000..2d016a01e5b
--- /dev/null
+++ b/sys-apps/baselayout/baselayout-2.5.ebuild
@@ -0,0 +1,267 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit multilib versionator prefix
+
+DESCRIPTION="Filesystem baselayout and init scripts"
+HOMEPAGE="https://www.gentoo.org/"
+if [[ ${PV} = 9999 ]]; then
+	EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/${PN}.git"
+	inherit git-r3
+else
+	SRC_URI="https://gitweb.gentoo.org/proj/${PN}.git/snapshot/${P}.tar.bz2"
+	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="build kernel_FreeBSD kernel_linux +split-usr"
+
+pkg_setup() {
+	multilib_layout
+}
+
+# Create our multilib dirs - the Makefile has no knowledge of this
+multilib_layout() {
+	local def_libdir libdir libdirs
+	def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
+	libdirs=$(get_all_libdirs)
+	: ${libdirs:=lib}	# it isn't that we don't trust multilib.eclass...
+
+	[ -z "${def_libdir}" ] && die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
+
+	# figure out which paths should be symlinks and which should be directories
+	local dirs syms exp d
+	for libdir in ${libdirs} ; do
+		if use split-usr ; then
+			exp=( {,usr/,usr/local/}${libdir} )
+		else
+			exp=( {usr/,usr/local/}${libdir} )
+		fi
+		for d in "${exp[@]}" ; do
+			# most things should be dirs
+			if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
+				[ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
+			else
+				[ -h "${d}" ] && syms+=" ${d}"
+			fi
+		done
+	done
+	if [ -n "${syms}${dirs}" ] ; then
+		ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
+		ewarn "have these paths configured as follows:"
+		[ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
+		[ -n "${syms}" ] && ewarn "directories:${syms}"
+		ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
+		ewarn "If things fail, you will need to manually create/move the directories."
+		echo
+	fi
+
+	# setup symlinks and dirs where we expect them to be; do not migrate
+	# data ... just fall over in that case.
+	local prefix prefix_lst
+	if use split-usr ; then
+		prefix_lst="${EROOT}"{,usr/,usr/local/}
+	else
+		prefix_lst="${EROOT}"{usr/,usr/local/}
+	fi
+	for prefix in "${prefix_lst}"; do
+		if [ "${SYMLINK_LIB}" = yes ] ; then
+			# we need to make sure "lib" points to the native libdir
+			if [ -h "${prefix}lib" ] ; then
+				# it's already a symlink!  assume it's pointing to right place ...
+				continue
+			elif [ -d "${prefix}lib" ] ; then
+				# "lib" is a dir, so need to convert to a symlink
+				ewarn "Converting ${prefix}lib from a dir to a symlink"
+				rm -f "${prefix}lib"/.keep
+				if rmdir "${prefix}lib" 2>/dev/null ; then
+					ln -s ${def_libdir} "${prefix}lib" || die
+				else
+					die "non-empty dir found where we needed a symlink: ${prefix}lib"
+				fi
+			else
+				# nothing exists, so just set it up sanely
+				ewarn "Initializing ${prefix}lib as a symlink"
+				mkdir -p "${prefix}" || die
+				rm -f "${prefix}lib" || die
+				ln -s ${def_libdir} "${prefix}lib" || die
+				mkdir -p "${prefix}${def_libdir}" #423571
+			fi
+		else
+			# we need to make sure "lib" is a dir
+			if [ -h "${prefix}lib" ] ; then
+				# "lib" is a symlink, so need to convert to a dir
+				ewarn "Converting ${prefix}lib from a symlink to a dir"
+				rm -f "${prefix}lib" || die
+				if [ -d "${prefix}lib32" ] ; then
+					ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
+					mv "${prefix}lib32" "${prefix}lib" || die
+				else
+					mkdir -p "${prefix}lib" || die
+				fi
+			elif [ -d "${prefix}lib" ] && ! has lib32 ${libdirs} ; then
+				# make sure the old "lib" ABI location does not exist; we
+				# only symlinked the lib dir on systems where we moved it
+				# to "lib32" ...
+				case ${CHOST} in
+				*-gentoo-freebsd*) ;; # We want it the other way on fbsd.
+				i?86*|x86_64*|powerpc*|sparc*|s390*)
+					if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
+						rm -f "${prefix}lib32"/.keep
+						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
+							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
+							die "non-empty dir found where there should be none: ${prefix}lib32"
+						fi
+					fi
+					;;
+				esac
+			else
+				# nothing exists, so just set it up sanely
+				ewarn "Initializing ${prefix}lib as a dir"
+				mkdir -p "${prefix}lib" || die
+			fi
+		fi
+	done
+	if ! use split-usr ; then
+		for libdir in ${libdirs}; do
+			if [[ ! -e "${EROOT}${libdir}" ]]; then
+				ln -s usr/"${libdir}" "${EROOT}${libdir}"
+			fi
+		done
+	fi
+}
+
+pkg_preinst() {
+	# This is written in src_install (so it's in CONTENTS), but punt all
+	# pending updates to avoid user having to do etc-update (and make the
+	# pkg_postinst logic simpler).
+	rm -f "${EROOT}"/etc/._cfg????_gentoo-release
+
+	# We need to install directories and maybe some dev nodes when building
+	# stages, but they cannot be in CONTENTS.
+	# Also, we cannot reference $S as binpkg will break so we do this.
+	multilib_layout
+	if use build ; then
+		if use split-usr ; then
+			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
+		else
+			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
+		fi
+	fi
+	rm -f "${ED}"/usr/share/${PN}/Makefile
+}
+
+src_prepare() {
+	default
+	if use prefix; then
+		hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
+		hprefixify etc/{env.d/50baselayout,shells} share.Linux/passwd
+		echo PATH=/usr/bin:/bin >> etc/env.d/99host
+		echo ROOTPATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
+	fi
+
+	# handle multilib paths.  do it here because we want this behavior
+	# regardless of the C library that you're using.  we do explicitly
+	# list paths which the native ldconfig searches, but this isn't
+	# problematic as it doesn't change the resulting ld.so.cache or
+	# take longer to generate.  similarly, listing both the native
+	# path and the symlinked path doesn't change the resulting cache.
+	local libdir ldpaths
+	for libdir in $(get_all_libdirs) ; do
+		ldpaths+=":${EPREFIX}/${libdir}:${EPREFIX}/usr/${libdir}"
+		ldpaths+=":${EPREFIX}/usr/local/${libdir}"
+	done
+	echo "LDPATH='${ldpaths#:}'" >> etc/env.d/50baselayout
+
+	# rc-scripts version for testing of features that *should* be present
+	echo "Gentoo Base System release ${PV}" > etc/gentoo-release
+}
+
+src_install() {
+	emake \
+		OS=$(usex kernel_FreeBSD BSD Linux) \
+		DESTDIR="${ED}" \
+		install
+	dodoc ChangeLog
+
+	# need the makefile in pkg_preinst
+	insinto /usr/share/${PN}
+	doins Makefile
+}
+
+pkg_postinst() {
+	local x
+
+	# We installed some files to /usr/share/baselayout instead of /etc to stop
+	# (1) overwriting the user's settings
+	# (2) screwing things up when attempting to merge files
+	# (3) accidentally packaging up personal files with quickpkg
+	# If they don't exist then we install them
+	for x in master.passwd passwd shadow group fstab ; do
+		[ -e "${EROOT}etc/${x}" ] && continue
+		[ -e "${EROOT}usr/share/baselayout/${x}" ] || continue
+		cp -p "${EROOT}usr/share/baselayout/${x}" "${EROOT}"etc
+	done
+
+	# Force shadow permissions to not be world-readable #260993
+	for x in shadow ; do
+		[ -e "${EROOT}etc/${x}" ] && chmod o-rwx "${EROOT}etc/${x}"
+	done
+
+	# Take care of the etc-update for the user
+	if [ -e "${EROOT}"etc/._cfg0000_gentoo-release ] ; then
+		mv "${EROOT}"etc/._cfg0000_gentoo-release "${EROOT}"etc/gentoo-release
+	fi
+
+	# whine about users that lack passwords #193541
+	if [[ -e "${EROOT}"etc/shadow ]] ; then
+		local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
+		if [[ -n ${bad_users} ]] ; then
+			echo
+			ewarn "The following users lack passwords!"
+			ewarn ${bad_users}
+		fi
+	fi
+
+	# whine about users with invalid shells #215698
+	if [[ -e "${EROOT}"etc/passwd ]] ; then
+		local bad_shells=$(awk -F: 'system("test -e " $7) { print $1 " - " $7}' "${EROOT}"etc/passwd | sort)
+		if [[ -n ${bad_shells} ]] ; then
+			echo
+			ewarn "The following users have non-existent shells!"
+			ewarn "${bad_shells}"
+		fi
+	fi
+
+	# https://bugs.gentoo.org/361349
+	if use kernel_linux; then
+		mkdir -p "${EROOT}"run
+
+		local found fstype mountpoint
+		while read -r _ mountpoint fstype _; do
+		[[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
+		done < "${ROOT}"proc/mounts
+		[[ -z ${found} ]] &&
+			ewarn "You should reboot now to get /run mounted with tmpfs!"
+	fi
+
+	for x in ${REPLACING_VERSIONS}; do
+		if ! version_is_at_least 2.4 ${x}; then
+			ewarn "After updating ${EROOT}etc/profile, please run"
+			ewarn "env-update && . /etc/profile"
+		fi
+
+		if ! version_is_at_least 2.5 ${x}; then
+			ewarn "Please run env-update then log out and back in to"
+			ewarn "update your path."
+		fi
+	done
+
+	if [[ -e "${EROOT}"etc/env.d/00basic ]]; then
+		ewarn "${EROOT}etc/env.d/00basic is now ${EROOT}etc/env.d/50baselayout"
+		ewarn "Please migrate your changes."
+	fi
+}


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2018-05-23 21:28 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2018-05-23 21:28 UTC (permalink / raw
  To: gentoo-commits

commit:     a3a7afa711daa429827d3538570572cc109ada60
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Wed May 23 21:26:25 2018 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Wed May 23 21:28:38 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a3a7afa7

sys-apps/baselayout:  change usrmerge use flag to split-usr

This is so we will be in line with systemd's usage of split-usr.

Package-Manager: Portage-2.3.24, Repoman-2.3.6

 sys-apps/baselayout/baselayout-9999.ebuild | 10 +++++-----
 sys-apps/baselayout/metadata.xml           |  2 +-
 2 files changed, 6 insertions(+), 6 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
index cef8791471a..2d016a01e5b 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-9999.ebuild
@@ -17,7 +17,7 @@ fi
 
 LICENSE="GPL-2"
 SLOT="0"
-IUSE="build kernel_FreeBSD kernel_linux usrmerge"
+IUSE="build kernel_FreeBSD kernel_linux +split-usr"
 
 pkg_setup() {
 	multilib_layout
@@ -35,7 +35,7 @@ multilib_layout() {
 	# figure out which paths should be symlinks and which should be directories
 	local dirs syms exp d
 	for libdir in ${libdirs} ; do
-		if ! use usrmerge ; then
+		if use split-usr ; then
 			exp=( {,usr/,usr/local/}${libdir} )
 		else
 			exp=( {usr/,usr/local/}${libdir} )
@@ -62,7 +62,7 @@ multilib_layout() {
 	# setup symlinks and dirs where we expect them to be; do not migrate
 	# data ... just fall over in that case.
 	local prefix prefix_lst
-	if ! use usrmerge ; then
+	if use split-usr ; then
 		prefix_lst="${EROOT}"{,usr/,usr/local/}
 	else
 		prefix_lst="${EROOT}"{usr/,usr/local/}
@@ -125,7 +125,7 @@ multilib_layout() {
 			fi
 		fi
 	done
-	if use usrmerge ; then
+	if ! use split-usr ; then
 		for libdir in ${libdirs}; do
 			if [[ ! -e "${EROOT}${libdir}" ]]; then
 				ln -s usr/"${libdir}" "${EROOT}${libdir}"
@@ -145,7 +145,7 @@ pkg_preinst() {
 	# Also, we cannot reference $S as binpkg will break so we do this.
 	multilib_layout
 	if use build ; then
-		if ! use usrmerge ; then
+		if use split-usr ; then
 			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
 		else
 			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge

diff --git a/sys-apps/baselayout/metadata.xml b/sys-apps/baselayout/metadata.xml
index 452b0130466..8a7288dd9a8 100644
--- a/sys-apps/baselayout/metadata.xml
+++ b/sys-apps/baselayout/metadata.xml
@@ -10,6 +10,6 @@
 	<name>Gentoo Base System</name>
 </maintainer>
 <use>
-	<flag name="usrmerge">Activate the /usr merge when stages are built</flag>
+	<flag name="split-usr">Enable this if /bin and /usr/bin are separate directories</flag>
 </use>
 </pkgmetadata>


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2018-03-20 21:24 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2018-03-20 21:24 UTC (permalink / raw
  To: gentoo-commits

commit:     9cdaeebfbb00619040601debdf5b4e84283d8280
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Tue Mar 20 21:23:19 2018 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Tue Mar 20 21:24:10 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9cdaeebf

sys-apps/baselayout: add back the build use flag

Package-Manager: Portage-2.3.24, Repoman-2.3.6

 sys-apps/baselayout/baselayout-9999.ebuild | 48 ++++++++++++++++--------------
 1 file changed, 26 insertions(+), 22 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
index 6bd0c0d4f70..cef8791471a 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-9999.ebuild
@@ -7,7 +7,6 @@ inherit multilib versionator prefix
 
 DESCRIPTION="Filesystem baselayout and init scripts"
 HOMEPAGE="https://www.gentoo.org/"
-
 if [[ ${PV} = 9999 ]]; then
 	EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/${PN}.git"
 	inherit git-r3
@@ -18,7 +17,11 @@ fi
 
 LICENSE="GPL-2"
 SLOT="0"
-IUSE="usrmerge kernel_linux"
+IUSE="build kernel_FreeBSD kernel_linux usrmerge"
+
+pkg_setup() {
+	multilib_layout
+}
 
 # Create our multilib dirs - the Makefile has no knowledge of this
 multilib_layout() {
@@ -27,13 +30,12 @@ multilib_layout() {
 	libdirs=$(get_all_libdirs)
 	: ${libdirs:=lib}	# it isn't that we don't trust multilib.eclass...
 
-	[ -z "${def_libdir}" ] &&
-		die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
+	[ -z "${def_libdir}" ] && die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
 
 	# figure out which paths should be symlinks and which should be directories
 	local dirs syms exp d
 	for libdir in ${libdirs} ; do
-		if ! use usrmerge; then
+		if ! use usrmerge ; then
 			exp=( {,usr/,usr/local/}${libdir} )
 		else
 			exp=( {usr/,usr/local/}${libdir} )
@@ -60,7 +62,7 @@ multilib_layout() {
 	# setup symlinks and dirs where we expect them to be; do not migrate
 	# data ... just fall over in that case.
 	local prefix prefix_lst
-	if ! use usrmerge; then
+	if ! use usrmerge ; then
 		prefix_lst="${EROOT}"{,usr/,usr/local/}
 	else
 		prefix_lst="${EROOT}"{usr/,usr/local/}
@@ -123,7 +125,7 @@ multilib_layout() {
 			fi
 		fi
 	done
-	if use usrmerge; then
+	if use usrmerge ; then
 		for libdir in ${libdirs}; do
 			if [[ ! -e "${EROOT}${libdir}" ]]; then
 				ln -s usr/"${libdir}" "${EROOT}${libdir}"
@@ -132,15 +134,24 @@ multilib_layout() {
 	fi
 }
 
-pkg_setup() {
-	multilib_layout
-}
-
 pkg_preinst() {
 	# This is written in src_install (so it's in CONTENTS), but punt all
 	# pending updates to avoid user having to do etc-update (and make the
 	# pkg_postinst logic simpler).
 	rm -f "${EROOT}"/etc/._cfg????_gentoo-release
+
+	# We need to install directories and maybe some dev nodes when building
+	# stages, but they cannot be in CONTENTS.
+	# Also, we cannot reference $S as binpkg will break so we do this.
+	multilib_layout
+	if use build ; then
+		if ! use usrmerge ; then
+			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
+		else
+			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
+		fi
+	fi
+	rm -f "${ED}"/usr/share/${PN}/Makefile
 }
 
 src_prepare() {
@@ -170,22 +181,15 @@ src_prepare() {
 }
 
 src_install() {
-	if ! use usrmerge; then
-		emake \
-			OS=$(usex kernel_FreeBSD BSD Linux) \
-			DESTDIR="${ED}" \
-			layout
-	else
-		emake \
-			OS=$(usex kernel_FreeBSD BSD Linux) \
-			DESTDIR="${ED}" \
-			layout-usrmerge
-	fi
 	emake \
 		OS=$(usex kernel_FreeBSD BSD Linux) \
 		DESTDIR="${ED}" \
 		install
 	dodoc ChangeLog
+
+	# need the makefile in pkg_preinst
+	insinto /usr/share/${PN}
+	doins Makefile
 }
 
 pkg_postinst() {


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2018-03-19 18:46 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2018-03-19 18:46 UTC (permalink / raw
  To: gentoo-commits

commit:     4ecb6fb2b5a9012f44c6727509de2a3e77930fb7
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Mon Mar 19 18:45:38 2018 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Mon Mar 19 18:46:07 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=4ecb6fb2

sys-apps/baselayout: live ebuild: add warning about path change

Package-Manager: Portage-2.3.24, Repoman-2.3.6

 sys-apps/baselayout/baselayout-9999.ebuild | 10 +++++++---
 1 file changed, 7 insertions(+), 3 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
index 20a7143a742..6bd0c0d4f70 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-9999.ebuild
@@ -245,10 +245,14 @@ pkg_postinst() {
 	fi
 
 	for x in ${REPLACING_VERSIONS}; do
-		if ! version_is_at_least 2.4 ${v}; then
+		if ! version_is_at_least 2.4 ${x}; then
 			ewarn "After updating ${EROOT}etc/profile, please run"
-			ewarn "env-update and . /etc/profile"
-			break
+			ewarn "env-update && . /etc/profile"
+		fi
+
+		if ! version_is_at_least 2.5 ${x}; then
+			ewarn "Please run env-update then log out and back in to"
+			ewarn "update your path."
 		fi
 	done
 


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2018-02-07 19:51 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2018-02-07 19:51 UTC (permalink / raw
  To: gentoo-commits

commit:     587512e176c5ea13385e7f5ba5d2c23afe80a8c3
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Wed Feb  7 19:49:41 2018 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Wed Feb  7 19:51:03 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=587512e1

sys-apps/baselayout: Live ebuild cleanups:

- run layout targets in src_install
- call multilib_layout only in pkg_setup
- remove some baselayout-1.x migration code from pkg_preinst/pkg_postinst

Package-Manager: Portage-2.3.19, Repoman-2.3.6

 sys-apps/baselayout/baselayout-9999.ebuild | 49 ++++++++++--------------------
 1 file changed, 16 insertions(+), 33 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
index 4622672eb5b..20a7143a742 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-9999.ebuild
@@ -18,11 +18,7 @@ fi
 
 LICENSE="GPL-2"
 SLOT="0"
-IUSE="build usrmerge kernel_linux"
-
-pkg_setup() {
-	multilib_layout
-}
+IUSE="usrmerge kernel_linux"
 
 # Create our multilib dirs - the Makefile has no knowledge of this
 multilib_layout() {
@@ -136,31 +132,15 @@ multilib_layout() {
 	fi
 }
 
-pkg_preinst() {
-	# Bug #217848 - Since the remap_dns_vars() called by pkg_preinst() of
-	# the baselayout-1.x ebuild copies all the real configs from the user's
-	# /etc/conf.d into ${D}, it makes them all appear to be the default
-	# versions. In order to protect them from being unmerged after this
-	# upgrade, modify their timestamps.
-	touch "${EROOT}"/etc/conf.d/* 2>/dev/null
+pkg_setup() {
+	multilib_layout
+}
 
+pkg_preinst() {
 	# This is written in src_install (so it's in CONTENTS), but punt all
 	# pending updates to avoid user having to do etc-update (and make the
 	# pkg_postinst logic simpler).
 	rm -f "${EROOT}"/etc/._cfg????_gentoo-release
-
-	# We need to install directories and maybe some dev nodes when building
-	# stages, but they cannot be in CONTENTS.
-	# Also, we cannot reference $S as binpkg will break so we do this.
-	multilib_layout
-	if use build ; then
-		if ! use usrmerge; then
-			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
-		else
-			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
-		fi
-	fi
-	rm -f "${ED}"/usr/share/${PN}/Makefile
 }
 
 src_prepare() {
@@ -190,15 +170,22 @@ src_prepare() {
 }
 
 src_install() {
+	if ! use usrmerge; then
+		emake \
+			OS=$(usex kernel_FreeBSD BSD Linux) \
+			DESTDIR="${ED}" \
+			layout
+	else
+		emake \
+			OS=$(usex kernel_FreeBSD BSD Linux) \
+			DESTDIR="${ED}" \
+			layout-usrmerge
+	fi
 	emake \
 		OS=$(usex kernel_FreeBSD BSD Linux) \
 		DESTDIR="${ED}" \
 		install
 	dodoc ChangeLog
-
-	# need the makefile in pkg_preinst
-	insinto /usr/share/${PN}
-	doins Makefile
 }
 
 pkg_postinst() {
@@ -235,10 +222,6 @@ pkg_postinst() {
 		fi
 	fi
 
-	# baselayout leaves behind a lot of .keep files, so let's clean them up
-	find "${EROOT}"lib*/rcscripts/ -name .keep -exec rm -f {} + 2>/dev/null
-	find "${EROOT}"lib*/rcscripts/ -depth -type d -exec rmdir {} + 2>/dev/null
-
 	# whine about users with invalid shells #215698
 	if [[ -e "${EROOT}"etc/passwd ]] ; then
 		local bad_shells=$(awk -F: 'system("test -e " $7) { print $1 " - " $7}' "${EROOT}"etc/passwd | sort)


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2018-02-07  0:20 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2018-02-07  0:20 UTC (permalink / raw
  To: gentoo-commits

commit:     cdd4b78ee24386567bad32953a69ab027860acd1
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Wed Feb  7 00:19:56 2018 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Wed Feb  7 00:19:56 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=cdd4b78e

sys-apps/baselayout: Stable 2.4.1-r2 on sparc

I'm not sure why this was the only arch where this version wasn't
stable.

Package-Manager: Portage-2.3.19, Repoman-2.3.6

 sys-apps/baselayout/baselayout-2.4.1-r2.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys-apps/baselayout/baselayout-2.4.1-r2.ebuild b/sys-apps/baselayout/baselayout-2.4.1-r2.ebuild
index bb57d59ef09..d5f5254ba60 100644
--- a/sys-apps/baselayout/baselayout-2.4.1-r2.ebuild
+++ b/sys-apps/baselayout/baselayout-2.4.1-r2.ebuild
@@ -11,7 +11,7 @@ SRC_URI="https://gitweb.gentoo.org/proj/baselayout.git/snapshot/${P}.tar.bz2"
 
 LICENSE="GPL-2"
 SLOT="0"
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh ~sparc x86 ~amd64-fbsd ~x86-fbsd"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd"
 IUSE="build kernel_linux"
 
 pkg_setup() {


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2018-02-06 18:57 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2018-02-06 18:57 UTC (permalink / raw
  To: gentoo-commits

commit:     6194e626c0bf9d5d198aab9aa7bb536b76faa486
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Tue Feb  6 18:54:41 2018 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Tue Feb  6 18:56:29 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6194e626

sys-apps/baselayout: remove version 2.3

Package-Manager: Portage-2.3.19, Repoman-2.3.6

 sys-apps/baselayout/Manifest              |   1 -
 sys-apps/baselayout/baselayout-2.3.ebuild | 241 ------------------------------
 2 files changed, 242 deletions(-)

diff --git a/sys-apps/baselayout/Manifest b/sys-apps/baselayout/Manifest
index 532aa128c21..33d8ce22d8f 100644
--- a/sys-apps/baselayout/Manifest
+++ b/sys-apps/baselayout/Manifest
@@ -1,2 +1 @@
-DIST baselayout-2.3.tar.bz2 32266 BLAKE2B 6535bb451e393accd7c041079188c8c76b318f449adf2e5d1579496a27951de12b8404fb4ded3c143b60fe59ad04017a1a53e4a4ce864559f192fc96f1269a05 SHA512 cf9636c7d5c1fb4abf63dd931dc8ceaa30cf871f5e576a53dcc207abd54b8eec7778a1ef29766e2e8f5c0a098b9b3d07361717ae190027d1e102aceb4a07cacb
 DIST baselayout-2.4.1.tar.bz2 31307 BLAKE2B da26f7fbeefa5efecb6e5d9ded6c2bf3148cd1fcfc6ebb86535f5a9c086c4bb55f6a8420a3c0d0f7008251637f3e4653db875ec427745d039f753008d2f21be2 SHA512 e505ad81834aafb574ffee9bc1fce216c1c8c7fa11b0095580f87a37e4b9efb057ee78db7cd5affc64f05d5dd0592c671304414c119b37d86dfaa1e7b84ce7c1

diff --git a/sys-apps/baselayout/baselayout-2.3.ebuild b/sys-apps/baselayout/baselayout-2.3.ebuild
deleted file mode 100644
index 153e53b5ebe..00000000000
--- a/sys-apps/baselayout/baselayout-2.3.ebuild
+++ /dev/null
@@ -1,241 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=5
-
-inherit eutils multilib
-
-DESCRIPTION="Filesystem baselayout and init scripts"
-HOMEPAGE="https://www.gentoo.org/"
-SRC_URI="https://dev.gentoo.org/~williamh/dist/${P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~x86-fbsd"
-IUSE="build kernel_linux"
-
-pkg_setup() {
-	multilib_layout
-}
-
-# Create our multilib dirs - the Makefile has no knowledge of this
-multilib_layout() {
-	local libdir libdirs=$(get_all_libdirs) def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
-	: ${libdirs:=lib}	# it isn't that we don't trust multilib.eclass...
-
-	[ -z "${def_libdir}" ] && die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
-
-	# figure out which paths should be symlinks and which should be directories
-	local dirs syms exp d
-	for libdir in ${libdirs} ; do
-		exp=( {,usr/,usr/local/}${libdir} )
-		for d in "${exp[@]}" ; do
-			# most things should be dirs
-			if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
-				[ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
-			else
-				[ -h "${d}" ] && syms+=" ${d}"
-			fi
-		done
-	done
-	if [ -n "${syms}${dirs}" ] ; then
-		ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
-		ewarn "have these paths configured as follows:"
-		[ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
-		[ -n "${syms}" ] && ewarn "directories:${syms}"
-		ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
-		ewarn "If things fail, you will need to manually create/move the directories."
-		echo
-	fi
-
-	# setup symlinks and dirs where we expect them to be; do not migrate
-	# data ... just fall over in that case.
-	local prefix
-	for prefix in "${EROOT}"{,usr/,usr/local/} ; do
-		if [ "${SYMLINK_LIB}" = yes ] ; then
-			# we need to make sure "lib" points to the native libdir
-			if [ -h "${prefix}lib" ] ; then
-				# it's already a symlink!  assume it's pointing to right place ...
-				continue
-			elif [ -d "${prefix}lib" ] ; then
-				# "lib" is a dir, so need to convert to a symlink
-				ewarn "Converting ${prefix}lib from a dir to a symlink"
-				rm -f "${prefix}lib"/.keep
-				if rmdir "${prefix}lib" 2>/dev/null ; then
-					ln -s ${def_libdir} "${prefix}lib" || die
-				else
-					die "non-empty dir found where we needed a symlink: ${prefix}lib"
-				fi
-			else
-				# nothing exists, so just set it up sanely
-				ewarn "Initializing ${prefix}lib as a symlink"
-				mkdir -p "${prefix}" || die
-				rm -f "${prefix}lib" || die
-				ln -s ${def_libdir} "${prefix}lib" || die
-				mkdir -p "${prefix}${def_libdir}" #423571
-			fi
-		else
-			# we need to make sure "lib" is a dir
-			if [ -h "${prefix}lib" ] ; then
-				# "lib" is a symlink, so need to convert to a dir
-				ewarn "Converting ${prefix}lib from a symlink to a dir"
-				rm -f "${prefix}lib" || die
-				if [ -d "${prefix}lib32" ] ; then
-					ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
-					mv "${prefix}lib32" "${prefix}lib" || die
-				else
-					mkdir -p "${prefix}lib" || die
-				fi
-			elif [ -d "${prefix}lib" ] && ! has lib32 ${libdirs} ; then
-				# make sure the old "lib" ABI location does not exist; we
-				# only symlinked the lib dir on systems where we moved it
-				# to "lib32" ...
-				case ${CHOST} in
-				*-gentoo-freebsd*) ;; # We want it the other way on fbsd.
-				i?86*|x86_64*|powerpc*|sparc*|s390*)
-					if [ -d "${prefix}lib32" ] ; then
-						rm -f "${prefix}lib32"/.keep
-						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
-							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
-							die "non-empty dir found where there should be none: ${prefix}lib32"
-						fi
-					fi
-					;;
-				esac
-			else
-				# nothing exists, so just set it up sanely
-				ewarn "Initializing ${prefix}lib as a dir"
-				mkdir -p "${prefix}lib" || die
-			fi
-		fi
-	done
-}
-
-pkg_preinst() {
-	# Bug #217848 - Since the remap_dns_vars() called by pkg_preinst() of
-	# the baselayout-1.x ebuild copies all the real configs from the user's
-	# /etc/conf.d into ${D}, it makes them all appear to be the default
-	# versions. In order to protect them from being unmerged after this
-	# upgrade, modify their timestamps.
-	touch "${EROOT}"/etc/conf.d/* 2>/dev/null
-
-	# This is written in src_install (so it's in CONTENTS), but punt all
-	# pending updates to avoid user having to do etc-update (and make the
-	# pkg_postinst logic simpler).
-	rm -f "${EROOT}"/etc/._cfg????_gentoo-release
-
-	# We need to install directories and maybe some dev nodes when building
-	# stages, but they cannot be in CONTENTS.
-	# Also, we cannot reference $S as binpkg will break so we do this.
-	multilib_layout
-	if use build ; then
-		emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout || die
-	fi
-	rm -f "${ED}"/usr/share/${PN}/Makefile
-}
-
-src_prepare() {
-	if use prefix; then
-		sed -i -r\
-			-e "/PATH=/!s:/(etc|usr/bin|bin):\"${EPREFIX}\"/\1:g" \
-			-e "/PATH=/s|([:\"])/|\1${EPREFIX}/|g" \
-			-e "/PATH=.*\/sbin/s|\"$|:/usr/sbin:/sbin\"|" \
-			-e "/PATH=.*\/bin/s|\"$|:/usr/bin:/bin\"|" \
-			etc/profile || die
-		sed -i -r \
-			-e "s:/(etc/env.d|opt|usr):${EPREFIX}/\1:g" \
-			-e "/^PATH=/s|\"$|:${EPREFIX}/usr/sbin:${EPREFIX}/sbin\"|" \
-			etc/env.d/00basic || die
-		sed -i "s:/bin:${EPREFIX}/bin:" etc/shells || die
-		sed -i -r \
-			-e "s,:/(root|bin|sbin|var|),:${EPREFIX}/\1,g" \
-			share.Linux/passwd || die
-	fi
-
-	# handle multilib paths.  do it here because we want this behavior
-	# regardless of the C library that you're using.  we do explicitly
-	# list paths which the native ldconfig searches, but this isn't
-	# problematic as it doesn't change the resulting ld.so.cache or
-	# take longer to generate.  similarly, listing both the native
-	# path and the symlinked path doesn't change the resulting cache.
-	local libdir ldpaths
-	for libdir in $(get_all_libdirs) ; do
-		ldpaths+=":${EPREFIX}/${libdir}:${EPREFIX}/usr/${libdir}"
-		ldpaths+=":${EPREFIX}/usr/local/${libdir}"
-	done
-	echo "LDPATH='${ldpaths#:}'" >> etc/env.d/00basic
-
-	# rc-scripts version for testing of features that *should* be present
-	echo "Gentoo Base System release ${PV}" > etc/gentoo-release
-}
-
-src_install() {
-	emake \
-		OS=$(usex kernel_FreeBSD BSD Linux) \
-		DESTDIR="${ED}" \
-		install
-	dodoc ChangeLog
-
-	# need the makefile in pkg_preinst
-	insinto /usr/share/${PN}
-	doins Makefile
-}
-
-pkg_postinst() {
-	local x
-
-	# We installed some files to /usr/share/baselayout instead of /etc to stop
-	# (1) overwriting the user's settings
-	# (2) screwing things up when attempting to merge files
-	# (3) accidentally packaging up personal files with quickpkg
-	# If they don't exist then we install them
-	for x in master.passwd passwd shadow group fstab ; do
-		[ -e "${EROOT}etc/${x}" ] && continue
-		[ -e "${EROOT}usr/share/baselayout/${x}" ] || continue
-		cp -p "${EROOT}usr/share/baselayout/${x}" "${EROOT}"etc
-	done
-
-	# Force shadow permissions to not be world-readable #260993
-	for x in shadow ; do
-		[ -e "${EROOT}etc/${x}" ] && chmod o-rwx "${EROOT}etc/${x}"
-	done
-
-	# Take care of the etc-update for the user
-	if [ -e "${EROOT}"etc/._cfg0000_gentoo-release ] ; then
-		mv "${EROOT}"etc/._cfg0000_gentoo-release "${EROOT}"etc/gentoo-release
-	fi
-
-	# whine about users that lack passwords #193541
-	if [[ -e "${EROOT}"etc/shadow ]] ; then
-		local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
-		if [[ -n ${bad_users} ]] ; then
-			echo
-			ewarn "The following users lack passwords!"
-			ewarn ${bad_users}
-		fi
-	fi
-
-	# baselayout leaves behind a lot of .keep files, so let's clean them up
-	find "${EROOT}"lib*/rcscripts/ -name .keep -exec rm -f {} + 2>/dev/null
-	find "${EROOT}"lib*/rcscripts/ -depth -type d -exec rmdir {} + 2>/dev/null
-
-	# whine about users with invalid shells #215698
-	if [[ -e "${EROOT}"etc/passwd ]] ; then
-		local bad_shells=$(awk -F: 'system("test -e " $7) { print $1 " - " $7}' "${EROOT}"etc/passwd | sort)
-		if [[ -n ${bad_shells} ]] ; then
-			echo
-			ewarn "The following users have non-existent shells!"
-			ewarn "${bad_shells}"
-		fi
-	fi
-
-	# https://bugs.gentoo.org/361349
-	if use kernel_linux; then
-		mkdir -p "${EROOT}"run
-
-		if ! grep -qs "^tmpfs.*/run " "${ROOT}"proc/mounts ; then
-			echo
-			ewarn "You should reboot the system now to get /run mounted with tmpfs!"
-		fi
-	fi
-}


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2018-01-12  4:19 Mike Frysinger
  0 siblings, 0 replies; 124+ messages in thread
From: Mike Frysinger @ 2018-01-12  4:19 UTC (permalink / raw
  To: gentoo-commits

commit:     ff3d3f469414600e47cdd640ac5b4c289805bd3c
Author:     Mike Frysinger <vapier <AT> gentoo <DOT> org>
AuthorDate: Fri Jan 12 04:18:39 2018 +0000
Commit:     Mike Frysinger <vapier <AT> gentoo <DOT> org>
CommitDate: Fri Jan 12 04:18:39 2018 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=ff3d3f46

sys-apps/baselayout: mark 2.4.1-r2 arm64/m68k/s390/sh stable

 sys-apps/baselayout/baselayout-2.4.1-r2.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys-apps/baselayout/baselayout-2.4.1-r2.ebuild b/sys-apps/baselayout/baselayout-2.4.1-r2.ebuild
index bc82d2ddcdb..ec9e36e9794 100644
--- a/sys-apps/baselayout/baselayout-2.4.1-r2.ebuild
+++ b/sys-apps/baselayout/baselayout-2.4.1-r2.ebuild
@@ -11,7 +11,7 @@ SRC_URI="https://gitweb.gentoo.org/proj/baselayout.git/snapshot/${P}.tar.bz2"
 
 LICENSE="GPL-2"
 SLOT="0"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh ~sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
 IUSE="build kernel_linux"
 
 pkg_setup() {


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2017-12-10 21:41 Michał Górny
  0 siblings, 0 replies; 124+ messages in thread
From: Michał Górny @ 2017-12-10 21:41 UTC (permalink / raw
  To: gentoo-commits

commit:     0e071b3d533ce1bba96e0371931b1426e6d9993f
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sun Dec 10 17:42:44 2017 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sun Dec 10 21:41:21 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0e071b3d

sys-apps/baselayout: Fix handling transitional lib32 symlink

 sys-apps/baselayout/baselayout-2.4.1-r2.ebuild | 2 +-
 sys-apps/baselayout/baselayout-9999.ebuild     | 2 +-
 2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-2.4.1-r2.ebuild b/sys-apps/baselayout/baselayout-2.4.1-r2.ebuild
index d137c15e527..bc82d2ddcdb 100644
--- a/sys-apps/baselayout/baselayout-2.4.1-r2.ebuild
+++ b/sys-apps/baselayout/baselayout-2.4.1-r2.ebuild
@@ -93,7 +93,7 @@ multilib_layout() {
 				case ${CHOST} in
 				*-gentoo-freebsd*) ;; # We want it the other way on fbsd.
 				i?86*|x86_64*|powerpc*|sparc*|s390*)
-					if [ -d "${prefix}lib32" ] ; then
+					if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
 						rm -f "${prefix}lib32"/.keep
 						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
 							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
index 7e43ea7af59..a7d95e53ed4 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-9999.ebuild
@@ -111,7 +111,7 @@ multilib_layout() {
 				case ${CHOST} in
 				*-gentoo-freebsd*) ;; # We want it the other way on fbsd.
 				i?86*|x86_64*|powerpc*|sparc*|s390*)
-					if [ -d "${prefix}lib32" ] ; then
+					if [[ -d ${prefix}lib32 && ! -h ${prefix}lib32 ]] ; then
 						rm -f "${prefix}lib32"/.keep
 						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
 							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2017-11-17 22:23 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2017-11-17 22:23 UTC (permalink / raw
  To: gentoo-commits

commit:     fae21fc0b18fba048809c848b11b163229c02dfe
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Fri Nov 17 22:22:00 2017 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Fri Nov 17 22:22:39 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=fae21fc0

sys-apps/baselayout: add support for usr merge to live for testing

Package-Manager: Portage-2.3.13, Repoman-2.3.3

 sys-apps/baselayout/baselayout-9999.ebuild | 39 ++++++++++++++++++++++++------
 sys-apps/baselayout/metadata.xml           |  3 +++
 2 files changed, 34 insertions(+), 8 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
index 98795ba6d00..7e43ea7af59 100644
--- a/sys-apps/baselayout/baselayout-9999.ebuild
+++ b/sys-apps/baselayout/baselayout-9999.ebuild
@@ -3,7 +3,7 @@
 
 EAPI=6
 
-inherit eutils multilib versionator prefix
+inherit multilib versionator prefix
 
 DESCRIPTION="Filesystem baselayout and init scripts"
 HOMEPAGE="https://www.gentoo.org/"
@@ -18,7 +18,7 @@ fi
 
 LICENSE="GPL-2"
 SLOT="0"
-IUSE="build kernel_linux"
+IUSE="build usrmerge kernel_linux"
 
 pkg_setup() {
 	multilib_layout
@@ -26,15 +26,22 @@ pkg_setup() {
 
 # Create our multilib dirs - the Makefile has no knowledge of this
 multilib_layout() {
-	local libdir libdirs=$(get_all_libdirs) def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
+	local def_libdir libdir libdirs
+	def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
+	libdirs=$(get_all_libdirs)
 	: ${libdirs:=lib}	# it isn't that we don't trust multilib.eclass...
 
-	[ -z "${def_libdir}" ] && die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
+	[ -z "${def_libdir}" ] &&
+		die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
 
 	# figure out which paths should be symlinks and which should be directories
 	local dirs syms exp d
 	for libdir in ${libdirs} ; do
-		exp=( {,usr/,usr/local/}${libdir} )
+		if ! use usrmerge; then
+			exp=( {,usr/,usr/local/}${libdir} )
+		else
+			exp=( {usr/,usr/local/}${libdir} )
+		fi
 		for d in "${exp[@]}" ; do
 			# most things should be dirs
 			if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
@@ -56,8 +63,13 @@ multilib_layout() {
 
 	# setup symlinks and dirs where we expect them to be; do not migrate
 	# data ... just fall over in that case.
-	local prefix
-	for prefix in "${EROOT}"{,usr/,usr/local/} ; do
+	local prefix prefix_lst
+	if ! use usrmerge; then
+		prefix_lst="${EROOT}"{,usr/,usr/local/}
+	else
+		prefix_lst="${EROOT}"{usr/,usr/local/}
+	fi
+	for prefix in "${prefix_lst}"; do
 		if [ "${SYMLINK_LIB}" = yes ] ; then
 			# we need to make sure "lib" points to the native libdir
 			if [ -h "${prefix}lib" ] ; then
@@ -115,6 +127,13 @@ multilib_layout() {
 			fi
 		fi
 	done
+	if use usrmerge; then
+		for libdir in ${libdirs}; do
+			if [[ ! -e "${EROOT}${libdir}" ]]; then
+				ln -s usr/"${libdir}" "${EROOT}${libdir}"
+			fi
+		done
+	fi
 }
 
 pkg_preinst() {
@@ -135,7 +154,11 @@ pkg_preinst() {
 	# Also, we cannot reference $S as binpkg will break so we do this.
 	multilib_layout
 	if use build ; then
-		emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout || die
+		if ! use usrmerge; then
+			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout
+		else
+			emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout-usrmerge
+		fi
 	fi
 	rm -f "${ED}"/usr/share/${PN}/Makefile
 }

diff --git a/sys-apps/baselayout/metadata.xml b/sys-apps/baselayout/metadata.xml
index 53e04953d60..452b0130466 100644
--- a/sys-apps/baselayout/metadata.xml
+++ b/sys-apps/baselayout/metadata.xml
@@ -9,4 +9,7 @@
 	<email>base-system@gentoo.org</email>
 	<name>Gentoo Base System</name>
 </maintainer>
+<use>
+	<flag name="usrmerge">Activate the /usr merge when stages are built</flag>
+</use>
 </pkgmetadata>


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2017-10-06 19:02 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2017-10-06 19:02 UTC (permalink / raw
  To: gentoo-commits

commit:     0776d0703723fd1de3de16c765d8b53fd725d120
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Fri Oct  6 19:01:53 2017 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Fri Oct  6 19:02:29 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0776d070

sys-apps/baselayout: add live ebuild for testing

Package-Manager: Portage-2.3.8, Repoman-2.3.3

 sys-apps/baselayout/baselayout-9999.ebuild | 253 +++++++++++++++++++++++++++++
 1 file changed, 253 insertions(+)

diff --git a/sys-apps/baselayout/baselayout-9999.ebuild b/sys-apps/baselayout/baselayout-9999.ebuild
new file mode 100644
index 00000000000..98795ba6d00
--- /dev/null
+++ b/sys-apps/baselayout/baselayout-9999.ebuild
@@ -0,0 +1,253 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit eutils multilib versionator prefix
+
+DESCRIPTION="Filesystem baselayout and init scripts"
+HOMEPAGE="https://www.gentoo.org/"
+
+if [[ ${PV} = 9999 ]]; then
+	EGIT_REPO_URI="https://anongit.gentoo.org/git/proj/${PN}.git"
+	inherit git-r3
+else
+	SRC_URI="https://gitweb.gentoo.org/proj/${PN}.git/snapshot/${P}.tar.bz2"
+	KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
+fi
+
+LICENSE="GPL-2"
+SLOT="0"
+IUSE="build kernel_linux"
+
+pkg_setup() {
+	multilib_layout
+}
+
+# Create our multilib dirs - the Makefile has no knowledge of this
+multilib_layout() {
+	local libdir libdirs=$(get_all_libdirs) def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
+	: ${libdirs:=lib}	# it isn't that we don't trust multilib.eclass...
+
+	[ -z "${def_libdir}" ] && die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
+
+	# figure out which paths should be symlinks and which should be directories
+	local dirs syms exp d
+	for libdir in ${libdirs} ; do
+		exp=( {,usr/,usr/local/}${libdir} )
+		for d in "${exp[@]}" ; do
+			# most things should be dirs
+			if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
+				[ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
+			else
+				[ -h "${d}" ] && syms+=" ${d}"
+			fi
+		done
+	done
+	if [ -n "${syms}${dirs}" ] ; then
+		ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
+		ewarn "have these paths configured as follows:"
+		[ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
+		[ -n "${syms}" ] && ewarn "directories:${syms}"
+		ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
+		ewarn "If things fail, you will need to manually create/move the directories."
+		echo
+	fi
+
+	# setup symlinks and dirs where we expect them to be; do not migrate
+	# data ... just fall over in that case.
+	local prefix
+	for prefix in "${EROOT}"{,usr/,usr/local/} ; do
+		if [ "${SYMLINK_LIB}" = yes ] ; then
+			# we need to make sure "lib" points to the native libdir
+			if [ -h "${prefix}lib" ] ; then
+				# it's already a symlink!  assume it's pointing to right place ...
+				continue
+			elif [ -d "${prefix}lib" ] ; then
+				# "lib" is a dir, so need to convert to a symlink
+				ewarn "Converting ${prefix}lib from a dir to a symlink"
+				rm -f "${prefix}lib"/.keep
+				if rmdir "${prefix}lib" 2>/dev/null ; then
+					ln -s ${def_libdir} "${prefix}lib" || die
+				else
+					die "non-empty dir found where we needed a symlink: ${prefix}lib"
+				fi
+			else
+				# nothing exists, so just set it up sanely
+				ewarn "Initializing ${prefix}lib as a symlink"
+				mkdir -p "${prefix}" || die
+				rm -f "${prefix}lib" || die
+				ln -s ${def_libdir} "${prefix}lib" || die
+				mkdir -p "${prefix}${def_libdir}" #423571
+			fi
+		else
+			# we need to make sure "lib" is a dir
+			if [ -h "${prefix}lib" ] ; then
+				# "lib" is a symlink, so need to convert to a dir
+				ewarn "Converting ${prefix}lib from a symlink to a dir"
+				rm -f "${prefix}lib" || die
+				if [ -d "${prefix}lib32" ] ; then
+					ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
+					mv "${prefix}lib32" "${prefix}lib" || die
+				else
+					mkdir -p "${prefix}lib" || die
+				fi
+			elif [ -d "${prefix}lib" ] && ! has lib32 ${libdirs} ; then
+				# make sure the old "lib" ABI location does not exist; we
+				# only symlinked the lib dir on systems where we moved it
+				# to "lib32" ...
+				case ${CHOST} in
+				*-gentoo-freebsd*) ;; # We want it the other way on fbsd.
+				i?86*|x86_64*|powerpc*|sparc*|s390*)
+					if [ -d "${prefix}lib32" ] ; then
+						rm -f "${prefix}lib32"/.keep
+						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
+							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
+							die "non-empty dir found where there should be none: ${prefix}lib32"
+						fi
+					fi
+					;;
+				esac
+			else
+				# nothing exists, so just set it up sanely
+				ewarn "Initializing ${prefix}lib as a dir"
+				mkdir -p "${prefix}lib" || die
+			fi
+		fi
+	done
+}
+
+pkg_preinst() {
+	# Bug #217848 - Since the remap_dns_vars() called by pkg_preinst() of
+	# the baselayout-1.x ebuild copies all the real configs from the user's
+	# /etc/conf.d into ${D}, it makes them all appear to be the default
+	# versions. In order to protect them from being unmerged after this
+	# upgrade, modify their timestamps.
+	touch "${EROOT}"/etc/conf.d/* 2>/dev/null
+
+	# This is written in src_install (so it's in CONTENTS), but punt all
+	# pending updates to avoid user having to do etc-update (and make the
+	# pkg_postinst logic simpler).
+	rm -f "${EROOT}"/etc/._cfg????_gentoo-release
+
+	# We need to install directories and maybe some dev nodes when building
+	# stages, but they cannot be in CONTENTS.
+	# Also, we cannot reference $S as binpkg will break so we do this.
+	multilib_layout
+	if use build ; then
+		emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout || die
+	fi
+	rm -f "${ED}"/usr/share/${PN}/Makefile
+}
+
+src_prepare() {
+	default
+	if use prefix; then
+		hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
+		hprefixify etc/{env.d/50baselayout,shells} share.Linux/passwd
+		echo PATH=/usr/bin:/bin >> etc/env.d/99host
+		echo ROOTPATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
+	fi
+
+	# handle multilib paths.  do it here because we want this behavior
+	# regardless of the C library that you're using.  we do explicitly
+	# list paths which the native ldconfig searches, but this isn't
+	# problematic as it doesn't change the resulting ld.so.cache or
+	# take longer to generate.  similarly, listing both the native
+	# path and the symlinked path doesn't change the resulting cache.
+	local libdir ldpaths
+	for libdir in $(get_all_libdirs) ; do
+		ldpaths+=":${EPREFIX}/${libdir}:${EPREFIX}/usr/${libdir}"
+		ldpaths+=":${EPREFIX}/usr/local/${libdir}"
+	done
+	echo "LDPATH='${ldpaths#:}'" >> etc/env.d/50baselayout
+
+	# rc-scripts version for testing of features that *should* be present
+	echo "Gentoo Base System release ${PV}" > etc/gentoo-release
+}
+
+src_install() {
+	emake \
+		OS=$(usex kernel_FreeBSD BSD Linux) \
+		DESTDIR="${ED}" \
+		install
+	dodoc ChangeLog
+
+	# need the makefile in pkg_preinst
+	insinto /usr/share/${PN}
+	doins Makefile
+}
+
+pkg_postinst() {
+	local x
+
+	# We installed some files to /usr/share/baselayout instead of /etc to stop
+	# (1) overwriting the user's settings
+	# (2) screwing things up when attempting to merge files
+	# (3) accidentally packaging up personal files with quickpkg
+	# If they don't exist then we install them
+	for x in master.passwd passwd shadow group fstab ; do
+		[ -e "${EROOT}etc/${x}" ] && continue
+		[ -e "${EROOT}usr/share/baselayout/${x}" ] || continue
+		cp -p "${EROOT}usr/share/baselayout/${x}" "${EROOT}"etc
+	done
+
+	# Force shadow permissions to not be world-readable #260993
+	for x in shadow ; do
+		[ -e "${EROOT}etc/${x}" ] && chmod o-rwx "${EROOT}etc/${x}"
+	done
+
+	# Take care of the etc-update for the user
+	if [ -e "${EROOT}"etc/._cfg0000_gentoo-release ] ; then
+		mv "${EROOT}"etc/._cfg0000_gentoo-release "${EROOT}"etc/gentoo-release
+	fi
+
+	# whine about users that lack passwords #193541
+	if [[ -e "${EROOT}"etc/shadow ]] ; then
+		local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
+		if [[ -n ${bad_users} ]] ; then
+			echo
+			ewarn "The following users lack passwords!"
+			ewarn ${bad_users}
+		fi
+	fi
+
+	# baselayout leaves behind a lot of .keep files, so let's clean them up
+	find "${EROOT}"lib*/rcscripts/ -name .keep -exec rm -f {} + 2>/dev/null
+	find "${EROOT}"lib*/rcscripts/ -depth -type d -exec rmdir {} + 2>/dev/null
+
+	# whine about users with invalid shells #215698
+	if [[ -e "${EROOT}"etc/passwd ]] ; then
+		local bad_shells=$(awk -F: 'system("test -e " $7) { print $1 " - " $7}' "${EROOT}"etc/passwd | sort)
+		if [[ -n ${bad_shells} ]] ; then
+			echo
+			ewarn "The following users have non-existent shells!"
+			ewarn "${bad_shells}"
+		fi
+	fi
+
+	# https://bugs.gentoo.org/361349
+	if use kernel_linux; then
+		mkdir -p "${EROOT}"run
+
+		local found fstype mountpoint
+		while read -r _ mountpoint fstype _; do
+		[[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
+		done < "${ROOT}"proc/mounts
+		[[ -z ${found} ]] &&
+			ewarn "You should reboot now to get /run mounted with tmpfs!"
+	fi
+
+	for x in ${REPLACING_VERSIONS}; do
+		if ! version_is_at_least 2.4 ${v}; then
+			ewarn "After updating ${EROOT}etc/profile, please run"
+			ewarn "env-update and . /etc/profile"
+			break
+		fi
+	done
+
+	if [[ -e "${EROOT}"etc/env.d/00basic ]]; then
+		ewarn "${EROOT}etc/env.d/00basic is now ${EROOT}etc/env.d/50baselayout"
+		ewarn "Please migrate your changes."
+	fi
+}


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2017-10-03 18:00 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2017-10-03 18:00 UTC (permalink / raw
  To: gentoo-commits

commit:     3fd785816fc088c925695886d18d67c9a7894a45
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Tue Oct  3 17:54:00 2017 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Tue Oct  3 17:54:00 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3fd78581

sys-apps/baselayout: add more local variables

Package-Manager: Portage-2.3.8, Repoman-2.3.3

 sys-apps/baselayout/baselayout-2.4.1-r2.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys-apps/baselayout/baselayout-2.4.1-r2.ebuild b/sys-apps/baselayout/baselayout-2.4.1-r2.ebuild
index 2d2293456f9..d137c15e527 100644
--- a/sys-apps/baselayout/baselayout-2.4.1-r2.ebuild
+++ b/sys-apps/baselayout/baselayout-2.4.1-r2.ebuild
@@ -224,7 +224,7 @@ pkg_postinst() {
 	if use kernel_linux; then
 		mkdir -p "${EROOT}"run
 
-		local found
+		local found fstype mountpoint
 		while read -r _ mountpoint fstype _; do
 		[[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
 		done < "${ROOT}"proc/mounts


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2017-10-03 17:50 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2017-10-03 17:50 UTC (permalink / raw
  To: gentoo-commits

commit:     73187892e3b1ff195c127df43a63aac42fc43031
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Tue Oct  3 17:35:54 2017 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Tue Oct  3 17:36:26 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=73187892

sys-apps/baselayout: 2.4.1-r2: fix tmpfs warning

bug: https://bugs.gentoo.org/show_bug.cgi?id=633360
Package-Manager: Portage-2.3.8, Repoman-2.3.3

 sys-apps/baselayout/baselayout-2.4.1-r2.ebuild | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-2.4.1-r2.ebuild b/sys-apps/baselayout/baselayout-2.4.1-r2.ebuild
index 0d17f0e8894..2d2293456f9 100644
--- a/sys-apps/baselayout/baselayout-2.4.1-r2.ebuild
+++ b/sys-apps/baselayout/baselayout-2.4.1-r2.ebuild
@@ -224,10 +224,12 @@ pkg_postinst() {
 	if use kernel_linux; then
 		mkdir -p "${EROOT}"run
 
-		if ! grep -qs "^tmpfs.*/run " "${ROOT}"proc/mounts ; then
-			echo
-			ewarn "You should reboot the system now to get /run mounted with tmpfs!"
-		fi
+		local found
+		while read -r _ mountpoint fstype _; do
+		[[ ${mountpoint} = /run ]] && [[ ${fstype} = tmpfs ]] && found=1
+		done < "${ROOT}"proc/mounts
+		[[ -z ${found} ]] &&
+			ewarn "You should reboot now to get /run mounted with tmpfs!"
 	fi
 
 	for x in ${REPLACING_VERSIONS}; do


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2017-10-03 15:48 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2017-10-03 15:48 UTC (permalink / raw
  To: gentoo-commits

commit:     0428a1d11b1567e89d223c2a2e0c96313ae22c8b
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Tue Oct  3 15:45:12 2017 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Tue Oct  3 15:45:12 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=0428a1d1

sys-apps/baselayout: remove unstable version

Package-Manager: Portage-2.3.8, Repoman-2.3.3

 sys-apps/baselayout/baselayout-2.4.1-r1.ebuild | 256 -------------------------
 1 file changed, 256 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-2.4.1-r1.ebuild b/sys-apps/baselayout/baselayout-2.4.1-r1.ebuild
deleted file mode 100644
index edb3c393e38..00000000000
--- a/sys-apps/baselayout/baselayout-2.4.1-r1.ebuild
+++ /dev/null
@@ -1,256 +0,0 @@
-# Copyright 1999-2017 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-inherit eutils multilib versionator
-
-DESCRIPTION="Filesystem baselayout and init scripts"
-HOMEPAGE="https://www.gentoo.org/"
-SRC_URI="https://gitweb.gentoo.org/proj/baselayout.git/snapshot/${P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
-IUSE="build kernel_linux"
-
-pkg_setup() {
-	multilib_layout
-}
-
-# Create our multilib dirs - the Makefile has no knowledge of this
-multilib_layout() {
-	local libdir libdirs=$(get_all_libdirs) def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
-	: ${libdirs:=lib}	# it isn't that we don't trust multilib.eclass...
-
-	[ -z "${def_libdir}" ] && die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
-
-	# figure out which paths should be symlinks and which should be directories
-	local dirs syms exp d
-	for libdir in ${libdirs} ; do
-		exp=( {,usr/,usr/local/}${libdir} )
-		for d in "${exp[@]}" ; do
-			# most things should be dirs
-			if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
-				[ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
-			else
-				[ -h "${d}" ] && syms+=" ${d}"
-			fi
-		done
-	done
-	if [ -n "${syms}${dirs}" ] ; then
-		ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
-		ewarn "have these paths configured as follows:"
-		[ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
-		[ -n "${syms}" ] && ewarn "directories:${syms}"
-		ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
-		ewarn "If things fail, you will need to manually create/move the directories."
-		echo
-	fi
-
-	# setup symlinks and dirs where we expect them to be; do not migrate
-	# data ... just fall over in that case.
-	local prefix
-	for prefix in "${EROOT}"{,usr/,usr/local/} ; do
-		if [ "${SYMLINK_LIB}" = yes ] ; then
-			# we need to make sure "lib" points to the native libdir
-			if [ -h "${prefix}lib" ] ; then
-				# it's already a symlink!  assume it's pointing to right place ...
-				continue
-			elif [ -d "${prefix}lib" ] ; then
-				# "lib" is a dir, so need to convert to a symlink
-				ewarn "Converting ${prefix}lib from a dir to a symlink"
-				rm -f "${prefix}lib"/.keep
-				if rmdir "${prefix}lib" 2>/dev/null ; then
-					ln -s ${def_libdir} "${prefix}lib" || die
-				else
-					die "non-empty dir found where we needed a symlink: ${prefix}lib"
-				fi
-			else
-				# nothing exists, so just set it up sanely
-				ewarn "Initializing ${prefix}lib as a symlink"
-				mkdir -p "${prefix}" || die
-				rm -f "${prefix}lib" || die
-				ln -s ${def_libdir} "${prefix}lib" || die
-				mkdir -p "${prefix}${def_libdir}" #423571
-			fi
-		else
-			# we need to make sure "lib" is a dir
-			if [ -h "${prefix}lib" ] ; then
-				# "lib" is a symlink, so need to convert to a dir
-				ewarn "Converting ${prefix}lib from a symlink to a dir"
-				rm -f "${prefix}lib" || die
-				if [ -d "${prefix}lib32" ] ; then
-					ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
-					mv "${prefix}lib32" "${prefix}lib" || die
-				else
-					mkdir -p "${prefix}lib" || die
-				fi
-			elif [ -d "${prefix}lib" ] && ! has lib32 ${libdirs} ; then
-				# make sure the old "lib" ABI location does not exist; we
-				# only symlinked the lib dir on systems where we moved it
-				# to "lib32" ...
-				case ${CHOST} in
-				*-gentoo-freebsd*) ;; # We want it the other way on fbsd.
-				i?86*|x86_64*|powerpc*|sparc*|s390*)
-					if [ -d "${prefix}lib32" ] ; then
-						rm -f "${prefix}lib32"/.keep
-						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
-							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
-							die "non-empty dir found where there should be none: ${prefix}lib32"
-						fi
-					fi
-					;;
-				esac
-			else
-				# nothing exists, so just set it up sanely
-				ewarn "Initializing ${prefix}lib as a dir"
-				mkdir -p "${prefix}lib" || die
-			fi
-		fi
-	done
-}
-
-pkg_preinst() {
-	# Bug #217848 - Since the remap_dns_vars() called by pkg_preinst() of
-	# the baselayout-1.x ebuild copies all the real configs from the user's
-	# /etc/conf.d into ${D}, it makes them all appear to be the default
-	# versions. In order to protect them from being unmerged after this
-	# upgrade, modify their timestamps.
-	touch "${EROOT}"/etc/conf.d/* 2>/dev/null
-
-	# This is written in src_install (so it's in CONTENTS), but punt all
-	# pending updates to avoid user having to do etc-update (and make the
-	# pkg_postinst logic simpler).
-	rm -f "${EROOT}"/etc/._cfg????_gentoo-release
-
-	# We need to install directories and maybe some dev nodes when building
-	# stages, but they cannot be in CONTENTS.
-	# Also, we cannot reference $S as binpkg will break so we do this.
-	multilib_layout
-	if use build ; then
-		emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout || die
-	fi
-	rm -f "${ED}"/usr/share/${PN}/Makefile
-}
-
-src_prepare() {
-	default
-	if use prefix; then
-		sed -i -r\
-			-e "/PATH=/!s:/(etc|usr/bin|bin):\"${EPREFIX}\"/\1:g" \
-			-e "/PATH=/s|([:\"])/|\1${EPREFIX}/|g" \
-			-e "/PATH=.*\/sbin/s|\"$|:/usr/sbin:/sbin\"|" \
-			-e "/PATH=.*\/bin/s|\"$|:/usr/bin:/bin\"|" \
-			etc/profile || die
-		sed -i -r \
-			-e "s@:/bin@:${EPREFIX}/bin@g" \
-			-e "s:/(etc/env.d|opt|usr):${EPREFIX}/\1:g" \
-			-e "/^PATH=/s|\"$|:${EPREFIX}/usr/sbin:${EPREFIX}/sbin\"|" \
-			etc/env.d/50baselayout || die
-		sed -i "s:/bin:${EPREFIX}/bin:" etc/shells || die
-		sed -i -r \
-			-e "s,:/(root|bin|sbin|var|),:${EPREFIX}/\1,g" \
-			share.Linux/passwd || die
-	fi
-
-	# handle multilib paths.  do it here because we want this behavior
-	# regardless of the C library that you're using.  we do explicitly
-	# list paths which the native ldconfig searches, but this isn't
-	# problematic as it doesn't change the resulting ld.so.cache or
-	# take longer to generate.  similarly, listing both the native
-	# path and the symlinked path doesn't change the resulting cache.
-	local libdir ldpaths
-	for libdir in $(get_all_libdirs) ; do
-		ldpaths+=":${EPREFIX}/${libdir}:${EPREFIX}/usr/${libdir}"
-		ldpaths+=":${EPREFIX}/usr/local/${libdir}"
-	done
-	echo "LDPATH='${ldpaths#:}'" >> etc/env.d/50baselayout
-
-	# rc-scripts version for testing of features that *should* be present
-	echo "Gentoo Base System release ${PV}" > etc/gentoo-release
-}
-
-src_install() {
-	emake \
-		OS=$(usex kernel_FreeBSD BSD Linux) \
-		DESTDIR="${ED}" \
-		install
-	dodoc ChangeLog
-
-	# need the makefile in pkg_preinst
-	insinto /usr/share/${PN}
-	doins Makefile
-}
-
-pkg_postinst() {
-	local x
-
-	# We installed some files to /usr/share/baselayout instead of /etc to stop
-	# (1) overwriting the user's settings
-	# (2) screwing things up when attempting to merge files
-	# (3) accidentally packaging up personal files with quickpkg
-	# If they don't exist then we install them
-	for x in master.passwd passwd shadow group fstab ; do
-		[ -e "${EROOT}etc/${x}" ] && continue
-		[ -e "${EROOT}usr/share/baselayout/${x}" ] || continue
-		cp -p "${EROOT}usr/share/baselayout/${x}" "${EROOT}"etc
-	done
-
-	# Force shadow permissions to not be world-readable #260993
-	for x in shadow ; do
-		[ -e "${EROOT}etc/${x}" ] && chmod o-rwx "${EROOT}etc/${x}"
-	done
-
-	# Take care of the etc-update for the user
-	if [ -e "${EROOT}"etc/._cfg0000_gentoo-release ] ; then
-		mv "${EROOT}"etc/._cfg0000_gentoo-release "${EROOT}"etc/gentoo-release
-	fi
-
-	# whine about users that lack passwords #193541
-	if [[ -e "${EROOT}"etc/shadow ]] ; then
-		local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
-		if [[ -n ${bad_users} ]] ; then
-			echo
-			ewarn "The following users lack passwords!"
-			ewarn ${bad_users}
-		fi
-	fi
-
-	# baselayout leaves behind a lot of .keep files, so let's clean them up
-	find "${EROOT}"lib*/rcscripts/ -name .keep -exec rm -f {} + 2>/dev/null
-	find "${EROOT}"lib*/rcscripts/ -depth -type d -exec rmdir {} + 2>/dev/null
-
-	# whine about users with invalid shells #215698
-	if [[ -e "${EROOT}"etc/passwd ]] ; then
-		local bad_shells=$(awk -F: 'system("test -e " $7) { print $1 " - " $7}' "${EROOT}"etc/passwd | sort)
-		if [[ -n ${bad_shells} ]] ; then
-			echo
-			ewarn "The following users have non-existent shells!"
-			ewarn "${bad_shells}"
-		fi
-	fi
-
-	# https://bugs.gentoo.org/361349
-	if use kernel_linux; then
-		mkdir -p "${EROOT}"run
-
-		if ! grep -qs "^tmpfs.*/run " "${ROOT}"proc/mounts ; then
-			echo
-			ewarn "You should reboot the system now to get /run mounted with tmpfs!"
-		fi
-	fi
-
-	for x in ${REPLACING_VERSIONS}; do
-		if ! version_is_at_least 2.4 ${v}; then
-			ewarn "After updating ${EROOT}etc/profile, please run"
-			ewarn "env-update and . /etc/profile"
-			break
-		fi
-	done
-
-	if [[ -e "${EROOT}"etc/env.d/00basic ]]; then
-		ewarn "${EROOT}etc/env.d/00basic is now ${EROOT}etc/env.d/50baselayout"
-		ewarn "Please migrate your changes."
-	fi
-}


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2017-10-02 18:28 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2017-10-02 18:28 UTC (permalink / raw
  To: gentoo-commits

commit:     a1b8ada17067e903e4544b109c699617e9b678ce
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Mon Oct  2 18:27:06 2017 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Mon Oct  2 18:28:02 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a1b8ada1

sys-apps/baselayout: stabilize 2.4.1-r2 for #631510

Package-Manager: Portage-2.3.8, Repoman-2.3.1

 sys-apps/baselayout/baselayout-2.4.1-r2.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys-apps/baselayout/baselayout-2.4.1-r2.ebuild b/sys-apps/baselayout/baselayout-2.4.1-r2.ebuild
index a535d30248a..0d17f0e8894 100644
--- a/sys-apps/baselayout/baselayout-2.4.1-r2.ebuild
+++ b/sys-apps/baselayout/baselayout-2.4.1-r2.ebuild
@@ -11,7 +11,7 @@ SRC_URI="https://gitweb.gentoo.org/proj/baselayout.git/snapshot/${P}.tar.bz2"
 
 LICENSE="GPL-2"
 SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
+KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
 IUSE="build kernel_linux"
 
 pkg_setup() {


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2017-09-04  6:27 Benda XU
  0 siblings, 0 replies; 124+ messages in thread
From: Benda XU @ 2017-09-04  6:27 UTC (permalink / raw
  To: gentoo-commits

commit:     d129d916465c0ddb7a67f12c3e928be4a25da214
Author:     Benda Xu <heroxbd <AT> gentoo <DOT> org>
AuthorDate: Mon Sep  4 06:16:45 2017 +0000
Commit:     Benda XU <heroxbd <AT> gentoo <DOT> org>
CommitDate: Mon Sep  4 06:27:34 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d129d916

sys-apps/baselayout: handle Prefix-related paths more robustly.

  commit 6d45b94abca08b1c124e11 fails with a corner case that EPREFIX
  contains substring /usr.  This commit fix it by using the well tested
  hprefixify from prefix.eclass.

  Also apply hprefix to other files to simplify the ebuild.  Tested on
  both Prefix and vanilla Gentoo.

  Move the host PATHs to /etc/env.d/99host.

  For Prefix, ROOTPATH will always be used, because it is almost a single
  user system.

Package-Manager: Portage-2.3.3, Repoman-2.3.1

 sys-apps/baselayout/baselayout-2.4.1-r2.ebuild | 245 +++++++++++++++++++++++++
 1 file changed, 245 insertions(+)

diff --git a/sys-apps/baselayout/baselayout-2.4.1-r2.ebuild b/sys-apps/baselayout/baselayout-2.4.1-r2.ebuild
new file mode 100644
index 00000000000..a535d30248a
--- /dev/null
+++ b/sys-apps/baselayout/baselayout-2.4.1-r2.ebuild
@@ -0,0 +1,245 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit eutils multilib versionator prefix
+
+DESCRIPTION="Filesystem baselayout and init scripts"
+HOMEPAGE="https://www.gentoo.org/"
+SRC_URI="https://gitweb.gentoo.org/proj/baselayout.git/snapshot/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
+IUSE="build kernel_linux"
+
+pkg_setup() {
+	multilib_layout
+}
+
+# Create our multilib dirs - the Makefile has no knowledge of this
+multilib_layout() {
+	local libdir libdirs=$(get_all_libdirs) def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
+	: ${libdirs:=lib}	# it isn't that we don't trust multilib.eclass...
+
+	[ -z "${def_libdir}" ] && die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
+
+	# figure out which paths should be symlinks and which should be directories
+	local dirs syms exp d
+	for libdir in ${libdirs} ; do
+		exp=( {,usr/,usr/local/}${libdir} )
+		for d in "${exp[@]}" ; do
+			# most things should be dirs
+			if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
+				[ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
+			else
+				[ -h "${d}" ] && syms+=" ${d}"
+			fi
+		done
+	done
+	if [ -n "${syms}${dirs}" ] ; then
+		ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
+		ewarn "have these paths configured as follows:"
+		[ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
+		[ -n "${syms}" ] && ewarn "directories:${syms}"
+		ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
+		ewarn "If things fail, you will need to manually create/move the directories."
+		echo
+	fi
+
+	# setup symlinks and dirs where we expect them to be; do not migrate
+	# data ... just fall over in that case.
+	local prefix
+	for prefix in "${EROOT}"{,usr/,usr/local/} ; do
+		if [ "${SYMLINK_LIB}" = yes ] ; then
+			# we need to make sure "lib" points to the native libdir
+			if [ -h "${prefix}lib" ] ; then
+				# it's already a symlink!  assume it's pointing to right place ...
+				continue
+			elif [ -d "${prefix}lib" ] ; then
+				# "lib" is a dir, so need to convert to a symlink
+				ewarn "Converting ${prefix}lib from a dir to a symlink"
+				rm -f "${prefix}lib"/.keep
+				if rmdir "${prefix}lib" 2>/dev/null ; then
+					ln -s ${def_libdir} "${prefix}lib" || die
+				else
+					die "non-empty dir found where we needed a symlink: ${prefix}lib"
+				fi
+			else
+				# nothing exists, so just set it up sanely
+				ewarn "Initializing ${prefix}lib as a symlink"
+				mkdir -p "${prefix}" || die
+				rm -f "${prefix}lib" || die
+				ln -s ${def_libdir} "${prefix}lib" || die
+				mkdir -p "${prefix}${def_libdir}" #423571
+			fi
+		else
+			# we need to make sure "lib" is a dir
+			if [ -h "${prefix}lib" ] ; then
+				# "lib" is a symlink, so need to convert to a dir
+				ewarn "Converting ${prefix}lib from a symlink to a dir"
+				rm -f "${prefix}lib" || die
+				if [ -d "${prefix}lib32" ] ; then
+					ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
+					mv "${prefix}lib32" "${prefix}lib" || die
+				else
+					mkdir -p "${prefix}lib" || die
+				fi
+			elif [ -d "${prefix}lib" ] && ! has lib32 ${libdirs} ; then
+				# make sure the old "lib" ABI location does not exist; we
+				# only symlinked the lib dir on systems where we moved it
+				# to "lib32" ...
+				case ${CHOST} in
+				*-gentoo-freebsd*) ;; # We want it the other way on fbsd.
+				i?86*|x86_64*|powerpc*|sparc*|s390*)
+					if [ -d "${prefix}lib32" ] ; then
+						rm -f "${prefix}lib32"/.keep
+						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
+							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
+							die "non-empty dir found where there should be none: ${prefix}lib32"
+						fi
+					fi
+					;;
+				esac
+			else
+				# nothing exists, so just set it up sanely
+				ewarn "Initializing ${prefix}lib as a dir"
+				mkdir -p "${prefix}lib" || die
+			fi
+		fi
+	done
+}
+
+pkg_preinst() {
+	# Bug #217848 - Since the remap_dns_vars() called by pkg_preinst() of
+	# the baselayout-1.x ebuild copies all the real configs from the user's
+	# /etc/conf.d into ${D}, it makes them all appear to be the default
+	# versions. In order to protect them from being unmerged after this
+	# upgrade, modify their timestamps.
+	touch "${EROOT}"/etc/conf.d/* 2>/dev/null
+
+	# This is written in src_install (so it's in CONTENTS), but punt all
+	# pending updates to avoid user having to do etc-update (and make the
+	# pkg_postinst logic simpler).
+	rm -f "${EROOT}"/etc/._cfg????_gentoo-release
+
+	# We need to install directories and maybe some dev nodes when building
+	# stages, but they cannot be in CONTENTS.
+	# Also, we cannot reference $S as binpkg will break so we do this.
+	multilib_layout
+	if use build ; then
+		emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout || die
+	fi
+	rm -f "${ED}"/usr/share/${PN}/Makefile
+}
+
+src_prepare() {
+	default
+	if use prefix; then
+		hprefixify -e "/EUID/s,0,${EUID}," -q '"' etc/profile
+		hprefixify etc/{env.d/50baselayout,shells} share.Linux/passwd
+		echo PATH=/usr/bin:/bin >> etc/env.d/99host
+		echo ROOTPATH=/usr/sbin:/sbin:/usr/bin:/bin >> etc/env.d/99host
+	fi
+
+	# handle multilib paths.  do it here because we want this behavior
+	# regardless of the C library that you're using.  we do explicitly
+	# list paths which the native ldconfig searches, but this isn't
+	# problematic as it doesn't change the resulting ld.so.cache or
+	# take longer to generate.  similarly, listing both the native
+	# path and the symlinked path doesn't change the resulting cache.
+	local libdir ldpaths
+	for libdir in $(get_all_libdirs) ; do
+		ldpaths+=":${EPREFIX}/${libdir}:${EPREFIX}/usr/${libdir}"
+		ldpaths+=":${EPREFIX}/usr/local/${libdir}"
+	done
+	echo "LDPATH='${ldpaths#:}'" >> etc/env.d/50baselayout
+
+	# rc-scripts version for testing of features that *should* be present
+	echo "Gentoo Base System release ${PV}" > etc/gentoo-release
+}
+
+src_install() {
+	emake \
+		OS=$(usex kernel_FreeBSD BSD Linux) \
+		DESTDIR="${ED}" \
+		install
+	dodoc ChangeLog
+
+	# need the makefile in pkg_preinst
+	insinto /usr/share/${PN}
+	doins Makefile
+}
+
+pkg_postinst() {
+	local x
+
+	# We installed some files to /usr/share/baselayout instead of /etc to stop
+	# (1) overwriting the user's settings
+	# (2) screwing things up when attempting to merge files
+	# (3) accidentally packaging up personal files with quickpkg
+	# If they don't exist then we install them
+	for x in master.passwd passwd shadow group fstab ; do
+		[ -e "${EROOT}etc/${x}" ] && continue
+		[ -e "${EROOT}usr/share/baselayout/${x}" ] || continue
+		cp -p "${EROOT}usr/share/baselayout/${x}" "${EROOT}"etc
+	done
+
+	# Force shadow permissions to not be world-readable #260993
+	for x in shadow ; do
+		[ -e "${EROOT}etc/${x}" ] && chmod o-rwx "${EROOT}etc/${x}"
+	done
+
+	# Take care of the etc-update for the user
+	if [ -e "${EROOT}"etc/._cfg0000_gentoo-release ] ; then
+		mv "${EROOT}"etc/._cfg0000_gentoo-release "${EROOT}"etc/gentoo-release
+	fi
+
+	# whine about users that lack passwords #193541
+	if [[ -e "${EROOT}"etc/shadow ]] ; then
+		local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
+		if [[ -n ${bad_users} ]] ; then
+			echo
+			ewarn "The following users lack passwords!"
+			ewarn ${bad_users}
+		fi
+	fi
+
+	# baselayout leaves behind a lot of .keep files, so let's clean them up
+	find "${EROOT}"lib*/rcscripts/ -name .keep -exec rm -f {} + 2>/dev/null
+	find "${EROOT}"lib*/rcscripts/ -depth -type d -exec rmdir {} + 2>/dev/null
+
+	# whine about users with invalid shells #215698
+	if [[ -e "${EROOT}"etc/passwd ]] ; then
+		local bad_shells=$(awk -F: 'system("test -e " $7) { print $1 " - " $7}' "${EROOT}"etc/passwd | sort)
+		if [[ -n ${bad_shells} ]] ; then
+			echo
+			ewarn "The following users have non-existent shells!"
+			ewarn "${bad_shells}"
+		fi
+	fi
+
+	# https://bugs.gentoo.org/361349
+	if use kernel_linux; then
+		mkdir -p "${EROOT}"run
+
+		if ! grep -qs "^tmpfs.*/run " "${ROOT}"proc/mounts ; then
+			echo
+			ewarn "You should reboot the system now to get /run mounted with tmpfs!"
+		fi
+	fi
+
+	for x in ${REPLACING_VERSIONS}; do
+		if ! version_is_at_least 2.4 ${v}; then
+			ewarn "After updating ${EROOT}etc/profile, please run"
+			ewarn "env-update and . /etc/profile"
+			break
+		fi
+	done
+
+	if [[ -e "${EROOT}"etc/env.d/00basic ]]; then
+		ewarn "${EROOT}etc/env.d/00basic is now ${EROOT}etc/env.d/50baselayout"
+		ewarn "Please migrate your changes."
+	fi
+}


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2017-08-09 18:59 Tim Harder
  0 siblings, 0 replies; 124+ messages in thread
From: Tim Harder @ 2017-08-09 18:59 UTC (permalink / raw
  To: gentoo-commits

commit:     2abe351d0a4cd318ac47cc3a150b5e930f0f1559
Author:     Tim Harder <radhermit <AT> gentoo <DOT> org>
AuthorDate: Wed Aug  9 18:35:20 2017 +0000
Commit:     Tim Harder <radhermit <AT> gentoo <DOT> org>
CommitDate: Wed Aug  9 18:58:52 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=2abe351d

sys-apps/baselayout: fix version_is_at_least function typo

 sys-apps/baselayout/baselayout-2.4.1-r1.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys-apps/baselayout/baselayout-2.4.1-r1.ebuild b/sys-apps/baselayout/baselayout-2.4.1-r1.ebuild
index e0b71bd2af4..edb3c393e38 100644
--- a/sys-apps/baselayout/baselayout-2.4.1-r1.ebuild
+++ b/sys-apps/baselayout/baselayout-2.4.1-r1.ebuild
@@ -242,7 +242,7 @@ pkg_postinst() {
 	fi
 
 	for x in ${REPLACING_VERSIONS}; do
-		if ! xersion_is_at_least 2.4 ${v}; then
+		if ! version_is_at_least 2.4 ${v}; then
 			ewarn "After updating ${EROOT}etc/profile, please run"
 			ewarn "env-update and . /etc/profile"
 			break


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2017-08-09  9:19 Guilherme Amadio
  0 siblings, 0 replies; 124+ messages in thread
From: Guilherme Amadio @ 2017-08-09  9:19 UTC (permalink / raw
  To: gentoo-commits

commit:     6d45b94abca08b1c124e1125375d1c86702fa14b
Author:     Guilherme Amadio <amadio <AT> gentoo <DOT> org>
AuthorDate: Wed Aug  9 09:10:43 2017 +0000
Commit:     Guilherme Amadio <amadio <AT> gentoo <DOT> org>
CommitDate: Wed Aug  9 09:19:12 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=6d45b94a

sys-apps/baselayout: add ${EPREFIX}/bin to $PATH on prefix

Fixes: https://bugs.gentoo.org/624522
Package-Manager: Portage-2.3.6, Repoman-2.3.3

 .../baselayout/{baselayout-2.4.1.ebuild => baselayout-2.4.1-r1.ebuild}   | 1 +
 1 file changed, 1 insertion(+)

diff --git a/sys-apps/baselayout/baselayout-2.4.1.ebuild b/sys-apps/baselayout/baselayout-2.4.1-r1.ebuild
similarity index 99%
rename from sys-apps/baselayout/baselayout-2.4.1.ebuild
rename to sys-apps/baselayout/baselayout-2.4.1-r1.ebuild
index 0c2d7de0cd4..e0b71bd2af4 100644
--- a/sys-apps/baselayout/baselayout-2.4.1.ebuild
+++ b/sys-apps/baselayout/baselayout-2.4.1-r1.ebuild
@@ -144,6 +144,7 @@ src_prepare() {
 			-e "/PATH=.*\/bin/s|\"$|:/usr/bin:/bin\"|" \
 			etc/profile || die
 		sed -i -r \
+			-e "s@:/bin@:${EPREFIX}/bin@g" \
 			-e "s:/(etc/env.d|opt|usr):${EPREFIX}/\1:g" \
 			-e "/^PATH=/s|\"$|:${EPREFIX}/usr/sbin:${EPREFIX}/sbin\"|" \
 			etc/env.d/50baselayout || die


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2017-06-09 18:44 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2017-06-09 18:44 UTC (permalink / raw
  To: gentoo-commits

commit:     a8ee28f007b715efe658d1cf8a3656dd9055265d
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Fri Jun  9 18:42:31 2017 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Fri Jun  9 18:42:51 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a8ee28f0

sys-apps/baselayout: 2.4.1 version bump

Package-Manager: Portage-2.3.5, Repoman-2.3.1

 sys-apps/baselayout/Manifest                |   1 +
 sys-apps/baselayout/baselayout-2.4.1.ebuild | 255 ++++++++++++++++++++++++++++
 2 files changed, 256 insertions(+)

diff --git a/sys-apps/baselayout/Manifest b/sys-apps/baselayout/Manifest
index 46912af538f..fff04068279 100644
--- a/sys-apps/baselayout/Manifest
+++ b/sys-apps/baselayout/Manifest
@@ -1 +1,2 @@
 DIST baselayout-2.3.tar.bz2 32266 SHA256 e7bbd7d71ede6820a37738fd2e9010d54545fbd73c16ee686663dee2075c5d4c SHA512 cf9636c7d5c1fb4abf63dd931dc8ceaa30cf871f5e576a53dcc207abd54b8eec7778a1ef29766e2e8f5c0a098b9b3d07361717ae190027d1e102aceb4a07cacb WHIRLPOOL 92e88f5ff0eddd56698977bb6578ee53f62755bfdd9023fc7151415fce4a87952b539e0da3a7056a0f90c668a5a1c4fe2b43af0359fe9c40b4dc7b50568711d7
+DIST baselayout-2.4.1.tar.bz2 31307 SHA256 d75ae329ba47f26e7c41c6e060f57a8f1f1a97420d39e6a49ab2bdb86c4a2c00 SHA512 e505ad81834aafb574ffee9bc1fce216c1c8c7fa11b0095580f87a37e4b9efb057ee78db7cd5affc64f05d5dd0592c671304414c119b37d86dfaa1e7b84ce7c1 WHIRLPOOL 9057ab259c8ef61bb56d13b237e343f6a7aec8fef61a0a9872fc7e0aa34a7dc772cd4701a76341d170eaa3ba328ad0b693d098189ca7f4aa9e5e32232f1d1801

diff --git a/sys-apps/baselayout/baselayout-2.4.1.ebuild b/sys-apps/baselayout/baselayout-2.4.1.ebuild
new file mode 100644
index 00000000000..0c2d7de0cd4
--- /dev/null
+++ b/sys-apps/baselayout/baselayout-2.4.1.ebuild
@@ -0,0 +1,255 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit eutils multilib versionator
+
+DESCRIPTION="Filesystem baselayout and init scripts"
+HOMEPAGE="https://www.gentoo.org/"
+SRC_URI="https://gitweb.gentoo.org/proj/baselayout.git/snapshot/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
+IUSE="build kernel_linux"
+
+pkg_setup() {
+	multilib_layout
+}
+
+# Create our multilib dirs - the Makefile has no knowledge of this
+multilib_layout() {
+	local libdir libdirs=$(get_all_libdirs) def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
+	: ${libdirs:=lib}	# it isn't that we don't trust multilib.eclass...
+
+	[ -z "${def_libdir}" ] && die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
+
+	# figure out which paths should be symlinks and which should be directories
+	local dirs syms exp d
+	for libdir in ${libdirs} ; do
+		exp=( {,usr/,usr/local/}${libdir} )
+		for d in "${exp[@]}" ; do
+			# most things should be dirs
+			if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
+				[ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
+			else
+				[ -h "${d}" ] && syms+=" ${d}"
+			fi
+		done
+	done
+	if [ -n "${syms}${dirs}" ] ; then
+		ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
+		ewarn "have these paths configured as follows:"
+		[ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
+		[ -n "${syms}" ] && ewarn "directories:${syms}"
+		ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
+		ewarn "If things fail, you will need to manually create/move the directories."
+		echo
+	fi
+
+	# setup symlinks and dirs where we expect them to be; do not migrate
+	# data ... just fall over in that case.
+	local prefix
+	for prefix in "${EROOT}"{,usr/,usr/local/} ; do
+		if [ "${SYMLINK_LIB}" = yes ] ; then
+			# we need to make sure "lib" points to the native libdir
+			if [ -h "${prefix}lib" ] ; then
+				# it's already a symlink!  assume it's pointing to right place ...
+				continue
+			elif [ -d "${prefix}lib" ] ; then
+				# "lib" is a dir, so need to convert to a symlink
+				ewarn "Converting ${prefix}lib from a dir to a symlink"
+				rm -f "${prefix}lib"/.keep
+				if rmdir "${prefix}lib" 2>/dev/null ; then
+					ln -s ${def_libdir} "${prefix}lib" || die
+				else
+					die "non-empty dir found where we needed a symlink: ${prefix}lib"
+				fi
+			else
+				# nothing exists, so just set it up sanely
+				ewarn "Initializing ${prefix}lib as a symlink"
+				mkdir -p "${prefix}" || die
+				rm -f "${prefix}lib" || die
+				ln -s ${def_libdir} "${prefix}lib" || die
+				mkdir -p "${prefix}${def_libdir}" #423571
+			fi
+		else
+			# we need to make sure "lib" is a dir
+			if [ -h "${prefix}lib" ] ; then
+				# "lib" is a symlink, so need to convert to a dir
+				ewarn "Converting ${prefix}lib from a symlink to a dir"
+				rm -f "${prefix}lib" || die
+				if [ -d "${prefix}lib32" ] ; then
+					ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
+					mv "${prefix}lib32" "${prefix}lib" || die
+				else
+					mkdir -p "${prefix}lib" || die
+				fi
+			elif [ -d "${prefix}lib" ] && ! has lib32 ${libdirs} ; then
+				# make sure the old "lib" ABI location does not exist; we
+				# only symlinked the lib dir on systems where we moved it
+				# to "lib32" ...
+				case ${CHOST} in
+				*-gentoo-freebsd*) ;; # We want it the other way on fbsd.
+				i?86*|x86_64*|powerpc*|sparc*|s390*)
+					if [ -d "${prefix}lib32" ] ; then
+						rm -f "${prefix}lib32"/.keep
+						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
+							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
+							die "non-empty dir found where there should be none: ${prefix}lib32"
+						fi
+					fi
+					;;
+				esac
+			else
+				# nothing exists, so just set it up sanely
+				ewarn "Initializing ${prefix}lib as a dir"
+				mkdir -p "${prefix}lib" || die
+			fi
+		fi
+	done
+}
+
+pkg_preinst() {
+	# Bug #217848 - Since the remap_dns_vars() called by pkg_preinst() of
+	# the baselayout-1.x ebuild copies all the real configs from the user's
+	# /etc/conf.d into ${D}, it makes them all appear to be the default
+	# versions. In order to protect them from being unmerged after this
+	# upgrade, modify their timestamps.
+	touch "${EROOT}"/etc/conf.d/* 2>/dev/null
+
+	# This is written in src_install (so it's in CONTENTS), but punt all
+	# pending updates to avoid user having to do etc-update (and make the
+	# pkg_postinst logic simpler).
+	rm -f "${EROOT}"/etc/._cfg????_gentoo-release
+
+	# We need to install directories and maybe some dev nodes when building
+	# stages, but they cannot be in CONTENTS.
+	# Also, we cannot reference $S as binpkg will break so we do this.
+	multilib_layout
+	if use build ; then
+		emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout || die
+	fi
+	rm -f "${ED}"/usr/share/${PN}/Makefile
+}
+
+src_prepare() {
+	default
+	if use prefix; then
+		sed -i -r\
+			-e "/PATH=/!s:/(etc|usr/bin|bin):\"${EPREFIX}\"/\1:g" \
+			-e "/PATH=/s|([:\"])/|\1${EPREFIX}/|g" \
+			-e "/PATH=.*\/sbin/s|\"$|:/usr/sbin:/sbin\"|" \
+			-e "/PATH=.*\/bin/s|\"$|:/usr/bin:/bin\"|" \
+			etc/profile || die
+		sed -i -r \
+			-e "s:/(etc/env.d|opt|usr):${EPREFIX}/\1:g" \
+			-e "/^PATH=/s|\"$|:${EPREFIX}/usr/sbin:${EPREFIX}/sbin\"|" \
+			etc/env.d/50baselayout || die
+		sed -i "s:/bin:${EPREFIX}/bin:" etc/shells || die
+		sed -i -r \
+			-e "s,:/(root|bin|sbin|var|),:${EPREFIX}/\1,g" \
+			share.Linux/passwd || die
+	fi
+
+	# handle multilib paths.  do it here because we want this behavior
+	# regardless of the C library that you're using.  we do explicitly
+	# list paths which the native ldconfig searches, but this isn't
+	# problematic as it doesn't change the resulting ld.so.cache or
+	# take longer to generate.  similarly, listing both the native
+	# path and the symlinked path doesn't change the resulting cache.
+	local libdir ldpaths
+	for libdir in $(get_all_libdirs) ; do
+		ldpaths+=":${EPREFIX}/${libdir}:${EPREFIX}/usr/${libdir}"
+		ldpaths+=":${EPREFIX}/usr/local/${libdir}"
+	done
+	echo "LDPATH='${ldpaths#:}'" >> etc/env.d/50baselayout
+
+	# rc-scripts version for testing of features that *should* be present
+	echo "Gentoo Base System release ${PV}" > etc/gentoo-release
+}
+
+src_install() {
+	emake \
+		OS=$(usex kernel_FreeBSD BSD Linux) \
+		DESTDIR="${ED}" \
+		install
+	dodoc ChangeLog
+
+	# need the makefile in pkg_preinst
+	insinto /usr/share/${PN}
+	doins Makefile
+}
+
+pkg_postinst() {
+	local x
+
+	# We installed some files to /usr/share/baselayout instead of /etc to stop
+	# (1) overwriting the user's settings
+	# (2) screwing things up when attempting to merge files
+	# (3) accidentally packaging up personal files with quickpkg
+	# If they don't exist then we install them
+	for x in master.passwd passwd shadow group fstab ; do
+		[ -e "${EROOT}etc/${x}" ] && continue
+		[ -e "${EROOT}usr/share/baselayout/${x}" ] || continue
+		cp -p "${EROOT}usr/share/baselayout/${x}" "${EROOT}"etc
+	done
+
+	# Force shadow permissions to not be world-readable #260993
+	for x in shadow ; do
+		[ -e "${EROOT}etc/${x}" ] && chmod o-rwx "${EROOT}etc/${x}"
+	done
+
+	# Take care of the etc-update for the user
+	if [ -e "${EROOT}"etc/._cfg0000_gentoo-release ] ; then
+		mv "${EROOT}"etc/._cfg0000_gentoo-release "${EROOT}"etc/gentoo-release
+	fi
+
+	# whine about users that lack passwords #193541
+	if [[ -e "${EROOT}"etc/shadow ]] ; then
+		local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
+		if [[ -n ${bad_users} ]] ; then
+			echo
+			ewarn "The following users lack passwords!"
+			ewarn ${bad_users}
+		fi
+	fi
+
+	# baselayout leaves behind a lot of .keep files, so let's clean them up
+	find "${EROOT}"lib*/rcscripts/ -name .keep -exec rm -f {} + 2>/dev/null
+	find "${EROOT}"lib*/rcscripts/ -depth -type d -exec rmdir {} + 2>/dev/null
+
+	# whine about users with invalid shells #215698
+	if [[ -e "${EROOT}"etc/passwd ]] ; then
+		local bad_shells=$(awk -F: 'system("test -e " $7) { print $1 " - " $7}' "${EROOT}"etc/passwd | sort)
+		if [[ -n ${bad_shells} ]] ; then
+			echo
+			ewarn "The following users have non-existent shells!"
+			ewarn "${bad_shells}"
+		fi
+	fi
+
+	# https://bugs.gentoo.org/361349
+	if use kernel_linux; then
+		mkdir -p "${EROOT}"run
+
+		if ! grep -qs "^tmpfs.*/run " "${ROOT}"proc/mounts ; then
+			echo
+			ewarn "You should reboot the system now to get /run mounted with tmpfs!"
+		fi
+	fi
+
+	for x in ${REPLACING_VERSIONS}; do
+		if ! xersion_is_at_least 2.4 ${v}; then
+			ewarn "After updating ${EROOT}etc/profile, please run"
+			ewarn "env-update and . /etc/profile"
+			break
+		fi
+	done
+
+	if [[ -e "${EROOT}"etc/env.d/00basic ]]; then
+		ewarn "${EROOT}etc/env.d/00basic is now ${EROOT}etc/env.d/50baselayout"
+		ewarn "Please migrate your changes."
+	fi
+}


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2017-01-20 16:14 Mike Frysinger
  0 siblings, 0 replies; 124+ messages in thread
From: Mike Frysinger @ 2017-01-20 16:14 UTC (permalink / raw
  To: gentoo-commits

commit:     d8b95cc8fb5ea6e5f58e9762d0cb7d88a7e674e2
Author:     Mike Frysinger <vapier <AT> gentoo <DOT> org>
AuthorDate: Fri Jan 20 16:14:14 2017 +0000
Commit:     Mike Frysinger <vapier <AT> gentoo <DOT> org>
CommitDate: Fri Jan 20 16:14:28 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=d8b95cc8

sys-apps/baselayout: mark 2.3 arm64/m68k/s390/sh stable

 sys-apps/baselayout/baselayout-2.3.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys-apps/baselayout/baselayout-2.3.ebuild b/sys-apps/baselayout/baselayout-2.3.ebuild
index da18064..7e9b9de 100644
--- a/sys-apps/baselayout/baselayout-2.3.ebuild
+++ b/sys-apps/baselayout/baselayout-2.3.ebuild
@@ -12,7 +12,7 @@ SRC_URI="https://dev.gentoo.org/~williamh/dist/${P}.tar.bz2"
 
 LICENSE="GPL-2"
 SLOT="0"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ia64 ~m68k ~mips ppc ppc64 ~s390 ~sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
+KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
 IUSE="build kernel_linux"
 
 pkg_setup() {


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2017-01-17 16:23 Lars Wendler
  0 siblings, 0 replies; 124+ messages in thread
From: Lars Wendler @ 2017-01-17 16:23 UTC (permalink / raw
  To: gentoo-commits

commit:     164744dafee63612ffb7dc4abb177fb79f338de9
Author:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
AuthorDate: Tue Jan 17 16:12:39 2017 +0000
Commit:     Lars Wendler <polynomial-c <AT> gentoo <DOT> org>
CommitDate: Tue Jan 17 16:23:43 2017 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=164744da

sys-apps/baselayout: Removed old.

Package-Manager: Portage-2.3.3, Repoman-2.3.1

 sys-apps/baselayout/Manifest                 |   1 -
 sys-apps/baselayout/baselayout-2.2-r1.ebuild | 256 ---------------------------
 sys-apps/baselayout/baselayout-2.2.ebuild    | 234 ------------------------
 3 files changed, 491 deletions(-)

diff --git a/sys-apps/baselayout/Manifest b/sys-apps/baselayout/Manifest
index 93b99ea..46912af 100644
--- a/sys-apps/baselayout/Manifest
+++ b/sys-apps/baselayout/Manifest
@@ -1,2 +1 @@
-DIST baselayout-2.2.tar.bz2 40744 SHA256 11d4a223b06da545c3e59e07c9195570f334b5b1be05d995df0ebc8ea2203e98 SHA512 a5199c42e835d9f2683cc94f3c4c47ecdc392316c24e0932845736e2e90479b0c5c8ad72ead8e0537f097405b7d7548d00b87b7ff8c9e3651486e3c5c0970b36 WHIRLPOOL 60cc4f7f76c5a45c15303e526decffb3bad2b50ac659b1dd072d2ed4b0eb0b31929a1a733ddb03a31ee5882b889a4efb87206f63ffaa2b11e26d36afd0933a95
 DIST baselayout-2.3.tar.bz2 32266 SHA256 e7bbd7d71ede6820a37738fd2e9010d54545fbd73c16ee686663dee2075c5d4c SHA512 cf9636c7d5c1fb4abf63dd931dc8ceaa30cf871f5e576a53dcc207abd54b8eec7778a1ef29766e2e8f5c0a098b9b3d07361717ae190027d1e102aceb4a07cacb WHIRLPOOL 92e88f5ff0eddd56698977bb6578ee53f62755bfdd9023fc7151415fce4a87952b539e0da3a7056a0f90c668a5a1c4fe2b43af0359fe9c40b4dc7b50568711d7

diff --git a/sys-apps/baselayout/baselayout-2.2-r1.ebuild b/sys-apps/baselayout/baselayout-2.2-r1.ebuild
deleted file mode 100644
index 11326dc..00000000
--- a/sys-apps/baselayout/baselayout-2.2-r1.ebuild
+++ /dev/null
@@ -1,256 +0,0 @@
-# Copyright 1999-2016 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-EAPI=5
-
-inherit eutils multilib
-
-DESCRIPTION="Filesystem baselayout and init scripts"
-HOMEPAGE="https://www.gentoo.org/"
-SRC_URI="mirror://gentoo/${P}.tar.bz2
-	https://dev.gentoo.org/~vapier/dist/${P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
-IUSE="build kernel_linux"
-
-pkg_setup() {
-	multilib_layout
-}
-
-# Create our multilib dirs - the Makefile has no knowledge of this
-multilib_warn() {
-	local syms=$1 dirs=$2 def_libdir=$3
-
-	[ -z "${syms}${dirs}" ] && return
-
-	ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB}, so that means"
-	if [ -z "${syms}" ] ; then
-		ewarn "you need to have these paths as symlinks to ${def_libdir}:"
-		ewarn "$1"
-	fi
-}
-multilib_layout() {
-	local libdir libdirs=$(get_all_libdirs) def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
-	: ${libdirs:=lib}	# it isn't that we don't trust multilib.eclass...
-
-	[ -z "${def_libdir}" ] && die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
-
-	# figure out which paths should be symlinks and which should be directories
-	local dirs syms exp d
-	for libdir in ${libdirs} ; do
-		exp=( {,usr/,usr/local/}${libdir} )
-		for d in "${exp[@]}" ; do
-			# most things should be dirs
-			if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
-				[ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
-			else
-				[ -h "${d}" ] && syms+=" ${d}"
-			fi
-		done
-	done
-	if [ -n "${syms}${dirs}" ] ; then
-		ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
-		ewarn "have these paths configured as follows:"
-		[ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
-		[ -n "${syms}" ] && ewarn "directories:${syms}"
-		ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
-		ewarn "If things fail, you will need to manually create/move the directories."
-		echo
-	fi
-
-	# setup symlinks and dirs where we expect them to be; do not migrate
-	# data ... just fall over in that case.
-	local prefix
-	for prefix in "${EROOT}"{,usr/,usr/local/} ; do
-		if [ "${SYMLINK_LIB}" = yes ] ; then
-			# we need to make sure "lib" points to the native libdir
-			if [ -h "${prefix}lib" ] ; then
-				# it's already a symlink!  assume it's pointing to right place ...
-				continue
-			elif [ -d "${prefix}lib" ] ; then
-				# "lib" is a dir, so need to convert to a symlink
-				ewarn "Converting ${prefix}lib from a dir to a symlink"
-				rm -f "${prefix}lib"/.keep
-				if rmdir "${prefix}lib" 2>/dev/null ; then
-					ln -s ${def_libdir} "${prefix}lib" || die
-				else
-					die "non-empty dir found where we needed a symlink: ${prefix}lib"
-				fi
-			else
-				# nothing exists, so just set it up sanely
-				ewarn "Initializing ${prefix}lib as a symlink"
-				mkdir -p "${prefix}" || die
-				rm -f "${prefix}lib" || die
-				ln -s ${def_libdir} "${prefix}lib" || die
-				mkdir -p "${prefix}${def_libdir}" #423571
-			fi
-		else
-			# we need to make sure "lib" is a dir
-			if [ -h "${prefix}lib" ] ; then
-				# "lib" is a symlink, so need to convert to a dir
-				ewarn "Converting ${prefix}lib from a symlink to a dir"
-				rm -f "${prefix}lib" || die
-				if [ -d "${prefix}lib32" ] ; then
-					ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
-					mv "${prefix}lib32" "${prefix}lib" || die
-				else
-					mkdir -p "${prefix}lib" || die
-				fi
-			elif [ -d "${prefix}lib" ] ; then
-				# make sure the old "lib" ABI location does not exist; we
-				# only symlinked the lib dir on systems where we moved it
-				# to "lib32" ...
-				case ${CHOST} in
-				*-gentoo-freebsd*) ;; # We want it the other way on fbsd.
-				i?86*|x86_64*|powerpc*|sparc*|s390*)
-					if [ -d "${prefix}lib32" ] ; then
-						rm -f "${prefix}lib32"/.keep
-						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
-							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
-							die "non-empty dir found where there should be none: ${prefix}lib32"
-						fi
-					fi
-					;;
-				esac
-			else
-				# nothing exists, so just set it up sanely
-				ewarn "Initializing ${prefix}lib as a dir"
-				mkdir -p "${prefix}" || die
-				rm -f "${prefix}lib" || die
-				ln -s ${def_libdir} "${prefix}lib" || die
-			fi
-		fi
-	done
-}
-
-pkg_preinst() {
-	# Bug #217848 - Since the remap_dns_vars() called by pkg_preinst() of
-	# the baselayout-1.x ebuild copies all the real configs from the user's
-	# /etc/conf.d into ${D}, it makes them all appear to be the default
-	# versions. In order to protect them from being unmerged after this
-	# upgrade, modify their timestamps.
-	touch "${EROOT}"/etc/conf.d/* 2>/dev/null
-
-	# This is written in src_install (so it's in CONTENTS), but punt all
-	# pending updates to avoid user having to do etc-update (and make the
-	# pkg_postinst logic simpler).
-	rm -f "${EROOT}"/etc/._cfg????_gentoo-release
-
-	# We need to install directories and maybe some dev nodes when building
-	# stages, but they cannot be in CONTENTS.
-	# Also, we cannot reference $S as binpkg will break so we do this.
-	multilib_layout
-	if use build ; then
-		emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout || die
-	fi
-	rm -f "${ED}"/usr/share/${PN}/Makefile
-}
-
-src_prepare() {
-	if use prefix; then
-		sed -i -r\
-			-e "/PATH=/!s:/(etc|usr/bin|bin):\"${EPREFIX}\"/\1:g" \
-			-e "/PATH=/s|([:\"])/|\1${EPREFIX}/|g" \
-			-e "/PATH=.*\/sbin/s|\"$|:/usr/sbin:/sbin\"|" \
-			-e "/PATH=.*\/bin/s|\"$|:/usr/bin:/bin\"|" \
-			etc/profile || die
-		sed -i -r \
-			-e "s:/(etc/env.d|opt|usr):${EPREFIX}/\1:g" \
-			-e "/^PATH=/s|\"$|:${EPREFIX}/usr/sbin:${EPREFIX}/sbin\"|" \
-			etc/env.d/00basic || die
-		sed -i "s:/bin:${EPREFIX}/bin:" etc/shells || die
-		sed -i -r \
-			-e "s,:/(root|bin|sbin|var|),:${EPREFIX}/\1,g" \
-			share.Linux/passwd || die
-	fi
-
-	# handle multilib paths.  do it here because we want this behavior
-	# regardless of the C library that you're using.  we do explicitly
-	# list paths which the native ldconfig searches, but this isn't
-	# problematic as it doesn't change the resulting ld.so.cache or
-	# take longer to generate.  similarly, listing both the native
-	# path and the symlinked path doesn't change the resulting cache.
-	local libdir ldpaths
-	for libdir in $(get_all_libdirs) ; do
-		ldpaths+=":${EPREFIX}/${libdir}:${EPREFIX}/usr/${libdir}"
-		ldpaths+=":${EPREFIX}/usr/local/${libdir}"
-	done
-	echo "LDPATH='${ldpaths#:}'" >> etc/env.d/00basic
-
-	# rc-scripts version for testing of features that *should* be present
-	echo "Gentoo Base System release ${PV}" > etc/gentoo-release
-}
-
-src_install() {
-	emake \
-		OS=$(usex kernel_FreeBSD BSD Linux) \
-		DESTDIR="${ED}" \
-		install
-	dodoc ChangeLog.svn
-
-	# need the makefile in pkg_preinst
-	insinto /usr/share/${PN}
-	doins Makefile
-}
-
-pkg_postinst() {
-	local x
-
-	# We installed some files to /usr/share/baselayout instead of /etc to stop
-	# (1) overwriting the user's settings
-	# (2) screwing things up when attempting to merge files
-	# (3) accidentally packaging up personal files with quickpkg
-	# If they don't exist then we install them
-	for x in master.passwd passwd shadow group fstab ; do
-		[ -e "${EROOT}etc/${x}" ] && continue
-		[ -e "${EROOT}usr/share/baselayout/${x}" ] || continue
-		cp -p "${EROOT}usr/share/baselayout/${x}" "${EROOT}"etc
-	done
-
-	# Force shadow permissions to not be world-readable #260993
-	for x in shadow ; do
-		[ -e "${EROOT}etc/${x}" ] && chmod o-rwx "${EROOT}etc/${x}"
-	done
-
-	# Take care of the etc-update for the user
-	if [ -e "${EROOT}"etc/._cfg0000_gentoo-release ] ; then
-		mv "${EROOT}"etc/._cfg0000_gentoo-release "${EROOT}"etc/gentoo-release
-	fi
-
-	# whine about users that lack passwords #193541
-	if [[ -e "${EROOT}"etc/shadow ]] ; then
-		local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
-		if [[ -n ${bad_users} ]] ; then
-			echo
-			ewarn "The following users lack passwords!"
-			ewarn ${bad_users}
-		fi
-	fi
-
-	# baselayout leaves behind a lot of .keep files, so let's clean them up
-	find "${EROOT}"lib*/rcscripts/ -name .keep -exec rm -f {} + 2>/dev/null
-	find "${EROOT}"lib*/rcscripts/ -depth -type d -exec rmdir {} + 2>/dev/null
-
-	# whine about users with invalid shells #215698
-	if [[ -e "${EROOT}"etc/passwd ]] ; then
-		local bad_shells=$(awk -F: 'system("test -e " $7) { print $1 " - " $7}' "${EROOT}"etc/passwd | sort)
-		if [[ -n ${bad_shells} ]] ; then
-			echo
-			ewarn "The following users have non-existent shells!"
-			ewarn "${bad_shells}"
-		fi
-	fi
-
-	# https://bugs.gentoo.org/361349
-	if use kernel_linux; then
-		mkdir -p "${EROOT}"run
-
-		if ! grep -qs "^tmpfs.*/run " "${ROOT}"proc/mounts ; then
-			echo
-			ewarn "You should reboot the system now to get /run mounted with tmpfs!"
-		fi
-	fi
-}

diff --git a/sys-apps/baselayout/baselayout-2.2.ebuild b/sys-apps/baselayout/baselayout-2.2.ebuild
deleted file mode 100644
index 44077db..00000000
--- a/sys-apps/baselayout/baselayout-2.2.ebuild
+++ /dev/null
@@ -1,234 +0,0 @@
-# Copyright 1999-2014 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-# $Id$
-
-inherit eutils multilib
-
-DESCRIPTION="Filesystem baselayout and init scripts"
-HOMEPAGE="https://www.gentoo.org/"
-SRC_URI="mirror://gentoo/${P}.tar.bz2
-	https://dev.gentoo.org/~vapier/dist/${P}.tar.bz2"
-
-LICENSE="GPL-2"
-SLOT="0"
-KEYWORDS="alpha amd64 arm arm64 hppa ia64 m68k ~mips ppc ppc64 s390 sh sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
-IUSE="build kernel_linux"
-
-pkg_setup() {
-	multilib_layout
-}
-
-# Create our multilib dirs - the Makefile has no knowledge of this
-multilib_warn() {
-	local syms=$1 dirs=$2 def_libdir=$3
-
-	[ -z "${syms}${dirs}" ] && return
-
-	ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB}, so that means"
-	if [ -z "${syms}" ] ; then
-		ewarn "you need to have these paths as symlinks to ${def_libdir}:"
-		ewarn "$1"
-	fi
-}
-multilib_layout() {
-	local libdir libdirs=$(get_all_libdirs) def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
-	: ${libdirs:=lib}	# it isn't that we don't trust multilib.eclass...
-
-	[ -z "${def_libdir}" ] && die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
-
-	# figure out which paths should be symlinks and which should be directories
-	local dirs syms exp d
-	for libdir in ${libdirs} ; do
-		exp=( {,usr/,usr/local/}${libdir} )
-		for d in "${exp[@]/#/${ROOT}}" ; do
-			# most things should be dirs
-			if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
-				[ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
-			else
-				[ -h "${d}" ] && syms+=" ${d}"
-			fi
-		done
-	done
-	if [ -n "${syms}${dirs}" ] ; then
-		ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
-		ewarn "have these paths configured as follows:"
-		[ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
-		[ -n "${syms}" ] && ewarn "directories:${syms}"
-		ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
-		ewarn "If things fail, you will need to manually create/move the directories."
-		echo
-	fi
-
-	# setup symlinks and dirs where we expect them to be; do not migrate
-	# data ... just fall over in that case.
-	local prefix
-	for prefix in "${ROOT}"{,usr/,usr/local/} ; do
-		if [ "${SYMLINK_LIB}" = yes ] ; then
-			# we need to make sure "lib" points to the native libdir
-			if [ -h "${prefix}lib" ] ; then
-				# it's already a symlink!  assume it's pointing to right place ...
-				continue
-			elif [ -d "${prefix}lib" ] ; then
-				# "lib" is a dir, so need to convert to a symlink
-				ewarn "Converting ${prefix}lib from a dir to a symlink"
-				rm -f "${prefix}lib"/.keep
-				if rmdir "${prefix}lib" 2>/dev/null ; then
-					ln -s ${def_libdir} "${prefix}lib" || die
-				else
-					die "non-empty dir found where we needed a symlink: ${prefix}lib"
-				fi
-			else
-				# nothing exists, so just set it up sanely
-				ewarn "Initializing ${prefix}lib as a symlink"
-				mkdir -p "${prefix}" || die
-				rm -f "${prefix}lib" || die
-				ln -s ${def_libdir} "${prefix}lib" || die
-				mkdir -p "${prefix}${def_libdir}" #423571
-			fi
-		else
-			# we need to make sure "lib" is a dir
-			if [ -h "${prefix}lib" ] ; then
-				# "lib" is a symlink, so need to convert to a dir
-				ewarn "Converting ${prefix}lib from a symlink to a dir"
-				rm -f "${prefix}lib" || die
-				if [ -d "${prefix}lib32" ] ; then
-					ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
-					mv "${prefix}lib32" "${prefix}lib" || die
-				else
-					mkdir -p "${prefix}lib" || die
-				fi
-			elif [ -d "${prefix}lib" ] ; then
-				# make sure the old "lib" ABI location does not exist; we
-				# only symlinked the lib dir on systems where we moved it
-				# to "lib32" ...
-				case ${CHOST} in
-				*-gentoo-freebsd*) ;; # We want it the other way on fbsd.
-				i?86*|x86_64*|powerpc*|sparc*|s390*)
-					if [ -d "${prefix}lib32" ] ; then
-						rm -f "${prefix}lib32"/.keep
-						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
-							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
-							die "non-empty dir found where there should be none: ${prefix}lib32"
-						fi
-					fi
-					;;
-				esac
-			else
-				# nothing exists, so just set it up sanely
-				ewarn "Initializing ${prefix}lib as a dir"
-				mkdir -p "${prefix}" || die
-				rm -f "${prefix}lib" || die
-				ln -s ${def_libdir} "${prefix}lib" || die
-			fi
-		fi
-	done
-}
-
-pkg_preinst() {
-	# Bug #217848 - Since the remap_dns_vars() called by pkg_preinst() of
-	# the baselayout-1.x ebuild copies all the real configs from the user's
-	# /etc/conf.d into ${D}, it makes them all appear to be the default
-	# versions. In order to protect them from being unmerged after this
-	# upgrade, modify their timestamps.
-	touch "${ROOT}"/etc/conf.d/* 2>/dev/null
-
-	# This is written in src_install (so it's in CONTENTS), but punt all
-	# pending updates to avoid user having to do etc-update (and make the
-	# pkg_postinst logic simpler).
-	rm -f "${ROOT}"/etc/._cfg????_gentoo-release
-
-	# We need to install directories and maybe some dev nodes when building
-	# stages, but they cannot be in CONTENTS.
-	# Also, we cannot reference $S as binpkg will break so we do this.
-	multilib_layout
-	if use build ; then
-		emake -C "${D}/usr/share/${PN}" DESTDIR="${ROOT}" layout || die
-	fi
-	rm -f "${D}"/usr/share/${PN}/Makefile
-}
-
-src_install() {
-	emake \
-		OS=$(usex kernel_FreeBSD BSD Linux) \
-		DESTDIR="${D}" \
-		install || die
-	dodoc ChangeLog.svn
-
-	# need the makefile in pkg_preinst
-	insinto /usr/share/${PN}
-	doins Makefile || die
-
-	# handle multilib paths.  do it here because we want this behavior
-	# regardless of the C library that you're using.  we do explicitly
-	# list paths which the native ldconfig searches, but this isn't
-	# problematic as it doesn't change the resulting ld.so.cache or
-	# take longer to generate.  similarly, listing both the native
-	# path and the symlinked path doesn't change the resulting cache.
-	local libdir ldpaths
-	for libdir in $(get_all_libdirs) ; do
-		ldpaths+=":/${libdir}:/usr/${libdir}:/usr/local/${libdir}"
-	done
-	echo "LDPATH='${ldpaths#:}'" >> "${D}"/etc/env.d/00basic
-
-	# rc-scripts version for testing of features that *should* be present
-	echo "Gentoo Base System release ${PV}" > "${D}"/etc/gentoo-release
-}
-
-pkg_postinst() {
-	local x
-
-	# We installed some files to /usr/share/baselayout instead of /etc to stop
-	# (1) overwriting the user's settings
-	# (2) screwing things up when attempting to merge files
-	# (3) accidentally packaging up personal files with quickpkg
-	# If they don't exist then we install them
-	for x in master.passwd passwd shadow group fstab ; do
-		[ -e "${ROOT}etc/${x}" ] && continue
-		[ -e "${ROOT}usr/share/baselayout/${x}" ] || continue
-		cp -p "${ROOT}usr/share/baselayout/${x}" "${ROOT}"etc
-	done
-
-	# Force shadow permissions to not be world-readable #260993
-	for x in shadow ; do
-		[ -e "${ROOT}etc/${x}" ] && chmod o-rwx "${ROOT}etc/${x}"
-	done
-
-	# Take care of the etc-update for the user
-	if [ -e "${ROOT}"/etc/._cfg0000_gentoo-release ] ; then
-		mv "${ROOT}"/etc/._cfg0000_gentoo-release "${ROOT}"/etc/gentoo-release
-	fi
-
-	# whine about users that lack passwords #193541
-	if [[ -e ${ROOT}/etc/shadow ]] ; then
-		local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${ROOT}"/etc/shadow)
-		if [[ -n ${bad_users} ]] ; then
-			echo
-			ewarn "The following users lack passwords!"
-			ewarn ${bad_users}
-		fi
-	fi
-
-	# baselayout leaves behind a lot of .keep files, so let's clean them up
-	find "${ROOT}"/lib*/rcscripts/ -name .keep -exec rm -f {} + 2>/dev/null
-	find "${ROOT}"/lib*/rcscripts/ -depth -type d -exec rmdir {} + 2>/dev/null
-
-	# whine about users with invalid shells #215698
-	if [[ -e ${ROOT}/etc/passwd ]] ; then
-		local bad_shells=$(awk -F: 'system("test -e " $7) { print $1 " - " $7}' /etc/passwd | sort)
-		if [[ -n ${bad_shells} ]] ; then
-			echo
-			ewarn "The following users have non-existent shells!"
-			ewarn "${bad_shells}"
-		fi
-	fi
-
-	# https://bugs.gentoo.org/361349
-	if use kernel_linux; then
-		mkdir -p "${ROOT}"/run
-
-		if ! grep -qs "^tmpfs.*/run " "${ROOT}"/proc/mounts ; then
-			echo
-			ewarn "You should reboot the system now to get /run mounted with tmpfs!"
-		fi
-	fi
-}


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2016-12-21 11:23 Thomas Deutschmann
  0 siblings, 0 replies; 124+ messages in thread
From: Thomas Deutschmann @ 2016-12-21 11:23 UTC (permalink / raw
  To: gentoo-commits

commit:     b655dc16e14f6b78b7c49ac026f8bf74ea5ca22b
Author:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
AuthorDate: Wed Dec 21 11:16:57 2016 +0000
Commit:     Thomas Deutschmann <whissi <AT> gentoo <DOT> org>
CommitDate: Wed Dec 21 11:23:40 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=b655dc16

sys-apps/baselayout: x86 stable (bug #596104)

Package-Manager: Portage-2.3.2, Repoman-2.3.1

 sys-apps/baselayout/baselayout-2.3.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys-apps/baselayout/baselayout-2.3.ebuild b/sys-apps/baselayout/baselayout-2.3.ebuild
index c2360c8..72e59e4 100644
--- a/sys-apps/baselayout/baselayout-2.3.ebuild
+++ b/sys-apps/baselayout/baselayout-2.3.ebuild
@@ -12,7 +12,7 @@ SRC_URI="https://dev.gentoo.org/~williamh/dist/${P}.tar.bz2"
 
 LICENSE="GPL-2"
 SLOT="0"
-KEYWORDS="alpha amd64 arm ~arm64 hppa ~ia64 ~m68k ~mips ~ppc ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
+KEYWORDS="alpha amd64 arm ~arm64 hppa ~ia64 ~m68k ~mips ~ppc ppc64 ~s390 ~sh ~sparc x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
 IUSE="build kernel_linux"
 
 pkg_setup() {


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2016-12-17 10:15 Aaron Bauman
  0 siblings, 0 replies; 124+ messages in thread
From: Aaron Bauman @ 2016-12-17 10:15 UTC (permalink / raw
  To: gentoo-commits

commit:     67f31b756f39668613479436e9ff3ed317296fc6
Author:     Aaron Bauman <bman <AT> gentoo <DOT> org>
AuthorDate: Sat Dec 17 10:14:50 2016 +0000
Commit:     Aaron Bauman <bman <AT> gentoo <DOT> org>
CommitDate: Sat Dec 17 10:14:50 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=67f31b75

sys-apps/baselayout: amd64 stable wrt bug #596104

 sys-apps/baselayout/baselayout-2.3.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys-apps/baselayout/baselayout-2.3.ebuild b/sys-apps/baselayout/baselayout-2.3.ebuild
index 9deac63..c2360c8 100644
--- a/sys-apps/baselayout/baselayout-2.3.ebuild
+++ b/sys-apps/baselayout/baselayout-2.3.ebuild
@@ -12,7 +12,7 @@ SRC_URI="https://dev.gentoo.org/~williamh/dist/${P}.tar.bz2"
 
 LICENSE="GPL-2"
 SLOT="0"
-KEYWORDS="alpha ~amd64 arm ~arm64 hppa ~ia64 ~m68k ~mips ~ppc ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
+KEYWORDS="alpha amd64 arm ~arm64 hppa ~ia64 ~m68k ~mips ~ppc ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
 IUSE="build kernel_linux"
 
 pkg_setup() {


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2016-10-26 16:44 Markus Meier
  0 siblings, 0 replies; 124+ messages in thread
From: Markus Meier @ 2016-10-26 16:44 UTC (permalink / raw
  To: gentoo-commits

commit:     9cebd152cee3212ef5f6b8b7ef51d002cdc322de
Author:     Markus Meier <maekke <AT> gentoo <DOT> org>
AuthorDate: Wed Oct 26 16:44:12 2016 +0000
Commit:     Markus Meier <maekke <AT> gentoo <DOT> org>
CommitDate: Wed Oct 26 16:44:12 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9cebd152

sys-apps/baselayout: arm stable, bug #596104

Package-Manager: portage-2.3.2
RepoMan-Options: --include-arches="arm"

 sys-apps/baselayout/baselayout-2.3.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys-apps/baselayout/baselayout-2.3.ebuild b/sys-apps/baselayout/baselayout-2.3.ebuild
index 4609067..9deac63 100644
--- a/sys-apps/baselayout/baselayout-2.3.ebuild
+++ b/sys-apps/baselayout/baselayout-2.3.ebuild
@@ -12,7 +12,7 @@ SRC_URI="https://dev.gentoo.org/~williamh/dist/${P}.tar.bz2"
 
 LICENSE="GPL-2"
 SLOT="0"
-KEYWORDS="alpha ~amd64 ~arm ~arm64 hppa ~ia64 ~m68k ~mips ~ppc ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
+KEYWORDS="alpha ~amd64 arm ~arm64 hppa ~ia64 ~m68k ~mips ~ppc ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
 IUSE="build kernel_linux"
 
 pkg_setup() {


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2016-10-12 10:08 Jeroen Roovers
  0 siblings, 0 replies; 124+ messages in thread
From: Jeroen Roovers @ 2016-10-12 10:08 UTC (permalink / raw
  To: gentoo-commits

commit:     260ff77c5c3ba7cce098e62f935cba84051dce96
Author:     Jeroen Roovers <jer <AT> gentoo <DOT> org>
AuthorDate: Wed Oct 12 10:07:48 2016 +0000
Commit:     Jeroen Roovers <jer <AT> gentoo <DOT> org>
CommitDate: Wed Oct 12 10:08:06 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=260ff77c

sys-apps/baselayout: Stable for HPPA PPC64 (bug #596104).

Package-Manager: portage-2.3.2
RepoMan-Options: --ignore-arches

 sys-apps/baselayout/baselayout-2.3.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys-apps/baselayout/baselayout-2.3.ebuild b/sys-apps/baselayout/baselayout-2.3.ebuild
index db61e23..4609067 100644
--- a/sys-apps/baselayout/baselayout-2.3.ebuild
+++ b/sys-apps/baselayout/baselayout-2.3.ebuild
@@ -12,7 +12,7 @@ SRC_URI="https://dev.gentoo.org/~williamh/dist/${P}.tar.bz2"
 
 LICENSE="GPL-2"
 SLOT="0"
-KEYWORDS="alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
+KEYWORDS="alpha ~amd64 ~arm ~arm64 hppa ~ia64 ~m68k ~mips ~ppc ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
 IUSE="build kernel_linux"
 
 pkg_setup() {


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2016-10-04  7:37 Tobias Klausmann
  0 siblings, 0 replies; 124+ messages in thread
From: Tobias Klausmann @ 2016-10-04  7:37 UTC (permalink / raw
  To: gentoo-commits

commit:     bd7b1acf1017f5a61fbdd95852c93f60f4adea2e
Author:     Tobias Klausmann <klausman <AT> gentoo <DOT> org>
AuthorDate: Tue Oct  4 07:36:53 2016 +0000
Commit:     Tobias Klausmann <klausman <AT> gentoo <DOT> org>
CommitDate: Tue Oct  4 07:36:53 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=bd7b1acf

sys-apps/baselayout-2.3-r0: stable on alpha

Gentoo-Bug: 596104

 sys-apps/baselayout/baselayout-2.3.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys-apps/baselayout/baselayout-2.3.ebuild b/sys-apps/baselayout/baselayout-2.3.ebuild
index d3d1351..db61e23 100644
--- a/sys-apps/baselayout/baselayout-2.3.ebuild
+++ b/sys-apps/baselayout/baselayout-2.3.ebuild
@@ -12,7 +12,7 @@ SRC_URI="https://dev.gentoo.org/~williamh/dist/${P}.tar.bz2"
 
 LICENSE="GPL-2"
 SLOT="0"
-KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
+KEYWORDS="alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
 IUSE="build kernel_linux"
 
 pkg_setup() {


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2016-09-03 11:06 Michał Górny
  0 siblings, 0 replies; 124+ messages in thread
From: Michał Górny @ 2016-09-03 11:06 UTC (permalink / raw
  To: gentoo-commits

commit:     5a5c86a41bc4e4ae8e367dd4407116f44d8d6e89
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sat Sep  3 10:43:27 2016 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sat Sep  3 11:05:57 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5a5c86a4

sys-apps/baselayout: Fix SYMLINK_LIB=no to create lib dir instead of sym

Fix the 'else' branch of SYMLINK_LIB=no code to create 'lib' as
a directory rather than a symlink.

 sys-apps/baselayout/baselayout-2.3.ebuild | 4 +---
 1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/sys-apps/baselayout/baselayout-2.3.ebuild b/sys-apps/baselayout/baselayout-2.3.ebuild
index 5c4e7c1..b4e82d2 100644
--- a/sys-apps/baselayout/baselayout-2.3.ebuild
+++ b/sys-apps/baselayout/baselayout-2.3.ebuild
@@ -106,9 +106,7 @@ multilib_layout() {
 			else
 				# nothing exists, so just set it up sanely
 				ewarn "Initializing ${prefix}lib as a dir"
-				mkdir -p "${prefix}" || die
-				rm -f "${prefix}lib" || die
-				ln -s ${def_libdir} "${prefix}lib" || die
+				mkdir -p "${prefix}lib" || die
 			fi
 		fi
 	done


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2016-09-03 11:06 Michał Górny
  0 siblings, 0 replies; 124+ messages in thread
From: Michał Górny @ 2016-09-03 11:06 UTC (permalink / raw
  To: gentoo-commits

commit:     5ac6071c931acd281eddd9bae478386df7a1bfc3
Author:     Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Sat Sep  3 10:45:25 2016 +0000
Commit:     Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Sat Sep  3 11:05:59 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5ac6071c

sys-apps/baselayout: Do not complain about lib+lib32 when it is valid

Remove the error on 'lib' directory with SYMLINK_LIB=no multilib layout
if lib32 is a valid directory as well. This fixes the wrong assert
in the new no-lib-symlink profile while preserving the check on regular
lib+lib64 profile.

 sys-apps/baselayout/baselayout-2.3.ebuild | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/sys-apps/baselayout/baselayout-2.3.ebuild b/sys-apps/baselayout/baselayout-2.3.ebuild
index b4e82d2..d3d1351 100644
--- a/sys-apps/baselayout/baselayout-2.3.ebuild
+++ b/sys-apps/baselayout/baselayout-2.3.ebuild
@@ -87,7 +87,7 @@ multilib_layout() {
 				else
 					mkdir -p "${prefix}lib" || die
 				fi
-			elif [ -d "${prefix}lib" ] ; then
+			elif [ -d "${prefix}lib" ] && ! has lib32 ${libdirs} ; then
 				# make sure the old "lib" ABI location does not exist; we
 				# only symlinked the lib dir on systems where we moved it
 				# to "lib32" ...


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2016-09-01 21:44 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2016-09-01 21:44 UTC (permalink / raw
  To: gentoo-commits

commit:     78f20d7454dfae84fb38f8d53f1366b3c47fcf59
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Thu Sep  1 21:44:00 2016 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Thu Sep  1 21:44:25 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=78f20d74

sys-apps/baselayout: 2.3 version bump

Package-Manager: portage-2.2.28

 sys-apps/baselayout/Manifest              |   1 +
 sys-apps/baselayout/baselayout-2.3.ebuild | 244 ++++++++++++++++++++++++++++++
 2 files changed, 245 insertions(+)

diff --git a/sys-apps/baselayout/Manifest b/sys-apps/baselayout/Manifest
index 1951dcd..93b99ea 100644
--- a/sys-apps/baselayout/Manifest
+++ b/sys-apps/baselayout/Manifest
@@ -1 +1,2 @@
 DIST baselayout-2.2.tar.bz2 40744 SHA256 11d4a223b06da545c3e59e07c9195570f334b5b1be05d995df0ebc8ea2203e98 SHA512 a5199c42e835d9f2683cc94f3c4c47ecdc392316c24e0932845736e2e90479b0c5c8ad72ead8e0537f097405b7d7548d00b87b7ff8c9e3651486e3c5c0970b36 WHIRLPOOL 60cc4f7f76c5a45c15303e526decffb3bad2b50ac659b1dd072d2ed4b0eb0b31929a1a733ddb03a31ee5882b889a4efb87206f63ffaa2b11e26d36afd0933a95
+DIST baselayout-2.3.tar.bz2 32266 SHA256 e7bbd7d71ede6820a37738fd2e9010d54545fbd73c16ee686663dee2075c5d4c SHA512 cf9636c7d5c1fb4abf63dd931dc8ceaa30cf871f5e576a53dcc207abd54b8eec7778a1ef29766e2e8f5c0a098b9b3d07361717ae190027d1e102aceb4a07cacb WHIRLPOOL 92e88f5ff0eddd56698977bb6578ee53f62755bfdd9023fc7151415fce4a87952b539e0da3a7056a0f90c668a5a1c4fe2b43af0359fe9c40b4dc7b50568711d7

diff --git a/sys-apps/baselayout/baselayout-2.3.ebuild b/sys-apps/baselayout/baselayout-2.3.ebuild
new file mode 100644
index 00000000..5c4e7c1
--- /dev/null
+++ b/sys-apps/baselayout/baselayout-2.3.ebuild
@@ -0,0 +1,244 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils multilib
+
+DESCRIPTION="Filesystem baselayout and init scripts"
+HOMEPAGE="https://www.gentoo.org/"
+SRC_URI="https://dev.gentoo.org/~williamh/dist/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
+IUSE="build kernel_linux"
+
+pkg_setup() {
+	multilib_layout
+}
+
+# Create our multilib dirs - the Makefile has no knowledge of this
+multilib_layout() {
+	local libdir libdirs=$(get_all_libdirs) def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
+	: ${libdirs:=lib}	# it isn't that we don't trust multilib.eclass...
+
+	[ -z "${def_libdir}" ] && die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
+
+	# figure out which paths should be symlinks and which should be directories
+	local dirs syms exp d
+	for libdir in ${libdirs} ; do
+		exp=( {,usr/,usr/local/}${libdir} )
+		for d in "${exp[@]}" ; do
+			# most things should be dirs
+			if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
+				[ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
+			else
+				[ -h "${d}" ] && syms+=" ${d}"
+			fi
+		done
+	done
+	if [ -n "${syms}${dirs}" ] ; then
+		ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
+		ewarn "have these paths configured as follows:"
+		[ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
+		[ -n "${syms}" ] && ewarn "directories:${syms}"
+		ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
+		ewarn "If things fail, you will need to manually create/move the directories."
+		echo
+	fi
+
+	# setup symlinks and dirs where we expect them to be; do not migrate
+	# data ... just fall over in that case.
+	local prefix
+	for prefix in "${EROOT}"{,usr/,usr/local/} ; do
+		if [ "${SYMLINK_LIB}" = yes ] ; then
+			# we need to make sure "lib" points to the native libdir
+			if [ -h "${prefix}lib" ] ; then
+				# it's already a symlink!  assume it's pointing to right place ...
+				continue
+			elif [ -d "${prefix}lib" ] ; then
+				# "lib" is a dir, so need to convert to a symlink
+				ewarn "Converting ${prefix}lib from a dir to a symlink"
+				rm -f "${prefix}lib"/.keep
+				if rmdir "${prefix}lib" 2>/dev/null ; then
+					ln -s ${def_libdir} "${prefix}lib" || die
+				else
+					die "non-empty dir found where we needed a symlink: ${prefix}lib"
+				fi
+			else
+				# nothing exists, so just set it up sanely
+				ewarn "Initializing ${prefix}lib as a symlink"
+				mkdir -p "${prefix}" || die
+				rm -f "${prefix}lib" || die
+				ln -s ${def_libdir} "${prefix}lib" || die
+				mkdir -p "${prefix}${def_libdir}" #423571
+			fi
+		else
+			# we need to make sure "lib" is a dir
+			if [ -h "${prefix}lib" ] ; then
+				# "lib" is a symlink, so need to convert to a dir
+				ewarn "Converting ${prefix}lib from a symlink to a dir"
+				rm -f "${prefix}lib" || die
+				if [ -d "${prefix}lib32" ] ; then
+					ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
+					mv "${prefix}lib32" "${prefix}lib" || die
+				else
+					mkdir -p "${prefix}lib" || die
+				fi
+			elif [ -d "${prefix}lib" ] ; then
+				# make sure the old "lib" ABI location does not exist; we
+				# only symlinked the lib dir on systems where we moved it
+				# to "lib32" ...
+				case ${CHOST} in
+				*-gentoo-freebsd*) ;; # We want it the other way on fbsd.
+				i?86*|x86_64*|powerpc*|sparc*|s390*)
+					if [ -d "${prefix}lib32" ] ; then
+						rm -f "${prefix}lib32"/.keep
+						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
+							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
+							die "non-empty dir found where there should be none: ${prefix}lib32"
+						fi
+					fi
+					;;
+				esac
+			else
+				# nothing exists, so just set it up sanely
+				ewarn "Initializing ${prefix}lib as a dir"
+				mkdir -p "${prefix}" || die
+				rm -f "${prefix}lib" || die
+				ln -s ${def_libdir} "${prefix}lib" || die
+			fi
+		fi
+	done
+}
+
+pkg_preinst() {
+	# Bug #217848 - Since the remap_dns_vars() called by pkg_preinst() of
+	# the baselayout-1.x ebuild copies all the real configs from the user's
+	# /etc/conf.d into ${D}, it makes them all appear to be the default
+	# versions. In order to protect them from being unmerged after this
+	# upgrade, modify their timestamps.
+	touch "${EROOT}"/etc/conf.d/* 2>/dev/null
+
+	# This is written in src_install (so it's in CONTENTS), but punt all
+	# pending updates to avoid user having to do etc-update (and make the
+	# pkg_postinst logic simpler).
+	rm -f "${EROOT}"/etc/._cfg????_gentoo-release
+
+	# We need to install directories and maybe some dev nodes when building
+	# stages, but they cannot be in CONTENTS.
+	# Also, we cannot reference $S as binpkg will break so we do this.
+	multilib_layout
+	if use build ; then
+		emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout || die
+	fi
+	rm -f "${ED}"/usr/share/${PN}/Makefile
+}
+
+src_prepare() {
+	if use prefix; then
+		sed -i -r\
+			-e "/PATH=/!s:/(etc|usr/bin|bin):\"${EPREFIX}\"/\1:g" \
+			-e "/PATH=/s|([:\"])/|\1${EPREFIX}/|g" \
+			-e "/PATH=.*\/sbin/s|\"$|:/usr/sbin:/sbin\"|" \
+			-e "/PATH=.*\/bin/s|\"$|:/usr/bin:/bin\"|" \
+			etc/profile || die
+		sed -i -r \
+			-e "s:/(etc/env.d|opt|usr):${EPREFIX}/\1:g" \
+			-e "/^PATH=/s|\"$|:${EPREFIX}/usr/sbin:${EPREFIX}/sbin\"|" \
+			etc/env.d/00basic || die
+		sed -i "s:/bin:${EPREFIX}/bin:" etc/shells || die
+		sed -i -r \
+			-e "s,:/(root|bin|sbin|var|),:${EPREFIX}/\1,g" \
+			share.Linux/passwd || die
+	fi
+
+	# handle multilib paths.  do it here because we want this behavior
+	# regardless of the C library that you're using.  we do explicitly
+	# list paths which the native ldconfig searches, but this isn't
+	# problematic as it doesn't change the resulting ld.so.cache or
+	# take longer to generate.  similarly, listing both the native
+	# path and the symlinked path doesn't change the resulting cache.
+	local libdir ldpaths
+	for libdir in $(get_all_libdirs) ; do
+		ldpaths+=":${EPREFIX}/${libdir}:${EPREFIX}/usr/${libdir}"
+		ldpaths+=":${EPREFIX}/usr/local/${libdir}"
+	done
+	echo "LDPATH='${ldpaths#:}'" >> etc/env.d/00basic
+
+	# rc-scripts version for testing of features that *should* be present
+	echo "Gentoo Base System release ${PV}" > etc/gentoo-release
+}
+
+src_install() {
+	emake \
+		OS=$(usex kernel_FreeBSD BSD Linux) \
+		DESTDIR="${ED}" \
+		install
+	dodoc ChangeLog
+
+	# need the makefile in pkg_preinst
+	insinto /usr/share/${PN}
+	doins Makefile
+}
+
+pkg_postinst() {
+	local x
+
+	# We installed some files to /usr/share/baselayout instead of /etc to stop
+	# (1) overwriting the user's settings
+	# (2) screwing things up when attempting to merge files
+	# (3) accidentally packaging up personal files with quickpkg
+	# If they don't exist then we install them
+	for x in master.passwd passwd shadow group fstab ; do
+		[ -e "${EROOT}etc/${x}" ] && continue
+		[ -e "${EROOT}usr/share/baselayout/${x}" ] || continue
+		cp -p "${EROOT}usr/share/baselayout/${x}" "${EROOT}"etc
+	done
+
+	# Force shadow permissions to not be world-readable #260993
+	for x in shadow ; do
+		[ -e "${EROOT}etc/${x}" ] && chmod o-rwx "${EROOT}etc/${x}"
+	done
+
+	# Take care of the etc-update for the user
+	if [ -e "${EROOT}"etc/._cfg0000_gentoo-release ] ; then
+		mv "${EROOT}"etc/._cfg0000_gentoo-release "${EROOT}"etc/gentoo-release
+	fi
+
+	# whine about users that lack passwords #193541
+	if [[ -e "${EROOT}"etc/shadow ]] ; then
+		local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
+		if [[ -n ${bad_users} ]] ; then
+			echo
+			ewarn "The following users lack passwords!"
+			ewarn ${bad_users}
+		fi
+	fi
+
+	# baselayout leaves behind a lot of .keep files, so let's clean them up
+	find "${EROOT}"lib*/rcscripts/ -name .keep -exec rm -f {} + 2>/dev/null
+	find "${EROOT}"lib*/rcscripts/ -depth -type d -exec rmdir {} + 2>/dev/null
+
+	# whine about users with invalid shells #215698
+	if [[ -e "${EROOT}"etc/passwd ]] ; then
+		local bad_shells=$(awk -F: 'system("test -e " $7) { print $1 " - " $7}' "${EROOT}"etc/passwd | sort)
+		if [[ -n ${bad_shells} ]] ; then
+			echo
+			ewarn "The following users have non-existent shells!"
+			ewarn "${bad_shells}"
+		fi
+	fi
+
+	# https://bugs.gentoo.org/361349
+	if use kernel_linux; then
+		mkdir -p "${EROOT}"run
+
+		if ! grep -qs "^tmpfs.*/run " "${ROOT}"proc/mounts ; then
+			echo
+			ewarn "You should reboot the system now to get /run mounted with tmpfs!"
+		fi
+	fi
+}


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2016-08-24  1:26 William Hubbs
  0 siblings, 0 replies; 124+ messages in thread
From: William Hubbs @ 2016-08-24  1:26 UTC (permalink / raw
  To: gentoo-commits

commit:     afea0959d189ad8ce9467fb2f51e8153e343570d
Author:     William Hubbs <williamh <AT> gentoo <DOT> org>
AuthorDate: Wed Aug 24 01:25:32 2016 +0000
Commit:     William Hubbs <williamh <AT> gentoo <DOT> org>
CommitDate: Wed Aug 24 01:25:32 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=afea0959

sys-apps/baselayout: add myself as maintainer

Package-Manager: portage-2.2.28

 sys-apps/baselayout/metadata.xml | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/sys-apps/baselayout/metadata.xml b/sys-apps/baselayout/metadata.xml
index 56c1244..53e0495 100644
--- a/sys-apps/baselayout/metadata.xml
+++ b/sys-apps/baselayout/metadata.xml
@@ -1,6 +1,10 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
 <pkgmetadata>
+<maintainer type="person">
+	<email>williamh@gentoo.org</email>
+	<name>William Hubbs</name>
+</maintainer>
 <maintainer type="project">
 	<email>base-system@gentoo.org</email>
 	<name>Gentoo Base System</name>


^ permalink raw reply related	[flat|nested] 124+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/
@ 2016-06-30  3:00 Benda XU
  0 siblings, 0 replies; 124+ messages in thread
From: Benda XU @ 2016-06-30  3:00 UTC (permalink / raw
  To: gentoo-commits

commit:     699111703bfe3cd30c28d54025ab7515e79c0e85
Author:     Benda Xu <heroxbd <AT> gentoo <DOT> org>
AuthorDate: Thu Jun 30 03:00:23 2016 +0000
Commit:     Benda XU <heroxbd <AT> gentoo <DOT> org>
CommitDate: Thu Jun 30 03:00:44 2016 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=69911170

sys-apps/baselayout: revision bump to have EAPI=5 and support Prefix.

Bug: 532050

Package-Manager: portage-2.2.28

 sys-apps/baselayout/baselayout-2.2-r1.ebuild | 256 +++++++++++++++++++++++++++
 1 file changed, 256 insertions(+)

diff --git a/sys-apps/baselayout/baselayout-2.2-r1.ebuild b/sys-apps/baselayout/baselayout-2.2-r1.ebuild
new file mode 100644
index 0000000..11326dc
--- /dev/null
+++ b/sys-apps/baselayout/baselayout-2.2-r1.ebuild
@@ -0,0 +1,256 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI=5
+
+inherit eutils multilib
+
+DESCRIPTION="Filesystem baselayout and init scripts"
+HOMEPAGE="https://www.gentoo.org/"
+SRC_URI="mirror://gentoo/${P}.tar.bz2
+	https://dev.gentoo.org/~vapier/dist/${P}.tar.bz2"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd"
+IUSE="build kernel_linux"
+
+pkg_setup() {
+	multilib_layout
+}
+
+# Create our multilib dirs - the Makefile has no knowledge of this
+multilib_warn() {
+	local syms=$1 dirs=$2 def_libdir=$3
+
+	[ -z "${syms}${dirs}" ] && return
+
+	ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB}, so that means"
+	if [ -z "${syms}" ] ; then
+		ewarn "you need to have these paths as symlinks to ${def_libdir}:"
+		ewarn "$1"
+	fi
+}
+multilib_layout() {
+	local libdir libdirs=$(get_all_libdirs) def_libdir=$(get_abi_LIBDIR $DEFAULT_ABI)
+	: ${libdirs:=lib}	# it isn't that we don't trust multilib.eclass...
+
+	[ -z "${def_libdir}" ] && die "your DEFAULT_ABI=$DEFAULT_ABI appears to be invalid"
+
+	# figure out which paths should be symlinks and which should be directories
+	local dirs syms exp d
+	for libdir in ${libdirs} ; do
+		exp=( {,usr/,usr/local/}${libdir} )
+		for d in "${exp[@]}" ; do
+			# most things should be dirs
+			if [ "${SYMLINK_LIB}" = "yes" ] && [ "${libdir}" = "lib" ] ; then
+				[ ! -h "${d}" ] && [ -e "${d}" ] && dirs+=" ${d}"
+			else
+				[ -h "${d}" ] && syms+=" ${d}"
+			fi
+		done
+	done
+	if [ -n "${syms}${dirs}" ] ; then
+		ewarn "Your system profile has SYMLINK_LIB=${SYMLINK_LIB:-no}, so that means you need to"
+		ewarn "have these paths configured as follows:"
+		[ -n "${dirs}" ] && ewarn "symlinks to '${def_libdir}':${dirs}"
+		[ -n "${syms}" ] && ewarn "directories:${syms}"
+		ewarn "The ebuild will attempt to fix these, but only for trivial conversions."
+		ewarn "If things fail, you will need to manually create/move the directories."
+		echo
+	fi
+
+	# setup symlinks and dirs where we expect them to be; do not migrate
+	# data ... just fall over in that case.
+	local prefix
+	for prefix in "${EROOT}"{,usr/,usr/local/} ; do
+		if [ "${SYMLINK_LIB}" = yes ] ; then
+			# we need to make sure "lib" points to the native libdir
+			if [ -h "${prefix}lib" ] ; then
+				# it's already a symlink!  assume it's pointing to right place ...
+				continue
+			elif [ -d "${prefix}lib" ] ; then
+				# "lib" is a dir, so need to convert to a symlink
+				ewarn "Converting ${prefix}lib from a dir to a symlink"
+				rm -f "${prefix}lib"/.keep
+				if rmdir "${prefix}lib" 2>/dev/null ; then
+					ln -s ${def_libdir} "${prefix}lib" || die
+				else
+					die "non-empty dir found where we needed a symlink: ${prefix}lib"
+				fi
+			else
+				# nothing exists, so just set it up sanely
+				ewarn "Initializing ${prefix}lib as a symlink"
+				mkdir -p "${prefix}" || die
+				rm -f "${prefix}lib" || die
+				ln -s ${def_libdir} "${prefix}lib" || die
+				mkdir -p "${prefix}${def_libdir}" #423571
+			fi
+		else
+			# we need to make sure "lib" is a dir
+			if [ -h "${prefix}lib" ] ; then
+				# "lib" is a symlink, so need to convert to a dir
+				ewarn "Converting ${prefix}lib from a symlink to a dir"
+				rm -f "${prefix}lib" || die
+				if [ -d "${prefix}lib32" ] ; then
+					ewarn "Migrating ${prefix}lib32 to ${prefix}lib"
+					mv "${prefix}lib32" "${prefix}lib" || die
+				else
+					mkdir -p "${prefix}lib" || die
+				fi
+			elif [ -d "${prefix}lib" ] ; then
+				# make sure the old "lib" ABI location does not exist; we
+				# only symlinked the lib dir on systems where we moved it
+				# to "lib32" ...
+				case ${CHOST} in
+				*-gentoo-freebsd*) ;; # We want it the other way on fbsd.
+				i?86*|x86_64*|powerpc*|sparc*|s390*)
+					if [ -d "${prefix}lib32" ] ; then
+						rm -f "${prefix}lib32"/.keep
+						if ! rmdir "${prefix}lib32" 2>/dev/null ; then
+							ewarn "You need to merge ${prefix}lib32 into ${prefix}lib"
+							die "non-empty dir found where there should be none: ${prefix}lib32"
+						fi
+					fi
+					;;
+				esac
+			else
+				# nothing exists, so just set it up sanely
+				ewarn "Initializing ${prefix}lib as a dir"
+				mkdir -p "${prefix}" || die
+				rm -f "${prefix}lib" || die
+				ln -s ${def_libdir} "${prefix}lib" || die
+			fi
+		fi
+	done
+}
+
+pkg_preinst() {
+	# Bug #217848 - Since the remap_dns_vars() called by pkg_preinst() of
+	# the baselayout-1.x ebuild copies all the real configs from the user's
+	# /etc/conf.d into ${D}, it makes them all appear to be the default
+	# versions. In order to protect them from being unmerged after this
+	# upgrade, modify their timestamps.
+	touch "${EROOT}"/etc/conf.d/* 2>/dev/null
+
+	# This is written in src_install (so it's in CONTENTS), but punt all
+	# pending updates to avoid user having to do etc-update (and make the
+	# pkg_postinst logic simpler).
+	rm -f "${EROOT}"/etc/._cfg????_gentoo-release
+
+	# We need to install directories and maybe some dev nodes when building
+	# stages, but they cannot be in CONTENTS.
+	# Also, we cannot reference $S as binpkg will break so we do this.
+	multilib_layout
+	if use build ; then
+		emake -C "${ED}/usr/share/${PN}" DESTDIR="${EROOT}" layout || die
+	fi
+	rm -f "${ED}"/usr/share/${PN}/Makefile
+}
+
+src_prepare() {
+	if use prefix; then
+		sed -i -r\
+			-e "/PATH=/!s:/(etc|usr/bin|bin):\"${EPREFIX}\"/\1:g" \
+			-e "/PATH=/s|([:\"])/|\1${EPREFIX}/|g" \
+			-e "/PATH=.*\/sbin/s|\"$|:/usr/sbin:/sbin\"|" \
+			-e "/PATH=.*\/bin/s|\"$|:/usr/bin:/bin\"|" \
+			etc/profile || die
+		sed -i -r \
+			-e "s:/(etc/env.d|opt|usr):${EPREFIX}/\1:g" \
+			-e "/^PATH=/s|\"$|:${EPREFIX}/usr/sbin:${EPREFIX}/sbin\"|" \
+			etc/env.d/00basic || die
+		sed -i "s:/bin:${EPREFIX}/bin:" etc/shells || die
+		sed -i -r \
+			-e "s,:/(root|bin|sbin|var|),:${EPREFIX}/\1,g" \
+			share.Linux/passwd || die
+	fi
+
+	# handle multilib paths.  do it here because we want this behavior
+	# regardless of the C library that you're using.  we do explicitly
+	# list paths which the native ldconfig searches, but this isn't
+	# problematic as it doesn't change the resulting ld.so.cache or
+	# take longer to generate.  similarly, listing both the native
+	# path and the symlinked path doesn't change the resulting cache.
+	local libdir ldpaths
+	for libdir in $(get_all_libdirs) ; do
+		ldpaths+=":${EPREFIX}/${libdir}:${EPREFIX}/usr/${libdir}"
+		ldpaths+=":${EPREFIX}/usr/local/${libdir}"
+	done
+	echo "LDPATH='${ldpaths#:}'" >> etc/env.d/00basic
+
+	# rc-scripts version for testing of features that *should* be present
+	echo "Gentoo Base System release ${PV}" > etc/gentoo-release
+}
+
+src_install() {
+	emake \
+		OS=$(usex kernel_FreeBSD BSD Linux) \
+		DESTDIR="${ED}" \
+		install
+	dodoc ChangeLog.svn
+
+	# need the makefile in pkg_preinst
+	insinto /usr/share/${PN}
+	doins Makefile
+}
+
+pkg_postinst() {
+	local x
+
+	# We installed some files to /usr/share/baselayout instead of /etc to stop
+	# (1) overwriting the user's settings
+	# (2) screwing things up when attempting to merge files
+	# (3) accidentally packaging up personal files with quickpkg
+	# If they don't exist then we install them
+	for x in master.passwd passwd shadow group fstab ; do
+		[ -e "${EROOT}etc/${x}" ] && continue
+		[ -e "${EROOT}usr/share/baselayout/${x}" ] || continue
+		cp -p "${EROOT}usr/share/baselayout/${x}" "${EROOT}"etc
+	done
+
+	# Force shadow permissions to not be world-readable #260993
+	for x in shadow ; do
+		[ -e "${EROOT}etc/${x}" ] && chmod o-rwx "${EROOT}etc/${x}"
+	done
+
+	# Take care of the etc-update for the user
+	if [ -e "${EROOT}"etc/._cfg0000_gentoo-release ] ; then
+		mv "${EROOT}"etc/._cfg0000_gentoo-release "${EROOT}"etc/gentoo-release
+	fi
+
+	# whine about users that lack passwords #193541
+	if [[ -e "${EROOT}"etc/shadow ]] ; then
+		local bad_users=$(sed -n '/^[^:]*::/s|^\([^:]*\)::.*|\1|p' "${EROOT}"/etc/shadow)
+		if [[ -n ${bad_users} ]] ; then
+			echo
+			ewarn "The following users lack passwords!"
+			ewarn ${bad_users}
+		fi
+	fi
+
+	# baselayout leaves behind a lot of .keep files, so let's clean them up
+	find "${EROOT}"lib*/rcscripts/ -name .keep -exec rm -f {} + 2>/dev/null
+	find "${EROOT}"lib*/rcscripts/ -depth -type d -exec rmdir {} + 2>/dev/null
+
+	# whine about users with invalid shells #215698
+	if [[ -e "${EROOT}"etc/passwd ]] ; then
+		local bad_shells=$(awk -F: 'system("test -e " $7) { print $1 " - " $7}' "${EROOT}"etc/passwd | sort)
+		if [[ -n ${bad_shells} ]] ; then
+			echo
+			ewarn "The following users have non-existent shells!"
+			ewarn "${bad_shells}"
+		fi
+	fi
+
+	# https://bugs.gentoo.org/361349
+	if use kernel_linux; then
+		mkdir -p "${EROOT}"run
+
+		if ! grep -qs "^tmpfs.*/run " "${ROOT}"proc/mounts ; then
+			echo
+			ewarn "You should reboot the system now to get /run mounted with tmpfs!"
+		fi
+	fi
+}


^ permalink raw reply related	[flat|nested] 124+ messages in thread

end of thread, other threads:[~2024-11-04 19:54 UTC | newest]

Thread overview: 124+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2018-05-24  3:36 [gentoo-commits] repo/gentoo:master commit in: sys-apps/baselayout/ William Hubbs
  -- strict thread matches above, loose matches on Subject: below --
2024-11-04 19:54 Mike Gilbert
2024-11-04 19:52 Mike Gilbert
2024-11-03 23:37 Mike Gilbert
2024-04-30 18:52 Arthur Zamarin
2024-03-12  1:43 Mike Gilbert
2024-02-15 21:17 William Hubbs
2024-02-09 12:18 Andreas K. Hüttel
2024-02-08 17:37 Mike Gilbert
2023-12-15  7:14 Sam James
2023-11-12 10:38 Fabian Groffen
2023-08-22 16:09 William Hubbs
2023-08-22 16:09 William Hubbs
2023-08-21 22:47 William Hubbs
2023-08-19  6:23 Sam James
2023-07-18 22:41 Sam James
2023-07-18 22:41 Sam James
2023-07-18 22:41 Sam James
2023-07-09  1:32 Mike Gilbert
2023-07-09  1:32 Mike Gilbert
2023-07-05  0:41 Mike Gilbert
2023-03-04  5:34 Arthur Zamarin
2023-01-29  0:10 William Hubbs
2023-01-29  0:10 William Hubbs
2023-01-28 22:14 William Hubbs
2023-01-28 22:14 William Hubbs
2023-01-28 22:06 William Hubbs
2023-01-28 22:06 William Hubbs
2023-01-28 21:00 Mike Gilbert
2023-01-28  2:17 Mike Gilbert
2023-01-28  0:38 Mike Gilbert
2023-01-28  0:20 William Hubbs
2023-01-28  0:08 William Hubbs
2023-01-27 22:38 Mike Gilbert
2023-01-27 21:47 William Hubbs
2023-01-27 18:21 William Hubbs
2023-01-27 18:19 William Hubbs
2023-01-27 17:30 William Hubbs
2023-01-26  3:51 William Hubbs
2023-01-26  0:13 William Hubbs
2023-01-24 22:58 Andreas K. Hüttel
2023-01-04  6:37 William Hubbs
2023-01-04  6:21 William Hubbs
2022-11-14 21:03 Mike Gilbert
2022-11-14 20:26 Arthur Zamarin
2022-09-18 21:50 William Hubbs
2022-09-18  3:12 Mike Gilbert
2022-07-17 15:50 Fabian Groffen
2022-07-14 19:30 Fabian Groffen
2022-05-28 21:01 William Hubbs
2022-05-28 20:59 Jakov Smolić
2022-01-04 10:30 David Seifert
2022-01-04  3:29 Sam James
2021-11-15  9:27 Jakov Smolić
2021-09-29  0:19 William Hubbs
2021-09-28 17:59 William Hubbs
2021-09-27 22:09 William Hubbs
2021-09-27 20:58 William Hubbs
2021-09-27 20:38 William Hubbs
2021-09-27 20:10 William Hubbs
2021-09-27 18:28 William Hubbs
2021-09-25 22:37 William Hubbs
2021-09-24 23:15 William Hubbs
2021-09-24 21:16 William Hubbs
2021-09-24 19:11 William Hubbs
2021-06-12 19:43 Andreas K. Hüttel
2021-05-12 20:11 William Hubbs
2021-04-16 16:38 William Hubbs
2021-04-16 16:26 William Hubbs
2020-11-14 17:07 William Hubbs
2020-08-30 21:59 Sam James
2020-08-30 21:51 Sam James
2020-08-20 15:28 William Hubbs
2020-08-20 14:51 William Hubbs
2020-08-20 14:47 William Hubbs
2020-02-17  2:39 William Hubbs
2020-02-10  4:31 William Hubbs
2020-02-10  4:31 William Hubbs
2020-02-08 14:18 David Seifert
2019-10-16 18:29 William Hubbs
2019-05-04 18:36 Mikle Kolyada
2019-03-03 18:54 William Hubbs
2018-11-30 12:14 Jeroen Roovers
2018-11-12 11:13 Lars Wendler
2018-11-08  0:15 William Hubbs
2018-07-25 16:36 William Hubbs
2018-07-22 16:47 William Hubbs
2018-05-31 20:03 William Hubbs
2018-05-29  0:53 William Hubbs
2018-05-28 20:19 William Hubbs
2018-05-28 20:14 William Hubbs
2018-05-24 17:13 William Hubbs
2018-05-24 15:49 William Hubbs
2018-05-23 22:06 William Hubbs
2018-05-23 21:28 William Hubbs
2018-03-20 21:24 William Hubbs
2018-03-19 18:46 William Hubbs
2018-02-07 19:51 William Hubbs
2018-02-07  0:20 William Hubbs
2018-02-06 18:57 William Hubbs
2018-01-12  4:19 Mike Frysinger
2017-12-10 21:41 Michał Górny
2017-11-17 22:23 William Hubbs
2017-10-06 19:02 William Hubbs
2017-10-03 18:00 William Hubbs
2017-10-03 17:50 William Hubbs
2017-10-03 15:48 William Hubbs
2017-10-02 18:28 William Hubbs
2017-09-04  6:27 Benda XU
2017-08-09 18:59 Tim Harder
2017-08-09  9:19 Guilherme Amadio
2017-06-09 18:44 William Hubbs
2017-01-20 16:14 Mike Frysinger
2017-01-17 16:23 Lars Wendler
2016-12-21 11:23 Thomas Deutschmann
2016-12-17 10:15 Aaron Bauman
2016-10-26 16:44 Markus Meier
2016-10-12 10:08 Jeroen Roovers
2016-10-04  7:37 Tobias Klausmann
2016-09-03 11:06 Michał Górny
2016-09-03 11:06 Michał Górny
2016-09-01 21:44 William Hubbs
2016-08-24  1:26 William Hubbs
2016-06-30  3:00 Benda XU

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox