The /sites/example directory contains a "template" of what is required for site 
customizations of Scientific Linux(SL).   See the README.steps file for more
info on the steps needed to create your own "site". 

Definitions used in this document.

	1. <default> is the default directory of the base
	   RPMS.  In our case that will be SL.

	   /SL/RPMS/ 

	2. <sitename> is your sitename which is the directory under sites/  

	   In this example it will be "example" 

	   /sites/example/
			
        3. <tree> is the directory where <default>/ exists
		
	   In this example it is /mnt/src/sl30rolling/i386/
	   Note that it must be a full path name. 

This is NOT a tutorial on how to modify "anaconda" the installer.  For
more info on that see

  http://rau.homedns.org/twiki/bin/view/Anaconda/AnacondaDocumentationProject 	 
DIRECTORIES and FILES under  /sites/<sitename>/

/base/

     comps.xml      	     		File that defines what is to be
					installed
     comps.xml.main          		Your working copy of the comps.xml file 
     scripts/cp.comps.xml.main.sh       Script to move comps.xml.main over as 
				        comps.xml and save old one in oldcomps/

     hdlist				Database of RPM headers used during
     hdlist2			    	the install. Also contain links to
					the actual RPM file names.	
     					Created by the genhdlist command
     					when you use the --site <site> option
	
					/build/scripts/build.hdlist.example.sh
					can be used to easily update these
					files.

			
	   genhdlist --default <default> --site sites/<sitename> <tree>

		    --default <default>

		    Defines where <default>/RPMS is located under <tree>
		    Required.
	
		    --site <sitelocation>

		    <sitelocation> is /sites/<sitename>

		    If --site is left off, hdlist and hdlist2 will 
                    be created in the <tree>/<default>/base/ direcory.
                    This is needed when rpms are added or removed from 
                    the <tree>/<default>/RPMS/ directory.
 
		    --site <sitelocation> is required when RPMS are 
                    added or removed from the 
                    <tree>/sites/<sitename>/Updates directory.

		Example:

          genhdlist --default SL --site sites/example /mnt/src/sl30rolling/i386/
	
     These ext2 file system images(.img) contain all the programs and
     files needed for an install. 
     /sites/example/build/scripts/build.release.example.sh
     is used to create these images.

        netstg2.img      ftp and http install 
        stage2.img	 CD-ROM and nfs install 
        hdstg2.img       Hard disk install

     pkgorder	      List of RPMS in order of installation

/Updates/

    Location for "customized" rpms.  You can either replace/override rpms
    from <tree>/<default>/RPMS/ or add your own rpms.  It is up to you to 
    make sure that all added or modified rpms can get their dependencies met 
    between <tree>/<default>/RPMS/ and <tree>/sites/<sitename>/Updates  .  
	
    If you add or delete or change RPMS in <tree>/sites/<sitename>/Updates/
    then you need to remake your <tree>/sites/<sitename>/base/hdlist* files.
    This is done with genhdlist.  See above for more info on genhdlist 
    and a script to make this job easier.

    What you can put in here:

       custom installer kernel rpm

	  kernel-BOOT-   ....   
  
       Any RPMS that you need that are not in <tree>/<default>/RPMS/
       Note that if you want these RPMS to be installed by default you must
       include them in your <tree>/sites/<sitename>/base/comps.xml file
       Note that if you downgrade rpms and version is lower than what is in
       <tree>/<default>/RPMS then you should make sure your yum config
       file takes this into account otherwise yum will upgrade it to the
       higher version.

       custom installer -- This is a alternative to 
              <tree>/sites/<sitename>/RHupdates/

		anaconda-* 

/build/

   isolinux/

	Customizations to the isolinux files used to make the install floppy
	and cd images. For more info on isolinux see /usr/share/doc/syslinux* .

	boot.msg

		Your customized boot.msg file. 

	isolinux.cfg

		Your customized isolinux.cfg file for boot.iso . 

	syslinux.cfg

		Your customized syslinux.cfg file for floppy install images . 

	splash.lss       

		Your customized splash.lss file.  This is the "image"
		that is seen at the beginning of the install boot process.
		The .lss file format is an ascii based picture format. 
		It is generated by using the pngtopnm program.
	 
        README

		Documentation on how/what to change in this directory.

   scripts/
     
	 README
	   Very important
	   Explains what all the other scripts here do.
	   
	 locations.include
	 build.hdlist.example.sh
	 build.release.example.sh
	 make.products.img.sh
	 make.updates.img.sh
	 make.everything.sh
	 make.rpmdb-site.sh
	   
	   For explanation as to what these scripts do, read the README

   documentation/

	Contains more documentation on building sites.

   graphics/

	Contains examples of files used to create /isolinux/splash.lss

/RHupdates/

   Your python customizations to the installer.  Other way is to make new 
   anaconda-* rpms and put them in <tree>/sites/<sitename>/Updates/

/documentation/

   <sitename>.releasenote

	Linked from /SL.documentation/sites/<sitename> 
	Your releasenotes.  Contents are up to you.

   any other documentation you want

/images/

   Images used in booting the install process. Files with .img extensions are
   vfat (DOS) floppy disk images, .iso are iso9660 CD images.

   bootdisk.img     These are created by "/usr/lib/anaconda-runtime/buildinstall
   drvblock.img     
   drvnet.img	    See /sites/example/build/scripts/build.release.site.sh
   pcmciadd.img     See /sites/example/build/scripts/README first 
   boot.iso
   pxeboot
   README

/errata/

   example/
	RPMS/	   Directory for site specfic errata for you to point to
   obsolete/	
	RPMS/      Directory for old rpms

/SRPMS/

	Directory for your site specific SRPMS's