type -P portageq >/dev/null 2>&1 && \ REPOS_CONF_SYNC=$("$(type -P portageq)" envvar SYNC) Paludis has a portageq wrapper which dies (i.e. kills ebuild) when 'portageq envvar' is used. This means that in some cases Paludis users won't be able to upgrade their Portage install.
Oh, Arfrever just pointed out that you're working around the shell function wrapper via 'type -P'. Which is both ugly and just asking Paludis devs to make it a normal helper, so it's not worked around like this...
Realistically, we can drop this code because it has already served its purpose for the vast majority of people upgrading from the relevant portage versions: if has_version "<${CATEGORY}/${PN}-2.1.13" || \ { has_version ">=${CATEGORY}/${PN}-2.2_rc0" && \ has_version "<${CATEGORY}/${PN}-2.2.0_alpha189" } ; then That means we can remove all code involving to the USERPRIV_UPGRADE, USERSYNC_UPGRADE, and REPOS_CONF_UPGRADE variables.
I'd be fine with cleaning that old code out :)
I've removed the code from the last 2 releases (2.3.3 and 2.3.4): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c7a97e5230e117116baad064f70cdeecab480620