Re: [Sugar-devel] [POLL] Non Sugar Platform activities in Activity Library

2010-02-27 Thread Aleksey Lim
On Sat, Feb 27, 2010 at 07:17:54AM +, Aleksey Lim wrote:
 Hi all,
 
 Before this moment some binary actitieis on ASLO bundle per architeture
 blobs since binaries didn't weight much. But it doesn't play in case of
 http://www.geogebra.org/ which is Java based application (bundling blobs
 per architecture will mean 50M of dependencies and 5M of geogebra itself).
 
 Since Sugar Platform can't grow endlessly, some dependencies can't be
 included to SP(here Java). But bundling some of them will be pretty
 overkill(Java, Qt etc). At the same time fetching dependencies on
 demand(on first launch) could not fit to some deployment models.
 
 So, the question is - how handle such non SP big dependencies in ASLO.
 Possible answers:
 
 1) hmm.. what are you talking about, sugar is pure python environment
and blobs(not python) is evil, ASLO should handle only python
based activities(or activity should bundle all its dependencies)
 
 2) activities that don't have bundled all dependencies should be
explicitly marked to not mess them w/ fully bundling ones
 
 3) use complicated model when ASLO makes decision for every downloading,
should dependencies be included or not

or less complicated scheme when there will be per architeture bundles,
uploader will push pure 0sugar activity and ASLO will cook .xos with
all dependencies bundled per architeture.

 
 Please suggest your variants and attach your +/-
 
 --
 
 2) +1
 
 -- 
 Aleksey

-- 
Aleksey
___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


Re: [Sugar-devel] [POLL] Non Sugar Platform activities in Activity Library

2010-02-27 Thread Walter Bender
On Sat, Feb 27, 2010 at 3:01 AM, Aleksey Lim alsr...@member.fsf.org wrote:
 On Sat, Feb 27, 2010 at 07:17:54AM +, Aleksey Lim wrote:
 Hi all,

 Before this moment some binary actitieis on ASLO bundle per architeture
 blobs since binaries didn't weight much. But it doesn't play in case of
 http://www.geogebra.org/ which is Java based application (bundling blobs
 per architecture will mean 50M of dependencies and 5M of geogebra itself).

 Since Sugar Platform can't grow endlessly, some dependencies can't be
 included to SP(here Java). But bundling some of them will be pretty
 overkill(Java, Qt etc). At the same time fetching dependencies on
 demand(on first launch) could not fit to some deployment models.

 So, the question is - how handle such non SP big dependencies in ASLO.
 Possible answers:

 1) hmm.. what are you talking about, sugar is pure python environment
    and blobs(not python) is evil, ASLO should handle only python
    based activities(or activity should bundle all its dependencies)

 2) activities that don't have bundled all dependencies should be
    explicitly marked to not mess them w/ fully bundling ones

 3) use complicated model when ASLO makes decision for every downloading,
    should dependencies be included or not

 or less complicated scheme when there will be per architeture bundles,
 uploader will push pure 0sugar activity and ASLO will cook .xos with
 all dependencies bundled per architeture.


 Please suggest your variants and attach your +/-

 --

 2) +1

 --
 Aleksey

 --
 Aleksey
 ___
 Sugar-devel mailing list
 Sugar-devel@lists.sugarlabs.org
 http://lists.sugarlabs.org/listinfo/sugar-devel


Could we have a scheme where by we make a primary bundle and then
secondary bundles with the arch-dep bits, one per arch. and have a way
in ASLO to grab from both as needed?

-walter

-- 
Walter Bender
Sugar Labs
http://www.sugarlabs.org
___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


Re: [Sugar-devel] [POLL] Non Sugar Platform activities in Activity Library

