pkgsrc-WIP-changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

lightdm: Update to 1.30.0



Module Name:	pkgsrc-wip
Committed By:	Frédéric Fauberteau <triaxx%hydralisk.triaxx.org@localhost>
Pushed By:	frederic
Date:		Thu Jul 23 04:42:55 2020 +0000
Changeset:	ba21b9980d85d918fb9eea9b1c3e53c4e7a9f15b

Modified Files:
	lightdm/Makefile
	lightdm/PLIST
	lightdm/TODO
	lightdm/buildlink3.mk
	lightdm/distinfo
Added Files:
	lightdm/patches/patch-common_privileges.c
	lightdm/patches/patch-configure
	lightdm/patches/patch-data_lightdm.conf
	lightdm/patches/patch-data_pam_lightdm
	lightdm/patches/patch-data_pam_lightdm-greeter
	lightdm/patches/patch-liblightdm-gobject_language.c
	lightdm/patches/patch-src_process.c
	lightdm/patches/patch-src_session-child.c
Removed Files:
	lightdm/patches/patch-ac
	lightdm/patches/patch-ae
	lightdm/patches/patch-ba
	lightdm/patches/patch-bb

Log Message:
lightdm: Update to 1.30.0

The package is not yet functional. Especially *.desktop files for window manager
sessions are not read.

upstream changes:
-----------------
There are too many changes since the last version. Overview of changes can be
found by following the link:
https://github.com/canonical/lightdm/blob/1.30.0/NEWS

To see a diff of this commit:
https://wip.pkgsrc.org/cgi-bin/gitweb.cgi?p=pkgsrc-wip.git;a=commitdiff;h=ba21b9980d85d918fb9eea9b1c3e53c4e7a9f15b

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

diffstat:
 lightdm/Makefile                                   | 134 ++++++++----
 lightdm/PLIST                                      | 236 ++++++++++++---------
 lightdm/TODO                                       |  32 +--
 lightdm/buildlink3.mk                              |  16 +-
 lightdm/distinfo                                   |  23 +-
 lightdm/patches/patch-ac                           |  15 --
 lightdm/patches/patch-ae                           |  40 ----
 lightdm/patches/patch-ba                           |  16 --
 lightdm/patches/patch-bb                           |  16 --
 lightdm/patches/patch-common_privileges.c          |  36 ++++
 lightdm/patches/patch-configure                    |  18 ++
 lightdm/patches/patch-data_lightdm.conf            |  22 ++
 lightdm/patches/patch-data_pam_lightdm             |  26 +++
 lightdm/patches/patch-data_pam_lightdm-greeter     |  22 ++
 .../patches/patch-liblightdm-gobject_language.c    |  41 ++++
 lightdm/patches/patch-src_process.c                |  24 +++
 lightdm/patches/patch-src_session-child.c          |  60 ++++++
 17 files changed, 499 insertions(+), 278 deletions(-)

diffs:
diff --git a/lightdm/Makefile b/lightdm/Makefile
index c6a9ea5556..09fb0fae18 100644
--- a/lightdm/Makefile
+++ b/lightdm/Makefile
@@ -1,71 +1,119 @@
-# $NetBSD: Makefile,v 1.8 2014/06/01 12:49:37 thomasklausner Exp $
-#
+# $NetBSD: $
 
-DISTNAME=	lightdm-1.3.3
-PKGREVISION=	1
+DISTNAME=	lightdm-1.30.0
 CATEGORIES=	x11
-MASTER_SITES=	https://launchpad.net/lightdm/1.3/1.3.3/+download/
+MASTER_SITES=	${MASTER_SITE_GITHUB:=canonical/}
+GITHUB_RELEASE=	${PKGVERSION_NOREV}
+EXTRACT_SUFX=	.tar.xz
 
 MAINTAINER=	pkgsrc-users%NetBSD.org@localhost
-HOMEPAGE=	https://www.freedesktop.org/wiki/Software/LightDM
+HOMEPAGE=	https://github.com/canonical/lightdm
 COMMENT=	Light cross-desktop display manager
-LICENSE=	gnu-gpl-v3
+LICENSE=	gnu-gpl-v3 AND gnu-lgpl-v2 AND gnu-lgpl-v3
+
+PKG_COMPILER=		clang
+PKG_CC=			clang
+PKG_CXX=		clang
 
 GNU_CONFIGURE=		yes
-CONFIGURE_ARGS+=	--disable-tests	# PAM
+CONFIGURE_ARGS+=	--disable-tests
+CONFIGURE_ARGS+=	--localstatedir=${VARBASE}
 USE_LIBTOOL=		yes
 USE_TOOLS+=		gmake intltool pkg-config
-USE_LANGUAGES+=		c c++
+USE_LANGUAGES+=		c c++11
 USE_PKGLOCALEDIR=	yes
-MAKE_ENV+=		"LIBLIGHTDM_GOBJECT_CFLAGS=-I${BUILDLINK_PREFIX.glib2}/include/glib/glib-2.0/"
+BUILD_DEFS+=		PKG_SYSCONFBASE VARBASE
 
 PKGCONFIG_OVERRIDE+=	liblightdm-gobject/liblightdm-gobject-1.pc.in
 PKGCONFIG_OVERRIDE+=	liblightdm-qt/liblightdm-qt-2.pc.in
 
