Re: .xo bundles (was Re: #1803 HIGH Trial-2: Add Chat activity to builds)

2007-07-05 Thread Dan Williams
On Tue, 2007-07-03 at 23:47 +0200, Bert Freudenberg wrote:
  Comment (by J5):
 
   Replying to [comment:4 bert]:
  Replying to [comment:3 J5]:
  This was generated incorrectly.  First the version should be -9  
  second
   the activity should be Chat-9.xo.  It looks like it was simply  
  zipped up
   instead of using the packaging tools.
 
  Not sure what else is wrong, but simply zipping up is surely as  
  valid as
   using whatever tools there are, right?
 
   No, right now it works but in the future there is no guarantee as  
  we may
   do post processing. Also python setup.py dist creates a clean package
   without any of the stray development files (such as MacOS resource  
  files)
   getting packaged up.
 
 Such garbage should not be included obviously. But I'd much prefer if  
 bundles stay simple zip files without added magic. What kind of post  
 processing do you imagine that could not be easily done manually?

Generating the signature and verification information for the bundle for
signed bundles, which may eventually be required for automatic
installation without nice big warning signs.

To manually do that, you'd have to sha1 every file in the bundle, add
that to some manifest files, and sha1 the manifest file, etc.  A lot
harder than just zipping the bundle up, because each time you change a
file in the bundle, the old signature is invalid.  I'm sure you'd want
to do this automatically rather having to do it manually and zipping up
the bundle.

Originally I'd planned to use a JAR-type signing mechanism for bundles,
but that may/may not change.  It doesn't have any impact on _developing_
bundles, but would when the time came to make a .xo out of your
activity.

Dan


___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: .xo bundles (was Re: #1803 HIGH Trial-2: Add Chat activity to builds)

2007-07-04 Thread John (J5) Palmieri
On Tue, 2007-07-03 at 23:47 +0200, Bert Freudenberg wrote:
  Comment (by J5):
 
   Replying to [comment:4 bert]:
  Replying to [comment:3 J5]:
  This was generated incorrectly.  First the version should be -9  
  second
   the activity should be Chat-9.xo.  It looks like it was simply  
  zipped up
   instead of using the packaging tools.
 
  Not sure what else is wrong, but simply zipping up is surely as  
  valid as
   using whatever tools there are, right?
 
   No, right now it works but in the future there is no guarantee as  
  we may
   do post processing. Also python setup.py dist creates a clean package
   without any of the stray development files (such as MacOS resource  
  files)
   getting packaged up.
 
 Such garbage should not be included obviously. But I'd much prefer if  
 bundles stay simple zip files without added magic. What kind of post  
 processing do you imagine that could not be easily done manually?
 
Give people a generic mechanism and they do crazy things.  The fact that
it is a zip archive is purely coincidental.  What defines an activity
bundle is not the compression format but the contents within.  In order
to keep that integrity we have tools which do various checks to make
sure the bundle contents are correct.  They also take the guesswork away
from naming and may in the future have the ability to automatically sign
the package and take sha1 snapshots of all the files so it can
reassemble the package for installation on another XO.  All this can be
done by hand but humans make mistakes (such as forgetting a step) which
are easily caught by scripts.   

In autotools land we could simply just bundle up a CVS repository and
call it a release but often this causes the application to not compile
correctly which is why we have make dist and make dist-check.  The tools
used to create bundles are there for similar purposes.  It allows you to
do development within the bundle itself but release a clean version for
others to use.

BTW We now have an official registered mime type vnd.olpc-sugar which
specifies XO as the magic key to identify the mime type.  At some
point the PK in the zip header will change to XO. 

-- 
John (J5) Palmieri [EMAIL PROTECTED]

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel


Re: .xo bundles (was Re: #1803 HIGH Trial-2: Add Chat activity to builds)

2007-07-04 Thread John (J5) Palmieri
On Wed, 2007-07-04 at 20:39 +0200, Tomeu Vizoso wrote:
 On Wed, 2007-07-04 at 14:18 -0400, John (J5) Palmieri wrote:
  BTW We now have an official registered mime type vnd.olpc-sugar which
  specifies XO as the magic key to identify the mime type.  At some
  point the PK in the zip header will change to XO. 
 
 Hmm, I was thinking about doing something similar to what OpenDocument
 does by storing a mimetype file uncompressed on the root of the archive.
 
 In this way we can sniff the mime type while retaining full
 compatibility with zip files. Also, we can sniff for different kinds of
 bundles, if we reserve vnd.olpc-sugar for activity bundles.

That is fine but the magic bit makes it easier for others and doesn't
remove compatibility from zip tools.  They just spit out a warning. BTW
in fedora .ods files are opening up as zip archive.  That is clearly
wrong. 

-- 
John (J5) Palmieri [EMAIL PROTECTED]

___
Devel mailing list
Devel@lists.laptop.org
http://lists.laptop.org/listinfo/devel