Solved BoxeeBox - Boot Kodi from NFS (installer script)
#1
I've had some issues setting up the NFS boot for Kodi on BoxeeBox, so I took the internal memory installer script from http://boxee-kodi.t28.net/ and made one dedicated to this task. I'm not an expert in scripting and much less on xbmc/kodi inner workings so, any error or improvement, let me know.

Quote:This installer works well on a factory reset, updated and hacked Boxee.
When running this installer on a working system, the only precaution taken is backing up the "portable_data" folder and copying it back after the installation of the new version.

This script was not thoroughly tested so I'm not responsible for any loss of data

Hope you enjoy.

Pre-requisites:
- Installed Boxee+Hacks;
- Working NFS share
- If you wish to keep your running configuration, backup your "portable_data" folder and, after the installation, replace the Kodi NFS share "portable_data" folder (in this example /srv/nfs/kodi/portable_data) and reboot.

Example parameters:
- NFS Server IP: 192.168.0.2
- NFS Share (export): /srv/nfs/kodi/


1- Connect to the BoxeeBox using telnet and create the script file /data/hack/mount.sh with the code below
Code:
touch /data/hack/mount.sh
chmod +x /data/hack/mount.sh

Code:
#! /bin/sh

#Create mount point
kodi_dir=/tmp/mnt/kodi
mkdir -p "$kodi_dir"

if [ ! -d $kodi_dir ]
then
        echo
        echo "Error creating KODI system mount point ($kodi_dir)."
        echo
        exit 1
fi

#Mount NFS share
nfs_server=192.168.0.2

#Mount system
echo
echo "----> Mounting NFS shares..."
nfs_share=/srv/nfs/kodi

ping -c4 $nfs_server 1>/dev/null
if [ $? -ne 0 ]
then
        echo
        echo "NFS Server $nfs_server address unreachable."
        echo
        exit 1
fi

system_mount="mount -t nfs -o nolock,tcp $nfs_server:$nfs_share $kodi_dir"

if ! `mountpoint -q $kodi_dir`
then

        while ! `mountpoint -q $kodi_dir`
        do
                echo "kodi share not mounted"
                $system_mount
                status=$?
                echo "Mount return code: $status"

                if [ $status -ne 0 ]
                then
                        echo "Mount Failed. Trying to mount again..."
            echo
                else
                        echo "...Mounted!"
                        echo
                fi
        done
else
        echo "Already mounted"
        echo
fi

2- Edit the "nfs_server" and "nfs_share" variables to suit your setup. You don't need to run this script, besides for testing purposes.

3- Create the script file /data/hack/kodi_nfs_install.sh with the code below

Code:
touch /data/hack/kodi_nfs_install.sh
chmod +x /data/hack/kodi_nfs_install.sh

Code:
#! /bin/sh

##################################################
#### Check for necessary software
##################################################

if [ ! -d /data/hack/bin ]
then
        echo
        echo "This script must be run on a Boxee with Boxee Hacks installed."
        echo
        exit 1
fi

##################################################
#### Mount and test NFS share
##################################################

nfs_base_dir=/tmp/mnt/kodi
nfs_temp_dir=$nfs_base_dir/tmp

sh /data/hack/mount.sh

#Test NFS mount
if ! `mountpoint -q $nfs_base_dir`
then

        echo
        echo "NFS share mount failure."
        echo
        exit 1
fi

# Test write permission in NFS mount
touch "$nfs_base_dir/test"

if [ ! -f "$nfs_base_dir/test" ]
then
        echo
        echo "Error writing to NFS mounted system directory."
        echo
        exit 1
fi

rm -r "$nfs_base_dir/test"


##################################################
#### Download needed files
##################################################

server="http://boxee-kodi.t28.net"
boxee_hacks_version=`cat /data/hack/version 2>/dev/null | sed -e 's/\.//g' -e :a -e 's/^.\{1,2\}$/&0/;ta'`

echo
echo "Downloading needed files..."

