Hello,
I recently updated my Lakka install (using Lakka-update) to nightly build r21438 (from 11 May 2016 for x86_64 generic), and I love the ribbon UI.
It had been many months since I updated Lakka. I was running the nightly from around 31 Dec 2015. I wanted to post solutions (as well as my diagnostic methodology) to a few minor problems I encountered during the upgrade
Xbox 360 wireless controllers (with genuine MS receiver) After upgrading, the on screen display notification indicated that by controllers were connected, but I could not use them. The distributed joypad configs and their potential overrides live in an overlayfs (overlay file system), the details of which you can identify from an SSH command prompt by simply typing “mount” (with no args)
$> mount | grep overlay
none on /tmp/joypads type overlay (rw,relatime,lowerdir=/etc/retroarch-joypad-autoconfig,upperdir=/storage/joypads,workdir=/storage/.tmp/joypads-workdir)
none on /tmp/database type overlay (rw,relatime,lowerdir=/usr/share/libretro-database,upperdir=/storage/database,workdir=/storage/.tmp/database-workdir)
none on /tmp/cores type overlay (rw,relatime,lowerdir=/usr/lib/libretro,upperdir=/storage/cores,workdir=/storage/.tmp/cores-workdir)
none on /tmp/assets type overlay (rw,relatime,lowerdir=/usr/share/retroarch-assets,upperdir=/storage/assets,workdir=/storage/.tmp/assets-workdir)
Lakka looks in /tmp/joypads for its joypad configs, but that dir isn’t a “real” directory. Rather, it is a runtime combination of “lowerdir” and “upperdir”
- “lowerdir” is distributed by Lakka and can be replaced during upgrades
- “upperdir” is a persistent location, the contents of which survive reboots and upgrades unaltered.
My existing “upperdir” contained a file that ended up overriding the newer file distributed by Lakka in “lowerdir” /storage/joypads/udev/Xbox_360_Wireless_Receiver.cfg [I] [B]Deleting the file from “upperdir” allowed Lakka to use the file from “lowerdir”. This made the XBox 360 controllers work properly again. (I may have had to reboot for the change to take effect - I don’t remember)
[/B][/I]Cleaning up other “upperdirs” I also removed the cores appearing in /storage/cores and anything from /storage/database, as well as anything I didn’t want in /storage/assets. Make a copy of anything you might want to keep before deleting it.
Autostart.sh not running (still - thought I had it figured out but was wrong) Upon booting, “/storage/.config/autostart.sh” is supposed to run. However, mine was not (and still isn’t).
The file was indeed executable (chmod a+x autostart.sh), however, the cron job apparently intended to invoke “autostart.sh” was commented out.
Via an SSH comand promt, logged in as root
$> crontab -l
PATH=/bin:/sbin:/usr/bin:/usr/sbin
#@reboot /storage/.config/autostart.sh
#@reboot touch /storage/.config/autostart.sh
I uncommented those two lines by removing the leading “#” on each of those lines. Root’s crontab can be edited with “crontab -e”
$> crontab -e
However, my “autostart.sh” still doesn’t run. “crond” is running, as confirmed by “$> ps aux |grep cron” Any advice would be appreciated.
NTP (network time protocol) Over the course of a few months, the system time was no longer accurate on the laptop running Lakka. Though “ntpd” is included in Lakka, the daemon apparently isn’t running ($> ps aux |grep ntp)
I haven’t tried to activate the ntp daemon, but I did include a line in root’s crontab to invoke “ntpd” once a day at 6am to re-sync my system clock…
$> crontab -e
0 6 * * * ntpd -dnq -p pool.ntp.org &>/dev/null
This is effective at setting system time (and also confirms that “crond” is working).