f5d1e193ec47ea9be94539170bb5d32c10f999eb
[people/pravin/BKO.git] / Developer.html
1 <html>
2   <head>
3   <link rel="stylesheet" type="text/css" href="BKOStylesteet.css" />
4  
5     <title>boot.kernel.org(BKO)</title>
6   </head>
7   <body>
8     <div id="logo">
9     <table border="0" width="100%" cellpadding="0" cellspacing="0">
10     <tr>
11       <td valign="middle" align="center">
12         <img src="boot.png" width="367" height="261">
13       </td>
14       <td valign="middle" align="left">
15         <span id="logotext">
16         <p>
17         boot.kernel.org(BKO) : Booting your machine over HTTP
18         </p>
19         </span>
20       </td>
21     </tr>
22     </table>
23     </div>
24     <div id="menubox">
25
26       <span id="menulink">
27         <a href="index.html">Home</a>
28       </span>
29       <span id="menulink">
30         <a href="index.html#download">Downloads</a>
31       </span>
32       <span id="menulink">
33         <a href="index.html#screenshots">Screenshots</a>
34       </span>
35       <span id="menulink">
36         <a href="index.html#howtouse">How to Use</a>
37       </span>
38       <span id="menuact">
39         Developer
40       </span>
41       <span id="menulink">
42         <a href="faq.html">FAQ</a>      
43       </span>
44       <span id="menulink">
45       <a href="Troubleshooting.html">Troubleshooting</a>
46       </span>
47       <span id="menulink">
48         <a href="index.html#contactus">Contact US</a>
49       </span>
50     </div>
51
52     <center><h1>Developer's cornor</h1></center>
53 <div>
54 <h2>How to replicate the BKO setup on your machine?</h2>
55
56 <ol>
57 <li>
58 Get the BKO.git and gpxe repositories.  You can use the script <a href="install_help/setup.sh">setup.sh</a> for this work.
59 </li>
60 <li>
61 Edit the <strong>BKO/configure</strong> to suit your needs.  It can be done with any text editor
62 <pre>
63 vi BKO/configure
64 </pre>
65 Make sure that you provide proper values for atleast <strong>GPXE_GIT_LOCATION, BOOT_URL and ISO_LOCATION_LOCAL </strong>
66 Other entries are optional, you can leave them untouched. Please refer bellow for more details on the meaning of the configuration variables.
67 </li>
68 <li>
69 Follow the following instructions
70 <pre>
71 cd BKO/install_help
72 ./deploy.sh
73 ./download_ISO.sh
74 </pre>
75 </li>
76 </ol>
77 <hr/>
78 </div>
79 <a name="parameters">
80 <div>
81 <h3>Details about configuration parameters</h3>
82 <p>
83   <ol>
84     <li>
85         <strong>GPXE_GIT_LOCATION</strong>: path to the place where gpxe git is placed.  If you have used the setup.sh script, then this path
86         should be <i>../gpxe</i>. the gpxe folder can be moved anywhere as long as the path is given properly.
87     </li>
88     <li>
89         <strong>BOOT_URL</strong>: gpxe will contact this URL for initial boot. It should point to the BKO folder which is created by <i>setup.sh</i> script. 
90         and it must be HTTP URL and not linux path.
91     </li>
92     <li>
93         <strong>ISO_LOCATION_LOCAL</strong> : The HTTP path where all ISO's will be downloaded. the script <i>download_ISO.sh</i> will download them in folder
94         named <i>ISO</i> in the same location where <i>setup.sh</i> was executed. For example, if you have executed setup.sh in topmost directory (ie var/www/)
95         then BOOT_URL=http://your-ip-address/BKO/ and ISO_LOCATION_LOCAL=http://your-ip-address/ISO/
96     </li>
97   </ol>
98 </p>
99 </div>
100
101 <div>
102 <h3>Details about installation help scripts</h3>
103 <p>
104   <ol>
105     <li>
106         <strong>setup.sh</strong> : It is the first script that user will need.  It clones the git repository which can be used for local 
107         deployment. 
108     </li>
109     <li>
110         <strong>deploy_gpxe.sh</strong> : It configures and compiles the <em>gpxe</em> at location specified by 
111         <em>GPXE_GIT_LOCATION</em> for contacting the <em>BOOT_URL</em> for fetching pxelinux.0
112     </li>
113     <li>
114         <strong>configure_BKO.sh</strong> : BKO menus are presented with help from configuration files.  These configuration files <em>.conf</em>
115         also includes so deployment specific information like <em>ISO_LOCATION_LOCAL</em>.  This script genenates all these configuration 
116         files with correct information.
117     </li>
118     <li>
119         <strong>deploy_BKO.sh</strong> : This script is responsible for generation of all the initramfs files, needed by all 
120         supported distributions. This script do require <em>root privileges</em> for initramfs generation.  This script uses
121         <em>sudo</em> whenever it need root privileges, so user may have to enter the password more than once.  User can also 
122         execute entire script as root.  In case you do not have such privilages, you can use <em>download_initramfs_images_http.sh</em>
123         which will download these initramfs images from server for you.
124     </li>
125     <li>
126         <strong>download_initramfs_images_http.sh</strong> : Downloads the modified initramfs images which supports httpfs booting.
127         These initramfs images are downloaded from <em>REMOTE_INITRAMFS_DOWNLOAD_LOCATION</em>.  The default value for this variable
128         will be correct one, so users dont need to temper with it.
129     </li>
130     <li>
131         <strong>download_ISO.sh</strong> : BKO depends on ISO images of various distributions for its work.  This script download those
132         ISO's on your behalf. 
133     </li>
134   </ol>
135 </p>
136 </div>
137
138 <hr/>
139 </body>
140 </html>