# xpip-mirror
If you live within the Great Wall Firewall, the access to the official source of [PyPI](https://pypi.org/) is extremely unstable.
The `xpip-mirror` mirror management can probe the delay of mirrors in the list and select the current optimal path.
## list all available mirrors
```text
root@zou:~# xpip-mirror list
name URL HOST PING(ms)
-------- ---------------------------------------- ----------------------------------------- ----------
ustc https://pypi.mirrors.ustc.edu.cn/simple pypi.mirrors.ustc.edu.cn (218.104.71.170) 8.3
baidu https://mirror.baidu.com/pypi/simple mirror.baidu.com (58.243.203.35) 15.7
aliyun https://mirrors.aliyun.com/pypi/simple mirrors.aliyun.com (119.167.250.248) 17.7
tsinghua https://pypi.tuna.tsinghua.edu.cn/simple pypi.tuna.tsinghua.edu.cn (101.6.15.130) 23.7
douban https://pypi.douban.com/simple pypi.douban.com (49.233.242.15) 32.0
pypi https://pypi.org/simple pypi.org (151.101.128.223) timeout
Suggest using the installation command:
pip install -i https://pypi.mirrors.ustc.edu.cn/simple <package-name>
```
## config mirror
### show config
```text
root@zou:~# xpip-mirror now
https://mirrors.aliyun.com/pypi/simple
```
### choice the best
```text
root@zou:~# xpip-mirror choice
Writing to /root/.config/pip/pip.conf
choice ustc: https://pypi.mirrors.ustc.edu.cn/simple
```
### choice by name
```text
root@zou:~# xpip-mirror choice tsinghua
Writing to /root/.config/pip/pip.conf
choice tsinghua: https://pypi.tuna.tsinghua.edu.cn/simple
```
Raw data
{
"_id": null,
"home_page": "https://github.com/bondbox/xpip/",
"name": "xpip.mirror",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.8",
"maintainer_email": null,
"keywords": "pip, pypi, mirror",
"author": "Mingzhe Zou",
"author_email": "zoumingzhe@outlook.com",
"download_url": "https://files.pythonhosted.org/packages/d2/11/9c63392d1c7f4561b4c6c1c84e29afaffa757321d5f4c9d312aac2fae655/xpip.mirror-0.2.1.tar.gz",
"platform": "any",
"description": "# xpip-mirror\n\nIf you live within the Great Wall Firewall, the access to the official source of [PyPI](https://pypi.org/) is extremely unstable.\n\nThe `xpip-mirror` mirror management can probe the delay of mirrors in the list and select the current optimal path.\n\n## list all available mirrors\n\n```text\nroot@zou:~# xpip-mirror list\nname URL HOST PING(ms)\n-------- ---------------------------------------- ----------------------------------------- ----------\nustc https://pypi.mirrors.ustc.edu.cn/simple pypi.mirrors.ustc.edu.cn (218.104.71.170) 8.3\nbaidu https://mirror.baidu.com/pypi/simple mirror.baidu.com (58.243.203.35) 15.7\naliyun https://mirrors.aliyun.com/pypi/simple mirrors.aliyun.com (119.167.250.248) 17.7\ntsinghua https://pypi.tuna.tsinghua.edu.cn/simple pypi.tuna.tsinghua.edu.cn (101.6.15.130) 23.7\ndouban https://pypi.douban.com/simple pypi.douban.com (49.233.242.15) 32.0\npypi https://pypi.org/simple pypi.org (151.101.128.223) timeout\n\nSuggest using the installation command:\npip install -i https://pypi.mirrors.ustc.edu.cn/simple <package-name>\n```\n\n## config mirror\n\n### show config\n\n```text\nroot@zou:~# xpip-mirror now\nhttps://mirrors.aliyun.com/pypi/simple\n```\n\n### choice the best\n\n```text\nroot@zou:~# xpip-mirror choice\nWriting to /root/.config/pip/pip.conf\nchoice ustc: https://pypi.mirrors.ustc.edu.cn/simple\n```\n\n### choice by name\n\n```text\nroot@zou:~# xpip-mirror choice tsinghua\nWriting to /root/.config/pip/pip.conf\nchoice tsinghua: https://pypi.tuna.tsinghua.edu.cn/simple\n```\n\n\n",
"bugtrack_url": null,
"license": "GPLv2",
"summary": "pip mirror management",
"version": "0.2.1",
"project_urls": {
"Bug Tracker": "https://github.com/bondbox/xpip/issues",
"Documentation": "https://github.com/bondbox/xpip/",
"Homepage": "https://github.com/bondbox/xpip/",
"Source Code": "https://github.com/bondbox/xpip/"
},
"split_keywords": [
"pip",
" pypi",
" mirror"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "3f3bdbb3e1a987a4386b1df71e09763f3589635f1f8dc3fab8bacb7e270de8e1",
"md5": "474554f2980e53b6cc3b659ede63ad9c",
"sha256": "58ade5301300e0058382a7bf33e5558dafae3bb11142a9c5d73d1cedf670ecd9"
},
"downloads": -1,
"filename": "xpip.mirror-0.2.1-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "474554f2980e53b6cc3b659ede63ad9c",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": ">=3.8",
"size": 13187,
"upload_time": "2024-03-31T06:18:53",
"upload_time_iso_8601": "2024-03-31T06:18:53.408068Z",
"url": "https://files.pythonhosted.org/packages/3f/3b/dbb3e1a987a4386b1df71e09763f3589635f1f8dc3fab8bacb7e270de8e1/xpip.mirror-0.2.1-py2.py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "d2119c63392d1c7f4561b4c6c1c84e29afaffa757321d5f4c9d312aac2fae655",
"md5": "03f1e16406073b209d907033505cc9f5",
"sha256": "082802b05e3eb1904673fb1ec146549514153b2282386f384bfa6279328089fb"
},
"downloads": -1,
"filename": "xpip.mirror-0.2.1.tar.gz",
"has_sig": false,
"md5_digest": "03f1e16406073b209d907033505cc9f5",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.8",
"size": 12056,
"upload_time": "2024-03-31T06:18:55",
"upload_time_iso_8601": "2024-03-31T06:18:55.349231Z",
"url": "https://files.pythonhosted.org/packages/d2/11/9c63392d1c7f4561b4c6c1c84e29afaffa757321d5f4c9d312aac2fae655/xpip.mirror-0.2.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-03-31 06:18:55",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "bondbox",
"github_project": "xpip",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "xpip.mirror"
}