-
Notifications
You must be signed in to change notification settings - Fork 21
Lubuntu kiosk setup procedures
The following instructions apply to creating a kiosk using Lubuntu on a Foxconn computer.
Contents
1 Install Lubuntu on the device
1.1 Fresh installation method
1.2 Duplication method
2 Configure Lubuntu and the device
3 Configure the kiosk boot code
#Install Lubuntu on the device ##Fresh installation method
Download the ISO installation file.
"Burn" the ISO to a USB drive. UNetbootin can help you place the ISO onto the USB drive.
Insert the USB drive into the computer and boot from it.
Follow the setup instructions while the computer sets up the operating system. This process may take about 45 minutes.
If you have a preconfigured distro, write the distro to the SD card and install the SD card into the device. You will need to change a few settings, however, to ensure the kiosk's web browser loads the correct page.
Open the terminal in your desktop and type
sudo dd if=/location/of/image/file.bin of=/location/of/card
The source file will end in .bin and the destination should be your card. On some computers, the card will be located at /dev/sdc, as sdc refers to SD Card. It may be different on different computers.
Since the BIOS settings are not written to the card, follow the steps in Hardware settings below.
You should be able to boot from the SD card now. When it boots and loads the web browser, hit F11 to escape full-screen mode and then close the browser.
If you need admin access, the user name and password are both set to transit.
Click the Lubuntu menu button Click Accessories | File Manager Navigate to /home/transit/.config/autostart/ Open browserboot.sh for editing. Change the URL in line 17 to point to the correct URL. Save and close the file. To test the change, double-click browserboot.sh and execute it in the terminal. Make sure the browser loads to the correct page.
You will need to configure Lubuntu settings as well as hardware settings.
Hold F11 or the Del key while the computer boots to enter the BIOS setup. Set the Restore on AC power loss setting to On. Disable the Deep sleep option. (Optional) Set the Boot Num-Lock setting to On.
Right-click on the desktop. Click Desktop preferences. Set the Wallpaper mode to Fill with background color only Click Close.
Click the Lubuntu menu button. Click Preferences | Screensaver. Set the Mode to Disable Screen Saver. Quit.
Click the Lubuntu menu button. Click System Tools | Update Manager. When the Update Manager opens, click the Settings button. Uncheck everything in the Updates tab. Set Automatically check for updates and Notify me of a new Ubuntu version to Never. Click Close and click Close again.
Click the Lubuntu menu button.
Click Accessories | LXTerminal.
Type sudo apt-get install unclutter
and confirm any installation questions.
Type sudo apt-get install libnotify-bin
and confirm any installation questions.
Type sudo apt-get install startupmanager
and confirm any installation questions. You are installing startupmanager so you can disable the boot dialog that offers the option to boot in recovery mode. Now disable recovery mode.
Open the Chromium browser from the taskbar. Click the wrench image to the right of the location bar. Click Preferences Click the Personal Stuff section. Click the Get themes link in the Appearance section. Type Slinky Elegant into the search box on the preferences page. Click the Results for "Slinky Elegant" in Themes link. Mouse over the theme and click the Choose theme button. Install the theme.
Click the Lubuntu menu button. Click Run. In the text box, type xfce4-power-manager-settings and click OK. Click the On AC button. Set all of the sliders in the Actions and Monitor tabs to Never. Click Close.
You will need to create two new files on the system. Open your favorite text editor to create the file /home/{your user name}/.config/autostart/browserboot.sh and past the following code into the file.
#!/bin/bash
fnCheckConnection() {
notify-send 'Transit Screen' 'Verifying the internet connection.' -t 3000
sleep 4s
WGET="/usr/bin/wget"
$WGET -q --tries=10 --timeout=5 http://www.google.com -O /tmp/index.google &> /dev/null
if [ ! -s /tmp/index.google ];then
notify-send 'Transit Screen' 'Cannot connect to the internet. Re-attempting...' -t 3000
sleep 4s
fnCheckConnection `expr $1 + 1`
else
notify-send 'Transit Screen' 'Connected to the internet. Opening the screen' -t 2000
sleep 3s
/usr/bin/chromium-browser --incognito --kiosk "http://www.commuterpage.com"
fi
}
fnCheckConnection "1"
Replace www.commuterpage.com with the URL you want the browser to load. You will also notice that we have set the incognito and kiosk flags. The former ensures that the browser does not display the session recovery window if the device loses power and reboots. The latter flag ensures that the browser boots full-screen with all the browser chrome hidden.
Since this is just a shell script, you will need another file that the operating system reads when it boots. This other file will tell the operating system to run the shell script.
In the same directory as the broswerboot.sh file, create a new file transit.desktop and enter in the following code:
[Desktop Entry]
Version=1.0
Name=Transit booter
GenericName=Transit booter
Exec=/home/transit/.config/autostart/browserboot.sh
Terminal=false
X-MultipleArgs=false