mirror of
https://gitee.com/SuperManito/LinuxMirrors
synced 2025-11-01 23:10:28 +08:00
Compare commits
2 Commits
61868705dd
...
e81a8fda94
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e81a8fda94 | ||
|
|
cae539f6b7 |
442
ChangeMirrors.sh
442
ChangeMirrors.sh
@@ -1,6 +1,6 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
## Author: SuperManito
|
## Author: SuperManito
|
||||||
## Modified: 2025-10-12
|
## Modified: 2025-10-14
|
||||||
## License: MIT
|
## License: MIT
|
||||||
## GitHub: https://github.com/SuperManito/LinuxMirrors
|
## GitHub: https://github.com/SuperManito/LinuxMirrors
|
||||||
## Website: https://linuxmirrors.cn
|
## Website: https://linuxmirrors.cn
|
||||||
@@ -17,6 +17,8 @@ mirror_list_default=(
|
|||||||
"mirrors.aliyun.com"
|
"mirrors.aliyun.com"
|
||||||
"mirrors.tencent.com"
|
"mirrors.tencent.com"
|
||||||
"mirrors.huaweicloud.com"
|
"mirrors.huaweicloud.com"
|
||||||
|
"mirrors.cmecloud.cn"
|
||||||
|
"mirrors.ctyun.cn"
|
||||||
"mirrors.163.com"
|
"mirrors.163.com"
|
||||||
"mirrors.volces.com"
|
"mirrors.volces.com"
|
||||||
"mirrors.tuna.tsinghua.edu.cn"
|
"mirrors.tuna.tsinghua.edu.cn"
|
||||||
@@ -75,6 +77,7 @@ mirror_list_abroad=(
|
|||||||
"mirror.ossplanet.net"
|
"mirror.ossplanet.net"
|
||||||
"linux.cs.nctu.edu.tw"
|
"linux.cs.nctu.edu.tw"
|
||||||
"ftp.tku.edu.tw"
|
"ftp.tku.edu.tw"
|
||||||
|
"mirror.twds.com.tw"
|
||||||
"mirror.anigil.com"
|
"mirror.anigil.com"
|
||||||
"ftp.udx.icscoe.jp/Linux"
|
"ftp.udx.icscoe.jp/Linux"
|
||||||
"ftp.jaist.ac.jp/pub/Linux"
|
"ftp.jaist.ac.jp/pub/Linux"
|
||||||
@@ -143,6 +146,7 @@ mirror_list_extranet=(
|
|||||||
"mirrors.aliyun.com"
|
"mirrors.aliyun.com"
|
||||||
"mirrors.tencent.com"
|
"mirrors.tencent.com"
|
||||||
"mirrors.huaweicloud.com"
|
"mirrors.huaweicloud.com"
|
||||||
|
"mirrors.ctyun.cn"
|
||||||
"mirrors.volces.com"
|
"mirrors.volces.com"
|
||||||
)
|
)
|
||||||
# 软件源内网地址列表
|
# 软件源内网地址列表
|
||||||
@@ -150,6 +154,7 @@ mirror_list_intranet=(
|
|||||||
"mirrors.cloud.aliyuncs.com"
|
"mirrors.cloud.aliyuncs.com"
|
||||||
"mirrors.tencentyun.com"
|
"mirrors.tencentyun.com"
|
||||||
"mirrors.myhuaweicloud.com"
|
"mirrors.myhuaweicloud.com"
|
||||||
|
"internal.mirrors.ctyun.cn"
|
||||||
"mirrors.ivolces.com"
|
"mirrors.ivolces.com"
|
||||||
)
|
)
|
||||||
|
|
||||||
@@ -7853,18 +7858,20 @@ function msg_pack_zh_hans() {
|
|||||||
['mirrors.default.0']='阿里云'
|
['mirrors.default.0']='阿里云'
|
||||||
['mirrors.default.1']='腾讯云'
|
['mirrors.default.1']='腾讯云'
|
||||||
['mirrors.default.2']='华为云'
|
['mirrors.default.2']='华为云'
|
||||||
['mirrors.default.3']='网易'
|
['mirrors.default.3']='移动云'
|
||||||
['mirrors.default.4']='火山引擎'
|
['mirrors.default.4']='天翼云'
|
||||||
['mirrors.default.5']='清华大学'
|
['mirrors.default.5']='网易'
|
||||||
['mirrors.default.6']='北京大学'
|
['mirrors.default.6']='火山引擎'
|
||||||
['mirrors.default.7']='浙江大学'
|
['mirrors.default.7']='清华大学'
|
||||||
['mirrors.default.8']='南京大学'
|
['mirrors.default.8']='北京大学'
|
||||||
['mirrors.default.9']='兰州大学'
|
['mirrors.default.9']='浙江大学'
|
||||||
['mirrors.default.10']='上海交通大学'
|
['mirrors.default.10']='南京大学'
|
||||||
['mirrors.default.11']='重庆邮电大学'
|
['mirrors.default.11']='兰州大学'
|
||||||
['mirrors.default.12']='中国科学技术大学'
|
['mirrors.default.12']='上海交通大学'
|
||||||
['mirrors.default.13']='中国科学院软件研究所'
|
['mirrors.default.13']='重庆邮电大学'
|
||||||
['mirrors.default.14']='官方源'
|
['mirrors.default.14']='中国科学技术大学'
|
||||||
|
['mirrors.default.15']='中国科学院软件研究所'
|
||||||
|
['mirrors.default.16']='官方源'
|
||||||
['mirrors.edu.0']='北京大学'
|
['mirrors.edu.0']='北京大学'
|
||||||
['mirrors.edu.1']='北京交通大学'
|
['mirrors.edu.1']='北京交通大学'
|
||||||
['mirrors.edu.2']='北京外国语大学'
|
['mirrors.edu.2']='北京外国语大学'
|
||||||
@@ -7905,65 +7912,66 @@ function msg_pack_zh_hans() {
|
|||||||
['mirrors.abroad.6']='亚洲 · OSS Planet · 台湾'
|
['mirrors.abroad.6']='亚洲 · OSS Planet · 台湾'
|
||||||
['mirrors.abroad.7']='亚洲 · 国立阳明交通大学 · 台湾'
|
['mirrors.abroad.7']='亚洲 · 国立阳明交通大学 · 台湾'
|
||||||
['mirrors.abroad.8']='亚洲 · 淡江大学 · 台湾'
|
['mirrors.abroad.8']='亚洲 · 淡江大学 · 台湾'
|
||||||
['mirrors.abroad.9']='亚洲 · AniGil Linux Archive · 韩国'
|
['mirrors.abroad.9']='亚洲 · Taiwan Digital Streaming · 台湾'
|
||||||
['mirrors.abroad.10']='亚洲 · 工业网络安全中心(ICSCoE) · 日本'
|
['mirrors.abroad.10']='亚洲 · AniGil Linux Archive · 韩国'
|
||||||
['mirrors.abroad.11']='亚洲 · 北陆先端科学技术大学院大学(JAIST) · 日本'
|
['mirrors.abroad.11']='亚洲 · 工业网络安全中心(ICSCoE) · 日本'
|
||||||
['mirrors.abroad.12']='亚洲 · 山形大学 · 日本'
|
['mirrors.abroad.12']='亚洲 · 北陆先端科学技术大学院大学(JAIST) · 日本'
|
||||||
['mirrors.abroad.13']='亚洲 · xTom · 日本'
|
['mirrors.abroad.13']='亚洲 · 山形大学 · 日本'
|
||||||
['mirrors.abroad.14']='亚洲 · GB Network Solutions · 马来西亚'
|
['mirrors.abroad.14']='亚洲 · xTom · 日本'
|
||||||
['mirrors.abroad.15']='亚洲 · 孔敬大学 · 泰国'
|
['mirrors.abroad.15']='亚洲 · GB Network Solutions · 马来西亚'
|
||||||
['mirrors.abroad.16']='欧洲 · Vorboss Ltd · 英国'
|
['mirrors.abroad.16']='亚洲 · 孔敬大学 · 泰国'
|
||||||
['mirrors.abroad.17']='欧洲 · QuickHost · 英国'
|
['mirrors.abroad.17']='欧洲 · Vorboss Ltd · 英国'
|
||||||
['mirrors.abroad.18']='欧洲 · dogado · 德国'
|
['mirrors.abroad.18']='欧洲 · QuickHost · 英国'
|
||||||
['mirrors.abroad.19']='欧洲 · xTom · 德国'
|
['mirrors.abroad.19']='欧洲 · dogado · 德国'
|
||||||
['mirrors.abroad.20']='欧洲 · 亚琛工业大学(RWTH Aachen) · 德国'
|
['mirrors.abroad.20']='欧洲 · xTom · 德国'
|
||||||
['mirrors.abroad.21']='欧洲 · 德累斯顿大学(AG DSN) · 德国'
|
['mirrors.abroad.21']='欧洲 · 亚琛工业大学(RWTH Aachen) · 德国'
|
||||||
['mirrors.abroad.22']='欧洲 · CCIN2P3 · 法国'
|
['mirrors.abroad.22']='欧洲 · 德累斯顿大学(AG DSN) · 德国'
|
||||||
['mirrors.abroad.23']='欧洲 · Ircam · 法国'
|
['mirrors.abroad.23']='欧洲 · CCIN2P3 · 法国'
|
||||||
['mirrors.abroad.24']='欧洲 · Crans · 法国'
|
['mirrors.abroad.24']='欧洲 · Ircam · 法国'
|
||||||
['mirrors.abroad.25']='欧洲 · CRIHAN · 法国'
|
['mirrors.abroad.25']='欧洲 · Crans · 法国'
|
||||||
['mirrors.abroad.26']='欧洲 · xTom · 荷兰'
|
['mirrors.abroad.26']='欧洲 · CRIHAN · 法国'
|
||||||
['mirrors.abroad.27']='欧洲 · DataPacket · 荷兰'
|
['mirrors.abroad.27']='欧洲 · xTom · 荷兰'
|
||||||
['mirrors.abroad.28']='欧洲 · Linux Kernel · 荷兰'
|
['mirrors.abroad.28']='欧洲 · DataPacket · 荷兰'
|
||||||
['mirrors.abroad.29']='欧洲 · xTom · 爱沙尼亚'
|
['mirrors.abroad.29']='欧洲 · Linux Kernel · 荷兰'
|
||||||
['mirrors.abroad.30']='欧洲 · netsite · 丹麦'
|
['mirrors.abroad.30']='欧洲 · xTom · 爱沙尼亚'
|
||||||
['mirrors.abroad.31']='欧洲 · Dotsrc · 丹麦'
|
['mirrors.abroad.31']='欧洲 · netsite · 丹麦'
|
||||||
['mirrors.abroad.32']='欧洲 · Academic Computer Club · 瑞典'
|
['mirrors.abroad.32']='欧洲 · Dotsrc · 丹麦'
|
||||||
['mirrors.abroad.33']='欧洲 · Lysator · 瑞典'
|
['mirrors.abroad.33']='欧洲 · Academic Computer Club · 瑞典'
|
||||||
['mirrors.abroad.34']='欧洲 · Yandex · 俄罗斯'
|
['mirrors.abroad.34']='欧洲 · Lysator · 瑞典'
|
||||||
['mirrors.abroad.35']='欧洲 · ia64 · 俄罗斯'
|
['mirrors.abroad.35']='欧洲 · Yandex · 俄罗斯'
|
||||||
['mirrors.abroad.36']='欧洲 · Truenetwork · 俄罗斯'
|
['mirrors.abroad.36']='欧洲 · ia64 · 俄罗斯'
|
||||||
['mirrors.abroad.37']='欧洲 · Belgian Research Network · 比利时'
|
['mirrors.abroad.37']='欧洲 · Truenetwork · 俄罗斯'
|
||||||
['mirrors.abroad.38']='欧洲 · 克里特大学计算机中心 · 希腊'
|
['mirrors.abroad.38']='欧洲 · Belgian Research Network · 比利时'
|
||||||
['mirrors.abroad.39']='欧洲 · 马萨里克大学信息学院 · 捷克'
|
['mirrors.abroad.39']='欧洲 · 克里特大学计算机中心 · 希腊'
|
||||||
['mirrors.abroad.40']='欧洲 · 捷克理工大学学生会俱乐部(Silicon Hill) · 捷克'
|
['mirrors.abroad.40']='欧洲 · 马萨里克大学信息学院 · 捷克'
|
||||||
['mirrors.abroad.41']='欧洲 · Vodafone · 捷克'
|
['mirrors.abroad.41']='欧洲 · 捷克理工大学学生会俱乐部(Silicon Hill) · 捷克'
|
||||||
['mirrors.abroad.42']='欧洲 · CZ.NIC · 捷克'
|
['mirrors.abroad.42']='欧洲 · Vodafone · 捷克'
|
||||||
['mirrors.abroad.43']='欧洲 · 苏黎世联邦理工学院 · 瑞士'
|
['mirrors.abroad.43']='欧洲 · CZ.NIC · 捷克'
|
||||||
['mirrors.abroad.44']='北美 · Linux Kernel · 美国'
|
['mirrors.abroad.44']='欧洲 · 苏黎世联邦理工学院 · 瑞士'
|
||||||
['mirrors.abroad.45']='北美 · 麻省理工学院(MIT) · 美国'
|
['mirrors.abroad.45']='北美 · Linux Kernel · 美国'
|
||||||
['mirrors.abroad.46']='北美 · 普林斯顿大学数学系 · 美国'
|
['mirrors.abroad.46']='北美 · 麻省理工学院(MIT) · 美国'
|
||||||
['mirrors.abroad.47']='北美 · 俄勒冈州立大学开源实验室 · 美国'
|
['mirrors.abroad.47']='北美 · 普林斯顿大学数学系 · 美国'
|
||||||
['mirrors.abroad.48']='北美 · Fremont Cabal Internet Exchange(FCIX) · 美国'
|
['mirrors.abroad.48']='北美 · 俄勒冈州立大学开源实验室 · 美国'
|
||||||
['mirrors.abroad.49']='北美 · xTom · 美国'
|
['mirrors.abroad.49']='北美 · Fremont Cabal Internet Exchange(FCIX) · 美国'
|
||||||
['mirrors.abroad.50']='北美 · Steadfast · 美国'
|
['mirrors.abroad.50']='北美 · xTom · 美国'
|
||||||
['mirrors.abroad.51']='北美 · 不列颠哥伦比亚大学 · 加拿大'
|
['mirrors.abroad.51']='北美 · Steadfast · 美国'
|
||||||
['mirrors.abroad.52']='北美 · GoCodeIT · 加拿大'
|
['mirrors.abroad.52']='北美 · 不列颠哥伦比亚大学 · 加拿大'
|
||||||
['mirrors.abroad.53']='北美 · Switch · 加拿大'
|
['mirrors.abroad.53']='北美 · GoCodeIT · 加拿大'
|
||||||
['mirrors.abroad.54']='南美 · PoP-SC · 巴西'
|
['mirrors.abroad.54']='北美 · Switch · 加拿大'
|
||||||
['mirrors.abroad.55']='南美 · 蓬塔格罗萨州立大学 · 巴西'
|
['mirrors.abroad.55']='南美 · PoP-SC · 巴西'
|
||||||
['mirrors.abroad.56']='南美 · UFSCar · 巴西'
|
['mirrors.abroad.56']='南美 · 蓬塔格罗萨州立大学 · 巴西'
|
||||||
['mirrors.abroad.57']='南美 · Sysarmy Community · 阿根廷'
|
['mirrors.abroad.57']='南美 · UFSCar · 巴西'
|
||||||
['mirrors.abroad.58']='大洋 · Fremont Cabal Internet Exchange(FCIX) · 澳大利亚'
|
['mirrors.abroad.58']='南美 · Sysarmy Community · 阿根廷'
|
||||||
['mirrors.abroad.59']='大洋 · AARNet · 澳大利亚'
|
['mirrors.abroad.59']='大洋 · Fremont Cabal Internet Exchange(FCIX) · 澳大利亚'
|
||||||
['mirrors.abroad.60']='大洋 · DataMossa · 澳大利亚'
|
['mirrors.abroad.60']='大洋 · AARNet · 澳大利亚'
|
||||||
['mirrors.abroad.61']='大洋 · Amaze · 澳大利亚'
|
['mirrors.abroad.61']='大洋 · DataMossa · 澳大利亚'
|
||||||
['mirrors.abroad.62']='大洋 · xTom · 澳大利亚'
|
['mirrors.abroad.62']='大洋 · Amaze · 澳大利亚'
|
||||||
['mirrors.abroad.63']='大洋 · Over the Wire · 澳大利亚'
|
['mirrors.abroad.63']='大洋 · xTom · 澳大利亚'
|
||||||
['mirrors.abroad.64']='大洋 · Free Software Mirror Group · 新西兰'
|
['mirrors.abroad.64']='大洋 · Over the Wire · 澳大利亚'
|
||||||
['mirrors.abroad.65']='非洲 · Liquid Telecom · 肯尼亚'
|
['mirrors.abroad.65']='大洋 · Free Software Mirror Group · 新西兰'
|
||||||
['mirrors.abroad.66']='非洲 · Dimension Data · 南非'
|
['mirrors.abroad.66']='非洲 · Liquid Telecom · 肯尼亚'
|
||||||
['mirrors.abroad.67']='官方源'
|
['mirrors.abroad.67']='非洲 · Dimension Data · 南非'
|
||||||
|
['mirrors.abroad.68']='官方源'
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -8082,18 +8090,20 @@ function msg_pack_zh_hant() {
|
|||||||
['mirrors.default.0']='阿里雲'
|
['mirrors.default.0']='阿里雲'
|
||||||
['mirrors.default.1']='騰訊雲'
|
['mirrors.default.1']='騰訊雲'
|
||||||
['mirrors.default.2']='華為雲'
|
['mirrors.default.2']='華為雲'
|
||||||
['mirrors.default.3']='網易'
|
['mirrors.default.3']='移動雲'
|
||||||
['mirrors.default.4']='火山引擎'
|
['mirrors.default.4']='天翼雲'
|
||||||
['mirrors.default.5']='清華大學'
|
['mirrors.default.5']='網易'
|
||||||
['mirrors.default.6']='北京大學'
|
['mirrors.default.6']='火山引擎'
|
||||||
['mirrors.default.7']='浙江大學'
|
['mirrors.default.7']='清華大學'
|
||||||
['mirrors.default.8']='南京大學'
|
['mirrors.default.8']='北京大學'
|
||||||
['mirrors.default.9']='蘭州大學'
|
['mirrors.default.9']='浙江大學'
|
||||||
['mirrors.default.10']='上海交通大學'
|
['mirrors.default.10']='南京大學'
|
||||||
['mirrors.default.11']='重慶郵電大學'
|
['mirrors.default.11']='蘭州大學'
|
||||||
['mirrors.default.12']='中國科學技術大學'
|
['mirrors.default.12']='上海交通大學'
|
||||||
['mirrors.default.13']='中國科學院軟件研究所'
|
['mirrors.default.13']='重慶郵電大學'
|
||||||
['mirrors.default.14']='官方源'
|
['mirrors.default.14']='中國科學技術大學'
|
||||||
|
['mirrors.default.15']='中國科學院軟件研究所'
|
||||||
|
['mirrors.default.16']='官方源'
|
||||||
['mirrors.edu.0']='北京大學'
|
['mirrors.edu.0']='北京大學'
|
||||||
['mirrors.edu.1']='北京交通大學'
|
['mirrors.edu.1']='北京交通大學'
|
||||||
['mirrors.edu.2']='北京外國語大學'
|
['mirrors.edu.2']='北京外國語大學'
|
||||||
@@ -8134,65 +8144,66 @@ function msg_pack_zh_hant() {
|
|||||||
['mirrors.abroad.6']='亞洲 · OSS Planet · 臺灣'
|
['mirrors.abroad.6']='亞洲 · OSS Planet · 臺灣'
|
||||||
['mirrors.abroad.7']='亞洲 · 國立陽明交通大學 · 臺灣'
|
['mirrors.abroad.7']='亞洲 · 國立陽明交通大學 · 臺灣'
|
||||||
['mirrors.abroad.8']='亞洲 · 淡江大學 · 臺灣'
|
['mirrors.abroad.8']='亞洲 · 淡江大學 · 臺灣'
|
||||||
['mirrors.abroad.9']='亞洲 · AniGil Linux Archive · 韓國'
|
['mirrors.abroad.9']='亞洲 · Taiwan Digital Streaming · 臺灣'
|
||||||
['mirrors.abroad.10']='亞洲 · 工業網路安全中心(ICSCoE) · 日本'
|
['mirrors.abroad.10']='亞洲 · AniGil Linux Archive · 韓國'
|
||||||
['mirrors.abroad.11']='亞洲 · 北陸先端科學技術大學院大學(JAIST) · 日本'
|
['mirrors.abroad.11']='亞洲 · 工業網路安全中心(ICSCoE) · 日本'
|
||||||
['mirrors.abroad.12']='亞洲 · 山形大學 · 日本'
|
['mirrors.abroad.12']='亞洲 · 北陸先端科學技術大學院大學(JAIST) · 日本'
|
||||||
['mirrors.abroad.13']='亞洲 · xTom · 日本'
|
['mirrors.abroad.13']='亞洲 · 山形大學 · 日本'
|
||||||
['mirrors.abroad.14']='亞洲 · GB Network Solutions · 馬來西亞'
|
['mirrors.abroad.14']='亞洲 · xTom · 日本'
|
||||||
['mirrors.abroad.15']='亞洲 · 孔敬大學 · 泰國'
|
['mirrors.abroad.15']='亞洲 · GB Network Solutions · 馬來西亞'
|
||||||
['mirrors.abroad.16']='歐洲 · Vorboss Ltd · 英國'
|
['mirrors.abroad.16']='亞洲 · 孔敬大學 · 泰國'
|
||||||
['mirrors.abroad.17']='歐洲 · QuickHost · 英國'
|
['mirrors.abroad.17']='歐洲 · Vorboss Ltd · 英國'
|
||||||
['mirrors.abroad.18']='歐洲 · dogado · 德國'
|
['mirrors.abroad.18']='歐洲 · QuickHost · 英國'
|
||||||
['mirrors.abroad.19']='歐洲 · xTom · 德國'
|
['mirrors.abroad.19']='歐洲 · dogado · 德國'
|
||||||
['mirrors.abroad.20']='歐洲 · 亞琛工業大學(RWTH Aachen) · 德國'
|
['mirrors.abroad.20']='歐洲 · xTom · 德國'
|
||||||
['mirrors.abroad.21']='歐洲 · 德勒斯登大學(AG DSN) · 德國'
|
['mirrors.abroad.21']='歐洲 · 亞琛工業大學(RWTH Aachen) · 德國'
|
||||||
['mirrors.abroad.22']='歐洲 · CCIN2P3 · 法國'
|
['mirrors.abroad.22']='歐洲 · 德勒斯登大學(AG DSN) · 德國'
|
||||||
['mirrors.abroad.23']='歐洲 · Ircam · 法國'
|
['mirrors.abroad.23']='歐洲 · CCIN2P3 · 法國'
|
||||||
['mirrors.abroad.24']='歐洲 · Crans · 法國'
|
['mirrors.abroad.24']='歐洲 · Ircam · 法國'
|
||||||
['mirrors.abroad.25']='歐洲 · CRIHAN · 法國'
|
['mirrors.abroad.25']='歐洲 · Crans · 法國'
|
||||||
['mirrors.abroad.26']='歐洲 · xTom · 荷蘭'
|
['mirrors.abroad.26']='歐洲 · CRIHAN · 法國'
|
||||||
['mirrors.abroad.27']='歐洲 · DataPacket · 荷蘭'
|
['mirrors.abroad.27']='歐洲 · xTom · 荷蘭'
|
||||||
['mirrors.abroad.28']='歐洲 · Linux Kernel · 荷蘭'
|
['mirrors.abroad.28']='歐洲 · DataPacket · 荷蘭'
|
||||||
['mirrors.abroad.29']='歐洲 · xTom · 愛沙尼亞'
|
['mirrors.abroad.29']='歐洲 · Linux Kernel · 荷蘭'
|
||||||
['mirrors.abroad.30']='歐洲 · netsite · 丹麥'
|
['mirrors.abroad.30']='歐洲 · xTom · 愛沙尼亞'
|
||||||
['mirrors.abroad.31']='歐洲 · Dotsrc · 丹麥'
|
['mirrors.abroad.31']='歐洲 · netsite · 丹麥'
|
||||||
['mirrors.abroad.32']='歐洲 · Academic Computer Club · 瑞典'
|
['mirrors.abroad.32']='歐洲 · Dotsrc · 丹麥'
|
||||||
['mirrors.abroad.33']='歐洲 · Lysator · 瑞典'
|
['mirrors.abroad.33']='歐洲 · Academic Computer Club · 瑞典'
|
||||||
['mirrors.abroad.34']='歐洲 · Yandex · 俄羅斯'
|
['mirrors.abroad.34']='歐洲 · Lysator · 瑞典'
|
||||||
['mirrors.abroad.35']='歐洲 · ia64 · 俄羅斯'
|
['mirrors.abroad.35']='歐洲 · Yandex · 俄羅斯'
|
||||||
['mirrors.abroad.36']='歐洲 · Truenetwork · 俄羅斯'
|
['mirrors.abroad.36']='歐洲 · ia64 · 俄羅斯'
|
||||||
['mirrors.abroad.37']='歐洲 · Belgian Research Network · 比利時'
|
['mirrors.abroad.37']='歐洲 · Truenetwork · 俄羅斯'
|
||||||
['mirrors.abroad.38']='歐洲 · 克里特大學計算機中心 · 希臘'
|
['mirrors.abroad.38']='歐洲 · Belgian Research Network · 比利時'
|
||||||
['mirrors.abroad.39']='歐洲 · 馬薩里克大學信息學院 · 捷克'
|
['mirrors.abroad.39']='歐洲 · 克里特大學計算機中心 · 希臘'
|
||||||
['mirrors.abroad.40']='歐洲 · 捷克理工大學學生會俱樂部(Silicon Hill) · 捷克'
|
['mirrors.abroad.40']='歐洲 · 馬薩里克大學信息學院 · 捷克'
|
||||||
['mirrors.abroad.41']='歐洲 · Vodafone · 捷克'
|
['mirrors.abroad.41']='歐洲 · 捷克理工大學學生會俱樂部(Silicon Hill) · 捷克'
|
||||||
['mirrors.abroad.42']='歐洲 · CZ.NIC · 捷克'
|
['mirrors.abroad.42']='歐洲 · Vodafone · 捷克'
|
||||||
['mirrors.abroad.43']='歐洲 · 蘇黎世聯邦理工學院 · 瑞士'
|
['mirrors.abroad.43']='歐洲 · CZ.NIC · 捷克'
|
||||||
['mirrors.abroad.44']='北美 · Linux Kernel · 美國'
|
['mirrors.abroad.44']='歐洲 · 蘇黎世聯邦理工學院 · 瑞士'
|
||||||
['mirrors.abroad.45']='北美 · 麻省理工學院(MIT) · 美國'
|
['mirrors.abroad.45']='北美 · Linux Kernel · 美國'
|
||||||
['mirrors.abroad.46']='北美 · 普林斯頓大學數學系 · 美國'
|
['mirrors.abroad.46']='北美 · 麻省理工學院(MIT) · 美國'
|
||||||
['mirrors.abroad.47']='北美 · 俄勒岡州立大學開源實驗室 · 美國'
|
['mirrors.abroad.47']='北美 · 普林斯頓大學數學系 · 美國'
|
||||||
['mirrors.abroad.48']='北美 · Fremont Cabal Internet Exchange(FCIX) · 美國'
|
['mirrors.abroad.48']='北美 · 俄勒岡州立大學開源實驗室 · 美國'
|
||||||
['mirrors.abroad.49']='北美 · xTom · 美國'
|
['mirrors.abroad.49']='北美 · Fremont Cabal Internet Exchange(FCIX) · 美國'
|
||||||
['mirrors.abroad.50']='北美 · Steadfast · 美國'
|
['mirrors.abroad.50']='北美 · xTom · 美國'
|
||||||
['mirrors.abroad.51']='北美 · 不列顛哥倫比亞大學 · 加拿大'
|
['mirrors.abroad.51']='北美 · Steadfast · 美國'
|
||||||
['mirrors.abroad.52']='北美 · GoCodeIT · 加拿大'
|
['mirrors.abroad.52']='北美 · 不列顛哥倫比亞大學 · 加拿大'
|
||||||
['mirrors.abroad.53']='北美 · Switch · 加拿大'
|
['mirrors.abroad.53']='北美 · GoCodeIT · 加拿大'
|
||||||
['mirrors.abroad.54']='南美 · PoP-SC · 巴西'
|
['mirrors.abroad.54']='北美 · Switch · 加拿大'
|
||||||
['mirrors.abroad.55']='南美 · 蓬塔格羅薩州立大學 · 巴西'
|
['mirrors.abroad.55']='南美 · PoP-SC · 巴西'
|
||||||
['mirrors.abroad.56']='南美 · UFSCar · 巴西'
|
['mirrors.abroad.56']='南美 · 蓬塔格羅薩州立大學 · 巴西'
|
||||||
['mirrors.abroad.57']='南美 · Sysarmy Community · 阿根廷'
|
['mirrors.abroad.57']='南美 · UFSCar · 巴西'
|
||||||
['mirrors.abroad.58']='大洋 · Fremont Cabal Internet Exchange(FCIX) · 澳大利亞'
|
['mirrors.abroad.58']='南美 · Sysarmy Community · 阿根廷'
|
||||||
['mirrors.abroad.59']='大洋 · AARNet · 澳大利亞'
|
['mirrors.abroad.59']='大洋 · Fremont Cabal Internet Exchange(FCIX) · 澳大利亞'
|
||||||
['mirrors.abroad.60']='大洋 · DataMossa · 澳大利亞'
|
['mirrors.abroad.60']='大洋 · AARNet · 澳大利亞'
|
||||||
['mirrors.abroad.61']='大洋 · Amaze · 澳大利亞'
|
['mirrors.abroad.61']='大洋 · DataMossa · 澳大利亞'
|
||||||
['mirrors.abroad.62']='大洋 · xTom · 澳大利亞'
|
['mirrors.abroad.62']='大洋 · Amaze · 澳大利亞'
|
||||||
['mirrors.abroad.63']='大洋 · Over the Wire · 澳大利亞'
|
['mirrors.abroad.63']='大洋 · xTom · 澳大利亞'
|
||||||
['mirrors.abroad.64']='大洋 · Free Software Mirror Group · 紐西蘭'
|
['mirrors.abroad.64']='大洋 · Over the Wire · 澳大利亞'
|
||||||
['mirrors.abroad.65']='非洲 · Liquid Telecom · 肯亞'
|
['mirrors.abroad.65']='大洋 · Free Software Mirror Group · 紐西蘭'
|
||||||
['mirrors.abroad.66']='非洲 · Dimension Data · 南非'
|
['mirrors.abroad.66']='非洲 · Liquid Telecom · 肯亞'
|
||||||
['mirrors.abroad.67']='官方源'
|
['mirrors.abroad.67']='非洲 · Dimension Data · 南非'
|
||||||
|
['mirrors.abroad.68']='官方源'
|
||||||
)
|
)
|
||||||
SPONSOR_ADS[0]="1Panel · 新一代的 Linux 伺服器維運管理面板 ➜ \033[3mhttps://1panel.cn\033[0m"
|
SPONSOR_ADS[0]="1Panel · 新一代的 Linux 伺服器維運管理面板 ➜ \033[3mhttps://1panel.cn\033[0m"
|
||||||
}
|
}
|
||||||
@@ -8311,18 +8322,20 @@ Issue Report {}'
|
|||||||
['mirrors.default.0']='Alibaba Cloud'
|
['mirrors.default.0']='Alibaba Cloud'
|
||||||
['mirrors.default.1']='Tencent Cloud'
|
['mirrors.default.1']='Tencent Cloud'
|
||||||
['mirrors.default.2']='Huawei Cloud'
|
['mirrors.default.2']='Huawei Cloud'
|
||||||
['mirrors.default.3']='NetEase'
|
['mirrors.default.3']='China Mobile Cloud'
|
||||||
['mirrors.default.4']='Volcengine'
|
['mirrors.default.4']='China Telecom Cloud'
|
||||||
['mirrors.default.5']='Tsinghua University'
|
['mirrors.default.5']='NetEase'
|
||||||
['mirrors.default.6']='Peking University'
|
['mirrors.default.6']='Volcengine'
|
||||||
['mirrors.default.7']='Zhejiang University'
|
['mirrors.default.7']='Tsinghua University'
|
||||||
['mirrors.default.8']='Nanjing University'
|
['mirrors.default.8']='Peking University'
|
||||||
['mirrors.default.9']='Lanzhou University'
|
['mirrors.default.9']='Zhejiang University'
|
||||||
['mirrors.default.10']='Shanghai Jiao Tong University'
|
['mirrors.default.10']='Nanjing University'
|
||||||
['mirrors.default.11']='CQUPT'
|
['mirrors.default.11']='Lanzhou University'
|
||||||
['mirrors.default.12']='USTC'
|
['mirrors.default.12']='Shanghai Jiao Tong University'
|
||||||
['mirrors.default.13']='ISCAS'
|
['mirrors.default.13']='Chongqing University of Posts and Telecommunications'
|
||||||
['mirrors.default.14']='Official Source'
|
['mirrors.default.14']='University of Science and Technology of China'
|
||||||
|
['mirrors.default.15']='Institute of Software, Chinese Academy of Sciences'
|
||||||
|
['mirrors.default.16']='Official Source'
|
||||||
['mirrors.edu.0']='Peking University'
|
['mirrors.edu.0']='Peking University'
|
||||||
['mirrors.edu.1']='Beijing Jiaotong University'
|
['mirrors.edu.1']='Beijing Jiaotong University'
|
||||||
['mirrors.edu.2']='Beijing Foreign Studies University'
|
['mirrors.edu.2']='Beijing Foreign Studies University'
|
||||||
@@ -8363,65 +8376,66 @@ Issue Report {}'
|
|||||||
['mirrors.abroad.6']='AS · OSS Planet · Taiwan'
|
['mirrors.abroad.6']='AS · OSS Planet · Taiwan'
|
||||||
['mirrors.abroad.7']='AS · National Yang Ming Chiao Tung University · Taiwan'
|
['mirrors.abroad.7']='AS · National Yang Ming Chiao Tung University · Taiwan'
|
||||||
['mirrors.abroad.8']='AS · Tamkang University · Taiwan'
|
['mirrors.abroad.8']='AS · Tamkang University · Taiwan'
|
||||||
['mirrors.abroad.9']='AS · AniGil Linux Archive · Korea'
|
['mirrors.abroad.9']='AS · Taiwan Digital Streaming · Taiwan'
|
||||||
['mirrors.abroad.10']='AS · ICSCoE (Industrial Cyber Security Center of Excellence) · Japan'
|
['mirrors.abroad.10']='AS · AniGil Linux Archive · Korea'
|
||||||
['mirrors.abroad.11']='AS · JAIST (Japan Advanced Institute of Science and Technology) · Japan'
|
['mirrors.abroad.11']='AS · ICSCoE (Industrial Cyber Security Center of Excellence) · Japan'
|
||||||
['mirrors.abroad.12']='AS · Yamagata University · Japan'
|
['mirrors.abroad.12']='AS · JAIST (Japan Advanced Institute of Science and Technology) · Japan'
|
||||||
['mirrors.abroad.13']='AS · xTom · Japan'
|
['mirrors.abroad.13']='AS · Yamagata University · Japan'
|
||||||
['mirrors.abroad.14']='AS · GB Network Solutions · Malaysia'
|
['mirrors.abroad.14']='AS · xTom · Japan'
|
||||||
['mirrors.abroad.15']='AS · Khon Kaen University · Thailand'
|
['mirrors.abroad.15']='AS · GB Network Solutions · Malaysia'
|
||||||
['mirrors.abroad.16']='EU · Vorboss Ltd · United Kiongdom'
|
['mirrors.abroad.16']='AS · Khon Kaen University · Thailand'
|
||||||
['mirrors.abroad.17']='EU · QuickHost · United Kiongdom'
|
['mirrors.abroad.17']='EU · Vorboss Ltd · United Kiongdom'
|
||||||
['mirrors.abroad.18']='EU · dogado · Germany'
|
['mirrors.abroad.18']='EU · QuickHost · United Kiongdom'
|
||||||
['mirrors.abroad.19']='EU · xTom · Germany'
|
['mirrors.abroad.19']='EU · dogado · Germany'
|
||||||
['mirrors.abroad.20']='EU · RWTH Aachen University · Germany'
|
['mirrors.abroad.20']='EU · xTom · Germany'
|
||||||
['mirrors.abroad.21']='EU · Dresden University (AG DSN) · Germany'
|
['mirrors.abroad.21']='EU · RWTH Aachen University · Germany'
|
||||||
['mirrors.abroad.22']='EU · CCIN2P3 · France'
|
['mirrors.abroad.22']='EU · Dresden University (AG DSN) · Germany'
|
||||||
['mirrors.abroad.23']='EU · Ircam · France'
|
['mirrors.abroad.23']='EU · CCIN2P3 · France'
|
||||||
['mirrors.abroad.24']='EU · Crans · France'
|
['mirrors.abroad.24']='EU · Ircam · France'
|
||||||
['mirrors.abroad.25']='EU · CRIHAN · France'
|
['mirrors.abroad.25']='EU · Crans · France'
|
||||||
['mirrors.abroad.26']='EU · xTom · Netherlands'
|
['mirrors.abroad.26']='EU · CRIHAN · France'
|
||||||
['mirrors.abroad.27']='EU · DataPacket · Netherlands'
|
['mirrors.abroad.27']='EU · xTom · Netherlands'
|
||||||
['mirrors.abroad.28']='EU · Linux Kernel · Netherlands'
|
['mirrors.abroad.28']='EU · DataPacket · Netherlands'
|
||||||
['mirrors.abroad.29']='EU · xTom · Estonia'
|
['mirrors.abroad.29']='EU · Linux Kernel · Netherlands'
|
||||||
['mirrors.abroad.30']='EU · netsite · Denmark'
|
['mirrors.abroad.30']='EU · xTom · Estonia'
|
||||||
['mirrors.abroad.31']='EU · Dotsrc · Denmark'
|
['mirrors.abroad.31']='EU · netsite · Denmark'
|
||||||
['mirrors.abroad.32']='EU · Academic Computer Club · Sweden'
|
['mirrors.abroad.32']='EU · Dotsrc · Denmark'
|
||||||
['mirrors.abroad.33']='EU · Lysator · Sweden'
|
['mirrors.abroad.33']='EU · Academic Computer Club · Sweden'
|
||||||
['mirrors.abroad.34']='EU · Yandex · Russia'
|
['mirrors.abroad.34']='EU · Lysator · Sweden'
|
||||||
['mirrors.abroad.35']='EU · ia64 · Russia'
|
['mirrors.abroad.35']='EU · Yandex · Russia'
|
||||||
['mirrors.abroad.36']='EU · Truenetwork · Russia'
|
['mirrors.abroad.36']='EU · ia64 · Russia'
|
||||||
['mirrors.abroad.37']='EU · Belgian Research Network · Belgium'
|
['mirrors.abroad.37']='EU · Truenetwork · Russia'
|
||||||
['mirrors.abroad.38']='EU · University of Crete Computer Center · Greece'
|
['mirrors.abroad.38']='EU · Belgian Research Network · Belgium'
|
||||||
['mirrors.abroad.39']='EU · Masaryk University Faculty of Informatics · Czech'
|
['mirrors.abroad.39']='EU · University of Crete Computer Center · Greece'
|
||||||
['mirrors.abroad.40']='EU · Czech Technical University Student Club (Silicon Hill) · Czech'
|
['mirrors.abroad.40']='EU · Masaryk University Faculty of Informatics · Czech'
|
||||||
['mirrors.abroad.41']='EU · Vodafone · Czech'
|
['mirrors.abroad.41']='EU · Czech Technical University Student Club (Silicon Hill) · Czech'
|
||||||
['mirrors.abroad.42']='EU · CZ.NIC · Czech'
|
['mirrors.abroad.42']='EU · Vodafone · Czech'
|
||||||
['mirrors.abroad.43']='EU · ETH Zurich · Switzerland'
|
['mirrors.abroad.43']='EU · CZ.NIC · Czech'
|
||||||
['mirrors.abroad.44']='NA · Linux Kernel · United States'
|
['mirrors.abroad.44']='EU · ETH Zurich · Switzerland'
|
||||||
['mirrors.abroad.45']='NA · MIT · United States'
|
['mirrors.abroad.45']='NA · Linux Kernel · United States'
|
||||||
['mirrors.abroad.46']='NA · Princeton University Department of Mathematics · United States'
|
['mirrors.abroad.46']='NA · MIT · United States'
|
||||||
['mirrors.abroad.47']='NA · Oregon State University Open Source Lab · United States'
|
['mirrors.abroad.47']='NA · Princeton University Department of Mathematics · United States'
|
||||||
['mirrors.abroad.48']='NA · Fremont Cabal Internet Exchange(FCIX) · United States'
|
['mirrors.abroad.48']='NA · Oregon State University Open Source Lab · United States'
|
||||||
['mirrors.abroad.49']='NA · xTom · United States'
|
['mirrors.abroad.49']='NA · Fremont Cabal Internet Exchange(FCIX) · United States'
|
||||||
['mirrors.abroad.50']='NA · Steadfast · United States'
|
['mirrors.abroad.50']='NA · xTom · United States'
|
||||||
['mirrors.abroad.51']='NA · University of British Columbia · Canada'
|
['mirrors.abroad.51']='NA · Steadfast · United States'
|
||||||
['mirrors.abroad.52']='NA · GoCodeIT · Canada'
|
['mirrors.abroad.52']='NA · University of British Columbia · Canada'
|
||||||
['mirrors.abroad.53']='NA · Switch · Canada'
|
['mirrors.abroad.53']='NA · GoCodeIT · Canada'
|
||||||
['mirrors.abroad.54']='SA · PoP-SC · Brazil'
|
['mirrors.abroad.54']='NA · Switch · Canada'
|
||||||
['mirrors.abroad.55']='SA · State University of Ponta Grossa · Brazil'
|
['mirrors.abroad.55']='SA · PoP-SC · Brazil'
|
||||||
['mirrors.abroad.56']='SA · UFSCar · Brazil'
|
['mirrors.abroad.56']='SA · State University of Ponta Grossa · Brazil'
|
||||||
['mirrors.abroad.57']='SA · Sysarmy Community · Argentina'
|
['mirrors.abroad.57']='SA · UFSCar · Brazil'
|
||||||
['mirrors.abroad.58']='OC · Fremont Cabal Internet Exchange(FCIX) · Australia'
|
['mirrors.abroad.58']='SA · Sysarmy Community · Argentina'
|
||||||
['mirrors.abroad.59']='OC · AARNet · Australia'
|
['mirrors.abroad.59']='OC · Fremont Cabal Internet Exchange(FCIX) · Australia'
|
||||||
['mirrors.abroad.60']='OC · DataMossa · Australia'
|
['mirrors.abroad.60']='OC · AARNet · Australia'
|
||||||
['mirrors.abroad.61']='OC · Amaze · Australia'
|
['mirrors.abroad.61']='OC · DataMossa · Australia'
|
||||||
['mirrors.abroad.62']='OC · xTom · Australia'
|
['mirrors.abroad.62']='OC · Amaze · Australia'
|
||||||
['mirrors.abroad.63']='OC · Over the Wire · Australia'
|
['mirrors.abroad.63']='OC · xTom · Australia'
|
||||||
['mirrors.abroad.64']='OC · Free Software Mirror Group · New Zealand'
|
['mirrors.abroad.64']='OC · Over the Wire · Australia'
|
||||||
['mirrors.abroad.65']='AF · Liquid Telecom · Kenya'
|
['mirrors.abroad.65']='OC · Free Software Mirror Group · New Zealand'
|
||||||
['mirrors.abroad.66']='AF · Dimension Data · South Africa'
|
['mirrors.abroad.66']='AF · Liquid Telecom · Kenya'
|
||||||
['mirrors.abroad.67']='Official Source'
|
['mirrors.abroad.67']='AF · Dimension Data · South Africa'
|
||||||
|
['mirrors.abroad.68']='Official Source'
|
||||||
)
|
)
|
||||||
SPONSOR_ADS=(
|
SPONSOR_ADS=(
|
||||||
"1Panel · Top-Rated Web-based Linux Server Management Tool ➜ \033[3mhttps://1panel.cn\033[0m"
|
"1Panel · Top-Rated Web-based Linux Server Management Tool ➜ \033[3mhttps://1panel.cn\033[0m"
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
#!/bin/bash
|
#!/bin/bash
|
||||||
## Author: SuperManito
|
## Author: SuperManito
|
||||||
## Modified: 2025-10-12
|
## Modified: 2025-10-14
|
||||||
## License: MIT
|
## License: MIT
|
||||||
## GitHub: https://github.com/SuperManito/LinuxMirrors
|
## GitHub: https://github.com/SuperManito/LinuxMirrors
|
||||||
## Website: https://linuxmirrors.cn
|
## Website: https://linuxmirrors.cn
|
||||||
@@ -10,6 +10,7 @@ mirror_list_docker_ce=(
|
|||||||
"mirrors.aliyun.com/docker-ce"
|
"mirrors.aliyun.com/docker-ce"
|
||||||
"mirrors.tencent.com/docker-ce"
|
"mirrors.tencent.com/docker-ce"
|
||||||
"mirrors.huaweicloud.com/docker-ce"
|
"mirrors.huaweicloud.com/docker-ce"
|
||||||
|
"mirrors.cmecloud.cn/docker-ce"
|
||||||
"mirrors.163.com/docker-ce"
|
"mirrors.163.com/docker-ce"
|
||||||
"mirrors.volces.com/docker"
|
"mirrors.volces.com/docker"
|
||||||
"mirror.azure.cn/docker-ce"
|
"mirror.azure.cn/docker-ce"
|
||||||
@@ -2122,18 +2123,19 @@ function msg_pack_zh_hans() {
|
|||||||
['mirrors.dockerCE.0']='阿里云'
|
['mirrors.dockerCE.0']='阿里云'
|
||||||
['mirrors.dockerCE.1']='腾讯云'
|
['mirrors.dockerCE.1']='腾讯云'
|
||||||
['mirrors.dockerCE.2']='华为云'
|
['mirrors.dockerCE.2']='华为云'
|
||||||
['mirrors.dockerCE.3']='网易'
|
['mirrors.dockerCE.3']='移动云'
|
||||||
['mirrors.dockerCE.4']='火山引擎'
|
['mirrors.dockerCE.4']='网易'
|
||||||
['mirrors.dockerCE.5']='微软 Azure 中国'
|
['mirrors.dockerCE.5']='火山引擎'
|
||||||
['mirrors.dockerCE.6']='清华大学'
|
['mirrors.dockerCE.6']='微软 Azure 中国'
|
||||||
['mirrors.dockerCE.7']='北京大学'
|
['mirrors.dockerCE.7']='清华大学'
|
||||||
['mirrors.dockerCE.8']='浙江大学'
|
['mirrors.dockerCE.8']='北京大学'
|
||||||
['mirrors.dockerCE.9']='南京大学'
|
['mirrors.dockerCE.9']='浙江大学'
|
||||||
['mirrors.dockerCE.10']='上海交通大学'
|
['mirrors.dockerCE.10']='南京大学'
|
||||||
['mirrors.dockerCE.11']='重庆邮电大学'
|
['mirrors.dockerCE.11']='上海交通大学'
|
||||||
['mirrors.dockerCE.12']='中国科学技术大学'
|
['mirrors.dockerCE.12']='重庆邮电大学'
|
||||||
['mirrors.dockerCE.13']='中国科学院软件研究所'
|
['mirrors.dockerCE.13']='中国科学技术大学'
|
||||||
['mirrors.dockerCE.14']='官方源'
|
['mirrors.dockerCE.14']='中国科学院软件研究所'
|
||||||
|
['mirrors.dockerCE.15']='官方源'
|
||||||
['mirrors.registry.0']='毫秒镜像(推荐)'
|
['mirrors.registry.0']='毫秒镜像(推荐)'
|
||||||
['mirrors.registry.1']='Docker Proxy'
|
['mirrors.registry.1']='Docker Proxy'
|
||||||
['mirrors.registry.2']='DaoCloud 道客'
|
['mirrors.registry.2']='DaoCloud 道客'
|
||||||
@@ -2274,18 +2276,19 @@ function msg_pack_zh_hant() {
|
|||||||
['mirrors.dockerCE.0']='阿里雲'
|
['mirrors.dockerCE.0']='阿里雲'
|
||||||
['mirrors.dockerCE.1']='騰訊雲'
|
['mirrors.dockerCE.1']='騰訊雲'
|
||||||
['mirrors.dockerCE.2']='華為雲'
|
['mirrors.dockerCE.2']='華為雲'
|
||||||
['mirrors.dockerCE.3']='網易'
|
['mirrors.dockerCE.3']='移動雲'
|
||||||
['mirrors.dockerCE.4']='火山引擎'
|
['mirrors.dockerCE.4']='網易'
|
||||||
['mirrors.dockerCE.5']='微軟 Azure 中國'
|
['mirrors.dockerCE.5']='火山引擎'
|
||||||
['mirrors.dockerCE.6']='清華大學'
|
['mirrors.dockerCE.6']='微軟 Azure 中國'
|
||||||
['mirrors.dockerCE.7']='北京大學'
|
['mirrors.dockerCE.7']='清華大學'
|
||||||
['mirrors.dockerCE.8']='浙江大學'
|
['mirrors.dockerCE.8']='北京大學'
|
||||||
['mirrors.dockerCE.9']='南京大學'
|
['mirrors.dockerCE.9']='浙江大學'
|
||||||
['mirrors.dockerCE.10']='上海交通大學'
|
['mirrors.dockerCE.10']='南京大學'
|
||||||
['mirrors.dockerCE.11']='重慶郵電大學'
|
['mirrors.dockerCE.11']='上海交通大學'
|
||||||
['mirrors.dockerCE.12']='中國科學技術大學'
|
['mirrors.dockerCE.12']='重慶郵電大學'
|
||||||
['mirrors.dockerCE.13']='中國科學院軟體研究所'
|
['mirrors.dockerCE.13']='中國科學技術大學'
|
||||||
['mirrors.dockerCE.14']='官方源'
|
['mirrors.dockerCE.14']='中國科學院軟體研究所'
|
||||||
|
['mirrors.dockerCE.15']='官方源'
|
||||||
['mirrors.registry.0']='毫秒鏡像(推薦)'
|
['mirrors.registry.0']='毫秒鏡像(推薦)'
|
||||||
['mirrors.registry.1']='Docker Proxy'
|
['mirrors.registry.1']='Docker Proxy'
|
||||||
['mirrors.registry.2']='DaoCloud 道客'
|
['mirrors.registry.2']='DaoCloud 道客'
|
||||||
@@ -2427,18 +2430,19 @@ Issue Report {}'
|
|||||||
['mirrors.dockerCE.0']='Alibaba Cloud'
|
['mirrors.dockerCE.0']='Alibaba Cloud'
|
||||||
['mirrors.dockerCE.1']='Tencent Cloud'
|
['mirrors.dockerCE.1']='Tencent Cloud'
|
||||||
['mirrors.dockerCE.2']='Huawei Cloud'
|
['mirrors.dockerCE.2']='Huawei Cloud'
|
||||||
['mirrors.dockerCE.3']='NetEase'
|
['mirrors.dockerCE.3']='China Mobile Cloud'
|
||||||
['mirrors.dockerCE.4']='Volcengine'
|
['mirrors.dockerCE.4']='NetEase'
|
||||||
['mirrors.dockerCE.5']='Microsoft Azure China'
|
['mirrors.dockerCE.5']='Volcengine'
|
||||||
['mirrors.dockerCE.6']='Tsinghua University'
|
['mirrors.dockerCE.6']='Microsoft Azure China'
|
||||||
['mirrors.dockerCE.7']='Peking University'
|
['mirrors.dockerCE.7']='Tsinghua University'
|
||||||
['mirrors.dockerCE.8']='Zhejiang University'
|
['mirrors.dockerCE.8']='Peking University'
|
||||||
['mirrors.dockerCE.9']='Nanjing University'
|
['mirrors.dockerCE.9']='Zhejiang University'
|
||||||
['mirrors.dockerCE.10']='Shanghai Jiao Tong University'
|
['mirrors.dockerCE.10']='Nanjing University'
|
||||||
['mirrors.dockerCE.11']='Chongqing University of Posts and Telecommunications'
|
['mirrors.dockerCE.11']='Shanghai Jiao Tong University'
|
||||||
['mirrors.dockerCE.12']='University of Science and Technology of China'
|
['mirrors.dockerCE.12']='Chongqing University of Posts and Telecommunications'
|
||||||
['mirrors.dockerCE.13']='Institute of Software, Chinese Academy of Sciences'
|
['mirrors.dockerCE.13']='University of Science and Technology of China'
|
||||||
['mirrors.dockerCE.14']='Official Source'
|
['mirrors.dockerCE.14']='Institute of Software, Chinese Academy of Sciences'
|
||||||
|
['mirrors.dockerCE.15']='Official Source'
|
||||||
['mirrors.registry.0']='Millisecond Mirror (recommended)'
|
['mirrors.registry.0']='Millisecond Mirror (recommended)'
|
||||||
['mirrors.registry.1']='Docker Proxy'
|
['mirrors.registry.1']='Docker Proxy'
|
||||||
['mirrors.registry.2']='DaoCloud'
|
['mirrors.registry.2']='DaoCloud'
|
||||||
|
|||||||
1
docs/assets/images/icon/mirrors/cmecloud.svg
Normal file
1
docs/assets/images/icon/mirrors/cmecloud.svg
Normal file
@@ -0,0 +1 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?><svg id="_图层_1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 198.425 198.425"><defs><style>.cls-1{fill:#0085d0;}.cls-2{fill:#8fc31f;}</style></defs><path class="cls-1" d="m172.518,84.013c-8.748-9.716-20.756-15.443-33.812-16.128-15.824-.824-31.025,4.553-42.793,15.149l-24.441,21.933c-4.742,4.256-5.017,11.593-.608,16.192l.744.776,32.811-29.437c9.25-8.329,21.189-12.558,33.62-11.905,9.661.506,18.547,4.745,25.021,11.934s9.76,16.47,9.253,26.131c-1.009,19.246-17.14,34.322-36.726,34.322-6.043,0-11.937-1.46-17.196-4.189-1.356-.703-3.001-.517-4.137.503l-7.843,7.042c8.439,6.067,18.646,9.37,29.176,9.37,26.357,0,48.071-20.373,49.434-46.381.684-13.056-3.757-25.597-12.505-35.312Z"/><path class="cls-2" d="m126.601,111.581l-7.507-7.832c-4.035-4.21-10.683-4.459-15.023-.563l-19.26,17.294c-2.062,1.852-5.221,1.733-7.139-.267l-8.681-9.054,2.619,10.777,7.513,7.836c4.036,4.209,10.683,4.458,15.021.562l19.253-17.288c2.062-1.851,5.22-1.734,7.138.266l6.252,6.517-.187-8.246Z"/><path class="cls-1" d="m126.601,111.581l-32.813,29.433c-9.273,8.35-21.215,12.592-33.619,11.94-19.946-1.045-35.321-18.137-34.275-38.1.493-9.414,4.558-18.141,11.445-24.573,6.145-5.739,13.948-9.106,22.239-9.668,1.662-.113,2.972-1.456,2.995-3.122l.133-9.684c-12.946-.198-25.282,4.705-34.638,13.728-8.343,8.046-13.582,18.851-14.713,30.386-2.739,27.931,18.441,52.289,46.147,53.741,1.057.055,2.11.083,3.161.083,14.657,0,28.629-5.36,39.63-15.266l24.444-21.926c4.743-4.255,5.02-11.592.611-16.192l-.748-.78Z"/><path class="cls-1" d="m172.518,84.013c-8.748-9.716-20.756-15.443-33.812-16.128-15.824-.824-31.025,4.553-42.793,15.149l-24.441,21.933c-4.742,4.256-5.017,11.593-.608,16.192l.744.776,32.811-29.437c9.25-8.329,21.189-12.558,33.62-11.905,9.661.506,18.547,4.745,25.021,11.934s9.76,16.47,9.253,26.131c-1.009,19.246-17.14,34.322-36.726,34.322-6.166,0-12.176-1.52-17.515-4.356-1.165-.619-2.595-.427-3.577.454l-8.083,7.258c8.439,6.067,18.646,9.37,29.176,9.37,26.357,0,48.071-20.373,49.434-46.381.684-13.056-3.757-25.597-12.505-35.312Z"/><path class="cls-1" d="m99.804,32.258c-26.989,0-48.946,21.957-48.946,48.946l4.227-.003c1.847-.364,3.732-.585,5.637-.655,1.603-.059,2.883-1.33,3.04-2.926,1.805-18.296,17.279-32.637,36.042-32.637,19.269,0,35.157,15.057,36.169,34.278l12.708-.67c-1.368-25.982-22.838-46.334-48.877-46.334Z"/><path class="cls-1" d="m71.61,121.935l3.81,3.973c-2.037-3.374-1.436-6.103,2.464-9.602,3.9-3.499-4.063-2.137-4.063-2.137l-2.21,7.765Z"/><path class="cls-1" d="m126.602,111.582l-3.81-3.973c2.037,3.374,1.436,6.103-2.464,9.602-3.9,3.499,4.063,2.137,4.063,2.137l2.21-7.765Z"/></svg>
|
||||||
|
After Width: | Height: | Size: 2.5 KiB |
BIN
docs/assets/images/icon/mirrors/ctyun.ico
Normal file
BIN
docs/assets/images/icon/mirrors/ctyun.ico
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 3.0 KiB |
@@ -1,3 +1,7 @@
|
|||||||
|
const __p = typeof window !== 'undefined' && window.location && window.location.pathname ? window.location.pathname : ''
|
||||||
|
const __isZhHant = __p.includes('/zh-Hant')
|
||||||
|
const __isEn = __p.includes('/en')
|
||||||
|
|
||||||
// 防抖
|
// 防抖
|
||||||
function debounce(func, wait) {
|
function debounce(func, wait) {
|
||||||
let timeout
|
let timeout
|
||||||
@@ -24,6 +28,7 @@ const ComponentSystem = {
|
|||||||
lastInitTime: 0,
|
lastInitTime: 0,
|
||||||
def: componentDef,
|
def: componentDef,
|
||||||
debouncedInit: null,
|
debouncedInit: null,
|
||||||
|
app: null,
|
||||||
}
|
}
|
||||||
// 创建组件初始化函数
|
// 创建组件初始化函数
|
||||||
const initFunc = function () {
|
const initFunc = function () {
|
||||||
@@ -49,6 +54,14 @@ const ComponentSystem = {
|
|||||||
component.isInitializing = true
|
component.isInitializing = true
|
||||||
component.lastInitTime = now
|
component.lastInitTime = now
|
||||||
try {
|
try {
|
||||||
|
if (component.app && typeof component.app.unmount === 'function') {
|
||||||
|
try {
|
||||||
|
component.app.unmount()
|
||||||
|
} catch (err) {
|
||||||
|
console.error('组件卸载失败', err)
|
||||||
|
}
|
||||||
|
component.app = null
|
||||||
|
}
|
||||||
// 清空容器内容,防止重复初始化
|
// 清空容器内容,防止重复初始化
|
||||||
while (component.instance.firstChild) {
|
while (component.instance.firstChild) {
|
||||||
component.instance.removeChild(component.instance.firstChild)
|
component.instance.removeChild(component.instance.firstChild)
|
||||||
@@ -65,17 +78,19 @@ const ComponentSystem = {
|
|||||||
App.use(TDesign.default)
|
App.use(TDesign.default)
|
||||||
// 挂载应用
|
// 挂载应用
|
||||||
App.mount(component.instance)
|
App.mount(component.instance)
|
||||||
|
// 保存 app 引用以便后续卸载
|
||||||
|
component.app = App
|
||||||
// console.log(`组件 ${componentId} 初始化成功`)
|
// console.log(`组件 ${componentId} 初始化成功`)
|
||||||
// 标记组件已初始化
|
// 标记组件已初始化
|
||||||
component.instance.setAttribute('data-initialized', 'true')
|
component.instance.setAttribute('data-initialized', 'true')
|
||||||
// 立即更新主题
|
// 立即更新主题
|
||||||
updateTDesignGlobalTheme()
|
updateTDesignGlobalTheme()
|
||||||
} else if (typeof Vue !== 'undefined') {
|
} else if (typeof Vue !== 'undefined') {
|
||||||
console.error('Vue 未找到')
|
console.error('Vue 未找到')
|
||||||
const errorDiv = document.createElement('div')
|
const errorDiv = document.createElement('div')
|
||||||
errorDiv.innerHTML = `<div class="admonition failure"><p class="admonition-title">组件 ${componentId} 加载失败,请检查 Vue 是否存在!</p></div>`
|
errorDiv.innerHTML = `<div class="admonition failure"><p class="admonition-title">组件 ${componentId} 加载失败,请检查 Vue 是否存在!</p></div>`
|
||||||
component.instance.appendChild(errorDiv)
|
component.instance.appendChild(errorDiv)
|
||||||
} else if (typeof TDesign !== 'undefined') {
|
} else if (typeof TDesign !== 'undefined') {
|
||||||
console.error('TDesign UI 未找到')
|
console.error('TDesign UI 未找到')
|
||||||
const errorDiv = document.createElement('div')
|
const errorDiv = document.createElement('div')
|
||||||
errorDiv.innerHTML = `<div class="admonition failure"><p class="admonition-title">组件 ${componentId} 加载失败,请检查 TDesign UI 是否存在!</p></div>`
|
errorDiv.innerHTML = `<div class="admonition failure"><p class="admonition-title">组件 ${componentId} 加载失败,请检查 TDesign UI 是否存在!</p></div>`
|
||||||
@@ -107,6 +122,14 @@ const ComponentSystem = {
|
|||||||
if (component) {
|
if (component) {
|
||||||
component.instance = document.getElementById(componentId)
|
component.instance = document.getElementById(componentId)
|
||||||
if (component.instance) {
|
if (component.instance) {
|
||||||
|
if (component.app && typeof component.app.unmount === 'function') {
|
||||||
|
try {
|
||||||
|
component.app.unmount()
|
||||||
|
} catch (err) {
|
||||||
|
console.error('组件初始化失败', err)
|
||||||
|
}
|
||||||
|
component.app = null
|
||||||
|
}
|
||||||
component.instance.removeAttribute('data-initialized')
|
component.instance.removeAttribute('data-initialized')
|
||||||
setTimeout(component.debouncedInit, 300)
|
setTimeout(component.debouncedInit, 300)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,381 +1,531 @@
|
|||||||
// 表格数据
|
// 表格数据
|
||||||
const mirrorsTableData = [
|
const mirrorsTableData = [
|
||||||
{
|
{
|
||||||
name: window.location.pathname.includes('/zh-Hant') ? '阿里雲' : window.location.pathname.includes('/en') ? 'Alibaba Cloud' : '阿里云',
|
name: __isZhHant ? '阿里雲' : __isEn ? 'Alibaba Cloud' : '阿里云',
|
||||||
officialName: window.location.pathname.includes('/zh-Hant') ? '阿里巴巴開源鏡像站' : window.location.pathname.includes('/en') ? 'Alibaba Cloud Open Source Mirror' : '阿里巴巴开源镜像站',
|
officialName: __isZhHant ? '阿里巴巴開源鏡像站' : __isEn ? 'Alibaba Cloud Open Source Mirror' : '阿里巴巴开源镜像站',
|
||||||
icon: 'alibabacloud.svg',
|
icon: 'alibabacloud.svg',
|
||||||
iconStyle: { verticalAlign: '-0.2em' },
|
iconStyle: { verticalAlign: '-0.2em' },
|
||||||
url: 'https://mirrors.aliyun.com',
|
url: 'https://mirrors.aliyun.com',
|
||||||
domain: 'mirrors.aliyun.com',
|
domain: 'mirrors.aliyun.com',
|
||||||
ipv6: false,
|
ipv6: false,
|
||||||
|
debian: true,
|
||||||
|
ubuntu: true,
|
||||||
|
centos: true,
|
||||||
|
centos_stream: true,
|
||||||
|
opensuse: true,
|
||||||
archlinux: true,
|
archlinux: true,
|
||||||
kalilinux: true,
|
kali: true,
|
||||||
deepin: true,
|
deepin: true,
|
||||||
rockylinux: 'incompatible',
|
rocky: 'incompatible',
|
||||||
almalinux: true,
|
almalinux: true,
|
||||||
epel: true,
|
epel: true,
|
||||||
fedora: true,
|
fedora: true,
|
||||||
opencloudos: false,
|
opencloudos: false,
|
||||||
|
openeuler: true,
|
||||||
anolis: true,
|
anolis: true,
|
||||||
openkylin: true,
|
openkylin: true,
|
||||||
alpinelinux: true,
|
alpine: true,
|
||||||
armbian: true,
|
armbian: true,
|
||||||
proxmox: false,
|
proxmox: false,
|
||||||
linuxmint: true,
|
linuxmint: true,
|
||||||
gentoo: true,
|
gentoo: true,
|
||||||
nix: false,
|
nix_channels: false,
|
||||||
raspberry: true,
|
raspberrypi: true,
|
||||||
manjaro: true,
|
manjaro: true,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: window.location.pathname.includes('/zh-Hant') ? '騰訊雲' : window.location.pathname.includes('/en') ? 'Tencent Cloud' : '腾讯云',
|
name: __isZhHant ? '騰訊雲' : __isEn ? 'Tencent Cloud' : '腾讯云',
|
||||||
officialName: window.location.pathname.includes('/zh-Hant') ? '騰訊軟體源' : window.location.pathname.includes('/en') ? 'Tencent Software Repository' : '腾讯软件源',
|
officialName: __isZhHant ? '騰訊軟體源' : __isEn ? 'Tencent Software Repository' : '腾讯软件源',
|
||||||
icon: 'tencentcloud.ico',
|
icon: 'tencentcloud.ico',
|
||||||
iconStyle: { verticalAlign: '-0.25em' },
|
iconStyle: { verticalAlign: '-0.25em' },
|
||||||
url: 'https://mirrors.tencent.com',
|
url: 'https://mirrors.tencent.com',
|
||||||
domain: 'mirrors.tencent.com',
|
domain: 'mirrors.tencent.com',
|
||||||
ipv6: false,
|
ipv6: false,
|
||||||
|
debian: true,
|
||||||
|
ubuntu: true,
|
||||||
|
centos: true,
|
||||||
|
centos_stream: true,
|
||||||
|
opensuse: true,
|
||||||
archlinux: true,
|
archlinux: true,
|
||||||
kalilinux: true,
|
kali: true,
|
||||||
deepin: false,
|
deepin: false,
|
||||||
rockylinux: true,
|
rocky: true,
|
||||||
almalinux: true,
|
almalinux: true,
|
||||||
epel: true,
|
epel: true,
|
||||||
fedora: true,
|
fedora: true,
|
||||||
opencloudos: true,
|
opencloudos: true,
|
||||||
|
openeuler: true,
|
||||||
anolis: false,
|
anolis: false,
|
||||||
openkylin: false,
|
openkylin: false,
|
||||||
alpinelinux: true,
|
alpine: true,
|
||||||
armbian: false,
|
armbian: false,
|
||||||
proxmox: false,
|
proxmox: false,
|
||||||
linuxmint: true,
|
linuxmint: true,
|
||||||
gentoo: true,
|
gentoo: true,
|
||||||
nix: false,
|
nix_channels: false,
|
||||||
raspberry: false,
|
raspberrypi: false,
|
||||||
manjaro: false,
|
manjaro: false,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: window.location.pathname.includes('/zh-Hant') ? '華為雲' : window.location.pathname.includes('/en') ? 'Huawei Cloud' : '华为云',
|
name: __isZhHant ? '華為雲' : __isEn ? 'Huawei Cloud' : '华为云',
|
||||||
officialName: window.location.pathname.includes('/zh-Hant') ? '華為開源鏡像站' : window.location.pathname.includes('/en') ? 'Huawei Open Source Mirror' : '华为开源镜像站',
|
officialName: __isZhHant ? '華為開源鏡像站' : __isEn ? 'Huawei Open Source Mirror' : '华为开源镜像站',
|
||||||
icon: 'huaweicloud.ico',
|
icon: 'huaweicloud.ico',
|
||||||
iconStyle: { verticalAlign: '-0.15em' },
|
iconStyle: { verticalAlign: '-0.15em' },
|
||||||
url: 'https://mirrors.huaweicloud.com',
|
url: 'https://mirrors.huaweicloud.com',
|
||||||
domain: 'mirrors.huaweicloud.com',
|
domain: 'mirrors.huaweicloud.com',
|
||||||
ipv6: false,
|
ipv6: false,
|
||||||
|
debian: true,
|
||||||
|
ubuntu: true,
|
||||||
|
centos: true,
|
||||||
|
centos_stream: true,
|
||||||
|
opensuse: true,
|
||||||
archlinux: true,
|
archlinux: true,
|
||||||
kalilinux: true,
|
kali: true,
|
||||||
deepin: true,
|
deepin: true,
|
||||||
rockylinux: 'incompatible',
|
rocky: 'incompatible',
|
||||||
almalinux: true,
|
almalinux: true,
|
||||||
epel: true,
|
epel: true,
|
||||||
fedora: true,
|
fedora: true,
|
||||||
opencloudos: false,
|
opencloudos: false,
|
||||||
|
openeuler: true,
|
||||||
anolis: false,
|
anolis: false,
|
||||||
openkylin: false,
|
openkylin: false,
|
||||||
alpinelinux: true,
|
alpine: true,
|
||||||
armbian: false,
|
armbian: false,
|
||||||
proxmox: false,
|
proxmox: false,
|
||||||
linuxmint: true,
|
linuxmint: true,
|
||||||
gentoo: true,
|
gentoo: true,
|
||||||
nix: false,
|
nix_channels: false,
|
||||||
raspberry: false,
|
raspberrypi: false,
|
||||||
manjaro: true,
|
manjaro: true,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: window.location.pathname.includes('/zh-Hant') ? '網易' : window.location.pathname.includes('/en') ? 'NetEase' : '网易',
|
name: __isZhHant ? '移動雲' : __isEn ? 'China Mobile Cloud' : '移动云 ',
|
||||||
officialName: window.location.pathname.includes('/zh-Hant') ? '網易開源鏡像站' : window.location.pathname.includes('/en') ? 'NetEase Open Source Mirror' : '网易开源镜像站',
|
officialName: __isZhHant ? '移動雲開源鏡像站' : __isEn ? 'China Mobile Cloud Open Source Mirror' : '移动云开源镜像站',
|
||||||
|
icon: 'cmecloud.svg',
|
||||||
|
iconStyle: { verticalAlign: '-0.2em' },
|
||||||
|
url: 'https://mirrors.cmecloud.cn',
|
||||||
|
domain: 'mirrors.cmecloud.cn',
|
||||||
|
ipv6: true,
|
||||||
|
debian: true,
|
||||||
|
ubuntu: true,
|
||||||
|
centos: true,
|
||||||
|
centos_stream: false,
|
||||||
|
opensuse: true,
|
||||||
|
archlinux: false,
|
||||||
|
kali: false,
|
||||||
|
deepin: false,
|
||||||
|
rocky: true,
|
||||||
|
almalinux: false,
|
||||||
|
epel: true,
|
||||||
|
fedora: true,
|
||||||
|
opencloudos: false,
|
||||||
|
openeuler: true,
|
||||||
|
anolis: true,
|
||||||
|
openkylin: false,
|
||||||
|
alpine: false,
|
||||||
|
armbian: false,
|
||||||
|
proxmox: false,
|
||||||
|
linuxmint: false,
|
||||||
|
gentoo: false,
|
||||||
|
nix_channels: false,
|
||||||
|
raspberrypi: false,
|
||||||
|
manjaro: false,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: __isZhHant ? '天翼雲' : __isEn ? 'China Telecom Cloud' : '天翼云',
|
||||||
|
officialName: __isZhHant ? '天翼雲開源鏡像站' : __isEn ? 'China Telecom Cloud Open Source Mirror' : '天翼云开源镜像站',
|
||||||
|
icon: 'ctyun.ico',
|
||||||
|
iconStyle: { verticalAlign: '-0.2em' },
|
||||||
|
url: 'https://mirrors.ctyun.cn',
|
||||||
|
domain: 'mirrors.ctyun.cn',
|
||||||
|
ipv6: false,
|
||||||
|
debian: true,
|
||||||
|
ubuntu: true,
|
||||||
|
centos: true,
|
||||||
|
centos_stream: true,
|
||||||
|
opensuse: false,
|
||||||
|
archlinux: false,
|
||||||
|
kali: false,
|
||||||
|
deepin: false,
|
||||||
|
rocky: true,
|
||||||
|
almalinux: false,
|
||||||
|
epel: true,
|
||||||
|
fedora: false,
|
||||||
|
opencloudos: false,
|
||||||
|
openeuler: true,
|
||||||
|
anolis: false,
|
||||||
|
openkylin: false,
|
||||||
|
alpine: false,
|
||||||
|
armbian: false,
|
||||||
|
proxmox: false,
|
||||||
|
linuxmint: false,
|
||||||
|
gentoo: false,
|
||||||
|
nix_channels: false,
|
||||||
|
raspberrypi: false,
|
||||||
|
manjaro: false,
|
||||||
|
},
|
||||||
|
{
|
||||||
|
name: __isZhHant ? '網易' : __isEn ? 'NetEase' : '网易',
|
||||||
|
officialName: __isZhHant ? '網易開源鏡像站' : __isEn ? 'NetEase Open Source Mirror' : '网易开源镜像站',
|
||||||
icon: '163.ico',
|
icon: '163.ico',
|
||||||
iconStyle: { verticalAlign: '-0.15em' },
|
iconStyle: { verticalAlign: '-0.15em' },
|
||||||
url: 'https://mirrors.163.com',
|
url: 'https://mirrors.163.com',
|
||||||
domain: 'mirrors.163.com',
|
domain: 'mirrors.163.com',
|
||||||
ipv6: false,
|
ipv6: false,
|
||||||
|
debian: true,
|
||||||
|
ubuntu: true,
|
||||||
|
centos: true,
|
||||||
|
centos_stream: true,
|
||||||
|
opensuse: true,
|
||||||
archlinux: true,
|
archlinux: true,
|
||||||
kalilinux: false,
|
kali: false,
|
||||||
deepin: true,
|
deepin: true,
|
||||||
rockylinux: true,
|
rocky: true,
|
||||||
almalinux: false,
|
almalinux: false,
|
||||||
epel: false,
|
epel: false,
|
||||||
fedora: true,
|
fedora: true,
|
||||||
opencloudos: false,
|
opencloudos: false,
|
||||||
|
openeuler: true,
|
||||||
anolis: false,
|
anolis: false,
|
||||||
openkylin: true,
|
openkylin: true,
|
||||||
alpinelinux: false,
|
alpine: false,
|
||||||
armbian: false,
|
armbian: false,
|
||||||
proxmox: false,
|
proxmox: false,
|
||||||
linuxmint: true,
|
linuxmint: true,
|
||||||
gentoo: true,
|
gentoo: true,
|
||||||
nix: false,
|
nix_channels: false,
|
||||||
raspberry: false,
|
raspberrypi: false,
|
||||||
manjaro: false,
|
manjaro: false,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: window.location.pathname.includes('/zh-Hant') ? '火山引擎' : window.location.pathname.includes('/en') ? 'Volcengine' : '火山引擎',
|
name: __isZhHant ? '火山引擎' : __isEn ? 'Volcengine' : '火山引擎',
|
||||||
officialName: window.location.pathname.includes('/zh-Hant') ? '火山引擎開源軟體鏡像站' : window.location.pathname.includes('/en') ? 'Volcengine Open Source Software Mirror' : '火山引擎开源软件镜像站',
|
officialName: __isZhHant ? '火山引擎開源軟體鏡像站' : __isEn ? 'Volcengine Open Source Software Mirror' : '火山引擎开源软件镜像站',
|
||||||
icon: 'volcengine.svg',
|
icon: 'volcengine.svg',
|
||||||
iconStyle: { verticalAlign: '-0.25em' },
|
iconStyle: { verticalAlign: '-0.25em' },
|
||||||
url: 'https://developer.volcengine.com/mirror',
|
url: 'https://developer.volcengine.com/mirror',
|
||||||
domain: 'mirrors.volces.com',
|
domain: 'mirrors.volces.com',
|
||||||
ipv6: false,
|
ipv6: false,
|
||||||
|
debian: true,
|
||||||
|
ubuntu: true,
|
||||||
|
centos: true,
|
||||||
|
centos_stream: true,
|
||||||
|
opensuse: true,
|
||||||
archlinux: false,
|
archlinux: false,
|
||||||
kalilinux: true,
|
kali: true,
|
||||||
deepin: true,
|
deepin: true,
|
||||||
rockylinux: 'incompatible',
|
rocky: 'incompatible',
|
||||||
almalinux: true,
|
almalinux: true,
|
||||||
epel: true,
|
epel: true,
|
||||||
fedora: true,
|
fedora: true,
|
||||||
opencloudos: false,
|
opencloudos: false,
|
||||||
|
openeuler: true,
|
||||||
anolis: false,
|
anolis: false,
|
||||||
openkylin: false,
|
openkylin: false,
|
||||||
alpinelinux: true,
|
alpine: true,
|
||||||
armbian: false,
|
armbian: false,
|
||||||
proxmox: false,
|
proxmox: false,
|
||||||
linuxmint: false,
|
linuxmint: false,
|
||||||
gentoo: false,
|
gentoo: false,
|
||||||
nix: false,
|
nix_channels: false,
|
||||||
raspberry: false,
|
raspberrypi: false,
|
||||||
manjaro: false,
|
manjaro: false,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: window.location.pathname.includes('/zh-Hant') ? '清華大學' : window.location.pathname.includes('/en') ? 'Tsinghua University' : '清华大学',
|
name: __isZhHant ? '清華大學' : __isEn ? 'Tsinghua University' : '清华大学',
|
||||||
officialName: window.location.pathname.includes('/zh-Hant') ? '清華大學開源軟體鏡像站' : window.location.pathname.includes('/en') ? 'Tsinghua University Open Source Mirror' : '清华大学开源软件镜像站',
|
officialName: __isZhHant ? '清華大學開源軟體鏡像站' : __isEn ? 'Tsinghua University Open Source Mirror' : '清华大学开源软件镜像站',
|
||||||
icon: 'tsinghua.png',
|
icon: 'tsinghua.png',
|
||||||
iconStyle: { verticalAlign: '-0.3em' },
|
iconStyle: { verticalAlign: '-0.3em' },
|
||||||
url: 'https://mirrors.tuna.tsinghua.edu.cn',
|
url: 'https://mirrors.tuna.tsinghua.edu.cn',
|
||||||
domain: 'mirrors.tuna.tsinghua.edu.cn',
|
domain: 'mirrors.tuna.tsinghua.edu.cn',
|
||||||
ipv6: true,
|
ipv6: true,
|
||||||
|
debian: true,
|
||||||
|
ubuntu: true,
|
||||||
|
centos: true,
|
||||||
|
centos_stream: true,
|
||||||
|
opensuse: true,
|
||||||
archlinux: true,
|
archlinux: true,
|
||||||
kalilinux: true,
|
kali: true,
|
||||||
deepin: true,
|
deepin: true,
|
||||||
rockylinux: false,
|
rocky: false,
|
||||||
almalinux: false,
|
almalinux: false,
|
||||||
epel: true,
|
epel: true,
|
||||||
fedora: true,
|
fedora: true,
|
||||||
opencloudos: false,
|
opencloudos: false,
|
||||||
|
openeuler: true,
|
||||||
anolis: false,
|
anolis: false,
|
||||||
openkylin: false,
|
openkylin: false,
|
||||||
alpinelinux: true,
|
alpine: true,
|
||||||
armbian: true,
|
armbian: true,
|
||||||
proxmox: true,
|
proxmox: true,
|
||||||
linuxmint: true,
|
linuxmint: true,
|
||||||
gentoo: true,
|
gentoo: true,
|
||||||
nix: true,
|
nix_channels: true,
|
||||||
raspberry: true,
|
raspberrypi: true,
|
||||||
manjaro: true,
|
manjaro: true,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: window.location.pathname.includes('/zh-Hant') ? '北京大學' : window.location.pathname.includes('/en') ? 'Peking University' : '北京大学',
|
name: __isZhHant ? '北京大學' : __isEn ? 'Peking University' : '北京大学',
|
||||||
officialName: window.location.pathname.includes('/zh-Hant') ? '北京大學開源鏡像站' : window.location.pathname.includes('/en') ? 'Peking University Open Source Mirror' : '北京大学开源镜像站',
|
officialName: __isZhHant ? '北京大學開源鏡像站' : __isEn ? 'Peking University Open Source Mirror' : '北京大学开源镜像站',
|
||||||
icon: 'pku.ico',
|
icon: 'pku.ico',
|
||||||
iconStyle: { verticalAlign: '-0.2em' },
|
iconStyle: { verticalAlign: '-0.2em' },
|
||||||
url: 'https://mirrors.pku.edu.cn/Mirrors',
|
url: 'https://mirrors.pku.edu.cn/Mirrors',
|
||||||
domain: 'mirrors.pku.edu.cn',
|
domain: 'mirrors.pku.edu.cn',
|
||||||
ipv6: true,
|
ipv6: true,
|
||||||
|
debian: true,
|
||||||
|
ubuntu: true,
|
||||||
|
centos: true,
|
||||||
|
centos_stream: true,
|
||||||
|
opensuse: true,
|
||||||
archlinux: true,
|
archlinux: true,
|
||||||
kalilinux: false,
|
kali: false,
|
||||||
deepin: false,
|
deepin: false,
|
||||||
rockylinux: true,
|
rocky: true,
|
||||||
almalinux: true,
|
almalinux: true,
|
||||||
epel: true,
|
epel: true,
|
||||||
fedora: false,
|
fedora: false,
|
||||||
opencloudos: false,
|
opencloudos: false,
|
||||||
|
openeuler: true,
|
||||||
anolis: false,
|
anolis: false,
|
||||||
openkylin: false,
|
openkylin: false,
|
||||||
alpinelinux: false,
|
alpine: false,
|
||||||
armbian: false,
|
armbian: false,
|
||||||
proxmox: false,
|
proxmox: false,
|
||||||
linuxmint: false,
|
linuxmint: false,
|
||||||
gentoo: false,
|
gentoo: false,
|
||||||
nix: false,
|
nix_channels: false,
|
||||||
raspberry: false,
|
raspberrypi: false,
|
||||||
manjaro: true,
|
manjaro: true,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: window.location.pathname.includes('/zh-Hant') ? '浙江大學' : window.location.pathname.includes('/en') ? 'Zhejiang University' : '浙江大学',
|
name: __isZhHant ? '浙江大學' : __isEn ? 'Zhejiang University' : '浙江大学',
|
||||||
officialName: window.location.pathname.includes('/zh-Hant') ? '浙江大學鏡像站' : window.location.pathname.includes('/en') ? 'Zhejiang University Mirror Site' : '浙江大学镜像站',
|
officialName: __isZhHant ? '浙江大學鏡像站' : __isEn ? 'Zhejiang University Mirror Site' : '浙江大学镜像站',
|
||||||
icon: 'zju.ico',
|
icon: 'zju.ico',
|
||||||
iconStyle: { verticalAlign: '-0.15em' },
|
iconStyle: { verticalAlign: '-0.15em' },
|
||||||
url: 'https://mirrors.zju.edu.cn',
|
url: 'https://mirrors.zju.edu.cn',
|
||||||
domain: 'mirrors.zju.edu.cn',
|
domain: 'mirrors.zju.edu.cn',
|
||||||
ipv6: true,
|
ipv6: true,
|
||||||
|
debian: true,
|
||||||
|
ubuntu: true,
|
||||||
|
centos: true,
|
||||||
|
centos_stream: true,
|
||||||
|
opensuse: true,
|
||||||
archlinux: true,
|
archlinux: true,
|
||||||
kalilinux: true,
|
kali: true,
|
||||||
deepin: true,
|
deepin: true,
|
||||||
rockylinux: true,
|
rocky: true,
|
||||||
almalinux: true,
|
almalinux: true,
|
||||||
epel: true,
|
epel: true,
|
||||||
fedora: true,
|
fedora: true,
|
||||||
opencloudos: false,
|
opencloudos: false,
|
||||||
|
openeuler: true,
|
||||||
anolis: true,
|
anolis: true,
|
||||||
openkylin: false,
|
openkylin: false,
|
||||||
alpinelinux: true,
|
alpine: true,
|
||||||
armbian: false,
|
armbian: false,
|
||||||
proxmox: false,
|
proxmox: false,
|
||||||
linuxmint: true,
|
linuxmint: true,
|
||||||
gentoo: true,
|
gentoo: true,
|
||||||
nix: false,
|
nix_channels: false,
|
||||||
raspberry: false,
|
raspberrypi: false,
|
||||||
manjaro: true,
|
manjaro: true,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: window.location.pathname.includes('/zh-Hant') ? '南京大學' : window.location.pathname.includes('/en') ? 'Nanjing University' : '南京大学',
|
name: __isZhHant ? '南京大學' : __isEn ? 'Nanjing University' : '南京大学',
|
||||||
officialName: window.location.pathname.includes('/zh-Hant') ? '南京大學開源鏡像站' : window.location.pathname.includes('/en') ? 'Nanjing University Open Source Mirror' : '南京大学开源镜像站',
|
officialName: __isZhHant ? '南京大學開源鏡像站' : __isEn ? 'Nanjing University Open Source Mirror' : '南京大学开源镜像站',
|
||||||
icon: 'nju.ico',
|
icon: 'nju.ico',
|
||||||
iconStyle: { verticalAlign: '-0.3em' },
|
iconStyle: { verticalAlign: '-0.3em' },
|
||||||
url: 'https://mirrors.nju.edu.cn',
|
url: 'https://mirrors.nju.edu.cn',
|
||||||
domain: 'mirrors.nju.edu.cn',
|
domain: 'mirrors.nju.edu.cn',
|
||||||
ipv6: true,
|
ipv6: true,
|
||||||
|
debian: true,
|
||||||
|
ubuntu: true,
|
||||||
|
centos: true,
|
||||||
|
centos_stream: true,
|
||||||
|
opensuse: true,
|
||||||
archlinux: true,
|
archlinux: true,
|
||||||
kalilinux: true,
|
kali: true,
|
||||||
deepin: true,
|
deepin: true,
|
||||||
rockylinux: true,
|
rocky: true,
|
||||||
almalinux: true,
|
almalinux: true,
|
||||||
epel: true,
|
epel: true,
|
||||||
fedora: true,
|
fedora: true,
|
||||||
opencloudos: true,
|
opencloudos: true,
|
||||||
|
openeuler: true,
|
||||||
anolis: true,
|
anolis: true,
|
||||||
openkylin: true,
|
openkylin: true,
|
||||||
alpinelinux: true,
|
alpine: true,
|
||||||
armbian: true,
|
armbian: true,
|
||||||
proxmox: true,
|
proxmox: true,
|
||||||
linuxmint: true,
|
linuxmint: true,
|
||||||
gentoo: true,
|
gentoo: true,
|
||||||
nix: true,
|
nix_channels: true,
|
||||||
raspberry: true,
|
raspberrypi: true,
|
||||||
manjaro: true,
|
manjaro: true,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: window.location.pathname.includes('/zh-Hant') ? '蘭州大學' : window.location.pathname.includes('/en') ? 'Lanzhou University' : '兰州大学',
|
name: __isZhHant ? '蘭州大學' : __isEn ? 'Lanzhou University' : '兰州大学',
|
||||||
officialName: window.location.pathname.includes('/zh-Hant') ? '蘭州大學開源軟體鏡像站' : window.location.pathname.includes('/en') ? 'Lanzhou University Open Source Software Mirror' : '兰州大学开源软件镜像站',
|
officialName: __isZhHant ? '蘭州大學開源軟體鏡像站' : __isEn ? 'Lanzhou University Open Source Software Mirror' : '兰州大学开源软件镜像站',
|
||||||
icon: 'lzu.png',
|
icon: 'lzu.png',
|
||||||
iconStyle: { verticalAlign: '-0.25em' },
|
iconStyle: { verticalAlign: '-0.25em' },
|
||||||
url: 'https://mirror.lzu.edu.cn',
|
url: 'https://mirror.lzu.edu.cn',
|
||||||
domain: 'mirror.lzu.edu.cn',
|
domain: 'mirror.lzu.edu.cn',
|
||||||
ipv6: true,
|
ipv6: true,
|
||||||
|
debian: true,
|
||||||
|
ubuntu: true,
|
||||||
|
centos: true,
|
||||||
|
centos_stream: true,
|
||||||
|
opensuse: true,
|
||||||
archlinux: true,
|
archlinux: true,
|
||||||
kalilinux: true,
|
kali: true,
|
||||||
deepin: true,
|
deepin: true,
|
||||||
rockylinux: true,
|
rocky: true,
|
||||||
almalinux: true,
|
almalinux: true,
|
||||||
epel: true,
|
epel: true,
|
||||||
fedora: true,
|
fedora: true,
|
||||||
opencloudos: false,
|
opencloudos: false,
|
||||||
|
openeuler: true,
|
||||||
anolis: false,
|
anolis: false,
|
||||||
openkylin: true,
|
openkylin: true,
|
||||||
alpinelinux: true,
|
alpine: true,
|
||||||
armbian: false,
|
armbian: false,
|
||||||
proxmox: false,
|
proxmox: false,
|
||||||
linuxmint: true,
|
linuxmint: true,
|
||||||
gentoo: true,
|
gentoo: true,
|
||||||
nix: false,
|
nix_channels: false,
|
||||||
raspberry: false,
|
raspberrypi: false,
|
||||||
manjaro: true,
|
manjaro: true,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: window.location.pathname.includes('/zh-Hant') ? '上海交通大學' : window.location.pathname.includes('/en') ? 'Shanghai Jiao Tong University' : '上海交通大学',
|
name: __isZhHant ? '上海交通大學' : __isEn ? 'Shanghai Jiao Tong University' : '上海交通大学',
|
||||||
officialName: window.location.pathname.includes('/zh-Hant') ? '上海交通大學思源鏡像站' : window.location.pathname.includes('/en') ? 'Shanghai Jiao Tong University Siyuan Mirror' : '上海交通大学思源镜像站',
|
officialName: __isZhHant ? '上海交通大學思源鏡像站' : __isEn ? 'Shanghai Jiao Tong University Siyuan Mirror' : '上海交通大学思源镜像站',
|
||||||
icon: 'sjtu.ico',
|
icon: 'sjtu.ico',
|
||||||
iconStyle: { verticalAlign: '-0.15em' },
|
iconStyle: { verticalAlign: '-0.15em' },
|
||||||
url: 'https://mirror.sjtu.edu.cn',
|
url: 'https://mirror.sjtu.edu.cn',
|
||||||
domain: 'mirror.sjtu.edu.cn',
|
domain: 'mirror.sjtu.edu.cn',
|
||||||
ipv6: true,
|
ipv6: true,
|
||||||
|
debian: true,
|
||||||
|
ubuntu: true,
|
||||||
|
centos: true,
|
||||||
|
centos_stream: true,
|
||||||
|
opensuse: true,
|
||||||
archlinux: true,
|
archlinux: true,
|
||||||
kalilinux: true,
|
kali: true,
|
||||||
deepin: true,
|
deepin: true,
|
||||||
rockylinux: true,
|
rocky: true,
|
||||||
almalinux: true,
|
almalinux: true,
|
||||||
epel: true,
|
epel: true,
|
||||||
fedora: 'incompatible',
|
fedora: 'incompatible',
|
||||||
opencloudos: true,
|
opencloudos: true,
|
||||||
|
openeuler: true,
|
||||||
anolis: false,
|
anolis: false,
|
||||||
openkylin: true,
|
openkylin: true,
|
||||||
alpinelinux: true,
|
alpine: true,
|
||||||
armbian: true,
|
armbian: true,
|
||||||
proxmox: false,
|
proxmox: false,
|
||||||
linuxmint: true,
|
linuxmint: true,
|
||||||
gentoo: true,
|
gentoo: true,
|
||||||
nix: false,
|
nix_channels: false,
|
||||||
raspberry: true,
|
raspberrypi: true,
|
||||||
manjaro: true,
|
manjaro: true,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: window.location.pathname.includes('/zh-Hant') ? '重慶郵電大學' : window.location.pathname.includes('/en') ? 'Chongqing University of Posts and Telecommunications' : '重庆邮电大学',
|
name: __isZhHant ? '重慶郵電大學' : __isEn ? 'Chongqing University of Posts and Telecommunications' : '重庆邮电大学',
|
||||||
officialName: window.location.pathname.includes('/zh-Hant') ? '重慶郵電大學開源鏡像站' : window.location.pathname.includes('/en') ? 'Chongqing University of Posts and Telecommunications Open Source Mirror' : '重庆邮电大学开源镜像站',
|
officialName: __isZhHant ? '重慶郵電大學開源鏡像站' : __isEn ? 'Chongqing University of Posts and Telecommunications Open Source Mirror' : '重庆邮电大学开源镜像站',
|
||||||
icon: 'cqupt.ico',
|
icon: 'cqupt.ico',
|
||||||
iconStyle: {},
|
iconStyle: {},
|
||||||
url: 'https://mirrors.cqupt.edu.cn',
|
url: 'https://mirrors.cqupt.edu.cn',
|
||||||
domain: 'mirrors.cqupt.edu.cn',
|
domain: 'mirrors.cqupt.edu.cn',
|
||||||
ipv6: true,
|
ipv6: true,
|
||||||
|
debian: true,
|
||||||
|
ubuntu: true,
|
||||||
|
centos: true,
|
||||||
|
centos_stream: true,
|
||||||
|
opensuse: true,
|
||||||
archlinux: true,
|
archlinux: true,
|
||||||
kalilinux: true,
|
kali: true,
|
||||||
deepin: true,
|
deepin: true,
|
||||||
rockylinux: false,
|
rocky: false,
|
||||||
almalinux: true,
|
almalinux: true,
|
||||||
epel: true,
|
epel: true,
|
||||||
fedora: true,
|
fedora: true,
|
||||||
opencloudos: false,
|
opencloudos: false,
|
||||||
|
openeuler: true,
|
||||||
anolis: false,
|
anolis: false,
|
||||||
openkylin: false,
|
openkylin: false,
|
||||||
alpinelinux: true,
|
alpine: true,
|
||||||
armbian: true,
|
armbian: true,
|
||||||
proxmox: true,
|
proxmox: true,
|
||||||
linuxmint: false,
|
linuxmint: false,
|
||||||
gentoo: false,
|
gentoo: false,
|
||||||
nix: true,
|
nix_channels: true,
|
||||||
raspberry: true,
|
raspberrypi: true,
|
||||||
manjaro: true,
|
manjaro: true,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: window.location.pathname.includes('/zh-Hant') ? '中國科學技術大學' : window.location.pathname.includes('/en') ? 'University of Science and Technology of China' : '中国科学技术大学',
|
name: __isZhHant ? '中國科學技術大學' : __isEn ? 'University of Science and Technology of China' : '中国科学技术大学',
|
||||||
officialName: window.location.pathname.includes('/zh-Hant') ? '中國科學技術大學開源軟體鏡像站' : window.location.pathname.includes('/en') ? 'USTC Open Source Software Mirror' : '中国科学技术大学开源软件镜像站',
|
officialName: __isZhHant ? '中國科學技術大學開源軟體鏡像站' : __isEn ? 'University of Science and Technology of China Open Source Software Mirror' : '中国科学技术大学开源软件镜像站',
|
||||||
icon: 'ustc.png',
|
icon: 'ustc.png',
|
||||||
iconStyle: { verticalAlign: '-0.2em' },
|
iconStyle: { verticalAlign: '-0.2em' },
|
||||||
url: 'https://mirrors.ustc.edu.cn',
|
url: 'https://mirrors.ustc.edu.cn',
|
||||||
domain: 'mirrors.ustc.edu.cn',
|
domain: 'mirrors.ustc.edu.cn',
|
||||||
ipv6: true,
|
ipv6: true,
|
||||||
|
debian: true,
|
||||||
|
ubuntu: true,
|
||||||
|
centos: true,
|
||||||
|
centos_stream: true,
|
||||||
|
opensuse: true,
|
||||||
archlinux: true,
|
archlinux: true,
|
||||||
kalilinux: true,
|
kali: true,
|
||||||
deepin: true,
|
deepin: true,
|
||||||
rockylinux: true,
|
rocky: true,
|
||||||
almalinux: false,
|
almalinux: false,
|
||||||
epel: true,
|
epel: true,
|
||||||
fedora: true,
|
fedora: true,
|
||||||
opencloudos: false,
|
opencloudos: false,
|
||||||
|
openeuler: true,
|
||||||
anolis: false,
|
anolis: false,
|
||||||
openkylin: false,
|
openkylin: false,
|
||||||
alpinelinux: true,
|
alpine: true,
|
||||||
armbian: true,
|
armbian: true,
|
||||||
proxmox: true,
|
proxmox: true,
|
||||||
linuxmint: true,
|
linuxmint: true,
|
||||||
gentoo: true,
|
gentoo: true,
|
||||||
nix: true,
|
nix_channels: true,
|
||||||
raspberry: true,
|
raspberrypi: true,
|
||||||
manjaro: true,
|
manjaro: true,
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
name: window.location.pathname.includes('/zh-Hant') ? '中國科學院軟體研究所' : window.location.pathname.includes('/en') ? 'Institute of Software, Chinese Academy of Sciences (ISCAS)' : '中国科学院软件研究所',
|
name: __isZhHant ? '中國科學院軟體研究所' : __isEn ? 'Institute of Software, Chinese Academy of Sciences (ISCAS)' : '中国科学院软件研究所',
|
||||||
officialName: window.location.pathname.includes('/zh-Hant') ? 'ISCAS 開源鏡像站' : window.location.pathname.includes('/en') ? 'ISCAS Open Source Mirror' : 'ISCAS 开源镜像站',
|
officialName: __isZhHant ? 'ISCAS 開源鏡像站' : __isEn ? 'ISCAS Open Source Mirror' : 'ISCAS 开源镜像站',
|
||||||
icon: 'iscas.png',
|
icon: 'iscas.png',
|
||||||
iconStyle: { verticalAlign: '-0.25em' },
|
iconStyle: { verticalAlign: '-0.25em' },
|
||||||
url: 'https://mirror.iscas.ac.cn',
|
url: 'https://mirror.iscas.ac.cn',
|
||||||
domain: 'mirror.iscas.ac.cn',
|
domain: 'mirror.iscas.ac.cn',
|
||||||
ipv6: false,
|
ipv6: false,
|
||||||
|
debian: true,
|
||||||
|
ubuntu: true,
|
||||||
|
centos: true,
|
||||||
|
centos_stream: true,
|
||||||
|
opensuse: true,
|
||||||
archlinux: true,
|
archlinux: true,
|
||||||
kalilinux: true,
|
kali: true,
|
||||||
deepin: true,
|
deepin: true,
|
||||||
rockylinux: true,
|
rocky: true,
|
||||||
almalinux: true,
|
almalinux: true,
|
||||||
epel: true,
|
epel: true,
|
||||||
fedora: true,
|
fedora: true,
|
||||||
opencloudos: true,
|
opencloudos: true,
|
||||||
|
openeuler: true,
|
||||||
anolis: false,
|
anolis: false,
|
||||||
openkylin: true,
|
openkylin: true,
|
||||||
alpinelinux: true,
|
alpine: true,
|
||||||
armbian: true,
|
armbian: true,
|
||||||
proxmox: true,
|
proxmox: true,
|
||||||
linuxmint: true,
|
linuxmint: true,
|
||||||
gentoo: true,
|
gentoo: true,
|
||||||
nix: true,
|
nix_channels: true,
|
||||||
raspberry: true,
|
raspberrypi: true,
|
||||||
manjaro: true,
|
manjaro: true,
|
||||||
},
|
},
|
||||||
]
|
]
|
||||||
@@ -384,7 +534,7 @@ const mirrorsTableData = [
|
|||||||
const mirrorsTableColumns = [
|
const mirrorsTableColumns = [
|
||||||
{
|
{
|
||||||
colKey: 'name',
|
colKey: 'name',
|
||||||
title: window.location.pathname.includes('/zh-Hant') ? '鏡像站' : window.location.pathname.includes('/en') ? 'Mirror Site' : '镜像站',
|
title: __isZhHant ? '鏡像站' : __isEn ? 'Mirror Site' : '镜像站',
|
||||||
align: 'left',
|
align: 'left',
|
||||||
width: '180',
|
width: '180',
|
||||||
fixed: 'left',
|
fixed: 'left',
|
||||||
@@ -400,7 +550,37 @@ const mirrorsTableColumns = [
|
|||||||
title: 'EPEL',
|
title: 'EPEL',
|
||||||
align: 'center',
|
align: 'center',
|
||||||
width: '90',
|
width: '90',
|
||||||
tooltip: 'EPEL (Extra Packages for Enterprise Linux) ' + (window.location.pathname.includes('/zh-Hant') ? '是由 Fedora 組織維護的一個附加軟體包倉庫,它主要適用於除 Fedora 作業系統以外的紅帽系 Linux 發行版' : window.location.pathname.includes('/en') ? 'is an additional package repository maintained by the Fedora organization. It is mainly applicable to Red Hat Linux distributions other than the Fedora operating system.' : '是由 Fedora 组织维护的一个附加软件包仓库,它主要适用于除 Fedora 操作系统以外的红帽系 Linux 发行版'),
|
tooltip: 'EPEL (Extra Packages for Enterprise Linux) ' + (__isZhHant ? '是由 Fedora 組織維護的一個附加軟體包倉庫,它主要適用於除 Fedora 作業系統以外的紅帽系 Linux 發行版' : __isEn ? 'is an additional package repository maintained by the Fedora organization. It is mainly applicable to Red Hat Linux distributions other than the Fedora operating system.' : '是由 Fedora 组织维护的一个附加软件包仓库,它主要适用于除 Fedora 操作系统以外的红帽系 Linux 发行版'),
|
||||||
|
},
|
||||||
|
// {
|
||||||
|
// colKey: 'debian',
|
||||||
|
// title: 'Debian',
|
||||||
|
// align: 'center',
|
||||||
|
// width: '80',
|
||||||
|
// },
|
||||||
|
// {
|
||||||
|
// colKey: 'ubuntu',
|
||||||
|
// title: 'Ubuntu',
|
||||||
|
// align: 'center',
|
||||||
|
// width: '80',
|
||||||
|
// },
|
||||||
|
// {
|
||||||
|
// colKey: 'centos',
|
||||||
|
// title: 'CentOS',
|
||||||
|
// align: 'center',
|
||||||
|
// width: '80',
|
||||||
|
// },
|
||||||
|
{
|
||||||
|
colKey: 'centos_stream',
|
||||||
|
title: 'CentOS Stream',
|
||||||
|
align: 'center',
|
||||||
|
width: '150',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
colKey: 'opensuse',
|
||||||
|
title: 'openSUSE',
|
||||||
|
align: 'center',
|
||||||
|
width: '110',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
colKey: 'archlinux',
|
colKey: 'archlinux',
|
||||||
@@ -415,7 +595,7 @@ const mirrorsTableColumns = [
|
|||||||
width: '100',
|
width: '100',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
colKey: 'kalilinux',
|
colKey: 'kali',
|
||||||
title: 'Kali Linux',
|
title: 'Kali Linux',
|
||||||
align: 'center',
|
align: 'center',
|
||||||
width: '110',
|
width: '110',
|
||||||
@@ -433,7 +613,7 @@ const mirrorsTableColumns = [
|
|||||||
width: '90',
|
width: '90',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
colKey: 'raspberry',
|
colKey: 'raspberrypi',
|
||||||
title: 'Raspberry Pi OS',
|
title: 'Raspberry Pi OS',
|
||||||
align: 'center',
|
align: 'center',
|
||||||
width: '150',
|
width: '150',
|
||||||
@@ -457,7 +637,7 @@ const mirrorsTableColumns = [
|
|||||||
width: '90',
|
width: '90',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
colKey: 'rockylinux',
|
colKey: 'rocky',
|
||||||
title: 'Rocky Linux',
|
title: 'Rocky Linux',
|
||||||
align: 'center',
|
align: 'center',
|
||||||
width: '120',
|
width: '120',
|
||||||
@@ -474,6 +654,12 @@ const mirrorsTableColumns = [
|
|||||||
align: 'center',
|
align: 'center',
|
||||||
width: '140',
|
width: '140',
|
||||||
},
|
},
|
||||||
|
// {
|
||||||
|
// colKey: 'openeuler',
|
||||||
|
// title: 'openEuler',
|
||||||
|
// align: 'center',
|
||||||
|
// width: '110',
|
||||||
|
// },
|
||||||
{
|
{
|
||||||
colKey: 'anolis',
|
colKey: 'anolis',
|
||||||
title: 'Anolis OS',
|
title: 'Anolis OS',
|
||||||
@@ -487,7 +673,7 @@ const mirrorsTableColumns = [
|
|||||||
width: '110',
|
width: '110',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
colKey: 'alpinelinux',
|
colKey: 'alpine',
|
||||||
title: 'Alpine Linux',
|
title: 'Alpine Linux',
|
||||||
align: 'center',
|
align: 'center',
|
||||||
width: '130',
|
width: '130',
|
||||||
@@ -499,31 +685,197 @@ const mirrorsTableColumns = [
|
|||||||
width: '90',
|
width: '90',
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
colKey: 'nix',
|
colKey: 'nix_channels',
|
||||||
title: 'NixOS',
|
title: 'NixOS',
|
||||||
align: 'center',
|
align: 'center',
|
||||||
width: '80',
|
width: '80',
|
||||||
},
|
},
|
||||||
].map((item) => {
|
].map((item) => {
|
||||||
if (['ipv6', 'epel', 'archlinux', 'manjaro', 'kalilinux', 'armbian', 'deepin', 'raspberry', 'linuxmint', 'proxmox', 'fedora', 'rockylinux', 'almalinux', 'opencloudos', 'anolis', 'openkylin', 'alpinelinux', 'gentoo', 'nix'].includes(item.colKey)) {
|
if (['ipv6', 'debian', 'ubuntu', 'centos', 'centos_stream', 'opensuse', 'epel', 'archlinux', 'manjaro', 'kali', 'armbian', 'deepin', 'raspberrypi', 'linuxmint', 'proxmox', 'fedora', 'rocky', 'almalinux', 'opencloudos', 'openeuler', 'anolis', 'openkylin', 'alpine', 'gentoo', 'nix_channels'].includes(item.colKey)) {
|
||||||
item.sortType = 'all'
|
const labelSupported = __isZhHant ? '支持' : __isEn ? 'Supported' : '支持'
|
||||||
item.sorter = (a, b) => {
|
const labelUnsupported = __isZhHant ? '不支持' : __isEn ? 'Unsupported' : '不支持'
|
||||||
const getValue = (row) => {
|
const labelIncompatible = __isZhHant ? '不兼容' : __isEn ? 'Incompatible' : '不兼容'
|
||||||
if (typeof row[item.colKey] === 'boolean') {
|
item.filter = {
|
||||||
return row[item.colKey] ? 0 : 1
|
label: item.title || item.colKey,
|
||||||
|
type: 'single',
|
||||||
|
list: [
|
||||||
|
{ label: labelSupported, value: 'supported' },
|
||||||
|
{ label: labelUnsupported, value: 'unsupported' },
|
||||||
|
{ label: labelIncompatible, value: 'incompatible' },
|
||||||
|
],
|
||||||
|
confirmEvents: ['onChange'],
|
||||||
|
filterMethod(value, row) {
|
||||||
|
try {
|
||||||
|
const key = item.colKey
|
||||||
|
const cell = row && Object.prototype.hasOwnProperty.call(row, key) ? row[key] : undefined
|
||||||
|
if (value === 'supported') return cell === true
|
||||||
|
if (value === 'unsupported') return cell === false
|
||||||
|
if (value === 'incompatible') return cell === 'incompatible'
|
||||||
|
return false
|
||||||
|
} catch (e) {
|
||||||
|
return false
|
||||||
}
|
}
|
||||||
return 2
|
},
|
||||||
|
}
|
||||||
|
item.filterMethod = function (value, row) {
|
||||||
|
try {
|
||||||
|
const key = item.colKey
|
||||||
|
const cell = row && Object.prototype.hasOwnProperty.call(row, key) ? row[key] : undefined
|
||||||
|
if (value === 'supported') return cell === true
|
||||||
|
if (value === 'unsupported') return cell === false
|
||||||
|
if (value === 'incompatible') return cell === 'incompatible'
|
||||||
|
return false
|
||||||
|
} catch (e) {
|
||||||
|
return false
|
||||||
}
|
}
|
||||||
const aValue = getValue(a)
|
|
||||||
const bValue = getValue(b)
|
|
||||||
return aValue - bValue
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return item
|
return item
|
||||||
})
|
})
|
||||||
|
|
||||||
const mirrorsTableConfig = {
|
const mirrorsTableFilterSelectOptions = [
|
||||||
sortAscendingOperationText: window.location.pathname.includes('/zh-Hant') ? '点击升序' : window.location.pathname.includes('/en') ? 'click to sort ascending' : '点击升序',
|
{ label: __isZhHant ? '全選' : __isEn ? 'Select All' : '全选', checkAll: true },
|
||||||
sortCancelOperationText: window.location.pathname.includes('/zh-Hant') ? '点击取消排序' : window.location.pathname.includes('/en') ? 'click to cancel sorting' : '点击取消排序',
|
{
|
||||||
sortDescendingOperationText: window.location.pathname.includes('/zh-Hant') ? '点击降序' : window.location.pathname.includes('/en') ? 'click to sort descending' : '点击降序',
|
value: 'ipv6',
|
||||||
}
|
label: 'IPv6',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
group: 'Debian',
|
||||||
|
children: [
|
||||||
|
// {
|
||||||
|
// value: 'debian',
|
||||||
|
// label: 'Debian',
|
||||||
|
// iconName: 'debian.svg',
|
||||||
|
// },
|
||||||
|
// {
|
||||||
|
// value: 'ubuntu',
|
||||||
|
// label: 'Ubuntu',
|
||||||
|
// iconName: 'ubuntu.svg',
|
||||||
|
// },
|
||||||
|
{
|
||||||
|
value: 'kali',
|
||||||
|
label: 'Kali Linux',
|
||||||
|
iconName: 'kali-linux.svg',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
value: 'armbian',
|
||||||
|
label: 'Armbian',
|
||||||
|
iconName: 'armbian.png',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
value: 'raspberrypi',
|
||||||
|
label: 'Raspberry Pi OS',
|
||||||
|
iconName: 'raspberry-pi.png',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
value: 'openkylin',
|
||||||
|
label: 'openKylin',
|
||||||
|
iconName: 'openkylin.ico',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
value: 'linuxmint',
|
||||||
|
label: 'Linux Mint',
|
||||||
|
iconName: 'linux-mint.ico',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
value: 'deepin',
|
||||||
|
label: 'Deepin',
|
||||||
|
iconName: 'deepin.png',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
value: 'proxmox',
|
||||||
|
label: 'Proxmox VE',
|
||||||
|
iconName: 'proxmox.svg',
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
group: 'RedHat',
|
||||||
|
children: [
|
||||||
|
{
|
||||||
|
value: 'fedora',
|
||||||
|
label: 'Fedora',
|
||||||
|
iconName: 'fedora.ico',
|
||||||
|
},
|
||||||
|
// {
|
||||||
|
// value: 'centos',
|
||||||
|
// label: 'CentOS',
|
||||||
|
// iconName: 'centos.svg',
|
||||||
|
// },
|
||||||
|
{
|
||||||
|
value: 'centos_stream',
|
||||||
|
label: 'CentOS Stream',
|
||||||
|
iconName: 'centos.svg',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
value: 'rocky',
|
||||||
|
label: 'Rocky Linux',
|
||||||
|
iconName: 'rocky-linux.svg',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
value: 'almalinux',
|
||||||
|
label: 'AlmaLinux',
|
||||||
|
iconName: 'almalinux.svg',
|
||||||
|
},
|
||||||
|
// {
|
||||||
|
// value: 'openeuler',
|
||||||
|
// label: 'openEuler',
|
||||||
|
// iconName: 'openeuler.ico',
|
||||||
|
// },
|
||||||
|
{
|
||||||
|
value: 'opencloudos',
|
||||||
|
label: 'OpenCloudOS',
|
||||||
|
iconName: 'opencloudos.png',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
value: 'anolis',
|
||||||
|
label: 'Anolis OS',
|
||||||
|
iconName: 'anolis.png',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
value: 'epel',
|
||||||
|
label: 'EPEL',
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
group: 'Arch Linux',
|
||||||
|
children: [
|
||||||
|
{
|
||||||
|
value: 'archlinux',
|
||||||
|
label: 'Arch Linux',
|
||||||
|
iconName: 'arch-linux.ico',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
value: 'manjaro',
|
||||||
|
label: 'Manjaro',
|
||||||
|
iconName: 'manjaro.svg',
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
group: 'Other',
|
||||||
|
children: [
|
||||||
|
{
|
||||||
|
value: 'opensuse',
|
||||||
|
label: 'openSUSE',
|
||||||
|
iconName: 'opensuse.svg',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
value: 'alpine',
|
||||||
|
label: 'Alpine Linux',
|
||||||
|
iconName: 'alpine.png',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
value: 'gentoo',
|
||||||
|
label: 'Gentoo',
|
||||||
|
iconName: 'gentoo.svg',
|
||||||
|
},
|
||||||
|
{
|
||||||
|
value: 'nix_channels',
|
||||||
|
label: 'NixOS',
|
||||||
|
iconName: 'nixos.svg',
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
]
|
||||||
|
|||||||
@@ -1,71 +1,401 @@
|
|||||||
ComponentSystem.register('mirrors-table', {
|
ComponentSystem.register('mirrors-table', {
|
||||||
template: `
|
template: `
|
||||||
<div>
|
<div class="mirrors-table">
|
||||||
<t-config-provider :global-config="{ table: tableConfig }">
|
<t-config-provider :global-config="globalConfig">
|
||||||
<t-table
|
<t-space v-if="!isMobile" align="center" style="margin-bottom: 8px; gap: 20px">
|
||||||
:columns="columns"
|
<blockquote>
|
||||||
:data="data"
|
<p>{{ startTitle[0] }} <code>Debian</code>、<code>Ubuntu</code>、<code>CentOS</code>、<code>openEuler</code> {{ startTitle[1] }}</p>
|
||||||
row-key="name"
|
</blockquote>
|
||||||
size="small"
|
<t-space style="width: 100%">
|
||||||
verticalAlign="bottom"
|
<t-popup placement="bottom" :show-arrow="false">
|
||||||
@data-change="dataChange"
|
<template #content>
|
||||||
>
|
<t-checkbox-group v-model="selectedCellStatuses" style="padding: 6px" @change="onCellStatusChange">
|
||||||
<template v-for="col in columns" :key="col.colKey" #[col.title]>
|
<t-space align="start" direction="vertical" style="gap: 4px">
|
||||||
<div v-if="col.tooltip" class="t-table__th-cell-inner">
|
<t-checkbox value="supported">
|
||||||
<t-space style="gap: 4px">
|
<t-space align="center" style="gap: 2px">
|
||||||
<span>{{ col.title }}</span>
|
<t-tag theme="success" variant="light" style="background-color: transparent; vertical-align: -0.35em">
|
||||||
<t-tooltip :content="col.tooltip" placement="bottom" :show-arrow="false">
|
<template #icon>
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 24 24"><path fill="currentColor" d="M11.95 18q.525 0 .888-.363t.362-.887t-.362-.888t-.888-.362t-.887.363t-.363.887t.363.888t.887.362m.05 4q-2.075 0-3.9-.788t-3.175-2.137T2.788 15.9T2 12t.788-3.9t2.137-3.175T8.1 2.788T12 2t3.9.788t3.175 2.137T21.213 8.1T22 12t-.788 3.9t-2.137 3.175t-3.175 2.138T12 22m0-2q3.35 0 5.675-2.325T20 12t-2.325-5.675T12 4T6.325 6.325T4 12t2.325 5.675T12 20m.1-12.3q.625 0 1.088.4t.462 1q0 .55-.337.975t-.763.8q-.575.5-1.012 1.1t-.438 1.35q0 .35.263.588t.612.237q.375 0 .638-.25t.337-.625q.1-.525.45-.937t.75-.788q.575-.55.988-1.2t.412-1.45q0-1.275-1.037-2.087T12.1 6q-.95 0-1.812.4T8.975 7.625q-.175.3-.112.638t.337.512q.35.2.725.125t.625-.425q.275-.375.688-.575t.862-.2"/></svg>
|
<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24"><path fill="currentColor" d="M21 7L9 19l-5.5-5.5l1.41-1.41L9 16.17L19.59 5.59L21 7Z"></svg>
|
||||||
</t-tooltip>
|
</template>
|
||||||
|
</t-tag>
|
||||||
|
<span>{{ statusLabels.supported }}</span>
|
||||||
|
</t-space>
|
||||||
|
</t-checkbox>
|
||||||
|
<t-checkbox value="unsupported">
|
||||||
|
<t-space align="center" style="gap: 0">
|
||||||
|
<t-tag theme="danger" variant="light" style="background-color: transparent; vertical-align: -0.35em">
|
||||||
|
<template #icon>
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" style="vertical-align: -0.2em"><path fill="currentColor" d="M19 6.41L17.59 5L12 10.59L6.41 5L5 6.41L10.59 12L5 17.59L6.41 19L12 13.41L17.59 19L19 17.59L13.41 12L19 6.41Z"></svg>
|
||||||
|
</template>
|
||||||
|
</t-tag>
|
||||||
|
<span>{{ statusLabels.unsupported }}</span>
|
||||||
|
</t-space>
|
||||||
|
</t-checkbox>
|
||||||
|
<t-checkbox value="incompatible">
|
||||||
|
<t-space align="center" style="gap: 2px">
|
||||||
|
<t-tag theme="warning" variant="light" style="background-color: transparent; vertical-align: -0.35em">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" style="margin-left: 2px" width="16" height="16" viewBox="0 0 24 24" style="vertical-align: -0.15em"><path fill="#F6B604" d="M22.11 21.46L2.39 1.73L1.11 3l2.95 2.95A9.95 9.95 0 0 0 2 12c0 5.5 4.5 10 10 10c2.28 0 4.37-.77 6.05-2.06l2.79 2.79l1.27-1.27M12 20c-4.42 0-8-3.58-8-8c0-1.73.56-3.32 1.5-4.62L16.62 18.5A7.78 7.78 0 0 1 12 20M8.17 4.97L6.72 3.5C8.25 2.56 10.06 2 12 2c5.5 0 10 4.5 10 10c0 1.94-.56 3.75-1.5 5.28l-1.47-1.45c.62-1.14.97-2.44.97-3.83c0-4.42-3.58-8-8-8c-1.39 0-2.69.35-3.83.97Z"></svg>
|
||||||
|
</t-tag>
|
||||||
|
<span>{{ statusLabels.incompatible }}</span>
|
||||||
|
</t-space>
|
||||||
|
</t-checkbox>
|
||||||
</t-space>
|
</t-space>
|
||||||
</div>
|
</t-checkbox-group>
|
||||||
<div v-else class="t-table__th-cell-inner">{{ col.title }}</div>
|
|
||||||
</template>
|
</template>
|
||||||
<template v-for="col in columns" :key="col.colKey" #[col.colKey]="{ row }">
|
<t-button variant="text" shape="circle">
|
||||||
<template v-if="col.colKey === 'name'">
|
<svg fill="none" viewBox="0 0 24 24" width="1em" height="1em" class="t-icon t-icon-filter" style="fill: none;"><g id="filter"><path id="fill1" fill="transparent" d="M19.5 4H4.5L10.5 12.5V20H13.5V12.5L19.5 4Z" fill-rule="evenodd" clip-rule="evenodd"></path><path id="stroke1" stroke="currentColor" d="M19.5 4H4.5L10.5 12.5V20H13.5V12.5L19.5 4Z" fill-rule="evenodd" stroke-linecap="square" stroke-width="2" clip-rule="evenodd"></path></g></svg>
|
||||||
<t-popup placement="bottom" :show-arrow="false">
|
</t-button>
|
||||||
<template #content>
|
</t-popup>
|
||||||
<t-space direction="vertical" algin="center" style="gap: 2px">
|
<t-select
|
||||||
<span>{{ row.officialName }}</span>
|
v-model="selectedRowFilters"
|
||||||
<a :href="row.url" target="_blank" style="color: var(--md-typeset-a-color)">{{ row.domain }}</a>
|
:options="rowFilterOptionsRendered"
|
||||||
</t-space>
|
:min-collapsed-num="1"
|
||||||
</template>
|
multiple
|
||||||
<a :href="row.url" target="_blank">
|
clearable
|
||||||
<t-space align="center" style="gap: 6px">
|
size="large"
|
||||||
<span style="display: flex; height: 16px; width: 16px; align-items: center; justify-content: center">
|
:placeholder="rowSelectPlaceholder"
|
||||||
<img v-if="row.icon" :src="\`/assets/images/icon/mirrors/\${row.icon}\`" width="16" height="16">
|
style="min-width: 160px; width: 250px"
|
||||||
</span>
|
@change="onRowFilterChange"
|
||||||
<span>{{ row.name }}</span>
|
/>
|
||||||
</t-space>
|
<t-select
|
||||||
</a>
|
v-model="selectedColumnFilters"
|
||||||
</t-popup>
|
:options="filterOptions"
|
||||||
|
:min-collapsed-num="1"
|
||||||
|
multiple
|
||||||
|
clearable
|
||||||
|
size="large"
|
||||||
|
:placeholder="selectPlaceholder"
|
||||||
|
style="min-width: 160px; width: 230px"
|
||||||
|
@change="onFilterChange"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</t-space>
|
||||||
|
<blockquote v-if="isMobile">
|
||||||
|
<p>{{ startTitle[0] }} <code>Debian</code>、<code>Ubuntu</code>、<code>CentOS</code>、<code>openEuler</code> {{ startTitle[1] }}</p>
|
||||||
|
</blockquote>
|
||||||
|
<t-table
|
||||||
|
:columns="columns"
|
||||||
|
:data="data"
|
||||||
|
row-key="name"
|
||||||
|
size="small"
|
||||||
|
verticalAlign="bottom"
|
||||||
|
hover
|
||||||
|
@data-change="dataChange"
|
||||||
|
@filter-change="onTableFilterChange"
|
||||||
|
>
|
||||||
|
<template v-for="col in columns" :key="col.colKey" #[col.colKey]="{ row }">
|
||||||
|
<div v-if="col.colKey === 'name'">
|
||||||
|
<t-popup placement="bottom" :show-arrow="false">
|
||||||
|
<template #content>
|
||||||
|
<t-space direction="vertical" algin="center" style="gap: 2px">
|
||||||
|
<span>{{ row.officialName }}</span>
|
||||||
|
<a :href="row.url" target="_blank" style="color: var(--md-typeset-a-color)">{{ row.domain }}</a>
|
||||||
|
</t-space>
|
||||||
</template>
|
</template>
|
||||||
<template v-else>
|
<a :href="row.url" target="_blank">
|
||||||
<t-tag v-if="typeof row[col.colKey] === 'boolean'" :theme="row[col.colKey] ? 'success' : 'danger'" variant="light" size="small" style="background-color: transparent; height: 100%; vertical-align: -0.35em">
|
<t-space align="center" style="gap: 6px">
|
||||||
<template #icon>
|
<span style="display: flex; height: 16px; width: 16px; align-items: center; justify-content: center">
|
||||||
<svg v-if="row[col.colKey]" xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24"><path fill="currentColor" d="M21 7L9 19l-5.5-5.5l1.41-1.41L9 16.17L19.59 5.59L21 7Z"></svg>
|
<img v-if="row.icon" :src="'/assets/images/icon/mirrors/' + row.icon" width="16" height="16">
|
||||||
<svg v-else xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" style="vertical-align: -0.2em"><path fill="currentColor" d="M19 6.41L17.59 5L12 10.59L6.41 5L5 6.41L10.59 12L5 17.59L6.41 19L12 13.41L17.59 19L19 17.59L13.41 12L19 6.41Z"></svg>
|
</span>
|
||||||
</template>
|
<span style="display: flex; align-items: center; justify-content: center">{{ row.name }}</span>
|
||||||
</t-tag>
|
</t-space>
|
||||||
<t-tag v-else theme="warning" variant="light" size="small" style="background-color: transparent; vertical-align: -0.35em">
|
</a>
|
||||||
<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" style="vertical-align: -0.1em"><path fill="#F6B604" d="M22.11 21.46L2.39 1.73L1.11 3l2.95 2.95A9.95 9.95 0 0 0 2 12c0 5.5 4.5 10 10 10c2.28 0 4.37-.77 6.05-2.06l2.79 2.79l1.27-1.27M12 20c-4.42 0-8-3.58-8-8c0-1.73.56-3.32 1.5-4.62L16.62 18.5A7.78 7.78 0 0 1 12 20M8.17 4.97L6.72 3.5C8.25 2.56 10.06 2 12 2c5.5 0 10 4.5 10 10c0 1.94-.56 3.75-1.5 5.28l-1.47-1.45c.62-1.14.97-2.44.97-3.83c0-4.42-3.58-8-8-8c-1.39 0-2.69.35-3.83.97Z"></svg>
|
</t-popup>
|
||||||
</t-tag>
|
</div>
|
||||||
|
<div v-else>
|
||||||
|
<t-tag v-if="typeof row[col.colKey] === 'boolean'" :theme="row[col.colKey] ? 'success' : 'danger'" variant="light" size="small" style="background-color: transparent; height: 26px" style="z-index: 2">
|
||||||
|
<template #icon>
|
||||||
|
<div v-if="row[col.colKey] === true && !['ipv6'].includes(col.colKey) && showSupported">
|
||||||
|
<t-popup placement="bottom" :show-arrow="false">
|
||||||
|
<template #content>
|
||||||
|
<a :href="getMirrorSiteBranchUrl(row.domain, col.colKey)" target="_blank" style="color: var(--md-typeset-a-color)">{{ getMirrorSiteBranchUrl(row.domain, col.colKey) }}</a>
|
||||||
|
</template>
|
||||||
|
<a :href="getMirrorSiteBranchUrl(row.domain, col.colKey)" target="_blank" style="color: var(--td-success-color)">
|
||||||
|
<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24"><path fill="currentColor" d="M21 7L9 19l-5.5-5.5l1.41-1.41L9 16.17L19.59 5.59L21 7Z"></svg>
|
||||||
|
</a>
|
||||||
|
</t-popup>
|
||||||
|
</div>
|
||||||
|
<svg v-else-if="row[col.colKey] === true && showSupported" xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24"><path fill="currentColor" d="M21 7L9 19l-5.5-5.5l1.41-1.41L9 16.17L19.59 5.59L21 7Z"></svg>
|
||||||
|
<svg v-else-if="row[col.colKey] === false && showUnsupported" xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24"><path fill="currentColor" d="M19 6.41L17.59 5L12 10.59L6.41 5L5 6.41L10.59 12L5 17.59L6.41 19L12 13.41L17.59 19L19 17.59L13.41 12L19 6.41Z"></svg>
|
||||||
</template>
|
</template>
|
||||||
</template>
|
</t-tag>
|
||||||
</t-table>
|
<t-tag v-else theme="warning" variant="light" size="small" style="background-color: transparent; height: 26px">
|
||||||
</t-config-provider>
|
<template #icon>
|
||||||
</div>
|
<svg v-if="showIncompatible" xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24"><path fill="#F6B604" d="M22.11 21.46L2.39 1.73L1.11 3l2.95 2.95A9.95 9.95 0 0 0 2 12c0 5.5 4.5 10 10 10c2.28 0 4.37-.77 6.05-2.06l2.79 2.79l1.27-1.27M12 20c-4.42 0-8-3.58-8-8c0-1.73.56-3.32 1.5-4.62L16.62 18.5A7.78 7.78 0 0 1 12 20M8.17 4.97L6.72 3.5C8.25 2.56 10.06 2 12 2c5.5 0 10 4.5 10 10c0 1.94-.56 3.75-1.5 5.28l-1.47-1.45c.62-1.14.97-2.44.97-3.83c0-4.42-3.58-8-8-8c-1.39 0-2.69.35-3.83.97Z"></svg>
|
||||||
`,
|
</template>
|
||||||
|
</t-tag>
|
||||||
|
</template>
|
||||||
|
</template>
|
||||||
|
</t-table>
|
||||||
|
</t-config-provider>
|
||||||
|
</div>
|
||||||
|
`,
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
|
allColumns: mirrorsTableColumns,
|
||||||
columns: mirrorsTableColumns,
|
columns: mirrorsTableColumns,
|
||||||
data: mirrorsTableData,
|
originalData: mirrorsTableData,
|
||||||
tableConfig: mirrorsTableConfig,
|
data: mirrorsTableData.slice(),
|
||||||
|
rawFilterOptions: mirrorsTableFilterSelectOptions,
|
||||||
|
selectedColumnFilters: [],
|
||||||
|
selectedRowFilters: [],
|
||||||
|
selectedCellStatuses: ['supported', 'unsupported', 'incompatible'],
|
||||||
|
activeTableFilters: {},
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
created() {
|
||||||
|
const allKeys = this._flattenFilterKeys(this.filterOptions)
|
||||||
|
this.selectedColumnFilters = allKeys.slice()
|
||||||
|
this.selectedRowFilters = Array.isArray(this.originalData) ? this.originalData.map((r) => r.name) : []
|
||||||
|
this._debouncedUpdateColumns = debounce(this._updateColumns.bind(this), 120)
|
||||||
|
this._debouncedUpdateRows = debounce(this._updateRows.bind(this), 120)
|
||||||
|
this._updateColumns()
|
||||||
|
this._updateRows()
|
||||||
|
},
|
||||||
|
computed: {
|
||||||
|
isMobile() {
|
||||||
|
return window.matchMedia('(max-width: 768px)').matches
|
||||||
|
},
|
||||||
|
localeFlags() {
|
||||||
|
const p = (window && window.location && window.location.pathname) || ''
|
||||||
|
return {
|
||||||
|
isZhHant: p.includes('/zh-Hant'),
|
||||||
|
isEn: p.includes('/en'),
|
||||||
|
}
|
||||||
|
},
|
||||||
|
startTitle() {
|
||||||
|
const f = this.localeFlags
|
||||||
|
return f.isZhHant ? ['下方列表中的鏡像站均同步了', '軟體倉庫,列表根據單位性質、地理位置、名稱長度排序,與實際下載速度無關。'] : f.isEn ? ['All mirror sites in the list below synchronize the', 'software repositories. The list is sorted by institution type, geographic location, and name length, and is not related to actual download speed.'] : ['下方列表中的镜像站均同步了', '软件仓库,列表根据单位性质、地理位置、名称长度进行排序,与实际速度无关。']
|
||||||
|
},
|
||||||
|
globalConfig() {
|
||||||
|
const f = this.localeFlags
|
||||||
|
return {
|
||||||
|
animation: { include: ['expand', 'fade'], exclude: [] },
|
||||||
|
table: f.isZhHant
|
||||||
|
? {
|
||||||
|
empty: '\u66AB\u7121\u6578\u64DA',
|
||||||
|
loadingText: '\u6B63\u5728\u8F09\u5165\u4E2D\uFF0C\u8ACB\u7A0D\u5F8C',
|
||||||
|
loadingMoreText: '\u9EDE\u64CA\u8F09\u5165\u66F4\u591A',
|
||||||
|
filterInputPlaceholder: '\u8ACB\u8F38\u5165\u5185\u5BB9\uFF08\u7121\u9ED8\u8A8D\u503C\uFF09',
|
||||||
|
sortAscendingOperationText: '\u9EDE\u64CA\u5347\u5E8F',
|
||||||
|
sortCancelOperationText: '\u9EDE\u64CA\u53D6\u6D88\u6392\u5E8F',
|
||||||
|
sortDescendingOperationText: '\u9EDE\u64CA\u964D\u5E8F',
|
||||||
|
clearFilterResultButtonText: '\u6E05\u7A7A\u7BE9\u9078',
|
||||||
|
columnConfigButtonText: '\u884C\u914D\u7F6E',
|
||||||
|
columnConfigTitleText: '\u8868\u683C\u884C\u914D\u7F6E',
|
||||||
|
columnConfigDescriptionText: '\u8ACB\u9078\u64C7\u9700\u8981\u5728\u8868\u683C\u4E2D\u986F\u793A\u7684\u6578\u64DA\u884C',
|
||||||
|
confirmText: '\u78BA\u8A8D',
|
||||||
|
cancelText: '\u53D6\u6D88',
|
||||||
|
resetText: '\u91CD\u7F6E',
|
||||||
|
selectAllText: '\u5168\u9078',
|
||||||
|
searchResultText: '\u641C\u5C0B"{result}"\uFF0C\u627E\u5230{count}\u9805\u7D50\u679C',
|
||||||
|
}
|
||||||
|
: f.isEn
|
||||||
|
? {
|
||||||
|
empty: 'Empty Data',
|
||||||
|
loadingText: 'loading...',
|
||||||
|
loadingMoreText: 'loading more',
|
||||||
|
filterInputPlaceholder: '',
|
||||||
|
sortAscendingOperationText: 'click to sort ascending',
|
||||||
|
sortCancelOperationText: 'click to cancel sorting',
|
||||||
|
sortDescendingOperationText: 'click to sort descending',
|
||||||
|
clearFilterResultButtonText: 'Clear',
|
||||||
|
columnConfigButtonText: 'Column Config',
|
||||||
|
columnConfigTitleText: 'Table Column Config',
|
||||||
|
columnConfigDescriptionText: 'Please select columns to show them in the table',
|
||||||
|
confirmText: 'Confirm',
|
||||||
|
cancelText: 'Cancel',
|
||||||
|
resetText: 'Reset',
|
||||||
|
selectAllText: 'Select All',
|
||||||
|
searchResultText: 'Search "{result}". Found no items. | Search "{result}". Found 1 item. | Search "{result}". Found {count} items.',
|
||||||
|
}
|
||||||
|
: undefined,
|
||||||
|
select: f.isZhHant
|
||||||
|
? {
|
||||||
|
empty: '\u66AB\u7121\u6578\u64DA',
|
||||||
|
loadingText: '\u8F09\u5165\u4E2D',
|
||||||
|
placeholder: '\u8ACB\u9078\u64C7',
|
||||||
|
}
|
||||||
|
: f.isEn
|
||||||
|
? {
|
||||||
|
empty: 'Empty Data',
|
||||||
|
loadingText: 'loading...',
|
||||||
|
placeholder: 'please select',
|
||||||
|
}
|
||||||
|
: undefined,
|
||||||
|
}
|
||||||
|
},
|
||||||
|
selectPlaceholder() {
|
||||||
|
const f = this.localeFlags
|
||||||
|
return f.isZhHant ? '选择要显示的列' : f.isEn ? 'Select columns to show' : '选择要显示的列'
|
||||||
|
},
|
||||||
|
rowSelectPlaceholder() {
|
||||||
|
const f = this.localeFlags
|
||||||
|
return f.isZhHant ? '筛选显示的镜像' : f.isEn ? 'Filter mirrors to show' : '筛选显示的镜像'
|
||||||
|
},
|
||||||
|
rowFilterOptions() {
|
||||||
|
const f = this.localeFlags
|
||||||
|
const arr = Array.isArray(this.originalData) ? this.originalData.map((r) => ({ value: r.name, label: r.name, iconName: r.icon })) : []
|
||||||
|
const head = { value: '__all__', label: f.isZhHant ? '全選' : f.isEn ? 'Select All' : '全选', checkAll: true }
|
||||||
|
return [head].concat(arr)
|
||||||
|
},
|
||||||
|
rowFilterOptionsRendered() {
|
||||||
|
return Array.isArray(this.rowFilterOptions) ? this.rowFilterOptions.map((o) => this._mapOptionForRow(o)) : []
|
||||||
|
},
|
||||||
|
statusLabels() {
|
||||||
|
const f = this.localeFlags
|
||||||
|
return {
|
||||||
|
supported: f.isZhHant ? '支援' : f.isEn ? 'Supported' : '支持',
|
||||||
|
unsupported: f.isZhHant ? '不支援' : f.isEn ? 'Unsupported' : '不支持',
|
||||||
|
incompatible: f.isZhHant ? '不相容' : f.isEn ? 'Incompatible' : '不兼容',
|
||||||
|
}
|
||||||
|
},
|
||||||
|
showSupported() {
|
||||||
|
return Array.isArray(this.selectedCellStatuses) && this.selectedCellStatuses.includes('supported')
|
||||||
|
},
|
||||||
|
showUnsupported() {
|
||||||
|
return Array.isArray(this.selectedCellStatuses) && this.selectedCellStatuses.includes('unsupported')
|
||||||
|
},
|
||||||
|
showIncompatible() {
|
||||||
|
return Array.isArray(this.selectedCellStatuses) && this.selectedCellStatuses.includes('incompatible')
|
||||||
|
},
|
||||||
|
filterOptions() {
|
||||||
|
return Array.isArray(this.rawFilterOptions) ? this.rawFilterOptions.map((o) => this._mapOptionForFilter(o)) : []
|
||||||
|
},
|
||||||
|
},
|
||||||
methods: {
|
methods: {
|
||||||
dataChange(data) {
|
dataChange(data) {
|
||||||
this.data = data
|
try {
|
||||||
|
const hasColumnFilters = this.activeTableFilters && Object.keys(this.activeTableFilters).length > 0
|
||||||
|
const hasRowFilters = Array.isArray(this.selectedRowFilters) && this.selectedRowFilters.length > 0
|
||||||
|
if (hasColumnFilters || hasRowFilters) {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
this.data = data
|
||||||
|
} catch {}
|
||||||
|
},
|
||||||
|
onFilterChange() {
|
||||||
|
if (this._debouncedUpdateColumns) this._debouncedUpdateColumns()
|
||||||
|
else this._updateColumns()
|
||||||
|
},
|
||||||
|
onRowFilterChange() {
|
||||||
|
try {
|
||||||
|
if (Array.isArray(this.selectedRowFilters) && this.selectedRowFilters.includes('__all__')) {
|
||||||
|
this.selectedRowFilters = Array.isArray(this.originalData) ? this.originalData.map((r) => r.name) : []
|
||||||
|
}
|
||||||
|
} catch {}
|
||||||
|
if (this._debouncedUpdateRows) this._debouncedUpdateRows()
|
||||||
|
else this._updateRows()
|
||||||
|
},
|
||||||
|
getMirrorSiteBranchUrl(domain, branchName) {
|
||||||
|
return `https://${domain}/${branchName.replace(/_/, '-')}`
|
||||||
|
},
|
||||||
|
_mapOptionForRow(opt) {
|
||||||
|
const prefix = '/assets/images/icon/mirrors/'
|
||||||
|
const copy = Object.assign({}, opt)
|
||||||
|
if (copy.iconName) copy.prefixIcon = prefix + copy.iconName
|
||||||
|
copy.content = function (h, ctx) {
|
||||||
|
const option = (ctx && ctx.option) || copy
|
||||||
|
const children = []
|
||||||
|
if (option.iconName) {
|
||||||
|
children.push(h('img', { src: prefix + option.iconName, width: 16, height: 16, style: 'vertical-align: middle' }))
|
||||||
|
}
|
||||||
|
children.push(h('span', { style: option.iconName ? 'margin-left: 8px' : '' }, option.label || option.value || ''))
|
||||||
|
return h('div', { style: 'display: flex; align-items: center' }, children)
|
||||||
|
}
|
||||||
|
return copy
|
||||||
|
},
|
||||||
|
_mapOptionForFilter(opt) {
|
||||||
|
const prefix = '/assets/images/icon/'
|
||||||
|
const copy = Object.assign({}, opt)
|
||||||
|
if (copy.iconName) copy.prefixIcon = prefix + copy.iconName
|
||||||
|
copy.content = function (h, ctx) {
|
||||||
|
const option = (ctx && ctx.option) || copy
|
||||||
|
const children = []
|
||||||
|
if (option.iconName) {
|
||||||
|
children.push(h('img', { src: prefix + option.iconName, width: 16, height: 16, style: 'vertical-align: middle' }))
|
||||||
|
}
|
||||||
|
children.push(h('span', { style: option.iconName ? 'margin-left: 8px' : '' }, option.label || option.value || ''))
|
||||||
|
return h('div', { style: 'display: flex; align-items: center' }, children)
|
||||||
|
}
|
||||||
|
if (Array.isArray(copy.children)) {
|
||||||
|
copy.children = copy.children.map((c) => this._mapOptionForFilter(c))
|
||||||
|
}
|
||||||
|
return copy
|
||||||
|
},
|
||||||
|
onCellStatusChange() {
|
||||||
|
if (this._debouncedUpdateRows) this._debouncedUpdateRows()
|
||||||
|
else this._updateRows()
|
||||||
|
},
|
||||||
|
onTableFilterChange(filters) {
|
||||||
|
try {
|
||||||
|
this.activeTableFilters = filters || {}
|
||||||
|
if (this._debouncedUpdateRows) this._debouncedUpdateRows()
|
||||||
|
else this._updateRows()
|
||||||
|
} catch {}
|
||||||
|
},
|
||||||
|
_updateColumns() {
|
||||||
|
try {
|
||||||
|
const keys = new Set(this.selectedColumnFilters || [])
|
||||||
|
this.columns = this.allColumns.filter((col) => col.colKey === 'name' || keys.has(col.colKey))
|
||||||
|
} catch (e) {
|
||||||
|
this.columns = this.allColumns
|
||||||
|
}
|
||||||
|
},
|
||||||
|
_updateRows() {
|
||||||
|
try {
|
||||||
|
this._computeFilteredData()
|
||||||
|
} catch {}
|
||||||
|
},
|
||||||
|
_computeFilteredData() {
|
||||||
|
try {
|
||||||
|
let rows = Array.isArray(this.originalData) ? this.originalData.slice() : []
|
||||||
|
if (Array.isArray(this.selectedRowFilters) && this.selectedRowFilters.length) {
|
||||||
|
const names = new Set(this.selectedRowFilters || [])
|
||||||
|
rows = rows.filter((r) => names.has(r.name))
|
||||||
|
}
|
||||||
|
const filters = this.activeTableFilters || {}
|
||||||
|
const filterKeys = Object.keys(filters)
|
||||||
|
if (filterKeys.length) {
|
||||||
|
rows = rows.filter((row) => {
|
||||||
|
for (let i = 0; i < filterKeys.length; i++) {
|
||||||
|
const key = filterKeys[i]
|
||||||
|
let value = filters[key]
|
||||||
|
if (Array.isArray(value)) value = value.length ? value[0] : undefined
|
||||||
|
if (!value) continue
|
||||||
|
const cell = Object.prototype.hasOwnProperty.call(row, key) ? row[key] : undefined
|
||||||
|
if (value === 'supported') {
|
||||||
|
if (cell !== true) return false
|
||||||
|
} else if (value === 'unsupported') {
|
||||||
|
if (cell !== false) return false
|
||||||
|
} else if (value === 'incompatible') {
|
||||||
|
if (cell !== 'incompatible') return false
|
||||||
|
} else {
|
||||||
|
continue
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return true
|
||||||
|
})
|
||||||
|
}
|
||||||
|
this.data = rows
|
||||||
|
} catch {}
|
||||||
|
},
|
||||||
|
_flattenFilterKeys(options) {
|
||||||
|
const set = new Set()
|
||||||
|
options.forEach((opt) => {
|
||||||
|
if (opt.group && Array.isArray(opt.children)) {
|
||||||
|
opt.children.forEach((child) => {
|
||||||
|
if (child && child.value) set.add(child.value)
|
||||||
|
})
|
||||||
|
} else if (Array.isArray(opt.children)) {
|
||||||
|
opt.children.forEach((child) => {
|
||||||
|
if (child && child.value) set.add(child.value)
|
||||||
|
})
|
||||||
|
} else if (opt.value) {
|
||||||
|
set.add(opt.value)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
return Array.from(set)
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -78,7 +78,7 @@ const OramaI18nData = {
|
|||||||
|
|
||||||
// get search box config
|
// get search box config
|
||||||
function getOramaSearchBoxConfig() {
|
function getOramaSearchBoxConfig() {
|
||||||
const currentLang = window.location.pathname.includes('/zh-Hant') ? 'zh-Hant' : window.location.pathname.includes('/en') ? 'en' : 'zh-Hans'
|
const currentLang = __isZhHant ? 'zh-Hant' : __isEn ? 'en' : 'zh-Hans'
|
||||||
return {
|
return {
|
||||||
themeConfig: {
|
themeConfig: {
|
||||||
// colors: {
|
// colors: {
|
||||||
@@ -139,7 +139,7 @@ function getOramaSearchBoxConfig() {
|
|||||||
// localization search box component
|
// localization search box component
|
||||||
function localizationOramaSearchBox(searchBox) {
|
function localizationOramaSearchBox(searchBox) {
|
||||||
if (!searchBox) return
|
if (!searchBox) return
|
||||||
const currentLang = window.location.pathname.includes('/zh-Hant') ? 'zh-Hant' : window.location.pathname.includes('/en') ? 'en' : 'zh-Hans'
|
const currentLang = __isZhHant ? 'zh-Hant' : __isEn ? 'en' : 'zh-Hans'
|
||||||
const askAiText = OramaI18nData[currentLang].askAiText
|
const askAiText = OramaI18nData[currentLang].askAiText
|
||||||
const searchText = OramaI18nData[currentLang].searchText
|
const searchText = OramaI18nData[currentLang].searchText
|
||||||
const observer = new MutationObserver((mutations, obs) => {
|
const observer = new MutationObserver((mutations, obs) => {
|
||||||
|
|||||||
@@ -10,9 +10,7 @@ search:
|
|||||||
|
|
||||||
## Chinese Mainland :flag-CN:
|
## Chinese Mainland :flag-CN:
|
||||||
|
|
||||||
> All mirror sites in the list below synchronize the `Debian`, `Ubuntu`, `CentOS`, `openSUSE`, and `openEuler` software repositories. The list is sorted by institution type, geographic location, and name length, and is not related to actual download speed.
|
<div id="mirrors-table"><p>Loading table <svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" style="vertical-align: -0.15rem"><g stroke="var(--md-default-fg-color--light)"><circle cx="12" cy="12" r="9.5" fill="none" stroke-linecap="round" stroke-width="3"><animate attributeName="stroke-dasharray" calcMode="spline" dur="1.5s" keySplines="0.42,0,0.58,1;0.42,0,0.58,1;0.42,0,0.58,1" keyTimes="0;0.475;0.95;1" repeatCount="indefinite" values="0 150;42 150;42 150;42 150"/><animate attributeName="stroke-dashoffset" calcMode="spline" dur="1.5s" keySplines="0.42,0,0.58,1;0.42,0,0.58,1;0.42,0,0.58,1" keyTimes="0;0.475;0.95;1" repeatCount="indefinite" values="0;-16;-59;-59"/></circle><animateTransform attributeName="transform" dur="2s" repeatCount="indefinite" type="rotate" values="0 12 12;360 12 12"/></g></svg></p></div>
|
||||||
|
|
||||||
<div id="mirrors-table"><p>Loading table <svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" style="vertical-align: -0.15rem"><g stroke="currentColor"><circle cx="12" cy="12" r="9.5" fill="none" stroke-linecap="round" stroke-width="3"><animate attributeName="stroke-dasharray" calcMode="spline" dur="1.5s" keySplines="0.42,0,0.58,1;0.42,0,0.58,1;0.42,0,0.58,1" keyTimes="0;0.475;0.95;1" repeatCount="indefinite" values="0 150;42 150;42 150;42 150"/><animate attributeName="stroke-dashoffset" calcMode="spline" dur="1.5s" keySplines="0.42,0,0.58,1;0.42,0,0.58,1;0.42,0,0.58,1" keyTimes="0;0.475;0.95;1" repeatCount="indefinite" values="0;-16;-59;-59"/></circle><animateTransform attributeName="transform" dur="2s" repeatCount="indefinite" type="rotate" values="0 12 12;360 12 12"/></g></svg></p></div>
|
|
||||||
|
|
||||||
???+ question "Usage Help"
|
???+ question "Usage Help"
|
||||||
|
|
||||||
@@ -72,6 +70,7 @@ search:
|
|||||||
| AS · OSS Planet · Taiwan :flag-TW: | [mirror.ossplanet.net](https://mirror.ossplanet.net "https://mirror.ossplanet.net") |
|
| AS · OSS Planet · Taiwan :flag-TW: | [mirror.ossplanet.net](https://mirror.ossplanet.net "https://mirror.ossplanet.net") |
|
||||||
| AS · National Yang Ming Chiao Tung University · Taiwan :flag-TW: | [linux.cs.nctu.edu.tw](https://linux.cs.nctu.edu.tw "https://linux.cs.nctu.edu.tw") |
|
| AS · National Yang Ming Chiao Tung University · Taiwan :flag-TW: | [linux.cs.nctu.edu.tw](https://linux.cs.nctu.edu.tw "https://linux.cs.nctu.edu.tw") |
|
||||||
| AS · Tamkang University · Taiwan :flag-TW: | [ftp.tku.edu.tw](https://ftp.tku.edu.tw "https://ftp.tku.edu.tw") |
|
| AS · Tamkang University · Taiwan :flag-TW: | [ftp.tku.edu.tw](https://ftp.tku.edu.tw "https://ftp.tku.edu.tw") |
|
||||||
|
| AS · Taiwan Digital Streaming · Taiwan :flag-TW: | [mirror.twds.com.tw](https://mirror.twds.com.tw "https://mirror.twds.com.tw") |
|
||||||
| AS · AniGil Linux Archive · Korea :flag-KR: | [mirror.anigil.com](https://mirror.anigil.com "https://mirror.anigil.com") |
|
| AS · AniGil Linux Archive · Korea :flag-KR: | [mirror.anigil.com](https://mirror.anigil.com "https://mirror.anigil.com") |
|
||||||
| AS · ICSCoE (Industrial Cyber Security Center of Excellence) · Japan :flag-JP: | [ftp.udx.icscoe.jp/Linux](https://ftp.udx.icscoe.jp/Linux "https://ftp.udx.icscoe.jp/Linux") |
|
| AS · ICSCoE (Industrial Cyber Security Center of Excellence) · Japan :flag-JP: | [ftp.udx.icscoe.jp/Linux](https://ftp.udx.icscoe.jp/Linux "https://ftp.udx.icscoe.jp/Linux") |
|
||||||
| AS · JAIST (Japan Advanced Institute of Science and Technology) · Japan :flag-JP: | [ftp.jaist.ac.jp/pub/Linux](https://ftp.jaist.ac.jp/pub/Linux "https://ftp.jaist.ac.jp/pub/Linux") |
|
| AS · JAIST (Japan Advanced Institute of Science and Technology) · Japan :flag-JP: | [ftp.jaist.ac.jp/pub/Linux](https://ftp.jaist.ac.jp/pub/Linux "https://ftp.jaist.ac.jp/pub/Linux") |
|
||||||
@@ -169,6 +168,7 @@ search:
|
|||||||
| AS · OSS Planet · Taiwan :flag-TW: | [mirror.ossplanet.net](https://mirror.ossplanet.net "https://mirror.ossplanet.net") |
|
| AS · OSS Planet · Taiwan :flag-TW: | [mirror.ossplanet.net](https://mirror.ossplanet.net "https://mirror.ossplanet.net") |
|
||||||
| AS · National Yang Ming Chiao Tung University · Taiwan :flag-TW: | [linux.cs.nctu.edu.tw](https://linux.cs.nctu.edu.tw "https://linux.cs.nctu.edu.tw") |
|
| AS · National Yang Ming Chiao Tung University · Taiwan :flag-TW: | [linux.cs.nctu.edu.tw](https://linux.cs.nctu.edu.tw "https://linux.cs.nctu.edu.tw") |
|
||||||
| AS · Tamkang University · Taiwan :flag-TW: | [ftp.tku.edu.tw](https://ftp.tku.edu.tw "https://ftp.tku.edu.tw") |
|
| AS · Tamkang University · Taiwan :flag-TW: | [ftp.tku.edu.tw](https://ftp.tku.edu.tw "https://ftp.tku.edu.tw") |
|
||||||
|
| AS · Taiwan Digital Streaming · Taiwan :flag-TW: | [mirror.twds.com.tw](https://mirror.twds.com.tw "https://mirror.twds.com.tw") |
|
||||||
| AS · AniGil Linux Archive · Korea :flag-KR: | [mirror.anigil.com](https://mirror.anigil.com "https://mirror.anigil.com") |
|
| AS · AniGil Linux Archive · Korea :flag-KR: | [mirror.anigil.com](https://mirror.anigil.com "https://mirror.anigil.com") |
|
||||||
| AS · ICSCoE (Industrial Cyber Security Center of Excellence) · Japan :flag-JP: | [ftp.udx.icscoe.jp/Linux](https://ftp.udx.icscoe.jp/Linux "https://ftp.udx.icscoe.jp/Linux") |
|
| AS · ICSCoE (Industrial Cyber Security Center of Excellence) · Japan :flag-JP: | [ftp.udx.icscoe.jp/Linux](https://ftp.udx.icscoe.jp/Linux "https://ftp.udx.icscoe.jp/Linux") |
|
||||||
| AS · JAIST (Japan Advanced Institute of Science and Technology) · Japan :flag-JP: | [ftp.jaist.ac.jp/pub/Linux](https://ftp.jaist.ac.jp/pub/Linux "https://ftp.jaist.ac.jp/pub/Linux") |
|
| AS · JAIST (Japan Advanced Institute of Science and Technology) · Japan :flag-JP: | [ftp.jaist.ac.jp/pub/Linux](https://ftp.jaist.ac.jp/pub/Linux "https://ftp.jaist.ac.jp/pub/Linux") |
|
||||||
|
|||||||
@@ -10,9 +10,7 @@ search:
|
|||||||
|
|
||||||
## 中国大陆 :flag-CN:
|
## 中国大陆 :flag-CN:
|
||||||
|
|
||||||
> 下方列表中的镜像站均同步了 `Debian` `Ubuntu` `CentOS` `openSUSE` `openEuler` 软件仓库,列表根据单位性质、地理位置、名称长度进行排序,与实际速度无关
|
<div id="mirrors-table"><p>正在加载表格 <svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" style="vertical-align: -0.15rem"><g stroke="var(--md-default-fg-color--light)"><circle cx="12" cy="12" r="9.5" fill="none" stroke-linecap="round" stroke-width="3"><animate attributeName="stroke-dasharray" calcMode="spline" dur="1.5s" keySplines="0.42,0,0.58,1;0.42,0,0.58,1;0.42,0,0.58,1" keyTimes="0;0.475;0.95;1" repeatCount="indefinite" values="0 150;42 150;42 150;42 150"/><animate attributeName="stroke-dashoffset" calcMode="spline" dur="1.5s" keySplines="0.42,0,0.58,1;0.42,0,0.58,1;0.42,0,0.58,1" keyTimes="0;0.475;0.95;1" repeatCount="indefinite" values="0;-16;-59;-59"/></circle><animateTransform attributeName="transform" dur="2s" repeatCount="indefinite" type="rotate" values="0 12 12;360 12 12"/></g></svg></p></div>
|
||||||
|
|
||||||
<div id="mirrors-table"><p>正在加载表格 <svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" style="vertical-align: -0.15rem"><g stroke="currentColor"><circle cx="12" cy="12" r="9.5" fill="none" stroke-linecap="round" stroke-width="3"><animate attributeName="stroke-dasharray" calcMode="spline" dur="1.5s" keySplines="0.42,0,0.58,1;0.42,0,0.58,1;0.42,0,0.58,1" keyTimes="0;0.475;0.95;1" repeatCount="indefinite" values="0 150;42 150;42 150;42 150"/><animate attributeName="stroke-dashoffset" calcMode="spline" dur="1.5s" keySplines="0.42,0,0.58,1;0.42,0,0.58,1;0.42,0,0.58,1" keyTimes="0;0.475;0.95;1" repeatCount="indefinite" values="0;-16;-59;-59"/></circle><animateTransform attributeName="transform" dur="2s" repeatCount="indefinite" type="rotate" values="0 12 12;360 12 12"/></g></svg></p></div>
|
|
||||||
|
|
||||||
???+ question "使用帮助"
|
???+ question "使用帮助"
|
||||||
|
|
||||||
@@ -72,6 +70,7 @@ search:
|
|||||||
| 亚洲 · OSS Planet · 台湾 :flag-TW: | [mirror.ossplanet.net](https://mirror.ossplanet.net "https://mirror.ossplanet.net") |
|
| 亚洲 · OSS Planet · 台湾 :flag-TW: | [mirror.ossplanet.net](https://mirror.ossplanet.net "https://mirror.ossplanet.net") |
|
||||||
| 亚洲 · 国立阳明交通大学 · 台湾 :flag-TW: | [linux.cs.nctu.edu.tw](https://linux.cs.nctu.edu.tw "https://linux.cs.nctu.edu.tw") |
|
| 亚洲 · 国立阳明交通大学 · 台湾 :flag-TW: | [linux.cs.nctu.edu.tw](https://linux.cs.nctu.edu.tw "https://linux.cs.nctu.edu.tw") |
|
||||||
| 亚洲 · 淡江大学 · 台湾 :flag-TW: | [ftp.tku.edu.tw](https://ftp.tku.edu.tw "https://ftp.tku.edu.tw") |
|
| 亚洲 · 淡江大学 · 台湾 :flag-TW: | [ftp.tku.edu.tw](https://ftp.tku.edu.tw "https://ftp.tku.edu.tw") |
|
||||||
|
| 亚洲 · Taiwan Digital Streaming · 台湾 :flag-TW: | [mirror.twds.com.tw](https://mirror.twds.com.tw "https://mirror.twds.com.tw") |
|
||||||
| 亚洲 · AniGil Linux Archive · 韩国 :flag-KR: | [mirror.anigil.com](https://mirror.anigil.com "https://mirror.anigil.com") |
|
| 亚洲 · AniGil Linux Archive · 韩国 :flag-KR: | [mirror.anigil.com](https://mirror.anigil.com "https://mirror.anigil.com") |
|
||||||
| 亚洲 · 工业网络安全中心(ICSCoE) · 日本 :flag-JP: | [ftp.udx.icscoe.jp/Linux](https://ftp.udx.icscoe.jp/Linux "https://ftp.udx.icscoe.jp/Linux") |
|
| 亚洲 · 工业网络安全中心(ICSCoE) · 日本 :flag-JP: | [ftp.udx.icscoe.jp/Linux](https://ftp.udx.icscoe.jp/Linux "https://ftp.udx.icscoe.jp/Linux") |
|
||||||
| 亚洲 · 北陆先端科学技术大学院大学(JAIST) · 日本 :flag-JP: | [ftp.jaist.ac.jp/pub/Linux](https://ftp.jaist.ac.jp/pub/Linux "https://ftp.jaist.ac.jp/pub/Linux") |
|
| 亚洲 · 北陆先端科学技术大学院大学(JAIST) · 日本 :flag-JP: | [ftp.jaist.ac.jp/pub/Linux](https://ftp.jaist.ac.jp/pub/Linux "https://ftp.jaist.ac.jp/pub/Linux") |
|
||||||
@@ -169,6 +168,7 @@ search:
|
|||||||
| 亚洲 · OSS Planet · 台湾 :flag-TW: | [mirror.ossplanet.net](https://mirror.ossplanet.net "https://mirror.ossplanet.net") |
|
| 亚洲 · OSS Planet · 台湾 :flag-TW: | [mirror.ossplanet.net](https://mirror.ossplanet.net "https://mirror.ossplanet.net") |
|
||||||
| 亚洲 · 国立阳明交通大学 · 台湾 :flag-TW: | [linux.cs.nctu.edu.tw](https://linux.cs.nctu.edu.tw "https://linux.cs.nctu.edu.tw") |
|
| 亚洲 · 国立阳明交通大学 · 台湾 :flag-TW: | [linux.cs.nctu.edu.tw](https://linux.cs.nctu.edu.tw "https://linux.cs.nctu.edu.tw") |
|
||||||
| 亚洲 · 淡江大学 · 台湾 :flag-TW: | [ftp.tku.edu.tw](https://ftp.tku.edu.tw "https://ftp.tku.edu.tw") |
|
| 亚洲 · 淡江大学 · 台湾 :flag-TW: | [ftp.tku.edu.tw](https://ftp.tku.edu.tw "https://ftp.tku.edu.tw") |
|
||||||
|
| 亚洲 · Taiwan Digital Streaming · 台湾 :flag-TW: | [mirror.twds.com.tw](https://mirror.twds.com.tw "https://mirror.twds.com.tw") |
|
||||||
| 亚洲 · AniGil Linux Archive · 韩国 :flag-KR: | [mirror.anigil.com](https://mirror.anigil.com "https://mirror.anigil.com") |
|
| 亚洲 · AniGil Linux Archive · 韩国 :flag-KR: | [mirror.anigil.com](https://mirror.anigil.com "https://mirror.anigil.com") |
|
||||||
| 亚洲 · 工业网络安全中心(ICSCoE) · 日本 :flag-JP: | [ftp.udx.icscoe.jp/Linux](https://ftp.udx.icscoe.jp/Linux "https://ftp.udx.icscoe.jp/Linux") |
|
| 亚洲 · 工业网络安全中心(ICSCoE) · 日本 :flag-JP: | [ftp.udx.icscoe.jp/Linux](https://ftp.udx.icscoe.jp/Linux "https://ftp.udx.icscoe.jp/Linux") |
|
||||||
| 亚洲 · 北陆先端科学技术大学院大学(JAIST) · 日本 :flag-JP: | [ftp.jaist.ac.jp/pub/Linux](https://ftp.jaist.ac.jp/pub/Linux "https://ftp.jaist.ac.jp/pub/Linux") |
|
| 亚洲 · 北陆先端科学技术大学院大学(JAIST) · 日本 :flag-JP: | [ftp.jaist.ac.jp/pub/Linux](https://ftp.jaist.ac.jp/pub/Linux "https://ftp.jaist.ac.jp/pub/Linux") |
|
||||||
|
|||||||
@@ -8,15 +8,9 @@ search:
|
|||||||
exclude: true
|
exclude: true
|
||||||
---
|
---
|
||||||
|
|
||||||
???+ question "友情提示"
|
|
||||||
|
|
||||||
本專案預設提供的軟體源列表主要服務位於中國大陸的用戶,因此對你來說該頁面上可能存在許多無用的資訊。作者沒有精力去採集和維護全世界的可用軟體源,因此可能需要透過命令選項自定義使用才能滿足你的實際需求,具體預設的國際軟體源詳見下方。
|
|
||||||
|
|
||||||
## 中國大陸 :flag-CN:
|
## 中國大陸 :flag-CN:
|
||||||
|
|
||||||
> 下方列表中的鏡像站均同步了 `Debian`、`Ubuntu`、`CentOS`、`openSUSE`、`openEuler` 軟體倉庫,列表根據單位性質、地理位置、名稱長度排序,與實際下載速度無關。
|
<div id="mirrors-table"><p>正在載入表格 <svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" style="vertical-align: -0.15rem"><g stroke="var(--md-default-fg-color--light)"><circle cx="12" cy="12" r="9.5" fill="none" stroke-linecap="round" stroke-width="3"><animate attributeName="stroke-dasharray" calcMode="spline" dur="1.5s" keySplines="0.42,0,0.58,1;0.42,0,0.58,1;0.42,0,0.58,1" keyTimes="0;0.475;0.95;1" repeatCount="indefinite" values="0 150;42 150;42 150;42 150"/><animate attributeName="stroke-dashoffset" calcMode="spline" dur="1.5s" keySplines="0.42,0,0.58,1;0.42,0,0.58,1;0.42,0,0.58,1" keyTimes="0;0.475;0.95;1" repeatCount="indefinite" values="0;-16;-59;-59"/></circle><animateTransform attributeName="transform" dur="2s" repeatCount="indefinite" type="rotate" values="0 12 12;360 12 12"/></g></svg></p></div>
|
||||||
|
|
||||||
<div id="mirrors-table"><p>正在載入表格 <svg xmlns="http://www.w3.org/2000/svg" width="18" height="18" viewBox="0 0 24 24" style="vertical-align: -0.15rem"><g stroke="currentColor"><circle cx="12" cy="12" r="9.5" fill="none" stroke-linecap="round" stroke-width="3"><animate attributeName="stroke-dasharray" calcMode="spline" dur="1.5s" keySplines="0.42,0,0.58,1;0.42,0,0.58,1;0.42,0,0.58,1" keyTimes="0;0.475;0.95;1" repeatCount="indefinite" values="0 150;42 150;42 150;42 150"/><animate attributeName="stroke-dashoffset" calcMode="spline" dur="1.5s" keySplines="0.42,0,0.58,1;0.42,0,0.58,1;0.42,0,0.58,1" keyTimes="0;0.475;0.95;1" repeatCount="indefinite" values="0;-16;-59;-59"/></circle><animateTransform attributeName="transform" dur="2s" repeatCount="indefinite" type="rotate" values="0 12 12;360 12 12"/></g></svg></p></div>
|
|
||||||
|
|
||||||
???+ question "使用幫助"
|
???+ question "使用幫助"
|
||||||
|
|
||||||
@@ -76,6 +70,7 @@ search:
|
|||||||
| 亞洲 · OSS Planet · 臺灣 :flag-TW: | [mirror.ossplanet.net](https://mirror.ossplanet.net "https://mirror.ossplanet.net") |
|
| 亞洲 · OSS Planet · 臺灣 :flag-TW: | [mirror.ossplanet.net](https://mirror.ossplanet.net "https://mirror.ossplanet.net") |
|
||||||
| 亞洲 · 國立陽明交通大學 · 臺灣 :flag-TW: | [linux.cs.nctu.edu.tw](https://linux.cs.nctu.edu.tw "https://linux.cs.nctu.edu.tw") |
|
| 亞洲 · 國立陽明交通大學 · 臺灣 :flag-TW: | [linux.cs.nctu.edu.tw](https://linux.cs.nctu.edu.tw "https://linux.cs.nctu.edu.tw") |
|
||||||
| 亞洲 · 淡江大學 · 臺灣 :flag-TW: | [ftp.tku.edu.tw](https://ftp.tku.edu.tw "https://ftp.tku.edu.tw") |
|
| 亞洲 · 淡江大學 · 臺灣 :flag-TW: | [ftp.tku.edu.tw](https://ftp.tku.edu.tw "https://ftp.tku.edu.tw") |
|
||||||
|
| 亞洲 · Taiwan Digital Streaming · 臺灣 :flag-TW: | [mirror.twds.com.tw](https://mirror.twds.com.tw "https://mirror.twds.com.tw") |
|
||||||
| 亞洲 · AniGil Linux Archive · 韓國 :flag-KR: | [mirror.anigil.com](https://mirror.anigil.com "https://mirror.anigil.com") |
|
| 亞洲 · AniGil Linux Archive · 韓國 :flag-KR: | [mirror.anigil.com](https://mirror.anigil.com "https://mirror.anigil.com") |
|
||||||
| 亞洲 · 工業網路安全中心(ICSCoE) · 日本 :flag-JP: | [ftp.udx.icscoe.jp/Linux](https://ftp.udx.icscoe.jp/Linux "https://ftp.udx.icscoe.jp/Linux") |
|
| 亞洲 · 工業網路安全中心(ICSCoE) · 日本 :flag-JP: | [ftp.udx.icscoe.jp/Linux](https://ftp.udx.icscoe.jp/Linux "https://ftp.udx.icscoe.jp/Linux") |
|
||||||
| 亞洲 · 北陸先端科學技術大學院大學(JAIST) · 日本 :flag-JP: | [ftp.jaist.ac.jp/pub/Linux](https://ftp.jaist.ac.jp/pub/Linux "https://ftp.jaist.ac.jp/pub/Linux") |
|
| 亞洲 · 北陸先端科學技術大學院大學(JAIST) · 日本 :flag-JP: | [ftp.jaist.ac.jp/pub/Linux](https://ftp.jaist.ac.jp/pub/Linux "https://ftp.jaist.ac.jp/pub/Linux") |
|
||||||
@@ -173,6 +168,7 @@ search:
|
|||||||
| 亞洲 · OSS Planet · 臺灣 :flag-TW: | [mirror.ossplanet.net](https://mirror.ossplanet.net "https://mirror.ossplanet.net") |
|
| 亞洲 · OSS Planet · 臺灣 :flag-TW: | [mirror.ossplanet.net](https://mirror.ossplanet.net "https://mirror.ossplanet.net") |
|
||||||
| 亞洲 · 國立陽明交通大學 · 臺灣 :flag-TW: | [linux.cs.nctu.edu.tw](https://linux.cs.nctu.edu.tw "https://linux.cs.nctu.edu.tw") |
|
| 亞洲 · 國立陽明交通大學 · 臺灣 :flag-TW: | [linux.cs.nctu.edu.tw](https://linux.cs.nctu.edu.tw "https://linux.cs.nctu.edu.tw") |
|
||||||
| 亞洲 · 淡江大學 · 臺灣 :flag-TW: | [ftp.tku.edu.tw](https://ftp.tku.edu.tw "https://ftp.tku.edu.tw") |
|
| 亞洲 · 淡江大學 · 臺灣 :flag-TW: | [ftp.tku.edu.tw](https://ftp.tku.edu.tw "https://ftp.tku.edu.tw") |
|
||||||
|
| 亞洲 · Taiwan Digital Streaming · 臺灣 :flag-TW: | [mirror.twds.com.tw](https://mirror.twds.com.tw "https://mirror.twds.com.tw") |
|
||||||
| 亞洲 · AniGil Linux Archive · 韓國 :flag-KR: | [mirror.anigil.com](https://mirror.anigil.com "https://mirror.anigil.com") |
|
| 亞洲 · AniGil Linux Archive · 韓國 :flag-KR: | [mirror.anigil.com](https://mirror.anigil.com "https://mirror.anigil.com") |
|
||||||
| 亞洲 · 工業網路安全中心(ICSCoE) · 日本 :flag-JP: | [ftp.udx.icscoe.jp/Linux](https://ftp.udx.icscoe.jp/Linux "https://ftp.udx.icscoe.jp/Linux") |
|
| 亞洲 · 工業網路安全中心(ICSCoE) · 日本 :flag-JP: | [ftp.udx.icscoe.jp/Linux](https://ftp.udx.icscoe.jp/Linux "https://ftp.udx.icscoe.jp/Linux") |
|
||||||
| 亞洲 · 北陸先端科學技術大學院大學(JAIST) · 日本 :flag-JP: | [ftp.jaist.ac.jp/pub/Linux](https://ftp.jaist.ac.jp/pub/Linux "https://ftp.jaist.ac.jp/pub/Linux") |
|
| 亞洲 · 北陸先端科學技術大學院大學(JAIST) · 日本 :flag-JP: | [ftp.jaist.ac.jp/pub/Linux](https://ftp.jaist.ac.jp/pub/Linux "https://ftp.jaist.ac.jp/pub/Linux") |
|
||||||
|
|||||||
@@ -209,7 +209,7 @@ hide:
|
|||||||
|
|
||||||
<!-- termynal -->
|
<!-- termynal -->
|
||||||
```
|
```
|
||||||
$ bash <(curl -sSL https://linuxmirrors.cn/main.sh) --help
|
$ bash <(curl -sSL https://linuxmirrors.cn/docker.sh) --zh-hant --help
|
||||||
|
|
||||||
命令選項(名稱/含義/值):
|
命令選項(名稱/含義/值):
|
||||||
|
|
||||||
|
|||||||
@@ -8,6 +8,7 @@
|
|||||||
--hero-background-image: linear-gradient(90deg, rgb(104 104 104) 50%, rgb(104 104 104) 50%);
|
--hero-background-image: linear-gradient(90deg, rgb(104 104 104) 50%, rgb(104 104 104) 50%);
|
||||||
--navbar-background: hsla(240, 9%, 75%, 0.33);
|
--navbar-background: hsla(240, 9%, 75%, 0.33);
|
||||||
--component-border-radius: 8px;
|
--component-border-radius: 8px;
|
||||||
|
--td-radius-default: 5px;
|
||||||
--component-hover-color: rgba(0, 0, 0, 0.05);
|
--component-hover-color: rgba(0, 0, 0, 0.05);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -710,6 +711,33 @@
|
|||||||
color: var(--md-default-fg-color);
|
color: var(--md-default-fg-color);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.t-tag.t-size-l {
|
||||||
|
height: var(--td-comp-size-xs);
|
||||||
|
padding: 0 var(--td-comp-paddingLR-s);
|
||||||
|
}
|
||||||
|
|
||||||
|
.t-tag-input .t-input.t-size-l {
|
||||||
|
min-height: var(--td-comp-size-m);
|
||||||
|
padding: 0 var(--td-comp-paddingLR-s) 0 var(--td-comp-margin-xs);
|
||||||
|
}
|
||||||
|
|
||||||
|
.t-table--hoverable tbody tr:hover {
|
||||||
|
background-color: rgba(0, 0, 0, 0.016) !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.t-table--column-fixed .t-table__cell--fixed-left {
|
||||||
|
z-index: 3;
|
||||||
|
background-color: var(--md-default-bg-color);
|
||||||
|
}
|
||||||
|
|
||||||
|
.t-table__filter-icon-wrap {
|
||||||
|
color: var(--md-default-fg-color--light);
|
||||||
|
}
|
||||||
|
|
||||||
|
.t-table__filter-pop .t-table__filter-pop-content .t-table__filter-pop-content-inner {
|
||||||
|
padding: 6px var(--td-comp-paddingLR-l);
|
||||||
|
}
|
||||||
|
|
||||||
[theme-mode="dark"] .t-table {
|
[theme-mode="dark"] .t-table {
|
||||||
--td-component-border: hsla(225deg, 15%, 95%, 0.12) !important;
|
--td-component-border: hsla(225deg, 15%, 95%, 0.12) !important;
|
||||||
}
|
}
|
||||||
@@ -718,18 +746,10 @@
|
|||||||
--td-warning-color-light: #cf6e2d48 !important;
|
--td-warning-color-light: #cf6e2d48 !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.t-table--hoverable tbody tr:hover {
|
|
||||||
background-color: rgba(0, 0, 0, 0.016) !important;
|
|
||||||
}
|
|
||||||
|
|
||||||
[theme-mode="dark"] .t-table--hoverable tbody tr:hover {
|
[theme-mode="dark"] .t-table--hoverable tbody tr:hover {
|
||||||
background-color: rgba(240, 241, 244, 0.016) !important;
|
background-color: rgba(240, 241, 244, 0.016) !important;
|
||||||
}
|
}
|
||||||
|
|
||||||
.t-table--column-fixed .t-table__cell--fixed-left {
|
|
||||||
z-index: 4;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* termynal 插件 */
|
/* termynal 插件 */
|
||||||
.termy {
|
.termy {
|
||||||
padding: 65px 25px 35px !important;
|
padding: 65px 25px 35px !important;
|
||||||
|
|||||||
@@ -104,18 +104,19 @@ Issue Report {}'
|
|||||||
['mirrors.dockerCE.0']='Alibaba Cloud'
|
['mirrors.dockerCE.0']='Alibaba Cloud'
|
||||||
['mirrors.dockerCE.1']='Tencent Cloud'
|
['mirrors.dockerCE.1']='Tencent Cloud'
|
||||||
['mirrors.dockerCE.2']='Huawei Cloud'
|
['mirrors.dockerCE.2']='Huawei Cloud'
|
||||||
['mirrors.dockerCE.3']='NetEase'
|
['mirrors.dockerCE.3']='China Mobile Cloud'
|
||||||
['mirrors.dockerCE.4']='Volcengine'
|
['mirrors.dockerCE.4']='NetEase'
|
||||||
['mirrors.dockerCE.5']='Microsoft Azure China'
|
['mirrors.dockerCE.5']='Volcengine'
|
||||||
['mirrors.dockerCE.6']='Tsinghua University'
|
['mirrors.dockerCE.6']='Microsoft Azure China'
|
||||||
['mirrors.dockerCE.7']='Peking University'
|
['mirrors.dockerCE.7']='Tsinghua University'
|
||||||
['mirrors.dockerCE.8']='Zhejiang University'
|
['mirrors.dockerCE.8']='Peking University'
|
||||||
['mirrors.dockerCE.9']='Nanjing University'
|
['mirrors.dockerCE.9']='Zhejiang University'
|
||||||
['mirrors.dockerCE.10']='Shanghai Jiao Tong University'
|
['mirrors.dockerCE.10']='Nanjing University'
|
||||||
['mirrors.dockerCE.11']='Chongqing University of Posts and Telecommunications'
|
['mirrors.dockerCE.11']='Shanghai Jiao Tong University'
|
||||||
['mirrors.dockerCE.12']='University of Science and Technology of China'
|
['mirrors.dockerCE.12']='Chongqing University of Posts and Telecommunications'
|
||||||
['mirrors.dockerCE.13']='Institute of Software, Chinese Academy of Sciences'
|
['mirrors.dockerCE.13']='University of Science and Technology of China'
|
||||||
['mirrors.dockerCE.14']='Official Source'
|
['mirrors.dockerCE.14']='Institute of Software, Chinese Academy of Sciences'
|
||||||
|
['mirrors.dockerCE.15']='Official Source'
|
||||||
['mirrors.registry.0']='Millisecond Mirror (recommended)'
|
['mirrors.registry.0']='Millisecond Mirror (recommended)'
|
||||||
['mirrors.registry.1']='Docker Proxy'
|
['mirrors.registry.1']='Docker Proxy'
|
||||||
['mirrors.registry.2']='DaoCloud'
|
['mirrors.registry.2']='DaoCloud'
|
||||||
|
|||||||
@@ -104,18 +104,19 @@ MESSAGE_CONTENTS=(
|
|||||||
['mirrors.dockerCE.0']='阿里云'
|
['mirrors.dockerCE.0']='阿里云'
|
||||||
['mirrors.dockerCE.1']='腾讯云'
|
['mirrors.dockerCE.1']='腾讯云'
|
||||||
['mirrors.dockerCE.2']='华为云'
|
['mirrors.dockerCE.2']='华为云'
|
||||||
['mirrors.dockerCE.3']='网易'
|
['mirrors.dockerCE.3']='移动云'
|
||||||
['mirrors.dockerCE.4']='火山引擎'
|
['mirrors.dockerCE.4']='网易'
|
||||||
['mirrors.dockerCE.5']='微软 Azure 中国'
|
['mirrors.dockerCE.5']='火山引擎'
|
||||||
['mirrors.dockerCE.6']='清华大学'
|
['mirrors.dockerCE.6']='微软 Azure 中国'
|
||||||
['mirrors.dockerCE.7']='北京大学'
|
['mirrors.dockerCE.7']='清华大学'
|
||||||
['mirrors.dockerCE.8']='浙江大学'
|
['mirrors.dockerCE.8']='北京大学'
|
||||||
['mirrors.dockerCE.9']='南京大学'
|
['mirrors.dockerCE.9']='浙江大学'
|
||||||
['mirrors.dockerCE.10']='上海交通大学'
|
['mirrors.dockerCE.10']='南京大学'
|
||||||
['mirrors.dockerCE.11']='重庆邮电大学'
|
['mirrors.dockerCE.11']='上海交通大学'
|
||||||
['mirrors.dockerCE.12']='中国科学技术大学'
|
['mirrors.dockerCE.12']='重庆邮电大学'
|
||||||
['mirrors.dockerCE.13']='中国科学院软件研究所'
|
['mirrors.dockerCE.13']='中国科学技术大学'
|
||||||
['mirrors.dockerCE.14']='官方源'
|
['mirrors.dockerCE.14']='中国科学院软件研究所'
|
||||||
|
['mirrors.dockerCE.15']='官方源'
|
||||||
['mirrors.registry.0']='毫秒镜像(推荐)'
|
['mirrors.registry.0']='毫秒镜像(推荐)'
|
||||||
['mirrors.registry.1']='Docker Proxy'
|
['mirrors.registry.1']='Docker Proxy'
|
||||||
['mirrors.registry.2']='DaoCloud 道客'
|
['mirrors.registry.2']='DaoCloud 道客'
|
||||||
|
|||||||
@@ -104,18 +104,19 @@ MESSAGE_CONTENTS=(
|
|||||||
['mirrors.dockerCE.0']='阿里雲'
|
['mirrors.dockerCE.0']='阿里雲'
|
||||||
['mirrors.dockerCE.1']='騰訊雲'
|
['mirrors.dockerCE.1']='騰訊雲'
|
||||||
['mirrors.dockerCE.2']='華為雲'
|
['mirrors.dockerCE.2']='華為雲'
|
||||||
['mirrors.dockerCE.3']='網易'
|
['mirrors.dockerCE.3']='移動雲'
|
||||||
['mirrors.dockerCE.4']='火山引擎'
|
['mirrors.dockerCE.4']='網易'
|
||||||
['mirrors.dockerCE.5']='微軟 Azure 中國'
|
['mirrors.dockerCE.5']='火山引擎'
|
||||||
['mirrors.dockerCE.6']='清華大學'
|
['mirrors.dockerCE.6']='微軟 Azure 中國'
|
||||||
['mirrors.dockerCE.7']='北京大學'
|
['mirrors.dockerCE.7']='清華大學'
|
||||||
['mirrors.dockerCE.8']='浙江大學'
|
['mirrors.dockerCE.8']='北京大學'
|
||||||
['mirrors.dockerCE.9']='南京大學'
|
['mirrors.dockerCE.9']='浙江大學'
|
||||||
['mirrors.dockerCE.10']='上海交通大學'
|
['mirrors.dockerCE.10']='南京大學'
|
||||||
['mirrors.dockerCE.11']='重慶郵電大學'
|
['mirrors.dockerCE.11']='上海交通大學'
|
||||||
['mirrors.dockerCE.12']='中國科學技術大學'
|
['mirrors.dockerCE.12']='重慶郵電大學'
|
||||||
['mirrors.dockerCE.13']='中國科學院軟體研究所'
|
['mirrors.dockerCE.13']='中國科學技術大學'
|
||||||
['mirrors.dockerCE.14']='官方源'
|
['mirrors.dockerCE.14']='中國科學院軟體研究所'
|
||||||
|
['mirrors.dockerCE.15']='官方源'
|
||||||
['mirrors.registry.0']='毫秒鏡像(推薦)'
|
['mirrors.registry.0']='毫秒鏡像(推薦)'
|
||||||
['mirrors.registry.1']='Docker Proxy'
|
['mirrors.registry.1']='Docker Proxy'
|
||||||
['mirrors.registry.2']='DaoCloud 道客'
|
['mirrors.registry.2']='DaoCloud 道客'
|
||||||
|
|||||||
@@ -111,18 +111,20 @@ Issue Report {}'
|
|||||||
['mirrors.default.0']='Alibaba Cloud'
|
['mirrors.default.0']='Alibaba Cloud'
|
||||||
['mirrors.default.1']='Tencent Cloud'
|
['mirrors.default.1']='Tencent Cloud'
|
||||||
['mirrors.default.2']='Huawei Cloud'
|
['mirrors.default.2']='Huawei Cloud'
|
||||||
['mirrors.default.3']='NetEase'
|
['mirrors.default.3']='China Mobile Cloud'
|
||||||
['mirrors.default.4']='Volcengine'
|
['mirrors.default.4']='China Telecom Cloud'
|
||||||
['mirrors.default.5']='Tsinghua University'
|
['mirrors.default.5']='NetEase'
|
||||||
['mirrors.default.6']='Peking University'
|
['mirrors.default.6']='Volcengine'
|
||||||
['mirrors.default.7']='Zhejiang University'
|
['mirrors.default.7']='Tsinghua University'
|
||||||
['mirrors.default.8']='Nanjing University'
|
['mirrors.default.8']='Peking University'
|
||||||
['mirrors.default.9']='Lanzhou University'
|
['mirrors.default.9']='Zhejiang University'
|
||||||
['mirrors.default.10']='Shanghai Jiao Tong University'
|
['mirrors.default.10']='Nanjing University'
|
||||||
['mirrors.default.11']='CQUPT'
|
['mirrors.default.11']='Lanzhou University'
|
||||||
['mirrors.default.12']='USTC'
|
['mirrors.default.12']='Shanghai Jiao Tong University'
|
||||||
['mirrors.default.13']='ISCAS'
|
['mirrors.default.13']='Chongqing University of Posts and Telecommunications'
|
||||||
['mirrors.default.14']='Official Source'
|
['mirrors.default.14']='University of Science and Technology of China'
|
||||||
|
['mirrors.default.15']='Institute of Software, Chinese Academy of Sciences'
|
||||||
|
['mirrors.default.16']='Official Source'
|
||||||
['mirrors.edu.0']='Peking University'
|
['mirrors.edu.0']='Peking University'
|
||||||
['mirrors.edu.1']='Beijing Jiaotong University'
|
['mirrors.edu.1']='Beijing Jiaotong University'
|
||||||
['mirrors.edu.2']='Beijing Foreign Studies University'
|
['mirrors.edu.2']='Beijing Foreign Studies University'
|
||||||
@@ -163,63 +165,64 @@ Issue Report {}'
|
|||||||
['mirrors.abroad.6']='AS · OSS Planet · Taiwan'
|
['mirrors.abroad.6']='AS · OSS Planet · Taiwan'
|
||||||
['mirrors.abroad.7']='AS · National Yang Ming Chiao Tung University · Taiwan'
|
['mirrors.abroad.7']='AS · National Yang Ming Chiao Tung University · Taiwan'
|
||||||
['mirrors.abroad.8']='AS · Tamkang University · Taiwan'
|
['mirrors.abroad.8']='AS · Tamkang University · Taiwan'
|
||||||
['mirrors.abroad.9']='AS · AniGil Linux Archive · Korea'
|
['mirrors.abroad.9']='AS · Taiwan Digital Streaming · Taiwan'
|
||||||
['mirrors.abroad.10']='AS · ICSCoE (Industrial Cyber Security Center of Excellence) · Japan'
|
['mirrors.abroad.10']='AS · AniGil Linux Archive · Korea'
|
||||||
['mirrors.abroad.11']='AS · JAIST (Japan Advanced Institute of Science and Technology) · Japan'
|
['mirrors.abroad.11']='AS · ICSCoE (Industrial Cyber Security Center of Excellence) · Japan'
|
||||||
['mirrors.abroad.12']='AS · Yamagata University · Japan'
|
['mirrors.abroad.12']='AS · JAIST (Japan Advanced Institute of Science and Technology) · Japan'
|
||||||
['mirrors.abroad.13']='AS · xTom · Japan'
|
['mirrors.abroad.13']='AS · Yamagata University · Japan'
|
||||||
['mirrors.abroad.14']='AS · GB Network Solutions · Malaysia'
|
['mirrors.abroad.14']='AS · xTom · Japan'
|
||||||
['mirrors.abroad.15']='AS · Khon Kaen University · Thailand'
|
['mirrors.abroad.15']='AS · GB Network Solutions · Malaysia'
|
||||||
['mirrors.abroad.16']='EU · Vorboss Ltd · United Kiongdom'
|
['mirrors.abroad.16']='AS · Khon Kaen University · Thailand'
|
||||||
['mirrors.abroad.17']='EU · QuickHost · United Kiongdom'
|
['mirrors.abroad.17']='EU · Vorboss Ltd · United Kiongdom'
|
||||||
['mirrors.abroad.18']='EU · dogado · Germany'
|
['mirrors.abroad.18']='EU · QuickHost · United Kiongdom'
|
||||||
['mirrors.abroad.19']='EU · xTom · Germany'
|
['mirrors.abroad.19']='EU · dogado · Germany'
|
||||||
['mirrors.abroad.20']='EU · RWTH Aachen University · Germany'
|
['mirrors.abroad.20']='EU · xTom · Germany'
|
||||||
['mirrors.abroad.21']='EU · Dresden University (AG DSN) · Germany'
|
['mirrors.abroad.21']='EU · RWTH Aachen University · Germany'
|
||||||
['mirrors.abroad.22']='EU · CCIN2P3 · France'
|
['mirrors.abroad.22']='EU · Dresden University (AG DSN) · Germany'
|
||||||
['mirrors.abroad.23']='EU · Ircam · France'
|
['mirrors.abroad.23']='EU · CCIN2P3 · France'
|
||||||
['mirrors.abroad.24']='EU · Crans · France'
|
['mirrors.abroad.24']='EU · Ircam · France'
|
||||||
['mirrors.abroad.25']='EU · CRIHAN · France'
|
['mirrors.abroad.25']='EU · Crans · France'
|
||||||
['mirrors.abroad.26']='EU · xTom · Netherlands'
|
['mirrors.abroad.26']='EU · CRIHAN · France'
|
||||||
['mirrors.abroad.27']='EU · DataPacket · Netherlands'
|
['mirrors.abroad.27']='EU · xTom · Netherlands'
|
||||||
['mirrors.abroad.28']='EU · Linux Kernel · Netherlands'
|
['mirrors.abroad.28']='EU · DataPacket · Netherlands'
|
||||||
['mirrors.abroad.29']='EU · xTom · Estonia'
|
['mirrors.abroad.29']='EU · Linux Kernel · Netherlands'
|
||||||
['mirrors.abroad.30']='EU · netsite · Denmark'
|
['mirrors.abroad.30']='EU · xTom · Estonia'
|
||||||
['mirrors.abroad.31']='EU · Dotsrc · Denmark'
|
['mirrors.abroad.31']='EU · netsite · Denmark'
|
||||||
['mirrors.abroad.32']='EU · Academic Computer Club · Sweden'
|
['mirrors.abroad.32']='EU · Dotsrc · Denmark'
|
||||||
['mirrors.abroad.33']='EU · Lysator · Sweden'
|
['mirrors.abroad.33']='EU · Academic Computer Club · Sweden'
|
||||||
['mirrors.abroad.34']='EU · Yandex · Russia'
|
['mirrors.abroad.34']='EU · Lysator · Sweden'
|
||||||
['mirrors.abroad.35']='EU · ia64 · Russia'
|
['mirrors.abroad.35']='EU · Yandex · Russia'
|
||||||
['mirrors.abroad.36']='EU · Truenetwork · Russia'
|
['mirrors.abroad.36']='EU · ia64 · Russia'
|
||||||
['mirrors.abroad.37']='EU · Belgian Research Network · Belgium'
|
['mirrors.abroad.37']='EU · Truenetwork · Russia'
|
||||||
['mirrors.abroad.38']='EU · University of Crete Computer Center · Greece'
|
['mirrors.abroad.38']='EU · Belgian Research Network · Belgium'
|
||||||
['mirrors.abroad.39']='EU · Masaryk University Faculty of Informatics · Czech'
|
['mirrors.abroad.39']='EU · University of Crete Computer Center · Greece'
|
||||||
['mirrors.abroad.40']='EU · Czech Technical University Student Club (Silicon Hill) · Czech'
|
['mirrors.abroad.40']='EU · Masaryk University Faculty of Informatics · Czech'
|
||||||
['mirrors.abroad.41']='EU · Vodafone · Czech'
|
['mirrors.abroad.41']='EU · Czech Technical University Student Club (Silicon Hill) · Czech'
|
||||||
['mirrors.abroad.42']='EU · CZ.NIC · Czech'
|
['mirrors.abroad.42']='EU · Vodafone · Czech'
|
||||||
['mirrors.abroad.43']='EU · ETH Zurich · Switzerland'
|
['mirrors.abroad.43']='EU · CZ.NIC · Czech'
|
||||||
['mirrors.abroad.44']='NA · Linux Kernel · United States'
|
['mirrors.abroad.44']='EU · ETH Zurich · Switzerland'
|
||||||
['mirrors.abroad.45']='NA · MIT · United States'
|
['mirrors.abroad.45']='NA · Linux Kernel · United States'
|
||||||
['mirrors.abroad.46']='NA · Princeton University Department of Mathematics · United States'
|
['mirrors.abroad.46']='NA · MIT · United States'
|
||||||
['mirrors.abroad.47']='NA · Oregon State University Open Source Lab · United States'
|
['mirrors.abroad.47']='NA · Princeton University Department of Mathematics · United States'
|
||||||
['mirrors.abroad.48']='NA · Fremont Cabal Internet Exchange(FCIX) · United States'
|
['mirrors.abroad.48']='NA · Oregon State University Open Source Lab · United States'
|
||||||
['mirrors.abroad.49']='NA · xTom · United States'
|
['mirrors.abroad.49']='NA · Fremont Cabal Internet Exchange(FCIX) · United States'
|
||||||
['mirrors.abroad.50']='NA · Steadfast · United States'
|
['mirrors.abroad.50']='NA · xTom · United States'
|
||||||
['mirrors.abroad.51']='NA · University of British Columbia · Canada'
|
['mirrors.abroad.51']='NA · Steadfast · United States'
|
||||||
['mirrors.abroad.52']='NA · GoCodeIT · Canada'
|
['mirrors.abroad.52']='NA · University of British Columbia · Canada'
|
||||||
['mirrors.abroad.53']='NA · Switch · Canada'
|
['mirrors.abroad.53']='NA · GoCodeIT · Canada'
|
||||||
['mirrors.abroad.54']='SA · PoP-SC · Brazil'
|
['mirrors.abroad.54']='NA · Switch · Canada'
|
||||||
['mirrors.abroad.55']='SA · State University of Ponta Grossa · Brazil'
|
['mirrors.abroad.55']='SA · PoP-SC · Brazil'
|
||||||
['mirrors.abroad.56']='SA · UFSCar · Brazil'
|
['mirrors.abroad.56']='SA · State University of Ponta Grossa · Brazil'
|
||||||
['mirrors.abroad.57']='SA · Sysarmy Community · Argentina'
|
['mirrors.abroad.57']='SA · UFSCar · Brazil'
|
||||||
['mirrors.abroad.58']='OC · Fremont Cabal Internet Exchange(FCIX) · Australia'
|
['mirrors.abroad.58']='SA · Sysarmy Community · Argentina'
|
||||||
['mirrors.abroad.59']='OC · AARNet · Australia'
|
['mirrors.abroad.59']='OC · Fremont Cabal Internet Exchange(FCIX) · Australia'
|
||||||
['mirrors.abroad.60']='OC · DataMossa · Australia'
|
['mirrors.abroad.60']='OC · AARNet · Australia'
|
||||||
['mirrors.abroad.61']='OC · Amaze · Australia'
|
['mirrors.abroad.61']='OC · DataMossa · Australia'
|
||||||
['mirrors.abroad.62']='OC · xTom · Australia'
|
['mirrors.abroad.62']='OC · Amaze · Australia'
|
||||||
['mirrors.abroad.63']='OC · Over the Wire · Australia'
|
['mirrors.abroad.63']='OC · xTom · Australia'
|
||||||
['mirrors.abroad.64']='OC · Free Software Mirror Group · New Zealand'
|
['mirrors.abroad.64']='OC · Over the Wire · Australia'
|
||||||
['mirrors.abroad.65']='AF · Liquid Telecom · Kenya'
|
['mirrors.abroad.65']='OC · Free Software Mirror Group · New Zealand'
|
||||||
['mirrors.abroad.66']='AF · Dimension Data · South Africa'
|
['mirrors.abroad.66']='AF · Liquid Telecom · Kenya'
|
||||||
['mirrors.abroad.67']='Official Source'
|
['mirrors.abroad.67']='AF · Dimension Data · South Africa'
|
||||||
|
['mirrors.abroad.68']='Official Source'
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -111,18 +111,20 @@ MESSAGE_CONTENTS=(
|
|||||||
['mirrors.default.0']='阿里云'
|
['mirrors.default.0']='阿里云'
|
||||||
['mirrors.default.1']='腾讯云'
|
['mirrors.default.1']='腾讯云'
|
||||||
['mirrors.default.2']='华为云'
|
['mirrors.default.2']='华为云'
|
||||||
['mirrors.default.3']='网易'
|
['mirrors.default.3']='移动云'
|
||||||
['mirrors.default.4']='火山引擎'
|
['mirrors.default.4']='天翼云'
|
||||||
['mirrors.default.5']='清华大学'
|
['mirrors.default.5']='网易'
|
||||||
['mirrors.default.6']='北京大学'
|
['mirrors.default.6']='火山引擎'
|
||||||
['mirrors.default.7']='浙江大学'
|
['mirrors.default.7']='清华大学'
|
||||||
['mirrors.default.8']='南京大学'
|
['mirrors.default.8']='北京大学'
|
||||||
['mirrors.default.9']='兰州大学'
|
['mirrors.default.9']='浙江大学'
|
||||||
['mirrors.default.10']='上海交通大学'
|
['mirrors.default.10']='南京大学'
|
||||||
['mirrors.default.11']='重庆邮电大学'
|
['mirrors.default.11']='兰州大学'
|
||||||
['mirrors.default.12']='中国科学技术大学'
|
['mirrors.default.12']='上海交通大学'
|
||||||
['mirrors.default.13']='中国科学院软件研究所'
|
['mirrors.default.13']='重庆邮电大学'
|
||||||
['mirrors.default.14']='官方源'
|
['mirrors.default.14']='中国科学技术大学'
|
||||||
|
['mirrors.default.15']='中国科学院软件研究所'
|
||||||
|
['mirrors.default.16']='官方源'
|
||||||
['mirrors.edu.0']='北京大学'
|
['mirrors.edu.0']='北京大学'
|
||||||
['mirrors.edu.1']='北京交通大学'
|
['mirrors.edu.1']='北京交通大学'
|
||||||
['mirrors.edu.2']='北京外国语大学'
|
['mirrors.edu.2']='北京外国语大学'
|
||||||
@@ -163,63 +165,64 @@ MESSAGE_CONTENTS=(
|
|||||||
['mirrors.abroad.6']='亚洲 · OSS Planet · 台湾'
|
['mirrors.abroad.6']='亚洲 · OSS Planet · 台湾'
|
||||||
['mirrors.abroad.7']='亚洲 · 国立阳明交通大学 · 台湾'
|
['mirrors.abroad.7']='亚洲 · 国立阳明交通大学 · 台湾'
|
||||||
['mirrors.abroad.8']='亚洲 · 淡江大学 · 台湾'
|
['mirrors.abroad.8']='亚洲 · 淡江大学 · 台湾'
|
||||||
['mirrors.abroad.9']='亚洲 · AniGil Linux Archive · 韩国'
|
['mirrors.abroad.9']='亚洲 · Taiwan Digital Streaming · 台湾'
|
||||||
['mirrors.abroad.10']='亚洲 · 工业网络安全中心(ICSCoE) · 日本'
|
['mirrors.abroad.10']='亚洲 · AniGil Linux Archive · 韩国'
|
||||||
['mirrors.abroad.11']='亚洲 · 北陆先端科学技术大学院大学(JAIST) · 日本'
|
['mirrors.abroad.11']='亚洲 · 工业网络安全中心(ICSCoE) · 日本'
|
||||||
['mirrors.abroad.12']='亚洲 · 山形大学 · 日本'
|
['mirrors.abroad.12']='亚洲 · 北陆先端科学技术大学院大学(JAIST) · 日本'
|
||||||
['mirrors.abroad.13']='亚洲 · xTom · 日本'
|
['mirrors.abroad.13']='亚洲 · 山形大学 · 日本'
|
||||||
['mirrors.abroad.14']='亚洲 · GB Network Solutions · 马来西亚'
|
['mirrors.abroad.14']='亚洲 · xTom · 日本'
|
||||||
['mirrors.abroad.15']='亚洲 · 孔敬大学 · 泰国'
|
['mirrors.abroad.15']='亚洲 · GB Network Solutions · 马来西亚'
|
||||||
['mirrors.abroad.16']='欧洲 · Vorboss Ltd · 英国'
|
['mirrors.abroad.16']='亚洲 · 孔敬大学 · 泰国'
|
||||||
['mirrors.abroad.17']='欧洲 · QuickHost · 英国'
|
['mirrors.abroad.17']='欧洲 · Vorboss Ltd · 英国'
|
||||||
['mirrors.abroad.18']='欧洲 · dogado · 德国'
|
['mirrors.abroad.18']='欧洲 · QuickHost · 英国'
|
||||||
['mirrors.abroad.19']='欧洲 · xTom · 德国'
|
['mirrors.abroad.19']='欧洲 · dogado · 德国'
|
||||||
['mirrors.abroad.20']='欧洲 · 亚琛工业大学(RWTH Aachen) · 德国'
|
['mirrors.abroad.20']='欧洲 · xTom · 德国'
|
||||||
['mirrors.abroad.21']='欧洲 · 德累斯顿大学(AG DSN) · 德国'
|
['mirrors.abroad.21']='欧洲 · 亚琛工业大学(RWTH Aachen) · 德国'
|
||||||
['mirrors.abroad.22']='欧洲 · CCIN2P3 · 法国'
|
['mirrors.abroad.22']='欧洲 · 德累斯顿大学(AG DSN) · 德国'
|
||||||
['mirrors.abroad.23']='欧洲 · Ircam · 法国'
|
['mirrors.abroad.23']='欧洲 · CCIN2P3 · 法国'
|
||||||
['mirrors.abroad.24']='欧洲 · Crans · 法国'
|
['mirrors.abroad.24']='欧洲 · Ircam · 法国'
|
||||||
['mirrors.abroad.25']='欧洲 · CRIHAN · 法国'
|
['mirrors.abroad.25']='欧洲 · Crans · 法国'
|
||||||
['mirrors.abroad.26']='欧洲 · xTom · 荷兰'
|
['mirrors.abroad.26']='欧洲 · CRIHAN · 法国'
|
||||||
['mirrors.abroad.27']='欧洲 · DataPacket · 荷兰'
|
['mirrors.abroad.27']='欧洲 · xTom · 荷兰'
|
||||||
['mirrors.abroad.28']='欧洲 · Linux Kernel · 荷兰'
|
['mirrors.abroad.28']='欧洲 · DataPacket · 荷兰'
|
||||||
['mirrors.abroad.29']='欧洲 · xTom · 爱沙尼亚'
|
['mirrors.abroad.29']='欧洲 · Linux Kernel · 荷兰'
|
||||||
['mirrors.abroad.30']='欧洲 · netsite · 丹麦'
|
['mirrors.abroad.30']='欧洲 · xTom · 爱沙尼亚'
|
||||||
['mirrors.abroad.31']='欧洲 · Dotsrc · 丹麦'
|
['mirrors.abroad.31']='欧洲 · netsite · 丹麦'
|
||||||
['mirrors.abroad.32']='欧洲 · Academic Computer Club · 瑞典'
|
['mirrors.abroad.32']='欧洲 · Dotsrc · 丹麦'
|
||||||
['mirrors.abroad.33']='欧洲 · Lysator · 瑞典'
|
['mirrors.abroad.33']='欧洲 · Academic Computer Club · 瑞典'
|
||||||
['mirrors.abroad.34']='欧洲 · Yandex · 俄罗斯'
|
['mirrors.abroad.34']='欧洲 · Lysator · 瑞典'
|
||||||
['mirrors.abroad.35']='欧洲 · ia64 · 俄罗斯'
|
['mirrors.abroad.35']='欧洲 · Yandex · 俄罗斯'
|
||||||
['mirrors.abroad.36']='欧洲 · Truenetwork · 俄罗斯'
|
['mirrors.abroad.36']='欧洲 · ia64 · 俄罗斯'
|
||||||
['mirrors.abroad.37']='欧洲 · Belgian Research Network · 比利时'
|
['mirrors.abroad.37']='欧洲 · Truenetwork · 俄罗斯'
|
||||||
['mirrors.abroad.38']='欧洲 · 克里特大学计算机中心 · 希腊'
|
['mirrors.abroad.38']='欧洲 · Belgian Research Network · 比利时'
|
||||||
['mirrors.abroad.39']='欧洲 · 马萨里克大学信息学院 · 捷克'
|
['mirrors.abroad.39']='欧洲 · 克里特大学计算机中心 · 希腊'
|
||||||
['mirrors.abroad.40']='欧洲 · 捷克理工大学学生会俱乐部(Silicon Hill) · 捷克'
|
['mirrors.abroad.40']='欧洲 · 马萨里克大学信息学院 · 捷克'
|
||||||
['mirrors.abroad.41']='欧洲 · Vodafone · 捷克'
|
['mirrors.abroad.41']='欧洲 · 捷克理工大学学生会俱乐部(Silicon Hill) · 捷克'
|
||||||
['mirrors.abroad.42']='欧洲 · CZ.NIC · 捷克'
|
['mirrors.abroad.42']='欧洲 · Vodafone · 捷克'
|
||||||
['mirrors.abroad.43']='欧洲 · 苏黎世联邦理工学院 · 瑞士'
|
['mirrors.abroad.43']='欧洲 · CZ.NIC · 捷克'
|
||||||
['mirrors.abroad.44']='北美 · Linux Kernel · 美国'
|
['mirrors.abroad.44']='欧洲 · 苏黎世联邦理工学院 · 瑞士'
|
||||||
['mirrors.abroad.45']='北美 · 麻省理工学院(MIT) · 美国'
|
['mirrors.abroad.45']='北美 · Linux Kernel · 美国'
|
||||||
['mirrors.abroad.46']='北美 · 普林斯顿大学数学系 · 美国'
|
['mirrors.abroad.46']='北美 · 麻省理工学院(MIT) · 美国'
|
||||||
['mirrors.abroad.47']='北美 · 俄勒冈州立大学开源实验室 · 美国'
|
['mirrors.abroad.47']='北美 · 普林斯顿大学数学系 · 美国'
|
||||||
['mirrors.abroad.48']='北美 · Fremont Cabal Internet Exchange(FCIX) · 美国'
|
['mirrors.abroad.48']='北美 · 俄勒冈州立大学开源实验室 · 美国'
|
||||||
['mirrors.abroad.49']='北美 · xTom · 美国'
|
['mirrors.abroad.49']='北美 · Fremont Cabal Internet Exchange(FCIX) · 美国'
|
||||||
['mirrors.abroad.50']='北美 · Steadfast · 美国'
|
['mirrors.abroad.50']='北美 · xTom · 美国'
|
||||||
['mirrors.abroad.51']='北美 · 不列颠哥伦比亚大学 · 加拿大'
|
['mirrors.abroad.51']='北美 · Steadfast · 美国'
|
||||||
['mirrors.abroad.52']='北美 · GoCodeIT · 加拿大'
|
['mirrors.abroad.52']='北美 · 不列颠哥伦比亚大学 · 加拿大'
|
||||||
['mirrors.abroad.53']='北美 · Switch · 加拿大'
|
['mirrors.abroad.53']='北美 · GoCodeIT · 加拿大'
|
||||||
['mirrors.abroad.54']='南美 · PoP-SC · 巴西'
|
['mirrors.abroad.54']='北美 · Switch · 加拿大'
|
||||||
['mirrors.abroad.55']='南美 · 蓬塔格罗萨州立大学 · 巴西'
|
['mirrors.abroad.55']='南美 · PoP-SC · 巴西'
|
||||||
['mirrors.abroad.56']='南美 · UFSCar · 巴西'
|
['mirrors.abroad.56']='南美 · 蓬塔格罗萨州立大学 · 巴西'
|
||||||
['mirrors.abroad.57']='南美 · Sysarmy Community · 阿根廷'
|
['mirrors.abroad.57']='南美 · UFSCar · 巴西'
|
||||||
['mirrors.abroad.58']='大洋 · Fremont Cabal Internet Exchange(FCIX) · 澳大利亚'
|
['mirrors.abroad.58']='南美 · Sysarmy Community · 阿根廷'
|
||||||
['mirrors.abroad.59']='大洋 · AARNet · 澳大利亚'
|
['mirrors.abroad.59']='大洋 · Fremont Cabal Internet Exchange(FCIX) · 澳大利亚'
|
||||||
['mirrors.abroad.60']='大洋 · DataMossa · 澳大利亚'
|
['mirrors.abroad.60']='大洋 · AARNet · 澳大利亚'
|
||||||
['mirrors.abroad.61']='大洋 · Amaze · 澳大利亚'
|
['mirrors.abroad.61']='大洋 · DataMossa · 澳大利亚'
|
||||||
['mirrors.abroad.62']='大洋 · xTom · 澳大利亚'
|
['mirrors.abroad.62']='大洋 · Amaze · 澳大利亚'
|
||||||
['mirrors.abroad.63']='大洋 · Over the Wire · 澳大利亚'
|
['mirrors.abroad.63']='大洋 · xTom · 澳大利亚'
|
||||||
['mirrors.abroad.64']='大洋 · Free Software Mirror Group · 新西兰'
|
['mirrors.abroad.64']='大洋 · Over the Wire · 澳大利亚'
|
||||||
['mirrors.abroad.65']='非洲 · Liquid Telecom · 肯尼亚'
|
['mirrors.abroad.65']='大洋 · Free Software Mirror Group · 新西兰'
|
||||||
['mirrors.abroad.66']='非洲 · Dimension Data · 南非'
|
['mirrors.abroad.66']='非洲 · Liquid Telecom · 肯尼亚'
|
||||||
['mirrors.abroad.67']='官方源'
|
['mirrors.abroad.67']='非洲 · Dimension Data · 南非'
|
||||||
|
['mirrors.abroad.68']='官方源'
|
||||||
)
|
)
|
||||||
|
|||||||
@@ -112,18 +112,20 @@ MESSAGE_CONTENTS=(
|
|||||||
['mirrors.default.0']='阿里雲'
|
['mirrors.default.0']='阿里雲'
|
||||||
['mirrors.default.1']='騰訊雲'
|
['mirrors.default.1']='騰訊雲'
|
||||||
['mirrors.default.2']='華為雲'
|
['mirrors.default.2']='華為雲'
|
||||||
['mirrors.default.3']='網易'
|
['mirrors.default.3']='移動雲'
|
||||||
['mirrors.default.4']='火山引擎'
|
['mirrors.default.4']='天翼雲'
|
||||||
['mirrors.default.5']='清華大學'
|
['mirrors.default.5']='網易'
|
||||||
['mirrors.default.6']='北京大學'
|
['mirrors.default.6']='火山引擎'
|
||||||
['mirrors.default.7']='浙江大學'
|
['mirrors.default.7']='清華大學'
|
||||||
['mirrors.default.8']='南京大學'
|
['mirrors.default.8']='北京大學'
|
||||||
['mirrors.default.9']='蘭州大學'
|
['mirrors.default.9']='浙江大學'
|
||||||
['mirrors.default.10']='上海交通大學'
|
['mirrors.default.10']='南京大學'
|
||||||
['mirrors.default.11']='重慶郵電大學'
|
['mirrors.default.11']='蘭州大學'
|
||||||
['mirrors.default.12']='中國科學技術大學'
|
['mirrors.default.12']='上海交通大學'
|
||||||
['mirrors.default.13']='中國科學院軟件研究所'
|
['mirrors.default.13']='重慶郵電大學'
|
||||||
['mirrors.default.14']='官方源'
|
['mirrors.default.14']='中國科學技術大學'
|
||||||
|
['mirrors.default.15']='中國科學院軟件研究所'
|
||||||
|
['mirrors.default.16']='官方源'
|
||||||
['mirrors.edu.0']='北京大學'
|
['mirrors.edu.0']='北京大學'
|
||||||
['mirrors.edu.1']='北京交通大學'
|
['mirrors.edu.1']='北京交通大學'
|
||||||
['mirrors.edu.2']='北京外國語大學'
|
['mirrors.edu.2']='北京外國語大學'
|
||||||
@@ -164,63 +166,64 @@ MESSAGE_CONTENTS=(
|
|||||||
['mirrors.abroad.6']='亞洲 · OSS Planet · 臺灣'
|
['mirrors.abroad.6']='亞洲 · OSS Planet · 臺灣'
|
||||||
['mirrors.abroad.7']='亞洲 · 國立陽明交通大學 · 臺灣'
|
['mirrors.abroad.7']='亞洲 · 國立陽明交通大學 · 臺灣'
|
||||||
['mirrors.abroad.8']='亞洲 · 淡江大學 · 臺灣'
|
['mirrors.abroad.8']='亞洲 · 淡江大學 · 臺灣'
|
||||||
['mirrors.abroad.9']='亞洲 · AniGil Linux Archive · 韓國'
|
['mirrors.abroad.9']='亞洲 · Taiwan Digital Streaming · 臺灣'
|
||||||
['mirrors.abroad.10']='亞洲 · 工業網路安全中心(ICSCoE) · 日本'
|
['mirrors.abroad.10']='亞洲 · AniGil Linux Archive · 韓國'
|
||||||
['mirrors.abroad.11']='亞洲 · 北陸先端科學技術大學院大學(JAIST) · 日本'
|
['mirrors.abroad.11']='亞洲 · 工業網路安全中心(ICSCoE) · 日本'
|
||||||
['mirrors.abroad.12']='亞洲 · 山形大學 · 日本'
|
['mirrors.abroad.12']='亞洲 · 北陸先端科學技術大學院大學(JAIST) · 日本'
|
||||||
['mirrors.abroad.13']='亞洲 · xTom · 日本'
|
['mirrors.abroad.13']='亞洲 · 山形大學 · 日本'
|
||||||
['mirrors.abroad.14']='亞洲 · GB Network Solutions · 馬來西亞'
|
['mirrors.abroad.14']='亞洲 · xTom · 日本'
|
||||||
['mirrors.abroad.15']='亞洲 · 孔敬大學 · 泰國'
|
['mirrors.abroad.15']='亞洲 · GB Network Solutions · 馬來西亞'
|
||||||
['mirrors.abroad.16']='歐洲 · Vorboss Ltd · 英國'
|
['mirrors.abroad.16']='亞洲 · 孔敬大學 · 泰國'
|
||||||
['mirrors.abroad.17']='歐洲 · QuickHost · 英國'
|
['mirrors.abroad.17']='歐洲 · Vorboss Ltd · 英國'
|
||||||
['mirrors.abroad.18']='歐洲 · dogado · 德國'
|
['mirrors.abroad.18']='歐洲 · QuickHost · 英國'
|
||||||
['mirrors.abroad.19']='歐洲 · xTom · 德國'
|
['mirrors.abroad.19']='歐洲 · dogado · 德國'
|
||||||
['mirrors.abroad.20']='歐洲 · 亞琛工業大學(RWTH Aachen) · 德國'
|
['mirrors.abroad.20']='歐洲 · xTom · 德國'
|
||||||
['mirrors.abroad.21']='歐洲 · 德勒斯登大學(AG DSN) · 德國'
|
['mirrors.abroad.21']='歐洲 · 亞琛工業大學(RWTH Aachen) · 德國'
|
||||||
['mirrors.abroad.22']='歐洲 · CCIN2P3 · 法國'
|
['mirrors.abroad.22']='歐洲 · 德勒斯登大學(AG DSN) · 德國'
|
||||||
['mirrors.abroad.23']='歐洲 · Ircam · 法國'
|
['mirrors.abroad.23']='歐洲 · CCIN2P3 · 法國'
|
||||||
['mirrors.abroad.24']='歐洲 · Crans · 法國'
|
['mirrors.abroad.24']='歐洲 · Ircam · 法國'
|
||||||
['mirrors.abroad.25']='歐洲 · CRIHAN · 法國'
|
['mirrors.abroad.25']='歐洲 · Crans · 法國'
|
||||||
['mirrors.abroad.26']='歐洲 · xTom · 荷蘭'
|
['mirrors.abroad.26']='歐洲 · CRIHAN · 法國'
|
||||||
['mirrors.abroad.27']='歐洲 · DataPacket · 荷蘭'
|
['mirrors.abroad.27']='歐洲 · xTom · 荷蘭'
|
||||||
['mirrors.abroad.28']='歐洲 · Linux Kernel · 荷蘭'
|
['mirrors.abroad.28']='歐洲 · DataPacket · 荷蘭'
|
||||||
['mirrors.abroad.29']='歐洲 · xTom · 愛沙尼亞'
|
['mirrors.abroad.29']='歐洲 · Linux Kernel · 荷蘭'
|
||||||
['mirrors.abroad.30']='歐洲 · netsite · 丹麥'
|
['mirrors.abroad.30']='歐洲 · xTom · 愛沙尼亞'
|
||||||
['mirrors.abroad.31']='歐洲 · Dotsrc · 丹麥'
|
['mirrors.abroad.31']='歐洲 · netsite · 丹麥'
|
||||||
['mirrors.abroad.32']='歐洲 · Academic Computer Club · 瑞典'
|
['mirrors.abroad.32']='歐洲 · Dotsrc · 丹麥'
|
||||||
['mirrors.abroad.33']='歐洲 · Lysator · 瑞典'
|
['mirrors.abroad.33']='歐洲 · Academic Computer Club · 瑞典'
|
||||||
['mirrors.abroad.34']='歐洲 · Yandex · 俄羅斯'
|
['mirrors.abroad.34']='歐洲 · Lysator · 瑞典'
|
||||||
['mirrors.abroad.35']='歐洲 · ia64 · 俄羅斯'
|
['mirrors.abroad.35']='歐洲 · Yandex · 俄羅斯'
|
||||||
['mirrors.abroad.36']='歐洲 · Truenetwork · 俄羅斯'
|
['mirrors.abroad.36']='歐洲 · ia64 · 俄羅斯'
|
||||||
['mirrors.abroad.37']='歐洲 · Belgian Research Network · 比利時'
|
['mirrors.abroad.37']='歐洲 · Truenetwork · 俄羅斯'
|
||||||
['mirrors.abroad.38']='歐洲 · 克里特大學計算機中心 · 希臘'
|
['mirrors.abroad.38']='歐洲 · Belgian Research Network · 比利時'
|
||||||
['mirrors.abroad.39']='歐洲 · 馬薩里克大學信息學院 · 捷克'
|
['mirrors.abroad.39']='歐洲 · 克里特大學計算機中心 · 希臘'
|
||||||
['mirrors.abroad.40']='歐洲 · 捷克理工大學學生會俱樂部(Silicon Hill) · 捷克'
|
['mirrors.abroad.40']='歐洲 · 馬薩里克大學信息學院 · 捷克'
|
||||||
['mirrors.abroad.41']='歐洲 · Vodafone · 捷克'
|
['mirrors.abroad.41']='歐洲 · 捷克理工大學學生會俱樂部(Silicon Hill) · 捷克'
|
||||||
['mirrors.abroad.42']='歐洲 · CZ.NIC · 捷克'
|
['mirrors.abroad.42']='歐洲 · Vodafone · 捷克'
|
||||||
['mirrors.abroad.43']='歐洲 · 蘇黎世聯邦理工學院 · 瑞士'
|
['mirrors.abroad.43']='歐洲 · CZ.NIC · 捷克'
|
||||||
['mirrors.abroad.44']='北美 · Linux Kernel · 美國'
|
['mirrors.abroad.44']='歐洲 · 蘇黎世聯邦理工學院 · 瑞士'
|
||||||
['mirrors.abroad.45']='北美 · 麻省理工學院(MIT) · 美國'
|
['mirrors.abroad.45']='北美 · Linux Kernel · 美國'
|
||||||
['mirrors.abroad.46']='北美 · 普林斯頓大學數學系 · 美國'
|
['mirrors.abroad.46']='北美 · 麻省理工學院(MIT) · 美國'
|
||||||
['mirrors.abroad.47']='北美 · 俄勒岡州立大學開源實驗室 · 美國'
|
['mirrors.abroad.47']='北美 · 普林斯頓大學數學系 · 美國'
|
||||||
['mirrors.abroad.48']='北美 · Fremont Cabal Internet Exchange(FCIX) · 美國'
|
['mirrors.abroad.48']='北美 · 俄勒岡州立大學開源實驗室 · 美國'
|
||||||
['mirrors.abroad.49']='北美 · xTom · 美國'
|
['mirrors.abroad.49']='北美 · Fremont Cabal Internet Exchange(FCIX) · 美國'
|
||||||
['mirrors.abroad.50']='北美 · Steadfast · 美國'
|
['mirrors.abroad.50']='北美 · xTom · 美國'
|
||||||
['mirrors.abroad.51']='北美 · 不列顛哥倫比亞大學 · 加拿大'
|
['mirrors.abroad.51']='北美 · Steadfast · 美國'
|
||||||
['mirrors.abroad.52']='北美 · GoCodeIT · 加拿大'
|
['mirrors.abroad.52']='北美 · 不列顛哥倫比亞大學 · 加拿大'
|
||||||
['mirrors.abroad.53']='北美 · Switch · 加拿大'
|
['mirrors.abroad.53']='北美 · GoCodeIT · 加拿大'
|
||||||
['mirrors.abroad.54']='南美 · PoP-SC · 巴西'
|
['mirrors.abroad.54']='北美 · Switch · 加拿大'
|
||||||
['mirrors.abroad.55']='南美 · 蓬塔格羅薩州立大學 · 巴西'
|
['mirrors.abroad.55']='南美 · PoP-SC · 巴西'
|
||||||
['mirrors.abroad.56']='南美 · UFSCar · 巴西'
|
['mirrors.abroad.56']='南美 · 蓬塔格羅薩州立大學 · 巴西'
|
||||||
['mirrors.abroad.57']='南美 · Sysarmy Community · 阿根廷'
|
['mirrors.abroad.57']='南美 · UFSCar · 巴西'
|
||||||
['mirrors.abroad.58']='大洋 · Fremont Cabal Internet Exchange(FCIX) · 澳大利亞'
|
['mirrors.abroad.58']='南美 · Sysarmy Community · 阿根廷'
|
||||||
['mirrors.abroad.59']='大洋 · AARNet · 澳大利亞'
|
['mirrors.abroad.59']='大洋 · Fremont Cabal Internet Exchange(FCIX) · 澳大利亞'
|
||||||
['mirrors.abroad.60']='大洋 · DataMossa · 澳大利亞'
|
['mirrors.abroad.60']='大洋 · AARNet · 澳大利亞'
|
||||||
['mirrors.abroad.61']='大洋 · Amaze · 澳大利亞'
|
['mirrors.abroad.61']='大洋 · DataMossa · 澳大利亞'
|
||||||
['mirrors.abroad.62']='大洋 · xTom · 澳大利亞'
|
['mirrors.abroad.62']='大洋 · Amaze · 澳大利亞'
|
||||||
['mirrors.abroad.63']='大洋 · Over the Wire · 澳大利亞'
|
['mirrors.abroad.63']='大洋 · xTom · 澳大利亞'
|
||||||
['mirrors.abroad.64']='大洋 · Free Software Mirror Group · 紐西蘭'
|
['mirrors.abroad.64']='大洋 · Over the Wire · 澳大利亞'
|
||||||
['mirrors.abroad.65']='非洲 · Liquid Telecom · 肯亞'
|
['mirrors.abroad.65']='大洋 · Free Software Mirror Group · 紐西蘭'
|
||||||
['mirrors.abroad.66']='非洲 · Dimension Data · 南非'
|
['mirrors.abroad.66']='非洲 · Liquid Telecom · 肯亞'
|
||||||
['mirrors.abroad.67']='官方源'
|
['mirrors.abroad.67']='非洲 · Dimension Data · 南非'
|
||||||
|
['mirrors.abroad.68']='官方源'
|
||||||
)
|
)
|
||||||
|
|||||||
Reference in New Issue
Block a user