Skip to main content

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 | 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)

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)

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
./ -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


6. Create iso file structure with tar file

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

This would create a directory structure to be used for the microkernel iso file. 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

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


Popular posts from this blog

Distinguished Engineer Award

Congrats! CSC Distinguished Engineers & Architects 2017

Yesterday CSC announced Distinguished Engineers & Architects, Batch 2017
Congrats to all the distinguished folks. Welcome on board...
Distinguished Architects  Randy Arthur (Americas) serves as product owner for CSC’s IaaS offerings and as a lead solutions architect for complex integration projects involving cloud computing technologies. During his 16-year career with CSC, Randy  has worked successfully in various roles including midrange service delivery, pre-sales solution development and product management. He was the first CTO of CSC’s Cloud  technology “incubator.” Bio on | LinkedIn| Twitter
Graham Chastney(UKI&N) is a global domain architect experienced in workplace technologies,  solution strategy and solution governance. He is a global collaborator who is relied upon to provide thought leadership to solution teams and to build and development teams. Graham is the founder  and lead author of the Technology Perspectives blog, which he regards as part of a broader ambition to …