Workbench beta adventure on Linux with Mono/WINE
MySQL Workbench has a beta out! No idea why its version 5.0.9, but its highly exciting. This software existed before, but this is quite unlike its predecessor. One snag for me is that it is Windows-only at the moment, with Linux and OS X versions to follow suit.
However, due to excitement, I decided to try running it on Linux, anyway.
Seeing that it is a .NET application, I thought I’d pass it through MoMA (the migration analyser). Everything passed, so I got excited. Running mono MySQLWorkbench.exe however, led me to a failure:
** ERROR **: Method '<Module>:<CrtImplementationDetails>.DoDllLanguageSupportValidation ()' in assembly '/home/byte/Downloads/MySQL Workbench 5.0.9 OSS Beta/wb.wr.dll' contains native code and mono can't run it. The assembly was probably created by Managed C++.
So I hopped onto #workbench on Freenode, where the MySQL Workbench crew hang out, and spoke with Mike Zinner (team lead for this software). He mentioned to me that it probably wouldn’t work, as there are some 3rd-party FOSS controls that rely on Win32 API calls. Immediately, I think of WINE.
Running it against WINE, I get an error basically telling me I need Mono for Windows:
fixme:actctx:parse_manifest_buffer root element is L"asmv1:assembly", not <assembly>
install the Windows version of Mono to run .NET executables
Downloaded mono-188.8.131.52-gtksharp-2.10.2-win32-0.exe, installed it via WINE, and then made another attempt at running Workbench, only to see a similar failure, this time in GUI form.
A little disappointed, I think the next option is to run Workbench in a virtualized Windows environment. KVM immediately came to mind, with only one minor snag – while its full CPU hardware virtualization, it doesn’t virtualize the graphic layer as well (it just emulates a graphics card, like it does for pretty much every device). Windows will see a Cirrus Logic card, from ages ago. This means, no OpenGL support, which Workbench really needs (otherwise, it drops down to software rendering, and becomes much slower).
However, there is hope. Check out VMGL, which is OpenGL Hardware 3D Acceleration for Virtual Machines. This should work with Xen and KVM, so I’ll give it a twirl, and see how it goes.
If you’re on a Mac, I am told that VMWare Fusion does not do OpenGL, so you’re out of luck there. However, Parallels does – so let that be your virtualization option of choice, if you’re on an Intel Mac.
Next stop, to go out and buy Windows Vista – wish me luck!