diff options
Diffstat (limited to 'meta-gnome/recipes-gnome/gdm/gdm/gdm')
-rwxr-xr-x | meta-gnome/recipes-gnome/gdm/gdm/gdm | 89 |
1 files changed, 89 insertions, 0 deletions
diff --git a/meta-gnome/recipes-gnome/gdm/gdm/gdm b/meta-gnome/recipes-gnome/gdm/gdm/gdm new file mode 100755 index 000000000..43eae9517 --- /dev/null +++ b/meta-gnome/recipes-gnome/gdm/gdm/gdm | |||
@@ -0,0 +1,89 @@ | |||
1 | #! /bin/sh | ||
2 | ### BEGIN INIT INFO | ||
3 | # Provides: gdm | ||
4 | # Should-Start: console-screen acpid dbus hal network-manager | ||
5 | # Required-Start: $local_fs $remote_fs | ||
6 | # Required-Stop: $local_fs $remote_fs | ||
7 | # Default-Start: 2 3 4 5 | ||
8 | # Default-Stop: 0 1 6 | ||
9 | # Short-Description: GNOME Display Manager | ||
10 | # Description: Debian init script for the GNOME Display Manager | ||
11 | ### END INIT INFO | ||
12 | # | ||
13 | # Author: Ryan Murray <rmurray@debian.org> | ||
14 | # | ||
15 | set -e | ||
16 | |||
17 | PATH=/sbin:/bin:/usr/sbin:/usr/bin | ||
18 | DAEMON=/usr/sbin/gdm | ||
19 | |||
20 | test -x $DAEMON || exit 0 | ||
21 | |||
22 | if [ -r /etc/default/locale ]; then | ||
23 | . /etc/default/locale | ||
24 | export LANG LANGUAGE | ||
25 | fi | ||
26 | |||
27 | # To start gdm even if it is not the default display manager, change | ||
28 | # HEED_DEFAULT_DISPLAY_MANAGER to "false." | ||
29 | HEED_DEFAULT_DISPLAY_MANAGER=true | ||
30 | DEFAULT_DISPLAY_MANAGER_FILE=/etc/X11/default-display-manager | ||
31 | |||
32 | case "$1" in | ||
33 | start) | ||
34 | # make needed directories in volatile | ||
35 | |||
36 | if [ -e /var/log/gdm ] ; then | ||
37 | rm -rf /var/log/gdm | ||
38 | fi | ||
39 | |||
40 | mkdir -m 01770 /var/log/gdm | ||
41 | chown gdm:gdm /var/log/gdm | ||
42 | |||
43 | if [ -e /tmp/.ICE-unix ] ; then | ||
44 | rm -rf /tmp/.ICE-unix | ||
45 | fi | ||
46 | |||
47 | mkdir -m 01777 /tmp/.ICE-unix | ||
48 | chown root:root /tmp/.ICE-unix | ||
49 | |||
50 | CONFIGURED_DAEMON=$(basename "$(cat $DEFAULT_DISPLAY_MANAGER_FILE 2> /dev/null)") | ||
51 | if grep -wqs text /proc/cmdline; then | ||
52 | echo "Not starting GNOME Display Manager (gdm); found 'text' in kernel commandline." | ||
53 | elif [ -e "$DEFAULT_DISPLAY_MANAGER_FILE" ] && \ | ||
54 | [ "$HEED_DEFAULT_DISPLAY_MANAGER" = "true" ] && \ | ||
55 | [ "$CONFIGURED_DAEMON" != gdm ] ; then | ||
56 | echo "Not starting GNOME Display Manager; it is not the default display manager" | ||
57 | else | ||
58 | echo "Starting GNOME Display Manager" "gdm" | ||
59 | start-stop-daemon --start -b --exec $DAEMON | ||
60 | fi | ||
61 | ;; | ||
62 | stop) | ||
63 | echo "Stopping GNOME Display Manager" "gdm" | ||
64 | set +e | ||
65 | start-stop-daemon --stop --quiet --pidfile /var/run/gdm.pid \ | ||
66 | --name gdm --retry 5 | ||
67 | set -e | ||
68 | ;; | ||
69 | reload) | ||
70 | echo "Scheduling reload of GNOME Display Manager configuration" "gdm" | ||
71 | set +e | ||
72 | start-stop-daemon --stop --signal USR1 --quiet --pidfile \ | ||
73 | /var/run/gdm.pid --name gdm | ||
74 | set -e | ||
75 | ;; | ||
76 | status) | ||
77 | status_of_proc -p "$PIDFILE" "$DAEMON" gdm && exit 0 || exit $? | ||
78 | ;; | ||
79 | restart|force-reload) | ||
80 | $0 stop | ||
81 | $0 start | ||
82 | ;; | ||
83 | *) | ||
84 | echo "Usage: /etc/init.d/gdm {start|stop|restart|reload|force-reload|status}" | ||
85 | exit 1 | ||
86 | ;; | ||
87 | esac | ||
88 | |||
89 | exit 0 | ||