skillfed

pip2pi

pip2pi builds a PyPI-compatible package repository from pip requirements

pip2pi v0.8.2 165.4K downloads/30d#10,523 on PyPI762
Permissive license BSD Abandoned released

What it is and what it does

pip2pi is a command-line tool that downloads Python packages and their dependencies, then builds a PyPI-compatible package index suitable for offline or private use. It wraps pip's download functionality and generates a simple HTML index structure that pip can read, allowing you to serve packages from your own HTTP server or use them locally via file:// URLs.

The tool is designed for scenarios where PyPI availability is unreliable, packages are removed from PyPI, or you need a private mirror for internal distribution. It supports downloading from requirements files, specific package versions, or URLs, and can push the resulting index to a remote server via rsync. However, the project has been abandoned since 2021 with no updates to account for changes in pip, Python, or packaging standards.

Use it for:

  • Create an offline PyPI mirror for air-gapped or unreliable network environments.
  • Maintain a stable snapshot of dependencies when upstream packages are removed or PyPI is unavailable.
  • Set up a private package index for internal distribution within an organization.
  • Speed up repeated deployments by serving pre-downloaded packages from local storage.
  • Archive specific package versions before they disappear from PyPI.

Worth the install?

AI-flagged interpretation of the facts on this page — verify before relying

pip2pi creates a PyPI-compatible package repository from pip requirements, enabling offline package installation and mirroring to avoid PyPI downtime or missing tarballs.

No—install only if you have a specific legacy use case and are willing to maintain the tool yourself. The package is abandoned (last release 2021-08-04, last commit 2022-07-09), so it will not be updated for modern pip or Python versions. For current projects, use modern alternatives like devpi, Artifactory, or Nexus that are actively maintained and designed for contemporary packaging workflows.

Install

pip2pi on PyPI

pip

pip install pip2pi

uv

uv add pip2pi

poetry

poetry add pip2pi

Installing pip2pi

Before you install

Installation is straightforward with low friction—only pip is required as a runtime dependency. However, the package is abandoned: the last commit was 2022-07-09 and no releases have occurred since 2021-08-04, so expect no maintenance or updates.

License in practice

BSD license is permissive, allowing commercial and private use with minimal restrictions, making it suitable for internal mirroring infrastructure.

Quickstart

$ pip install pip2pi
$ pip2pi ~/packages/ foo==1.2
$ dir2pi ~/packages/
$ pip install --index-url=file:///path/to/packages/simple/ foo

Requires pip to be installed and available on the system; rsync is needed if pushing to a remote host via colon-separated paths.

Verify before relying

  • Whether the tool still works reliably with modern pip versions and current PyPI package formats.
  • Compatibility with recent Python versions—requires_python is unspecified in the metadata.
  • Whether rsync-based remote deployment still functions as documented with current systems.

Package facts

License BSD (permissive)
Python support not specified
Install friction low — pure-Python wheel
Runtime dependencies 1 — pip
Maintenance abandoned — 1,836 days since the last release
Last repo commit
First released
Downloads 165,390/month — #10,523 on PyPI (30-day window, as of 2026-08-14)
Known vulnerabilities none known (OSV.dev, checked 2026-08-14)

Evidence: pip2pi-0.8.2-py2.py3-none-any.whl

Development Status :: 4 - BetaEnvironment :: ConsoleIntended Audience :: DevelopersIntended Audience :: System AdministratorsLicense :: OSI Approved :: BSD LicenseNatural Language :: EnglishOperating System :: OS IndependentProgramming Language :: PythonTopic :: Software DevelopmentTopic :: Utilities

Tags

offline pypi mirrorlocal package repositorypip package mirroringpypi-compatible indexprivate package indexdownload packages offlinemirror pypi locally
package-mirroringoffline-installationlegacy

More Software Development packages