2014-08-30 14:45:08 -04:00
|
|
|
#!/usr/bin/env bash
|
|
|
|
|
|
|
|
XPID=
|
2016-01-05 10:46:43 -05:00
|
|
|
FPID=
|
2014-08-30 14:45:08 -04:00
|
|
|
function create_fake_x ( )
|
|
|
|
{
|
2014-08-30 14:53:35 -04:00
|
|
|
export DISPLAY=":$1"
|
2014-08-30 14:45:08 -04:00
|
|
|
echo "Starting fake X: ${DISPLAY}"
|
2016-06-02 02:39:40 -04:00
|
|
|
Xvfb +extension XINERAMA +xinerama -screen 0 1280x1024x24 -screen 1 800x600x24 ${DISPLAY} &
|
2014-08-30 14:45:08 -04:00
|
|
|
XPID=$!
|
2016-01-07 15:27:20 -05:00
|
|
|
sleep 1;
|
2016-01-08 17:15:28 -05:00
|
|
|
timeout -k 30s 30s fluxbox &
|
2016-01-05 10:46:43 -05:00
|
|
|
FPID=$!
|
2014-08-30 14:45:08 -04:00
|
|
|
sleep 1
|
|
|
|
}
|
|
|
|
|
|
|
|
function destroy_fake_x ( )
|
|
|
|
{
|
|
|
|
if [ -n "${XPID}" ]
|
|
|
|
then
|
2016-01-05 10:46:43 -05:00
|
|
|
echo "Stopping fake X: ${XPID} - ${FPID}"
|
|
|
|
kill ${FPID}
|
2016-01-08 16:17:00 -05:00
|
|
|
echo " wait flux"
|
2016-01-05 10:46:43 -05:00
|
|
|
wait ${FPID}
|
2014-08-30 14:45:08 -04:00
|
|
|
kill ${XPID}
|
2016-01-08 16:17:00 -05:00
|
|
|
echo "wait x"
|
2014-08-30 14:45:08 -04:00
|
|
|
wait ${XPID}
|
|
|
|
fi
|
|
|
|
}
|
|
|
|
|
|
|
|
if [ -n "$3" ]
|
|
|
|
then
|
2014-08-30 14:53:35 -04:00
|
|
|
export PATH=$3:$PATH
|
2014-08-30 14:45:08 -04:00
|
|
|
fi
|
|
|
|
|
|
|
|
create_fake_x "$1"
|
2014-08-30 14:53:35 -04:00
|
|
|
echo "$DISPLAY"
|
2015-12-31 17:02:13 -05:00
|
|
|
$2 $4
|
2014-08-30 14:45:08 -04:00
|
|
|
RES=$?
|
|
|
|
|
|
|
|
destroy_fake_x
|
|
|
|
|
|
|
|
exit ${RES}
|