Mono.Zeroconf 0.7.4 and cross platform glory

I released Mono.Zeroconf 0.7.4 last night which is a minor bug fix release. Packages are available for openSUSE, SUSE Linux Enterprise, and Fedora. Sources and binaries are available for Linux, Windows and OS X.

What I have found interesting about Mono.Zeroconf is a growing adoption by the Windows crowd. I have been getting almost weekly emails from a new Windows developer using Mono.Zeroconf. A few bugs have been fixed in the process, though mostly in the Bonjour provider, which doesn’t affect modern Linux distros (because they use the Avahi provider, of course).

Since there’s been good feedback from the Windows world, I spent a little time making Mono.Zeroconf actually build on Windows in Visual Studio (yikes!). I am producing .zip files of the regular sources as well to make releases more accessible on Windows. Additionally, I generate a -binary.zip file which contains just pre-compiled assemblies.

The fun thing with all of this is validating how truly remarkable Mono is. I had never written any of Mono.Zeroconf specifically for Windows, never tested it on Windows, yet released the precompiled assemblies (built in Linux by Mono) for the hell of it. And without any changes, everything “just works” on Windows/.NET (and Mac OS X as well).

Leap
Andy made the leap to Linux.

So what’s so important about this? These new Mono.Zeroconf users on Windows inherit the fact that Mono.Zeroconf is truly cross platform, which means their applications are immediately more portable to Linux and other platforms that Mono supports. By luring Windows developers with delicious, easy to use libraries that are already cross platform, we make it easier and more enticing for those developers to bring their awesome applications to Linux.

Awesome. Mono rocks.

This entry was posted in uncategorized and tagged , , . Bookmark the permalink.

8 Responses to Mono.Zeroconf 0.7.4 and cross platform glory

  1. Great work!

    Not that I think it’s necessary; however, I thought you might want to know that according to this link (http://developer.apple.com/softwarelicensing/agreements/bonjour.html#bonjourwin) on the Apple web site, you can now distribute the Bonjour msi with your applications.

    Cheers,

    Stuart

  2. RubenV says:

    Lovely, if only all software was that portable :-).

    Keep going!

  3. Pingback: Bonjour - Joseph Hill

  4. Zs says:

    Probably you’ve never heard about java, and it’s philosopy : ‘write once, run everywhere’ ;-)

  5. Yeah, that’s a funny one. It’s amazing you can do the same thing with managed code and a real VM. The problem, you of course know, is that Zeroconf networking on different platforms requires different native libraries (Bonjour and Avahi). But you already knew that.

  6. Tao says:

    Sorry about the late entry, but I though you would be best placed to know – can ipod-sharp be made to run in windows? I’ve tried searching, but I can’t seem to find anyone even asking the question, never mind getting an answer… is the question just too stupid? ipod-sharp is C#, ok; needs podsleuth, also C#, ok; libipoddevice – is this still a dependency or not? Am I missing something basic that makes this question moot? Is no-one interesting in bypassing iTunes on windows, while developing in .Net?

    Thanks for any input!

  7. I was trying to figure out how to setup Mono.Zeroconf to run on MacOS X. After some poking, I realized that it’s near trivial by simply adding a dllmap for dnssd.dll to libc.dylib in /etc/mono/config. The following worked for me:

    I hope this will be added to the shipped Mono config (filed as bug 437447).

  8. Oops, the dllmap example was trimmed out.

    <dllmap dll=”dnssd.dll” target=”libc.dylib” os=”osx”>

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>