2010-02-27 Thread Aleksey Lim
On Sat, Feb 27, 2010 at 08:32:53AM -0500, Walter Bender wrote:
 On Sat, Feb 27, 2010 at 3:01 AM, Aleksey Lim alsr...@member.fsf.org wrote:
  On Sat, Feb 27, 2010 at 07:17:54AM +, Aleksey Lim wrote:
  Hi all,
 
  Before this moment some binary actitieis on ASLO bundle per architeture
  blobs since binaries didn't weight much. But it doesn't play in case of
  http://www.geogebra.org/ which is Java based application (bundling blobs
  per architecture will mean 50M of dependencies and 5M of geogebra itself).
 
  Since Sugar Platform can't grow endlessly, some dependencies can't be
  included to SP(here Java). But bundling some of them will be pretty
  overkill(Java, Qt etc). At the same time fetching dependencies on
  demand(on first launch) could not fit to some deployment models.
 
  So, the question is - how handle such non SP big dependencies in ASLO.
  Possible answers:
 
  1) hmm.. what are you talking about, sugar is pure python environment
     and blobs(not python) is evil, ASLO should handle only python
     based activities(or activity should bundle all its dependencies)
 
  2) activities that don't have bundled all dependencies should be
     explicitly marked to not mess them w/ fully bundling ones
 
  3) use complicated model when ASLO makes decision for every downloading,
     should dependencies be included or not
 
  or less complicated scheme when there will be per architeture bundles,
  uploader will push pure 0sugar activity and ASLO will cook .xos with
  all dependencies bundled per architeture.
 
 
  Please suggest your variants and attach your +/-
 
  --
 
  2) +1
 
  --
  Aleksey
 
  --
  Aleksey
  ___
  Sugar-devel mailing list
  Sugar-devel@lists.sugarlabs.org
  http://lists.sugarlabs.org/listinfo/sugar-devel
 
 
 Could we have a scheme where by we make a primary bundle and then
 secondary bundles with the arch-dep bits, one per arch. and have a way
 in ASLO to grab from both as needed?

Yup, I meant the same - developer mentions 0sugar deps in activity.info
and upload bundle only with activity itself w/o any deps bundled,
later ASLO will prepare proper set of bundles e.g. per architecture
for binary dependencies.

The issue with this scheme is that we have a mess anyway since .xos are
not fully bundled and contain blobs only for one architecture e.g. if
someone downloaded .xo from ASLO on x86_64 box then copied it to x86
box.

-- 
Aleksey
___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


Re: [Sugar-devel] [POLL] Non Sugar Platform activities in Activity Library

2010-02-27 Thread Aleksey Lim
On Sat, Feb 27, 2010 at 04:05:02PM +, Gary C Martin wrote:
 On 27 Feb 2010, at 07:17, Aleksey Lim wrote:
 
  Hi all,
  
  Before this moment some binary actitieis on ASLO bundle per architeture
  blobs since binaries didn't weight much. But it doesn't play in case of
  http://www.geogebra.org/ which is Java based application (bundling blobs
  per architecture will mean 50M of dependencies and 5M of geogebra itself).
  
  Since Sugar Platform can't grow endlessly, some dependencies can't be
  included to SP(here Java). But bundling some of them will be pretty
  overkill(Java, Qt etc). At the same time fetching dependencies on
  demand(on first launch) could not fit to some deployment models.
  
  So, the question is - how handle such non SP big dependencies in ASLO.
  Possible answers:
  
  1) hmm.. what are you talking about, sugar is pure python environment
and blobs(not python) is evil, ASLO should handle only python
based activities(or activity should bundle all its dependencies)
 
 Sorry, but I'm still a +1 for, Activity should bundle all its needed 
 dependencies, but try to work within the existing platform tool set. I 
 understand it's not always possible, and your 0-install work may provide us a 
 rather graceful way to support random, unexpected architectures or platforms 
 (for the exceptions not the norm); but the last thing Sugar needs is to try 
 and potentially support and run every bit of open source code out there. We 
 should focus on well designed Sugar or Sugarised activities. Otherwise Sugar 
 will loose all useful identity and we would might as well drop it and move 
 over to some other random Linux distro.
 
 For me, what makes Sugar special is its consist, system wide attempt to focus 
 on a child centric, and learning centric design.
 
 Regards,
 --Gary
 
 P.S. FWIW: As a Mac OS X developer and user, I almost never have to worry 
 about dependencies or packaging. Almost all OS X applications are self 
 contained bundles, usually containing 'fat binaries' for 32, 64, PPC Intel 
 architectures, and targeted at perhaps the last 2 or 3 OS X version releases 
 (4-5yrs bit rot life time). I just mention this as a working mainstream 
 example.

