I'm facing an issue with few packages which would be installed before bash-completion-1.3-r2 (stable). https://code.google.com/p/pentoo/issues/detail?id=165 Currently, the eclass installs scripts into "completions/" directory if it exists or no app-shells/bash-completion package is installed. Obviously, bash-completion v1.3 does not work later. Please change the default behavior to v1.3 compatible. Portage 2.1.12.2 (hardened/linux/amd64, gcc-4.6.3, glibc-2.15-r3, 3.9.9-pentoo x86_64) ================================================================= System uname: Linux-3.9.9-pentoo-x86_64-Intel-R-_Core-TM-_i5-3320M_CPU_@_2.60GHz-with-gentoo-2.2 KiB Mem: 7980692 total, 462496 free KiB Swap: 4194300 total, 4189468 free Timestamp of tree: Tue, 13 Aug 2013 01:45:01 +0000 ld GNU ld (GNU Binutils) 2.23.1 app-shells/bash: 4.2_p45 dev-java/java-config: 2.1.12-r1 dev-lang/python: 2.7.5, 3.2.5-r1 dev-util/cmake: 2.8.10.2-r2 dev-util/pkgconfig: 0.28 sys-apps/baselayout: 2.2 sys-apps/openrc: 0.11.8::pentoo sys-apps/sandbox: 2.6-r1 sys-devel/autoconf: 2.13, 2.69 sys-devel/automake: 1.4_p6-r1, 1.11.6, 1.12.6 sys-devel/binutils: 2.23.1 sys-devel/gcc: 4.6.3 sys-devel/gcc-config: 1.7.3 sys-devel/libtool: 2.4-r4 sys-devel/make: 3.82-r4 sys-kernel/linux-headers: 3.7 (virtual/os-headers) sys-libs/glibc: 2.15-r3
It is compatible with old bash-completion because it has, if has_version '<app-shells/bash-completion-2.1-r1'; then _bash-completion-r1_get_bashdir completionsdir /usr/share/bash-completion else _bash-completion-r1_get_bashdir completionsdir /usr/share/bash-completion/completions fi Thus, $(get_bashcompdir) and the rest will return /usr/share/bash-completion correctly on older version.
Obviously, downgrading bash-completion without re-emerging every package installing completion is not supported, as noted in the link you gave yourself: http://code.google.com/p/pentoo/issues/detail?id=165#c3
Please try the following: emerge -C app-shells/bash-completion app-admin/eselect emerge -1 app-admin/eselect ls -al /usr/share/bash-completion/completions/ That's there the eselect script goes by default
(In reply to Anton Bolshakov from comment #3) > Please try the following: > > emerge -C app-shells/bash-completion app-admin/eselect > emerge -1 app-admin/eselect > > ls -al /usr/share/bash-completion/completions/ > > That's there the eselect script goes by default Ah, you need bash-completion to be installed before you install any completions for 1.3-r2. It's not only the eclass that defaults to the completions/ subdir, but also the default autotools code that is being used by countless number of packages. I'll speed up the stabilization of 2.1-r1 to get rid of the older version.
http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/eclass/bash-completion-r1.eclass?view=diff&r1=text&tr1=1.10&r2=text&tr2=1.9&diff_format=h ^^ that helps as a first step. FYI ;-)
(In reply to Anton Bolshakov from comment #5) > http://sources.gentoo.org/cgi-bin/viewvc.cgi/gentoo-x86/eclass/bash- > completion-r1.eclass?view=diff&r1=text&tr1=1.10&r2=text&tr2=1.9&diff_format=h > > ^^ that helps as a first step. > > FYI ;-) yeah, I just forgot to change the status of this bug.