Pip is Python's package management system. It references packages available in the official Python Package Index (PyPI).
emerge --ask dev-python/pip
In order for pip to operate correctly when installing new packages an active internet connection is a requirement.
Usage: pip <command> [options] Commands: install Install packages. uninstall Uninstall packages. freeze Output installed packages in requirements format. list List installed packages. show Show information about installed packages. search Search PyPI for packages. wheel Build wheels from your requirements. help Show help for commands. General Options: -h, --help Show help. --isolated Run pip in an isolated mode, ignoring environment variables and user configuration. -v, --verbose Give more output. Option is additive, and can be used up to 3 times. -V, --version Show version and exit. -q, --quiet Give less output. --log <path> Path to a verbose appending log. --proxy <proxy> Specify a proxy in the form [user:passwd@]proxy.server:port. --retries <retries> Maximum number of retries each connection should attempt (default 5 times). --timeout <sec> Set the socket timeout (default 15 seconds). --exists-action <action> Default action when a path already exists: (s)witch, (i)gnore, (w)ipe, (b)ackup. --trusted-host <hostname> Mark this host as trusted, even though it does not have valid or any HTTPS. --cert <path> Path to alternate CA bundle. --client-cert <path> Path to SSL client certificate, a single file containing the private key and the certificate in PEM format. --cache-dir <dir> Store the cache data in <dir>. --no-cache-dir Disable the cache. --disable-pip-version-check Don't periodically check PyPI to determine whether a new version of pip is available for download. Implied with --no-index.
Running pip as root is not advised. It can render important system tools like emerge useless.
It is important to understand that packages installed using pip will not be tracked by Portage. This is the case for installing any package through means other than the emerge command. Possible conflicts can be created when installing a Python package that is available in the Portage tree, then installing the same package using pip.
Decide which package manager will work best for the use case: either use emerge or pip for Python packages, but not both. Some Python packages are not available in the Portage tree, in these cases the only option is to use pip. One possibility is to use the
--useroption to install Python packages in a user's home directory. This will avoid conflicts with Portage. Be wise and make good choices!
To install a package using the pip command, where
package is the desired package:
pip install <package>
To install the package in a user's home directory, be signed-in as the desired user, then issue:
pip install --user <package>
This will install the package in the user's ~/.local/ directory.
To remove a package using pip:
pip uninstall <package>
- Portage — the official package manager and distribution system for Gentoo.
- Gem - Ruby's counterpart of pip for Python.
- Project:Python/Dependencies - How to turn PyPI dependencies to those of ebuild.
- Python/Virtual environment (ArchWiki article) - Isolated Python's environment, enabling sandboxed installation of packages.