Sugar on a Stick/Sugar Clone: Difference between revisions
No edit summary |
No edit summary |
||
| Line 161: | Line 161: | ||
* With edit-liveos (disk-to-iso), a nearly-consumed overlay can be refreshed by rebuilding the system into a new, SquashFS image that re[[wikipedia:Sparse_file|sparse]]s the system files and repackages them into an iso installation file for reuse or distribution. | * With edit-liveos (disk-to-iso), a nearly-consumed overlay can be refreshed by rebuilding the system into a new, SquashFS image that re[[wikipedia:Sparse_file|sparse]]s the system files and repackages them into an iso installation file for reuse or distribution. | ||
===SoaS-remix=== | ===SoaS-remix=== | ||
'''SoaS-remix''' is a bundle of edit-liveos.py and supporting scripts to make testing and use easier. | '''SoaS-remix''' is a bundle of edit-liveos.py and supporting scripts to make testing and use easier. | ||
The bundle will change with development. As of 10 February 2011 it contains, | |||
* edit-liveos.py - the primary remix builder | * edit-liveos.py - the primary remix builder | ||
* livecd-disk-to-iso - a Bash launcher script for edit-liveos.py | * livecd-disk-to-iso - a Bash launcher script for edit-liveos.py | ||
| Line 172: | Line 174: | ||
This is my recipe: | This is my recipe: | ||
# Having used the ''livecd-iso-to-disk'' with --home-size-mb NNN to install my SoaS iso onto a Live USB device, I proceed to customize my working Stick with new Activites, content, or system settings as described [[#Introduction|above]] in step 2. | # Having used the ''livecd-iso-to-disk'' with --home-size-mb NNN to install my SoaS iso onto a Live USB device, I proceed to customize my working Stick with new Activites, content, or system settings as described [[#Introduction|above]] in step 2. | ||
# Before copying ''SoaS-remix'' to the Live USB, it may be easiest to open it in an editor and adjust the {{Code| | # Before copying ''SoaS-remix'' to the Live USB, it may be easiest to open it in an editor and adjust the {{Code|set}} command statement at line 80 to something appropriate for your system.<br> | ||
#:{{Code|# Example command line. Edit and uncomment the set statement below to suit.}} | #:{{Code|# Example command line. Edit and uncomment the set statement below to suit.}} | ||
#:{{Code|#set -- -v -n SoaSremix -o /media/WD-ext4 -t /media/WD-ext4 -i /GPL \}} | #:{{Code|#set -- -v -n SoaSremix -o /media/WD-ext4 -t /media/WD-ext4 -i /GPL \}} | ||
#:{{Code|# | #:{{Code|# -r /boot/olpc_build --builder fgrose --clone /dev/live}} | ||
# I then copy ''SoaS-remix'' onto the USB device bearing a SoaS installation (to the /LiveOS/ folder on the device's filesystem). | # I then copy ''SoaS-remix'' onto the USB device bearing a SoaS installation (to the /LiveOS/ folder on the device's filesystem). | ||
# Before running the ''SoaS-remix'' script bundle, I run these 2 system updates: | # Before running the ''SoaS-remix'' script bundle, I run these 2 system updates: | ||
#* <code>yum install rsync</code> | #* <code>yum install rsync</code> | ||
#* <code>yum update livecd-tools</code> | #* <code>yum update livecd-tools</code> | ||
#*: (Together, these operations consume about 8 MiB of overlay capacity, so be sure to have that available. | #*: (Together, these operations consume about 8 MiB of overlay capacity, so be sure to have that available.<br>You can use [[#Sugar Cellar]] to check.) | ||
# I boot my Sugar Stick on a system with a hard disc bearing an ext4-formatted partition with well over 5 GiB of free space. | # I boot my Sugar Stick on a system with a hard disc bearing an ext4-formatted partition with well over 5 GiB of free space. | ||
# Once booted, I mount the partition from a Terminal activity with the root user account: | # Once booted, I mount the partition from a Terminal activity with the root user account: | ||
| Line 186: | Line 188: | ||
#* <code>mount /dev/sdb2 /media/ext4</code> | #* <code>mount /dev/sdb2 /media/ext4</code> | ||
#*:(The device node and mountpoint names will depend on your resource names. You might find the device node by issuing <code>df -Th</code> or <code>cat /proc/partitions</code> and knowing something about your disc resources.) | #*:(The device node and mountpoint names will depend on your resource names. You might find the device node by issuing <code>df -Th</code> or <code>cat /proc/partitions</code> and knowing something about your disc resources.) | ||
# If you didn't edit the {{Code| | # If you didn't edit the {{Code|set}} command before copying, you can use the vi editor or just invoke ''SoaS-remix'' with suitable parameters, such as, | ||
#: {{Code|/mnt/live/LiveOS/SoaS-remix -v -n SoaSremix -o /media/ext4 -t /media/ext4 -i /GPL -r /boot/olpc-build --builder fgrose --clone /dev/live}} | #: {{Code|/mnt/live/LiveOS/SoaS-remix -v -n SoaSremix -o /media/ext4 -t /media/ext4 -i /GPL -r /boot/olpc-build --builder fgrose --clone /dev/live}} | ||
# Otherwise, with a proper {{Code| | # Otherwise, with a proper {{Code|set}} command statement, ''SoaS-remix'' may be invoked simply with this command line: | ||
#: {{Code|/mnt/live/LiveOS/SoaS-remix}} | #: {{Code|/mnt/live/LiveOS/SoaS-remix}} | ||
| Line 203: | Line 205: | ||
/dev/live device partition (the currently running image). | /dev/live device partition (the currently running image). | ||
-h (alone) will show you some more options | -h (alone) will show you some more options</nowiki> | ||
| Line 218: | Line 220: | ||
* From a root user Terminal activity or console session, issue this installation command: | * From a root user Terminal activity or console session, issue this installation command: | ||
*: {{Code|/path/to/livecd-iso-to-disk --overlay-size-mb NNN /path/to/refreshed/image.iso /dev/sd?1}} | *: {{Code|/path/to/livecd-iso-to-disk --overlay-size-mb NNN /path/to/refreshed/image.iso /dev/sd?1}} | ||
* One needs to determine the proper paths on the working systems | * One needs to determine the proper paths on the working systems. | ||
*: For example, on a booted Mango Lassi, the path is {{Code|/LiveOS/livecd-iso-to-disk}}. | |||
If the source Live USB was installed without a separate {{Code|home.img}}, the above commands will also refresh your image, but it will consume the overlay more rapidly as all Activity storage is in the write-once overlay storage. Even deleting Activities will consume more of the storage! (See [[LiveOS image]].) Because the home folder (Learner's Journal and Activities) are mixed into the system SquashFS image file in this configuration, that portfolio as a whole will be less easily swapped or shared from one device or machine to another. | If the source Live USB was installed without a separate {{Code|home.img}}, the above commands will also refresh your image, but it will consume the overlay more rapidly as all Activity storage is in the write-once overlay storage. Even deleting Activities will consume more of the storage! (See [[LiveOS image]].) Because the home folder (Learner's Journal and Activities) are mixed into the system SquashFS image file in this configuration, that portfolio as a whole will be less easily swapped or shared from one device or machine to another. | ||
Testing of | Testing of any of the above would be appreciated. | ||
The script code is below: | The script code is below: | ||