diff options
Diffstat (limited to 'sys-apps/prefix-chain-utils/files/startprefix.in')
-rw-r--r-- | sys-apps/prefix-chain-utils/files/startprefix.in | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/sys-apps/prefix-chain-utils/files/startprefix.in b/sys-apps/prefix-chain-utils/files/startprefix.in new file mode 100644 index 000000000000..1b84ed3c28e1 --- /dev/null +++ b/sys-apps/prefix-chain-utils/files/startprefix.in @@ -0,0 +1,38 @@ +#!/usr/bin/env bash + +. "@GENTOO_PORTAGE_EPREFIX@"/sbin/functions.sh +einfo "entering chained prefix @GENTOO_PORTAGE_EPREFIX@ ..." + +# inform profiles very early of us beeing interactive (or at least, +# we will _start_ an interactive shell, so we want the according bits.) +set -i + +. "@GENTOO_PORTAGE_EPREFIX@"/etc/profile + +# if there is no local portage, foreign portage instances need to know +# where to merge to - and thus we need to set EPREFIX. +# the other way round, if there is a local portage, EPREFIX may not +# point anywhere else than to our local EPREFIX or be unset... + +# DISABLED: this is done by etc/profile now, to be able to start a +# prefix environment by sourcing etc/profile. + +#if [[ -x "@GENTOO_PORTAGE_EPREFIX@"/usr/bin/emerge ]]; then +# if [[ -n "${EPREFIX}" ]] && [[ "${EPREFIX}" != "@GENTOO_PORTAGE_EPREFIX@" ]]; then +# ewarn "EPREFIX is set. this will render portage unusable, unsetting" +# unset EPREFIX +# fi +#else +# export EPREFIX="@GENTOO_PORTAGE_EPREFIX@" +#fi + +# a common problem: the child has no less installed, but baselayout insists +# on setting PAGER to EPREFIX/usr/bin/less. everything gets back to normal +# when unsetting PAGER in this case. +if [[ ! -x "${PAGER}" ]]; then + unset PAGER +fi + +bash --noprofile +einfo "leaving chained prefix @GENTOO_PORTAGE_EPREFIX@ ..." + |