summaryrefslogtreecommitdiffstats
path: root/testApp.sh
blob: ae9038eb498b1abaa6af936c4cdca1211402f802 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
#!/bin/sh
# Script now simply passes all arguments to the fbgui call.
# Use: ./testApp.sh [OPTIONS] 
# OPTIONS:	
#               -h, --help                    prints help
#               -D <level>, --debug=<level>   sets debug level [0,1]
#               -u <url>,   --url=<url>       sets URL to load
#               -d <dir>,   --download=<dir>  sets download directory
#               -c <path>,  --config=<path>   sets path to config file 
#               -t <path>,  --trigger=<path>  sets path to file triggering URL load
#               -s <path>,  --serial=<path>   sets path to serial number file
#
# Note: all path are expected to be absolute.
QT_VERSION=Qt-4.7.2

# clean /tmp/fbgui
[ -d /tmp/fbgui ] && rm -rf /tmp/fbgui
[ -f /tmp/fbgui_trigger ] && rm /tmp/fbgui_trigger

# path to script (including script name)
script_path="$(cd "${0%/*}" 2>/dev/null; echo "$PWD"/"${0##*/}")"

# to get the path only: use dirname which strips the filename from a path
working_path=`dirname "$script_path"`

# construct unique display_id based on user, needed for multi-user qvfb usage
display_id=$(grep -n $(whoami) /etc/passwd| head -n 1|awk -F : '{print $1}')

# Start QT's virtual framebuffer with proper display_id
/usr/local/Trolltech/$QT_VERSION/bin/qvfb -width 1024 -height 768 -qwsdisplay :$display_id &
# quick sleep to wait for qvfb loading
sleep 0.2
# Start fbgui connecting to QVFb with display_id from above.
$working_path/build/src/fbgui/fbgui -display QVFb:$display_id $@
# kill qvfb since fbgui stopped
killall qvfb