2017-09-13 21:57:12 +00:00
|
|
|
#!/bin/bash
|
|
|
|
|
|
|
|
if [[ ${DIB_DEBUG_TRACE:-0} -gt 0 ]]; then
|
|
|
|
set -x
|
|
|
|
fi
|
|
|
|
set -eu
|
|
|
|
set -o pipefail
|
|
|
|
|
2022-07-11 03:12:03 +00:00
|
|
|
if [[ ${GENTOO_PYTHON_TARGETS} != '' ]]; then
|
|
|
|
if mountpoint -q /dev/shm; then
|
|
|
|
echo "/dev/shm found in /proc/self/mountinfo"
|
|
|
|
elif [[ -k /dev/shm ]]; then
|
|
|
|
echo "/dev/shm exists and is stickied"
|
|
|
|
else
|
|
|
|
fix_shm
|
|
|
|
fi
|
2017-09-13 21:57:12 +00:00
|
|
|
|
2022-07-11 03:12:03 +00:00
|
|
|
[[ ! -f ${PORTDIR}/profiles ]] && emerge-webrsync -q
|
2017-09-13 21:57:12 +00:00
|
|
|
|
2022-07-11 03:12:03 +00:00
|
|
|
# set active python targets
|
|
|
|
echo "PYTHON_TARGETS=\"${GENTOO_PYTHON_TARGETS}\"" >> /etc/portage/make.conf
|
2019-07-26 22:18:40 +00:00
|
|
|
|
2022-07-11 03:12:03 +00:00
|
|
|
# install portage first due to bug in env vars not being passed when portage installs itself and re-inits
|
|
|
|
emerge ${GENTOO_EMERGE_DEFAULT_OPTS} --update --newuse --deep sys-apps/portage
|
|
|
|
# set the active python version
|
|
|
|
emerge ${GENTOO_EMERGE_DEFAULT_OPTS} --oneshot --update --newuse --nodeps dev-lang/python-exec dev-lang/python-exec-conf
|
|
|
|
echo yes | etc-update --automode -3 /etc/python-exec/python-exec.conf
|
2017-09-13 21:57:12 +00:00
|
|
|
|
2022-07-11 03:12:03 +00:00
|
|
|
# make world consistant
|
|
|
|
emerge ${GENTOO_EMERGE_DEFAULT_OPTS} --complete-graph=y --update --newuse --deep @world
|
|
|
|
# rebuild packages that might need it
|
|
|
|
emerge ${GENTOO_EMERGE_DEFAULT_OPTS} --usepkg=n @preserved-rebuild
|
|
|
|
# remove unneeded packages
|
|
|
|
emerge --verbose=n --depclean
|
|
|
|
# rebuild packages that might have somehow depended on the unneeded packages
|
|
|
|
emerge ${GENTOO_EMERGE_DEFAULT_OPTS} --usepkg=n @preserved-rebuild
|
2017-09-13 21:57:12 +00:00
|
|
|
|
2022-07-11 03:12:03 +00:00
|
|
|
unfix_shm
|
|
|
|
fi
|