# # README file for the lunar-iso generation code. # -- Goal Most of this code was written to automate the generation of homogenous ISO images based on a fixed set of tools. The code should be as self- sufficient as possible and generate as much of the binaries as possible so porting to other platforms will be easy. Please keep this in mind if you change the scripts and want to include binaries. This should be kept to a minimum. The ISO has been optimized to minimize the number of alien files. These should always be as much as possible be provided by modules. The exception are stored in template, and include several files which need to be filled with something valid before you can start. Please take care of these files and try your utter best to make sure you don't add files in the template that really (really (really)) do not need to be in there. -- Start Right now the Makefile should provide you the proper list of steps to take but there are a few necessary prerequisites that the CVS copy does not contain: o A proper cache tar.bz2 of every required package (including core tools) o A full set of sources for each module o Configure the base parameters of the ISO in conf/config You will need to provide this in order to succesfully perform all steps. The cache copies wiil be used to bootstrap your ISO, after which basically the scripts perform a rebuild of every package and create the optimum least-common denominator dependency-based install. A fresh moonbase will be installed on your computer and a copy kept to be transferred onto the target automatically. The cache tar.bz2's may be left in /var/cache/lunar and will automatically as needed be copied to cache/ The same goes for the sources, they end up in spool/ -- Building it Here's a brief explanation of the make targets: prepare download all the required sources init setup the buildroot dirs make LSB dirs and a few more needed toolset fetch a copy of moonbase.tar.bz2 and install it unpack extract the cache tar.bz2's etc copy the template files that are not provided by modules rebuild rebuild all modules at least once aaa_base create a tarball with required but untracked files aaa_dev create static device nodes needed by iso and initrd proper clear temporary files in the image and clean up some misc stuff memtest create a memtest boot image kernels compile a set of kernels for both the initrd and to be installed initrd compose the initrd from the template and miscfiles iso create the final iso image test run some (limited) tests after `make iso` dist pack up the iso and calculate md5sums misc. targets: tar create a big tar of the current BUILD tree burn burn the latest iso image blank blank an entire cdrw clean wipes it all away The Makefile itself contains no configurable items. Copy the template config in the conf/ directory to conf/config and adjust the values as needed for your needs.