Boxee Source

Source Code Release

Link is here: http://dl.boxee.tv/boxee-ce4100-16126-source.tar.xz

(NOTE: This requires XZ to extract, it's not a typo.)

The extracted file structure, top-level only:

26312723   76 -rw-r--r--   1 root     root        73421 Nov 11 12:23 ./configure.in
26312713    8 -rw-r--r--   1 root     root         5068 Nov 11 12:26 ./READEM.ce4100
26312715   44 -rwxr-xr-x   1 root     root        44959 Nov 11 12:23 ./config.guess
28739509    4 drwxr-xr-x   2 root     root         4096 Nov 11 12:23 ./visualisations
26312726   16 -rwxr-xr-x   1 root     root        13184 Nov 11 12:23 ./install-sh
26312708    4 -rwxr-xr-x   1 root     root           96 Nov 11 12:23 ./bootstrap
26312716    4 -rw-r--r--   1 root     root         3958 Nov 11 12:23 ./Makefile.include.in
28739508    4 drwxr-xr-x   2 root     root         4096 Nov 11 12:23 ./BoxeeLauncher
28739500    4 drwxr-xr-x   3 root     root         4096 Nov 11 12:23 ./tools
26312728    8 -rw-r--r--   1 root     root         6047 Nov 11 12:23 ./aclocal.m4
26312711    4 -rw-r--r--   1 root     root         3628 Nov 11 12:23 ./boxee.config.in
28739428   12 drwxr-xr-x   4 root     root        12288 Nov 11 12:22 ./guilib
28739425    4 drwxr-xr-x   4 root     root         4096 Nov 11 12:23 ./media
28739432    4 drwxr-xr-x  39 root     root         4096 Nov 11 12:23 ./language
28705809    4 drwxr-xr-x   8 root     root         4096 Nov 11 12:23 ./canmore
28739510    4 drwxr-xr-x   2 root     root         4096 Nov 11 12:23 ./autom4te.cache
28657141    4 drwxr-xr-x   5 root     root         4096 Nov 11 12:23 ./scripts
28705750    4 drwxr-xr-x   9 root     root         4096 Nov 11 12:32 ./system
28705937   36 drwxr-xr-x  19 root     root        36864 Nov 11 12:23 ./xbmc
26312727   36 -rwxr-xr-x   1 root     root        34597 Nov 11 12:23 ./config.sub
26312724   28 -rw-r--r--   1 root     root        25150 Nov 11 12:23 ./config.h.in
26312722    4 -rwxr-xr-x   1 root     root          890 Nov 11 12:23 ./install-pkgs
28739495    4 drwxr-xr-x   4 root     root         4096 Nov 11 12:23 ./BoxeeHal
26312714   24 -rw-r--r--   1 root     root        21882 Nov 11 12:23 ./Makefile.in
28739492    4 drwxr-xr-x   3 root     root         4096 Nov 11 12:23 ./UserData
28739473    4 drwxr-xr-x   3 root     root         4096 Nov 11 12:23 ./skin

The "READEM" file

From READEM.ce4100:

=====================================================================
How to prepare your host machine to build boxee and Canmore SDK
=====================================================================

Install Ubuntu Desktop.

# sudo apt-get install wget subversion patch flex bison \
gettext libtool autoconf cmake nasm gperf g++ gawk doxygen \
swig libsdl-image1.2-dev

If you are using Ubuntu 9.10 or earlier:

# sudo apt-get install python2.4-minimal

If you are using Ubuntu 10.04 32 bit or newer:

# cd /tmp
# wget http://mirrors.kernel.org/ubuntu/pool/main/p/python2.4/python2.4-minimal_2.4.6-1ubuntu3.2.9.10.1_i386.deb
# sudo dpkg --install python2.4*deb

If you are using Ubuntu 10.04 64 bit or newer:

# cd /tmp
# wget http://mirrors.kernel.org/ubuntu/pool/main/p/python2.4/python2.4-minimal_2.4.6-1ubuntu3.2.9.10.1_amd64.deb
# sudo dpkg --install python2.4*deb

=====================================================================
How to build the Canmore SDK
=====================================================================

# sudo mkdir /mnt/iso

Go to intel's site, under Intel Media Processor 3100
Download the tar.gz and extract it. This will create a bunch of ISO files.

For each file (start with BASE):
# sudo mount -t iso9660 -o loop,ro <filename>.iso /mnt/iso
# cd /mnt/iso
# bash installer
# cd ..
# sudo umount /mnt/iso

This extracted everything to $HOME/IntelCE-<version>

# cd $HOME/IntelCE-<version>
# make menuconfig
# sudo make

Wait a few hours...

Then, setup NFS, DHCP, TFTP, etc according to the Intel docs

=====================================================================
Setup Canmore box
=====================================================================

1. During boot hit CTRL-C to enter RedBoot console
2. Type: fconfig and hit enter

load -v -r -m disk -b 0x200000 hda2:bzImage.pr12
exec -b 0x200000 -l 0x300000 -c "console=ttyS0,115200 root=/dev/nfs nfsroot=10.5.0.1:/home/yuvalt/IntelCE-12.83691/project_build_i686/IntelCE/root,nolock rw ip=dhcp mem=exactmap memmap=640K@0 memmap=255M@1M"

Hit enter until the end. Last question answer "y".

=====================================================================
Boxee specific environment
=====================================================================

# sudo mkdir /opt/canmore
# sudo ln -s $HOME/IntelCE-<version>/build_i686/staging_dir /opt/canmore/IntelCE
# sudo ln -s $HOME/IntelCE-<version>/build_i686/staging_dir/bin /opt/canmore/toolchains
# sudo ln -s $HOME/IntelCE-<version>/project_build_i686/IntelCE/root /opt/canmore/targetfs
# cd /opt/canmore
# sudo tar xvfJ $(SRC)/canmore/local.tar.xz

Add /opt/canmore/toolcahin to PATH in ~/.bash_profile Try to run i686-cm-linux-gcc.

Remote the config.h from Intel SDK as it's causing Boxee build problems:
# cd /opt/canmore/IntelCE/include
# mv config.h config.h.orig

Add "DisableHWTextureUpload=1" in /etc/powervr.ini .

=====================================================================
Building debug/non-optimized version
=====================================================================

./bootstrap
autoconf
./canmore/configure.sh -d
make Boxee
for 32-bit: make -C tools/TexturePacker -f Makefile.host
for 64-bit: make -C tools/TexturePacker -f Makefile.host64
make -C skin/boxee/media nocompress

=====================================================================
Building optimized version
=====================================================================

./bootstrap
autoconf
./canmore/configure.sh
make
for 32-bit: make -C tools/TexturePacker -f Makefile.host
for 64-bit: make -C tools/TexturePacker -f Makefile.host64
make -C skin/boxee/media nocompress

=====================================================================
Installation
=====================================================================

Copy the 3rd party libraries to the target filesystem. This needs to be
done once whenever the targetfs-addons.tar.xz changes:

# mkdir /opt/canmore/targetfs/opt/local
# cd /opt/canmore/targetfs/opt/local
# tar xvfj $(SRC)/canmore/targetfs-local.tar.xz

The following copies all the required files to /opt/canmore/targetfs/opt/boxee:

# ./canmore/install_full.sh

=====================================================================
Run Boxee
=====================================================================

From the Canmore console:

/opt/boxee/run_boxee.sh

Getting to a console if your box launches straight into boxee:

Get the IP of the box from network status. telnet into that IP.
Kill the run_boxee and Boxee processes (in that order) and the console
should now be 'live'.

Stopping boxee from launching automatically at boot:

After doing the above, remove the /etc/rc3.d boxee script. This will
boot you to console instead of to boxee.

Running boxee from your developer working copy:

The easy method is to get to the console on your boxee box, mount the
working directory you use via nfs, and launch boxee from there.
On the boxee console:
mkdir /mnt/work
mount -t nfs <dev_machine_ip>:/opt/canmore/targetfs/opt/boxee /mnt/work -o nolock
Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License