-DEPENDS+=		itstool-[0-9]*:../../textproc/itstool
-
-EGDIR=			${PREFIX}/share/examples
-INSTALLATION_DIRS+=	${PKG_SYSCONFDIR}/apparmor.d
-INSTALLATION_DIRS+=	${PKG_SYSCONFDIR}/dbus-1/system.d
-INSTALLATION_DIRS+=	${PKG_SYSCONFDIR}/lightdm ${PKG_SYSCONFDIR}/pam.d
-INSTALLATION_DIRS+=	${EGDIR}/apparmor.d ${EGDIR}/dbus/system.d
-INSTALLATION_DIRS+=	${EGDIR}/lightdm ${EGDIR}/pam.d
-CONF_FILES+=		${EGDIR}/apparmor.d/lightdm-guest-session ${PKG_SYSCONFDIR}/apparmor.d/lightdm-guest-session
-CONF_FILES+=		${EGDIR}/dbus/system.d/org.freedesktop.DisplayManager.conf ${PKG_SYSCONFDIR}/dbus-1/system.d/org.freedesktop.DisplayManager.conf
-CONF_FILES+=		${EGDIR}/lightdm/lightdm.conf ${PKG_SYSCONFDIR}/lightdm/lightdm.conf
-CONF_FILES+=		${EGDIR}/lightdm/keys.conf ${PKG_SYSCONFDIR}/lightdm/keys.conf
-CONF_FILES+=		${EGDIR}/lightdm/users.conf ${PKG_SYSCONFDIR}/lightdm/users.conf
-CONF_FILES+=		${EGDIR}/pam.d/lightdm ${PKG_SYSCONFDIR}/pam.d/lightdm
-CONF_FILES+=		${EGDIR}/pam.d/lightdm-autologin ${PKG_SYSCONFDIR}/pam.d/lightdm-autologin
-CONF_FILES+=		${EGDIR}/pam.d/lightdm-greeter ${PKG_SYSCONFDIR}/pam.d/lightdm-greeter
+TOOL_DEPENDS+=	itstool-[0-9]*:../../textproc/itstool
+
+LIGHTDM_GROUP=			lightdm
+LIGHTDM_USER=			lightdm
+PKG_GROUPS_VARS+=		LIGHTDM_GROUP
+PKG_USERS_VARS+=		LIGHTDM_USER
+PKG_GROUPS=			${LIGHTDM_GROUP}
+PKG_USERS=			${LIGHTDM_USER}:${LIGHTDM_GROUP}
+PKG_GECOS.${LIGHTDM_USER}=	Light Display Manager user
+PKG_HOME.${LIGHTDM_USER}=	${VARBASE}/lib/lightdm
+
+.include "../../mk/bsd.prefs.mk"
+
+.if ${OPSYS} == "NetBSD"
+LIGHTDM_MINVT=		1
+.elif ${OPSYS} == "FreeBSD"
+LIGHTDM_MINVT=		9
+.else
+LIGHTDM_MINVT=		7
+.endif
+
+PKG_SYSCONFSUBDIR=	lightdm
+EGDIR=			${PREFIX}/share/examples/lightdm
+INSTALLATION_DIRS+=	${EGDIR}/dbus-1/system.d
+INSTALLATION_DIRS+=	${EGDIR}/pam.d
+CONF_FILES+=		${EGDIR}/lightdm.conf ${PKG_SYSCONFDIR}/lightdm.conf
+CONF_FILES+=		${EGDIR}/keys.conf ${PKG_SYSCONFDIR}/keys.conf
+CONF_FILES+=		${EGDIR}/users.conf ${PKG_SYSCONFDIR}/users.conf
+CONF_FILES_PERMS+=	${EGDIR}/Xsession ${PKG_SYSCONFDIR}/Xsession \
+			${REAL_ROOT_USER} ${REAL_ROOT_GROUP} 0755
+CONF_FILES+=		${EGDIR}/dbus-1/system.d/org.freedesktop.DisplayManager.conf \
+			${PKG_SYSCONFBASE}/dbus-1/system.d/org.freedesktop.DisplayManager.conf
+CONF_FILES+=		${EGDIR}/pam.d/lightdm ${PKG_SYSCONFBASE}/pam.d/lightdm
+CONF_FILES+=		${EGDIR}/pam.d/lightdm-autologin ${PKG_SYSCONFBASE}/pam.d/lightdm-autologin
+CONF_FILES+=		${EGDIR}/pam.d/lightdm-greeter ${PKG_SYSCONFBASE}/pam.d/lightdm-greeter
+MAKE_DIRS_PERMS+=	${VARBASE}/lib/lightdm ${LIGHTDM_USER} ${LIGHTDM_GROUP} 1770
+MAKE_DIRS_PERMS+=	${VARBASE}/lib/lightdm-data ${LIGHTDM_USER} ${LIGHTDM_GROUP} 1770
+
+SUBST_CLASSES+=		xsession
+SUBST_STAGE.xsession=	pre-configure
+SUBST_MESSAGE.xsession=	Fixing Xsession path.
+SUBST_FILES.xsession=	data/Xsession
+SUBST_VARS.xsession=	PKG_SYSCONFBASE PREFIX
+
+SUBST_CLASSES+=		conf
+SUBST_STAGE.conf=	pre-configure
+SUBST_MESSAGE.conf=	Adjustment of configuration file.
+SUBST_FILES.conf=	data/lightdm.conf
+SUBST_VARS.conf=	LIGHTDM_MINVT PREFIX
+
+post-extract:
+	${RUN}${CP} ${FILESDIR}/Xsession ${WRKSRC}/data/Xsession
 
 pre-install:
-	cd ${WRKSRC}/data && \
-		${INSTALL_DATA} guest-session.apparmor ${DESTDIR}${EGDIR}/apparmor.d/lightdm-guest-session && \
-		${INSTALL_DATA} org.freedesktop.DisplayManager.conf ${DESTDIR}${EGDIR}/dbus/system.d/org.freedesktop.DisplayManager.conf && \
-		${INSTALL_DATA} lightdm.conf ${DESTDIR}${EGDIR}/lightdm/lightdm.conf && \
-		${INSTALL_DATA} keys.conf ${DESTDIR}${EGDIR}/lightdm/keys.conf && \
-		${INSTALL_DATA} users.conf ${DESTDIR}${EGDIR}/lightdm/users.conf;
-	cd ${WRKSRC}/data/pam && \
-		${INSTALL_DATA} lightdm ${DESTDIR}${EGDIR}/pam.d/lightdm && \
-		${INSTALL_DATA} lightdm-autologin ${DESTDIR}${EGDIR}/pam.d/lightdm-autologin && \
-		${INSTALL_DATA} lightdm-greeter ${DESTDIR}${EGDIR}/pam.d/lightdm-greeter
+	${INSTALL_DATA} ${WRKSRC}/data/lightdm.conf ${DESTDIR}${EGDIR}/lightdm.conf
+	${INSTALL_DATA} ${WRKSRC}/data/keys.conf ${DESTDIR}${EGDIR}/keys.conf
+	${INSTALL_DATA} ${WRKSRC}/data/users.conf ${DESTDIR}${EGDIR}/users.conf
+	${INSTALL_DATA} ${WRKSRC}/data/org.freedesktop.DisplayManager.conf \
+	  ${DESTDIR}${EGDIR}/dbus-1/system.d/org.freedesktop.DisplayManager.conf
+	${INSTALL_DATA} ${WRKSRC}/data/pam/lightdm ${DESTDIR}${EGDIR}/pam.d/lightdm
+	${INSTALL_DATA} ${WRKSRC}/data/pam/lightdm-autologin ${DESTDIR}${EGDIR}/pam.d/lightdm-autologin
+	${INSTALL_DATA} ${WRKSRC}/data/pam/lightdm-greeter ${DESTDIR}${EGDIR}/pam.d/lightdm-greeter
+	${INSTALL_DATA} ${WRKSRC}/data/Xsession ${DESTDIR}${EGDIR}/Xsession
 
 post-install:
