do-windows team mailing list archive
-
do-windows team
-
Mailing list archive
-
Message #00004
Re: Windows Port of GnomeDo
Nick,
I am kind of leaning against taking gtk and gdk libraries as dependencies,
but I am fully supporting using Mono.Addins. The reason for me to support
Mono.Addins and Mon.Setup is that, because there is no comperable library
exists in the .NET framework today. I looked at System.Addins briefly, but
it does not do anything similar to Mono.Addins.Setup.
It is different for the UI widgets (gtk) for example, this was created by
the Mono project to supply bindings to the Gnome widgets, to save the effort
to port the Winforms library and create something better suited for Gnome.
This widget library is fine, very well tested and works perfectly on Linux,
but on Windows it would have problems - minor annoyances, small bugs - it
would require the user to install these packages and install some more
packages that are needed. This would be just another leaky abstraction
layer trying to replace something perfectly good and tested on Windows and
the .NET Framework.
One would assume that I am against portability, but I am not and I think we
can still keep the same codebase with Gnome Do, if the codebase is
refactored correctly and all platform specific code functionalities are
moved out to an external library (using the Mono.Addins add-in model to
handle these platform specific components as well. pluggable ui for
example). I think the Gnome-Do project would benefit from these changes as
well.
One example for improvement along these lines is the AbstractLoginWindow
class in the Do.Addins library. Its purpose is to provide an async way for
plugins to ask for credentials for user and/or retrive it from secure
storage (by the way the secure storage is called Gnome.Keyring, while on
Windows we can use something called DPAPI). This class has gui specific
code, but it can be refactored easily making the assembly more portable and
move the UI code out somewhere to be an extension what would be correctly
loaded by runtime based on what platform we are on.
These things were brewing in me for quite some time know and it had to get
out :) Thanks for listening!
Krisztian
On Tue, Jul 1, 2008 at 10:04 PM, Nick Parker <nickp@xxxxxxxxxxxxxxxxxx>
wrote:
> Krisztian,
> Sounds good, it sounds as if your setup is further along than mine, I will
> hold off and wait for you to commit yours. I was under the impression that
> we would be able to use the gtk libraries included with the Mono
> installation on Windows, no? If so, I've already got most of those pulled
> out as that's where I started in fixing references.
>
> Nick Parker
> www.developernotes.com
>
> On Tue, Jul 1, 2008 at 2:36 PM, Krisztian Gyuris <
> gyurisc@xxxxxxxxxxxxxxxxxxxxx> wrote:
>
>> Hello,
>>
>> I managed to create those Mono.Addin libraries except the Setup Gui which
>> relies on gtk. I also have the addin and the core part compiling and running
>> on the very basic level. I can keep work on it for 1 day and check it in.
>>
>> I think that DBus is not needed as this is something Gnome specific.
>>
>> Krisztian
>>
>> On Tue, Jul 1, 2008 at 8:44 PM, Nick Parker <nickp@xxxxxxxxxxxxxxxxxx>
>> wrote:
>>
>>> All,
>>> I had started several weeks ago the beginning process of porting GnomeDo
>>> to run on Windows. I had created a Visual Studio 2008 solution file,
>>> branched GnomeDo and started to fix up the references. I have been rather
>>> busy over the last few weeks, but I seem to remember that I was in a holding
>>> pattern for getting the assemblies to Mono.Addins. I will get this added in
>>> as soon as I can find some time. From the brief perusal of the source from
>>> memory, I'm pretty sure we will need to find an alternative for DBus (is
>>> that just an object persistence framework??). Anyway, I just wanted to
>>> check in. I agree with what David said at one point in that hopefully we
>>> will be able to get the core compiling on Windows soon and then we can look
>>> into refactoring out the OS platform specific components. Looking forward
>>> to getting this ball rolling. :-)
>>>
>>> Nick Parker
>>> www.developernotes.com
>>>
>>> _______________________________________________
>>> Mailing list: https://launchpad.net/~do-windows
>>> Post to : do-windows@xxxxxxxxxxxxxxxxxxx
>>> Unsubscribe : https://launchpad.net/~do-windows
>>> More help : https://help.launchpad.net/ListHelp
>>>
>>>
>>
>
> _______________________________________________
> Mailing list: https://launchpad.net/~do-windows
> Post to : do-windows@xxxxxxxxxxxxxxxxxxx
> Unsubscribe : https://launchpad.net/~do-windows
> More help : https://help.launchpad.net/ListHelp
>
>
References