RubyInstaller

It seems the post at RubyInside generated quite a reaction, rest assured that One-Click Installer will not die, but we should shake the ground and put new blood in it.

For that job, the move to MinGW was the best looking alternative I found. Even after the negative comments and the lack of feedback and general troubleshooting from the community, we moved forward.

What’s our plan? (you may ask).

Right now the idea is play with the generated Ruby version (from now own Installer3 Ruby) and find something that wouldn’t work. Since there aren’t too many things out there that will work out of the box.

Tip: For those who don’t know where to get the sandbox, look here

The following are our list of priorities.

Move the work being done in the Bazaar repository to Subversion

I know bzr is not spread like git among developers, but is not so complex to use. In any case, I’ll push updates into rubyinstaller svn repository and allow integration from it, so developers familiar with subversion can work with us :-D

Provide a simple One-Click Installer Developer Kit

This is almost done, since you can right now grab the generated sandboxed MinGW and MSYS installation (using the Installer3 recipes), add it to your PATH and you’re done. What it misses right now is a proper Windows Installer and the creation of some shortcuts for the standard console and other to start the MSYS (Bash) console.

This will make it more easy for developers and users to install and use gems that requires a compiler and that will not be prepared for MinGW. Read the next point about this.

Improve compatibility of existing gems.

Ruby on Windows definition is shared among three platforms (RUBY_PLATFORM): i386-mswin32 (VC), i386-mingw32 (MinGW) and last, but not least i386-cygwin. The later ships with is own compiler, so mixing environments with that will only make your head hurts.

Regarding the other two platforms, a lot of projects uses regexp (regular expressions) to determine if you are running on Windows. Some of them only consider win32, which will leave mingw32 and even x64 version of Ruby out of the equation.

I even see others that look for win and mark it as Windows… wrong! Ruby for OSX also fall into this category (darwin?).

So, since I can’t work on projects I don’t use on a daily basis, I encourage everybody list the gems and extensions that cannot run out of the box with the tools provided by the Developer Kit and the Installer3 Ruby.

I’ll try to add them to our Continuous Integration system and provide the patches needed to fix most of the situations with them, but will require also original developers merge them and start providing releases for it.

So, where we are right now.

RubyGems 1.1.0 is out, which is compatible with this new Installer3 Ruby.

I’ve in my list, ordered by priority:

Mongrel
sqlite3-ruby
mysql
win32console
rspec

Please share with me your gems that don’t work out of the box either because there is no pre-compiled gem (and it requires special
libraries) or because it looks wrongly for the RUBY_PLATFORM.

Just open a Integration Request at the Support and Continuous Integration Requests tracker in RubyForge, provide project name, repository URL, category of usage (ui, console, database, testing, etc.) and comments regarding your problems with it.

Thanks everybody for your support, your mails and your comments either in RubyInside, directly to my inbox, IM or IRC.

1 The new logo and icons of RubyInstaller were created by Rodolfo Budeguer from Estudio Domo