[Mono-dev] GSoC 2012 Proposal - WPF

Vincent Povirk madewokherd at gmail.com
Wed Mar 28 16:45:08 UTC 2012


Since you're interested in Mono in Wine, I should probably explain the
current situation.

Currently, it's possible to install Mono for Windows in Wine, and
Wine's mscoree.dll will find the Mono install and use it to run .NET
code. This is not very useful because of incompatibilities and missing
libraries (notably WPF, msvcm, and XNA), and it tends to be confusing
for users, who have a choice of Mono and native .NET, though Wine will
always recommend Mono. Native .NET can only really be installed
properly via winetricks.

I'm working on a Mono package that will work similar to wine-gecko. It
will install automatically if native .NET is not present and include a
replacement for any MS .NET components that we can't use as-is (due to
licensing or compatibility problems). My hope is to create stubs for
msvcm, WPF, and XNA, so that those projects are slightly more
inviting. (Actually, for XNA I'm hoping to take advantage of MonoGame,
but I haven't yet done the research on making them binary compatible.)

The Mono community is generally not very interested in this, as they
are more focused on being a development platform than a compatibility
layer. This is working out very well for them, and Mono is very useful
as such, so I think that makes sense.

The Wine community is more interested in replacing .NET components
like WPF, but AFAIK none of us know any details of WPF's API, or what
you would have to do to implement it. So while the Wine project would
likely be interested in such a project, I don't think we could provide
much guidance with the technical issues around WPF specifically, or
how to properly scope the effort. So it is probably not a good project
right now, but it might be next year when the Mono packaging for Wine
will be further along.

We really need people who can work on .NET code for Wine, and I'm only
expecting that need to increase. So I'd like to help get you started,
but I fear there isn't much I can do. I'm sorry we're not yet prepared
for a gsoc project in this area.

I do remember asking about the possibility of porting parts of WPF in
Moonlight to work in plain Mono, and I was told it would be difficult
to separate them from Moonlight.

More information about the Mono-devel-list mailing list