<div style="font-family:courier new,monospace"><font size="2">Was: Duplicating SoaS with customization.<br></font><br><font size="2">New work:<br><br>1. Reduced the 3 earlier scripts to 2 that provide a means to<br>
   duplicate a running 
SoaS image together with its customizations in<br></font><div><font size="2">   a persistent overlay or home 
folder.</font></div>
<div><font size="2"><br>   modified_livecd-iso-to-disk<br>   SugarClone<br><br>   These
 are available at <a href="http://people.sugarlabs.org/fgrose/" target="_blank">http://people.sugarlabs.org/fgrose/</a>.<br><br>2. Automated detection of attached USB storage devices and provide a<br>   selection menu if there are more than one.<br>


<br>3. Maintained a simple command line for the default case:<br>   <br>      /mnt/live/SugarClone</font></div><div><font size="2"><br></font></div><div><font size="2">   (even as the default liveuser account).<br><br>4. Provided input auditing for advanced uses.<br>

<br>5. Embedded a much more complete usage document available as an option:<br>
<br>      /mnt/live/SugarClone --help<br><br>6. Tested and updated more code paths.<br><br>7. Adopted satellit&#39;s suggestion to update the boot menu Welcome title.<br>   And updated the &#39;About my Computer&#39; Build information so this is<br>


   available at run time.<br><br><br>Test Usage:<br><br>1. Before booting the SoaS device that will be the source of the new<br>   SugarClone, copy the script files above to the root &#39;/&#39; 
folder at<br>   the base of the filesystem (not the /root folder). <br>2. Boot the USB stick into SoaS and insert a second USB 
device into the<br>



   computer running that SoaS image.<br>3. In the Terminal Activity of 
that running SoaS image, enter the command,<br><br>      
/mnt/live/SugarClone<br><br>The scripts will 
copy the currently running image to the second device.<br>When the second device is booted, a new Sugar Learner sign in will be<br>triggered,</font> and the customized Journal and 
operating system will be present.</div><div><br></div><div>Step 1 above, from the perspective of the learner inside a currently</div><div>running SoaS image, would be different:  The root folder of the USB</div><div>device would be reached through the /mnt/live mount point.  The scripts</div>

<div>could be obtained (assuming Internet connectivity) as follows:</div><div><br></div><div>1. In the Terminal Activity, change the working directory:</div><div><br></div><div>   cd /mnt/live</div><div><br></div><div>2. wget <a href="http://people.sugarlabs.org/fgrose/modified_livecd-iso-to-disk">http://people.sugarlabs.org/fgrose/modified_livecd-iso-to-disk</a></div>

<div><br></div><div>   wget <a href="http://people.sugarlabs.org/fgrose/SugarClone">http://people.sugarlabs.org/fgrose/SugarClone</a></div><div><br></div><div>3. chmod +x modified_livecd-iso-to-disk</div><div><br></div><div>

   chmod +x SugarClone</div><div><br></div><div><br><div><font size="2">Possible Use Case:<br><br>1.
 A teacher wants to prepare a SoaS image with a custom set of installed<br>



   Activity bundles or a Journal of Activity instances for an upcoming</font></div><div><font size="2">   class term.<br>2. The teacher modifies their current working image
 by adding or deleting<br>   Activity bundles from their Home view and 
adding or removing Journal<br>



   entries with specific content, even saving distributable ebooks, or<br>   bookmarks in Browse 
instances that are named for specific sets of local<br>   web destinations (a class portal perhaps for deployments lacking</font></div><div><font size="2">   Internet connectivity).</font></div><div><font size="2">3.
 The teacher scrubs out any personal passwords or other history that</font></div><div><font size="2">   should not be shared in the new copies.<br>
4. Following customization, a fresh or recycled USB stick that is inserted<br>   into the computer running the customized SoaS image can become the<br>   SugarClone.<br><br>Step 5 assumes that Usage step 1 has been performed either directly 
or by<br>the SoaS packagers.<br><br>These scripts have been 
tested with SoaS-Mirabelle (available at<br><a href="http://alt.fedoraproject.org/pub/alt/nightly-composes/soas/" target="_blank">http://alt.pub/alt/nightly-composes/soas/</a></font><font size="2">) but should work with other versions of SoaS.</font></div>

<div><font size="2"><br>The current version of the scripts have the /bin/bash shell specified</font></div><div><font size="2">without the -x (xtrace) option.  Set this option, #!/bin/bash -x in the</font></div><div><font size="2">first line of the script to aid testing.  When set, they will show a lot</font></div>

<div><font size="2">of output on the 
screen as they run.</font></div><div><div><font size="2"><br></font></div><div><font size="2">The scripts are copied to the new SugarClone devices prepared with these scripts so that they can easily propagate 
themselves.  This also applies to all new SoaS installations that are prepared with these scripts (using</font></div><div><font size="2">--image &lt;source&gt; options).</font></div><div><font size="2"><br></font></div><div>

<font size="2"><br></font></div><div><div><font size="2">Needed:</font></div><div><font size="2"><br></font></div><div><font size="2">1. More review and testing.</font></div>

<div><font size="2">2. Submission of the modified_livecd-iso-to-disk script upstream.<br>3. Modifications for Intel Macintosh computers.<br></font></div><div><font size="2">4. A way to automatically identify extra partitions on devices with more</font></div>

<div><font size="2">   than one available partition.</font></div><div><font size="2">5. A way to automatically identify live media images on secondary devices</font></div><div><font size="2">   and partitions that could be used as sources for a SugarClone.</font></div>

<div><font size="2">6. Bundling of the scripts for convenience until they are included in</font></div><div><font size="2">   SoaS.</font></div>

<div><font size="2">7. A 
Sugar Activity that calls the scripts.</font></div></div></div><div>
<font size="2"><br></font></div><div><font size="2">These all should help us better prepare a 
SoaS customization kit.</font></div><div><font size="2"><br></font>
</div><div><font size="2">    --Fred</font></div>
</div>
</div>