Monday, August 4, 2014

Building Hanlon Micro-Kernel (MK)

I am posting a quick cookbook on creating hanlon microkernel for easy reference. Detailed information on how the microkernel organized and build along with details on each of the command listed here can be found on git hanlon microkernel wiki

 

1. Install dependencies

sudo apt-get install squashfs-tools -y
sudo apt-get install -y fakeroot
sudo apt-get install p7zip-full -y
sudo apt-get install curl -y

 

2. Install Ruby (I prefer using rvm)

\curl -sSL https://get.rvm.io | bash -s stable --ruby
source /home/user/.rvm/scripts/rvm

 

3. Clone hanlon micro-kernel project into your working directory (my directory ~/wspace/hanlon/hanlon-mk)

cd
mkdir wspace
mkdir hanlon
git clone hanlon-mk
cd hanlon-mk

 

4. Clone hanlon micro-kernel project into your working directory (my directory ~/wspace/hanlon/hanlon-mk)

cd
mkdir wspace
mkdir hanlon
git clone hanlon-mk

 

5. Create bundle file: This would create a temporary tar file containing all necessary files to complete iso creation process

cd hanlon-mk
./build-bundle-file.sh -d -t test1234 -b additional-build-files/builtin-extensions.lst -m additional-build-files/mirror-extensions.lst

This would create hanlon-microkernal-bundle-<mode>.tar.gz. Mode of the file depends on dev/debug/prod switch selected with build-bundle-file.sh

 

6. Create iso file structure with tar file

cd bundle_files
tar zxvf hanlon-microkernel-bundle-debug.tar.gz
fakeroot ./build_initial_directories.sh

This would create a directory structure to be used for the microkernel iso file. build_initial_directories.sh should be run as root. Because I do not prefer installing ruby at root, I am using fakeroot to work around the issue.

 

7. Create final iso file

./rebuild_iso.sh
Build the mk iso (in my case it is hnl_mk_debug-image.2.0.0+2-g99e078f.iso). File is naming follows the convention hnl_mk_<mode>-image.<version>-<git-stamp>.iso

No comments:

Post a Comment