Git repository pointers and configurations to build Python packages from source
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Franco Masotti 2b53ab9b4a
- Updated hooks.
3 months ago
scripts - Updated hooks. 3 months ago
stats - Updated hooks. 3 months ago
submodules Submodule updates. 3 months ago
.allowed_licenses.yml Added Pipfile, makefile, pre-commit file and other files. 12 months ago
.gitignore Added submodules. 9 months ago
.gitmodules Submodule updates. 4 months ago
.pre-commit-config.yaml - Updated hooks. 3 months ago
LICENSE.txt Added submodules. Added git add script. Added license. 12 months ago
Makefile Added submodules. Fixed makefile target. 9 months ago
Pipfile Fixed installation. 9 months ago Removed old instructions from readme. Fixed copyright headers. 9 months ago
configuration.yaml Fixes. 8 months ago

Python packages source

Git repository pointers and configurations to build Python packages from source.

Table of contents


This is a meta-repository which contains pointers (git submodules) used to build Python 3 packages as an alternative to PyPI.

Git submodules point to mirrors on this server rather than upstream repositories. Using mirrors enables to work offline: the source of most package dependencies I use are hosted on GitHub.


These numbers include all repositories hosted on mirrors-python. I don't use all these packages but I mirrored them just in case.

You can imagine what happens when GitHub is down...

Build script

Most packages present on have been built using the


  1. clone this repository normally (without recrursive submodules)

    git clone
  2. to add submodules from external repositories run

    make submodules-add SUBMODULES="{submodule_URL_0} ${submodule_URL_1} ... ${submodule_URL_n}"
  3. to add all submodules from a Gitea organization through Gitea's API run

    make submodules-add-gitea
 is hardcoded in the script as variables

  4. to update all submodules in the index run

    make submodules-update





Problematic repositories

  • kiwi
  • lxml
  • matplotlib
  • numpy

Client configuration


Add this to ~/.config/pip/pip.conf

timeout = 60
index-url =



pipenv install --pypi-mirror


Use this as source in the Pipfile:

name = "pypi"
url = ""
verify_ssl = true

Environment variable

This is my preferred method. Add the following to your shell configuration or profile:



Copyright (C) 2021-2022 Franco Masotti (franco \D\o\T masotti {-A-T-} tutanota \D\o\T com)

python-packages-source is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

python-packages-source is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with python-packages-source. If not, see

Changelog and trusted source

You can check the authenticity of new releases using my public key.

Changelogs, instructions, sources and keys can be found at

Crypto donations

  • Bitcoin: bc1qnkflazapw3hjupawj0lm39dh9xt88s7zal5mwu
  • Monero: 84KHWDTd9hbPyGwikk33Qp5GW7o7zRwPb8kJ6u93zs4sNMpDSnM5ZTWVnUp2cudRYNT6rNqctnMQ9NbUewbj7MzCBUcrQEY
  • Dogecoin: DMB5h2GhHiTNW7EcmDnqkYpKs6Da2wK3zP
  • Vertcoin: vtc1qd8n3jvkd2vwrr6cpejkd9wavp4ld6xfu9hkhh0