livebox:portable

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
livebox:portable [2014/03/01 01:08] – [Ubuntu build notes] brettlivebox:portable [2016/01/30 01:09] (current) – [External hardware] brett
Line 1: Line 1:
 ====== HAH Portable ====== ====== HAH Portable ======
  
-This is a trimmed up version of the HAH system can that be built and installed independently of the livebox router hardware.+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 Get the code
 <code> <code>
-sudo apt-get install subversion +sudo apt-get install git 
-svn checkout http://livebox-hah.googlecode.com/svn/branches/portable+git clone --branch portable --single-branch https://github.com/dbzoo/hah.git portable
 </code> </code>
 +
  
 ====== Ubuntu build notes ====== ====== Ubuntu build notes ======
Line 13: Line 18:
 Tested on Tested on
   * beaglebone running Ubuntu 13.10 (Saucy)   * beaglebone running Ubuntu 13.10 (Saucy)
-  * raspberry pi running Raspbian Ubuntu (wheezy)+  * Raspberry Pi running Raspbian Ubuntu (wheezy)
  
 Download ubuntu Download ubuntu
Line 29: Line 34:
 Runtime packages required. Runtime packages required.
 <code> <code>
-sudo apt-get install lua5.1 lua-filesystem lua-penlight lua-rex-posix lua-socket+sudo apt-get install lua5.1 lua-filesystem lua-rex-posix lua-socket
 </code> </code>
 To build the package target you need the packaging stuff. To build the package target you need the packaging stuff.
Line 35: Line 40:
 sudo apt-get install dpkg sudo apt-get install dpkg
 </code> </code>
-Stopping apache2 as kloned will use port 80 - Not needed on the PI but it won't hurt to check.+Stopping apache2 as kloned will use port 80 - Not needed on the Pi but it won't hurt to check.
 <code> <code>
 sudo update-rc.d -f apache2 remove sudo update-rc.d -f apache2 remove
Line 41: Line 46:
  
 ===== Installation via a package ===== ===== 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 To build a .deb installable package for the armhf Architecture
Line 53: Line 63:
 ===== Direct installation ===== ===== Direct installation =====
  
-To directly install you'll need to build and install as root+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> <code>
 sudo INSTALL_DIR=/ make install sudo INSTALL_DIR=/ make install
 </code> </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 ====== ====== Fedora build notes ======
  
 Tested on Tested on
-  * Tested on a Raspberry PI running Pidora 18+  * Tested on a Raspberry Pi running Pidora 18
   * Centos 5.5 x64   * Centos 5.5 x64
  
 You will need these pre-requisites installed to build You will need these pre-requisites installed to build
 <code> <code>
-yum install subversion libxml2-devel libcurl-devel openssl-devel+yum install git libxml2-devel libcurl-devel openssl-devel
 yum groupinstall "Development Tools" --skip-broken yum groupinstall "Development Tools" --skip-broken
 </code> </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.1393636106.txt.gz
  • Last modified: 2014/03/01 01:08
  • by brett