[sugar] A philosophical question

Marco Pesenti Gritti mpg
Mon Feb 12 06:19:59 EST 2007


On Mon, 2007-02-12 at 00:47 +0100, Marco Pesenti Gritti wrote:
> On Sun, 2007-02-11 at 10:06 -0500, Greg Dekoenigsberg wrote:
> > So as I look at the many options for building and running Sugar, all of 
> > which have their various trade-offs, I'd like to ask the Sugar developers 
> > one question, which I think is key:
> > 
> > Which development environment should we be targeting for activity 
> > developers?
> > 
> > If you go to the OLPC wiki right now and surf around a bit, you get 
> > instructions for all kinds of different ways to run Sugar.  Try running 
> > the latest build in QEMU!  Try the Live CD image!  Try building Sugar for 
> > distro X, Y or Z!
> > 
> > For developers, what's the best choice?  Any opinions?
> 
> Hello,
> 
> I think the two options we have considered so far are the following.
> 
> 1 Build from sources
> 
> This is what sugar-jhbuild currently does, some facts about it:
> 
> * I'm convinced it will be the primary development environment until the
> platform stabilize, which will not be too soon.
> * We need to decrease the number of packages we build and to make the
> build more reliable for the packages we own (i.e. be careful to not
> break the build). When FC 7 and equivalent distributions will be release
> I hope we will be able to skip building the base.
> * It will never be a completely reliable environment, that's the nature
> of compiling from sources.
> 
> 2 Binary SDK
> 
> * It could be implemented and run in different ways. QEMU, some other
> virtualization, running on the real machines, the chrooted environment
> John proposed (maybe that's something intermediate between 1 and 2
> though).
> * It will be easier to get running and maintaining.
> * It will be way more reliable and near to actual target environment, it
> might even emulate hardware.
> * It will probably have to include the whole set of development tools,
> up to IDE. I think this it most uncertain and challenging point.
> 
> Right now we have 1, with the problems everyone has noticed. Development
> of 2 has not really started yet, and I think that's not a good thing. I
> think ideally we should gradually move from 1 to 2, and I'm sure it will
> take time.
> 
> I have a big doubt about 2 though. Will it ever a good enough
> development environment?
> 
> * QEMU is way too slow and virtualization will require more resources in
> any case.
> * If we want to fully emulate the real machine we will not have lot of
> screen space to use.
> * Developing in the same environment you are using to do all your work
> on feel just more handy.
> 
> Maybe if we want the development environment to be really usable we
> should bring it to developers desktop.
> 
> 3 Build binary packages for popular distributions.
> 
> * This will require development distributions (rawhide and whatever is
> the Ubuntu equivalent).
> * It will require some stability in the shared component of the
> platform. For example, if we depend on a development version of gtk we
> are screwed.
> * For Fedora we can reuse the packages we build for the images.
> * It will require quite a bit of maintenance but maybe we can find
> volunteers for it.
> * It would be possible to run sugar inside Xephyr or in a different X
> screen (in that case with his own IDE probably).

To give an idea here is the list of packages that would have to be
maintained with this approach.

Rarely updated, not sugar specific:

libmatchbox
matchbox-window-manager

Not strictly necessary for activity development:

wv
libabiword
libabiword-plugins
pyabiword

Frequently updated, sugar specific:

artwork
hippo-canvas
sugar

Marco



More information about the Sugar-devel mailing list