Patrick Williams | b48b7b4 | 2016-08-17 15:04:38 -0500 | [diff] [blame^] | 1 | SUMMARY = "Graphical login manager" |
| 2 | LICENSE = "GPLv2" |
| 3 | LIC_FILES_CHKSUM = "file://COPYING;md5=94d55d512a9ba36caa9b7df079bae19f" |
| 4 | |
| 5 | DEPENDS = "xinput gnome-panel tcp-wrappers libcanberra libxklavier grep consolekit libpam gnome-doc-utils gtk+ xrdb" |
| 6 | |
| 7 | PR = "r18" |
| 8 | |
| 9 | inherit gnome update-rc.d systemd useradd |
| 10 | |
| 11 | SRC_URI += " \ |
| 12 | file://cross-xdetection.diff \ |
| 13 | file://0001-Remove-user-switch-applet.patch \ |
| 14 | file://0002-gdm-user-manager.c-avoid-displaying-system-users-in-.patch \ |
| 15 | file://sysrooted-pkg-config.patch \ |
| 16 | file://%gconf-tree.xml \ |
| 17 | file://gdm \ |
| 18 | file://gdm.conf \ |
| 19 | file://gdm-pam \ |
| 20 | file://Default \ |
| 21 | file://gdm.service.in \ |
| 22 | " |
| 23 | |
| 24 | SRC_URI[archive.md5sum] = "dbe5187a2e17881cc454e313e0ae8d1e" |
| 25 | SRC_URI[archive.sha256sum] = "034d23af0ea18d86e5543e707212d9297ec7d83f221808968af266dbebc0e703" |
| 26 | GNOME_COMPRESS_TYPE="bz2" |
| 27 | |
| 28 | EXTRA_OECONF = " \ |
| 29 | --enable-authentication-scheme=shadow \ |
| 30 | --enable-debug=yes \ |
| 31 | --with-console-kit \ |
| 32 | --disable-scrollkeeper \ |
| 33 | " |
| 34 | |
| 35 | do_configure_prepend() { |
| 36 | sed -i -e "s:\bdocs::g" ${S}/Makefile.am |
| 37 | } |
| 38 | |
| 39 | do_install_prepend() { |
| 40 | install -d ${D}/${localstatedir}/lib/gdm/.gconf.mandatory |
| 41 | install ${WORKDIR}/%gconf-tree.xml ${D}/${localstatedir}/lib/gdm/.gconf.mandatory/ |
| 42 | } |
| 43 | |
| 44 | do_install_append() { |
| 45 | install -d ${D}/${sysconfdir}/init.d |
| 46 | install -m 0755 ${WORKDIR}/gdm ${D}/${sysconfdir}/init.d/ |
| 47 | |
| 48 | install -d ${D}/${sysconfdir}/gdm |
| 49 | install -m 0644 ${WORKDIR}/gdm.conf ${D}/${sysconfdir}/gdm/ |
| 50 | |
| 51 | install -d ${D}/${sysconfdir}/pam.d |
| 52 | install -m 0755 ${WORKDIR}/gdm-pam ${D}/${sysconfdir}/pam.d/gdm |
| 53 | rm -f ${D}/${sysconfdir}/pam.d/gdm-autologin |
| 54 | |
| 55 | install -d ${D}/${sysconfdir}/gdm/Init |
| 56 | install -m 0755 ${WORKDIR}/Default ${D}/${sysconfdir}/gdm/Init |
| 57 | |
| 58 | install -d ${D}${systemd_unitdir}/system |
| 59 | sed -e 's,%sbindir%,${sbindir},g' \ |
| 60 | < ${WORKDIR}/gdm.service.in \ |
| 61 | > ${D}${systemd_unitdir}/system/gdm.service |
| 62 | |
| 63 | chown -R gdm:gdm ${D}${localstatedir}/lib/gdm |
| 64 | chmod 0750 ${D}${localstatedir}/lib/gdm |
| 65 | |
| 66 | rm -rf "${D}${localstatedir}/run" |
| 67 | rmdir --ignore-fail-on-non-empty "${D}${localstatedir}" |
| 68 | |
| 69 | rm -f ${D}${datadir}/gdm/autostart/LoginWindow/at-spi-registryd-wrapper.desktop |
| 70 | rm -f ${D}${datadir}/gdm/autostart/LoginWindow/orca-screen-reader.desktop |
| 71 | rm -f ${D}${datadir}/gdm/autostart/LoginWindow/gnome-mag.desktop |
| 72 | rm -f ${D}${datadir}/gdm/autostart/LoginWindow/gok.desktop |
| 73 | rm -f ${D}${datadir}/gdm/autostart/LoginWindow/metacity.desktop |
| 74 | } |
| 75 | |
| 76 | FILES_${PN} += "${datadir}/icon* \ |
| 77 | ${datadir}/xsession* \ |
| 78 | " |
| 79 | |
| 80 | RDEPENDS_${PN} += "grep dbus-x11 shadow" |
| 81 | # "libpam-base-files" |
| 82 | CONFFILES_${PN} += "${sysconfdir}/gdm/gdm.conf ${sysconfdir}/init.d/gdm" |
| 83 | RRECOMMENDS_${PN} += "openssh-misc desktop-file-utils glib-2.0-utils metacity gnome-session polkit-gnome consolekit" |
| 84 | |
| 85 | RREPLACES_${PN} += "${PN}-systemd" |
| 86 | RCONFLICTS_${PN} += "${PN}-systemd" |
| 87 | SYSTEMD_SERVICE_${PN} = "gdm.service" |
| 88 | |
| 89 | INITSCRIPT_NAME = "gdm" |
| 90 | INITSCRIPT_PARAMS = "start 99 5 . stop 20 0 1 2 3 6 ." |
| 91 | |
| 92 | USERADD_PACKAGES = "${PN}" |
| 93 | USERADD_PARAM_${PN} = "--system --no-create-home --home ${localstatedir}/lib/gdm --user-group gdm" |
| 94 | |
| 95 | pkg_postinst_${PN} () { |
| 96 | # Register up as default dm |
| 97 | mkdir -p $D${sysconfdir}/X11/ |
| 98 | echo "${bindir}/gdm" > $D${sysconfdir}/X11/default-display-manager |
| 99 | } |
| 100 | |
| 101 | pkg_postrm_${PN} () { |
| 102 | deluser gdm || true |
| 103 | delgroup gdm || true |
| 104 | sed -i /gdm/d ${sysconfdir}/X11/default-display-manager || true |
| 105 | } |