LinuxmacOS

Where Does pipx Install Tools?

pipx home and bin directories for isolated tool venvs, and the variables that move them.

Last updated

pipx installs each CLI tool into its own virtualenv under a home directory, defaulting to .local/share/pipx, and symlinks the executables into a bin directory, defaulting to .local/bin. The split keeps tools isolated from each other while exposing one command folder to your PATH.

Two variables govern the layout: PIPX_HOME for the venvs and PIPX_BIN_DIR for the shims. Upgrading pipx itself never touches installed tools, since the package manager and its payloads live apart. A broken tool gets reinstalled with pipx reinstall, leaving neighbors alone.

Where pipx stores this, by platform

Linux
~/.local/share/pipx

Key children include venvs per tool, shared libraries and logs. Set PIPX_HOME and PIPX_BIN_DIR in your shell rc to relocate. The bin directory belongs on PATH for installed commands to resolve.

macOS
~/.local/share/pipx

Same XDG style layout as Linux. The bin directory convention matches Homebrew era PATH setups, so pipx tools sit comfortably beside other user installed commands.

Frequently asked questions

how do i move pipx tools to another drive

Set PIPX_HOME and PIPX_BIN_DIR to the new paths, then move both directories there. Venvs and their exposed console scripts resolve from those variables, so both moves matter. Reinstall tools afterwards if shims misbehave.

how do i see the exact paths pipx uses

Run pipx environment to print every effective path for your install, including homes, bins and caches. That single command settles OS differences and custom variables at once, which beats memorizing platform tables.

Notice an outdated path? Let us know.