Skip to content

Instantly share code, notes, and snippets.

@unascribed
Last active October 24, 2023 02:54
Show Gist options
  • Star 8 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save unascribed/5456882faa25c274ca0518ae26b60d66 to your computer and use it in GitHub Desktop.
Save unascribed/5456882faa25c274ca0518ae26b60d66 to your computer and use it in GitHub Desktop.
Fixing "Etag download for http://export.mcpbot.bspk.rs/versions.json failed with code 522" in old ForgeGradle

MCPBot is finally dead, and so goes with it every old version of ForgeGradle. Hope you're not maintaining any 1.7-1.12 mods anymore (or, god forbid, 1.6)! Because if you do, nobody will help you, and if you ask you will be banned from all official Forge channels. Fun fun fun. Game over.

...Or not. Someone asked ArchiveBot to rescue the MCPBot exports, and a WARC file containing a seemingly complete archive is available for download. And, these old ForgeGradle versions download mappings over plain HTTP, not HTTPS!

Some context

I maintain Ears, a mod available for too many versions of Minecraft, and it uses old versions of ForgeGradle to build the 1.6, 1.7, 1.8, 1.9-1.11, and 1.12 ports. Because reengineering these old versions of ForgeGradle is a huge goddamn waste of time.

Except, on November 17th 2021, at about 20:00 Eastern time, MCPBot died. I was attempting to release v1.4.1 and was met with the error shown in the title. So, I downloaded the WARC, popped it on my server, and started serving it. (I serve a copy direct from my domain instead of redirecting to archive.org as archive.org is very slow.)

The fix

If you too maintain retromods and are hit with this problem, add this to your /etc/hosts and watch your troubles disappear:

192.99.194.128 export.mcpbot.bspk.rs

Ideally, you would use it from my domain and over HTTPS, but this is a good quick-fix and I'm able to handle the load. (I run other services that are fairly popular.) The nature of this as pure static files also means this should never become burdensome to keep running.

@MadMartian
Copy link

I resolved this by pointing it to 127.0.0.1, I don't care if my local web server complains about it or returns something bizarre, it's going to yield an error either way and duct tape programming is what we need here.

@unascribed
Copy link
Author

unascribed commented Nov 19, 2021

That only resolves the issue if you have all the mappings cached already, which is likely true, but if you blow up your ~/.gradle or try to build on a new computer it won't work. A complete rehost allows bootstrapping.

@MadMartian
Copy link

MadMartian commented Nov 26, 2021

The 192.99.194.128 host is down, want help setting-up a mirror on my site? I don't think my old 1.7.10 mod is going anywhere soon either. Click on my GH profile and send me an email, I have my own VPS and would be happy to provide a mirror if you're experiencing too much load.

@unascribed
Copy link
Author

unascribed commented Nov 26, 2021

The host is not down.

If you want to set up your own mirror, you can use the official archive from GitHub or download and extract the WARC from the Internet Archive.

@unascribed
Copy link
Author

re: the edit about load, I run multiple high-traffic sites and this MCP mirror generates zero traffic in the grand scheme of things. I have a dedicated server that I fully manage as a hypervisor.

@MadMartian
Copy link

Ah, I see the host is up now, not sure what happened when I tried the first time. Will take a look at the archive/WARC and circle back here afterward.

@aoqia194
Copy link

Fucking legend

@MadMartian
Copy link

I hosted the archive on my own VPS and it works fine, I would recommend mirroring the Minecraft MVN repository too.

@BLOKBUSTR
Copy link

THANK YOU SO MUCH! I was desperate trying to get a 1.8 Forge project working, and this saved me last minute.
Now, the reason I got 1.8 is because it's the lowest version for which Forge provides a convenient MDK (as far as I know), though I want to try backporting it to 1.6.4 (since I could not get Forge's Src's working). Is there anything critical I should keep in mind while attempting to backport?

@unascribed
Copy link
Author

@BLOKBUSTR For versions that old, you are much better off using Voldeloom than trying to get FG1 to work.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment