GDM is a mandatory component for all types of gnome sessions. To give users the choice to build images with gnome-session using different display-manager without changing systemd service configuration, mandatory parts were split into gdm-base package.
Signed-off-by: Andreas Müller <schnitzelt...@gmail.com> --- .../0001-Ensure-pam-file-installation.patch | 48 ++++++++++++++++ meta-gnome/recipes-gnome/gdm/gdm_3.34.1.bb | 56 +++++++++++++++++++ 2 files changed, 104 insertions(+) create mode 100644 meta-gnome/recipes-gnome/gdm/gdm/0001-Ensure-pam-file-installation.patch create mode 100644 meta-gnome/recipes-gnome/gdm/gdm_3.34.1.bb diff --git a/meta-gnome/recipes-gnome/gdm/gdm/0001-Ensure-pam-file-installation.patch b/meta-gnome/recipes-gnome/gdm/gdm/0001-Ensure-pam-file-installation.patch new file mode 100644 index 000000000..6362d5ee6 --- /dev/null +++ b/meta-gnome/recipes-gnome/gdm/gdm/0001-Ensure-pam-file-installation.patch @@ -0,0 +1,48 @@ +From f7bba53adf8a26f900442a05bb98326747c392b4 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzelt...@gmail.com> +Date: Tue, 3 Dec 2019 00:24:27 +0100 +Subject: [PATCH] Ensure pam-file installation +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +All the detection magic does not work for us + +Upstream-Status: Inappropriate [OE-specific] + +Signed-off-by: Andreas Müller <schnitzelt...@gmail.com> +--- + data/Makefile.am | 12 +----------- + 1 file changed, 1 insertion(+), 11 deletions(-) + +diff --git a/data/Makefile.am b/data/Makefile.am +index bda9160..dbc3ea3 100644 +--- a/data/Makefile.am ++++ b/data/Makefile.am +@@ -296,22 +296,12 @@ endif + chown root:root $(DESTDIR)$(logdir) || : ; \ + fi + +- system=`uname`; \ +- if test -f /usr/include/security/pam_appl.h; then \ +- if test '!' -d $(DESTDIR)$(PAM_PREFIX)/pam.d; then \ + $(mkinstalldirs) $(DESTDIR)$(PAM_PREFIX)/pam.d; \ + chmod 755 $(DESTDIR)$(PAM_PREFIX)/pam.d; \ +- fi; \ +- if test $$system = Linux; then \ + for pamfile in $(pam_files); do \ + bn=$$(basename $$pamfile .pam); \ + $(INSTALL_DATA) $(srcdir)/$$pamfile $(DESTDIR)$(PAM_PREFIX)/pam.d/$$bn; \ +- done; \ +- fi; \ +- if test $$system = SunOS; then \ +- echo "Please add PAM authentication for gdm, gdm-autologin and gdm-welcome in $(PAM_PREFIX)/pam.conf!"; \ +- fi; \ +- fi ++ done; + + if test '!' -d $(DESTDIR)$(xauthdir); then \ + $(mkinstalldirs) $(DESTDIR)$(xauthdir); \ +-- +2.21.0 + diff --git a/meta-gnome/recipes-gnome/gdm/gdm_3.34.1.bb b/meta-gnome/recipes-gnome/gdm/gdm_3.34.1.bb new file mode 100644 index 000000000..a47bf6fcf --- /dev/null +++ b/meta-gnome/recipes-gnome/gdm/gdm_3.34.1.bb @@ -0,0 +1,56 @@ +SUMMARY = "GNOME Display Manager" +LICENSE="GPLv2" +LIC_FILES_CHKSUM = "file://COPYING;md5=b234ee4d69f5fce4486a80fdaf4a4263" + +DEPENDS = " \ + dconf-native \ + gtk+3 \ + accountsservice \ + libcanberra \ + libpam \ +" + +REQUIRED_DISTRO_FEATURES = "x11 systemd pam" + +inherit gnomebase gsettings gobject-introspection gettext systemd useradd upstream-version-is-even features_check + +SRC_URI[archive.md5sum] = "65d1fd4bb85e8b133d1cbffb80ecf62e" +SRC_URI[archive.sha256sum] = "e85df657aa8d9361af4fb122014d8f123a93bfe45a7662fba2b373d839dbd8d3" +SRC_URI += "file://0001-Ensure-pam-file-installation.patch" + +EXTRA_OECONF = " \ + --without-plymouth \ + --with-default-pam-config=openembedded \ + --with-pam-mod-dir=${base_libdir}/security \ +" + +do_install_append() { + rm -rf ${D}/run ${D}${localstatedir}/run +} + +USERADD_PACKAGES = "${PN}" +USERADD_PARAM_${PN} = "--system --no-create-home --home ${localstatedir}/lib/gdm --user-group gdm" + +SYSTEMD_SERVICE_${PN} = "${BPN}.service" + +# Some gnome components - as gnome-panel and gnome-shell (!!) - require gdm +# components. To allow gnome-images using different display-manager, split them +# out into a seperate package. +PACKAGE_BEFORE_PN = "${PN}-base" +FILES_${PN}-base = " \ + ${datadir}/glib-2.0 \ + ${datadir}/gnome-session \ + ${libdir}/lib*${SOLIBS} \ + ${libdir}/girepository-1.0 \ +" + +CONFFILES_${PN} += "${sysconfdir}/gdm/custom.conf" +FILES_${PN} += " \ + ${datadir}/dconf \ + ${base_libdir}/security/pam_gdm.so \ + ${localstatedir} \ + ${systemd_unitdir} \ +" + +RDEPENDS_${PN} += "${PN}-base" + -- 2.21.0 -- _______________________________________________ Openembedded-devel mailing list Openembedded-devel@lists.openembedded.org http://lists.openembedded.org/mailman/listinfo/openembedded-devel