A 4 year old boy and his Ubuntu 14.04 laptop

I have setup Edubuntu 14.04 for my 4 year old boy to play games, watch some childrens TV shows (from the Mythtv based HTPC), learn mouse skill etc.

I first of all setup a staticically assigned IP address for both his WIFI and Ethernet Mac addresses on the DHCP server on our router to disallow any internet traffic.

I then installed squid on the HTPC server with a white list specific for his IP addresses.  His laptop was then configured to use a proxy pointing at the squid server.  He can browse only to a set of sites that either his mum or myself check first.

I have restricted his access to mythweb (to only the recordings area, used apache location filters to disallow anything else unless authenticated.

I have configured Chrome to immediately start playing the ASX streamed content (see here for details on what I needed to do)

We actually only use mythweb for his TV shows, as I don’t really like watching much commercial TV and I use youtube for anything I do watch.  My wife watches Q&A and Tom would never voluntarily click on those links as he finds the shows boring 🙂

I have recently been trialling the idea of installing XBMC 13.2 on his laptop instead of mythweb.  He is already familiar with the XBMC experience from the LCD screen on our TV.

I have installed XBMC 13.2beta1 on my laptop and successfully setup remote access to the mythtv configuration.  All I needed to do was enable access to the mythconverg mysql db remotely as I must have configured the mythtv service ports in the past for external access (Don’t remember doing it, but the 6544 and 6543 ports are both accessible outside of the myth box)

My main issue with XBMC is the Exit menu which allows restarting or shutting down the laptop, something I think my son would certainly have a go at clicking on.

I also want to lock down the settings menu’s so I don’t have to keep fixing up the configuration.  He won’t be able to install new addons because I have locked down internet access, but he certainly could stuff up the configuration and force me to reapply it.

So for the Shutdown / Restart menu options, the main ways that have been suggested are hacking the xml for the menu skin.  This is not an option as it would get overwritten when I next update XBMC.

More google searching highlighted an option to completely disallow the use of the shutdown / restart menus via the local policy kit stuff in ubuntu.

http://askubuntu.com/questions/453479/how-to-disable-shutdown-reboot-from-lightdm-in-14-04

I can target a specific user or group and disable access to the various power options.  And imagine my surprise when XBMC automatically removed these options from the menu once the policy settings were applied.  They don’t even need a restart or a logout/login cycle.

I added a file:

/etc/polkit-1/localauthority/50-local.d/restrict-login-powermgmt.pkla

[Disable lightdm PowerMgmt]
Identity=unix-group:users
Action=org.freedesktop.login1.reboot;org.freedesktop.login1.reboot-multiple-sessions;org.freedesktop.login1.power-off;org.freedesktop.login1.power-off-multiple-sessions;org.freedesktop.login1.suspend;org.freedesktop.login1.suspend-multiple-sessions;org.freedesktop.login1.hibernate;org.freedesktop.login1.hibernate-multiple-sessions
ResultAny=no
ResultInactive=no
ResultActive=no

I added my son to the users group. (I could just as easily have just specified unix-user: thomas as well)  Works very well for XBMC. It’s a shame though that it also disables access to the power off button on his laptop.

Next step is to see if I can force XBMC to run as a particular user and just restrict access to the power buttons to that user, rather than my sons user.

 

 

Leave a Reply

Your email address will not be published. Required fields are marked *