<div dir="ltr">How to do an "activity bundle" came up on #schoolserver today.  I knew I had written it up, but forgot that I only sent it to xsce-devel at the time.  This is something that should be on server-devel.  And probably needs a wiki entry.<br>
<div><br><div class="gmail_quote">---------- Forwarded message ----------<br>Date: Thu, Jul 11, 2013 at 2:32 AM<br>Subject: Setting up a USB drive for the XSCE Activity Update service<br><br><br><div dir="ltr"><div><div>I have never tested or even looked at this before, but today on the call, George made sure I saw this link which has all the details regarding the Activity Update service for the XSCE:  <a href="http://dev.laptop.org/git/users/martin/xs-activity-server/tree/README" target="_blank">http://dev.laptop.org/git/users/martin/xs-activity-server/tree/README</a><br>

<br>But if you're sitting there with a USB drive, some activities you'd like to include, you've got an XSCE, and you want some simple instructions, here's a digest.<br><br>Unfortunately I'm going to assume you're on a Linux box, apologies to the Windows people.<br>

<br>First, insert your USB drive into your computer (I used my regular FAT32 formatted drive that I also use for flashing XOs) and create a directory named xs-activity-server<br><br>Navigate into the xs-activity-server dir and download some activities.<br>

<br>This isn't necessary, but it's quite nice.  Write a "blurb" for the activity that will show up on the entry for the activity in <a href="http://schoolserver/activities" target="_blank">http://schoolserver/activities</a><br>

<br>First, get the bundle_id for the Activity.  In Linux, it's simply:<br><br>zipgrep bundle_id activityname.xo<br><br>It should return something like:<br><br>JAMediaTube.activity/activity/activity.info:bundle_id = org.laptop.JAMediaTube<br>

<br>You want the bit at the end.<br><br>Now, create an .info file in the xs-activity-server dir.  It doesn't matter what it's named, just do <a href="http://activities.info" target="_blank">activities.info</a> or something.<br>
<br>
For every activity you would like to write a "blurb" for, put an entry for that in the <a href="http://activities.info" target="_blank">activities.info</a> file.  For example:<br><br>[org.laptop.JAMediaTube]<br>
description = Watch YouTube! It's really fun!<br>
<br>[org.laptop.FakeActivity]<br>description = This is a placeholder for documentation purposes<br><br>Notice the bundle_id value we grepped for earlier?  That's in brackets in the .info file with the description directly underneath.<br>

<br>You've got your .xo files, set up your <a href="http://activities.info" target="_blank">activities.info</a> 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.<br>

<br>While in the xs-activity-server dir on your USB drive, run this command:<br><br>sha1sum *.xo *.info > manifest.sha1<br><br>Eject the USB drive and plug it 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 <a href="http://schoolserver/activities" target="_blank">http://schoolserver/activities</a> with the "blurbs" you wrote in the <a href="http://activities.info" target="_blank">activities.info</a> file.<br>

<br>I don't know how the USB drive gets ejected by novice users from the XSCE.  Which could be a concern?<br><br></div><div>At any rate, this probably needs a wiki entry.<span class="HOEnZb"><font color="#888888"><br>
</font></span></div><span class="HOEnZb"><font color="#888888"><div><br>Anna<br></div></font></span></div></div>
</div><br></div></div>