mitsuhiko / pipsi

pip script installer
Other
2k stars 133 forks source link

Symlinked home directories prevents pipsi list from working #147

Open alexseitsinger opened 6 years ago

alexseitsinger commented 6 years ago

On FreeBSD its common for /home/{name} to be symlinked to /usr/home/{name}. Without this adjustment, the paths never match the target path provided in args. The following code in list_everything, found in pipsi.py (python 2), fixes the issue.

` def _find_venv(target):

Fix for base_prefix being a symlink to the real directory.

        # (eg: /home/<name>/ -> /usr/home/<name>/)
        for venv in venvs:
            base_prefix = join(self.home, venv, "")
            real_prefix = os.path.realpath(base_prefix)
            if target.startswith(real_prefix):
                return venv`