btw MacOS geogebra package weights 5M (doesn't bundle jre) :)

I guess we should ask ourself more generic question,

How we should treat ASLO(and sugar itself)
1) education platform
2) python based education platform

Maybe I'm wrong and this question was already answered for others and
this answer is 2) but in my mind it was all time 1).

In case of 2) we will HAVE TO face packaging issues anyway since there
is lots of education software that could be proper sugarized (not only
running but adding Journal support for example).

Possible ways could be:

bundle all dependencies
but bundle 50M(if we include ARM support it will be 75M) for every
java based activity looks overkill

rely only on Sugar Platform
but we can't include all possible dependencies

deployment method when all efforts are concentrated around one(several)
particular sugar distributions like OLPC or SOAS
but I guess more global approach was chosen since organizing SL

using more flexible scheme when we have
* Sugar Platform and majority of fully bundled activities (since
  dependencies were included to SP)
* minority which have non-SP dependencies, such dependencies could be
  * bundled, if they are small
  * installed on demand from native packaging systems
  * fetched on demand

..add your own..

-- 
Aleksey
___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


Re: [Sugar-devel] [POLL] Non Sugar Platform activities in Activity Library

2010-02-27 Thread Aleksey Lim
On Sat, Feb 27, 2010 at 11:36:04AM -0500, Benjamin M. Schwartz wrote:
 Aleksey Lim wrote:
  Please suggest your variants and attach your +/-
 
 All of the above.  ASLO should warn the user if an activity is
 arch-dependent, generate a bundle appropriate to the user's settings, and
 make sure that the generated bundle's name indicates the supported
 architectures. (e.g WatchMe-2.xo.F13-sparc32+Lenny-IA64)

this is intermediate option which could only increase mess,
since from once side activities bundle something, from other side
bundle not all dependencies and use case with download .xo from one box
and run it on other won't work (otherwise we should oblige kids
understand what IA64 and sparc32 is).

 Ultimately, though, I think we need to move 0install into Glucose.  Then
 to share an activity bundle with a friend, all I have to do is transfer
 the package URL.  My friend's Sugar install can then use
 0share/packagekit/0launch to get whatever components are necessary for her
 system... possibly even from me via 0share, or possibly from ASLO.

and I'm all about this, kid just click on download button on ASLO (or
pass link to friends) and all technical stuff (check for deps, arches etc)
will be done by 0install.

Of course as was already mentioned many times there will be net issue.
But are we trying to solve downstream problems on upstream, I mean if
there is only *one* XO laptop somewhere in sahara nothing would be useful,
but more or less big deployments could have school servers that will provide
all useful for this particular dependent dependencies via local network
(and users themselves could be peers in local file sharing network).

-- 
Aleksey
___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


Re: [Sugar-devel] [POLL] Non Sugar Platform activities in Activity Library

2010-02-27 Thread Aleksey Lim
On Sat, Feb 27, 2010 at 07:01:35PM +0100, Sascha Silbe wrote:
 On Sat, Feb 27, 2010 at 04:48:27PM +, Aleksey Lim wrote:
 
  bundle all dependencies
  but bundle 50M(if we include ARM support it will be 75M) for every
  java based activity looks overkill
 IMO the only sane way to handle large dependencies, esp. language ones, 
 is relying on distro packages.
 
  using more flexible scheme when we have
  * Sugar Platform and majority of fully bundled activities (since
dependencies were included to SP)
  * minority which have non-SP dependencies, such dependencies could 
  be
