[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

gEDA-user: Life and death for gEDA: portability...



Hi.

Don't get me wrong... This is an amazing open-source effort here. Also, I have to say that Wojciech's efforts have been very helpful to me, and definately reduced the porting problems I had. That said, some ranting about porting...

The dependence on various packages, particularly guile and it's friends, could easily doom this whole effort. Imagine a random IT guy in a medium sized company has been asked to install gEDA on 100 Linux workstations. What does he do? So far as I've seen, a correct response on this guy's part is to panic, and perhaps put together a resume.

Frankly, I doubt companies will standardize gEDA software for internal use so long as the porting problems persist. Given the pace of guile development, this could be years. In that time, there is plenty of room for some other open-source effort to take hold and prosper.

I know none of us gets paid a dime to do this work, so we're much more tempted to live with what we've got. In fact, the rest of this ranting is really just wishful thinking... There probably isn't enough free time between us to do this kind of work.

However, in a perfect world, here's what I'd do:

First, I'd design out the following packages:

-- guile
-- guile-gtk
-- libstroke

Instead of guile, TCL (probably 8.3) should be used. It's stable, proven, and highly available. Even better, all you have to do is ship a single TCL library file with your distribution, so the end-user doesn't need to already have TCL. Also, it doesn't try to take over your 'main' function. Also, TCL has been highly addopted by the engineering community.

As for the GUI, I would not write most of the code directly to Gtk 1.2, or Gtk 2.0, or any such thing. Instead, I'd do what was done in several other popular and portable packages like Mozilla, AbiWord, and OpenOffice: write most of the GUI code to a portable interface layer that hides the OS, and then write a lean custom wrapper for each OS. This allows the tools to look like a Mac application on a Mac, and a Gnome application in Linux, and just like an application Microsoft would have written on a PC.

I know this would be a major effort, and probably an unrealistic one. It doesn't bode well for gEDA IMO...

Bill