Mirroring 2.0

Okunev Yu Dmitry edited this page Mar 16, 2016 · 8 revisions
Clone this wiki locally

Welcome to the rubygems-mirror wiki!

Discussing ideas, implementations, and more for fixing the mirroring pain we have in the rubygems ecosystem here.


  1. The current "gem mirror" system sucks.
  2. Failover is a concern if the main gem repo dies/disappears
  3. There are countless mirror organizations that will help us with hosting


  1. There's a lot of little files (over 790,000 gems and gemspecs)
  2. Gemcutter has spoiled us, we want our gems to be quickly pushed and installed. Waiting hours/days for gems to sync to mirrors is not acceptable.
  3. Pull/round robin mirroring has failed us before (RubyForge used to work this way)
  4. "Picking" a mirror sucks and this should be done for you. (Use a sane default, maybe opt for geoip)

Ways to fix it


Other things that have been tried

@qrush tried to set up MirrorBrain and it was really, really painful. Didn't get far.