$ virtualenv foo Running virtualenv with interpreter /usr/bin/python2 New python executable in /home/administrator/foo/bin/python2 Also creating executable in /home/administrator/foo/bin/python Installing setuptools, pkg_resources, pip, wheel...done. $ ls -la foo/bin total 3464 drwxrwxr-x 2 administrator administrator 4096 Dec 4 11:06 . drwxrwxr-x 7 administrator administrator 4096 Dec 4 11:06 .. -rw-rw-r-- 1 administrator administrator 2082 Dec 4 11:06 activate -rw-rw-r-- 1 administrator administrator 1024 Dec 4 11:06 activate.csh -rw-rw-r-- 1 administrator administrator 2222 Dec 4 11:06 activate.fish -rw-rw-r-- 1 administrator administrator 1137 Dec 4 11:06 activate_this.py -rwxrwxr-x 1 administrator administrator 252 Dec 4 11:06 easy_install -rwxrwxr-x 1 administrator administrator 252 Dec 4 11:06 easy_install-2.7 -rwxrwxr-x 1 administrator administrator 239 Dec 4 11:06 pip -rwxrwxr-x 1 administrator administrator 239 Dec 4 11:06 pip2 -rwxrwxr-x 1 administrator administrator 239 Dec 4 11:06 pip2.7 lrwxrwxrwx 1 administrator administrator 7 Dec 4 11:06 python -> python2 -rwxrwxr-x 1 administrator administrator 3492656 Dec 4 11:06 python2 lrwxrwxrwx 1 administrator administrator 7 Dec 4 11:06 python2.7 -> python2 -rwxrwxr-x 1 administrator administrator 2341 Dec 4 11:06 python-config -rwxrwxr-x 1 administrator administrator 230 Dec 4 11:06 wheel
You're right about virtualenv. I don't realy use that anymore, the venv module added in 3.3 gets the job done. And that does default to symlinks for posix. https://github.com/python/cpython/blob/3.8/Lib/venv/__init__...