From c2bd85bba40e4c6e741af7321c73685e32bfa555 Mon Sep 17 00:00:00 2001 From: NiLuJe Date: Sun, 26 Apr 2015 22:09:14 +0200 Subject: [PATCH] More Kobo scripts tweak... Trying to figure out why nickel deadlocks on restart... --- platform/kobo/koreader.sh | 6 ++---- platform/kobo/nickel.sh | 29 +++++++++++++++++++++++------ 2 files changed, 25 insertions(+), 10 deletions(-) diff --git a/platform/kobo/koreader.sh b/platform/kobo/koreader.sh index 63cc18af6..78f34fe32 100755 --- a/platform/kobo/koreader.sh +++ b/platform/kobo/koreader.sh @@ -72,12 +72,10 @@ fi if [ "${from_nickel}" == "true" ] ; then # start kobo software because was running before koreader - ./nickel.sh + ./nickel.sh & else # if we were called from advboot then we must reboot to go to the menu - if [ -d "/mnt/onboard/.kobo/advboot" ] ; then - # FIXME: This is not precise enough, cf. #1503; but that alternate proposition is way too drastic, it doesn't account for people running neither KSM nor advboot - #if ! pkill -0 ksmhome.sh ; then + if ! pkill -0 ksmhome.sh ; then reboot fi fi diff --git a/platform/kobo/nickel.sh b/platform/kobo/nickel.sh index 5ca147398..8d92bb449 100644 --- a/platform/kobo/nickel.sh +++ b/platform/kobo/nickel.sh @@ -1,17 +1,30 @@ #!/bin/sh -PATH=$PATH:/usr/sbin:/sbin +PATH="${PATH}:/usr/sbin:/sbin" + +# Handle the rotation weirdness on some devices +cur_rotate="$(cat "/sys/class/graphics/fb0/rotate")" # start fmon again: ( usleep 400000; /etc/init.d/on-animator.sh ) & # environment needed by nickel, from /etc/init.d/rcS: -export INTERFACE="eth0" -export WIFI_MODULE="dhd" -export WIFI_MODULE_PATH="/drivers/ntx508/wifi/${WIFI_MODULE}.ko" +INTERFACE="wlan0" +WIFI_MODULE="ar6000" +if [ "${PLATFORM}" != "freescale" ] ; then + INTERFACE="eth0" + WIFI_MODULE="dhd" +fi +export INTERFACE +export WIFI_MODULE + export NICKEL_HOME="/mnt/onboard/.kobo" export LD_LIBRARY_PATH="/usr/local/Kobo" +export WIFI_MODULE_PATH="/drivers/${PLATFORM}/wifi/${WIFI_MODULE}.ko" +export LANG="en_US.UTF-8" + + # start nickel again (from tshering's start menu v0.4), this should # cover all firmware versions from 2.6.1 to 3.4.1 (tested on a kobo # mini with 3.4.1 firmware) @@ -27,7 +40,7 @@ export LD_LIBRARY_PATH="/usr/local/Kobo" if [ ! -e "/usr/local/Kobo/platforms/libkobo.so" ] ; then export QWS_KEYBOARD="imx508kbd:/dev/input/event0" export QT_PLUGIN_PATH="/usr/local/Kobo/plugins" - if [ -e "/usr/local/Kobo/plugins/gfxdrivers/libimxepd.so" ]; then + if [ -e "/usr/local/Kobo/plugins/gfxdrivers/libimxepd.so" ] ; then export QWS_DISPLAY="imxepd" else export QWS_DISPLAY="Transformed:imx508:Rot90" @@ -37,9 +50,13 @@ if [ ! -e "/usr/local/Kobo/platforms/libkobo.so" ] ; then /usr/local/Kobo/nickel -qws -skipFontLoad else /usr/local/Kobo/hindenburg & - insmod "/drivers/ntx508/misc/lowmem.ko" & + lsmod | grep -q lowmem || insmod "/drivers/${PLATFORM}/misc/lowmem.ko" & if grep -q "dhcpcd=true" "/mnt/onboard/.kobo/Kobo/Kobo eReader.conf" ; then dhcpcd -d -t 10 & fi /usr/local/Kobo/nickel -platform kobo -skipFontLoad fi + +# Rotation weirdness, part II +echo "${cur_rotate}" > "/sys/class/graphics/fb0/rotate" +cat "/sys/class/graphics/fb0/rotate" > "/sys/class/graphics/fb0/rotate"