In a buster upgraded to bullseye, this was working. But in a clean bullseye
installation, it doesn't seem to be working.
Note that /etc/bash_completion.d seems to be deprecated and moved to
/usr/share/bash-completion/completions. Your .bashrc might still be loading
stuff from /etc (which might still contain buster's virtualenvwrapper stuff).
The correct things to put in your .bashrc are in /etc/bash.bashrc:
if ! shopt -oq posix; then
if [ -f /usr/share/bash-completion/bash_completion ]; then
. /usr/share/bash-completion/bash_completion
elif [ -f /etc/bash_completion ]; then
. /etc/bash_completion
fi
fi
(These lines are initially commented out. Also, obviously you might prefer to
uncomment these lines and source /etc/bash.bashrc from your .bashrc instead of
copying them).
I've experimented a bit and bash seems to be loading completions alright from
/usr/share/bash-completion/completions. Therefore it seems most likely that this
is a virtualenvwrapper problem.