Zac Bowling’s Blog

Human Code Generator

Portin’ like a mad man…

with 20 comments

It has been a long time since I posted a real blog entry in a while on what I’ve been doing so here goes…

  • GtkEmbedMoz + Gecko# for WIN32 -

    The patch is making its way into the Mozilla tree that makes this work and it might make it into the official upcoming Mozilla Suite 1.8 release (cross your fingers). Right now you can find the beta versions of the dlls required to make it work, a custom GRE (even though I have tested it with the official Mozilla 1.7.3 and 1.7.5 build, the official versions have a few bugs like disappearing scroll bars and control focus issues on web forms) and my patches to build yourself. The Gecko# dll is up there as well and I’m committing my fixes into the SVN later on to Gecko# so we should have this in the next WIN32 installer :-)

  • Monodoc using Gecko# and working on WIN32 -

    Miguel and Paco talked about it a little before. It’s nothing really to write home about except it brings it to Windows. I have the patch for using Gecko# instead of GtkHTML (which doesn’t work on WIN32) here if you want to play and a screenshot can be seen here.

  • Tomboy on WIN32 -

    I got bored and decided to have some fun, so I ported Tomboy to WIN32. It was pretty easy. It only took me about 30 minutes. I think it really shows that rapid application cross platform development is really something that Mono can offer.

  • SNMP.NET -

    I have a fully working lightweight SNMP library for .NET that I wrote using references from a few networking books I have. I included two little sample apps as well that can query a devices id and uptime and the other one can query for that machines MAC address. Provided of course you query an SNMP device that you have its community name for. Most routers and any *nix flavor box running an SNMP server. I don’t have any M.I.B. support so you have to use the UID directly to make this work. M.I.B. translation is a bit more work then I pulled off in the 250 lines of code in this. It uses pure sockets provided by System.Net so it works on Win32, Linux and Mac OSX I know for sure. Get it here: http://polystimulus.com/snmp.zip. (Side-note: I do have a fully library that does have full M.I.B. support written by this guy in England but its very complex and very resource intensive but it provides the ability to host SNMP, but it doesn’t currently work in Mono yet.)

  • PHP&GTK - PHP & Mono & GTK#/SWF -

    I’ve been toying with this idea a bit and had some great success with it. It’s the one idea that when I mention it, people seem to always say, “I don’t know whether to be sick or socked and amazed.” I know a lot of people have tried and used PHP-GTK. You basically run PHP as a runtime on the client side and use it make GUI apps with GTK as the interface. Applications like Nova (a gnutella client for WIN32) do this and pull it off really quite well. The biggest issues though is that PHP+GTK is very slow on development and stuck in gtk 1.x right now and it doesn’t have a lot of interest as it started as more of a proof of concept. Part of the issue is that if you use it to wrap your existing code, you couldn’t render HTML in anyway so everything has to be rewritten with GTK.

    Well I have a much cooler solution. Thanks to the classes in PHP that allow you to load and access .NET/Mono assemblies in PHP, it is possible to take PHP, run it as a runtime, and call SWF/MWF or GTK# for your interface. Then thanks to Gecko# and GtkHTML you can render basic things like your tables and css styles inside your app without rewriting. Nothing working well enough to post about it.

Well that just about sums it all up. I’m also looking for a job if anyone is hiring in the Dallas area. :-)

Written by zbowling

January 26th, 2005 at 11:42 pm

Posted in Personal

Tagged with , ,

20 Responses to 'Portin’ like a mad man…'

Subscribe to comments with RSS or TrackBack to 'Portin’ like a mad man…'.

  1. since porting tomboy to win32 took you only ~30min, can you tell what were the issues you corrected? so we get an idea on what we should look in future code…

    thanks.

    user

    27 Jan 05 at 1:34 am

  2. Email me for job possibilty.

    Jae Stutzman

    27 Jan 05 at 8:13 am

  3. Will you make the Tomboy port available for download?

    Paul Ferrill

    27 Jan 05 at 1:31 pm

  4. Yes I will. :-) I’m upgrading it to .3.1 because I messed up and used .2.2. I’m working on my gtkembedmoz stuff first.

    Zac

    27 Jan 05 at 3:22 pm

  5. Hey Zac, I was wondering if i could have a peek at the code for the PHP & Mono & GTK#/SWF hack you did. I am really interested in its potential. Drop me a line at elliot.a@gmail.com

    Elliot Anderson

    27 Jan 05 at 11:54 pm

  6. Would a job in Austin interest you?

    doug

    28 Jan 05 at 11:58 pm

  7. Zac’s mother would be interested in Zac taking a job in Austin. :) I love you, baby!

    Zac's Mother

    1 Feb 05 at 6:37 pm

  8. this is just great…i cant tell you how badly i’ve wanted to use geck-sharp in win32! if it makes it into mozilla 1.8 and mono’s next windows installer, i’ll gladly paypal you a thanks. thanks for the good work and keep us updated

    marcos pinto

    1 Feb 05 at 11:02 pm

  9. your link to the debian wiki is broken. change kwiki.cgi?ZacBowling to ?ZacBowling

    marcospinto

    3 Feb 05 at 10:26 pm

  10. I use to give talks on Mono universities and user groups focusing a huge part of the demos in mono’s interoperability with other languages. Having some of that PHP + Mono + GTK#/SWF would really rock. I’ll be tuned hope there will be news about it soon :)

    Antonio Ognio

    9 Feb 05 at 11:14 am

  11. Any news on the Tomboy port? Some of us have to get by with Windows machines at work and Tomboy would be a reeeal help! :)

    Christopher

    10 Feb 05 at 9:30 am

  12. I’m really looking forward to the windows port.
    It would be very usefull if you could tell us what exactly you had to change, it might help others think about the things they need to keep an eye on when developing cross platform applications

    Timothy Parez

    1 Mar 05 at 6:25 am

  13. Thanks for the SNMP.cs code very useful.

    I found the following line slow:

    IPHostEntry ihe = Dns.Resolve(host);

    So I changed it to:

    IPHostEntry ihe = Dns.GetHostByName(host);

    Which helped a lot, thought you might be interested.

    Richard

    16 Mar 05 at 3:41 am

  14. Hi,

    Any news on tomboy port to windows? Reaaaally looking forward to it :)

    aadis

    10 Apr 05 at 1:48 pm

  15. I’m also really looking forward to a windows port of Tomboy. I know it’s a labor of love, but I’d be willing to kick you a few bucks for your time if helps move the effort up your priority list ;-)

    Joe

    2 May 05 at 7:36 pm

  16. I know that your porting work is a labor of love, not profit, but I’m reallying looking forward to a win version of Tomboy. I’d even be willing to put a little cash into your paypal account as incentive if it would help ;)

    Joe

    3 May 05 at 12:12 pm

  17. so… how is that tomboy port going? it would be nice…

    Steve Bushman

    11 Aug 05 at 10:09 am

  18. Hey Zac, came across your mention of Tomboy Win32 port when googling to find something my friends who are still stuck on Windows could use. Very cool! Did you end up posting it anywhere? I found the mailing list post where you describe what you changed (http://beatniksoftware.com/pipermail/tomboy-list_beatniksoftware.com/2005-January/000479.html), but I’m no mono developper.

    zerohalo

    19 Aug 05 at 11:19 am

  19. I’m interested in downloading ANY version I can get ahold of. The one link I found that had your patch was down. Is there anywhere else I can get it?

    fightertype

    23 Aug 05 at 9:36 am

  20. veterans life insurance…

    queerness deviated blackjack?burrows disheartening …

Leave a Reply