XS Community Edition/0.4/Services/Activity Update: Difference between revisions

From OLPC
Jump to navigation Jump to search
 
(4 intermediate revisions by 2 users not shown)
Line 1: Line 1:
You've got your .xo files, set up your activities.info file, it's all on a USB drive in a dir named xs-activity-server, and now that you've got all the ingredients, the last step is to create a manifest for the XSCE to read.

=Creating the activity updater=

==Copying activities==
==Copying activities==


Line 7: Line 11:


==Create Activity Descriptions==
==Create Activity Descriptions==
which will show up on the entry for the activity in http://schoolserver/activities
Activity Descriptions are shown in http://schoolserver/activities
<ol>

#Get the bundle_id for the Activity by running:
#Get the bundle_id for the Activity by running:


zipgrep bundle_id activityname.xo
zipgrep bundle_id activityname.xo


It should return something like:
That command will return something like:


JAMediaTube.activity/activity/activity.info:bundle_id = org.laptop.JAMediaTube
JAMediaTube.activity/activity/activity.info:bundle_id = org.laptop.JAMediaTube


You want the bit at the end.
The bundle_id is the section after the = sign.


2.Create file named activities.info in the xs-activity-server dir.
#Create file named activities.info in the xs-activity-server dir.


For every activity you would like to write a "blurb" for, put an entry for that in the activities.info file. For example:
#Create a section for each activity in the activities.info file which contains:
[bundle_id]
description = text description

For example:


[org.laptop.JAMediaTube]
[org.laptop.JAMediaTube]
Line 28: Line 36:
[org.laptop.FakeActivity]
[org.laptop.FakeActivity]
description = This is a placeholder for documentation purposes
description = This is a placeholder for documentation purposes
</ol>


==Create manifest==
Notice the bundle_id value we grepped for earlier? That's in brackets in the .info file with the description directly underneath.
#run this command:

3. Create maifest buy running this command:


sha1sum *.xo *.info > manifest.sha1
sha1sum *.xo *.info > manifest.sha1


4. Eject the USB drive and plug it into the XSCE.
#Eject the USB drive and plug it into the XSCE.

You've got your .xo files, set up your activities.info file, it's all on a USB drive in a dir named xs-activity-server, and now that you've got all the ingredients, the last order of business is to create a manifest for the XSCE to read.


=update a school server=
1. Plug the USB drive into the XSCE.
The activities you put on the USB drive in the xs-activity-server dir will be installed. they will appear at http://schoolserver/activities.


#Plug the USB drive into the XSCE.
And then magic happens! The activities you put on the USB drive in the xs-activity-server dir will just "automagically" show up on http://schoolserver/activities with the "blurbs" you wrote in the activities.info file.
#Remove the USB drive


2. Remove the USB drive
I don't know how the USB drive gets ejected by novice users from the XSCE. Which could be a concern?
I don't know how the USB drive gets ejected by novice users from the XSCE. Which could be a concern?

Latest revision as of 23:49, 8 August 2013

You've got your .xo files, set up your activities.info file, it's all on a USB drive in a dir named xs-activity-server, and now that you've got all the ingredients, the last step is to create a manifest for the XSCE to read.

Creating the activity updater

Copying activities

  1. Insert your USB drive into your computer (I used my regular FAT32 formatted drive that I also use for flashing XOs)
  2. Create a directory named xs-activity-server
  3. Navigate into the xs-activity-server dir.
  4. Download some activities.

Create Activity Descriptions

Activity Descriptions are shown in http://schoolserver/activities

    1. Get the bundle_id for the Activity by running:
    zipgrep bundle_id activityname.xo That command will return something like: JAMediaTube.activity/activity/activity.info:bundle_id = org.laptop.JAMediaTube The bundle_id is the section after the = sign.
    1. Create file named activities.info in the xs-activity-server dir.
    1. Create a section for each activity in the activities.info file which contains:
    [bundle_id] description = text description For example: [org.laptop.JAMediaTube] description = Watch YouTube! It's really fun! [org.laptop.FakeActivity] description = This is a placeholder for documentation purposes

Create manifest

  1. run this command:

sha1sum *.xo *.info > manifest.sha1

  1. Eject the USB drive and plug it into the XSCE.

update a school server

The activities you put on the USB drive in the xs-activity-server dir will be installed. they will appear at http://schoolserver/activities.

  1. Plug the USB drive into the XSCE.
  2. Remove the USB drive

I don't know how the USB drive gets ejected by novice users from the XSCE. Which could be a concern?