With our arcade machine functioning, the next step was to clone this working ‘master’ machine and turn it into a bootable liveCD (USB in our case). This handy procedure is used to make your own portable operating system so you can take your customised desktop with you. In our case it would provide an OS with arcade ‘kiosk’ mode and a ‘admin’ mode. The ‘kiosk’ mode is all we want users to access with our arcade machines, so we need to set-up the system to automatically log-in as our kiosk user.
While building the CCC program I’ve tested various methods for making live systems or custom distributions (distros) of Ubuntu. A google search will come up with at least a half dozen options ranging from the ‘do it all manually from the terminal’ to ‘use this shiny point and click app’ but as with much of the open-source world, its all about diving in and testing what works on your specific system. After much trial and effort, I’ve settled on a procedure using four tools depending on the required outcome.
For custom distros (based upon an existing install):
- Black Lab Imager to create the image. This is a fork of remastersys, once the de-facto standard for this procedure.
- ‘dd’ command in the terminal to create the USB installer.
For live systems based upon an existing install:
- refractasnapshot to create the image,
- unetbootin to create the USB installer, then
- ‘dcfldd‘ to clone the USB to multiple targets.
With our USB sticks freshly minted the last step was to test them in the arcade machine systems. Making sure the computers were looking at the USB ports to boot off, I plugged a stick in an crossed my fingers … Boom — 8 bit harmony!