* bundled, if they are small
* installed on demand from native packaging systems
* fetched on demand
 This looks like the way to go, esp. the installed on demand from native 
 packaging systems part. Rely on distro packages as much as possible, 
 you'll avoid quite some trouble the distributors have already gone 
 through for you (e.g. xulrunner paths differ on distros).
 Distro packages are also
 a) easily and transparently cachable on a local server (apt-cacher, 
 squid, ...)
 b) fetched from the widespread mirror network of distributions rather 
 than the few ones hosting Sugar stuff (APT can even use bittorrent or 
 custom P2P software like apt-p2p)
 c) usually more trustworthy than random builds from some more or less 
 anonymous source
 d) actively maintained, including security updates (except for Ubuntu 
 universe/multiverse).

+1024

and 0install is so smart that it will check if required dependency
* already installed
* could be installed from native packages and ask PackageKit to install it
* fallabck to prebuilt blobs
* fallabck to build from sources in users env
* say phew

-- 
Aleksey
___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


Re: [Sugar-devel] [POLL] Non Sugar Platform activities in Activity Library

2010-02-27 Thread Sascha Silbe

On Sat, Feb 27, 2010 at 06:13:22PM +, Aleksey Lim wrote:


and 0install is so smart that it will check if required dependency
* already installed
* could be installed from native packages and ask PackageKit to 
install it

* fallabck to prebuilt blobs
* fallabck to build from sources in users env
* say phew


Sounds great! Sorry I've fallen behind on your 0install/0sugar efforts, 
I definitely need to try it out - I've put it on my growing list of 
things to do next month.


CU Sascha

--
http://sascha.silbe.org/
http://www.infra-silbe.de/

signature.asc
Description: Digital signature
___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel


Re: [Sugar-devel] [POLL] Non Sugar Platform activities in Activity Library

2010-02-27 Thread Aleksey Lim
On Sun, Feb 28, 2010 at 12:47:37AM +, Gary C Martin wrote:
 On 27 Feb 2010, at 16:48, Aleksey Lim wrote:
 
  On Sat, Feb 27, 2010 at 04:05:02PM +, Gary C Martin wrote:
  On 27 Feb 2010, at 07:17, Aleksey Lim wrote:
  
  Hi all,
  
  Before this moment some binary actitieis on ASLO bundle per architeture
  blobs since binaries didn't weight much. But it doesn't play in case of
  http://www.geogebra.org/ which is Java based application (bundling blobs
  per architecture will mean 50M of dependencies and 5M of geogebra itself).
  
  Since Sugar Platform can't grow endlessly, some dependencies can't be
  included to SP(here Java). But bundling some of them will be pretty
  overkill(Java, Qt etc). At the same time fetching dependencies on
  demand(on first launch) could not fit to some deployment models.
  
  So, the question is - how handle such non SP big dependencies in ASLO.
  Possible answers:
  
  1) hmm.. what are you talking about, sugar is pure python environment
   and blobs(not python) is evil, ASLO should handle only python
   based activities(or activity should bundle all its dependencies)
  
  Sorry, but I'm still a +1 for, Activity should bundle all its needed 
  dependencies, but try to work within the existing platform tool set. I 
  understand it's not always possible, and your 0-install work may provide 
  us a rather graceful way to support random, unexpected architectures or 
  platforms (for the exceptions not the norm); but the last thing Sugar 
  needs is to try and potentially support and run every bit of open source 
  code out there. We should focus on well designed Sugar or Sugarised 
  activities. Otherwise Sugar will loose all useful identity and we would 
  might as well drop it and move over to some other random Linux distro.
  
  For me, what makes Sugar special is its consist, system wide attempt to 
  focus on a child centric, and learning centric design.
  
  Regards,
  --Gary
  
  P.S. FWIW: As a Mac OS X developer and user, I almost never have to worry 
  about dependencies or packaging. Almost all OS X applications are self 
  contained bundles, usually containing 'fat binaries' for 32, 64, PPC Intel 
  architectures, and targeted at perhaps the last 2 or 3 OS X version 
  releases (4-5yrs bit rot life time). I just mention this as a working 
  mainstream example.
  
  btw MacOS geogebra package weights 5M (doesn't bundle jre) :)
 
 :-b But that's because Mac OS includes the Java runtime as part of its 
 platform...
 
  I guess we should ask ourself more generic question,
  
 How we should treat ASLO(and sugar itself)
 1) education platform
 2) python based education platform
 
 Of course it's a platform for education, but we are where we are with regards 
 python. I'd be quite happy if someone wanted to go out of their way and write 
 in some other supported and available language/tool set – but right now the 
 easiest path is to create native activities using Python  GTK+. There are 
 heaps of example code, wiki pages, books etc for anyone how wants to learn 
 how.

