pi.bat does not result from the post-install procedure of MSYS, but rather initiates it. Since you already applied the xonpatch, I suggest (but please read the rest of this message before getting started) you completely remove msys from your system (uninstall and check that c:\msys was removed), reinstall it, complete the post-install (that's very important) and then xonpatch it.
Beware: uninstalling msys will quite likely remove the contents of the msys directory, and that includes the xonotic git clone! If you don't want to redownload everything, move the "xonotic" directory outside of c:\msys\1.0 before uninstalling MSYS (move it to c:\xonotic for example, that will save you some disk I/O and time too). Just move it back inside c:\msys\1.0 after MSYS is reinstalled.
You can't really run the postinstall after xonpatch, as it will probably make one change too many in the fstab and it can get tedious to explain how to fix that... The easiest and cleanest way is what I said above
Now, for curl! I designed xonpatch in that weird way that relies on the presence of not only msys and mingw, but also msysgit. Indeed, the base packages of msys and mingw do not ship with curl or wget, which means package downloads can't be automated... Fortunately msysgit comes with curl, so I use that one to download the additional MSYS packages the xonotic install needs, such as wget or unzip (actually it doesn't need wget anymore, but it did at the time).
You'll need a correctly set up MSYS+mingw (that includes MSYS post-install), as well as a msysgit install. Xonpatch takes care of linking those two: it looks in program files; and if it doesn't find msysgit, prompts the user until git.exe is found. From that point curl.exe should be accessible as well.
tl;dr: uninstall msys (make a backup of the "xonotic" directory inside of it if needed), install msys, (move the xonotic backup in place if you made one), make sure the post-install runs smoothly, and apply the xonpatch
Please post again if it still fails