blob: a0a916b59f09ad1ccb8bfecc5b3aab85bd3d6d51 (
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
|
DESCRIPTION = "Graphical login manager"
LICENSE = "GPL"
DEPENDS = "xinput gnome-panel tcp-wrappers libcanberra libxklavier grep consolekit libpam gnome-doc-utils gtk+ libglade libgnomecanvas librsvg libxml2 libart-lgpl xrdb"
inherit gnome update-rc.d
RDEPENDS_${PN} += "grep dbus-x11 shadow libpam-base-files"
SRC_URI += " \
file://cross-xdetection.diff;patch=1 \
file://%gconf-tree.xml \
file://gdm \
file://gdm.conf \
file://gdm-pam \
"
EXTRA_OECONF = " --enable-authentication-scheme=shadow \
--enable-debug=yes \
--with-console-kit \
--disable-scrollkeeper "
do_install_prepend() {
mkdir -p ${D}/var/lib/gdm/.gconf.mandatory
cp ${WORKDIR}/%gconf-tree.xml ${D}/var/lib/gdm/.gconf.mandatory/
}
do_install_append() {
install -d ${D}/${sysconfdir}/init.d
install -m 0755 ${WORKDIR}/gdm ${D}/${sysconfdir}/init.d/
install -d ${D}/${sysconfdir}/gdm
install -m 0644 ${WORKDIR}/gdm.conf ${D}/${sysconfdir}/gdm/
install -d ${D}/${sysconfdir}/pam.d
install -m 0755 ${WORKDIR}/gdm-pam ${D}/${sysconfdir}/pam.d/gdm
}
FILES_${PN} += "${datadir}/icon* \
${datadir}/xsession* \
"
CONFFILES_${PN} += "${sysconfdir}/gdm/gdm.conf ${sysconfdir}/init.d/gdm"
INITSCRIPT_NAME = "gdm"
INITSCRIPT_PARAMS = "start 99 5 2 . stop 20 0 1 6 ."
pkg_postinst_${PN} () {
# can't do this offline
if [ "x$D" != "x" ]; then
exit 1
fi
grep "^gdm:" /etc/group > /dev/null || addgroup gdm
grep "^gdm:" /etc/passwd > /dev/null || adduser --disabled-password --system --home /var/lib/gdm gdm --ingroup gdm -g gdm
if [ -d /var/lib/gdm ]; then
chown -R gdm:gdm /var/lib/gdm
chmod 0750 /var/lib/gdm
fi
# Register up as default dm
mkdir -p ${sysconfdir}/X11/
echo "${bindir}/gdm" > ${sysconfdir}/X11/default-display-manager
}
pkg_postrm_${PN} () {
deluser gdm || true
delgroup gdm || true
sed -i /gdm/d ${sysconfdir}/X11/default-display-manager || true
}
|