mkdir -p "$nfs_temp_dir"

wget -O $nfs_temp_dir/releases $server/releases.php
if [ ! -f "$nfs_temp_dir/releases" ]
then
        echo
        echo "Error downloading release list."
        echo
        exit 1
fi

rm -f /data/hack/bin/dialog
wget -O /data/hack/bin/dialog $server/dialog
if [ ! -f /data/hack/bin/dialog ]
then
        echo
        echo "Error downloading dialog."
        echo
        exit 1
fi

chmod +x /data/hack/bin/dialog

echo "...OK!"
sleep 1

dialog --ascii-lines --title " Warning " --yesno "\nThis script is provided without a warranty of any kind.\n\nMake sure you know how to perform a factory reset before proceeding, as this is the best way to save your Boxee in case it breaks.\n\nAre you sure you want to continue?" 18 70

if [ $? -gt 0 ]
then
        echo
        echo "Installation cancelled!"
        exit 1
fi

killall xbmc.bin 2>/dev/null
sleep 1
umount -f /data/hack/xbmc/addons 2>/dev/null
umount -f /download/xbmc/portable_data 2>/dev/null
touch /data/hack/.skip_internal_xbmc

##################################################
#### Release selection menu
##################################################

options=`awk -F":" 'BEGIN { n=1 }; { printf "\"" n++ "\" \"[" $4 "] " $3 " " substr($2,0,47) "\" on " }' $nfs_temp_dir/releases`
cmd="dialog --ascii-lines --backtitle \"Release Selection\" --radiolist \"The following releases are sorted with the most recent first.  Note that testing releases may not be as reliable.\n\nSelect a release to install with the arrow keys and spacebar.\nPress ENTER to confirm your selection.\" 15 80 15 $options 2>$nfs_temp_dir/release"

echo NONE>$nfs_temp_dir/release

eval $cmd
ret=$?

if [ $ret -eq 0 ]
then
        build=`cat $nfs_temp_dir/releases | head -n\`cat $nfs_temp_dir/release\` | tail -n1 | cut -d: -f2`
else
        echo "Installation cancelled!"
        exit 1
fi

##################################################
#### Features selection menu
##################################################

dialog --ascii-lines --backtitle "Select features" --title " Features " --nocancel --ok-label Install --checklist "\nSelect which features you want to install using the arrow keys and spacebar.\n " 17 60 6 "Dropbear SSH Server" "" on "Reboot to Boxee from Power Menu" "" on "Erase Logs on Boot" "" on "Remove Telnet Password" "" off 2>$nfs_temp_dir/features

feat_dropbear=`cat $nfs_temp_dir/features | grep -c Dropbear`
feat_patchskin=`cat $nfs_temp_dir/features | grep -c Reboot`
feat_eraselogs=`cat $nfs_temp_dir/features | grep -c Erase`
feat_newshell=`cat $nfs_temp_dir/features | grep -c Remove`

clear

##################################################
#### Installation process
##################################################

echo "##################################"
echo "Starting installation process..."
echo "##################################"

if [ $feat_eraselogs -eq 1 ]
then
        touch /data/hack/.erase_logs
else
        rm -f /data/hack/.erase_logs
fi

mkdir -p /data/hack/bin
mkdir -p "$nfs_base_dir/addons"
mkdir -p "$nfs_base_dir/portable_data"
mkdir -p /data/hack/init.d

touch /data/hack/.xbmc_internal_data

echo
echo "Writing install files..."


echo "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" |
        openssl enc -base64 -d | bunzip2 > /data/hack/bin/bar
chmod +x /data/hack/bin/bar

echo "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" |
        openssl enc -base64 -d | gunzip > $nfs_temp_dir/read_input

mv $nfs_temp_dir/read_input /data/hack/bin/read_input 2>/dev/null
chmod +x /data/hack/bin/read_input

