2 min read

Installing Python Packages with Pip Using the --user Flag on macOS Tahoe

When installing Python packages with pip, you might encounter permission errors that prompt you to use sudo. While it's generally not recommended to use sudo pip, you can install packages to your user directory without modifying pip.conf by using the --user flag. This is a simpler, more direct alternative for installing packages in user space.

Using the --user Flag

The --user flag tells pip to install packages in your home directory, specifically in the ~/.local directory. This avoids the need for administrator privileges and keeps your system clean.

Basic Usage

To install a package using the --user flag:

pip install --user package_name

Example:

pip install --user requests

This will install the requests package and its dependencies in the ~/.local directory.

Making Executables Accessible

When you install packages with executables using the --user flag, you need to ensure that the ~/.local/bin directory is in your PATH so that the executables are accessible from the command line.

  1. Edit Your Shell Configuration File: Open your ~/.zshrc (or ~/.bashrc) file.

    nano ~/.zshrc
  2. Add to PATH: Add the following line to your shell configuration file:

    export PATH="$HOME/.local/bin:$PATH"
  3. Apply Changes: Apply the changes by sourcing the configuration file:

    source ~/.zshrc
  • Installing Python Packages with Pip Without Sudo on macOS Tahoe
  • Creating Python Virtual Environments with venv on macOS Tahoe
  • Configuring the Zsh Profile and PATH on macOS Tahoe