but in case of geogebra we have already existed project

  Maybe I'm wrong and this question was already answered for others and
  this answer is 2) but in my mind it was all time 1).
  
  In case of 2) we will HAVE TO face packaging issues anyway since there
  is lots of education software that could be proper sugarized (not only
  running but adding Journal support for example).
 
 Regarding 'Iots of educational software' I doubt many teams in reality would 
 be willing to properly sugarize, we would end up with a bunch activity 
 carbuncles dotted throughout the user experience. The sugarized successes I 
 see are built on code bases where you can create a separate Sugar friendly UI 
 on top, from scratch (like Write/abiword). I wish I had time to do the same 
 for MatPlotLib and make a nice graphing/charting sand box activity.

and upsterm who are wiling to proper sugarize it (e.g. add Journal
support)

 
  Possible ways could be:
  
 bundle all dependencies
 but bundle 50M(if we include ARM support it will be 75M) for every
 java based activity looks overkill
 
 There was a _lot_ of early discussion over having, or not having, Java as 
 part of the tool set

but the question is not about including java to Sugar Platform but
about having a way to run activities that have non SP deps (here java)

 but (and I'm waving my hands a little here) it was considered too large and 
 too resource intensive for the target hardware. I agree given my experience 
 running Java on a 2.66Ghz dual core cpu with 4Gb of ram, it sucks eggs, 
 memory, cpu, and usually drives the fans on and eats the laptop battery – I 
 don't want to imaging the pain on an XO or netbook type hardware. Sure 
 there's a reasonable amount of free Java OSS stuff out there, but even if it 
 runs vaguely OK on the kind of hardware Sugar is aimed at, it would still 
 need heavy sugarising so as not to pollute the 

Re: [Sugar-devel] [POLL] Non Sugar Platform activities in Activity Library

2010-02-27 Thread Aleksey Lim
On Sun, Feb 28, 2010 at 02:18:39AM +, Aleksey Lim wrote:
 On Sun, Feb 28, 2010 at 12:47:37AM +, Gary C Martin wrote:
  On 27 Feb 2010, at 16:48, Aleksey Lim wrote:
  
   On Sat, Feb 27, 2010 at 04:05:02PM +, Gary C Martin wrote:
   On 27 Feb 2010, at 07:17, Aleksey Lim wrote:
   
   Hi all,
   
   Before this moment some binary actitieis on ASLO bundle per architeture
   blobs since binaries didn't weight much. But it doesn't play in case of
   http://www.geogebra.org/ which is Java based application (bundling blobs
   per architecture will mean 50M of dependencies and 5M of geogebra 
   itself).
   
   Since Sugar Platform can't grow endlessly, some dependencies can't be
   included to SP(here Java). But bundling some of them will be pretty
   overkill(Java, Qt etc). At the same time fetching dependencies on
   demand(on first launch) could not fit to some deployment models.
   
   So, the question is - how handle such non SP big dependencies in ASLO.
   Possible answers:
   
   1) hmm.. what are you talking about, sugar is pure python environment