echo "H4sIAHaomlUCA61T3W/aMBB/xn/FLfDQSRtu+7C9ANJgX0i0VGsfplGEnORCLJK7
yDallfbHz0nIlKIydWr9YCm++33cL3b3DchQk7SpEN1nLtGFm1RbsJHRhQMVxxYU
BD8wZHbgGMZ8jxhA2ciF00yQGM7BpQg/xxcTuOIdGrhA2kK1us+XFtYp41aFclE6
JBaCErsKlcVVrM1QuryQOTm54VhXJYd5UZV67cayTwiTw/sEHhf8MExW2o2mfsSU
ZFukCOXH89NCftYq4/V46xxTab5/n2d9wp0Qu1RnCAZVDJkmFDGLjk5gAUGv/A5g
OIRgEGOdmA9kNOM1JwmEFdlAtksBLEXHZ0Wi02lP+4DWn5R8w8dcB8HDTG0pStEc
0IoOZhY9xd5Zi7s26AUq7Ub8iRGYokxHm9H1g/XJ9v0U8yQZyOa4hv/FN2absq1R
eI/RTml3ImPllExVtJGmmmHleBWWM/Rt+rZFW5IlWjztKVMhZqPb3mw++TSb/vqy
OD89O/+whNve9PLrfLEXLQwn/ieRynE5kDXmiN26eDzVPfifpu601WGGTVDflfVZ
abqODCLBb5iSwzWab/7OODQ3qaKTfetVbXTCW3LvznwKDdURtwdKE0W18xbwf5x6
m2uMyzt5TLd9JwPioGWmUaq3ShKjlKHSG41e4al5CMLghY9WiPzuFd79S138Adl+
/W58BQAA" |
        openssl enc -base64 -d | gunzip > /data/hack/patch_skin.sh
chmod +x /data/hack/patch_skin.sh

echo "...OK!"

echo
echo "Getting $build KODI image..."

wget -O $nfs_temp_dir/build.md5 $server/$build/build.md5

if [ ! -f $nfs_temp_dir/build.md5 ]
then
        echo
        echo "Error downloading build.md5."
        echo
        exit 1
fi

echo "...OK!"

echo
echo "Downloading KODI image..."

wget -O $nfs_temp_dir/xbmc.sqfs $server/$build/xbmc.sqfs
echo "...OK!"

echo
echo "Verifying KODI image ..."

cd $nfs_temp_dir/
if [ `md5sum -c build.md5 2>&1 | grep -c OK` -eq 0 ]
then
        echo
        echo
        echo "Error verifying XBMC image!"
        echo
        exit 1
fi

echo "...OK!"