-	${RM} ${DESTDIR}${PKG_SYSCONFDIR}/apparmor.d/lightdm-guest-session
-	${RM} ${DESTDIR}${PKG_SYSCONFDIR}/dbus-1/system.d/org.freedesktop.DisplayManager.conf
-	${RM} ${DESTDIR}${PKG_SYSCONFDIR}/init/lightdm.conf
-	${RM} -rf ${DESTDIR}${PKG_SYSCONFDIR}/lightdm
-	${RM} ${DESTDIR}${PKG_SYSCONFDIR}/pam.d/lightdm*
+	${RUN}${RM} ${DESTDIR}${PKG_SYSCONFDIR}/lightdm.conf
+	${RUN}${RM} ${DESTDIR}${PKG_SYSCONFDIR}/keys.conf
+	${RUN}${RM} ${DESTDIR}${PKG_SYSCONFDIR}/users.conf
+	${RUN}${RM} ${DESTDIR}${PKG_SYSCONFBASE}/apparmor.d/abstractions/lightdm
+	${RUN}${RM} ${DESTDIR}${PKG_SYSCONFBASE}/apparmor.d/abstractions/lightdm_chromium-browser
+	${RUN}${RM} ${DESTDIR}${PKG_SYSCONFBASE}/apparmor.d/lightdm-guest-session
+	${RUN}${RM} ${DESTDIR}${PKG_SYSCONFBASE}/dbus-1/system.d/org.freedesktop.DisplayManager.conf
+	${RUN}${RM} ${DESTDIR}${PKG_SYSCONFBASE}/init/lightdm.conf
+	${RUN}${RM} ${DESTDIR}${PKG_SYSCONFBASE}/pam.d/lightdm
+	${RUN}${RM} ${DESTDIR}${PKG_SYSCONFBASE}/pam.d/lightdm-autologin
+	${RUN}${RM} ${DESTDIR}${PKG_SYSCONFBASE}/pam.d/lightdm-greeter
 
 .include "../../devel/glib2/buildlink3.mk"
 .include "../../devel/gobject-introspection/buildlink3.mk"
-.include "../../devel/gettext-tools/buildlink3.mk"
+.include "../../security/libgcrypt/buildlink3.mk"
 .include "../../security/openpam/buildlink3.mk"
+.include "../../sysutils/accountsservice/buildlink3.mk"
+.include "../../sysutils/consolekit/buildlink3.mk"
+.include "../../sysutils/upower/buildlink3.mk"
 .include "../../x11/libX11/buildlink3.mk"
 .include "../../x11/libXdmcp/buildlink3.mk"
 .include "../../x11/libxcb/buildlink3.mk"
-BUILDLINK_API_DEPENDS.libxklavier+=	libxklavier>=4.0
 .include "../../x11/libxklavier/buildlink3.mk"
 
 .include "../../mk/bsd.pkg.mk"
diff --git a/lightdm/PLIST b/lightdm/PLIST
index ca8c13f9ad..46f48ecfe1 100644
--- a/lightdm/PLIST
+++ b/lightdm/PLIST
@@ -1,4 +1,4 @@
-@comment $NetBSD: PLIST,v 1.2 2012/09/27 21:36:12 othyro Exp $
+@comment $NetBSD$
 bin/dm-tool
 include/lightdm-gobject-1/lightdm.h
 include/lightdm-gobject-1/lightdm/greeter.h
@@ -11,119 +11,155 @@ include/lightdm-gobject-1/lightdm/user.h
 lib/girepository-1.0/LightDM-1.typelib
 lib/liblightdm-gobject-1.la
 lib/pkgconfig/liblightdm-gobject-1.pc
-libexec/lightdm/gdmflexiserver
-libexec/lightdm/lightdm-guest-session-wrapper
-libexec/lightdm/lightdm-set-defaults
+libexec/lightdm-guest-session
+man/man1/dm-tool.1
 man/man1/lightdm.1
 sbin/lightdm
-share/examples/apparmor.d/lightdm-guest-session
-share/examples/dbus/system.d/org.freedesktop.DisplayManager.conf
+share/accountsservice/interfaces/org.freedesktop.DisplayManager.AccountsService.xml
+share/bash-completion/completions/dm-tool
+share/bash-completion/completions/lightdm
+share/dbus-1/interfaces/org.freedesktop.DisplayManager.AccountsService.xml
+share/examples/lightdm/Xsession
+share/examples/lightdm/dbus-1/system.d/org.freedesktop.DisplayManager.conf
 share/examples/lightdm/keys.conf
 share/examples/lightdm/lightdm.conf
+share/examples/lightdm/pam.d/lightdm
+share/examples/lightdm/pam.d/lightdm-autologin
+share/examples/lightdm/pam.d/lightdm-greeter
 share/examples/lightdm/users.conf
-share/examples/pam.d/lightdm
-share/examples/pam.d/lightdm-autologin
-share/examples/pam.d/lightdm-greeter
 share/gir-1.0/LightDM-1.gir
-share/gtk-doc/html/lightdm-gobject-1/core.html
+share/gtk-doc/html/lightdm-gobject-1/LightDMGreeter.html
+share/gtk-doc/html/lightdm-gobject-1/LightDMLanguage.html
+share/gtk-doc/html/lightdm-gobject-1/LightDMLayout.html
+share/gtk-doc/html/lightdm-gobject-1/LightDMSession.html
+share/gtk-doc/html/lightdm-gobject-1/LightDMUser.html
+share/gtk-doc/html/lightdm-gobject-1/LightDMUserList.html
+share/gtk-doc/html/lightdm-gobject-1/annotation-glossary.html
+share/gtk-doc/html/lightdm-gobject-1/api-index-full.html
+share/gtk-doc/html/lightdm-gobject-1/ch01.html
+share/gtk-doc/html/lightdm-gobject-1/deprecated-api-index.html
 share/gtk-doc/html/lightdm-gobject-1/home.png
 share/gtk-doc/html/lightdm-gobject-1/index.html
-share/gtk-doc/html/lightdm-gobject-1/index.sgml
+share/gtk-doc/html/lightdm-gobject-1/left-insensitive.png
 share/gtk-doc/html/lightdm-gobject-1/left.png
-share/gtk-doc/html/lightdm-gobject-1/lightdm-gobject-1-Greeter-Interface.html
-share/gtk-doc/html/lightdm-gobject-1/lightdm-gobject-1-Keyboard-Layout.html
-share/gtk-doc/html/lightdm-gobject-1/lightdm-gobject-1-Languages.html
 share/gtk-doc/html/lightdm-gobject-1/lightdm-gobject-1-Power-Management.html
-share/gtk-doc/html/lightdm-gobject-1/lightdm-gobject-1-Sessions.html
 share/gtk-doc/html/lightdm-gobject-1/lightdm-gobject-1-System-Information.html
-share/gtk-doc/html/lightdm-gobject-1/lightdm-gobject-1-User-Accounts.html
 share/gtk-doc/html/lightdm-gobject-1/lightdm-gobject-1.devhelp2
+share/gtk-doc/html/lightdm-gobject-1/object-tree.html
+share/gtk-doc/html/lightdm-gobject-1/right-insensitive.png
 share/gtk-doc/html/lightdm-gobject-1/right.png
 share/gtk-doc/html/lightdm-gobject-1/style.css
+share/gtk-doc/html/lightdm-gobject-1/up-insensitive.png
 share/gtk-doc/html/lightdm-gobject-1/up.png