and blobs(not python) is evil, ASLO should handle only python
based activities(or activity should bundle all its dependencies)
   
   Sorry, but I'm still a +1 for, Activity should bundle all its needed 
   dependencies, but try to work within the existing platform tool set. I 
   understand it's not always possible, and your 0-install work may provide 
   us a rather graceful way to support random, unexpected architectures or 
   platforms (for the exceptions not the norm); but the last thing Sugar 
   needs is to try and potentially support and run every bit of open source 
   code out there. We should focus on well designed Sugar or Sugarised 
   activities. Otherwise Sugar will loose all useful identity and we would 
   might as well drop it and move over to some other random Linux distro.
   
   For me, what makes Sugar special is its consist, system wide attempt to 
   focus on a child centric, and learning centric design.
   
   Regards,
   --Gary
   
   P.S. FWIW: As a Mac OS X developer and user, I almost never have to 
   worry about dependencies or packaging. Almost all OS X applications are 
   self contained bundles, usually containing 'fat binaries' for 32, 64, 
   PPC Intel architectures, and targeted at perhaps the last 2 or 3 OS X 
   version releases (4-5yrs bit rot life time). I just mention this as a 
   working mainstream example.
   
   btw MacOS geogebra package weights 5M (doesn't bundle jre) :)
  
  :-b But that's because Mac OS includes the Java runtime as part of its 
  platform...
  
   I guess we should ask ourself more generic question,
   
  How we should treat ASLO(and sugar itself)
  1) education platform
  2) python based education platform
  
  Of course it's a platform for education, but we are where we are with 
  regards python. I'd be quite happy if someone wanted to go out of their way 
  and write in some other supported and available language/tool set – but 
  right now the easiest path is to create native activities using Python  
  GTK+. There are heaps of example code, wiki pages, books etc for anyone how 
  wants to learn how.
 
 but in case of geogebra we have already existed project
 
   Maybe I'm wrong and this question was already answered for others and
   this answer is 2) but in my mind it was all time 1).
   
   In case of 2) we will HAVE TO face packaging issues anyway since there
   is lots of education software that could be proper sugarized (not only
   running but adding Journal support for example).
  
  Regarding 'Iots of educational software' I doubt many teams in reality 
  would be willing to properly sugarize, we would end up with a bunch 
  activity carbuncles dotted throughout the user experience. The sugarized 
  successes I see are built on code bases where you can create a separate 
  Sugar friendly UI on top, from scratch (like Write/abiword). I wish I had 
  time to do the same for MatPlotLib and make a nice graphing/charting sand 
  box activity.
 
 and upsterm who are wiling to proper sugarize it (e.g. add Journal
 support)
 
  
   Possible ways could be:
   
  bundle all dependencies
  but bundle 50M(if we include ARM support it will be 75M) for every
  java based activity looks overkill
  
  There was a _lot_ of early discussion over having, or not having, Java as 
  part of the tool set
 
 but the question is not about including java to Sugar Platform but
 about having a way to run activities that have non SP deps (here java)
 
  but (and I'm waving my hands a little here) it was considered too large and 
  too resource intensive for the target hardware. I agree given my experience 
  running Java on a 2.66Ghz dual core cpu with 4Gb of ram, it sucks eggs, 
  memory, cpu, and usually drives the fans on and eats the laptop battery – I 
  don't want to imaging the pain on an XO or netbook type hardware. Sure 
  there's a reasonable amount of 

[Sugar-devel] [POLL] Non Sugar Platform activities in Activity Library

2010-02-26 Thread Aleksey Lim
Hi all,

Before this moment some binary actitieis on ASLO bundle per architeture
blobs since binaries didn't weight much. But it doesn't play in case of
http://www.geogebra.org/ which is Java based application (bundling blobs
per architecture will mean 50M of dependencies and 5M of geogebra itself).

Since Sugar Platform can't grow endlessly, some dependencies can't be
included to SP(here Java). But bundling some of them will be pretty
overkill(Java, Qt etc). At the same time fetching dependencies on
demand(on first launch) could not fit to some deployment models.

So, the question is - how handle such non SP big dependencies in ASLO.
Possible answers:

1) hmm.. what are you talking about, sugar is pure python environment
   and blobs(not python) is evil, ASLO should handle only python
   based activities(or activity should bundle all its dependencies)

2) activities that don't have bundled all dependencies should be
   explicitly marked to not mess them w/ fully bundling ones

3) use complicated model when ASLO makes decision for every downloading,
   should dependencies be included or not

Please suggest your variants and attach your +/-

--

2) +1

-- 
Aleksey
___
Sugar-devel mailing list
Sugar-devel@lists.sugarlabs.org
http://lists.sugarlabs.org/listinfo/sugar-devel