blob: e026f2bfe6d23f63413dbbb54f2e023e77ed6e5d (
plain)
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
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
|
#! /bin/sh
# postinst script for kdm-trinity
#
# see: dh_installdeb(1)
set -e
# debconf may not be available if some massive purging is going on
HAVE_DEBCONF=
if [ -e /usr/share/debconf/confmodule ]; then
. /usr/share/debconf/confmodule
HAVE_DEBCONF=yes
fi
DEFAULT_DISPLAY_MANAGER_FILE=/etc/X11/default-display-manager
if [ -n "$HAVE_DEBCONF" ]; then
# disown this question
db_unregister shared/default-x-display-manager || true
# does the question still exist?
if db_get shared/default-x-display-manager; then
if db_metaget shared/default-x-display-manager owners; then
# FIXME - redo this part uses shell-lib.sh from xfree86
#observe "X display managers now available are \"$OWNERS\""
db_subst shared/default-x-display-manager choices "$RET"
fi
DEFAULT_DISPLAY_MANAGER=
if db_get shared/default-x-display-manager; then
DEFAULT_DISPLAY_MANAGER="$RET"
fi
# are we removing the currently selected display manager?
if [ -n "$DEFAULT_DISPLAY_MANAGER" ]; then
if [ "kdm-trinity" = "$DEFAULT_DISPLAY_MANAGER" ]; then
if [ -e "$DEFAULT_DISPLAY_MANAGER_FILE" ]; then
if db_get "$DEFAULT_DISPLAY_MANAGER/daemon_name"; then
# does the display manager file reference the current default? if
# so, remove it because it will now be wrong
if [ -n "$RET" ]; then
if [ "$(cat "$DEFAULT_DISPLAY_MANAGER_FILE")" = "$RET" ]; then
rm "$DEFAULT_DISPLAY_MANAGER_FILE"
fi
fi
fi
fi
# ask the user to choose a new default
db_fset shared/default-x-display-manager seen false
db_input critical shared/default-x-display-manager || true
db_go
# if the default display manager file doesn't exist, write it with
# the path to the new default display manager
if [ ! -e "$DEFAULT_DISPLAY_MANAGER_FILE" ]; then
DEFAULT_DISPLAY_MANAGER=
if db_get shared/default-x-display-manager; then
DEFAULT_DISPLAY_MANAGER="$RET"
fi
if [ -n "$DEFAULT_DISPLAY_MANAGER" ]; then
# FIXME - redo this part uses shell-lib.sh from xfree86
#warn "new default display manager has been selected; please be" \
# "sure to run \"dpkg-reconfigure $RET\" to ensure that it" \
# "is configured"
DAEMON_NAME=
if db_get "$DEFAULT_DISPLAY_MANAGER"/daemon_name; then
DAEMON_NAME="$RET"
fi
if [ ! -n "$DAEMON_NAME" ]; then
# if we were unable to determine the name of the selected daemon (for
# instance, if the selected default display manager doesn't provide a
# daemon_name question), guess
DAEMON_NAME=$(which "$DEFAULT_DISPLAY_MANAGER" 2>/dev/null)
if [ ! -n "$DAEMON_NAME" ]; then
echo .
# FIXME - redo this part uses shell-lib.sh from xfree86
#warn "unable to determine path to default X display manager" \
# "$DEFAULT_DISPLAY_MANAGER; not updating" \
# "$DEFAULT_DISPLAY_MANAGER_FILE"
fi
fi
if [ -n "$DAEMON_NAME" ]; then
echo "$DAEMON_NAME" > "$DEFAULT_DISPLAY_MANAGER_FILE"
fi
fi
fi
fi
fi
fi
fi
exit 0
|