| 
					
				 | 
			
			
				@@ -0,0 +1,98 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ow to edit the LFS-BOOK 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+------------------------ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+This document explains the necessary steps to be taken in order to make 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+changes to the LFS-BOOK. Not every single aspect is detailed, just the 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+more tricky ones. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+* No matter what, always make the following changes whenever you do 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  something: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+Whenever you make a change, no matter how small, update the book's version  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+number: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+1) Open the intel.xml file. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+2) Find <!ENTITY version "yyyymmdd"> and make sure it contains the date on  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+which you are making the change. If today is June 11th, 2001, change it  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+to <!ENTITY version "20010611". 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+3) Find <ENTITY releasedate "Month, day, year"> and make sure it contains  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+the same date as the 'version' entity. If today is June 11th, 2001, change  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+it to: <!ENTITY releasedate "June 11th, 2001"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+* Updating a package's version 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+Follow these steps in order to change a package (for example when you tested  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+a newer version and want to include it in the book). Let's assume you're 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+upgrading to bash-2.05. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+1) Download bash-2.05 to the linuxfromscratch.org server in the  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+/home/ftp/conglomeration directory. If the file isn't compressed with bzip2,  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+but with gzip for example, ungzip it, then bzip2 it. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+2) Enter the /home/ftp/cvs directory. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+3) Remove the symlink that points to the previous version of the 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+package. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+4) You can remove the real file from the /home/ftp/conglomeration 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+directory only is you are absolutely sure that there are no other books 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+currently online that use that package version. If you don't remember 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+which book versions are online right now, check the LFS website. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+5) Make a new symlink by running the following command: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ln -s ../conglomeration/bash-2.05.tar.bz2 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+6) Obtain the file size of the new package (run ls -l 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+/home/ftp/conglomeration/packagename). Divide this number by 1024 and 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+remember the result. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+7) Enter the /home/ftp directory and create a new lfs-packages tarball. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+If today is June 11th, 2001 1:09 PM, run the following: 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+tar cvfh lfs-packages-intel-cvs-20010611-1309.tar cvs 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+mv lfs-packages-intel-cvs-20010611-1309.tar cvs 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+The reason for adding the hour and minute is that one may end up 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+creating more than one tarball a day and it's easier this way to find 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+out which packages file was being used in case there are a lot of 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+updates. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+8) Obtain the file size of the newly created tarball by running ls -l, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+divide the number by 1024 and remeber the result. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+9) Open the intel.xml file. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+10) At the bottom of the file find the ENTITY that belongs to the package.  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+You'll find it as <!ENTITY package-version "version">. Change the  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+bash-version entity as follows: <!ENTITY bash-version "2.05"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+11) Edit the <!ENTITY all-version> entity and update the file name to 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+match the name of the tarball you just created. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+12) Edit the <!ENTITY all-version> entity and update the file name to 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+match the name of the new tarball you just created. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+13) Open the chapter3/bash.xml file. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+14) Enter the new size that you calculated in step 6. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+15) Open the chapter3/all.xml file. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+16) Update the file size to match the value you calculated in step 8. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+17) Open the chapter3/packages.xml file, scroll to the bottom of the 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+file and enter the same size as you entered in the previous step. Also 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+divide this number by 1024 and enter the result as the MB value between 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+brackets. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+Please don't use the "du -h" command to obtain the file size. The result 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+of du is not acurate enough (it doesn't report the actual file size, but 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+the size of clusters the file is using). 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+If you are updating more than one package at the same time, don't 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+re-create the tarball every time. Just update all the symlinks and 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+create a new tarball once that includes all your updated packages. 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 |