Show pageOld revisionsBacklinksBack to top This page is read only. You can view the source, but not change it. Ask your administrator if you think this is wrong. ====== HAH Portable ====== It is a trimmed up version of the HAH system that can be built and installed independently of the Livebox router hardware. <note>This is ALPHA software\\ As this is an unmodified port of the Livebox HAH system, there are many functions in the webserver that just don't work or make sense to be there. </note> Get the code <code> sudo apt-get install git git clone --branch portable --single-branch https://github.com/dbzoo/hah.git portable </code> ====== Ubuntu build notes ====== Tested on * beaglebone running Ubuntu 13.10 (Saucy) * Raspberry Pi running Raspbian Ubuntu (wheezy) Download ubuntu - http://elinux.org/BeagleBoardUbuntu - http://www.raspberrypi.org/downloads Start with updating the package cache. <code> sudo apt-get update </code> Build packages required. <code> sudo apt-get install build-essential libxml2-dev libcurl4-openssl-dev flex </code> Runtime packages required. <code> sudo apt-get install lua5.1 lua-filesystem lua-rex-posix lua-socket </code> To build the package target you need the packaging stuff. <code> sudo apt-get install dpkg </code> Stopping apache2 as kloned will use port 80 - Not needed on the Pi but it won't hurt to check. <code> sudo update-rc.d -f apache2 remove </code> ===== Installation via a package ===== Make sure you are in the portable/ directory that you checked out from the GIT code repository. <code> cd portable </code> To build a .deb installable package for the armhf Architecture <code> make arm-deb </code> The resultant .deb file will be in build/ Install like this <code> sudo dpkg -i build/*.deb </code> ===== Direct installation ===== To directly install you'll need to build and install as root. Note this will NOT install the /etc/init.d/xap you have to copy that out of packages/etc and install it yourself (for now). <code> sudo INSTALL_DIR=/ make install </code> ===== Keeping up to date ===== The best way to keep your portable distro up to date is "git pull" or "git fetch && git merge"\\ Then do a "make arm-deb" and install it "sudo dpkg -i build/*.deb"\\ The deb file will not overwrite your .ini customized .ini changes. <code> $ cd portable $ git pull $ make arm-deb $ sudo dpkg -i build/*.deb </code> ====== Fedora build notes ====== Tested on * Tested on a Raspberry Pi running Pidora 18 * Centos 5.5 x64 You will need these pre-requisites installed to build <code> yum install git libxml2-devel libcurl-devel openssl-devel yum groupinstall "Development Tools" --skip-broken </code> ====== External hardware ====== To get the external hardware to work on a non-livebox device you need to adjust the /etc/xap.d/xap-livebox.ini file <code> port=/dev/ttyO4 initserial=+++ </code> Why do you need this initserial=+++ configuration line? The external hardware goes into a loop and listens on the serial port consuming all the console text the livebox emits and discards it until it see the +++ token. This is done to prevent some spurious piece of livebox startup text from triggering the external hardware to do something it should not. This token on the livebox is emitted by the /etc/init.d/controlpcb livebox startup script however this script does not exist in the portable distribution. Even if it did its output would not be down the serial port where the external hardware is, it would be the console serial port. So we use this initserial= argument as a workaround. livebox/portable.txt Last modified: 2016/01/30 01:09by brett