This commit: http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=a5dd8b59 removes PORTDIR from make.globals and breaks gentoo-bashcomp. Was the deprecation of PORTDIR/PORTDIR_OVERLAY discussed anywhere? What replaces it and how are people supposed to migrate?
(In reply to Ryan Hill from comment #0) > This commit: > http://git.overlays.gentoo.org/gitweb/?p=proj/portage.git;a=commit;h=a5dd8b59 > > removes PORTDIR from make.globals and breaks gentoo-bashcomp. Was the > deprecation of PORTDIR/PORTDIR_OVERLAY discussed anywhere? What replaces it > and how are people supposed to migrate? you can always get it at runtime with portageq envvar PORTDIR
We've avoided using portageq in the past because it's really really slow. It adds over 1 sec of delay to every completion, just enough to be annoying. We might not have a choice now I guess.
(In reply to Ryan Hill from comment #2) > We might not have a choice now I guess. The only alternative would be to parse /usr/share/portage/config/repos.conf and /etc/portage/repos.conf.
That won't get us overlays though. Will people will still have to set PORTDIR_OVERLAY in make.conf or is /etc/portage/repos.conf replacing it?
With current eix, you can use eix --print PORTDIR_OVERLAY which outputs the combined result of PORTDIR_OVERLAY and of parsing repos.conf
/etc/portage/repos.conf is replacing PORTDIR_OVERLAY (for compatibility, `portageq envvar PORTDIR_OVERLAY` returns a value generated from repos.conf).
The recommened, non-deprecated way of getting configuration of all repositories (configured either in repos.conf or PORTDIR/PORTDIR_OVERLAY) is one of the following: portageq repositories_configuration "${EROOT}" portageq repos_config "${EROOT}" portageq envvar PORTAGE_REPOSITORIES eval "$(portageq envvar -v PORTAGE_REPOSITORIES)" The last command allows to easily detect older version of Portage: eval "$(portageq envvar -v PORTAGE_REPOSITORIES)" if [[ -n ${PORTAGE_REPOSITORIES} ]]; then # New Portage parse_PORTAGE_REPOSITORIES else # Old Portage parse_make.globals_and_make.conf
Might just be me, but it also breaks app-portage/gentoolkit-0.3.0.7-r2 for me: # euse -i -g gtk ERROR: $PORTDIR couldn't be determined
(In reply to shinydoofy from comment #8) > Might just be me, but it also breaks app-portage/gentoolkit-0.3.0.7-r2 for > me: > # euse -i -g gtk > ERROR: $PORTDIR couldn't be determined Yeah, that's reported in bug #474574.
Thanks for the info guys. http://git.overlays.gentoo.org/gitweb/?p=proj/gentoo-bashcomp.git;a=commit;h=bf91db09a102544196b21cd792ac423262656a9a
Fixed in gentoo-bashcomp-20130804.
This report is about 9 months old, will this enter the portage tree? I have app-shells/gentoo-bashcomp-20121024 as the latest version (synced today).
Someone masked it, then removed it, then I gave up.
(In reply to is from comment #12) > This report is about 9 months old, will this enter the portage tree? > > I have app-shells/gentoo-bashcomp-20121024 as the latest version (synced > today). gentoo-bashcomp-20140911 is in the tree now, though it still has unstable KEYWORDS. You can unmask it like this: echo "=app-shells/gentoo-bashcomp-20140911 ~*" >> \ /etc/portage/package.accept_keywords