Hi, Let's start bash with no RC file in a null environment:
$ env -i ~/.guix-profile/bin/bash --norc Check to make sure the env is empty: bash-4.3$ env PWD=/home/wingo SHLVL=1 _=/usr/bin/env Now look at this little sample file: bash-4.3$ .guix-profile/bin/cat /tmp/foo.bash _foo_complete () { false } complete -F _foo_complete foo OK now we run bash on that file: bash-4.3$ .guix-profile/bin/bash --norc /tmp/foo.bash /tmp/foo.bash: line 6: complete: command not found What could be going on? Well here's a lollerskates thing, back in the main environment: $ ls -l `which bash` lrwxrwxrwx 11 root guixbuild 63 Jan 1 1970 /home/wingo/.guix-profile/bin/bash -> /gnu/store/5995q4p9ayvicd8qxjmn8zrwis4y7a8c-glibc-2.21/bin/bash It's coming from glibc!!! Zomg. Why is this? From what I can tell it's not in the propagated inputs of glibc, so this shouldn't be happening. Andy