Hello, another pip maintainer here (I think that's 4 of us in here now that I know of).  <div><br></div><div>I just joined this list, so couldn't respond to the original email,  so just pasted it below.  I haven't read all the way though all the messages, so apologize for redundancies.</div>
<div><div><div><div><br></div><div>
This all sounds reasonable to me, and pip did improve the --user support a lot in v1.2.1, so that's good timing. There's still a few --user bugs to be fixed, but all very doable, if its really meant to play such a major role like this.</div>

<div><br></div><div>I admit though, I had to do a double take on this thread.</div><div><br></div><div>For many users,  virtualenvs are their "user install", and "sudo" global installs are pretty rare. So, putting in a lot of work to fix what to many seems like a rare behavior makes me a little hesitant. But "many users" isn't all I guess, and maybe I'm off on the "many" part, not sure.  I guess it's still worthwhile to prevent *any* unnecessary root installs.  </div>
<div><br></div><div>Maybe user education is enough?  I was going to add a section to pip's new cookbook on --user installs, and with all the focus on security now, it could be emphasized really strongly and explained why it's a good thing.  This, along with adding informative messages when users fail writing to the global site might go a long way.</div>

<div><br></div><div>Btw,  the user site is visible in virtualenvs that have global access (and is lower in precedence than the virtualenv site-packages), so I'm pretty sure it can serve as a place for common packages, that the global site is often used for.</div>

<div><br></div><div>Marcus</div><div><br><div><div><div class="gmail_quote"><br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div>Inside a virtual environment:</div>
<div>    pip install pkg: works as now</div>
<div>    pip uninstall pkg: works as now</div><div><br></div><div>Ordinary user (no write-access to system site packages):</div>
<div><br></div><div>    pip install pkg: installs to per-user site packages</div><div>    pip uninstall pkg: uninstalls from per-user site packages</div><div>    pip install --user pkg: installs to per-user site packages</div>


<div>    pip uninstall --user pkg: uninstalls from per-user site packages</div><div>    pip install --system pkg: fails (likely with a permissions error)</div><div>    pip uninstall --system pkg: fails, even if the package is present</div>


<div>(likely with a permissions error)</div><div><br></div><div>Administrator/root (write-access to system site packages):</div><div><br></div><div>    pip install pkg: asks for confirmation before installing to</div><div>


per-user site packages</div><div>    pip uninstall pkg: asks for confirmation before uninstalling from</div><div>per-user site packages</div><div>    pip install --user pkg: installs to per-user site packages</div><div>    pip uninstall --user pkg: uninstalls from per-user site packages</div>


<div>    pip install --system pkg: install to system site packages</div><div>    pip uninstall --system pkg: uninstalls from site packages</div></div>
</blockquote></div><br></div></div></div></div></div></div>