+share/help/C/lightdm/autologin.page
+share/help/C/lightdm/config.page
+share/help/C/lightdm/default-greeter.page
+share/help/C/lightdm/default-session.page
+share/help/C/lightdm/diagnostics.page
+share/help/C/lightdm/guest.page
 share/help/C/lightdm/index.page
 share/help/C/lightdm/legal.xml
-${PKGLOCALEDIR}/locale/af/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/an/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/ar/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/ast/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/az/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/be/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/bg/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/bn/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/bo/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/br/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/bs/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/ca/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/ca@valencia/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/cs/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/da/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/de/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/el/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/en_AU/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/en_CA/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/en_GB/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/eo/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/es/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/et/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/eu/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/fa/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/fi/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/fo/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/fr/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/fy/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/gd/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/gl/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/he/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/hi/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/hr/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/hu/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/ia/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/id/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/it/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/ja/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/kk/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/km/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/kn/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/ko/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/ku/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/lb/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/lt/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/lv/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/mhr/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/mi/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/ml/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/mr/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/ms/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/my/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/nb/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/nl/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/nn/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/oc/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/pa/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/pl/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/pt/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/pt_BR/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/ro/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/ru/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/sd/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/shn/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/si/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/sk/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/sl/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/sq/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/sr/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/sv/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/ta/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/te/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/th/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/tr/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/ug/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/uk/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/uz/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/vi/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/wae/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/zh_CN/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/zh_HK/LC_MESSAGES/lightdm.mo
-${PKGLOCALEDIR}/locale/zh_TW/LC_MESSAGES/lightdm.mo
-share/vala/vapi/liblightdm-gobject-1.vapi
+share/help/C/lightdm/local-sessions.page
+share/help/C/lightdm/remote-sessions.page
+share/help/C/lightdm/seat.page
+share/help/C/lightdm/standard-authentication.page
+share/help/C/lightdm/user-list.page
+share/help/C/lightdm/user-switching.page
+share/help/C/lightdm/vnc.page
+share/help/C/lightdm/write-greeter.page
+share/help/C/lightdm/xdmcp.page
+share/locale/af/LC_MESSAGES/lightdm.mo
+share/locale/an/LC_MESSAGES/lightdm.mo
+share/locale/ar/LC_MESSAGES/lightdm.mo
+share/locale/ast/LC_MESSAGES/lightdm.mo
+share/locale/az/LC_MESSAGES/lightdm.mo
+share/locale/be/LC_MESSAGES/lightdm.mo
+share/locale/bg/LC_MESSAGES/lightdm.mo
+share/locale/bn/LC_MESSAGES/lightdm.mo
+share/locale/bo/LC_MESSAGES/lightdm.mo
+share/locale/br/LC_MESSAGES/lightdm.mo
+share/locale/bs/LC_MESSAGES/lightdm.mo
+share/locale/ca/LC_MESSAGES/lightdm.mo
+share/locale/ca@valencia/LC_MESSAGES/lightdm.mo
+share/locale/ckb/LC_MESSAGES/lightdm.mo
+share/locale/cs/LC_MESSAGES/lightdm.mo
+share/locale/da/LC_MESSAGES/lightdm.mo
+share/locale/de/LC_MESSAGES/lightdm.mo
+share/locale/el/LC_MESSAGES/lightdm.mo
+share/locale/en_AU/LC_MESSAGES/lightdm.mo
+share/locale/en_CA/LC_MESSAGES/lightdm.mo
+share/locale/en_GB/LC_MESSAGES/lightdm.mo
+share/locale/eo/LC_MESSAGES/lightdm.mo
+share/locale/es/LC_MESSAGES/lightdm.mo
+share/locale/et/LC_MESSAGES/lightdm.mo
+share/locale/eu/LC_MESSAGES/lightdm.mo
+share/locale/fa/LC_MESSAGES/lightdm.mo
+share/locale/fi/LC_MESSAGES/lightdm.mo
+share/locale/fo/LC_MESSAGES/lightdm.mo
+share/locale/fr/LC_MESSAGES/lightdm.mo
+share/locale/fy/LC_MESSAGES/lightdm.mo
+share/locale/gd/LC_MESSAGES/lightdm.mo
+share/locale/gl/LC_MESSAGES/lightdm.mo
+share/locale/gu/LC_MESSAGES/lightdm.mo
+share/locale/he/LC_MESSAGES/lightdm.mo
+share/locale/hi/LC_MESSAGES/lightdm.mo
+share/locale/hr/LC_MESSAGES/lightdm.mo
+share/locale/hu/LC_MESSAGES/lightdm.mo
+share/locale/ia/LC_MESSAGES/lightdm.mo
+share/locale/id/LC_MESSAGES/lightdm.mo
+share/locale/is/LC_MESSAGES/lightdm.mo
+share/locale/it/LC_MESSAGES/lightdm.mo
+share/locale/ja/LC_MESSAGES/lightdm.mo
+share/locale/kk/LC_MESSAGES/lightdm.mo
+share/locale/km/LC_MESSAGES/lightdm.mo
+share/locale/kn/LC_MESSAGES/lightdm.mo
+share/locale/ko/LC_MESSAGES/lightdm.mo
+share/locale/ku/LC_MESSAGES/lightdm.mo
+share/locale/lb/LC_MESSAGES/lightdm.mo
+share/locale/lt/LC_MESSAGES/lightdm.mo
+share/locale/lv/LC_MESSAGES/lightdm.mo
+share/locale/mhr/LC_MESSAGES/lightdm.mo
+share/locale/mi/LC_MESSAGES/lightdm.mo
+share/locale/ml/LC_MESSAGES/lightdm.mo
+share/locale/mr/LC_MESSAGES/lightdm.mo
+share/locale/ms/LC_MESSAGES/lightdm.mo
+share/locale/my/LC_MESSAGES/lightdm.mo
+share/locale/nb/LC_MESSAGES/lightdm.mo
+share/locale/nl/LC_MESSAGES/lightdm.mo
+share/locale/nn/LC_MESSAGES/lightdm.mo
+share/locale/oc/LC_MESSAGES/lightdm.mo
+share/locale/pa/LC_MESSAGES/lightdm.mo
+share/locale/pl/LC_MESSAGES/lightdm.mo
+share/locale/pt/LC_MESSAGES/lightdm.mo
+share/locale/pt_BR/LC_MESSAGES/lightdm.mo
+share/locale/ro/LC_MESSAGES/lightdm.mo
+share/locale/ru/LC_MESSAGES/lightdm.mo
+share/locale/sc/LC_MESSAGES/lightdm.mo
+share/locale/sd/LC_MESSAGES/lightdm.mo
+share/locale/shn/LC_MESSAGES/lightdm.mo
+share/locale/si/LC_MESSAGES/lightdm.mo
+share/locale/sk/LC_MESSAGES/lightdm.mo
+share/locale/sl/LC_MESSAGES/lightdm.mo
+share/locale/sq/LC_MESSAGES/lightdm.mo
+share/locale/sr/LC_MESSAGES/lightdm.mo
+share/locale/sv/LC_MESSAGES/lightdm.mo
+share/locale/ta/LC_MESSAGES/lightdm.mo
+share/locale/te/LC_MESSAGES/lightdm.mo
+share/locale/tg/LC_MESSAGES/lightdm.mo
+share/locale/th/LC_MESSAGES/lightdm.mo
+share/locale/tl/LC_MESSAGES/lightdm.mo
+share/locale/tr/LC_MESSAGES/lightdm.mo
+share/locale/ug/LC_MESSAGES/lightdm.mo
+share/locale/uk/LC_MESSAGES/lightdm.mo
+share/locale/uz/LC_MESSAGES/lightdm.mo
+share/locale/vi/LC_MESSAGES/lightdm.mo
+share/locale/wae/LC_MESSAGES/lightdm.mo
+share/locale/zh_CN/LC_MESSAGES/lightdm.mo
+share/locale/zh_HK/LC_MESSAGES/lightdm.mo
+share/locale/zh_TW/LC_MESSAGES/lightdm.mo
+share/polkit-1/actions/org.freedesktop.DisplayManager.AccountsService.policy
+@pkgdir etc/pam.d
+@pkgdir etc/lightdm
+@pkgdir etc/init
+@pkgdir etc/dbus-1/system.d
+@pkgdir etc/apparmor.d/abstractions
diff --git a/lightdm/TODO b/lightdm/TODO
index 8972975224..458e3efa4d 100644
--- a/lightdm/TODO
+++ b/lightdm/TODO
@@ -1,26 +1,6 @@
-libsystem.c:959: error: 'PAM_BAD_ITEM' undeclared (first use in this function)
-libsystem.c:979: error: 'PAM_CONV_AGAIN' undeclared (first use in this function)
-libsystem.c:981: error: 'PAM_INCOMPLETE' undeclared (first use in this function)
-*** Error code 1
-
-
-lightdm-privileges.o: In function `privileges_reclaim':
-privileges.c:(.text+0x23): undefined reference to `setresuid'
-privileges.c:(.text+0x37): undefined reference to `setresgid'
-lightdm-privileges.o: In function `privileges_drop':
-privileges.c:(.text+0xc6): undefined reference to `setresgid'
-privileges.c:(.text+0xec): undefined reference to `setresuid'
-lightdm-process.o: In function `process_run':
-process.c:(.text+0xbb8): undefined reference to `clearenv'
-
-
-lightdm/greeter.h:15:25: error: glib-object.h: No such file or directory
-
-https://bugs.launchpad.net/lightdm/+bug/790186
-
-
-layout.c:125: error: too many arguments to function 'xkl_config_registry_load'
-https://bugs.launchpad.net/lightdm/+bug/972297
-
-Investigate and try to address if possible the following security vulnerabilites:
- - CVE-2015-8316
+* Debug session loading (liblightdm-gobject/session.c:196: returned value is
+  "sessions-directory")
+* Investigate PAM configuration and try to address if OpenPAM provides enough
+  features for a secure authentication
+* Investigate the dependency tree and try to lighten it by making optional some
+  that could be not compulsory (e.g. accountsservice? upower?)
diff --git a/lightdm/buildlink3.mk b/lightdm/buildlink3.mk
index 6fca74f4d5..0d1deb3409 100644
--- a/lightdm/buildlink3.mk
+++ b/lightdm/buildlink3.mk
@@ -1,22 +1,12 @@
-# $NetBSD: buildlink3.mk,v 1.1.1.1 2012/05/15 03:29:36 jeremy-c-reed Exp $
-# XXX
-# XXX This file was created automatically using createbuildlink-3.14.
-# XXX After this file has been verified as correct, the comment lines
-# XXX beginning with "XXX" should be removed.  Please do not commit
-# XXX unverified buildlink3.mk files.
-# XXX
-# XXX Packages that only install static libraries or headers should
-# XXX include the following line:
-# XXX
-# XXX	BUILDLINK_DEPMETHOD.lightdm?=	build
+# $NetBSD: $
 
 BUILDLINK_TREE+=	lightdm
 
 .if !defined(LIGHTDM_BUILDLINK3_MK)
 LIGHTDM_BUILDLINK3_MK:=
 
