66 lines
1.4 KiB
Plaintext
66 lines
1.4 KiB
Plaintext
|
#!/bin/sh
|
||
|
#
|
||
|
### BEGIN INIT INFO
|
||
|
# Provides: xserver
|
||
|
# Required-Start: $local_fs $remote_fs dbus
|
||
|
# Required-Stop: $local_fs $remote_fs
|
||
|
# Default-Start: 2 3 4 5
|
||
|
# Default-Stop: 0 1 6
|
||
|
### END INIT INFO
|
||
|
|
||
|
killproc() { # kill the named process(es)
|
||
|
pid=`/bin/pidof $1`
|
||
|
[ "$pid" != "" ] && kill $pid
|
||
|
}
|
||
|
|
||
|
read CMDLINE < /proc/cmdline
|
||
|
for x in $CMDLINE; do
|
||
|
case $x in
|
||
|
x11=false)
|
||
|
echo "X Server disabled"
|
||
|
exit 0;
|
||
|
;;
|
||
|
esac
|
||
|
done
|
||
|
|
||
|
case "$1" in
|
||
|
start)
|
||
|
. /etc/profile
|
||
|
username=root
|
||
|
echo "Starting Xserver"
|
||
|
if [ -f /etc/X11/Xusername ]; then
|
||
|
username=`cat /etc/X11/Xusername`
|
||
|
# setting for rootless X
|
||
|
chmod o+w /var/log
|
||
|
chmod g+r /dev/tty[0-3]
|
||
|
chmod o+rw /dev/input/*
|
||
|
# hidraw device is probably needed
|
||
|
if [ -e /dev/hidraw0 ]; then
|
||
|
chmod o+rw /dev/hidraw*
|
||
|
fi
|
||
|
fi
|
||
|
# Using su rather than sudo as latest 1.8.1 cause failure [YOCTO #1211]
|
||
|
su -l -c '/etc/X11/Xserver&' $username
|
||
|
# Wait for the desktop to say its finished loading
|
||
|
# before loading the rest of the system
|
||
|
# dbus-wait org.matchbox_project.desktop Loaded
|
||
|
;;
|
||
|
|
||
|
stop)
|
||
|
echo "Stopping XServer"
|
||
|
killproc xinit
|
||
|
;;
|
||
|
|
||
|
restart)
|
||
|
$0 stop
|
||
|
sleep 1
|
||
|
$0 start
|
||
|
;;
|
||
|
|
||
|
*)
|
||
|
echo "usage: $0 { start | stop | restart }"
|
||
|
;;
|
||
|
esac
|
||
|
|
||
|
exit 0
|