Thanks Ben. I think I will go with the approach of comparing the user's home directory cause as you said it is the most feasible one.
I am not planning on including an installer. Just a Live CD that is readily available and configured with software that a student needs to start programming in LeJOS. Cheers for the detailed explanation. Makes a great deal of sense. On 25 August 2010 12:39, Ben Armstrong <sy...@sanctuary.nslug.ns.ca> wrote: > Robert, > > > On 08/25/2010 04:33 AM, Robert Spiteri wrote: > >> Hi, I am trying to build a Debian Live CD for our school where we will be >> using nxjc compiler for the LeJOS (Java for Lego Mindstorms). >> > > Cool project! > > > I was planning to include Eclipse and an IDE, however once I install >> Eclipse I would need to make some configuration and I would prefer to work >> using the GUI. >> >> Is there a way (while being in the interactive shell during debian image >> building) to launch some sort of GUI where I can modify the settings of >> certain programs before actually exiting the interactive shell and continue >> with the build? >> >> Reason I am asking is that I want to create a live cd with all the >> settings predefined and not having to use persistence. >> > > A reasonable way to do this is: > > - boot the live system without your eclipse configurations > - tar up the user home directory (your "before") > - start eclipse > - configure eclipse > - exit eclipse > - tar up the user home directory into a separate file (your "after") > - copy both before/after tarballs to your build system > - compare before & after contents and observe what files changed (untar > each into a separate directory and compare the directory trees with a visual > diff/merge tool like 'meld', 'kompare', or 'xxdiff') > - save the changed files in config/chroot_local-includes/etc/skel/ (which > will be used to populate the 'user' directory when it is created by adduser > when the live system boots) > > This method can be used to preconfigure almost any application with GUI > configuration that you want to include in your live image, and is superior > to what you propose because it doesn't rely on the fragile and > labour-intensive step of having to manually configure things each time you > build. > > Nevertheless, there is a chroot_interactive helper (see --interactive in > the lh_config man page) to start a shell in the chroot in the middle of your > build, from which you might then start an X session, run an app in it, and > play with it. I would strongly recommend against using this in your actual > build, but instead only use it for debugging and experimentation. > > Note: if you include an installer on the image, the files in /etc/skel will > be copied into ever user's home directory created thereafter. This may or > may not be what you intended. For an alternate approach that avoids this, > consider making a live-config hook that will only run for the live system > and that populates the user directory with this material after the live user > is created. > > Ben > > -- Robert http://www.weavefx.com