diff -ru pip-18.0/src/pip/_internal/commands/install.py pip-18.0_patched/src/pip/_internal/commands/install.py --- pip-18.0/src/pip/_internal/commands/install.py 2018-07-20 06:10:48.000000000 +0200 +++ pip-18.0_patched/src/pip/_internal/commands/install.py 2018-07-31 12:15:43.777317780 +0200 @@ -5,6 +5,8 @@ import operator import os import shutil +import sys +from os import path from optparse import SUPPRESS_HELP from pip._vendor import pkg_resources @@ -205,6 +207,18 @@ def run(self, options, args): cmdoptions.check_install_build_global(options) + def is_venv(): + return hasattr(sys, 'real_prefix') or \ + (hasattr(sys, 'base_prefix') and sys.base_prefix != sys.prefix) + + # Check whether we have root privileges and aren't in venv/virtualenv + if os.getuid() == 0 and not is_venv(): + logger.warning( + "WARNING: Running pip install with root privileges is " + "generally not a good idea. Try `%s install --user` instead." + % path.basename(sys.argv[0]) + ) + upgrade_strategy = "to-satisfy-only" if options.upgrade: upgrade_strategy = options.upgrade_strategy