fdroid_mirrors.go 4.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. package libbox
  2. type FDroidMirror struct {
  3. URL string
  4. Country string
  5. Name string
  6. }
  7. type FDroidMirrorIterator interface {
  8. Len() int32
  9. HasNext() bool
  10. Next() *FDroidMirror
  11. }
  12. var builtinFDroidMirrors = []FDroidMirror{
  13. // Official
  14. {URL: "https://f-droid.org/repo", Country: "Official", Name: "f-droid.org"},
  15. {URL: "https://cloudflare.f-droid.org/repo", Country: "Official", Name: "Cloudflare CDN"},
  16. // China
  17. {URL: "https://mirrors.tuna.tsinghua.edu.cn/fdroid/repo", Country: "China", Name: "Tsinghua TUNA"},
  18. {URL: "https://mirrors.nju.edu.cn/fdroid/repo", Country: "China", Name: "Nanjing University"},
  19. {URL: "https://mirror.iscas.ac.cn/fdroid/repo", Country: "China", Name: "ISCAS"},
  20. {URL: "https://mirror.nyist.edu.cn/fdroid/repo", Country: "China", Name: "NYIST"},
  21. {URL: "https://mirrors.cqupt.edu.cn/fdroid/repo", Country: "China", Name: "CQUPT"},
  22. {URL: "https://mirrors.shanghaitech.edu.cn/fdroid/repo", Country: "China", Name: "ShanghaiTech"},
  23. // India
  24. {URL: "https://mirror.hyd.albony.in/fdroid/repo", Country: "India", Name: "Albony Hyderabad"},
  25. {URL: "https://mirror.del2.albony.in/fdroid/repo", Country: "India", Name: "Albony Delhi"},
  26. // Taiwan
  27. {URL: "https://mirror.ossplanet.net/fdroid/repo", Country: "Taiwan", Name: "OSSPlanet"},
  28. // France
  29. {URL: "https://fdroid.tetaneutral.net/fdroid/repo", Country: "France", Name: "tetaneutral.net"},
  30. {URL: "https://mirror.freedif.org/fdroid/repo", Country: "France", Name: "FreeDif"},
  31. // Germany
  32. {URL: "https://ftp.fau.de/fdroid/repo", Country: "Germany", Name: "FAU Erlangen"},
  33. {URL: "https://ftp.agdsn.de/fdroid/repo", Country: "Germany", Name: "AGDSN Dresden"},
  34. {URL: "https://ftp.gwdg.de/pub/android/fdroid/repo", Country: "Germany", Name: "GWDG"},
  35. {URL: "https://mirror.level66.network/fdroid/repo", Country: "Germany", Name: "Level66"},
  36. {URL: "https://mirror.mci-1.serverforge.org/fdroid/repo", Country: "Germany", Name: "ServerForge"},
  37. // Netherlands
  38. {URL: "https://ftp.snt.utwente.nl/pub/software/fdroid/repo", Country: "Netherlands", Name: "University of Twente"},
  39. // Sweden
  40. {URL: "https://ftp.lysator.liu.se/pub/fdroid/repo", Country: "Sweden", Name: "Lysator"},
  41. // Denmark
  42. {URL: "https://mirrors.dotsrc.org/fdroid/repo", Country: "Denmark", Name: "dotsrc.org"},
  43. // Austria
  44. {URL: "https://mirror.kumi.systems/fdroid/repo", Country: "Austria", Name: "Kumi Systems"},
  45. // Switzerland
  46. {URL: "https://mirror.init7.net/fdroid/repo", Country: "Switzerland", Name: "Init7"},
  47. // Romania
  48. {URL: "https://mirrors.hostico.ro/fdroid/repo", Country: "Romania", Name: "Hostico"},
  49. {URL: "https://mirrors.chroot.ro/fdroid/repo", Country: "Romania", Name: "Chroot"},
  50. {URL: "https://ftp.lug.ro/fdroid/repo", Country: "Romania", Name: "LUG Romania"},
  51. // US
  52. {URL: "https://plug-mirror.rcac.purdue.edu/fdroid/repo", Country: "US", Name: "Purdue"},
  53. {URL: "https://mirror.fcix.net/fdroid/repo", Country: "US", Name: "FCIX"},
  54. {URL: "https://opencolo.mm.fcix.net/fdroid/repo", Country: "US", Name: "OpenColo"},
  55. {URL: "https://forksystems.mm.fcix.net/fdroid/repo", Country: "US", Name: "Fork Systems"},
  56. {URL: "https://southfront.mm.fcix.net/fdroid/repo", Country: "US", Name: "South Front"},
  57. {URL: "https://ziply.mm.fcix.net/fdroid/repo", Country: "US", Name: "Ziply"},
  58. // Canada
  59. {URL: "https://mirror.quantum5.ca/fdroid/repo", Country: "Canada", Name: "Quantum5"},
  60. // Australia
  61. {URL: "https://mirror.aarnet.edu.au/fdroid/repo", Country: "Australia", Name: "AARNet"},
  62. // Other
  63. {URL: "https://mirror.cyberbits.eu/fdroid/repo", Country: "Europe", Name: "Cyberbits EU"},
  64. {URL: "https://mirror.eu.ossplanet.net/fdroid/repo", Country: "Europe", Name: "OSSPlanet EU"},
  65. {URL: "https://mirror.cyberbits.asia/fdroid/repo", Country: "Asia", Name: "Cyberbits Asia"},
  66. {URL: "https://mirrors.jevincanders.net/fdroid/repo", Country: "US", Name: "Jevincanders"},
  67. {URL: "https://mirrors.komogoto.com/fdroid/repo", Country: "US", Name: "Komogoto"},
  68. {URL: "https://fdroid.rasp.sh/fdroid/repo", Country: "Europe", Name: "rasp.sh"},
  69. {URL: "https://mirror.gofoss.xyz/fdroid/repo", Country: "Europe", Name: "GoFOSS"},
  70. }
  71. func GetFDroidMirrors() FDroidMirrorIterator {
  72. return newPtrIterator(builtinFDroidMirrors)
  73. }