-BUILDLINK_API_DEPENDS.lightdm+=	lightdm>=1.2.2
-BUILDLINK_PKGSRCDIR.lightdm?=	../../wip/lightdm
+BUILDLINK_API_DEPENDS.lightdm+=	lightdm>=1.30.0
+BUILDLINK_PKGSRCDIR.lightdm?=	../../local/lightdm # s,local,x11,
 
 .include "../../devel/glib2/buildlink3.mk"
 .include "../../x11/libxklavier/buildlink3.mk"
diff --git a/lightdm/distinfo b/lightdm/distinfo
index c311f07fdb..6c30ebe6a3 100644
--- a/lightdm/distinfo
+++ b/lightdm/distinfo
@@ -1,10 +1,15 @@
-$NetBSD: distinfo,v 1.3 2013/05/06 09:09:15 noud4 Exp $
+$NetBSD$
 
-SHA1 (lightdm-1.3.3.tar.gz) = f2392d70e039412c4a87daf0c639d5dba412e4a1
-RMD160 (lightdm-1.3.3.tar.gz) = 9577f04e86b2d0b7e68559c978ce86751a740d43
-SHA512 (lightdm-1.3.3.tar.gz) = 72f838970ae920a3993671b0e39ba96abed77bfff7df7c1cf2daa0bddf219d2e9da87f4d0967e125c63c888e9db54b2dbfa3c706d648b7455920e9857805365e
-Size (lightdm-1.3.3.tar.gz) = 659018 bytes
-SHA1 (patch-ac) = 36ba629f687ef2ef71130aef248433be18751ef8
-SHA1 (patch-ae) = a493621619fd6316e845d70cfb30ebfa8ac5d2ad
-SHA1 (patch-ba) = 41ca277c57049e7319ef86a98887c53383639096
-SHA1 (patch-bb) = acfb527ad17deda612592012e70087b925798470
+SHA1 (lightdm-1.30.0.tar.xz) = d91966f79f173825ac8bb51973842f9fb6c9ef1b
+RMD160 (lightdm-1.30.0.tar.xz) = 98b495fd557bd4424f772e6a699322c34a1df7d9
+SHA512 (lightdm-1.30.0.tar.xz) = bca25a0aa73caf7d51e5882889a1707d2527470a170658c1be98ecfb96c8f85fd616494fc5bed658e744f91b9f8b0a98d2a0cf42f9c030242ae470c8a27145ce
+Size (lightdm-1.30.0.tar.xz) = 509220 bytes
+SHA1 (patch-common_privileges.c) = e42c39fec517aca41389eb7570705c6c5bac7461
+SHA1 (patch-configure) = 9f630858c2b2c8fa4d8c24b10d8df6c16fed587a
+SHA1 (patch-data_lightdm.conf) = 82501d8f55ed46483193afc7299dd3ebe4e46aee
+SHA1 (patch-data_pam_lightdm) = cf6399e38a7f9764ab4d8c63601d9b6a8aa3e966
+SHA1 (patch-data_pam_lightdm-greeter) = 474e9e59af583b33fe0d4fa566998d45c2db2032
+SHA1 (patch-liblightdm-gobject_language.c) = c0fb445e677ad4143cd1ed9c6e61259dc1478895
+SHA1 (patch-liblightdm-gobject_session.c) = 3c81023d892fa1ff5d7fcb3ebb7a8cc96c1ffca7
+SHA1 (patch-src_process.c) = bbb04d197ebbdb0efdd82c55948f5904b1dc3d94
+SHA1 (patch-src_session-child.c) = 0ea24a9fa00f9517e9f8885476a6b9fc7adb43a8
diff --git a/lightdm/patches/patch-ac b/lightdm/patches/patch-ac
deleted file mode 100644
index 3fb713e1f6..0000000000
--- a/lightdm/patches/patch-ac
+++ /dev/null
@@ -1,15 +0,0 @@
-$NetBSD: patch-ac,v 1.2 2012/09/27 21:34:13 othyro Exp $
-
-Correctly exporting $environ.
-
---- src/process.c.orig	2012-06-21 04:11:20.000000000 +0000
-+++ src/process.c
-@@ -162,7 +162,7 @@ process_run (Process *process)
- #ifdef HAVE_CLEARENV
-         clearenv ();
- #else
--        environ = NULL;
-+        putenv ("environ=NULL");
- #endif
- 
-     g_hash_table_iter_init (&iter, process->priv->env);
diff --git a/lightdm/patches/patch-ae b/lightdm/patches/patch-ae
deleted file mode 100644
index 839496266b..0000000000
--- a/lightdm/patches/patch-ae
+++ /dev/null
@@ -1,40 +0,0 @@
-$NetBSD: patch-ae,v 1.1.1.1 2012/05/15 03:29:36 jeremy-c-reed Exp $
-
-https://bugs.launchpad.net/lightdm/+bug/790186
-
---- liblightdm-gobject/language.c.orig	2012-05-14 21:00:33.000000000 -0500
-+++ liblightdm-gobject/language.c	2012-05-14 21:13:28.000000000 -0500
-@@ -229,10 +229,16 @@
-         if (locale)
-         {
-             gchar *current = setlocale (LC_ALL, NULL);
-+#ifdef LC_IDENTIFICATION
-             setlocale (LC_IDENTIFICATION, locale);
-+#endif
-             setlocale (LC_MESSAGES, "");
- 
-+#ifdef _NL_IDENTIFICATION_LANGUAGE
-             gchar *language_en = nl_langinfo (_NL_IDENTIFICATION_LANGUAGE);
-+#else
-+            gchar *language_en = "Unknown";
-+#endif
-             if (language_en && strlen (language_en) > 0)
-                 priv->name = g_strdup (dgettext ("iso_639_3", language_en));
- 
-@@ -272,10 +278,16 @@
-         if (locale)
-         {
-             gchar *current = setlocale (LC_ALL, NULL);
-+#ifdef LC_IDENTIFICATION
-             setlocale (LC_IDENTIFICATION, locale);
-+#endif
-             setlocale (LC_MESSAGES, "");
- 
-+#ifdef _NL_IDENTIFICATION_TERRITORY
-             gchar *country_en = nl_langinfo (_NL_IDENTIFICATION_TERRITORY);
-+#else
-+            gchar *country_en = "Unknown";
-+#endif
-             if (country_en && strlen (country_en) > 0 && g_strcmp0 (country_en, "ISO") != 0)
-                 priv->territory = g_strdup (dgettext ("iso_3166", country_en));
- 
diff --git a/lightdm/patches/patch-ba b/lightdm/patches/patch-ba
deleted file mode 100644
index 1066ce8eb7..0000000000
--- a/lightdm/patches/patch-ba
+++ /dev/null
@@ -1,16 +0,0 @@
-$NetBSD: patch-ba,v 1.1 2013/05/06 09:09:15 noud4 Exp $
-
-https://bugs.launchpad.net/bugs/1161033
-
---- liblightdm-gobject/Makefile.am.orig	2013-05-06 08:54:44.000000000 +0000
-+++ liblightdm-gobject/Makefile.am	2013-05-06 08:55:29.000000000 +0000
-@@ -41,7 +41,8 @@
- 
- LightDM-1.gir: liblightdm-gobject-1.la
- LightDM_1_gir_INCLUDES = GObject-2.0
--LightDM_1_gir_CFLAGS = $(INCLUDES) --symbol-prefix=lightdm
-+LightDM_1_gir_CFLAGS = $(INCLUDES)
-+LightDM_1_gir_SCANNERFLAGS = --symbol-prefix=lightdm
- LightDM_1_gir_LIBS = liblightdm-gobject-1.la
- LightDM_1_gir_FILES = $(liblightdm_gobject_1_la_SOURCES)
- 
diff --git a/lightdm/patches/patch-bb b/lightdm/patches/patch-bb
deleted file mode 100644
index 00df89ec93..0000000000
--- a/lightdm/patches/patch-bb
+++ /dev/null
@@ -1,16 +0,0 @@
-$NetBSD: patch-bb,v 1.1 2013/05/06 09:09:15 noud4 Exp $
-
-https://bugs.launchpad.net/bugs/1161033
-
---- liblightdm-gobject/Makefile.in.orig	2013-05-06 08:55:37.000000000 +0000
-+++ liblightdm-gobject/Makefile.in	2013-05-06 08:56:09.000000000 +0000
-@@ -372,7 +372,8 @@
- @HAVE_INTROSPECTION_TRUE@INTROSPECTION_COMPILER_ARGS = --includedir=$(srcdir)
- @HAVE_INTROSPECTION_TRUE@INTROSPECTION_GIRS = LightDM-1.gir
- @HAVE_INTROSPECTION_TRUE@LightDM_1_gir_INCLUDES = GObject-2.0
--@HAVE_INTROSPECTION_TRUE@LightDM_1_gir_CFLAGS = $(INCLUDES) --symbol-prefix=lightdm
-+@HAVE_INTROSPECTION_TRUE@LightDM_1_gir_CFLAGS = $(INCLUDES)
-+@HAVE_INTROSPECTION_TRUE@LightDM_1_gir_SCANNERFLAGS = --symbol-prefix=lightdm
- @HAVE_INTROSPECTION_TRUE@LightDM_1_gir_LIBS = liblightdm-gobject-1.la
- @HAVE_INTROSPECTION_TRUE@LightDM_1_gir_FILES = $(liblightdm_gobject_1_la_SOURCES)
- @HAVE_INTROSPECTION_TRUE@girdir = $(datadir)/gir-1.0
diff --git a/lightdm/patches/patch-common_privileges.c b/lightdm/patches/patch-common_privileges.c
new file mode 100644
index 0000000000..26d1bc815b
--- /dev/null
+++ b/lightdm/patches/patch-common_privileges.c
@@ -0,0 +1,36 @@
+$NetBSD$
+
+A set-user-ID-root program wishing to temporarily drop root privileges, assume
+the identity of an unprivileged user, and then regain root privileges afterward
+cannot use setuid(2). It can accomplish this with seteuid(2).
+
+--- common/privileges.c.orig	2018-04-10 03:07:52.000000000 +0000
++++ common/privileges.c
+@@ -23,13 +23,11 @@ privileges_drop (uid_t uid, gid_t gid)
+ #ifdef HAVE_SETRESGID
+     g_assert (setresgid (gid, gid, -1) == 0);
+ #else
+-    g_assert (setgid (gid) == 0);
+     g_assert (setegid (gid) == 0);
+ #endif
+ #ifdef HAVE_SETRESUID
+     g_assert (setresuid (uid, uid, -1) == 0);
+ #else
+-    g_assert (setuid (uid) == 0);
+     g_assert (seteuid (uid) == 0);
+ #endif
+ }
+@@ -40,13 +38,11 @@ privileges_reclaim (void)
+ #ifdef HAVE_SETRESUID
+     g_assert (setresuid (0, 0, -1) == 0);
+ #else
+-    g_assert (setuid (0) == 0);
+     g_assert (seteuid (0) == 0);
+ #endif
+ #ifdef HAVE_SETRESGID
+     g_assert (setresgid (0, 0, -1) == 0);
+ #else
+-    g_assert (setgid (0) == 0);
+     g_assert (setegid (0) == 0);
+ #endif
+ }
diff --git a/lightdm/patches/patch-configure b/lightdm/patches/patch-configure
new file mode 100644
index 0000000000..533550e160
--- /dev/null
+++ b/lightdm/patches/patch-configure
@@ -0,0 +1,18 @@
+$NetBSD$
+
+The variable $RANDOM is not required for a POSIX-conforming shell, and many
+implementations of /bin/sh do not support it. It should therefore not be used
+in shell programs that are meant to be portable across a large number of
+POSIX-like systems.
+
+--- configure.orig	2019-05-17 04:47:12.000000000 +0000
++++ configure
+@@ -19157,7 +19157,7 @@ INTLTOOL_SOUNDLIST_RULE='%.soundlist: %.
+ if test "$INTLTOOL_APPLIED_VERSION_AS_INT" -ge 5000; then
+       INTLTOOL_XML_NOMERGE_RULE='%.xml:       %.xml.in       $(INTLTOOL_MERGE) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u --no-translations $< $@'
+ else
+-      INTLTOOL_XML_NOMERGE_RULE='%.xml:       %.xml.in       $(INTLTOOL_MERGE) ; $(INTLTOOL_V_MERGE)_it_tmp_dir=tmp.intltool.$$RANDOM && mkdir $$_it_tmp_dir && LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u $$_it_tmp_dir $< $@ && rmdir $$_it_tmp_dir'
++      INTLTOOL_XML_NOMERGE_RULE='%.xml:       %.xml.in       $(INTLTOOL_MERGE) ; $(INTLTOOL_V_MERGE)_it_tmp_dir=tmp.intltool && mkdir $$_it_tmp_dir && LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u $$_it_tmp_dir $< $@ && rmdir $$_it_tmp_dir'
+ fi
+       INTLTOOL_XAM_RULE='%.xam:       %.xml.in       $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@'
+       INTLTOOL_KBD_RULE='%.kbd:       %.kbd.in       $(INTLTOOL_MERGE) $(wildcard $(top_srcdir)/po/*.po) ; $(INTLTOOL_V_MERGE)LC_ALL=C $(INTLTOOL_MERGE) $(INTLTOOL_V_MERGE_OPTIONS) -x -u -m -c $(top_builddir)/po/.intltool-merge-cache $(top_srcdir)/po $< $@'
diff --git a/lightdm/patches/patch-data_lightdm.conf b/lightdm/patches/patch-data_lightdm.conf
new file mode 100644
index 0000000000..3559b5c2ab
--- /dev/null
+++ b/lightdm/patches/patch-data_lightdm.conf
@@ -0,0 +1,22 @@
+$NetBSD$
+
+--- data/lightdm.conf.orig	2018-09-05 01:33:31.000000000 +0000
++++ data/lightdm.conf
+@@ -22,7 +22,7 @@
+ #start-default-seat=true
+ #greeter-user=lightdm
+ #minimum-display-number=0
+-#minimum-vt=7
++minimum-vt=@LIGHTDM_MINVT@
+ #lock-memory=true
+ #user-authority-in-system-dir=false
+ #guest-account-script=guest-account
+@@ -30,7 +30,7 @@
+ #log-directory=/var/log/lightdm
+ #run-directory=/var/run/lightdm
+ #cache-directory=/var/cache/lightdm
+-#sessions-directory=/usr/share/lightdm/sessions:/usr/share/xsessions:/usr/share/wayland-sessions
++sessions-directory=@PREFIX@/share/lightdm/sessions:@PREFIX@/share/xsessions:@PREFIX@/share/wayland-sessions
+ #remote-sessions-directory=/usr/share/lightdm/remote-sessions
+ #greeters-directory=$XDG_DATA_DIRS/lightdm/greeters:$XDG_DATA_DIRS/xgreeters
+ #backup-logs=true
diff --git a/lightdm/patches/patch-data_pam_lightdm b/lightdm/patches/patch-data_pam_lightdm
new file mode 100644
index 0000000000..976b3ff7c5
--- /dev/null
+++ b/lightdm/patches/patch-data_pam_lightdm
@@ -0,0 +1,26 @@
+$NetBSD$
+
+Adjust to OpenPAM available modules.
+
+--- data/pam/lightdm.orig	2018-04-10 03:07:52.000000000 +0000
++++ data/pam/lightdm
+@@ -1,10 +1,10 @@
+ #%PAM-1.0
+ 
+ # Block login if they are globally disabled
+-auth      required pam_nologin.so
++#auth      required pam_nologin.so
+ 
+ # Load environment from /etc/environment and ~/.pam_environment
+-auth      required pam_env.so
++#auth      required pam_env.so
+ 
+ # Use /etc/passwd and /etc/shadow for passwords
+ auth      required pam_unix.so
+@@ -16,5 +16,4 @@ account   required pam_unix.so
+ password  required pam_unix.so
+ 
+ # Setup session
+-session   required pam_unix.so
+-session   optional pam_systemd.so
++session   required pam_permit.so
diff --git a/lightdm/patches/patch-data_pam_lightdm-greeter b/lightdm/patches/patch-data_pam_lightdm-greeter
new file mode 100644
index 0000000000..2925675d7b
--- /dev/null
+++ b/lightdm/patches/patch-data_pam_lightdm-greeter
@@ -0,0 +1,22 @@
+$NetBSD$
+
+Adjust to OpenPAM available modules.
+
+--- data/pam/lightdm-greeter.orig	2018-04-10 03:07:52.000000000 +0000
++++ data/pam/lightdm-greeter
+@@ -1,7 +1,7 @@
+ #%PAM-1.0
+ 
+ # Load environment from /etc/environment and ~/.pam_environment
+-auth      required pam_env.so
++#auth      required pam_env.so
+ 
+ # Always let the greeter start without authentication
+ auth      required pam_permit.so
+@@ -13,5 +13,4 @@ account   required pam_permit.so
+ password  required pam_deny.so
+ 
+ # Setup session
+-session   required pam_unix.so
+-session   optional pam_systemd.so
++session   required pam_permit.so
diff --git a/lightdm/patches/patch-liblightdm-gobject_language.c b/lightdm/patches/patch-liblightdm-gobject_language.c
new file mode 100644
index 0000000000..dfcc30923b
--- /dev/null
+++ b/lightdm/patches/patch-liblightdm-gobject_language.c
@@ -0,0 +1,41 @@
+$NetBSD$
+
+LC_IDENTIFICATION is a GNU extension.
+https://bugs.launchpad.net/lightdm/+bug/790186
+
+--- liblightdm-gobject/language.c.orig	2018-09-05 01:33:31.000000000 +0000
++++ liblightdm-gobject/language.c
+@@ -214,12 +214,16 @@ lightdm_language_get_name (LightDMLangua
+         if (locale)
+         {
+             const gchar *current = setlocale (LC_ALL, NULL);
++#ifdef LC_IDENTICATION
+             setlocale (LC_IDENTIFICATION, locale);
++#endif
+             setlocale (LC_MESSAGES, "");
+ 
++#ifdef _NL_IDENTIFICATION_LANGUAGE
+             const gchar *language_en = nl_langinfo (_NL_IDENTIFICATION_LANGUAGE);
+             if (language_en && strlen (language_en) > 0)
+                 priv->name = g_strdup (dgettext ("iso_639_3", language_en));
++#endif
+ 
+             setlocale (LC_ALL, current);
+         }
+@@ -254,12 +258,16 @@ lightdm_language_get_territory (LightDML
+         if (locale)
+         {
+             gchar *current = setlocale (LC_ALL, NULL);
++#ifdef LC_IDENTICATION
+             setlocale (LC_IDENTIFICATION, locale);
++#endif
+             setlocale (LC_MESSAGES, "");
+ 
++#ifdef _NL_IDENTIFICATION_TERRITORY
+             gchar *country_en = nl_langinfo (_NL_IDENTIFICATION_TERRITORY);
+             if (country_en && strlen (country_en) > 0 && g_strcmp0 (country_en, "ISO") != 0)
+                 priv->territory = g_strdup (dgettext ("iso_3166", country_en));
++#endif
+ 
+             setlocale (LC_ALL, current);
+         }
diff --git a/lightdm/patches/patch-src_process.c b/lightdm/patches/patch-src_process.c
new file mode 100644
index 0000000000..554ee8380e
--- /dev/null
+++ b/lightdm/patches/patch-src_process.c
@@ -0,0 +1,24 @@
+$NetBSD$
+
+Clear the user process environment for systems that do not provide clearenv().
+
+--- src/process.c.orig	2018-09-05 01:33:31.000000000 +0000
++++ src/process.c
+@@ -73,6 +73,8 @@ static GHashTable *processes = NULL;
+ static pid_t signal_pid;
+ static int signal_pipe[2];
+ 
++extern char **environ;
++
+ Process *
+ process_get_current (void)
+ {
+@@ -241,7 +243,7 @@ process_start (Process *process, gboolea
+ #ifdef HAVE_CLEARENV
+             clearenv ();
+ #else
+-            environ = NULL;
++            *environ = NULL;
+ #endif
+         for (guint i = 0; i < env_length; i++)
+             setenv (env_keys[i], env_values[i], TRUE);
diff --git a/lightdm/patches/patch-src_session-child.c b/lightdm/patches/patch-src_session-child.c
new file mode 100644
index 0000000000..c7833ec6c5
--- /dev/null
+++ b/lightdm/patches/patch-src_session-child.c
@@ -0,0 +1,60 @@
+$NetBSD$
+
+--- src/session-child.c.orig	2018-09-05 01:33:31.000000000 +0000
++++ src/session-child.c
+@@ -13,7 +13,9 @@
+ #include <grp.h>
+ #include <glib.h>
+ #include <security/pam_appl.h>
++#if !defined(__NetBSD__) && !defined(__FreeBSD__)
+ #include <utmp.h>
++#endif
+ #include <utmpx.h>
+ #include <sys/mman.h>
+ 
+@@ -192,6 +194,7 @@ read_xauth (void)
+     return x_authority_new (x_authority_family, x_authority_address, x_authority_address_length, x_authority_number, x_authority_name, x_authority_data, x_authority_data_length);
+ }
+ 
++#if !defined(__NetBSD__) && !defined(__FreeBSD__)
+ /* GNU provides this but we can't rely on that so let's make our own version */
+ static void
+ updwtmpx (const gchar *wtmp_file, struct utmpx *ut)
+@@ -213,6 +216,7 @@ updwtmpx (const gchar *wtmp_file, struct
+ 
+     updwtmp (wtmp_file, &u);
+ }
++#endif
+ 
+ #if HAVE_LIBAUDIT
+ static void
+@@ -363,7 +367,9 @@ session_child_run (int argc, char **argv
+             ut.ut_tv.tv_sec = tv.tv_sec;
+             ut.ut_tv.tv_usec = tv.tv_usec;
+ 
++#if !defined(__NetBSD__) && !defined(__FreeBSD__)
+             updwtmpx ("/var/log/btmp", &ut);
++#endif
+ 
+ #if HAVE_LIBAUDIT
+             audit_event (AUDIT_USER_LOGIN, username, -1, remote_host_name, tty, FALSE);
+@@ -708,7 +714,9 @@ session_child_run (int argc, char **argv
+             if (!pututxline (&ut))
+                 g_printerr ("Failed to write utmpx: %s\n", strerror (errno));
+             endutxent ();
++#if !defined(__NetBSD__) && !defined(__FreeBSD__)
+             updwtmpx ("/var/log/wtmp", &ut);
++#endif
+ 
+ #if HAVE_LIBAUDIT
+             audit_event (AUDIT_USER_LOGIN, username, uid, remote_host_name, tty, TRUE);
+@@ -749,7 +757,9 @@ session_child_run (int argc, char **argv
+             if (!pututxline (&ut))
+                 g_printerr ("Failed to write utmpx: %s\n", strerror (errno));
+             endutxent ();
++#if !defined(__NetBSD__) && !defined(__FreeBSD__)
+             updwtmpx ("/var/log/wtmp", &ut);
++#endif
+ 
+ #if HAVE_LIBAUDIT
+             audit_event (AUDIT_USER_LOGOUT, username, uid, remote_host_name, tty, TRUE);



Home | Main Index | Thread Index | Old Index