Files
oam/knowledge base/pip.md
2023-07-09 20:48:18 +02:00

1.6 KiB

PIP

Package installer for Python.

  1. TL;DR
  2. Configuration
  3. Further readings

Table of contents

  1. TL;DR
  2. Configuration
  3. Further readings

TL;DR

# Install packages.
pip install 'yamllint'
pip install --user 'ansible'

# Upgrade packages.
pip install -U 'pip'

# Upgrade the included `pip` executable on Mac OS X.
~/Library/Python/3.8/bin/pip3 install --user --upgrade 'pip'

# Upgrade all currently installed packages.
pip install --requirement <(pip freeze | sed 's/==/>=/') --upgrade

# Generate a list of the outdated packages.
pip list --outdated

# Remove orphaned dependencies.
# Requires `pip-autoremove`.
pip-autoremove

Configuration

INI format files, on those levels:

Level Scope File locations
global System-wide, shared The pip subdirectory in any of the directories defined in XDG_CONFIG_DIRS if it exists (i.e. /etc/xdg/pip/pip.conf)
/etc/pip.conf
user Per-user $HOME/.config/pip/pip.conf
$HOME/.pip/pip.conf (legacy)
site Per-environment $VIRTUAL_ENV/pip.conf
shell Active shell session Value of PIP_CONFIG_FILE

When multiple configuration exist, pip merges them in the following order:

  1. shell
  2. global
  3. user
  4. site

Latter files override values from previous files, i.e. the global timeout specified in the global file will be superseded by the one defined in the user file.

Further readings