blob: 9a19df1e0290783bfb6b8fb339a6bc3f81228c0d (
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
|
#!/bin/sh
# Debian kdm package configuration script
# stolen from the xdm scripts
# Copyright 2000--2003 Branden Robinson.
# Licensed under the GNU General Public License, version 2. See the file
# /usr/share/common-licenses/GPL or <http://www.gnu.org/copyleft/gpl.txt>.
set -e
# source debconf library
. /usr/share/debconf/confmodule
THIS_PACKAGE=kdm-kde3
# set default display manager
DEFAULT_DISPLAY_MANAGER_FILE=/etc/X11/default-display-manager
OWNERS=
if db_metaget shared/default-x-display-manager owners; then
OWNERS="$RET"
fi
CHOICES=
if db_metaget shared/default-x-display-manager choices; then
CHOICES="$RET"
fi
if [ "$OWNERS" != "$CHOICES" ]; 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 "$OWNERS"
db_fset shared/default-x-display-manager seen false
fi
# debconf is not a registry; use the current contents of the default display
# manager file to pre-answer the question if possible
if [ -e "$DEFAULT_DISPLAY_MANAGER_FILE" ]; then
CURRENT_DEFAULT=$(grep -v '^[[:space:]]*#' \
"$DEFAULT_DISPLAY_MANAGER_FILE" |
head -n 1)
# both the binaries for kdm and kdm-kde4 share the same basename
# so we need to check if it's kdm-kde4 or another display manager
if [ "$CURRENT_DEFAULT" = "/usr/lib/kde4/bin/kdm" ]; then
CURRENT_DEFAULT=${THIS_PACKAGE}-kde4
else
CURRENT_DEFAULT=$(basename $CURRENT_DEFAULT)
fi
if [ -n "$CURRENT_DEFAULT" ]; then
# if ! which "$CURRENT_DEFAULT" > /dev/null 2>&1; then
# echo .
# FIXME - redo this part uses shell-lib.sh from xfree86
#observe "default display manager \"$CURRENT_DEFAULT\" specified in" \
# "$DEFAULT_DISPLAY_MANAGER_FILE does not exist or is not" \
# "executable"
# fi
db_set shared/default-x-display-manager "$CURRENT_DEFAULT"
fi
else
CURRENT_DEFAULT=
if db_get shared/default-x-display-manager; then
CURRENT_DEFAULT="$RET"
fi
fi
db_input high shared/default-x-display-manager || true
db_go
# using this display manager?
NEW_DEFAULT=
if db_get shared/default-x-display-manager; then
NEW_DEFAULT="$RET"
fi
# move the default display manager file if we're going to change it
if [ -n "$NEW_DEFAULT" ]; then
if [ "$NEW_DEFAULT" != "$CURRENT_DEFAULT" ]; then
if [ -e "$DEFAULT_DISPLAY_MANAGER_FILE" ]; then
# FIXME - redo this part uses shell-lib.sh from xfree86
# observe "preparing to change default X display manager from" \
# "\"$CURRENT_DEFAULT\" to \"$NEW_DEFAULT\""
mv "$DEFAULT_DISPLAY_MANAGER_FILE" \
"$DEFAULT_DISPLAY_MANAGER_FILE.dpkg-tmp"
fi
fi
fi
exit 0
|