# Backup existing portable_data folder
if [ -d $nfs_base_dir/portable_data ]
then
        echo
        echo "Backing up portable data..."

        mkdir -p $nfs_temp_dir/portable_data_backup
        cp -rf $nfs_base_dir/portable_data/* $nfs_temp_dir/portable_data_backup/

        echo "...OK!"
fi

echo
echo "Copying system files..."

mkdir -p $nfs_temp_dir/squashfs
mount -o loop -t squashfs $nfs_temp_dir/xbmc.sqfs $nfs_temp_dir/squashfs
cp -rf $nfs_temp_dir/squashfs/* $nfs_base_dir/

echo "...OK!"


# Restore portable_data folder
if [ -d $nfs_temp_dir/portable_data_backup ]
then
        echo
        echo "Restoring portable data..."

    cp -rf $nfs_temp_dir/portable_data_backup/* $nfs_base_dir/portable_data/

        echo "...OK!"
fi


if [ -d $nfs_base_dir/addons/skin.confluence ]
then
        dialog --ascii-lines --title " Warning " --yesno "\nIt appears you already have some addons installed, possibly from a previous install.\n\nIf you choose to keep the addons and have problems booting, please re-run the installer and choose NOT to keep the addons.\n\nWould you like to keep the current addons?" 13 70
        ret=$?
        clear
else
        ret=1
        echo
fi

if [ $ret -eq 1 ]
then
        # user answered no -or- no addons installed
        echo
        echo "Getting $build KODI bundled addons..."
        wget -O $nfs_temp_dir/addons.tar.bz2 $server/$build/addons.tar.bz2
        echo "...OK!"

        echo
        echo "Verifying addons ..."
        if [ `md5sum -c $nfs_temp_dir/build.md5 2>&1 | grep -c OK` -eq 0 ]
        then
                echo
                echo
                echo "Error verifying addons!"
                echo
                exit 1
        fi
        echo "...OK!"

        echo
        echo "Extracting bundled addons (this might take a while on slow drives) ..."
        bar -n $nfs_temp_dir/addons.tar.bz2 | tar xjf - -C $nfs_base_dir/addons
        echo "...OK!"
fi

if [ $feat_patchskin -eq 1 ]
then
        echo
        echo "Patching Confluence skin...";
        sh /data/hack/patch_skin.sh
fi

if [ $feat_dropbear -eq 1 ]
then
        echo
        echo "Installing Dropbear...";
        wget -O $nfs_temp_dir/dropbearmulti-i686 $server/dropbear/dropbearmulti-i686
        mv $nfs_temp_dir/dropbearmulti-i686 /data/hack/bin/dropbearmulti-i686 2>/dev/null
        chmod +x /data/hack/bin/dropbearmulti-i686

        wget -O $nfs_temp_dir/bash $server/dropbear/bash-static
        mv $nfs_temp_dir/bash /data/hack/bin/bash 2>/dev/null
        chmod +x /data/hack/bin/bash

        rm -f /data/hack/init.d/dropbear.sh
        wget -O /data/hack/init.d/30dropbear.sh $server/dropbear/dropbear.sh
        chmod +x /data/hack/init.d/30dropbear.sh

        # backup and remove old dropbear startup script if present
        if [ ! -f /data/hack/dropbear.sh.bak ]
        then
                if [ `cat /data/hack/boot.sh | grep -c /data/hack/dropbear.sh` -eq 1 ]
                then
                        mv /data/hack/dropbear.sh /data/hack/dropbear.sh.bak 2>/dev/null
                        touch /data/hack/dropbear.sh
                fi
        fi

        ln -sf /data/hack/bin/dropbearmulti-i686 /data/hack/bin/dropbear
        ln -sf /data/hack/bin/dropbearmulti-i686 /data/hack/bin/ssh
        ln -sf /data/hack/bin/dropbearmulti-i686 /data/hack/bin/dropbearkey
        ln -sf /data/hack/bin/dropbearmulti-i686 /data/hack/bin/dropbearconvert
        ln -sf /data/hack/bin/dropbearmulti-i686 /data/hack/bin/scp

        if [ ! -f /data/hack/.ssh/id_rsa ]
        then
                mkdir -p /data/hack/.ssh
                /data/hack/bin/dropbearkey -t rsa -f /data/hack/.ssh/id_rsa
        fi
        echo "...OK!"
fi

if [ $feat_newshell -eq 1 ]
then
        echo
        echo "Removing Telnet password...";
        echo "H4sIAMt0NVMCA41TUWvbMBB+jn7FVQsEOhy1ryl5SEkggWwtaWkpZaSqfI7FFEmT
lC1Q+t/r2JadOhSmB6Hv7jvd3XfStzP2KjXzObmfz24n9/PxgKU8cJZz8fvgGjFj
A1NGcFXBnXddWB46XN8ht7g61btw0gY/ICQzDjKQGqr0Vu02Unt2fgWpIVAvmcEz
JCn037L3Q0L4dQUhR90Q4orN0Mgc9d9q2ztt2JkkqdFICO6tcQFiSMusHcvperm4
Xk1WT+tKo+HoSCUlX487L2HbeAsPh7ixjQ8O+RZdcjG8vOjEsz9hEHPPb37MjofS
OGY/H6Idg2BD60wmFRZaVjIhsLC1rFAxcKWGPi/UIqVave3fE18Hr91Oa6k3pFe/
j68JuJeBFFK2aZuaLPf+X9rmfZgsF9NCwru7x5vVdPySI08h0XB5EvNCSM+VXg+J
BXp7sBqXjoBCjCeoPJJecx0/ScDLulDkBiit6qP96KUwHhfwcwg9eVJVdPLFoh0e
PKISZosQDFybPeL3eTEzD/S/72uIIoV26o01ftey9893LrQwzqEIYGu1aNn/B48k
l4jkAwAA" | openssl enc -base64 -d | gunzip > /data/hack/shell.sh
        rm -f /data/etc/passwd
        echo "...OK!"
fi

echo
echo "Creating startup scripts ...";

echo "#! /bin/sh
touch /data/hack/.skip_internal_xbmc
reboot" > /data/hack/reboot_to_boxee.sh
chmod +x /data/hack/reboot_to_boxee.sh
echo "...OK!"

echo "H4sIAIFYm1UCA5VUW0/bMBR+rn/FWUGdhpS6wKYNUJGAVXQatDywaQih1LFPG6uu
ncVOodJ+/Oy0Kc3obpYSJefyndvns/MKaCI1tSkhemzjhFmMhcy71M0yOtOOTo2Q
hMgx3EM0BiqYYzRlfErbmAdjZSYWHohLUZNGPvMW5lErwwR9SmacZiZ3LFEeNDg6
9KhB3t7zfntk7KF3gKfIp+AMWETwkQqLOaRGCaknwCDHmXEIU1wQjx+SCLnlyARx
puDpxv9GeqGqIIulzgrn08I5LT8pzlG7DuzD6bMntEhhFWIG+51wyFQqxZSCDYiD
0xJEF0oRwn3t0Bxx5p5BRk2QmsDqNPc7H44/9+7i/vDqYxPewA6kqASE/kAEiTHO
m/uqQz/WXtVZVbrRbjuVmc/EYa6ZioMTnJxsRjvcFq3IarES84T4ItiqjX8Nhpbx
7VzYYl9xwtaQ7ULz2MkZtr28RTbK/TPc2hKfpFvxRkgbqLUsChQrtGdSTmam0A4i
X6zUAn6hRMJyoCZztHSi5+F9VXl6zDD3FaCvU7rXFqxjuUMBTIUhLwhFx2nOD9uC
fjl6W9qmTHkzk9V1R0ucUlHxqQzYZ6ouWGdQkz6TsNBxidUO9/Qxlb7oe3B5gb7L
wpBGOZJRZiE6gx8wyT2PI14Sq+2LHkGE36EDD9BqbbMLV7xmRxrL0TW4gN3NteBF
y+ljXU6rUMG3cm74/26z0jS9BJXFtaKKGhRhno1Gf3jd69Zw4fJiOPga35zd9usK
OuFGz+GsF/cGl58GvS7jTs4Rbu5u+8PBFvts4VKjD9rvj38jp0omkViUq2sF8zKf
/4T5dn59EW+pqu67G/oWRZ5mWjBlNEKU+WVzWu6Vsn1+V/r2LPfTO7Iewj9cwfUw
atenbHh4hI9GyE/KWLlXBQYAAA==" | openssl enc -base64 -d | gunzip > /data/hack/init.d/99xbmc_launch.sh

chmod +x /data/hack/init.d/99xbmc_launch.sh
rm -f /data/hack/init.d/xbmc_launch.sh

echo "H4sIAMbwJFMCA5WQTU+DQBCGz+yveKUlVSuQxuil4WLi10FPXoxtBJahrMBSd5cW
v/67C21SryZ7mJl355l3ZnSEMBUy1AVjI/0hOXjV8JJtC1ERXmBUS1iyrGGOIhPF
0qyzxBD8FjYM2rSVpg14U+MbK0Vr+BxJ9tZqEzNH5JYwtn3w6R0zLOcwBUnmOKmi
pJwzhypNNtUV2dYL5uTCjpJkveSi21lB3ih0ac1hcZIoo4yxgeyOZy6iaCcu2Q49
KH6O0NpMwiLhZRhY1qsRdb+IszdAvGhwIzohVxikIAiYrY94IzekDEyDVloPvdg7
JK6jmLq1wiIeLjD19CLG9JB+2tQ9dXF+GQ8kbffuJRsPP+JkW8LfQEfjnobJ1fXt
/SO+sFZCGmij8n7YsevVXubdeQ/es3sGfTLHz+RA3Pv5J/HpD6k/sn2/Q0B6bvoB
AAA=" | openssl enc -base64 -d | gunzip > /data/hack/sync_time.sh

chmod +x /data/hack/sync_time.sh

rm -f /data/hack/.skip_internal_xbmc

# disable the checkxbmc.sh script, if it hasn't been already
if [ `grep -c "^sh /data/hack/checkxbmc.sh" /data/hack/boot.sh` -gt 0 ]
then
        cat /data/hack/boot.sh | sed 's/sh \/data\/hack\/checkxbmc.sh/\#sh \/data\/hack\/checkxbmc.sh/g' > /data/hack/boot.sh
fi

# init.d launch script not present - we will make one
echo "IyEgL2Jpbi9zaAoKZmluZCAvZGF0YS9oYWNrL2luaXQuZCAtdHlwZSBmIHwgc29y
dCB8IHdoaWxlIHJlYWQgbGluZQpkbwoJc2ggJGxpbmUKZG9uZQo=" |
openssl enc -base64 -d > /data/hack/xbmc_launch.sh

chmod +x /data/hack/xbmc_launch.sh

# add our xbmc launch script, if not there already
if [ `grep -c "^sh /data/hack/xbmc_launch.sh" /data/hack/boot.sh` -eq 0 ]
then
    echo "sleep 10" >> /data/hack/boot.sh
        echo "sh /data/hack/xbmc_launch.sh &" >> /data/hack/boot.sh
    echo "sh /data/hack/mount.sh &" >> /data/hack/boot.sh
fi

umount $nfs_temp_dir/squashfs
rm -rf $nfs_temp_dir

echo
echo -n You must reboot to complete the installation.

while true; do
        echo
        read -p "Reboot now (Y or N)? " yn
        case $yn in
                [Yy]* ) reboot; break;;
                [Nn]* ) echo; exit 0;;
                * ) echo "Please answer Y or N.";;
        esac
done

4- Run the install script
Code:
./kodi_nfs_install.sh

5- Reboot... and that's it!
Reply
#2
Just a thought from a beginner in scripting Wink....

Maybe I would check if the server is reachable:

Code:
ping -c4 192.168.0.2 1>/dev/null
[ $? -eq 0 ] && echo "server is reachable" || echo "server not reachable" && exit 1

and you create a mount point, but you don't check if it is really created....

Code:
#Create mount point
kodi_dir=/tmp/mnt/kodi
mkdir -p "$kodi_dir"
[ ! -e $kodi_dir] && echo "error message" && exit 1
Reply
#3
(2015-07-07, 13:28)David1977 Wrote: Just a thought from a beginner in scripting Wink....

Maybe I would check if the server is reachable:

Code:
ping -c4 192.168.0.2 1>/dev/null
[ $? -eq 0 ] && echo "server is reachable" || echo "server not reachable" && exit 1

and you create a mount point, but you don't check if it is really created....

Code:
#Create mount point
kodi_dir=/tmp/mnt/kodi
mkdir -p "$kodi_dir"
[ ! -e $kodi_dir] && echo "error message" && exit 1

Thanks, I'll add that.
Reply
#4
David1977, just added your suggestions, thanks again.



Just wondering if someone could test this.

I want to add this thread to the "3.2 Running {{Kodi} on Boxee Box " section in the Boxeebox's Wiki.
Reply
#5
I wanted to know what you can tell me how the NFS that this script installs differes from the bundled NFS with boxee / boxee hacks..

Also I do this as seen here

http://boxeed.in/forums/viewtopic.php?f=13&t=1299

The problem I keep having however is that whern XBMC loads it takes mnunutes after the Boxee interface is visible and sometimes loads without boxee hack running. I think that when it does not run at all is when the networking has not really come up. If I remove all NFS mounts (native Boxee NFS mounts ) in 10mount.sh then all is good with the networking although obviously no NFS mounts nor access to Kodi on NFS server.

I want to try to integrate this into the slaved boxee as I linked to before so that maybe it will get surmount the NFS / Networking issue I am having
Reply
#6
(2015-07-12, 21:07)tekno Wrote: I wanted to know what you can tell me how the NFS that this script installs differes from the bundled NFS with boxee / boxee hacks..

Also I do this as seen here

http://boxeed.in/forums/viewtopic.php?f=13&t=1299

The problem I keep having however is that whern XBMC loads it takes mnunutes after the Boxee interface is visible and sometimes loads without boxee hack running. I think that when it does not run at all is when the networking has not really come up. If I remove all NFS mounts (native Boxee NFS mounts ) in 10mount.sh then all is good with the networking although obviously no NFS mounts nor access to Kodi on NFS server.

I want to try to integrate this into the slaved boxee as I linked to before so that maybe it will get surmount the NFS / Networking issue I am having

This script does not install NFS. It installs the Kodi system on a NFS share and creates specific boot scripts so the Boxee+Hacks can boot Kodi from this NFS share.

First, I'd suggest you to backup your Kodi user preferences and perform a factory reset, then install the last official firmware update and then Boxee+Hacks (following their site's steps, with two boots and all). From the time when your BoxeeBox boots Boxee+Hacks everytime (making available the Boxee+Hacks menu on the config screen), then proceed to configure it to start Kodi from the NFS share.

Just to make things clear, I will describe what I discovered while I was writing my script. The Boxee boots Boxee+Hacks like this:

1- BoxeeBox system starts;
2- When the init system starts the Windows file sharing, it will run the '/media/BOXEE/boot.sh' script, thru code injection;
3- BoxeeBox system is still starting but now the 'boot.sh' script is also running, in parallel;
4- The 'boot.sh' script will run the Boxee+Hack start scripts;
5- The Boxee+Hacks starts on your screen.

When you install Kodi locally, it will create the 'xbmc_launch.sh' script and the 'init.d' folder with the '30dropbear.sh' and '99xbmc_launc.sh' scripts. It will also add the 'sh /data/hack/xbmc_launch.sh' line to the 'boot.sh' script.

The catch is: when the 'boot.sh' script finishes, the Boxee+Hacks is still initializing. It will mount it's own mountpoints, overriding anything you have run before. So, I added the 'sleep 10' command so that the Boxee+Hack boots and just then you mount your NFS shares.

My install script creates a 'mount.sh' script that will try to mount the NFS share until it's succesfull, not just one try, so that it's sure the NFS share is really mounted. In my modified 'boot.sh' the mounting is made AFTER starting Kodi. It goes like this:

Code:
sh /data/hack/skin.sh &
sh /data/hack/splash.sh &
sh /data/hack/visualiser.sh &
sh /data/hack/subtitles.sh &
sh /data/hack/logo.sh &
sh /data/hack/apps.sh &
sh /data/hack/network.sh &
sh /data/hack/telnet.sh &
sh /data/hack/ftp.sh &
sh /data/hack/plugins.sh &
sleep 10
sh /data/hack/xbmc_launch.sh &
sh /data/hack/mount.sh &

It works everytime, flawlessly.
Reply
#7
reboot to boxee is no longer work after this setup.
Reply
#8
(2015-12-22, 22:43)kodBoxee Wrote: reboot to boxee is no longer work after this setup.

Are you able to retrieve any error message? Mine used to boot without any issues (I'm not using the boxee anymore)
Reply

Logout Mark Read Team Forum Stats Members Help
BoxeeBox - Boot Kodi from NFS (installer script)0