diff -pruN 1.26.0-8/Makefile.in 1.30.0-0ubuntu8/Makefile.in
--- 1.26.0-8/Makefile.in	2018-03-21 23:13:51.000000000 +0000
+++ 1.30.0-0ubuntu8/Makefile.in	2019-05-17 04:47:12.000000000 +0000
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2017 Free Software Foundation, Inc.
+# Copyright (C) 1994-2018 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -140,7 +140,7 @@ am__recursive_targets = \
   $(RECURSIVE_CLEAN_TARGETS) \
   $(am__extra_recursive_targets)
 AM_RECURSIVE_TARGETS = $(am__recursive_targets:-recursive=) TAGS CTAGS \
-	cscope distdir dist dist-all distcheck
+	cscope distdir distdir-am dist dist-all distcheck
 am__tagged_files = $(HEADERS) $(SOURCES) $(TAGS_FILES) \
 	$(LISP)config.h.in
 # Read a list of newline-separated strings from the standard input,
@@ -437,8 +437,8 @@ Makefile: $(srcdir)/Makefile.in $(top_bu
 	    echo ' $(SHELL) ./config.status'; \
 	    $(SHELL) ./config.status;; \
 	  *) \
-	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe)'; \
-	    cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__depfiles_maybe);; \
+	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__maybe_remake_depfiles)'; \
+	    cd $(top_builddir) && $(SHELL) ./config.status $@ $(am__maybe_remake_depfiles);; \
 	esac;
 
 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
@@ -580,7 +580,10 @@ distclean-tags:
 	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
 	-rm -f cscope.out cscope.in.out cscope.po.out cscope.files
 
-distdir: $(DISTFILES)
+distdir: $(BUILT_SOURCES)
+	$(MAKE) $(AM_MAKEFLAGS) distdir-am
+
+distdir-am: $(DISTFILES)
 	$(am__remove_distdir)
 	test -d "$(distdir)" || mkdir "$(distdir)"
 	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
diff -pruN 1.26.0-8/NEWS 1.30.0-0ubuntu8/NEWS
--- 1.26.0-8/NEWS	2018-03-21 23:13:17.000000000 +0000
+++ 1.30.0-0ubuntu8/NEWS	2019-05-17 04:45:38.000000000 +0000
@@ -1,3 +1,24 @@
+Overview of changes in lightdm 1.30.0
+
+    * Add lightdm_user_get_is_locked ()
+    * Hide users with shell /bin/false
+    * Remove unity-system-compositor support (dead upstream)
+    * Fix dm-tool crash
+    * Update documentation
+
+Overview of changes in lightdm 1.28.0
+
+    * Continue to shutdown session is removing X authority fails
+    * Set XDG_SEAT env variable in script hooks
+    * Fix small leak in XDMCP server
+    * liblightdm-qt: mark class PowerInterface as exported
+    * Fix one qt5 test being run instead of a qt4 one
+    * Remove use of deprecated g_type_class_add_private
+    * Modernize private data in objects
+    * Document XDG_SEAT_PATH in man page
+    * Fix install failing if link already exists
+    * Remove bashisms in configure.ac
+
 Overview of changes in lightdm 1.26.0
 
     * No changes from 1.25.2
diff -pruN 1.26.0-8/aclocal.m4 1.30.0-0ubuntu8/aclocal.m4
--- 1.26.0-8/aclocal.m4	2018-03-21 23:13:49.000000000 +0000
+++ 1.30.0-0ubuntu8/aclocal.m4	2019-05-17 04:47:11.000000000 +0000
@@ -1,6 +1,6 @@
-# generated automatically by aclocal 1.15.1 -*- Autoconf -*-
+# generated automatically by aclocal 1.16.1 -*- Autoconf -*-
 
-# Copyright (C) 1996-2017 Free Software Foundation, Inc.
+# Copyright (C) 1996-2018 Free Software Foundation, Inc.
 
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -549,7 +549,7 @@ AC_SUBST([YELP_HELP_RULES])
 m4_ifdef([_AM_SUBST_NOTMAKE], [_AM_SUBST_NOTMAKE([YELP_HELP_RULES])])
 ])
 
-# Copyright (C) 2002-2017 Free Software Foundation, Inc.
+# Copyright (C) 2002-2018 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -561,10 +561,10 @@ m4_ifdef([_AM_SUBST_NOTMAKE], [_AM_SUBST
 # generated from the m4 files accompanying Automake X.Y.
 # (This private macro should not be called outside this file.)
 AC_DEFUN([AM_AUTOMAKE_VERSION],
-[am__api_version='1.15'
+[am__api_version='1.16'
 dnl Some users find AM_AUTOMAKE_VERSION and mistake it for a way to
 dnl require some minimum version.  Point them to the right macro.
-m4_if([$1], [1.15.1], [],
+m4_if([$1], [1.16.1], [],
       [AC_FATAL([Do not call $0, use AM_INIT_AUTOMAKE([$1]).])])dnl
 ])
 
@@ -580,14 +580,14 @@ m4_define([_AM_AUTOCONF_VERSION], [])
 # Call AM_AUTOMAKE_VERSION and AM_AUTOMAKE_VERSION so they can be traced.
 # This function is AC_REQUIREd by AM_INIT_AUTOMAKE.
 AC_DEFUN([AM_SET_CURRENT_AUTOMAKE_VERSION],
-[AM_AUTOMAKE_VERSION([1.15.1])dnl
+[AM_AUTOMAKE_VERSION([1.16.1])dnl
 m4_ifndef([AC_AUTOCONF_VERSION],
   [m4_copy([m4_PACKAGE_VERSION], [AC_AUTOCONF_VERSION])])dnl
 _AM_AUTOCONF_VERSION(m4_defn([AC_AUTOCONF_VERSION]))])
 
 # AM_AUX_DIR_EXPAND                                         -*- Autoconf -*-
 
-# Copyright (C) 2001-2017 Free Software Foundation, Inc.
+# Copyright (C) 2001-2018 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -639,7 +639,7 @@ am_aux_dir=`cd "$ac_aux_dir" && pwd`
 
 # AM_CONDITIONAL                                            -*- Autoconf -*-
 
-# Copyright (C) 1997-2017 Free Software Foundation, Inc.
+# Copyright (C) 1997-2018 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -670,7 +670,7 @@ AC_CONFIG_COMMANDS_PRE(
 Usually this means the macro was only invoked conditionally.]])
 fi])])
 
-# Copyright (C) 1999-2017 Free Software Foundation, Inc.
+# Copyright (C) 1999-2018 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -861,13 +861,12 @@ _AM_SUBST_NOTMAKE([am__nodep])dnl
 
 # Generate code to set up dependency tracking.              -*- Autoconf -*-
 
-# Copyright (C) 1999-2017 Free Software Foundation, Inc.
+# Copyright (C) 1999-2018 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
 # with or without modifications, as long as this notice is preserved.
 
-
 # _AM_OUTPUT_DEPENDENCY_COMMANDS
 # ------------------------------
 AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS],
@@ -875,49 +874,41 @@ AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS
   # Older Autoconf quotes --file arguments for eval, but not when files
   # are listed without --file.  Let's play safe and only enable the eval
   # if we detect the quoting.
-  case $CONFIG_FILES in
-  *\'*) eval set x "$CONFIG_FILES" ;;
-  *)   set x $CONFIG_FILES ;;
-  esac
+  # TODO: see whether this extra hack can be removed once we start
+  # requiring Autoconf 2.70 or later.
+  AS_CASE([$CONFIG_FILES],
+          [*\'*], [eval set x "$CONFIG_FILES"],
+          [*], [set x $CONFIG_FILES])
   shift
-  for mf
+  # Used to flag and report bootstrapping failures.
+  am_rc=0
+  for am_mf
   do
     # Strip MF so we end up with the name of the file.
-    mf=`echo "$mf" | sed -e 's/:.*$//'`
-    # Check whether this is an Automake generated Makefile or not.
-    # We used to match only the files named 'Makefile.in', but
-    # some people rename them; so instead we look at the file content.
-    # Grep'ing the first line is not enough: some people post-process
-    # each Makefile.in and add a new line on top of each file to say so.
-    # Grep'ing the whole file is not good either: AIX grep has a line
+    am_mf=`AS_ECHO(["$am_mf"]) | sed -e 's/:.*$//'`
+    # Check whether this is an Automake generated Makefile which includes
+    # dependency-tracking related rules and includes.
+    # Grep'ing the whole file directly is not great: AIX grep has a line
     # limit of 2048, but all sed's we know have understand at least 4000.
-    if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
-      dirpart=`AS_DIRNAME("$mf")`
-    else
-      continue
-    fi
-    # Extract the definition of DEPDIR, am__include, and am__quote
-    # from the Makefile without running 'make'.
-    DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
-    test -z "$DEPDIR" && continue
-    am__include=`sed -n 's/^am__include = //p' < "$mf"`
-    test -z "$am__include" && continue
-    am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
-    # Find all dependency output files, they are included files with
-    # $(DEPDIR) in their names.  We invoke sed twice because it is the
-    # simplest approach to changing $(DEPDIR) to its actual value in the
-    # expansion.
-    for file in `sed -n "
-      s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
-	 sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do
-      # Make sure the directory exists.
-      test -f "$dirpart/$file" && continue
-      fdir=`AS_DIRNAME(["$file"])`
-      AS_MKDIR_P([$dirpart/$fdir])
-      # echo "creating $dirpart/$file"
-      echo '# dummy' > "$dirpart/$file"
-    done
+    sed -n 's,^am--depfiles:.*,X,p' "$am_mf" | grep X >/dev/null 2>&1 \
+      || continue
+    am_dirpart=`AS_DIRNAME(["$am_mf"])`
+    am_filepart=`AS_BASENAME(["$am_mf"])`
+    AM_RUN_LOG([cd "$am_dirpart" \
+      && sed -e '/# am--include-marker/d' "$am_filepart" \
+        | $MAKE -f - am--depfiles]) || am_rc=$?
   done
+  if test $am_rc -ne 0; then
+    AC_MSG_FAILURE([Something went wrong bootstrapping makefile fragments
+    for automatic dependency tracking.  Try re-running configure with the
+    '--disable-dependency-tracking' option to at least be able to build
+    the package (albeit without support for automatic dependency tracking).])
+  fi
+  AS_UNSET([am_dirpart])
+  AS_UNSET([am_filepart])
+  AS_UNSET([am_mf])
+  AS_UNSET([am_rc])
+  rm -f conftest-deps.mk
 }
 ])# _AM_OUTPUT_DEPENDENCY_COMMANDS
 
@@ -926,18 +917,17 @@ AC_DEFUN([_AM_OUTPUT_DEPENDENCY_COMMANDS
 # -----------------------------
 # This macro should only be invoked once -- use via AC_REQUIRE.
 #
-# This code is only required when automatic dependency tracking
-# is enabled.  FIXME.  This creates each '.P' file that we will
-# need in order to bootstrap the dependency handling code.
+# This code is only required when automatic dependency tracking is enabled.
+# This creates each '.Po' and '.Plo' makefile fragment that we'll need in
+# order to bootstrap the dependency handling code.
 AC_DEFUN([AM_OUTPUT_DEPENDENCY_COMMANDS],
 [AC_CONFIG_COMMANDS([depfiles],
      [test x"$AMDEP_TRUE" != x"" || _AM_OUTPUT_DEPENDENCY_COMMANDS],
-     [AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"])
-])
+     [AMDEP_TRUE="$AMDEP_TRUE" MAKE="${MAKE-make}"])])
 
 # Do all the work for Automake.                             -*- Autoconf -*-
 
-# Copyright (C) 1996-2017 Free Software Foundation, Inc.
+# Copyright (C) 1996-2018 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1024,8 +1014,8 @@ AC_REQUIRE([AM_PROG_INSTALL_STRIP])dnl
 AC_REQUIRE([AC_PROG_MKDIR_P])dnl
 # For better backward compatibility.  To be removed once Automake 1.9.x
 # dies out for good.  For more background, see:
-# <http://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
-# <http://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
+# <https://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
+# <https://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
 AC_SUBST([mkdir_p], ['$(MKDIR_P)'])
 # We need awk for the "check" target (and possibly the TAP driver).  The
 # system "awk" is bad on some platforms.
@@ -1092,7 +1082,7 @@ END
 Aborting the configuration process, to ensure you take notice of the issue.
 
 You can download and install GNU coreutils to get an 'rm' implementation
-that behaves properly: <http://www.gnu.org/software/coreutils/>.
+that behaves properly: <https://www.gnu.org/software/coreutils/>.
 
 If you want to complete the configuration process using your problematic
 'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
@@ -1134,7 +1124,7 @@ for _am_header in $config_headers :; do
 done
 echo "timestamp for $_am_arg" >`AS_DIRNAME(["$_am_arg"])`/stamp-h[]$_am_stamp_count])
 
-# Copyright (C) 2001-2017 Free Software Foundation, Inc.
+# Copyright (C) 2001-2018 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1155,7 +1145,7 @@ if test x"${install_sh+set}" != xset; th
 fi
 AC_SUBST([install_sh])])
 
-# Copyright (C) 2003-2017 Free Software Foundation, Inc.
+# Copyright (C) 2003-2018 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1177,7 +1167,7 @@ AC_SUBST([am__leading_dot])])
 # Add --enable-maintainer-mode option to configure.         -*- Autoconf -*-
 # From Jim Meyering
 
-# Copyright (C) 1996-2017 Free Software Foundation, Inc.
+# Copyright (C) 1996-2018 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1212,7 +1202,7 @@ AC_MSG_CHECKING([whether to enable maint
 
 # Check to see how 'make' treats includes.	            -*- Autoconf -*-
 
-# Copyright (C) 2001-2017 Free Software Foundation, Inc.
+# Copyright (C) 2001-2018 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1220,49 +1210,42 @@ AC_MSG_CHECKING([whether to enable maint
 
 # AM_MAKE_INCLUDE()
 # -----------------
-# Check to see how make treats includes.
+# Check whether make has an 'include' directive that can support all
+# the idioms we need for our automatic dependency tracking code.
 AC_DEFUN([AM_MAKE_INCLUDE],
-[am_make=${MAKE-make}
-cat > confinc << 'END'
+[AC_MSG_CHECKING([whether ${MAKE-make} supports the include directive])
+cat > confinc.mk << 'END'
 am__doit:
-	@echo this is the am__doit target
+	@echo this is the am__doit target >confinc.out
 .PHONY: am__doit
 END
-# If we don't find an include directive, just comment out the code.
-AC_MSG_CHECKING([for style of include used by $am_make])
 am__include="#"
 am__quote=
-_am_result=none
-# First try GNU make style include.
-echo "include confinc" > confmf
-# Ignore all kinds of additional output from 'make'.
-case `$am_make -s -f confmf 2> /dev/null` in #(
-*the\ am__doit\ target*)
-  am__include=include
-  am__quote=
-  _am_result=GNU
-  ;;
-esac
-# Now try BSD make style include.
-if test "$am__include" = "#"; then
-   echo '.include "confinc"' > confmf
-   case `$am_make -s -f confmf 2> /dev/null` in #(
-   *the\ am__doit\ target*)
-     am__include=.include
-     am__quote="\""
-     _am_result=BSD
-     ;;
-   esac
-fi
-AC_SUBST([am__include])
-AC_SUBST([am__quote])
-AC_MSG_RESULT([$_am_result])
-rm -f confinc confmf
-])
+# BSD make does it like this.
+echo '.include "confinc.mk" # ignored' > confmf.BSD
+# Other make implementations (GNU, Solaris 10, AIX) do it like this.
+echo 'include confinc.mk # ignored' > confmf.GNU
+_am_result=no
+for s in GNU BSD; do
+  AM_RUN_LOG([${MAKE-make} -f confmf.$s && cat confinc.out])
+  AS_CASE([$?:`cat confinc.out 2>/dev/null`],
+      ['0:this is the am__doit target'],
+      [AS_CASE([$s],
+          [BSD], [am__include='.include' am__quote='"'],
+          [am__include='include' am__quote=''])])
+  if test "$am__include" != "#"; then
+    _am_result="yes ($s style)"
+    break
+  fi
+done
+rm -f confinc.* confmf.*
+AC_MSG_RESULT([${_am_result}])
+AC_SUBST([am__include])])
+AC_SUBST([am__quote])])
 
 # Fake the existence of programs that GNU maintainers use.  -*- Autoconf -*-
 
-# Copyright (C) 1997-2017 Free Software Foundation, Inc.
+# Copyright (C) 1997-2018 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1301,7 +1284,7 @@ fi
 
 # Helper functions for option handling.                     -*- Autoconf -*-
 
-# Copyright (C) 2001-2017 Free Software Foundation, Inc.
+# Copyright (C) 2001-2018 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1330,7 +1313,7 @@ AC_DEFUN([_AM_SET_OPTIONS],
 AC_DEFUN([_AM_IF_OPTION],
 [m4_ifset(_AM_MANGLE_OPTION([$1]), [$2], [$3])])
 
-# Copyright (C) 1999-2017 Free Software Foundation, Inc.
+# Copyright (C) 1999-2018 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1377,7 +1360,7 @@ AC_LANG_POP([C])])
 # For backward compatibility.
 AC_DEFUN_ONCE([AM_PROG_CC_C_O], [AC_REQUIRE([AC_PROG_CC])])
 
-# Copyright (C) 2001-2017 Free Software Foundation, Inc.
+# Copyright (C) 2001-2018 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1396,7 +1379,7 @@ AC_DEFUN([AM_RUN_LOG],
 
 # Check to make sure that the build environment is sane.    -*- Autoconf -*-
 
-# Copyright (C) 1996-2017 Free Software Foundation, Inc.
+# Copyright (C) 1996-2018 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1477,7 +1460,7 @@ AC_CONFIG_COMMANDS_PRE(
 rm -f conftest.file
 ])
 
-# Copyright (C) 2009-2017 Free Software Foundation, Inc.
+# Copyright (C) 2009-2018 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1537,7 +1520,7 @@ AC_SUBST([AM_BACKSLASH])dnl
 _AM_SUBST_NOTMAKE([AM_BACKSLASH])dnl
 ])
 
-# Copyright (C) 2001-2017 Free Software Foundation, Inc.
+# Copyright (C) 2001-2018 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1565,7 +1548,7 @@ fi
 INSTALL_STRIP_PROGRAM="\$(install_sh) -c -s"
 AC_SUBST([INSTALL_STRIP_PROGRAM])])
 
-# Copyright (C) 2006-2017 Free Software Foundation, Inc.
+# Copyright (C) 2006-2018 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -1584,7 +1567,7 @@ AC_DEFUN([AM_SUBST_NOTMAKE], [_AM_SUBST_
 
 # Check how to create a tarball.                            -*- Autoconf -*-
 
-# Copyright (C) 2004-2017 Free Software Foundation, Inc.
+# Copyright (C) 2004-2018 Free Software Foundation, Inc.
 #
 # This file is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
diff -pruN 1.26.0-8/common/Makefile.in 1.30.0-0ubuntu8/common/Makefile.in
--- 1.26.0-8/common/Makefile.in	2018-03-21 23:13:51.000000000 +0000
+++ 1.30.0-0ubuntu8/common/Makefile.in	2019-05-17 04:47:12.000000000 +0000
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2017 Free Software Foundation, Inc.
+# Copyright (C) 1994-2018 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -132,7 +132,11 @@ am__v_at_0 = @
 am__v_at_1 = 
 DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
 depcomp = $(SHELL) $(top_srcdir)/depcomp
-am__depfiles_maybe = depfiles
+am__maybe_remake_depfiles = depfiles
+am__depfiles_remade = ./$(DEPDIR)/libcommon_la-configuration.Plo \
+	./$(DEPDIR)/libcommon_la-dmrc.Plo \
+	./$(DEPDIR)/libcommon_la-privileges.Plo \
+	./$(DEPDIR)/libcommon_la-user-list.Plo
 am__mv = mv -f
 COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
 	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
@@ -412,8 +416,8 @@ Makefile: $(srcdir)/Makefile.in $(top_bu
 	  *config.status*) \
 	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
 	  *) \
-	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
-	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
+	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
 	esac;
 
 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
@@ -445,10 +449,16 @@ mostlyclean-compile:
 distclean-compile:
 	-rm -f *.tab.c
 
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcommon_la-configuration.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcommon_la-dmrc.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcommon_la-privileges.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcommon_la-user-list.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcommon_la-configuration.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcommon_la-dmrc.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcommon_la-privileges.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libcommon_la-user-list.Plo@am__quote@ # am--include-marker
+
+$(am__depfiles_remade):
+	@$(MKDIR_P) $(@D)
+	@echo '# dummy' >$@-t && $(am__mv) $@-t $@
+
+am--depfiles: $(am__depfiles_remade)
 
 .c.o:
 @am__fastdepCC_TRUE@	$(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@@ -557,7 +567,10 @@ cscopelist-am: $(am__tagged_files)
 distclean-tags:
 	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
 
-distdir: $(DISTFILES)
+distdir: $(BUILT_SOURCES)
+	$(MAKE) $(AM_MAKEFLAGS) distdir-am
+
+distdir-am: $(DISTFILES)
 	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 	list='$(DISTFILES)'; \
@@ -627,7 +640,10 @@ clean-am: clean-generic clean-libtool cl
 	mostlyclean-am
 
 distclean: distclean-am
-	-rm -rf ./$(DEPDIR)
+		-rm -f ./$(DEPDIR)/libcommon_la-configuration.Plo
+	-rm -f ./$(DEPDIR)/libcommon_la-dmrc.Plo
+	-rm -f ./$(DEPDIR)/libcommon_la-privileges.Plo
+	-rm -f ./$(DEPDIR)/libcommon_la-user-list.Plo
 	-rm -f Makefile
 distclean-am: clean-am distclean-compile distclean-generic \
 	distclean-tags
@@ -673,7 +689,10 @@ install-ps-am:
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
-	-rm -rf ./$(DEPDIR)
+		-rm -f ./$(DEPDIR)/libcommon_la-configuration.Plo
+	-rm -f ./$(DEPDIR)/libcommon_la-dmrc.Plo
+	-rm -f ./$(DEPDIR)/libcommon_la-privileges.Plo
+	-rm -f ./$(DEPDIR)/libcommon_la-user-list.Plo
 	-rm -f Makefile
 maintainer-clean-am: distclean-am maintainer-clean-generic
 
@@ -694,16 +713,16 @@ uninstall-am:
 
 .MAKE: install-am install-strip
 
-.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
-	clean-libtool clean-noinstLTLIBRARIES cscopelist-am ctags \
-	ctags-am distclean distclean-compile distclean-generic \
-	distclean-libtool distclean-tags distdir dvi dvi-am html \
-	html-am info info-am install install-am install-data \
-	install-data-am install-dvi install-dvi-am install-exec \
-	install-exec-am install-html install-html-am install-info \
-	install-info-am install-man install-pdf install-pdf-am \
-	install-ps install-ps-am install-strip installcheck \
-	installcheck-am installdirs maintainer-clean \
+.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \
+	clean-generic clean-libtool clean-noinstLTLIBRARIES \
+	cscopelist-am ctags ctags-am distclean distclean-compile \
+	distclean-generic distclean-libtool distclean-tags distdir dvi \
+	dvi-am html html-am info info-am install install-am \
+	install-data install-data-am install-dvi install-dvi-am \
+	install-exec install-exec-am install-html install-html-am \
+	install-info install-info-am install-man install-pdf \
+	install-pdf-am install-ps install-ps-am install-strip \
+	installcheck installcheck-am installdirs maintainer-clean \
 	maintainer-clean-generic mostlyclean mostlyclean-compile \
 	mostlyclean-generic mostlyclean-libtool pdf pdf-am ps ps-am \
 	tags tags-am uninstall uninstall-am
diff -pruN 1.26.0-8/common/configuration.c 1.30.0-0ubuntu8/common/configuration.c
--- 1.26.0-8/common/configuration.c	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/common/configuration.c	2019-05-17 04:41:32.000000000 +0000
@@ -32,7 +32,7 @@ typedef enum
     KEY_DEPRECATED
 } KeyStatus;
 
-G_DEFINE_TYPE (Configuration, config, G_TYPE_OBJECT)
+G_DEFINE_TYPE_WITH_PRIVATE (Configuration, config, G_TYPE_OBJECT)
 
 static Configuration *configuration_instance = NULL;
 
@@ -352,7 +352,7 @@ config_init (Configuration *config)
     g_hash_table_insert (config->priv->seat_keys, "pam-service", GINT_TO_POINTER (KEY_SUPPORTED));
     g_hash_table_insert (config->priv->seat_keys, "pam-autologin-service", GINT_TO_POINTER (KEY_SUPPORTED));
     g_hash_table_insert (config->priv->seat_keys, "pam-greeter-service", GINT_TO_POINTER (KEY_SUPPORTED));
-    g_hash_table_insert (config->priv->seat_keys, "xserver-backend", GINT_TO_POINTER (KEY_SUPPORTED));
+    g_hash_table_insert (config->priv->seat_keys, "xserver-backend", GINT_TO_POINTER (KEY_DEPRECATED));
     g_hash_table_insert (config->priv->seat_keys, "xserver-command", GINT_TO_POINTER (KEY_SUPPORTED));
     g_hash_table_insert (config->priv->seat_keys, "xmir-command", GINT_TO_POINTER (KEY_SUPPORTED));
     g_hash_table_insert (config->priv->seat_keys, "xserver-config", GINT_TO_POINTER (KEY_SUPPORTED));
@@ -364,8 +364,8 @@ config_init (Configuration *config)
     g_hash_table_insert (config->priv->seat_keys, "xdmcp-manager", GINT_TO_POINTER (KEY_SUPPORTED));
     g_hash_table_insert (config->priv->seat_keys, "xdmcp-port", GINT_TO_POINTER (KEY_SUPPORTED));
     g_hash_table_insert (config->priv->seat_keys, "xdmcp-key", GINT_TO_POINTER (KEY_SUPPORTED));
-    g_hash_table_insert (config->priv->seat_keys, "unity-compositor-command", GINT_TO_POINTER (KEY_SUPPORTED));
-    g_hash_table_insert (config->priv->seat_keys, "unity-compositor-timeout", GINT_TO_POINTER (KEY_SUPPORTED));
+    g_hash_table_insert (config->priv->seat_keys, "unity-compositor-command", GINT_TO_POINTER (KEY_DEPRECATED));
+    g_hash_table_insert (config->priv->seat_keys, "unity-compositor-timeout", GINT_TO_POINTER (KEY_DEPRECATED));
     g_hash_table_insert (config->priv->seat_keys, "greeter-session", GINT_TO_POINTER (KEY_SUPPORTED));
     g_hash_table_insert (config->priv->seat_keys, "greeter-hide-users", GINT_TO_POINTER (KEY_SUPPORTED));
     g_hash_table_insert (config->priv->seat_keys, "greeter-allow-guest", GINT_TO_POINTER (KEY_SUPPORTED));
@@ -429,6 +429,4 @@ config_class_init (ConfigurationClass *k
     GObjectClass *object_class = G_OBJECT_CLASS (klass);
 
     object_class->finalize = config_finalize;
-
-    g_type_class_add_private (klass, sizeof (ConfigurationPrivate));
 }
diff -pruN 1.26.0-8/common/configuration.h 1.30.0-0ubuntu8/common/configuration.h
--- 1.26.0-8/common/configuration.h	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/common/configuration.h	2018-09-05 01:33:31.000000000 +0000
@@ -23,7 +23,7 @@ typedef struct ConfigurationPrivate Conf
 
 typedef struct
 {
-    GObject             parent_instance;
+    GObject               parent_instance;
     ConfigurationPrivate *priv;
 } Configuration;
 
diff -pruN 1.26.0-8/common/user-list.c 1.30.0-0ubuntu8/common/user-list.c
--- 1.26.0-8/common/user-list.c	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/common/user-list.c	2019-05-17 04:41:37.000000000 +0000
@@ -45,6 +45,7 @@ enum
     USER_PROP_HAS_MESSAGES,
     USER_PROP_UID,
     USER_PROP_GID,
+    USER_PROP_IS_LOCKED,
 };
 
 enum
@@ -139,6 +140,9 @@ typedef struct
 
     /* User default session */
     gchar *session;
+
+    /* TRUE if this user is locked */
+    gboolean is_locked;
 } CommonUserPrivate;
 
 typedef struct
@@ -153,8 +157,8 @@ typedef struct
     GObjectClass parent_class;
 } CommonSessionClass;
 
-G_DEFINE_TYPE (CommonUserList, common_user_list, G_TYPE_OBJECT)
-G_DEFINE_TYPE (CommonUser, common_user, G_TYPE_OBJECT)
+G_DEFINE_TYPE_WITH_PRIVATE (CommonUserList, common_user_list, G_TYPE_OBJECT)
+G_DEFINE_TYPE_WITH_PRIVATE (CommonUser, common_user, G_TYPE_OBJECT)
 #define COMMON_SESSION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), common_session_get_type (), CommonSession))
 GType common_session_get_type (void);
 G_DEFINE_TYPE (CommonSession, common_session, G_TYPE_OBJECT)
@@ -511,7 +515,7 @@ load_accounts_user (CommonUser *user)
         return FALSE;
 
     /* Store the properties we need */
-    GVariantIter *iter;
+    g_autoptr(GVariantIter) iter = NULL;
     g_variant_get (result, "(a{sv})", &iter);
     const gchar *name;
     GVariant *value;
@@ -560,8 +564,9 @@ load_accounts_user (CommonUser *user)
         }
         else if (strcmp (name, "Uid") == 0 && g_variant_is_of_type (value, G_VARIANT_TYPE_UINT64))
             priv->uid = g_variant_get_uint64 (value);
+        else if (strcmp (name, "Locked") == 0 && g_variant_is_of_type (value, G_VARIANT_TYPE_BOOLEAN))
+            priv->is_locked = g_variant_get_boolean (value);
     }
-    g_variant_iter_free (iter);
 
     g_autoptr(GVariant) extra_result = g_dbus_connection_call_sync (priv->bus,
                                                                     "org.freedesktop.Accounts",
@@ -577,8 +582,10 @@ load_accounts_user (CommonUser *user)
     if (error)
         g_warning ("Error updating user %s: %s", priv->path, error->message);
     if (extra_result) {
-        g_variant_get (extra_result, "(a{sv})", &iter);
-        while (g_variant_iter_loop (iter, "{&sv}", &name, &value))
+        g_autoptr(GVariantIter) extra_iter = NULL;
+
+        g_variant_get (extra_result, "(a{sv})", &extra_iter);
+        while (g_variant_iter_loop (extra_iter, "{&sv}", &name, &value))
         {
             if (strcmp (name, "BackgroundFile") == 0 && g_variant_is_of_type (value, G_VARIANT_TYPE_STRING))
             {
@@ -600,7 +607,6 @@ load_accounts_user (CommonUser *user)
                 }
             }
         }
-        g_variant_iter_free (iter);
     }
 
     return !system_account;
@@ -841,12 +847,11 @@ load_sessions (CommonUserList *user_list
             g_variant_get (result, "(v)", &value);
 
             g_debug ("Loading sessions from org.freedesktop.DisplayManager");
-            GVariantIter *iter;
+            g_autoptr(GVariantIter) iter = NULL;
             g_variant_get (value, "ao", &iter);
             const gchar *path;
             while (g_variant_iter_loop (iter, "&o", &path))
                 load_session (user_list, path);
-            g_variant_iter_free (iter);
         }
         else
             g_warning ("Unexpected type from org.freedesktop.DisplayManager.Sessions: %s", g_variant_get_type_string (result));
@@ -901,12 +906,11 @@ load_users (CommonUserList *user_list)
     if (result)
     {
         g_debug ("Loading users from org.freedesktop.Accounts");
-        GVariantIter *iter;
+        g_autoptr(GVariantIter) iter = NULL;
         g_variant_get (result, "(ao)", &iter);
         const gchar *path;
         while (g_variant_iter_loop (iter, "&o", &path))
             add_accounts_user (user_list, path, FALSE);
-        g_variant_iter_free (iter);
     }
     else
     {
@@ -1058,8 +1062,6 @@ common_user_list_class_init (CommonUserL
 {
     GObjectClass *object_class = G_OBJECT_CLASS (klass);
 
-    g_type_class_add_private (klass, sizeof (CommonUserListPrivate));
-
     object_class->set_property = common_user_list_set_property;
     object_class->get_property = common_user_list_get_property;
     object_class->finalize = common_user_list_finalize;
@@ -1389,7 +1391,7 @@ common_user_get_session (CommonUser *use
 /**
  * common_user_set_session:
  * @user: A #CommonUser
- * @language: The user's new session
+ * @session: The user's new session
  *
  * Set the session for a user.
  **/
@@ -1478,6 +1480,21 @@ common_user_get_gid (CommonUser *user)
     return priv->gid;
 }
 
+/**
+ * common_user_get_is_locked:
+ * @user: A #CommonUser
+ *
+ * Check if a user is locked.
+ *
+ * Return value: %TRUE if the user is locked.
+ **/
+gboolean
+common_user_get_is_locked (CommonUser *user)
+{
+    g_return_val_if_fail (COMMON_IS_USER (user), FALSE);
+    return GET_USER_PRIVATE (user)->is_locked;
+}
+
 static void
 common_user_init (CommonUser *user)
 {
@@ -1550,6 +1567,9 @@ common_user_get_property (GObject    *ob
     case USER_PROP_GID:
         g_value_set_uint64 (value, common_user_get_gid (self));
         break;
+    case USER_PROP_IS_LOCKED:
+        g_value_set_boolean (value, common_user_get_is_locked (self));
+        break;
     default:
         G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
         break;
@@ -1582,8 +1602,6 @@ common_user_class_init (CommonUserClass
 {
     GObjectClass *object_class = G_OBJECT_CLASS (klass);
 
-    g_type_class_add_private (klass, sizeof (CommonUserPrivate));
-
     object_class->set_property = common_user_set_property;
     object_class->get_property = common_user_get_property;
     object_class->finalize = common_user_finalize;
@@ -1697,7 +1715,13 @@ common_user_class_init (CommonUserClass
                                                           G_MAXUINT64,
                                                           0,
                                                           G_PARAM_READWRITE));
-
+    g_object_class_install_property (object_class,
+                                     USER_PROP_IS_LOCKED,
+                                     g_param_spec_boolean ("is-locked",
+                                                           "is-locked",
+                                                           "TRUE if the user is currently locked",
+                                                           FALSE,
+                                                           G_PARAM_READABLE));
     /**
      * CommonUser::changed:
      * @user: A #CommonUser
diff -pruN 1.26.0-8/common/user-list.h 1.30.0-0ubuntu8/common/user-list.h
--- 1.26.0-8/common/user-list.h	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/common/user-list.h	2019-05-17 04:41:37.000000000 +0000
@@ -112,6 +112,8 @@ uid_t common_user_get_uid (CommonUser *u
 
 gid_t common_user_get_gid (CommonUser *user);
 
+gboolean common_user_get_is_locked (CommonUser *user);
+
 G_END_DECLS
 
 #endif /* COMMON_USER_LIST_H_ */
diff -pruN 1.26.0-8/compile 1.30.0-0ubuntu8/compile
--- 1.26.0-8/compile	2018-03-21 23:13:51.000000000 +0000
+++ 1.30.0-0ubuntu8/compile	2019-05-17 04:47:12.000000000 +0000
@@ -1,9 +1,9 @@
 #! /bin/sh
 # Wrapper for compilers which do not understand '-c -o'.
 
-scriptversion=2012-10-14.11; # UTC
+scriptversion=2018-03-07.03; # UTC
 
-# Copyright (C) 1999-2014 Free Software Foundation, Inc.
+# Copyright (C) 1999-2018 Free Software Foundation, Inc.
 # Written by Tom Tromey <tromey@cygnus.com>.
 #
 # This program is free software; you can redistribute it and/or modify
@@ -17,7 +17,7 @@ scriptversion=2012-10-14.11; # UTC
 # GNU General Public License for more details.
 #
 # You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+# along with this program.  If not, see <https://www.gnu.org/licenses/>.
 
 # As a special exception to the GNU General Public License, if you
 # distribute this file as part of a program that contains a
@@ -255,7 +255,8 @@ EOF
     echo "compile $scriptversion"
     exit $?
     ;;
-  cl | *[/\\]cl | cl.exe | *[/\\]cl.exe )
+  cl | *[/\\]cl | cl.exe | *[/\\]cl.exe | \
+  icl | *[/\\]icl | icl.exe | *[/\\]icl.exe )
     func_cl_wrapper "$@"      # Doesn't return...
     ;;
 esac
@@ -339,9 +340,9 @@ exit $ret
 # Local Variables:
 # mode: shell-script
 # sh-indentation: 2
-# eval: (add-hook 'write-file-hooks 'time-stamp)
+# eval: (add-hook 'before-save-hook 'time-stamp)
 # time-stamp-start: "scriptversion="
 # time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
+# time-stamp-time-zone: "UTC0"
 # time-stamp-end: "; # UTC"
 # End:
diff -pruN 1.26.0-8/config.guess 1.30.0-0ubuntu8/config.guess
--- 1.26.0-8/config.guess	2017-11-20 02:58:50.000000000 +0000
+++ 1.30.0-0ubuntu8/config.guess	2018-04-10 03:08:16.000000000 +0000
@@ -1,8 +1,8 @@
 #! /bin/sh
 # Attempt to guess a canonical system name.
-#   Copyright 1992-2016 Free Software Foundation, Inc.
+#   Copyright 1992-2018 Free Software Foundation, Inc.
 
-timestamp='2016-10-02'
+timestamp='2018-02-24'
 
 # This file is free software; you can redistribute it and/or modify it
 # under the terms of the GNU General Public License as published by
@@ -15,7 +15,7 @@ timestamp='2016-10-02'
 # General Public License for more details.
 #
 # You should have received a copy of the GNU General Public License
-# along with this program; if not, see <http://www.gnu.org/licenses/>.
+# along with this program; if not, see <https://www.gnu.org/licenses/>.
 #
 # As a special exception to the GNU General Public License, if you
 # distribute this file as part of a program that contains a
@@ -27,7 +27,7 @@ timestamp='2016-10-02'
 # Originally written by Per Bothner; maintained since 2000 by Ben Elliston.
 #
 # You can get the latest version of this script from:
-# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess
+# https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess
 #
 # Please send patches to <config-patches@gnu.org>.
 
@@ -39,7 +39,7 @@ Usage: $0 [OPTION]
 
 Output the configuration name of the system \`$me' is run on.
 
-Operation modes:
+Options:
   -h, --help         print this help, then exit
   -t, --time-stamp   print date of last modification, then exit
   -v, --version      print version number, then exit
@@ -50,7 +50,7 @@ version="\
 GNU config.guess ($timestamp)
 
 Originally written by Per Bothner.
-Copyright 1992-2016 Free Software Foundation, Inc.
+Copyright 1992-2018 Free Software Foundation, Inc.
 
 This is free software; see the source for copying conditions.  There is NO
 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -107,9 +107,9 @@ trap "rm -f \$tmpfiles 2>/dev/null; rmdi
 dummy=$tmp/dummy ;
 tmpfiles="$dummy.c $dummy.o $dummy.rel $dummy" ;
 case $CC_FOR_BUILD,$HOST_CC,$CC in
- ,,)    echo "int x;" > $dummy.c ;
+ ,,)    echo "int x;" > "$dummy.c" ;
 	for c in cc gcc c89 c99 ; do
-	  if ($c -c -o $dummy.o $dummy.c) >/dev/null 2>&1 ; then
+	  if ($c -c -o "$dummy.o" "$dummy.c") >/dev/null 2>&1 ; then
 	     CC_FOR_BUILD="$c"; break ;
 	  fi ;
 	done ;
@@ -132,14 +132,14 @@ UNAME_RELEASE=`(uname -r) 2>/dev/null` |
 UNAME_SYSTEM=`(uname -s) 2>/dev/null`  || UNAME_SYSTEM=unknown
 UNAME_VERSION=`(uname -v) 2>/dev/null` || UNAME_VERSION=unknown
 
-case "${UNAME_SYSTEM}" in
+case "$UNAME_SYSTEM" in
 Linux|GNU|GNU/*)
 	# If the system lacks a compiler, then just pick glibc.
 	# We could probably try harder.
 	LIBC=gnu
 
-	eval $set_cc_for_build
-	cat <<-EOF > $dummy.c
+	eval "$set_cc_for_build"
+	cat <<-EOF > "$dummy.c"
 	#include <features.h>
 	#if defined(__UCLIBC__)
 	LIBC=uclibc
@@ -149,13 +149,20 @@ Linux|GNU|GNU/*)
 	LIBC=gnu
 	#endif
 	EOF
-	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^LIBC' | sed 's, ,,g'`
+	eval "`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^LIBC' | sed 's, ,,g'`"
+
+	# If ldd exists, use it to detect musl libc.
+	if command -v ldd >/dev/null && \
+		ldd --version 2>&1 | grep -q ^musl
+	then
+	    LIBC=musl
+	fi
 	;;
 esac
 
 # Note: order is significant - the case branches are not exclusive.
 
-case "${UNAME_MACHINE}:${UNAME_SYSTEM}:${UNAME_RELEASE}:${UNAME_VERSION}" in
+case "$UNAME_MACHINE:$UNAME_SYSTEM:$UNAME_RELEASE:$UNAME_VERSION" in
     *:NetBSD:*:*)
 	# NetBSD (nbsd) targets should (where applicable) match one or
 	# more of the tuples: *-*-netbsdelf*, *-*-netbsdaout*,
@@ -169,30 +176,30 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:$
 	# portion of the name.  We always set it to "unknown".
 	sysctl="sysctl -n hw.machine_arch"
 	UNAME_MACHINE_ARCH=`(uname -p 2>/dev/null || \
-	    /sbin/$sysctl 2>/dev/null || \
-	    /usr/sbin/$sysctl 2>/dev/null || \
+	    "/sbin/$sysctl" 2>/dev/null || \
+	    "/usr/sbin/$sysctl" 2>/dev/null || \
 	    echo unknown)`
-	case "${UNAME_MACHINE_ARCH}" in
+	case "$UNAME_MACHINE_ARCH" in
 	    armeb) machine=armeb-unknown ;;
 	    arm*) machine=arm-unknown ;;
 	    sh3el) machine=shl-unknown ;;
 	    sh3eb) machine=sh-unknown ;;
 	    sh5el) machine=sh5le-unknown ;;
 	    earmv*)
-		arch=`echo ${UNAME_MACHINE_ARCH} | sed -e 's,^e\(armv[0-9]\).*$,\1,'`
-		endian=`echo ${UNAME_MACHINE_ARCH} | sed -ne 's,^.*\(eb\)$,\1,p'`
-		machine=${arch}${endian}-unknown
+		arch=`echo "$UNAME_MACHINE_ARCH" | sed -e 's,^e\(armv[0-9]\).*$,\1,'`
+		endian=`echo "$UNAME_MACHINE_ARCH" | sed -ne 's,^.*\(eb\)$,\1,p'`
+		machine="${arch}${endian}"-unknown
 		;;
-	    *) machine=${UNAME_MACHINE_ARCH}-unknown ;;
+	    *) machine="$UNAME_MACHINE_ARCH"-unknown ;;
 	esac
 	# The Operating System including object format, if it has switched
 	# to ELF recently (or will in the future) and ABI.
-	case "${UNAME_MACHINE_ARCH}" in
+	case "$UNAME_MACHINE_ARCH" in
 	    earm*)
 		os=netbsdelf
 		;;
 	    arm*|i386|m68k|ns32k|sh3*|sparc|vax)
-		eval $set_cc_for_build
+		eval "$set_cc_for_build"
 		if echo __ELF__ | $CC_FOR_BUILD -E - 2>/dev/null \
 			| grep -q __ELF__
 		then
@@ -208,10 +215,10 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:$
 		;;
 	esac
 	# Determine ABI tags.
-	case "${UNAME_MACHINE_ARCH}" in
+	case "$UNAME_MACHINE_ARCH" in
 	    earm*)
 		expr='s/^earmv[0-9]/-eabi/;s/eb$//'
-		abi=`echo ${UNAME_MACHINE_ARCH} | sed -e "$expr"`
+		abi=`echo "$UNAME_MACHINE_ARCH" | sed -e "$expr"`
 		;;
 	esac
 	# The OS release
@@ -219,46 +226,55 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:$
 	# thus, need a distinct triplet. However, they do not need
 	# kernel version information, so it can be replaced with a
 	# suitable tag, in the style of linux-gnu.
-	case "${UNAME_VERSION}" in
+	case "$UNAME_VERSION" in
 	    Debian*)
 		release='-gnu'
 		;;
 	    *)
-		release=`echo ${UNAME_RELEASE} | sed -e 's/[-_].*//' | cut -d. -f1,2`
+		release=`echo "$UNAME_RELEASE" | sed -e 's/[-_].*//' | cut -d. -f1,2`
 		;;
 	esac
 	# Since CPU_TYPE-MANUFACTURER-KERNEL-OPERATING_SYSTEM:
 	# contains redundant information, the shorter form:
 	# CPU_TYPE-MANUFACTURER-OPERATING_SYSTEM is used.
-	echo "${machine}-${os}${release}${abi}"
+	echo "$machine-${os}${release}${abi}"
 	exit ;;
     *:Bitrig:*:*)
 	UNAME_MACHINE_ARCH=`arch | sed 's/Bitrig.//'`
-	echo ${UNAME_MACHINE_ARCH}-unknown-bitrig${UNAME_RELEASE}
+	echo "$UNAME_MACHINE_ARCH"-unknown-bitrig"$UNAME_RELEASE"
 	exit ;;
     *:OpenBSD:*:*)
 	UNAME_MACHINE_ARCH=`arch | sed 's/OpenBSD.//'`
-	echo ${UNAME_MACHINE_ARCH}-unknown-openbsd${UNAME_RELEASE}
+	echo "$UNAME_MACHINE_ARCH"-unknown-openbsd"$UNAME_RELEASE"
 	exit ;;
     *:LibertyBSD:*:*)
 	UNAME_MACHINE_ARCH=`arch | sed 's/^.*BSD\.//'`
-	echo ${UNAME_MACHINE_ARCH}-unknown-libertybsd${UNAME_RELEASE}
+	echo "$UNAME_MACHINE_ARCH"-unknown-libertybsd"$UNAME_RELEASE"
+	exit ;;
+    *:MidnightBSD:*:*)
+	echo "$UNAME_MACHINE"-unknown-midnightbsd"$UNAME_RELEASE"
 	exit ;;
     *:ekkoBSD:*:*)
-	echo ${UNAME_MACHINE}-unknown-ekkobsd${UNAME_RELEASE}
+	echo "$UNAME_MACHINE"-unknown-ekkobsd"$UNAME_RELEASE"
 	exit ;;
     *:SolidBSD:*:*)
-	echo ${UNAME_MACHINE}-unknown-solidbsd${UNAME_RELEASE}
+	echo "$UNAME_MACHINE"-unknown-solidbsd"$UNAME_RELEASE"
 	exit ;;
     macppc:MirBSD:*:*)
-	echo powerpc-unknown-mirbsd${UNAME_RELEASE}
+	echo powerpc-unknown-mirbsd"$UNAME_RELEASE"
 	exit ;;
     *:MirBSD:*:*)
-	echo ${UNAME_MACHINE}-unknown-mirbsd${UNAME_RELEASE}
+	echo "$UNAME_MACHINE"-unknown-mirbsd"$UNAME_RELEASE"
 	exit ;;
     *:Sortix:*:*)
-	echo ${UNAME_MACHINE}-unknown-sortix
+	echo "$UNAME_MACHINE"-unknown-sortix
 	exit ;;
+    *:Redox:*:*)
+	echo "$UNAME_MACHINE"-unknown-redox
+	exit ;;
+    mips:OSF1:*.*)
+        echo mips-dec-osf1
+        exit ;;
     alpha:OSF1:*:*)
 	case $UNAME_RELEASE in
 	*4.0)
@@ -310,28 +326,19 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:$
 	# A Tn.n version is a released field test version.
 	# A Xn.n version is an unreleased experimental baselevel.
 	# 1.2 uses "1.2" for uname -r.
-	echo ${UNAME_MACHINE}-dec-osf`echo ${UNAME_RELEASE} | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`
+	echo "$UNAME_MACHINE"-dec-osf"`echo "$UNAME_RELEASE" | sed -e 's/^[PVTX]//' | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`"
 	# Reset EXIT trap before exiting to avoid spurious non-zero exit code.
 	exitcode=$?
 	trap '' 0
 	exit $exitcode ;;
-    Alpha\ *:Windows_NT*:*)
-	# How do we know it's Interix rather than the generic POSIX subsystem?
-	# Should we change UNAME_MACHINE based on the output of uname instead
-	# of the specific Alpha model?
-	echo alpha-pc-interix
-	exit ;;
-    21064:Windows_NT:50:3)
-	echo alpha-dec-winnt3.5
-	exit ;;
     Amiga*:UNIX_System_V:4.0:*)
 	echo m68k-unknown-sysv4
 	exit ;;
     *:[Aa]miga[Oo][Ss]:*:*)
-	echo ${UNAME_MACHINE}-unknown-amigaos
+	echo "$UNAME_MACHINE"-unknown-amigaos
 	exit ;;
     *:[Mm]orph[Oo][Ss]:*:*)
-	echo ${UNAME_MACHINE}-unknown-morphos
+	echo "$UNAME_MACHINE"-unknown-morphos
 	exit ;;
     *:OS/390:*:*)
 	echo i370-ibm-openedition
@@ -343,7 +350,7 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:$
 	echo powerpc-ibm-os400
 	exit ;;
     arm:RISC*:1.[012]*:*|arm:riscix:1.[012]*:*)
-	echo arm-acorn-riscix${UNAME_RELEASE}
+	echo arm-acorn-riscix"$UNAME_RELEASE"
 	exit ;;
     arm*:riscos:*:*|arm*:RISCOS:*:*)
 	echo arm-unknown-riscos
@@ -370,19 +377,19 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:$
 	    sparc) echo sparc-icl-nx7; exit ;;
 	esac ;;
     s390x:SunOS:*:*)
-	echo ${UNAME_MACHINE}-ibm-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+	echo "$UNAME_MACHINE"-ibm-solaris2"`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`"
 	exit ;;
     sun4H:SunOS:5.*:*)
-	echo sparc-hal-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+	echo sparc-hal-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
 	exit ;;
     sun4*:SunOS:5.*:* | tadpole*:SunOS:5.*:*)
-	echo sparc-sun-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+	echo sparc-sun-solaris2"`echo "$UNAME_RELEASE" | sed -e 's/[^.]*//'`"
 	exit ;;
     i86pc:AuroraUX:5.*:* | i86xen:AuroraUX:5.*:*)
-	echo i386-pc-auroraux${UNAME_RELEASE}
+	echo i386-pc-auroraux"$UNAME_RELEASE"
 	exit ;;
     i86pc:SunOS:5.*:* | i86xen:SunOS:5.*:*)
-	eval $set_cc_for_build
+	eval "$set_cc_for_build"
 	SUN_ARCH=i386
 	# If there is a compiler, see if it is configured for 64-bit objects.
 	# Note that the Sun cc does not turn __LP64__ into 1 like gcc does.
@@ -395,13 +402,13 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:$
 		SUN_ARCH=x86_64
 	    fi
 	fi
-	echo ${SUN_ARCH}-pc-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+	echo "$SUN_ARCH"-pc-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
 	exit ;;
     sun4*:SunOS:6*:*)
 	# According to config.sub, this is the proper way to canonicalize
 	# SunOS6.  Hard to guess exactly what SunOS6 will be like, but
 	# it's likely to be more like Solaris than SunOS4.
-	echo sparc-sun-solaris3`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+	echo sparc-sun-solaris3"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
 	exit ;;
     sun4*:SunOS:*:*)
 	case "`/usr/bin/arch -k`" in
@@ -410,25 +417,25 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:$
 		;;
 	esac
 	# Japanese Language versions have a version number like `4.1.3-JL'.
-	echo sparc-sun-sunos`echo ${UNAME_RELEASE}|sed -e 's/-/_/'`
+	echo sparc-sun-sunos"`echo "$UNAME_RELEASE"|sed -e 's/-/_/'`"
 	exit ;;
     sun3*:SunOS:*:*)
-	echo m68k-sun-sunos${UNAME_RELEASE}
+	echo m68k-sun-sunos"$UNAME_RELEASE"
 	exit ;;
     sun*:*:4.2BSD:*)
 	UNAME_RELEASE=`(sed 1q /etc/motd | awk '{print substr($5,1,3)}') 2>/dev/null`
-	test "x${UNAME_RELEASE}" = x && UNAME_RELEASE=3
+	test "x$UNAME_RELEASE" = x && UNAME_RELEASE=3
 	case "`/bin/arch`" in
 	    sun3)
-		echo m68k-sun-sunos${UNAME_RELEASE}
+		echo m68k-sun-sunos"$UNAME_RELEASE"
 		;;
 	    sun4)
-		echo sparc-sun-sunos${UNAME_RELEASE}
+		echo sparc-sun-sunos"$UNAME_RELEASE"
 		;;
 	esac
 	exit ;;
     aushp:SunOS:*:*)
-	echo sparc-auspex-sunos${UNAME_RELEASE}
+	echo sparc-auspex-sunos"$UNAME_RELEASE"
 	exit ;;
     # The situation for MiNT is a little confusing.  The machine name
     # can be virtually everything (everything which is not
@@ -439,44 +446,44 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:$
     # MiNT.  But MiNT is downward compatible to TOS, so this should
     # be no problem.
     atarist[e]:*MiNT:*:* | atarist[e]:*mint:*:* | atarist[e]:*TOS:*:*)
-	echo m68k-atari-mint${UNAME_RELEASE}
+	echo m68k-atari-mint"$UNAME_RELEASE"
 	exit ;;
     atari*:*MiNT:*:* | atari*:*mint:*:* | atarist[e]:*TOS:*:*)
-	echo m68k-atari-mint${UNAME_RELEASE}
+	echo m68k-atari-mint"$UNAME_RELEASE"
 	exit ;;
     *falcon*:*MiNT:*:* | *falcon*:*mint:*:* | *falcon*:*TOS:*:*)
-	echo m68k-atari-mint${UNAME_RELEASE}
+	echo m68k-atari-mint"$UNAME_RELEASE"
 	exit ;;
     milan*:*MiNT:*:* | milan*:*mint:*:* | *milan*:*TOS:*:*)
-	echo m68k-milan-mint${UNAME_RELEASE}
+	echo m68k-milan-mint"$UNAME_RELEASE"
 	exit ;;
     hades*:*MiNT:*:* | hades*:*mint:*:* | *hades*:*TOS:*:*)
-	echo m68k-hades-mint${UNAME_RELEASE}
+	echo m68k-hades-mint"$UNAME_RELEASE"
 	exit ;;
     *:*MiNT:*:* | *:*mint:*:* | *:*TOS:*:*)
-	echo m68k-unknown-mint${UNAME_RELEASE}
+	echo m68k-unknown-mint"$UNAME_RELEASE"
 	exit ;;
     m68k:machten:*:*)
-	echo m68k-apple-machten${UNAME_RELEASE}
+	echo m68k-apple-machten"$UNAME_RELEASE"
 	exit ;;
     powerpc:machten:*:*)
-	echo powerpc-apple-machten${UNAME_RELEASE}
+	echo powerpc-apple-machten"$UNAME_RELEASE"
 	exit ;;
     RISC*:Mach:*:*)
 	echo mips-dec-mach_bsd4.3
 	exit ;;
     RISC*:ULTRIX:*:*)
-	echo mips-dec-ultrix${UNAME_RELEASE}
+	echo mips-dec-ultrix"$UNAME_RELEASE"
 	exit ;;
     VAX*:ULTRIX*:*:*)
-	echo vax-dec-ultrix${UNAME_RELEASE}
+	echo vax-dec-ultrix"$UNAME_RELEASE"
 	exit ;;
     2020:CLIX:*:* | 2430:CLIX:*:*)
-	echo clipper-intergraph-clix${UNAME_RELEASE}
+	echo clipper-intergraph-clix"$UNAME_RELEASE"
 	exit ;;
     mips:*:*:UMIPS | mips:*:*:RISCos)
-	eval $set_cc_for_build
-	sed 's/^	//' << EOF >$dummy.c
+	eval "$set_cc_for_build"
+	sed 's/^	//' << EOF > "$dummy.c"
 #ifdef __cplusplus
 #include <stdio.h>  /* for printf() prototype */
 	int main (int argc, char *argv[]) {
@@ -485,23 +492,23 @@ case "${UNAME_MACHINE}:${UNAME_SYSTEM}:$
 #endif
 	#if defined (host_mips) && defined (MIPSEB)
 	#if defined (SYSTYPE_SYSV)
-	  printf ("mips-mips-riscos%ssysv\n", argv[1]); exit (0);
+	  printf ("mips-mips-riscos%ssysv\\n", argv[1]); exit (0);
 	#endif
 	#if defined (SYSTYPE_SVR4)
-	  printf ("mips-mips-riscos%ssvr4\n", argv[1]); exit (0);
+	  printf ("mips-mips-riscos%ssvr4\\n", argv[1]); exit (0);
 	#endif
 	#if defined (SYSTYPE_BSD43) || defined(SYSTYPE_BSD)
-	  printf ("mips-mips-riscos%sbsd\n", argv[1]); exit (0);
+	  printf ("mips-mips-riscos%sbsd\\n", argv[1]); exit (0);
 	#endif
 	#endif
 	  exit (-1);
 	}
 EOF
-	$CC_FOR_BUILD -o $dummy $dummy.c &&
-	  dummyarg=`echo "${UNAME_RELEASE}" | sed -n 's/\([0-9]*\).*/\1/p'` &&
-	  SYSTEM_NAME=`$dummy $dummyarg` &&
+	$CC_FOR_BUILD -o "$dummy" "$dummy.c" &&
+	  dummyarg=`echo "$UNAME_RELEASE" | sed -n 's/\([0-9]*\).*/\1/p'` &&
+	  SYSTEM_NAME=`"$dummy" "$dummyarg"` &&
 	    { echo "$SYSTEM_NAME"; exit; }
-	echo mips-mips-riscos${UNAME_RELEASE}
+	echo mips-mips-riscos"$UNAME_RELEASE"
 	exit ;;
     Motorola:PowerMAX_OS:*:*)
 	echo powerpc-motorola-powermax
@@ -527,17 +534,17 @@ EOF
     AViiON:dgux:*:*)
 	# DG/UX returns AViiON for all architectures
 	UNAME_PROCESSOR=`/usr/bin/uname -p`
-	if [ $UNAME_PROCESSOR = mc88100 ] || [ $UNAME_PROCESSOR = mc88110 ]
+	if [ "$UNAME_PROCESSOR" = mc88100 ] || [ "$UNAME_PROCESSOR" = mc88110 ]
 	then
-	    if [ ${TARGET_BINARY_INTERFACE}x = m88kdguxelfx ] || \
-	       [ ${TARGET_BINARY_INTERFACE}x = x ]
+	    if [ "$TARGET_BINARY_INTERFACE"x = m88kdguxelfx ] || \
+	       [ "$TARGET_BINARY_INTERFACE"x = x ]
 	    then
-		echo m88k-dg-dgux${UNAME_RELEASE}
+		echo m88k-dg-dgux"$UNAME_RELEASE"
 	    else
-		echo m88k-dg-dguxbcs${UNAME_RELEASE}
+		echo m88k-dg-dguxbcs"$UNAME_RELEASE"
 	    fi
 	else
-	    echo i586-dg-dgux${UNAME_RELEASE}
+	    echo i586-dg-dgux"$UNAME_RELEASE"
 	fi
 	exit ;;
     M88*:DolphinOS:*:*)	# DolphinOS (SVR3)
@@ -554,7 +561,7 @@ EOF
 	echo m68k-tektronix-bsd
 	exit ;;
     *:IRIX*:*:*)
-	echo mips-sgi-irix`echo ${UNAME_RELEASE}|sed -e 's/-/_/g'`
+	echo mips-sgi-irix"`echo "$UNAME_RELEASE"|sed -e 's/-/_/g'`"
 	exit ;;
     ????????:AIX?:[12].1:2)   # AIX 2.2.1 or AIX 2.1.1 is RT/PC AIX.
 	echo romp-ibm-aix     # uname -m gives an 8 hex-code CPU id
@@ -566,14 +573,14 @@ EOF
 	if [ -x /usr/bin/oslevel ] ; then
 		IBM_REV=`/usr/bin/oslevel`
 	else
-		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
+		IBM_REV="$UNAME_VERSION.$UNAME_RELEASE"
 	fi
-	echo ${UNAME_MACHINE}-ibm-aix${IBM_REV}
+	echo "$UNAME_MACHINE"-ibm-aix"$IBM_REV"
 	exit ;;
     *:AIX:2:3)
 	if grep bos325 /usr/include/stdio.h >/dev/null 2>&1; then
-		eval $set_cc_for_build
-		sed 's/^		//' << EOF >$dummy.c
+		eval "$set_cc_for_build"
+		sed 's/^		//' << EOF > "$dummy.c"
 		#include <sys/systemcfg.h>
 
 		main()
@@ -584,7 +591,7 @@ EOF
 			exit(0);
 			}
 EOF
-		if $CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy`
+		if $CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"`
 		then
 			echo "$SYSTEM_NAME"
 		else
@@ -598,7 +605,7 @@ EOF
 	exit ;;
     *:AIX:*:[4567])
 	IBM_CPU_ID=`/usr/sbin/lsdev -C -c processor -S available | sed 1q | awk '{ print $1 }'`
-	if /usr/sbin/lsattr -El ${IBM_CPU_ID} | grep ' POWER' >/dev/null 2>&1; then
+	if /usr/sbin/lsattr -El "$IBM_CPU_ID" | grep ' POWER' >/dev/null 2>&1; then
 		IBM_ARCH=rs6000
 	else
 		IBM_ARCH=powerpc
@@ -607,18 +614,18 @@ EOF
 		IBM_REV=`/usr/bin/lslpp -Lqc bos.rte.libc |
 			   awk -F: '{ print $3 }' | sed s/[0-9]*$/0/`
 	else
-		IBM_REV=${UNAME_VERSION}.${UNAME_RELEASE}
+		IBM_REV="$UNAME_VERSION.$UNAME_RELEASE"
 	fi
-	echo ${IBM_ARCH}-ibm-aix${IBM_REV}
+	echo "$IBM_ARCH"-ibm-aix"$IBM_REV"
 	exit ;;
     *:AIX:*:*)
 	echo rs6000-ibm-aix
 	exit ;;
-    ibmrt:4.4BSD:*|romp-ibm:BSD:*)
+    ibmrt:4.4BSD:*|romp-ibm:4.4BSD:*)
 	echo romp-ibm-bsd4.4
 	exit ;;
     ibmrt:*BSD:*|romp-ibm:BSD:*)            # covers RT/PC BSD and
-	echo romp-ibm-bsd${UNAME_RELEASE}   # 4.3 with uname added to
+	echo romp-ibm-bsd"$UNAME_RELEASE"   # 4.3 with uname added to
 	exit ;;                             # report: romp-ibm BSD 4.3
     *:BOSX:*:*)
 	echo rs6000-bull-bosx
@@ -633,28 +640,28 @@ EOF
 	echo m68k-hp-bsd4.4
 	exit ;;
     9000/[34678]??:HP-UX:*:*)
-	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
-	case "${UNAME_MACHINE}" in
-	    9000/31? )            HP_ARCH=m68000 ;;
-	    9000/[34]?? )         HP_ARCH=m68k ;;
+	HPUX_REV=`echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//'`
+	case "$UNAME_MACHINE" in
+	    9000/31?)            HP_ARCH=m68000 ;;
+	    9000/[34]??)         HP_ARCH=m68k ;;
 	    9000/[678][0-9][0-9])
 		if [ -x /usr/bin/getconf ]; then
 		    sc_cpu_version=`/usr/bin/getconf SC_CPU_VERSION 2>/dev/null`
 		    sc_kernel_bits=`/usr/bin/getconf SC_KERNEL_BITS 2>/dev/null`
-		    case "${sc_cpu_version}" in
+		    case "$sc_cpu_version" in
 		      523) HP_ARCH=hppa1.0 ;; # CPU_PA_RISC1_0
 		      528) HP_ARCH=hppa1.1 ;; # CPU_PA_RISC1_1
 		      532)                      # CPU_PA_RISC2_0
-			case "${sc_kernel_bits}" in
+			case "$sc_kernel_bits" in
 			  32) HP_ARCH=hppa2.0n ;;
 			  64) HP_ARCH=hppa2.0w ;;
 			  '') HP_ARCH=hppa2.0 ;;   # HP-UX 10.20
 			esac ;;
 		    esac
 		fi
-		if [ "${HP_ARCH}" = "" ]; then
-		    eval $set_cc_for_build
-		    sed 's/^		//' << EOF >$dummy.c
+		if [ "$HP_ARCH" = "" ]; then
+		    eval "$set_cc_for_build"
+		    sed 's/^		//' << EOF > "$dummy.c"
 
 		#define _HPUX_SOURCE
 		#include <stdlib.h>
@@ -687,13 +694,13 @@ EOF
 		    exit (0);
 		}
 EOF
-		    (CCOPTS="" $CC_FOR_BUILD -o $dummy $dummy.c 2>/dev/null) && HP_ARCH=`$dummy`
+		    (CCOPTS="" $CC_FOR_BUILD -o "$dummy" "$dummy.c" 2>/dev/null) && HP_ARCH=`"$dummy"`
 		    test -z "$HP_ARCH" && HP_ARCH=hppa
 		fi ;;
 	esac
-	if [ ${HP_ARCH} = hppa2.0w ]
+	if [ "$HP_ARCH" = hppa2.0w ]
 	then
-	    eval $set_cc_for_build
+	    eval "$set_cc_for_build"
 
 	    # hppa2.0w-hp-hpux* has a 64-bit kernel and a compiler generating
 	    # 32-bit code.  hppa64-hp-hpux* has the same kernel and a compiler
@@ -712,15 +719,15 @@ EOF
 		HP_ARCH=hppa64
 	    fi
 	fi
-	echo ${HP_ARCH}-hp-hpux${HPUX_REV}
+	echo "$HP_ARCH"-hp-hpux"$HPUX_REV"
 	exit ;;
     ia64:HP-UX:*:*)
-	HPUX_REV=`echo ${UNAME_RELEASE}|sed -e 's/[^.]*.[0B]*//'`
-	echo ia64-hp-hpux${HPUX_REV}
+	HPUX_REV=`echo "$UNAME_RELEASE"|sed -e 's/[^.]*.[0B]*//'`
+	echo ia64-hp-hpux"$HPUX_REV"
 	exit ;;
     3050*:HI-UX:*:*)
-	eval $set_cc_for_build
-	sed 's/^	//' << EOF >$dummy.c
+	eval "$set_cc_for_build"
+	sed 's/^	//' << EOF > "$dummy.c"
 	#include <unistd.h>
 	int
 	main ()
@@ -745,11 +752,11 @@ EOF
 	  exit (0);
 	}
 EOF
-	$CC_FOR_BUILD -o $dummy $dummy.c && SYSTEM_NAME=`$dummy` &&
+	$CC_FOR_BUILD -o "$dummy" "$dummy.c" && SYSTEM_NAME=`"$dummy"` &&
 		{ echo "$SYSTEM_NAME"; exit; }
 	echo unknown-hitachi-hiuxwe2
 	exit ;;
-    9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:* )
+    9000/7??:4.3bsd:*:* | 9000/8?[79]:4.3bsd:*:*)
 	echo hppa1.1-hp-bsd
 	exit ;;
     9000/8??:4.3bsd:*:*)
@@ -758,7 +765,7 @@ EOF
     *9??*:MPE/iX:*:* | *3000*:MPE/iX:*:*)
 	echo hppa1.0-hp-mpeix
 	exit ;;
-    hp7??:OSF1:*:* | hp8?[79]:OSF1:*:* )
+    hp7??:OSF1:*:* | hp8?[79]:OSF1:*:*)
 	echo hppa1.1-hp-osf
 	exit ;;
     hp8??:OSF1:*:*)
@@ -766,9 +773,9 @@ EOF
 	exit ;;
     i*86:OSF1:*:*)
 	if [ -x /usr/sbin/sysversion ] ; then
-	    echo ${UNAME_MACHINE}-unknown-osf1mk
+	    echo "$UNAME_MACHINE"-unknown-osf1mk
 	else
-	    echo ${UNAME_MACHINE}-unknown-osf1
+	    echo "$UNAME_MACHINE"-unknown-osf1
 	fi
 	exit ;;
     parisc*:Lites*:*:*)
@@ -793,127 +800,109 @@ EOF
 	echo c4-convex-bsd
 	exit ;;
     CRAY*Y-MP:*:*:*)
-	echo ymp-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+	echo ymp-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
 	exit ;;
     CRAY*[A-Z]90:*:*:*)
-	echo ${UNAME_MACHINE}-cray-unicos${UNAME_RELEASE} \
+	echo "$UNAME_MACHINE"-cray-unicos"$UNAME_RELEASE" \
 	| sed -e 's/CRAY.*\([A-Z]90\)/\1/' \
 	      -e y/ABCDEFGHIJKLMNOPQRSTUVWXYZ/abcdefghijklmnopqrstuvwxyz/ \
 	      -e 's/\.[^.]*$/.X/'
 	exit ;;
     CRAY*TS:*:*:*)
-	echo t90-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+	echo t90-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
 	exit ;;
     CRAY*T3E:*:*:*)
-	echo alphaev5-cray-unicosmk${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+	echo alphaev5-cray-unicosmk"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
 	exit ;;
     CRAY*SV1:*:*:*)
-	echo sv1-cray-unicos${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+	echo sv1-cray-unicos"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
 	exit ;;
     *:UNICOS/mp:*:*)
-	echo craynv-cray-unicosmp${UNAME_RELEASE} | sed -e 's/\.[^.]*$/.X/'
+	echo craynv-cray-unicosmp"$UNAME_RELEASE" | sed -e 's/\.[^.]*$/.X/'
 	exit ;;
     F30[01]:UNIX_System_V:*:* | F700:UNIX_System_V:*:*)
 	FUJITSU_PROC=`uname -m | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz`
 	FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'`
-	FUJITSU_REL=`echo ${UNAME_RELEASE} | sed -e 's/ /_/'`
+	FUJITSU_REL=`echo "$UNAME_RELEASE" | sed -e 's/ /_/'`
 	echo "${FUJITSU_PROC}-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
 	exit ;;
     5000:UNIX_System_V:4.*:*)
 	FUJITSU_SYS=`uname -p | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/\///'`
-	FUJITSU_REL=`echo ${UNAME_RELEASE} | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/'`
+	FUJITSU_REL=`echo "$UNAME_RELEASE" | tr ABCDEFGHIJKLMNOPQRSTUVWXYZ abcdefghijklmnopqrstuvwxyz | sed -e 's/ /_/'`
 	echo "sparc-fujitsu-${FUJITSU_SYS}${FUJITSU_REL}"
 	exit ;;
     i*86:BSD/386:*:* | i*86:BSD/OS:*:* | *:Ascend\ Embedded/OS:*:*)
-	echo ${UNAME_MACHINE}-pc-bsdi${UNAME_RELEASE}
+	echo "$UNAME_MACHINE"-pc-bsdi"$UNAME_RELEASE"
 	exit ;;
     sparc*:BSD/OS:*:*)
-	echo sparc-unknown-bsdi${UNAME_RELEASE}
+	echo sparc-unknown-bsdi"$UNAME_RELEASE"
 	exit ;;
     *:BSD/OS:*:*)
-	echo ${UNAME_MACHINE}-unknown-bsdi${UNAME_RELEASE}
+	echo "$UNAME_MACHINE"-unknown-bsdi"$UNAME_RELEASE"
 	exit ;;
     *:FreeBSD:*:*)
 	UNAME_PROCESSOR=`/usr/bin/uname -p`
-	case ${UNAME_PROCESSOR} in
+	case "$UNAME_PROCESSOR" in
 	    amd64)
-		echo x86_64-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
-	    *)
-		echo ${UNAME_PROCESSOR}-unknown-freebsd`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'` ;;
+		UNAME_PROCESSOR=x86_64 ;;
+	    i386)
+		UNAME_PROCESSOR=i586 ;;
 	esac
+	echo "$UNAME_PROCESSOR"-unknown-freebsd"`echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`"
 	exit ;;
     i*:CYGWIN*:*)
-	echo ${UNAME_MACHINE}-pc-cygwin
+	echo "$UNAME_MACHINE"-pc-cygwin
 	exit ;;
     *:MINGW64*:*)
-	echo ${UNAME_MACHINE}-pc-mingw64
+	echo "$UNAME_MACHINE"-pc-mingw64
 	exit ;;
     *:MINGW*:*)
-	echo ${UNAME_MACHINE}-pc-mingw32
+	echo "$UNAME_MACHINE"-pc-mingw32
 	exit ;;
     *:MSYS*:*)
-	echo ${UNAME_MACHINE}-pc-msys
-	exit ;;
-    i*:windows32*:*)
-	# uname -m includes "-pc" on this system.
-	echo ${UNAME_MACHINE}-mingw32
+	echo "$UNAME_MACHINE"-pc-msys
 	exit ;;
     i*:PW*:*)
-	echo ${UNAME_MACHINE}-pc-pw32
+	echo "$UNAME_MACHINE"-pc-pw32
 	exit ;;
     *:Interix*:*)
-	case ${UNAME_MACHINE} in
+	case "$UNAME_MACHINE" in
 	    x86)
-		echo i586-pc-interix${UNAME_RELEASE}
+		echo i586-pc-interix"$UNAME_RELEASE"
 		exit ;;
 	    authenticamd | genuineintel | EM64T)
-		echo x86_64-unknown-interix${UNAME_RELEASE}
+		echo x86_64-unknown-interix"$UNAME_RELEASE"
 		exit ;;
 	    IA64)
-		echo ia64-unknown-interix${UNAME_RELEASE}
+		echo ia64-unknown-interix"$UNAME_RELEASE"
 		exit ;;
 	esac ;;
-    [345]86:Windows_95:* | [345]86:Windows_98:* | [345]86:Windows_NT:*)
-	echo i${UNAME_MACHINE}-pc-mks
-	exit ;;
-    8664:Windows_NT:*)
-	echo x86_64-pc-mks
-	exit ;;
-    i*:Windows_NT*:* | Pentium*:Windows_NT*:*)
-	# How do we know it's Interix rather than the generic POSIX subsystem?
-	# It also conflicts with pre-2.0 versions of AT&T UWIN. Should we
-	# UNAME_MACHINE based on the output of uname instead of i386?
-	echo i586-pc-interix
-	exit ;;
     i*:UWIN*:*)
-	echo ${UNAME_MACHINE}-pc-uwin
+	echo "$UNAME_MACHINE"-pc-uwin
 	exit ;;
     amd64:CYGWIN*:*:* | x86_64:CYGWIN*:*:*)
 	echo x86_64-unknown-cygwin
 	exit ;;
-    p*:CYGWIN*:*)
-	echo powerpcle-unknown-cygwin
-	exit ;;
     prep*:SunOS:5.*:*)
-	echo powerpcle-unknown-solaris2`echo ${UNAME_RELEASE}|sed -e 's/[^.]*//'`
+	echo powerpcle-unknown-solaris2"`echo "$UNAME_RELEASE"|sed -e 's/[^.]*//'`"
 	exit ;;
     *:GNU:*:*)
 	# the GNU system
-	echo `echo ${UNAME_MACHINE}|sed -e 's,[-/].*$,,'`-unknown-${LIBC}`echo ${UNAME_RELEASE}|sed -e 's,/.*$,,'`
+	echo "`echo "$UNAME_MACHINE"|sed -e 's,[-/].*$,,'`-unknown-$LIBC`echo "$UNAME_RELEASE"|sed -e 's,/.*$,,'`"
 	exit ;;
     *:GNU/*:*:*)
 	# other systems with GNU libc and userland
-	echo ${UNAME_MACHINE}-unknown-`echo ${UNAME_SYSTEM} | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"``echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`-${LIBC}
+	echo "$UNAME_MACHINE-unknown-`echo "$UNAME_SYSTEM" | sed 's,^[^/]*/,,' | tr "[:upper:]" "[:lower:]"``echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`-$LIBC"
 	exit ;;
     i*86:Minix:*:*)
-	echo ${UNAME_MACHINE}-pc-minix
+	echo "$UNAME_MACHINE"-pc-minix
 	exit ;;
     aarch64:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
 	exit ;;
     aarch64_be:Linux:*:*)
 	UNAME_MACHINE=aarch64_be
-	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
 	exit ;;
     alpha:Linux:*:*)
 	case `sed -n '/^cpu model/s/^.*: \(.*\)/\1/p' < /proc/cpuinfo` in
@@ -927,63 +916,63 @@ EOF
 	esac
 	objdump --private-headers /bin/sh | grep -q ld.so.1
 	if test "$?" = 0 ; then LIBC=gnulibc1 ; fi
-	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
 	exit ;;
     arc:Linux:*:* | arceb:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
 	exit ;;
     arm*:Linux:*:*)
-	eval $set_cc_for_build
+	eval "$set_cc_for_build"
 	if echo __ARM_EABI__ | $CC_FOR_BUILD -E - 2>/dev/null \
 	    | grep -q __ARM_EABI__
 	then
-	    echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+	    echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
 	else
 	    if echo __ARM_PCS_VFP | $CC_FOR_BUILD -E - 2>/dev/null \
 		| grep -q __ARM_PCS_VFP
 	    then
-		echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabi
+		echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"eabi
 	    else
-		echo ${UNAME_MACHINE}-unknown-linux-${LIBC}eabihf
+		echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"eabihf
 	    fi
 	fi
 	exit ;;
     avr32*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
 	exit ;;
     cris:Linux:*:*)
-	echo ${UNAME_MACHINE}-axis-linux-${LIBC}
+	echo "$UNAME_MACHINE"-axis-linux-"$LIBC"
 	exit ;;
     crisv32:Linux:*:*)
-	echo ${UNAME_MACHINE}-axis-linux-${LIBC}
+	echo "$UNAME_MACHINE"-axis-linux-"$LIBC"
 	exit ;;
     e2k:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
 	exit ;;
     frv:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
 	exit ;;
     hexagon:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
 	exit ;;
     i*86:Linux:*:*)
-	echo ${UNAME_MACHINE}-pc-linux-${LIBC}
+	echo "$UNAME_MACHINE"-pc-linux-"$LIBC"
 	exit ;;
     ia64:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
 	exit ;;
     k1om:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
 	exit ;;
     m32r*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
 	exit ;;
     m68*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
 	exit ;;
     mips:Linux:*:* | mips64:Linux:*:*)
-	eval $set_cc_for_build
-	sed 's/^	//' << EOF >$dummy.c
+	eval "$set_cc_for_build"
+	sed 's/^	//' << EOF > "$dummy.c"
 	#undef CPU
 	#undef ${UNAME_MACHINE}
 	#undef ${UNAME_MACHINE}el
@@ -997,70 +986,74 @@ EOF
 	#endif
 	#endif
 EOF
-	eval `$CC_FOR_BUILD -E $dummy.c 2>/dev/null | grep '^CPU'`
-	test x"${CPU}" != x && { echo "${CPU}-unknown-linux-${LIBC}"; exit; }
+	eval "`$CC_FOR_BUILD -E "$dummy.c" 2>/dev/null | grep '^CPU'`"
+	test "x$CPU" != x && { echo "$CPU-unknown-linux-$LIBC"; exit; }
 	;;
     mips64el:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
 	exit ;;
     openrisc*:Linux:*:*)
-	echo or1k-unknown-linux-${LIBC}
+	echo or1k-unknown-linux-"$LIBC"
 	exit ;;
     or32:Linux:*:* | or1k*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
 	exit ;;
     padre:Linux:*:*)
-	echo sparc-unknown-linux-${LIBC}
+	echo sparc-unknown-linux-"$LIBC"
 	exit ;;
     parisc64:Linux:*:* | hppa64:Linux:*:*)
-	echo hppa64-unknown-linux-${LIBC}
+	echo hppa64-unknown-linux-"$LIBC"
 	exit ;;
     parisc:Linux:*:* | hppa:Linux:*:*)
 	# Look for CPU level
 	case `grep '^cpu[^a-z]*:' /proc/cpuinfo 2>/dev/null | cut -d' ' -f2` in
-	  PA7*) echo hppa1.1-unknown-linux-${LIBC} ;;
-	  PA8*) echo hppa2.0-unknown-linux-${LIBC} ;;
-	  *)    echo hppa-unknown-linux-${LIBC} ;;
+	  PA7*) echo hppa1.1-unknown-linux-"$LIBC" ;;
+	  PA8*) echo hppa2.0-unknown-linux-"$LIBC" ;;
+	  *)    echo hppa-unknown-linux-"$LIBC" ;;
 	esac
 	exit ;;
     ppc64:Linux:*:*)
-	echo powerpc64-unknown-linux-${LIBC}
+	echo powerpc64-unknown-linux-"$LIBC"
 	exit ;;
     ppc:Linux:*:*)
-	echo powerpc-unknown-linux-${LIBC}
+	echo powerpc-unknown-linux-"$LIBC"
 	exit ;;
     ppc64le:Linux:*:*)
-	echo powerpc64le-unknown-linux-${LIBC}
+	echo powerpc64le-unknown-linux-"$LIBC"
 	exit ;;
     ppcle:Linux:*:*)
-	echo powerpcle-unknown-linux-${LIBC}
+	echo powerpcle-unknown-linux-"$LIBC"
 	exit ;;
     riscv32:Linux:*:* | riscv64:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
 	exit ;;
     s390:Linux:*:* | s390x:Linux:*:*)
-	echo ${UNAME_MACHINE}-ibm-linux-${LIBC}
+	echo "$UNAME_MACHINE"-ibm-linux-"$LIBC"
 	exit ;;
     sh64*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
 	exit ;;
     sh*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
 	exit ;;
     sparc:Linux:*:* | sparc64:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
 	exit ;;
     tile*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
 	exit ;;
     vax:Linux:*:*)
-	echo ${UNAME_MACHINE}-dec-linux-${LIBC}
+	echo "$UNAME_MACHINE"-dec-linux-"$LIBC"
 	exit ;;
     x86_64:Linux:*:*)
-	echo ${UNAME_MACHINE}-pc-linux-${LIBC}
+	if objdump -f /bin/sh | grep -q elf32-x86-64; then
+	    echo "$UNAME_MACHINE"-pc-linux-"$LIBC"x32
+	else
+	    echo "$UNAME_MACHINE"-pc-linux-"$LIBC"
+	fi
 	exit ;;
     xtensa*:Linux:*:*)
-	echo ${UNAME_MACHINE}-unknown-linux-${LIBC}
+	echo "$UNAME_MACHINE"-unknown-linux-"$LIBC"
 	exit ;;
     i*86:DYNIX/ptx:4*:*)
 	# ptx 4.0 does uname -s correctly, with DYNIX/ptx in there.
@@ -1074,34 +1067,34 @@ EOF
 	# I am not positive that other SVR4 systems won't match this,
 	# I just have to hope.  -- rms.
 	# Use sysv4.2uw... so that sysv4* matches it.
-	echo ${UNAME_MACHINE}-pc-sysv4.2uw${UNAME_VERSION}
+	echo "$UNAME_MACHINE"-pc-sysv4.2uw"$UNAME_VERSION"
 	exit ;;
     i*86:OS/2:*:*)
 	# If we were able to find `uname', then EMX Unix compatibility
 	# is probably installed.
-	echo ${UNAME_MACHINE}-pc-os2-emx
+	echo "$UNAME_MACHINE"-pc-os2-emx
 	exit ;;
     i*86:XTS-300:*:STOP)
-	echo ${UNAME_MACHINE}-unknown-stop
+	echo "$UNAME_MACHINE"-unknown-stop
 	exit ;;
     i*86:atheos:*:*)
-	echo ${UNAME_MACHINE}-unknown-atheos
+	echo "$UNAME_MACHINE"-unknown-atheos
 	exit ;;
     i*86:syllable:*:*)
-	echo ${UNAME_MACHINE}-pc-syllable
+	echo "$UNAME_MACHINE"-pc-syllable
 	exit ;;
     i*86:LynxOS:2.*:* | i*86:LynxOS:3.[01]*:* | i*86:LynxOS:4.[02]*:*)
-	echo i386-unknown-lynxos${UNAME_RELEASE}
+	echo i386-unknown-lynxos"$UNAME_RELEASE"
 	exit ;;
     i*86:*DOS:*:*)
-	echo ${UNAME_MACHINE}-pc-msdosdjgpp
+	echo "$UNAME_MACHINE"-pc-msdosdjgpp
 	exit ;;
-    i*86:*:4.*:* | i*86:SYSTEM_V:4.*:*)
-	UNAME_REL=`echo ${UNAME_RELEASE} | sed 's/\/MP$//'`
+    i*86:*:4.*:*)
+	UNAME_REL=`echo "$UNAME_RELEASE" | sed 's/\/MP$//'`
 	if grep Novell /usr/include/link.h >/dev/null 2>/dev/null; then
-		echo ${UNAME_MACHINE}-univel-sysv${UNAME_REL}
+		echo "$UNAME_MACHINE"-univel-sysv"$UNAME_REL"
 	else
-		echo ${UNAME_MACHINE}-pc-sysv${UNAME_REL}
+		echo "$UNAME_MACHINE"-pc-sysv"$UNAME_REL"
 	fi
 	exit ;;
     i*86:*:5:[678]*)
@@ -1111,12 +1104,12 @@ EOF
 	    *Pentium)	     UNAME_MACHINE=i586 ;;
 	    *Pent*|*Celeron) UNAME_MACHINE=i686 ;;
 	esac
-	echo ${UNAME_MACHINE}-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}${UNAME_VERSION}
+	echo "$UNAME_MACHINE-unknown-sysv${UNAME_RELEASE}${UNAME_SYSTEM}{$UNAME_VERSION}"
 	exit ;;
     i*86:*:3.2:*)
 	if test -f /usr/options/cb.name; then
 		UNAME_REL=`sed -n 's/.*Version //p' </usr/options/cb.name`
-		echo ${UNAME_MACHINE}-pc-isc$UNAME_REL
+		echo "$UNAME_MACHINE"-pc-isc"$UNAME_REL"
 	elif /bin/uname -X 2>/dev/null >/dev/null ; then
 		UNAME_REL=`(/bin/uname -X|grep Release|sed -e 's/.*= //')`
 		(/bin/uname -X|grep i80486 >/dev/null) && UNAME_MACHINE=i486
@@ -1126,9 +1119,9 @@ EOF
 			&& UNAME_MACHINE=i686
 		(/bin/uname -X|grep '^Machine.*Pentium Pro' >/dev/null) \
 			&& UNAME_MACHINE=i686
-		echo ${UNAME_MACHINE}-pc-sco$UNAME_REL
+		echo "$UNAME_MACHINE"-pc-sco"$UNAME_REL"
 	else
-		echo ${UNAME_MACHINE}-pc-sysv32
+		echo "$UNAME_MACHINE"-pc-sysv32
 	fi
 	exit ;;
     pc:*:*:*)
@@ -1148,9 +1141,9 @@ EOF
 	exit ;;
     i860:*:4.*:*) # i860-SVR4
 	if grep Stardent /usr/include/sys/uadmin.h >/dev/null 2>&1 ; then
-	  echo i860-stardent-sysv${UNAME_RELEASE} # Stardent Vistra i860-SVR4
+	  echo i860-stardent-sysv"$UNAME_RELEASE" # Stardent Vistra i860-SVR4
 	else # Add other i860-SVR4 vendors below as they are discovered.
-	  echo i860-unknown-sysv${UNAME_RELEASE}  # Unknown i860-SVR4
+	  echo i860-unknown-sysv"$UNAME_RELEASE"  # Unknown i860-SVR4
 	fi
 	exit ;;
     mini*:CTIX:SYS*5:*)
@@ -1170,9 +1163,9 @@ EOF
 	test -r /etc/.relid \
 	&& OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
 	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
-	  && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
+	  && { echo i486-ncr-sysv4.3"$OS_REL"; exit; }
 	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
-	  && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
+	  && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;;
     3[34]??:*:4.0:* | 3[34]??,*:*:4.0:*)
 	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
 	  && { echo i486-ncr-sysv4; exit; } ;;
@@ -1181,28 +1174,28 @@ EOF
 	test -r /etc/.relid \
 	    && OS_REL=.`sed -n 's/[^ ]* [^ ]* \([0-9][0-9]\).*/\1/p' < /etc/.relid`
 	/bin/uname -p 2>/dev/null | grep 86 >/dev/null \
-	    && { echo i486-ncr-sysv4.3${OS_REL}; exit; }
+	    && { echo i486-ncr-sysv4.3"$OS_REL"; exit; }
 	/bin/uname -p 2>/dev/null | /bin/grep entium >/dev/null \
-	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; }
+	    && { echo i586-ncr-sysv4.3"$OS_REL"; exit; }
 	/bin/uname -p 2>/dev/null | /bin/grep pteron >/dev/null \
-	    && { echo i586-ncr-sysv4.3${OS_REL}; exit; } ;;
+	    && { echo i586-ncr-sysv4.3"$OS_REL"; exit; } ;;
     m68*:LynxOS:2.*:* | m68*:LynxOS:3.0*:*)
-	echo m68k-unknown-lynxos${UNAME_RELEASE}
+	echo m68k-unknown-lynxos"$UNAME_RELEASE"
 	exit ;;
     mc68030:UNIX_System_V:4.*:*)
 	echo m68k-atari-sysv4
 	exit ;;
     TSUNAMI:LynxOS:2.*:*)
-	echo sparc-unknown-lynxos${UNAME_RELEASE}
+	echo sparc-unknown-lynxos"$UNAME_RELEASE"
 	exit ;;
     rs6000:LynxOS:2.*:*)
-	echo rs6000-unknown-lynxos${UNAME_RELEASE}
+	echo rs6000-unknown-lynxos"$UNAME_RELEASE"
 	exit ;;
     PowerPC:LynxOS:2.*:* | PowerPC:LynxOS:3.[01]*:* | PowerPC:LynxOS:4.[02]*:*)
-	echo powerpc-unknown-lynxos${UNAME_RELEASE}
+	echo powerpc-unknown-lynxos"$UNAME_RELEASE"
 	exit ;;
     SM[BE]S:UNIX_SV:*:*)
-	echo mips-dde-sysv${UNAME_RELEASE}
+	echo mips-dde-sysv"$UNAME_RELEASE"
 	exit ;;
     RM*:ReliantUNIX-*:*:*)
 	echo mips-sni-sysv4
@@ -1213,7 +1206,7 @@ EOF
     *:SINIX-*:*:*)
 	if uname -p 2>/dev/null >/dev/null ; then
 		UNAME_MACHINE=`(uname -p) 2>/dev/null`
-		echo ${UNAME_MACHINE}-sni-sysv4
+		echo "$UNAME_MACHINE"-sni-sysv4
 	else
 		echo ns32k-sni-sysv
 	fi
@@ -1233,23 +1226,23 @@ EOF
 	exit ;;
     i*86:VOS:*:*)
 	# From Paul.Green@stratus.com.
-	echo ${UNAME_MACHINE}-stratus-vos
+	echo "$UNAME_MACHINE"-stratus-vos
 	exit ;;
     *:VOS:*:*)
 	# From Paul.Green@stratus.com.
 	echo hppa1.1-stratus-vos
 	exit ;;
     mc68*:A/UX:*:*)
-	echo m68k-apple-aux${UNAME_RELEASE}
+	echo m68k-apple-aux"$UNAME_RELEASE"
 	exit ;;
     news*:NEWS-OS:6*:*)
 	echo mips-sony-newsos6
 	exit ;;
     R[34]000:*System_V*:*:* | R4000:UNIX_SYSV:*:* | R*000:UNIX_SV:*:*)
 	if [ -d /usr/nec ]; then
-		echo mips-nec-sysv${UNAME_RELEASE}
+		echo mips-nec-sysv"$UNAME_RELEASE"
 	else
-		echo mips-unknown-sysv${UNAME_RELEASE}
+		echo mips-unknown-sysv"$UNAME_RELEASE"
 	fi
 	exit ;;
     BeBox:BeOS:*:*)	# BeOS running on hardware made by Be, PPC only.
@@ -1268,49 +1261,56 @@ EOF
 	echo x86_64-unknown-haiku
 	exit ;;
     SX-4:SUPER-UX:*:*)
-	echo sx4-nec-superux${UNAME_RELEASE}
+	echo sx4-nec-superux"$UNAME_RELEASE"
 	exit ;;
     SX-5:SUPER-UX:*:*)
-	echo sx5-nec-superux${UNAME_RELEASE}
+	echo sx5-nec-superux"$UNAME_RELEASE"
 	exit ;;
     SX-6:SUPER-UX:*:*)
-	echo sx6-nec-superux${UNAME_RELEASE}
+	echo sx6-nec-superux"$UNAME_RELEASE"
 	exit ;;
     SX-7:SUPER-UX:*:*)
-	echo sx7-nec-superux${UNAME_RELEASE}
+	echo sx7-nec-superux"$UNAME_RELEASE"
 	exit ;;
     SX-8:SUPER-UX:*:*)
-	echo sx8-nec-superux${UNAME_RELEASE}
+	echo sx8-nec-superux"$UNAME_RELEASE"
 	exit ;;
     SX-8R:SUPER-UX:*:*)
-	echo sx8r-nec-superux${UNAME_RELEASE}
+	echo sx8r-nec-superux"$UNAME_RELEASE"
 	exit ;;
     SX-ACE:SUPER-UX:*:*)
-	echo sxace-nec-superux${UNAME_RELEASE}
+	echo sxace-nec-superux"$UNAME_RELEASE"
 	exit ;;
     Power*:Rhapsody:*:*)
-	echo powerpc-apple-rhapsody${UNAME_RELEASE}
+	echo powerpc-apple-rhapsody"$UNAME_RELEASE"
 	exit ;;
     *:Rhapsody:*:*)
-	echo ${UNAME_MACHINE}-apple-rhapsody${UNAME_RELEASE}
+	echo "$UNAME_MACHINE"-apple-rhapsody"$UNAME_RELEASE"
 	exit ;;
     *:Darwin:*:*)
 	UNAME_PROCESSOR=`uname -p` || UNAME_PROCESSOR=unknown
-	eval $set_cc_for_build
+	eval "$set_cc_for_build"
 	if test "$UNAME_PROCESSOR" = unknown ; then
 	    UNAME_PROCESSOR=powerpc
 	fi
-	if test `echo "$UNAME_RELEASE" | sed -e 's/\..*//'` -le 10 ; then
+	if test "`echo "$UNAME_RELEASE" | sed -e 's/\..*//'`" -le 10 ; then
 	    if [ "$CC_FOR_BUILD" != no_compiler_found ]; then
 		if (echo '#ifdef __LP64__'; echo IS_64BIT_ARCH; echo '#endif') | \
-		    (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
-		    grep IS_64BIT_ARCH >/dev/null
+		       (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
+		       grep IS_64BIT_ARCH >/dev/null
 		then
 		    case $UNAME_PROCESSOR in
 			i386) UNAME_PROCESSOR=x86_64 ;;
 			powerpc) UNAME_PROCESSOR=powerpc64 ;;
 		    esac
 		fi
+		# On 10.4-10.6 one might compile for PowerPC via gcc -arch ppc
+		if (echo '#ifdef __POWERPC__'; echo IS_PPC; echo '#endif') | \
+		       (CCOPTS="" $CC_FOR_BUILD -E - 2>/dev/null) | \
+		       grep IS_PPC >/dev/null
+		then
+		    UNAME_PROCESSOR=powerpc
+		fi
 	    fi
 	elif test "$UNAME_PROCESSOR" = i386 ; then
 	    # Avoid executing cc on OS X 10.9, as it ships with a stub
@@ -1321,7 +1321,7 @@ EOF
 	    # that Apple uses in portable devices.
 	    UNAME_PROCESSOR=x86_64
 	fi
-	echo ${UNAME_PROCESSOR}-apple-darwin${UNAME_RELEASE}
+	echo "$UNAME_PROCESSOR"-apple-darwin"$UNAME_RELEASE"
 	exit ;;
     *:procnto*:*:* | *:QNX:[0123456789]*:*)
 	UNAME_PROCESSOR=`uname -p`
@@ -1329,19 +1329,25 @@ EOF
 		UNAME_PROCESSOR=i386
 		UNAME_MACHINE=pc
 	fi
-	echo ${UNAME_PROCESSOR}-${UNAME_MACHINE}-nto-qnx${UNAME_RELEASE}
+	echo "$UNAME_PROCESSOR"-"$UNAME_MACHINE"-nto-qnx"$UNAME_RELEASE"
 	exit ;;
     *:QNX:*:4*)
 	echo i386-pc-qnx
 	exit ;;
-    NEO-?:NONSTOP_KERNEL:*:*)
-	echo neo-tandem-nsk${UNAME_RELEASE}
+    NEO-*:NONSTOP_KERNEL:*:*)
+	echo neo-tandem-nsk"$UNAME_RELEASE"
 	exit ;;
     NSE-*:NONSTOP_KERNEL:*:*)
-	echo nse-tandem-nsk${UNAME_RELEASE}
+	echo nse-tandem-nsk"$UNAME_RELEASE"
+	exit ;;
+    NSR-*:NONSTOP_KERNEL:*:*)
+	echo nsr-tandem-nsk"$UNAME_RELEASE"
+	exit ;;
+    NSV-*:NONSTOP_KERNEL:*:*)
+	echo nsv-tandem-nsk"$UNAME_RELEASE"
 	exit ;;
-    NSR-?:NONSTOP_KERNEL:*:*)
-	echo nsr-tandem-nsk${UNAME_RELEASE}
+    NSX-*:NONSTOP_KERNEL:*:*)
+	echo nsx-tandem-nsk"$UNAME_RELEASE"
 	exit ;;
     *:NonStop-UX:*:*)
 	echo mips-compaq-nonstopux
@@ -1350,7 +1356,7 @@ EOF
 	echo bs2000-siemens-sysv
 	exit ;;
     DS/*:UNIX_System_V:*:*)
-	echo ${UNAME_MACHINE}-${UNAME_SYSTEM}-${UNAME_RELEASE}
+	echo "$UNAME_MACHINE"-"$UNAME_SYSTEM"-"$UNAME_RELEASE"
 	exit ;;
     *:Plan9:*:*)
 	# "uname -m" is not consistent, so use $cputype instead. 386
@@ -1361,7 +1367,7 @@ EOF
 	else
 	    UNAME_MACHINE="$cputype"
 	fi
-	echo ${UNAME_MACHINE}-unknown-plan9
+	echo "$UNAME_MACHINE"-unknown-plan9
 	exit ;;
     *:TOPS-10:*:*)
 	echo pdp10-unknown-tops10
@@ -1382,14 +1388,14 @@ EOF
 	echo pdp10-unknown-its
 	exit ;;
     SEI:*:*:SEIUX)
-	echo mips-sei-seiux${UNAME_RELEASE}
+	echo mips-sei-seiux"$UNAME_RELEASE"
 	exit ;;
     *:DragonFly:*:*)
-	echo ${UNAME_MACHINE}-unknown-dragonfly`echo ${UNAME_RELEASE}|sed -e 's/[-(].*//'`
+	echo "$UNAME_MACHINE"-unknown-dragonfly"`echo "$UNAME_RELEASE"|sed -e 's/[-(].*//'`"
 	exit ;;
     *:*VMS:*:*)
 	UNAME_MACHINE=`(uname -p) 2>/dev/null`
-	case "${UNAME_MACHINE}" in
+	case "$UNAME_MACHINE" in
 	    A*) echo alpha-dec-vms ; exit ;;
 	    I*) echo ia64-dec-vms ; exit ;;
 	    V*) echo vax-dec-vms ; exit ;;
@@ -1398,32 +1404,44 @@ EOF
 	echo i386-pc-xenix
 	exit ;;
     i*86:skyos:*:*)
-	echo ${UNAME_MACHINE}-pc-skyos`echo ${UNAME_RELEASE} | sed -e 's/ .*$//'`
+	echo "$UNAME_MACHINE"-pc-skyos"`echo "$UNAME_RELEASE" | sed -e 's/ .*$//'`"
 	exit ;;
     i*86:rdos:*:*)
-	echo ${UNAME_MACHINE}-pc-rdos
+	echo "$UNAME_MACHINE"-pc-rdos
 	exit ;;
     i*86:AROS:*:*)
-	echo ${UNAME_MACHINE}-pc-aros
+	echo "$UNAME_MACHINE"-pc-aros
 	exit ;;
     x86_64:VMkernel:*:*)
-	echo ${UNAME_MACHINE}-unknown-esx
+	echo "$UNAME_MACHINE"-unknown-esx
 	exit ;;
     amd64:Isilon\ OneFS:*:*)
 	echo x86_64-unknown-onefs
 	exit ;;
 esac
 
+echo "$0: unable to guess system type" >&2
+
+case "$UNAME_MACHINE:$UNAME_SYSTEM" in
+    mips:Linux | mips64:Linux)
+	# If we got here on MIPS GNU/Linux, output extra information.
+	cat >&2 <<EOF
+
+NOTE: MIPS GNU/Linux systems require a C compiler to fully recognize
+the system type. Please install a C compiler and try again.
+EOF
+	;;
+esac
+
 cat >&2 <<EOF
-$0: unable to guess system type
 
 This script (version $timestamp), has failed to recognize the
-operating system you are using. If your script is old, overwrite
-config.guess and config.sub with the latest versions from:
+operating system you are using. If your script is old, overwrite *all*
+copies of config.guess and config.sub with the latest versions from:
 
-  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess
+  https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess
 and
-  http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
+  https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
 
 If $0 has already been updated, send the following data and any
 information you think might be pertinent to config-patches@gnu.org to
@@ -1446,16 +1464,16 @@ hostinfo               = `(hostinfo) 2>/
 /usr/bin/oslevel       = `(/usr/bin/oslevel) 2>/dev/null`
 /usr/convex/getsysinfo = `(/usr/convex/getsysinfo) 2>/dev/null`
 
-UNAME_MACHINE = ${UNAME_MACHINE}
-UNAME_RELEASE = ${UNAME_RELEASE}
-UNAME_SYSTEM  = ${UNAME_SYSTEM}
-UNAME_VERSION = ${UNAME_VERSION}
+UNAME_MACHINE = "$UNAME_MACHINE"
+UNAME_RELEASE = "$UNAME_RELEASE"
+UNAME_SYSTEM  = "$UNAME_SYSTEM"
+UNAME_VERSION = "$UNAME_VERSION"
 EOF
 
 exit 1
 
 # Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
+# eval: (add-hook 'write-file-functions 'time-stamp)
 # time-stamp-start: "timestamp='"
 # time-stamp-format: "%:y-%02m-%02d"
 # time-stamp-end: "'"
diff -pruN 1.26.0-8/config.sub 1.30.0-0ubuntu8/config.sub
--- 1.26.0-8/config.sub	2017-11-20 02:58:50.000000000 +0000
+++ 1.30.0-0ubuntu8/config.sub	2018-04-10 03:08:16.000000000 +0000
@@ -1,8 +1,8 @@
 #! /bin/sh
 # Configuration validation subroutine script.
-#   Copyright 1992-2016 Free Software Foundation, Inc.
+#   Copyright 1992-2018 Free Software Foundation, Inc.
 
-timestamp='2016-11-04'
+timestamp='2018-02-22'
 
 # This file is free software; you can redistribute it and/or modify it
 # under the terms of the GNU General Public License as published by
@@ -15,7 +15,7 @@ timestamp='2016-11-04'
 # General Public License for more details.
 #
 # You should have received a copy of the GNU General Public License
-# along with this program; if not, see <http://www.gnu.org/licenses/>.
+# along with this program; if not, see <https://www.gnu.org/licenses/>.
 #
 # As a special exception to the GNU General Public License, if you
 # distribute this file as part of a program that contains a
@@ -33,7 +33,7 @@ timestamp='2016-11-04'
 # Otherwise, we print the canonical config type on stdout and succeed.
 
 # You can get the latest version of this script from:
-# http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
+# https://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub
 
 # This file is supposed to be the same for all GNU packages
 # and recognize all the CPU types, system types and aliases
@@ -57,7 +57,7 @@ Usage: $0 [OPTION] CPU-MFR-OPSYS or ALIA
 
 Canonicalize a configuration name.
 
-Operation modes:
+Options:
   -h, --help         print this help, then exit
   -t, --time-stamp   print date of last modification, then exit
   -v, --version      print version number, then exit
@@ -67,7 +67,7 @@ Report bugs and patches to <config-patch
 version="\
 GNU config.sub ($timestamp)
 
-Copyright 1992-2016 Free Software Foundation, Inc.
+Copyright 1992-2018 Free Software Foundation, Inc.
 
 This is free software; see the source for copying conditions.  There is NO
 warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE."
@@ -94,7 +94,7 @@ while test $# -gt 0 ; do
 
     *local*)
        # First pass through any local machine types.
-       echo $1
+       echo "$1"
        exit ;;
 
     * )
@@ -112,7 +112,7 @@ esac
 
 # Separate what the user gave into CPU-COMPANY and OS or KERNEL-OS (if any).
 # Here we must recognize all the valid KERNEL-OS combinations.
-maybe_os=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
+maybe_os=`echo "$1" | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\2/'`
 case $maybe_os in
   nto-qnx* | linux-gnu* | linux-android* | linux-dietlibc | linux-newlib* | \
   linux-musl* | linux-uclibc* | uclinux-uclibc* | uclinux-gnu* | kfreebsd*-gnu* | \
@@ -120,16 +120,16 @@ case $maybe_os in
   kopensolaris*-gnu* | cloudabi*-eabi* | \
   storm-chaos* | os2-emx* | rtmk-nova*)
     os=-$maybe_os
-    basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
+    basic_machine=`echo "$1" | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`
     ;;
   android-linux)
     os=-linux-android
-    basic_machine=`echo $1 | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown
+    basic_machine=`echo "$1" | sed 's/^\(.*\)-\([^-]*-[^-]*\)$/\1/'`-unknown
     ;;
   *)
-    basic_machine=`echo $1 | sed 's/-[^-]*$//'`
-    if [ $basic_machine != $1 ]
-    then os=`echo $1 | sed 's/.*-/-/'`
+    basic_machine=`echo "$1" | sed 's/-[^-]*$//'`
+    if [ "$basic_machine" != "$1" ]
+    then os=`echo "$1" | sed 's/.*-/-/'`
     else os=; fi
     ;;
 esac
@@ -178,44 +178,44 @@ case $os in
 		;;
 	-sco6)
 		os=-sco5v6
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+		basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
 		;;
 	-sco5)
 		os=-sco3.2v5
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+		basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
 		;;
 	-sco4)
 		os=-sco3.2v4
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+		basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
 		;;
 	-sco3.2.[4-9]*)
 		os=`echo $os | sed -e 's/sco3.2./sco3.2v/'`
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+		basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
 		;;
 	-sco3.2v[4-9]*)
 		# Don't forget version if it is 3.2v4 or newer.
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+		basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
 		;;
 	-sco5v6*)
 		# Don't forget version if it is 3.2v4 or newer.
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+		basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
 		;;
 	-sco*)
 		os=-sco3.2v2
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+		basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
 		;;
 	-udk*)
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+		basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
 		;;
 	-isc)
 		os=-isc2.2
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+		basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
 		;;
 	-clix*)
 		basic_machine=clipper-intergraph
 		;;
 	-isc*)
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-pc/'`
+		basic_machine=`echo "$1" | sed -e 's/86-.*/86-pc/'`
 		;;
 	-lynx*178)
 		os=-lynxos178
@@ -227,10 +227,7 @@ case $os in
 		os=-lynxos
 		;;
 	-ptx*)
-		basic_machine=`echo $1 | sed -e 's/86-.*/86-sequent/'`
-		;;
-	-windowsnt*)
-		os=`echo $os | sed -e 's/windowsnt/winnt/'`
+		basic_machine=`echo "$1" | sed -e 's/86-.*/86-sequent/'`
 		;;
 	-psos*)
 		os=-psos
@@ -263,7 +260,7 @@ case $basic_machine in
 	| fido | fr30 | frv | ft32 \
 	| h8300 | h8500 | hppa | hppa1.[01] | hppa2.0 | hppa2.0[nw] | hppa64 \
 	| hexagon \
-	| i370 | i860 | i960 | ia64 \
+	| i370 | i860 | i960 | ia16 | ia64 \
 	| ip2k | iq2000 \
 	| k1om \
 	| le32 | le64 \
@@ -299,7 +296,7 @@ case $basic_machine in
 	| nios | nios2 | nios2eb | nios2el \
 	| ns16k | ns32k \
 	| open8 | or1k | or1knd | or32 \
-	| pdp10 | pdp11 | pj | pjl \
+	| pdp10 | pj | pjl \
 	| powerpc | powerpc64 | powerpc64le | powerpcle \
 	| pru \
 	| pyramid \
@@ -315,7 +312,7 @@ case $basic_machine in
 	| ubicom32 \
 	| v850 | v850e | v850e1 | v850e2 | v850es | v850e2v3 \
 	| visium \
-	| we32k \
+	| wasm32 \
 	| x86 | xc16x | xstormy16 | xtensa \
 	| z8k | z80)
 		basic_machine=$basic_machine-unknown
@@ -336,7 +333,7 @@ case $basic_machine in
 		basic_machine=$basic_machine-unknown
 		os=-none
 		;;
-	m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65 | z8k)
+	m88110 | m680[12346]0 | m683?2 | m68360 | m5200 | v70 | w65)
 		;;
 	ms1)
 		basic_machine=mt-unknown
@@ -365,7 +362,7 @@ case $basic_machine in
 	  ;;
 	# Object if more than one company name word.
 	*-*-*)
-		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
+		echo Invalid configuration \`"$1"\': machine \`"$basic_machine"\' not recognized 1>&2
 		exit 1
 		;;
 	# Recognize the basic CPU types with company name.
@@ -388,7 +385,7 @@ case $basic_machine in
 	| h8300-* | h8500-* \
 	| hppa-* | hppa1.[01]-* | hppa2.0-* | hppa2.0[nw]-* | hppa64-* \
 	| hexagon-* \
-	| i*86-* | i860-* | i960-* | ia64-* \
+	| i*86-* | i860-* | i960-* | ia16-* | ia64-* \
 	| ip2k-* | iq2000-* \
 	| k1om-* \
 	| le32-* | le64-* \
@@ -446,6 +443,7 @@ case $basic_machine in
 	| v850-* | v850e-* | v850e1-* | v850es-* | v850e2-* | v850e2v3-* \
 	| vax-* \
 	| visium-* \
+	| wasm32-* \
 	| we32k-* \
 	| x86-* | x86_64-* | xc16x-* | xps100-* \
 	| xstormy16-* | xtensa*-* \
@@ -459,7 +457,7 @@ case $basic_machine in
 	# Recognize the various machine names and aliases which stand
 	# for a CPU type and a company and sometimes even an OS.
 	386bsd)
-		basic_machine=i386-unknown
+		basic_machine=i386-pc
 		os=-bsd
 		;;
 	3b1 | 7300 | 7300-att | att-7300 | pc7300 | safari | unixpc)
@@ -493,7 +491,7 @@ case $basic_machine in
 		basic_machine=x86_64-pc
 		;;
 	amd64-*)
-		basic_machine=x86_64-`echo $basic_machine | sed 's/^[^-]*-//'`
+		basic_machine=x86_64-`echo "$basic_machine" | sed 's/^[^-]*-//'`
 		;;
 	amdahl)
 		basic_machine=580-amdahl
@@ -538,7 +536,7 @@ case $basic_machine in
 		os=-linux
 		;;
 	blackfin-*)
-		basic_machine=bfin-`echo $basic_machine | sed 's/^[^-]*-//'`
+		basic_machine=bfin-`echo "$basic_machine" | sed 's/^[^-]*-//'`
 		os=-linux
 		;;
 	bluegene*)
@@ -546,13 +544,13 @@ case $basic_machine in
 		os=-cnk
 		;;
 	c54x-*)
-		basic_machine=tic54x-`echo $basic_machine | sed 's/^[^-]*-//'`
+		basic_machine=tic54x-`echo "$basic_machine" | sed 's/^[^-]*-//'`
 		;;
 	c55x-*)
-		basic_machine=tic55x-`echo $basic_machine | sed 's/^[^-]*-//'`
+		basic_machine=tic55x-`echo "$basic_machine" | sed 's/^[^-]*-//'`
 		;;
 	c6x-*)
-		basic_machine=tic6x-`echo $basic_machine | sed 's/^[^-]*-//'`
+		basic_machine=tic6x-`echo "$basic_machine" | sed 's/^[^-]*-//'`
 		;;
 	c90)
 		basic_machine=c90-cray
@@ -641,7 +639,7 @@ case $basic_machine in
 		basic_machine=rs6000-bull
 		os=-bosx
 		;;
-	dpx2* | dpx2*-bull)
+	dpx2*)
 		basic_machine=m68k-bull
 		os=-sysv3
 		;;
@@ -650,7 +648,7 @@ case $basic_machine in
 		os=$os"spe"
 		;;
 	e500v[12]-*)
-		basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
+		basic_machine=powerpc-`echo "$basic_machine" | sed 's/^[^-]*-//'`
 		os=$os"spe"
 		;;
 	ebmon29k)
@@ -742,9 +740,6 @@ case $basic_machine in
 	hp9k8[0-9][0-9] | hp8[0-9][0-9])
 		basic_machine=hppa1.0-hp
 		;;
-	hppa-next)
-		os=-nextstep3
-		;;
 	hppaosf)
 		basic_machine=hppa1.1-hp
 		os=-osf
@@ -757,26 +752,26 @@ case $basic_machine in
 		basic_machine=i370-ibm
 		;;
 	i*86v32)
-		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
+		basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'`
 		os=-sysv32
 		;;
 	i*86v4*)
-		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
+		basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'`
 		os=-sysv4
 		;;
 	i*86v)
-		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
+		basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'`
 		os=-sysv
 		;;
 	i*86sol2)
-		basic_machine=`echo $1 | sed -e 's/86.*/86-pc/'`
+		basic_machine=`echo "$1" | sed -e 's/86.*/86-pc/'`
 		os=-solaris2
 		;;
 	i386mach)
 		basic_machine=i386-mach
 		os=-mach
 		;;
-	i386-vsta | vsta)
+	vsta)
 		basic_machine=i386-unknown
 		os=-vsta
 		;;
@@ -795,19 +790,16 @@ case $basic_machine in
 		os=-sysv
 		;;
 	leon-*|leon[3-9]-*)
-		basic_machine=sparc-`echo $basic_machine | sed 's/-.*//'`
+		basic_machine=sparc-`echo "$basic_machine" | sed 's/-.*//'`
 		;;
 	m68knommu)
 		basic_machine=m68k-unknown
 		os=-linux
 		;;
 	m68knommu-*)
-		basic_machine=m68k-`echo $basic_machine | sed 's/^[^-]*-//'`
+		basic_machine=m68k-`echo "$basic_machine" | sed 's/^[^-]*-//'`
 		os=-linux
 		;;
-	m88k-omron*)
-		basic_machine=m88k-omron
-		;;
 	magnum | m3230)
 		basic_machine=mips-mips
 		os=-sysv
@@ -839,10 +831,10 @@ case $basic_machine in
 		os=-mint
 		;;
 	mips3*-*)
-		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`
+		basic_machine=`echo "$basic_machine" | sed -e 's/mips3/mips64/'`
 		;;
 	mips3*)
-		basic_machine=`echo $basic_machine | sed -e 's/mips3/mips64/'`-unknown
+		basic_machine=`echo "$basic_machine" | sed -e 's/mips3/mips64/'`-unknown
 		;;
 	monitor)
 		basic_machine=m68k-rom68k
@@ -861,7 +853,7 @@ case $basic_machine in
 		os=-msdos
 		;;
 	ms1-*)
-		basic_machine=`echo $basic_machine | sed -e 's/ms1-/mt-/'`
+		basic_machine=`echo "$basic_machine" | sed -e 's/ms1-/mt-/'`
 		;;
 	msys)
 		basic_machine=i686-pc
@@ -903,7 +895,7 @@ case $basic_machine in
 		basic_machine=v70-nec
 		os=-sysv
 		;;
-	next | m*-next )
+	next | m*-next)
 		basic_machine=m68k-next
 		case $os in
 		    -nextstep* )
@@ -948,6 +940,12 @@ case $basic_machine in
 	nsr-tandem)
 		basic_machine=nsr-tandem
 		;;
+	nsv-tandem)
+		basic_machine=nsv-tandem
+		;;
+	nsx-tandem)
+		basic_machine=nsx-tandem
+		;;
 	op50n-* | op60c-*)
 		basic_machine=hppa1.1-oki
 		os=-proelf
@@ -980,7 +978,7 @@ case $basic_machine in
 		os=-linux
 		;;
 	parisc-*)
-		basic_machine=hppa-`echo $basic_machine | sed 's/^[^-]*-//'`
+		basic_machine=hppa-`echo "$basic_machine" | sed 's/^[^-]*-//'`
 		os=-linux
 		;;
 	pbd)
@@ -996,7 +994,7 @@ case $basic_machine in
 		basic_machine=i386-pc
 		;;
 	pc98-*)
-		basic_machine=i386-`echo $basic_machine | sed 's/^[^-]*-//'`
+		basic_machine=i386-`echo "$basic_machine" | sed 's/^[^-]*-//'`
 		;;
 	pentium | p5 | k5 | k6 | nexgen | viac3)
 		basic_machine=i586-pc
@@ -1011,16 +1009,16 @@ case $basic_machine in
 		basic_machine=i786-pc
 		;;
 	pentium-* | p5-* | k5-* | k6-* | nexgen-* | viac3-*)
-		basic_machine=i586-`echo $basic_machine | sed 's/^[^-]*-//'`
+		basic_machine=i586-`echo "$basic_machine" | sed 's/^[^-]*-//'`
 		;;
 	pentiumpro-* | p6-* | 6x86-* | athlon-*)
-		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
+		basic_machine=i686-`echo "$basic_machine" | sed 's/^[^-]*-//'`
 		;;
 	pentiumii-* | pentium2-* | pentiumiii-* | pentium3-*)
-		basic_machine=i686-`echo $basic_machine | sed 's/^[^-]*-//'`
+		basic_machine=i686-`echo "$basic_machine" | sed 's/^[^-]*-//'`
 		;;
 	pentium4-*)
-		basic_machine=i786-`echo $basic_machine | sed 's/^[^-]*-//'`
+		basic_machine=i786-`echo "$basic_machine" | sed 's/^[^-]*-//'`
 		;;
 	pn)
 		basic_machine=pn-gould
@@ -1030,23 +1028,23 @@ case $basic_machine in
 	ppc | ppcbe)	basic_machine=powerpc-unknown
 		;;
 	ppc-* | ppcbe-*)
-		basic_machine=powerpc-`echo $basic_machine | sed 's/^[^-]*-//'`
+		basic_machine=powerpc-`echo "$basic_machine" | sed 's/^[^-]*-//'`
 		;;
 	ppcle | powerpclittle)
 		basic_machine=powerpcle-unknown
 		;;
 	ppcle-* | powerpclittle-*)
-		basic_machine=powerpcle-`echo $basic_machine | sed 's/^[^-]*-//'`
+		basic_machine=powerpcle-`echo "$basic_machine" | sed 's/^[^-]*-//'`
 		;;
 	ppc64)	basic_machine=powerpc64-unknown
 		;;
-	ppc64-*) basic_machine=powerpc64-`echo $basic_machine | sed 's/^[^-]*-//'`
+	ppc64-*) basic_machine=powerpc64-`echo "$basic_machine" | sed 's/^[^-]*-//'`
 		;;
 	ppc64le | powerpc64little)
 		basic_machine=powerpc64le-unknown
 		;;
 	ppc64le-* | powerpc64little-*)
-		basic_machine=powerpc64le-`echo $basic_machine | sed 's/^[^-]*-//'`
+		basic_machine=powerpc64le-`echo "$basic_machine" | sed 's/^[^-]*-//'`
 		;;
 	ps2)
 		basic_machine=i386-ibm
@@ -1100,17 +1098,10 @@ case $basic_machine in
 	sequent)
 		basic_machine=i386-sequent
 		;;
-	sh)
-		basic_machine=sh-hitachi
-		os=-hms
-		;;
 	sh5el)
 		basic_machine=sh5le-unknown
 		;;
-	sh64)
-		basic_machine=sh64-unknown
-		;;
-	sparclite-wrs | simso-wrs)
+	simso-wrs)
 		basic_machine=sparclite-wrs
 		os=-vxworks
 		;;
@@ -1129,7 +1120,7 @@ case $basic_machine in
 		os=-sysv4
 		;;
 	strongarm-* | thumb-*)
-		basic_machine=arm-`echo $basic_machine | sed 's/^[^-]*-//'`
+		basic_machine=arm-`echo "$basic_machine" | sed 's/^[^-]*-//'`
 		;;
 	sun2)
 		basic_machine=m68000-sun
@@ -1251,6 +1242,9 @@ case $basic_machine in
 		basic_machine=hppa1.1-winbond
 		os=-proelf
 		;;
+	x64)
+		basic_machine=x86_64-pc
+		;;
 	xbox)
 		basic_machine=i686-pc
 		os=-mingw32
@@ -1259,20 +1253,12 @@ case $basic_machine in
 		basic_machine=xps100-honeywell
 		;;
 	xscale-* | xscalee[bl]-*)
-		basic_machine=`echo $basic_machine | sed 's/^xscale/arm/'`
+		basic_machine=`echo "$basic_machine" | sed 's/^xscale/arm/'`
 		;;
 	ymp)
 		basic_machine=ymp-cray
 		os=-unicos
 		;;
-	z8k-*-coff)
-		basic_machine=z8k-unknown
-		os=-sim
-		;;
-	z80-*-coff)
-		basic_machine=z80-unknown
-		os=-sim
-		;;
 	none)
 		basic_machine=none-none
 		os=-none
@@ -1301,10 +1287,6 @@ case $basic_machine in
 	vax)
 		basic_machine=vax-dec
 		;;
-	pdp10)
-		# there are many clones, so DEC is not a safe bet
-		basic_machine=pdp10-unknown
-		;;
 	pdp11)
 		basic_machine=pdp11-dec
 		;;
@@ -1314,9 +1296,6 @@ case $basic_machine in
 	sh[1234] | sh[24]a | sh[24]aeb | sh[34]eb | sh[1234]le | sh[23]ele)
 		basic_machine=sh-unknown
 		;;
-	sparc | sparcv8 | sparcv9 | sparcv9b | sparcv9v)
-		basic_machine=sparc-sun
-		;;
 	cydra)
 		basic_machine=cydra-cydrome
 		;;
@@ -1336,7 +1315,7 @@ case $basic_machine in
 		# Make sure to match an already-canonicalized machine name.
 		;;
 	*)
-		echo Invalid configuration \`$1\': machine \`$basic_machine\' not recognized 1>&2
+		echo Invalid configuration \`"$1"\': machine \`"$basic_machine"\' not recognized 1>&2
 		exit 1
 		;;
 esac
@@ -1344,10 +1323,10 @@ esac
 # Here we canonicalize certain aliases for manufacturers.
 case $basic_machine in
 	*-digital*)
-		basic_machine=`echo $basic_machine | sed 's/digital.*/dec/'`
+		basic_machine=`echo "$basic_machine" | sed 's/digital.*/dec/'`
 		;;
 	*-commodore*)
-		basic_machine=`echo $basic_machine | sed 's/commodore.*/cbm/'`
+		basic_machine=`echo "$basic_machine" | sed 's/commodore.*/cbm/'`
 		;;
 	*)
 		;;
@@ -1358,8 +1337,8 @@ esac
 if [ x"$os" != x"" ]
 then
 case $os in
-	# First match some system type aliases
-	# that might get confused with valid system types.
+	# First match some system type aliases that might get confused
+	# with valid system types.
 	# -solaris* is a basic system type, with this one exception.
 	-auroraux)
 		os=-auroraux
@@ -1370,18 +1349,19 @@ case $os in
 	-solaris)
 		os=-solaris2
 		;;
-	-svr4*)
-		os=-sysv4
-		;;
 	-unixware*)
 		os=-sysv4.2uw
 		;;
 	-gnu/linux*)
 		os=`echo $os | sed -e 's|gnu/linux|linux-gnu|'`
 		;;
-	# First accept the basic system types.
+	# es1800 is here to avoid being matched by es* (a different OS)
+	-es1800*)
+		os=-ose
+		;;
+	# Now accept the basic system types.
 	# The portable systems comes first.
-	# Each alternative MUST END IN A *, to match a version number.
+	# Each alternative MUST end in a * to match a version number.
 	# -sysv* is not here because it comes later, after sysvr4.
 	-gnu* | -bsd* | -mach* | -minix* | -genix* | -ultrix* | -irix* \
 	      | -*vms* | -sco* | -esix* | -isc* | -aix* | -cnk* | -sunos | -sunos[34]*\
@@ -1391,25 +1371,26 @@ case $os in
 	      | -aos* | -aros* | -cloudabi* | -sortix* \
 	      | -nindy* | -vxsim* | -vxworks* | -ebmon* | -hms* | -mvs* \
 	      | -clix* | -riscos* | -uniplus* | -iris* | -rtu* | -xenix* \
-	      | -hiux* | -386bsd* | -knetbsd* | -mirbsd* | -netbsd* \
+	      | -hiux* | -knetbsd* | -mirbsd* | -netbsd* \
 	      | -bitrig* | -openbsd* | -solidbsd* | -libertybsd* \
 	      | -ekkobsd* | -kfreebsd* | -freebsd* | -riscix* | -lynxos* \
 	      | -bosx* | -nextstep* | -cxux* | -aout* | -elf* | -oabi* \
 	      | -ptx* | -coff* | -ecoff* | -winnt* | -domain* | -vsta* \
 	      | -udi* | -eabi* | -lites* | -ieee* | -go32* | -aux* \
-	      | -chorusos* | -chorusrdb* | -cegcc* \
+	      | -chorusos* | -chorusrdb* | -cegcc* | -glidix* \
 	      | -cygwin* | -msys* | -pe* | -psos* | -moss* | -proelf* | -rtems* \
 	      | -midipix* | -mingw32* | -mingw64* | -linux-gnu* | -linux-android* \
 	      | -linux-newlib* | -linux-musl* | -linux-uclibc* \
 	      | -uxpv* | -beos* | -mpeix* | -udk* | -moxiebox* \
-	      | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* | -opened* \
+	      | -interix* | -uwin* | -mks* | -rhapsody* | -darwin* \
 	      | -openstep* | -oskit* | -conix* | -pw32* | -nonstopux* \
 	      | -storm-chaos* | -tops10* | -tenex* | -tops20* | -its* \
 	      | -os2* | -vos* | -palmos* | -uclinux* | -nucleus* \
-	      | -morphos* | -superux* | -rtmk* | -rtmk-nova* | -windiss* \
+	      | -morphos* | -superux* | -rtmk* | -windiss* \
 	      | -powermax* | -dnix* | -nx6 | -nx7 | -sei* | -dragonfly* \
 	      | -skyos* | -haiku* | -rdos* | -toppers* | -drops* | -es* \
-	      | -onefs* | -tirtos* | -phoenix* | -fuchsia*)
+	      | -onefs* | -tirtos* | -phoenix* | -fuchsia* | -redox* | -bme* \
+	      | -midnightbsd*)
 	# Remember, each alternative MUST END IN *, to match a version number.
 		;;
 	-qnx*)
@@ -1426,12 +1407,12 @@ case $os in
 	-nto*)
 		os=`echo $os | sed -e 's|nto|nto-qnx|'`
 		;;
-	-sim | -es1800* | -hms* | -xray | -os68k* | -none* | -v88r* \
-	      | -windows* | -osx | -abug | -netware* | -os9* | -beos* | -haiku* \
+	-sim | -xray | -os68k* | -v88r* \
+	      | -windows* | -osx | -abug | -netware* | -os9* \
 	      | -macos* | -mpw* | -magic* | -mmixware* | -mon960* | -lnews*)
 		;;
 	-mac*)
-		os=`echo $os | sed -e 's|mac|macos|'`
+		os=`echo "$os" | sed -e 's|mac|macos|'`
 		;;
 	-linux-dietlibc)
 		os=-linux-dietlibc
@@ -1440,10 +1421,10 @@ case $os in
 		os=`echo $os | sed -e 's|linux|linux-gnu|'`
 		;;
 	-sunos5*)
-		os=`echo $os | sed -e 's|sunos5|solaris2|'`
+		os=`echo "$os" | sed -e 's|sunos5|solaris2|'`
 		;;
 	-sunos6*)
-		os=`echo $os | sed -e 's|sunos6|solaris3|'`
+		os=`echo "$os" | sed -e 's|sunos6|solaris3|'`
 		;;
 	-opened*)
 		os=-openedition
@@ -1454,12 +1435,6 @@ case $os in
 	-wince*)
 		os=-wince
 		;;
-	-osfrose*)
-		os=-osfrose
-		;;
-	-osf*)
-		os=-osf
-		;;
 	-utek*)
 		os=-bsd
 		;;
@@ -1484,7 +1459,7 @@ case $os in
 	-nova*)
 		os=-rtmk-nova
 		;;
-	-ns2 )
+	-ns2)
 		os=-nextstep2
 		;;
 	-nsk*)
@@ -1506,7 +1481,7 @@ case $os in
 	-oss*)
 		os=-sysv3
 		;;
-	-svr4)
+	-svr4*)
 		os=-sysv4
 		;;
 	-svr3)
@@ -1521,24 +1496,28 @@ case $os in
 	-ose*)
 		os=-ose
 		;;
-	-es1800*)
-		os=-ose
-		;;
-	-xenix)
-		os=-xenix
-		;;
 	-*mint | -mint[0-9]* | -*MiNT | -MiNT[0-9]*)
 		os=-mint
 		;;
-	-aros*)
-		os=-aros
-		;;
 	-zvmoe)
 		os=-zvmoe
 		;;
 	-dicos*)
 		os=-dicos
 		;;
+	-pikeos*)
+		# Until real need of OS specific support for
+		# particular features comes up, bare metal
+		# configurations are quite functional.
+		case $basic_machine in
+		    arm*)
+			os=-eabi
+			;;
+		    *)
+			os=-elf
+			;;
+		esac
+		;;
 	-nacl*)
 		;;
 	-ios)
@@ -1548,7 +1527,7 @@ case $os in
 	*)
 		# Get rid of the `-' at the beginning of $os.
 		os=`echo $os | sed 's/[^-]*-//'`
-		echo Invalid configuration \`$1\': system \`$os\' not recognized 1>&2
+		echo Invalid configuration \`"$1"\': system \`"$os"\' not recognized 1>&2
 		exit 1
 		;;
 esac
@@ -1638,12 +1617,12 @@ case $basic_machine in
 	sparc-* | *-sun)
 		os=-sunos4.1.1
 		;;
+	pru-*)
+		os=-elf
+		;;
 	*-be)
 		os=-beos
 		;;
-	*-haiku)
-		os=-haiku
-		;;
 	*-ibm)
 		os=-aix
 		;;
@@ -1683,7 +1662,7 @@ case $basic_machine in
 	m88k-omron*)
 		os=-luna
 		;;
-	*-next )
+	*-next)
 		os=-nextstep
 		;;
 	*-sequent)
@@ -1698,9 +1677,6 @@ case $basic_machine in
 	i370-*)
 		os=-mvs
 		;;
-	*-next)
-		os=-nextstep3
-		;;
 	*-gould)
 		os=-sysv
 		;;
@@ -1810,15 +1786,15 @@ case $basic_machine in
 				vendor=stratus
 				;;
 		esac
-		basic_machine=`echo $basic_machine | sed "s/unknown/$vendor/"`
+		basic_machine=`echo "$basic_machine" | sed "s/unknown/$vendor/"`
 		;;
 esac
 
-echo $basic_machine$os
+echo "$basic_machine$os"
 exit
 
 # Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
+# eval: (add-hook 'write-file-functions 'time-stamp)
 # time-stamp-start: "timestamp='"
 # time-stamp-format: "%:y-%02m-%02d"
 # time-stamp-end: "'"
diff -pruN 1.26.0-8/configure 1.30.0-0ubuntu8/configure
--- 1.26.0-8/configure	2018-03-21 23:13:50.000000000 +0000
+++ 1.30.0-0ubuntu8/configure	2019-05-17 04:47:12.000000000 +0000
@@ -1,6 +1,6 @@
 #! /bin/sh
 # Guess values for system-dependent variables and create Makefiles.
-# Generated by GNU Autoconf 2.69 for lightdm 1.26.0.
+# Generated by GNU Autoconf 2.69 for lightdm 1.30.0.
 #
 #
 # Copyright (C) 1992-1996, 1998-2012 Free Software Foundation, Inc.
@@ -587,8 +587,8 @@ MAKEFLAGS=
 # Identity of this package.
 PACKAGE_NAME='lightdm'
 PACKAGE_TARNAME='lightdm'
-PACKAGE_VERSION='1.26.0'
-PACKAGE_STRING='lightdm 1.26.0'
+PACKAGE_VERSION='1.30.0'
+PACKAGE_STRING='lightdm 1.30.0'
 PACKAGE_BUGREPORT=''
 PACKAGE_URL=''
 
@@ -792,7 +792,6 @@ am__nodep
 AMDEPBACKSLASH
 AMDEP_FALSE
 AMDEP_TRUE
-am__quote
 am__include
 DEPDIR
 OBJEXT
@@ -867,7 +866,8 @@ PACKAGE_VERSION
 PACKAGE_TARNAME
 PACKAGE_NAME
 PATH_SEPARATOR
-SHELL'
+SHELL
+am__quote'
 ac_subst_files=''
 ac_user_opts='
 enable_option_checking
@@ -1487,7 +1487,7 @@ if test "$ac_init_help" = "long"; then
   # Omit some internal or obsolete options to make the list less imposing.
   # This message is too long to be a string in the A/UX 3.1 sh.
   cat <<_ACEOF
-\`configure' configures lightdm 1.26.0 to adapt to many kinds of systems.
+\`configure' configures lightdm 1.30.0 to adapt to many kinds of systems.
 
 Usage: $0 [OPTION]... [VAR=VALUE]...
 
@@ -1558,7 +1558,7 @@ fi
 
 if test -n "$ac_init_help"; then
   case $ac_init_help in
-     short | recursive ) echo "Configuration of lightdm 1.26.0:";;
+     short | recursive ) echo "Configuration of lightdm 1.30.0:";;
    esac
   cat <<\_ACEOF
 
@@ -1736,7 +1736,7 @@ fi
 test -n "$ac_init_help" && exit $ac_status
 if $ac_init_version; then
   cat <<\_ACEOF
-lightdm configure 1.26.0
+lightdm configure 1.30.0
 generated by GNU Autoconf 2.69
 
 Copyright (C) 2012 Free Software Foundation, Inc.
@@ -2222,7 +2222,7 @@ cat >config.log <<_ACEOF
 This file contains any messages produced by compilers while
 running configure, to aid debugging if configure makes a mistake.
 
-It was created by lightdm $as_me 1.26.0, which was
+It was created by lightdm $as_me 1.30.0, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   $ $0 $@
@@ -2573,7 +2573,7 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu
 
 ac_config_headers="$ac_config_headers config.h"
 
-am__api_version='1.15'
+am__api_version='1.16'
 
 ac_aux_dir=
 for ac_dir in "$srcdir" "$srcdir/.." "$srcdir/../.."; do
@@ -3088,7 +3088,7 @@ fi
 
 # Define the identity of the package.
  PACKAGE='lightdm'
- VERSION='1.26.0'
+ VERSION='1.30.0'
 
 
 cat >>confdefs.h <<_ACEOF
@@ -3118,8 +3118,8 @@ MAKEINFO=${MAKEINFO-"${am_missing_run}ma
 
 # For better backward compatibility.  To be removed once Automake 1.9.x
 # dies out for good.  For more background, see:
-# <http://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
-# <http://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
+# <https://lists.gnu.org/archive/html/automake/2012-07/msg00001.html>
+# <https://lists.gnu.org/archive/html/automake/2012-07/msg00014.html>
 mkdir_p='$(MKDIR_P)'
 
 # We need awk for the "check" target (and possibly the TAP driver).  The
@@ -3170,7 +3170,7 @@ END
 Aborting the configuration process, to ensure you take notice of the issue.
 
 You can download and install GNU coreutils to get an 'rm' implementation
-that behaves properly: <http://www.gnu.org/software/coreutils/>.
+that behaves properly: <https://www.gnu.org/software/coreutils/>.
 
 If you want to complete the configuration process using your problematic
 'rm' anyway, export the environment variable ACCEPT_INFERIOR_RM_PROGRAM
@@ -3224,45 +3224,45 @@ DEPDIR="${am__leading_dot}deps"
 
 ac_config_commands="$ac_config_commands depfiles"
 
-
-am_make=${MAKE-make}
-cat > confinc << 'END'
+{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ${MAKE-make} supports the include directive" >&5
+$as_echo_n "checking whether ${MAKE-make} supports the include directive... " >&6; }
+cat > confinc.mk << 'END'
 am__doit:
-	@echo this is the am__doit target
+	@echo this is the am__doit target >confinc.out
 .PHONY: am__doit
 END
-# If we don't find an include directive, just comment out the code.
-{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for style of include used by $am_make" >&5
-$as_echo_n "checking for style of include used by $am_make... " >&6; }
 am__include="#"
 am__quote=
-_am_result=none
-# First try GNU make style include.
-echo "include confinc" > confmf
-# Ignore all kinds of additional output from 'make'.
-case `$am_make -s -f confmf 2> /dev/null` in #(
-*the\ am__doit\ target*)
-  am__include=include
-  am__quote=
-  _am_result=GNU
-  ;;
-esac
-# Now try BSD make style include.
-if test "$am__include" = "#"; then
-   echo '.include "confinc"' > confmf
-   case `$am_make -s -f confmf 2> /dev/null` in #(
-   *the\ am__doit\ target*)
-     am__include=.include
-     am__quote="\""
-     _am_result=BSD
+# BSD make does it like this.
+echo '.include "confinc.mk" # ignored' > confmf.BSD
+# Other make implementations (GNU, Solaris 10, AIX) do it like this.
+echo 'include confinc.mk # ignored' > confmf.GNU
+_am_result=no
+for s in GNU BSD; do
+  { echo "$as_me:$LINENO: ${MAKE-make} -f confmf.$s && cat confinc.out" >&5
+   (${MAKE-make} -f confmf.$s && cat confinc.out) >&5 2>&5
+   ac_status=$?
+   echo "$as_me:$LINENO: \$? = $ac_status" >&5
+   (exit $ac_status); }
+  case $?:`cat confinc.out 2>/dev/null` in #(
+  '0:this is the am__doit target') :
+    case $s in #(
+  BSD) :
+    am__include='.include' am__quote='"' ;; #(
+  *) :
+    am__include='include' am__quote='' ;;
+esac ;; #(
+  *) :
      ;;
-   esac
-fi
-
-
-{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $_am_result" >&5
-$as_echo "$_am_result" >&6; }
-rm -f confinc confmf
+esac
+  if test "$am__include" != "#"; then
+    _am_result="yes ($s style)"
+    break
+  fi
+done
+rm -f confinc.* confmf.*
+{ $as_echo "$as_me:${as_lineno-$LINENO}: result: ${_am_result}" >&5
+$as_echo "${_am_result}" >&6; }
 
 # Check whether --enable-dependency-tracking was given.
 if test "${enable_dependency_tracking+set}" = set; then :
@@ -6609,11 +6609,8 @@ _LT_EOF
   test $ac_status = 0; }; then
     # Now try to grab the symbols.
     nlist=conftest.nm
-    if { { eval echo "\"\$as_me\":${as_lineno-$LINENO}: \"$NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist\""; } >&5
-  (eval $NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) 2>&5
-  ac_status=$?
-  $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5
-  test $ac_status = 0; } && test -s "$nlist"; then
+    $ECHO "$as_me:$LINENO: $NM conftest.$ac_objext | $lt_cv_sys_global_symbol_pipe > $nlist" >&5
+    if eval "$NM" conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist 2>&5 && test -s "$nlist"; then
       # Try sorting and uniquifying the output.
       if sort "$nlist" | uniq > "$nlist"T; then
 	mv -f "$nlist"T "$nlist"
@@ -8962,6 +8959,12 @@ lt_prog_compiler_static=
 	lt_prog_compiler_pic='-KPIC'
 	lt_prog_compiler_static='-static'
         ;;
+      # flang / f18. f95 an alias for gfortran or flang on Debian
+      flang* | f18* | f95*)
+	lt_prog_compiler_wl='-Wl,'
+	lt_prog_compiler_pic='-fPIC'
+	lt_prog_compiler_static='-static'
+        ;;
       # icc used to be incompatible with GCC.
       # ICC 10 doesn't accept -KPIC any more.
       icc* | ifort*)
@@ -13322,7 +13325,7 @@ with_gnu_ld=$lt_cv_prog_gnu_ld
       # Commands to make compiler produce verbose output that lists
       # what "hidden" libraries, object files and flags are used when
       # linking a shared library.
-      output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
+      output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"'
 
     else
       GXX=no
@@ -13814,7 +13817,7 @@ fi
             # explicitly linking system object files so we need to strip them
             # from the output so that they don't get included in the library
             # dependencies.
-            output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
+            output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP " \-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
             ;;
           *)
             if test yes = "$GXX"; then
@@ -13879,7 +13882,7 @@ fi
 	    # explicitly linking system object files so we need to strip them
 	    # from the output so that they don't get included in the library
 	    # dependencies.
-	    output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
+	    output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP " \-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
 	    ;;
           *)
 	    if test yes = "$GXX"; then
@@ -14218,7 +14221,7 @@ fi
 	      # Commands to make compiler produce verbose output that lists
 	      # what "hidden" libraries, object files and flags are used when
 	      # linking a shared library.
-	      output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
+	      output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"'
 
 	    else
 	      # FIXME: insert proper C++ library support
@@ -14302,7 +14305,7 @@ fi
 	        # Commands to make compiler produce verbose output that lists
 	        # what "hidden" libraries, object files and flags are used when
 	        # linking a shared library.
-	        output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
+	        output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"'
 	      else
 	        # g++ 2.7 appears to require '-G' NOT '-shared' on this
 	        # platform.
@@ -14313,7 +14316,7 @@ fi
 	        # Commands to make compiler produce verbose output that lists
 	        # what "hidden" libraries, object files and flags are used when
 	        # linking a shared library.
-	        output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
+	        output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"'
 	      fi
 
 	      hardcode_libdir_flag_spec_CXX='$wl-R $wl$libdir'
@@ -16274,11 +16277,11 @@ fi
 
 
 
-if test "x$ac_cv_prog_cc_c99" == xno; then
+if test "x$ac_cv_prog_cc_c99" = xno; then
     as_fn_error $? "$CC does not support '-std=c99'." "$LINENO" 5
 fi
 
-if test "x$GCC" == xyes; then
+if test "x$GCC" = xyes; then
     WARN_CFLAGS="-Wall \
                  -Wstrict-prototypes \
                  -Wnested-externs \
@@ -20099,7 +20102,7 @@ cat >>$CONFIG_STATUS <<\_ACEOF || ac_wri
 # report actual input values of CONFIG_FILES etc. instead of their
 # values after options handling.
 ac_log="
-This file was extended by lightdm $as_me 1.26.0, which was
+This file was extended by lightdm $as_me 1.30.0, which was
 generated by GNU Autoconf 2.69.  Invocation command line was
 
   CONFIG_FILES    = $CONFIG_FILES
@@ -20165,7 +20168,7 @@ _ACEOF
 cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1
 ac_cs_config="`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`"
 ac_cs_version="\\
-lightdm config.status 1.26.0
+lightdm config.status 1.30.0
 configured by $0, generated by GNU Autoconf 2.69,
   with options \\"\$ac_cs_config\\"
 
@@ -20284,7 +20287,7 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_writ
 #
 # INIT-COMMANDS
 #
-AMDEP_TRUE="$AMDEP_TRUE" ac_aux_dir="$ac_aux_dir"
+AMDEP_TRUE="$AMDEP_TRUE" MAKE="${MAKE-make}"
 
 
 # The HP-UX ksh and POSIX shell print the target directory to stdout
@@ -21292,29 +21295,35 @@ $as_echo "$as_me: executing $ac_file com
   # Older Autoconf quotes --file arguments for eval, but not when files
   # are listed without --file.  Let's play safe and only enable the eval
   # if we detect the quoting.
-  case $CONFIG_FILES in
-  *\'*) eval set x "$CONFIG_FILES" ;;
-  *)   set x $CONFIG_FILES ;;
-  esac
+  # TODO: see whether this extra hack can be removed once we start
+  # requiring Autoconf 2.70 or later.
+  case $CONFIG_FILES in #(
+  *\'*) :
+    eval set x "$CONFIG_FILES" ;; #(
+  *) :
+    set x $CONFIG_FILES ;; #(
+  *) :
+     ;;
+esac
   shift
-  for mf
+  # Used to flag and report bootstrapping failures.
+  am_rc=0
+  for am_mf
   do
     # Strip MF so we end up with the name of the file.
-    mf=`echo "$mf" | sed -e 's/:.*$//'`
-    # Check whether this is an Automake generated Makefile or not.
-    # We used to match only the files named 'Makefile.in', but
-    # some people rename them; so instead we look at the file content.
-    # Grep'ing the first line is not enough: some people post-process
-    # each Makefile.in and add a new line on top of each file to say so.
-    # Grep'ing the whole file is not good either: AIX grep has a line
+    am_mf=`$as_echo "$am_mf" | sed -e 's/:.*$//'`
+    # Check whether this is an Automake generated Makefile which includes
+    # dependency-tracking related rules and includes.
+    # Grep'ing the whole file directly is not great: AIX grep has a line
     # limit of 2048, but all sed's we know have understand at least 4000.
-    if sed -n 's,^#.*generated by automake.*,X,p' "$mf" | grep X >/dev/null 2>&1; then
-      dirpart=`$as_dirname -- "$mf" ||
-$as_expr X"$mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-	 X"$mf" : 'X\(//\)[^/]' \| \
-	 X"$mf" : 'X\(//\)$' \| \
-	 X"$mf" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$mf" |
+    sed -n 's,^am--depfiles:.*,X,p' "$am_mf" | grep X >/dev/null 2>&1 \
+      || continue
+    am_dirpart=`$as_dirname -- "$am_mf" ||
+$as_expr X"$am_mf" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
+	 X"$am_mf" : 'X\(//\)[^/]' \| \
+	 X"$am_mf" : 'X\(//\)$' \| \
+	 X"$am_mf" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X"$am_mf" |
     sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
 	    s//\1/
 	    q
@@ -21332,53 +21341,48 @@ $as_echo X"$mf" |
 	    q
 	  }
 	  s/.*/./; q'`
-    else
-      continue
-    fi
-    # Extract the definition of DEPDIR, am__include, and am__quote
-    # from the Makefile without running 'make'.
-    DEPDIR=`sed -n 's/^DEPDIR = //p' < "$mf"`
-    test -z "$DEPDIR" && continue
-    am__include=`sed -n 's/^am__include = //p' < "$mf"`
-    test -z "$am__include" && continue
-    am__quote=`sed -n 's/^am__quote = //p' < "$mf"`
-    # Find all dependency output files, they are included files with
-    # $(DEPDIR) in their names.  We invoke sed twice because it is the
-    # simplest approach to changing $(DEPDIR) to its actual value in the
-    # expansion.
-    for file in `sed -n "
-      s/^$am__include $am__quote\(.*(DEPDIR).*\)$am__quote"'$/\1/p' <"$mf" | \
-	 sed -e 's/\$(DEPDIR)/'"$DEPDIR"'/g'`; do
-      # Make sure the directory exists.
-      test -f "$dirpart/$file" && continue
-      fdir=`$as_dirname -- "$file" ||
-$as_expr X"$file" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \
-	 X"$file" : 'X\(//\)[^/]' \| \
-	 X"$file" : 'X\(//\)$' \| \
-	 X"$file" : 'X\(/\)' \| . 2>/dev/null ||
-$as_echo X"$file" |
-    sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{
-	    s//\1/
-	    q
-	  }
-	  /^X\(\/\/\)[^/].*/{
+    am_filepart=`$as_basename -- "$am_mf" ||
+$as_expr X/"$am_mf" : '.*/\([^/][^/]*\)/*$' \| \
+	 X"$am_mf" : 'X\(//\)$' \| \
+	 X"$am_mf" : 'X\(/\)' \| . 2>/dev/null ||
+$as_echo X/"$am_mf" |
+    sed '/^.*\/\([^/][^/]*\)\/*$/{
 	    s//\1/
 	    q
 	  }
-	  /^X\(\/\/\)$/{
+	  /^X\/\(\/\/\)$/{
 	    s//\1/
 	    q
 	  }
-	  /^X\(\/\).*/{
+	  /^X\/\(\/\).*/{
 	    s//\1/
 	    q
 	  }
 	  s/.*/./; q'`
-      as_dir=$dirpart/$fdir; as_fn_mkdir_p
-      # echo "creating $dirpart/$file"
-      echo '# dummy' > "$dirpart/$file"
-    done
+    { echo "$as_me:$LINENO: cd "$am_dirpart" \
+      && sed -e '/# am--include-marker/d' "$am_filepart" \
+        | $MAKE -f - am--depfiles" >&5
+   (cd "$am_dirpart" \
+      && sed -e '/# am--include-marker/d' "$am_filepart" \
+        | $MAKE -f - am--depfiles) >&5 2>&5
+   ac_status=$?
+   echo "$as_me:$LINENO: \$? = $ac_status" >&5
+   (exit $ac_status); } || am_rc=$?
   done
+  if test $am_rc -ne 0; then
+    { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+$as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+as_fn_error $? "Something went wrong bootstrapping makefile fragments
+    for automatic dependency tracking.  Try re-running configure with the
+    '--disable-dependency-tracking' option to at least be able to build
+    the package (albeit without support for automatic dependency tracking).
+See \`config.log' for more details" "$LINENO" 5; }
+  fi
+  { am_dirpart=; unset am_dirpart;}
+  { am_filepart=; unset am_filepart;}
+  { am_mf=; unset am_mf;}
+  { am_rc=; unset am_rc;}
+  rm -f conftest-deps.mk
 }
  ;;
     "libtool":C)
diff -pruN 1.26.0-8/configure.ac 1.30.0-0ubuntu8/configure.ac
--- 1.26.0-8/configure.ac	2018-03-21 23:11:36.000000000 +0000
+++ 1.30.0-0ubuntu8/configure.ac	2019-05-17 04:45:47.000000000 +0000
@@ -1,6 +1,6 @@
 dnl Process this file with autoconf to produce a configure script.
 
-AC_INIT(lightdm, 1.26.0)
+AC_INIT(lightdm, 1.30.0)
 AC_CONFIG_MACRO_DIR(m4)
 AC_CONFIG_HEADER(config.h)
 AM_INIT_AUTOMAKE([1.11 no-dist-gzip dist-xz foreign])
@@ -15,12 +15,12 @@ AC_PROG_MKDIR_P
 AM_MAINTAINER_MODE
 
 dnl Check if the compiler really supports `-std=c99`.
-if test "x$ac_cv_prog_cc_c99" == xno; then
+if test "x$ac_cv_prog_cc_c99" = xno; then
     AC_MSG_ERROR([$CC does not support '-std=c99'.])
 fi
 
 dnl Enable compile warnings (only supporting GCC)
-if test "x$GCC" == xyes; then
+if test "x$GCC" = xyes; then
     WARN_CFLAGS="-Wall \
                  -Wstrict-prototypes \
                  -Wnested-externs \
diff -pruN 1.26.0-8/data/Makefile.am 1.30.0-0ubuntu8/data/Makefile.am
--- 1.26.0-8/data/Makefile.am	2018-02-13 03:27:04.000000000 +0000
+++ 1.30.0-0ubuntu8/data/Makefile.am	2019-05-17 04:41:32.000000000 +0000
@@ -36,7 +36,7 @@ dist_dbus_DATA = \
 # AccountsService requires D-Bus interfaces to be symlinked
 install-exec-hook:
 	$(MKDIR_P) $(DESTDIR)$(datadir)/accountsservice/interfaces
-	$(LN_S) ../../dbus-1/interfaces/$(accountsservice_interface) $(DESTDIR)$(datadir)/accountsservice/interfaces/$(accountsservice_interface)
+	$(LN_S) -f ../../dbus-1/interfaces/$(accountsservice_interface) $(DESTDIR)$(datadir)/accountsservice/interfaces/$(accountsservice_interface)
 
 polkitdir = $(datadir)/polkit-1/actions
 polkit_in_files = org.freedesktop.DisplayManager.AccountsService.policy.in
diff -pruN 1.26.0-8/data/Makefile.in 1.30.0-0ubuntu8/data/Makefile.in
--- 1.26.0-8/data/Makefile.in	2018-03-21 23:13:51.000000000 +0000
+++ 1.30.0-0ubuntu8/data/Makefile.in	2019-05-17 04:47:12.000000000 +0000
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2017 Free Software Foundation, Inc.
+# Copyright (C) 1994-2018 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -418,8 +418,8 @@ Makefile: $(srcdir)/Makefile.in $(top_bu
 	  *config.status*) \
 	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
 	  *) \
-	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
-	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
+	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
 	esac;
 
 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
@@ -673,7 +673,10 @@ ctags CTAGS:
 cscope cscopelist:
 
 
-distdir: $(DISTFILES)
+distdir: $(BUILT_SOURCES)
+	$(MAKE) $(AM_MAKEFLAGS) distdir-am
+
+distdir-am: $(DISTFILES)
 	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 	list='$(DISTFILES)'; \
@@ -853,7 +856,7 @@ lightdm-guest-session: $(srcdir)/apparmo
 # AccountsService requires D-Bus interfaces to be symlinked
 install-exec-hook:
 	$(MKDIR_P) $(DESTDIR)$(datadir)/accountsservice/interfaces
-	$(LN_S) ../../dbus-1/interfaces/$(accountsservice_interface) $(DESTDIR)$(datadir)/accountsservice/interfaces/$(accountsservice_interface)
+	$(LN_S) -f ../../dbus-1/interfaces/$(accountsservice_interface) $(DESTDIR)$(datadir)/accountsservice/interfaces/$(accountsservice_interface)
 @INTLTOOL_POLICY_RULE@
 
 # Tell versions [3.59,3.63) of GNU make to not export all variables.
diff -pruN 1.26.0-8/data/apparmor/abstractions/lightdm 1.30.0-0ubuntu8/data/apparmor/abstractions/lightdm
--- 1.26.0-8/data/apparmor/abstractions/lightdm	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/data/apparmor/abstractions/lightdm	2018-09-05 01:33:31.000000000 +0000
@@ -23,7 +23,7 @@
 
   / r,
   /bin/ rmix,
-  /bin/fusermount Px,
+  /{,usr/}bin/fusermount Px,
   /bin/** rmix,
   /cdrom/ rmix,
   /cdrom/** rmix,
diff -pruN 1.26.0-8/data/dm-tool.1 1.30.0-0ubuntu8/data/dm-tool.1
--- 1.26.0-8/data/dm-tool.1	2017-10-05 22:20:29.000000000 +0000
+++ 1.30.0-0ubuntu8/data/dm-tool.1	2018-09-05 01:33:31.000000000 +0000
@@ -58,5 +58,18 @@ Connect an existing X server to the disp
 .TP
 .B add-seat TYPE [NAME=VALUE...]
 Add a dynamic seat.
+.SH ENVIRONMENT
+.TP
+.B XDG_SEAT_PATH
+Used by dm-tool to determine in which display manager session it's running. When executing
+.B dm-tool
+outside of a display-manager use its
+.B list-seats
+command to show active sessions and set the session to connect to with:
+.B export XDG_SEAT_PATH=/org/freedesktop/DesktopManager/SeatX
+where
+.B SeatX
+is one of the listed sessions.
+.
 .SH SEE ALSO
 .BR lightdm (1)
diff -pruN 1.26.0-8/data/lightdm.conf 1.30.0-0ubuntu8/data/lightdm.conf
--- 1.26.0-8/data/lightdm.conf	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/data/lightdm.conf	2018-09-05 01:33:31.000000000 +0000
@@ -44,11 +44,10 @@
 # [Seat:seat0] matches the seat named "seat0".
 # [Seat:seat-thin-client*] matches all seats that have names that start with "seat-thin-client".
 #
-# type = Seat type (local, xremote, unity)
+# type = Seat type (local, xremote)
 # pam-service = PAM service to use for login
 # pam-autologin-service = PAM service to use for autologin
 # pam-greeter-service = PAM service to use for greeters
-# xserver-backend = X backend to use (mir)
 # xserver-command = X server command to run (can also contain arguments e.g. X -special-option)
 # xmir-command = Xmir server command to run (can also contain arguments e.g. Xmir -special-option)
 # xserver-config = Config file to pass to X server
@@ -60,8 +59,6 @@
 # xdmcp-manager = XDMCP manager to connect to (implies xserver-allow-tcp=true)
 # xdmcp-port = XDMCP UDP/IP port to communicate on
 # xdmcp-key = Authentication key to use for XDM-AUTHENTICATION-1 (stored in keys.conf)
-# unity-compositor-command = Unity compositor command to run (can also contain arguments e.g. unity-system-compositor -special-option)
-# unity-compositor-timeout = Number of seconds to wait for compositor to start
 # greeter-session = Session to load for greeter
 # greeter-hide-users = True to hide the user list
 # greeter-allow-guest = True if the greeter should show a guest login option
@@ -91,7 +88,6 @@
 #pam-service=lightdm
 #pam-autologin-service=lightdm-autologin
 #pam-greeter-service=lightdm-greeter
-#xserver-backend=
 #xserver-command=X
 #xmir-command=Xmir
 #xserver-config=
@@ -103,8 +99,6 @@
 #xdmcp-manager=
 #xdmcp-port=177
 #xdmcp-key=
-#unity-compositor-command=unity-system-compositor
-#unity-compositor-timeout=60
 #greeter-session=example-gtk-gnome
 #greeter-hide-users=false
 #greeter-allow-guest=true
diff -pruN 1.26.0-8/data/users.conf 1.30.0-0ubuntu8/data/users.conf
--- 1.26.0-8/data/users.conf	2017-10-05 22:20:29.000000000 +0000
+++ 1.30.0-0ubuntu8/data/users.conf	2018-09-05 01:33:31.000000000 +0000
@@ -11,4 +11,4 @@
 [UserList]
 minimum-uid=500
 hidden-users=nobody nobody4 noaccess
-hidden-shells=/bin/false /usr/sbin/nologin
+hidden-shells=/bin/false /usr/sbin/nologin /sbin/nologin
diff -pruN 1.26.0-8/debian/01_debian.conf 1.30.0-0ubuntu8/debian/01_debian.conf
--- 1.26.0-8/debian/01_debian.conf	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/01_debian.conf	1970-01-01 00:00:00.000000000 +0000
@@ -1,12 +0,0 @@
-# Debian specific defaults
-#
-# - use lightdm-greeter session greeter, points to the etc-alternatives managed
-# greeter
-# - hide users list by default, we don't want to expose them
-# - use Debian specific session wrapper, to gain support for
-# /etc/X11/Xsession.d scripts
-
-[Seat:*]
-greeter-session=lightdm-greeter
-greeter-hide-users=true
-session-wrapper=/etc/X11/Xsession
diff -pruN 1.26.0-8/debian/50-disable-guest.conf 1.30.0-0ubuntu8/debian/50-disable-guest.conf
--- 1.26.0-8/debian/50-disable-guest.conf	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/50-disable-guest.conf	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,5 @@
+# Disable guest sessions due to them not being confined in systemd
+# CVE-2017-8900
+# https://bugs.launchpad.net/bugs/1663157
+[Seat:*]
+allow-guest=false
diff -pruN 1.26.0-8/debian/50-disable-log-backup.conf 1.30.0-0ubuntu8/debian/50-disable-log-backup.conf
--- 1.26.0-8/debian/50-disable-log-backup.conf	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/50-disable-log-backup.conf	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,3 @@
+[LightDM]
+# Disable log backup - we use logrotate instead
+backup-logs=false
diff -pruN 1.26.0-8/debian/50-greeter-wrapper.conf 1.30.0-0ubuntu8/debian/50-greeter-wrapper.conf
--- 1.26.0-8/debian/50-greeter-wrapper.conf	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/50-greeter-wrapper.conf	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,2 @@
+[Seat:*]
+greeter-wrapper=/usr/lib/lightdm/lightdm-greeter-session
diff -pruN 1.26.0-8/debian/50-guest-wrapper.conf 1.30.0-0ubuntu8/debian/50-guest-wrapper.conf
--- 1.26.0-8/debian/50-guest-wrapper.conf	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/50-guest-wrapper.conf	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,2 @@
+[Seat:*]
+guest-wrapper=/usr/lib/lightdm/lightdm-guest-session
diff -pruN 1.26.0-8/debian/50-xserver-command.conf 1.30.0-0ubuntu8/debian/50-xserver-command.conf
--- 1.26.0-8/debian/50-xserver-command.conf	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/50-xserver-command.conf	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,3 @@
+[Seat:*]
+# Dump core
+xserver-command=X -core
diff -pruN 1.26.0-8/debian/changelog 1.30.0-0ubuntu8/debian/changelog
--- 1.26.0-8/debian/changelog	2022-01-11 09:49:23.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/changelog	2023-02-08 21:29:55.000000000 +0000
@@ -1,945 +1,2865 @@
-lightdm (1.26.0-8) unstable; urgency=medium
+lightdm (1.30.0-0ubuntu8) lunar; urgency=medium
 
-  * Team upload.
+  * debian/config-error-dialog.sh:
+    - Use --no-markup option in zenity call (LP: #1887252)
 
-  [ handsome_feng ]
-  * d/p/10_fix-build-glibc-2.33.patch: Fix FTBFS with glibc 2.33.
-    (Closes: #1002132)
+ -- Gunnar Hjalmarsson <gunnarhj@ubuntu.com>  Wed, 08 Feb 2023 22:29:55 +0100
 
-  [ Unit 193 ]
-  * d/control:
-    - Bump dh compat to 13.
-    - RÂ³: no
-  * d/rules: Drop '--as-needed' as it is now default in stable.
-  * Update Standards-Version to 4.6.0.
+lightdm (1.30.0-0ubuntu7) kinetic; urgency=medium
 
- -- Unit 193 <unit193@debian.org>  Tue, 11 Jan 2022 04:49:23 -0500
+  * Also Recommends:
+    notification-daemon | mate-notification-daemon | lxqt-notificationd,
+    also a dependency hack to avoid gnome-shell.
 
-lightdm (1.26.0-7) unstable; urgency=medium
+ -- Steve Langasek <vorlon@debian.org>  Thu, 22 Sep 2022 02:53:59 +0000
 
-  [ Debian Janitor ]
-  * Apply multi-arch hints.
-  * Trim trailing whitespace.
-  * Bump debhelper from old 11 to 12.
-  * Set upstream metadata fields: Bug-Database, Bug-Submit, Repository,
-    Repository-Browse.
+lightdm (1.30.0-0ubuntu6) kinetic; urgency=medium
 
-  [ Yves-Alexis Perez ]
-  * d/control: drop build-dep on gnome-doc-utils (Closes: #945292)
-  * d/control: update standards version to 4.4.1
-  * d/lightdm.service: improve systemd unit file (Closes: #950390)
-  * d/control: update standards version to 4.5.0
-  * d/rules: don't run installsystemd at all
-  * d/lightdm.service: manually install systemd unit file
+  * Recommends: policykit-1-gnome | arctica-greeter | ukui-greeter as
+    a dependency hack to let lightdm pull in policykit-1-gnome before
+    unity-greeter pulls in gnome-shell without modifying the behavior
+    on Ubuntu MATE and UbuntuKylin.
 
- -- Yves-Alexis Perez <corsac@debian.org>  Mon, 03 Feb 2020 20:13:13 +0100
+ -- Steve Langasek <vorlon@debian.org>  Thu, 22 Sep 2022 02:43:41 +0000
 
-lightdm (1.26.0-6) unstable; urgency=medium
+lightdm (1.30.0-0ubuntu5) jammy; urgency=medium
 
-  * drop liblightdm-qt packages for Qt4 Debian removal.
-    Thanks Moritz MÃ¼hlenhoff for the patch (closes: #875029)
-  * d/control: update dh compat level to 11
-  * d/rules: explicitly enable gtk-doc.
-    It seems that default behavior changed at some point, making the package
-    FTBFS because dh_install can't find the gtk-doc folder.
-  * d/rules: override dh_installsystemd instead of dh_systemd_start
+  * debian/lightdm.lightdm-greeter.pam,
+    debian/lightdm.pam:
+    - Suppress log error for missing pam modules (LP: #1949970)
 
- -- Yves-Alexis Perez <corsac@debian.org>  Tue, 17 Sep 2019 22:51:36 +0200
+ -- Dan Streetman <ddstreet@ieee.org>  Fri, 05 Nov 2021 10:16:40 -0400
 
-lightdm (1.26.0-5) unstable; urgency=medium
+lightdm (1.30.0-0ubuntu4) hirsute; urgency=medium
 
-  * d/control: drop consolekit dep, use a real package as first alternative
-  * move to debhelper-compat b-d for dh version
-  * d/control: update standards version to 4.4.0
+  * debian/patches/fix-guest-session-ICEauthority-error.patch:
+    - Fixes AppArmor issue which prevented access to the guest session
+      feature in e.g. MATE (LP: #1921655). Thanks to Jonas Wiegert for
+      the solution!
+  * debian/patches/Glibc-2.33-fix.patch:
+    - Cherry picked from upstream to prevent FTBFS
+  * debian/patches/dont-turn-format-warnings-into-errors.patch:
+    - Works around FTBFS on s390x with gcc versions higher than gcc-9.
 
- -- Yves-Alexis Perez <corsac@debian.org>  Wed, 10 Jul 2019 22:34:59 +0200
+ -- Gunnar Hjalmarsson <gunnarhj@ubuntu.com>  Sun, 11 Apr 2021 00:18:06 +0200
 
-lightdm (1.26.0-4) unstable; urgency=medium
+lightdm (1.30.0-0ubuntu3.1) focal; urgency=medium
 
-  * d/control: replace libpam-systemd dep by logind (closes: #922160)
-  * d/control: update standards version to 4.3.0
-  * d/control: fix capitalization of GObject
-  * d/patches: import patches in gbp pq
+  * debian/patches/04_language_handling.patch:
+    - Only set LANGUAGE if not in a live session (LP: #1861481).
 
- -- Yves-Alexis Perez <corsac@debian.org>  Fri, 22 Feb 2019 17:50:43 +0100
+ -- Gunnar Hjalmarsson <gunnarhj@ubuntu.com>  Fri, 07 Feb 2020 12:40:00 +0100
 
-lightdm (1.26.0-3) unstable; urgency=medium
+lightdm (1.30.0-0ubuntu2) focal; urgency=medium
 
-  [ Cody Garver ]
-  * Backport upstream hide systemd dynamic users fix
+  * Cherry-pick upstream commit dropping Qt 4 support.
 
-  [ Yves-Alexis Perez ]
-  * d/control: stop duplicating section when it's useless
-  * d/control: update standards version to 4.2.1
-  * d/control: fix casing for Gobject
-  * d/liblightdm-gobject-1-0.lintian-overrides dropped, now useless
+ -- Simon Quigley <tsimonq2@ubuntu.com>  Fri, 18 Oct 2019 17:24:44 -0500
 
- -- Yves-Alexis Perez <corsac@debian.org>  Sun, 07 Oct 2018 11:04:27 +0200
+lightdm (1.30.0-0ubuntu1) eoan; urgency=medium
 
-lightdm (1.26.0-2) unstable; urgency=medium
+  * New upstream release:
+    - Add lightdm_user_get_is_locked ()
+    - Hide users with shell /bin/false
+    - Remove unity-system-compositor support (dead upstream)
+    - Fix dm-tool crash
+    - Update documentation
+  * debian/control:
+  * debian/copyright:
+    - Update links to GitHub
+  * debian/liblightdm-gobject-1-0.symbols:
+    - Updated
 
-  * d/gbp.conf added, following DEP-14
-  * Upload to unstable.
+ -- Robert Ancell <robert.ancell@canonical.com>  Wed, 14 Aug 2019 14:18:58 +1200
 
- -- Yves-Alexis Perez <corsac@debian.org>  Tue, 28 Aug 2018 11:29:22 +0200
+lightdm (1.28.0-0ubuntu1) cosmic; urgency=medium
 
-lightdm (1.26.0-1) experimental; urgency=medium
+  * New upstream release:
+    - Continue to shutdown session is removing X authority fails
+    - Set XDG_SEAT env variable in script hooks
+    - Fix small leak in XDMCP server
+    - liblightdm-qt: mark class PowerInterface as exported
+    - Fix one qt5 test being run instead of a qt4 one
+    - Remove use of deprecated g_type_class_add_private
+    - Modernize private data in objects
+    - Document XDG_SEAT_PATH in man page
+    - Fix install failing if link already exists
+    - Remove bashisms in configure.ac
 
-  * Moved the package to git on salsa.debian.org
-  * Updated the maintainer address to debian-xfce@lists.debian.org
-  * d/control: drop Emanuele and Simon from uploaders, thanks to them!
-  * d/watch: track 1.26 branch (maintained until 2023)
-  * d/watch updated to track 1.26 branch on github
-  * New upstream version 1.26.0
-  * d/p/01_set-default-path refreshed for new release
-  * d/p/06_change-user-dirs refreshed for new upstream
-  * d/p/08_reset-SIGPIPE-before-exec refreshed for new release
-  * install polkit, DBus and AccountsService file in lightdm package
-  * d/rules: migrate to dh_missing
-  * liblightdm-gobject-1-0 symbols file updated for new release
-  * liblightdm-qt-3-0.symbols: merge generic Qt symbols
-  * liblightdm-qt-3-0.symbols: sort generic symbols and mark some as optional
-  * liblightdm-qt-3-0.symbols: reorder symbols
-  * debian/liblightdm-qt-3-0.symbols:
-    - add new symbols in 1.26
-    - fix syntax
-    - remove private callback symbols which shouldn't be exported
-    - remove hidden/non-exported symbols
-  * d/p/03_liblightdm-qt3-add-header-visibility added, fix symbol visibility
-  * d/rules: mark symbols hidden by default
-  * d/compat bumped to 10
-  * d/control: update dh build-dep to 10 and drop obsolete dh-systemd
-  * d/rules: drop systemd addon and parallel (useless with compat 10)
-  * d/control: add build-dep on yelp-tools
-  * lightdm.postinst: don't recursively chown /var/lib/lightdm
-  * d/liblightdm-qt5-3-0.symbols:
-    - remove symbols marked as private
-    - add symbols introduced in 1.26
+ -- Robert Ancell <robert.ancell@canonical.com>  Thu, 30 Aug 2018 14:34:55 +1200
 
- -- Yves-Alexis Perez <corsac@debian.org>  Mon, 21 May 2018 17:37:09 +0200
+lightdm (1.26.0-0ubuntu2) cosmic; urgency=medium
 
-lightdm (1.18.3-5) experimental; urgency=medium
+  * Cherrypick upstream PR to add support for usr-merge in apparmor
+    profile. LP: #1784023
+
+ -- Dimitri John Ledkov <xnox@ubuntu.com>  Tue, 21 Aug 2018 00:05:28 +0100
+
+lightdm (1.26.0-0ubuntu1) bionic; urgency=medium
 
   * debian/control:
-    - add liblightdm-qt5-3-0 and liblightdm-qt5-3-dev (packaging bits imported
-    from Ubuntu)                                                closes: #871840
-    - add build-dep on qtbase5-dev
-    - move libraries to section libs
-    - update standards version to 4.1.0
-    - replace dh-systemd build-dep by a newer version of debhelper
-  * debian/liblightdm-qt5-3-0.install and debian/liblightdm-qt5-3-dev.install
-    added to ship relevant files to Qt5 library and development packages
-  * debian/liblightdm-qt-dev.install:
-    - narrow installation path to only cover Qt4 library.
-  * debian/rules:
-    - explicitly enable qt5 library
+    - Drop obsolete gnome-common build-depends and use explicit depends instead
 
- -- Yves-Alexis Perez <corsac@debian.org>  Thu, 21 Sep 2017 21:09:40 +0200
+ -- Robert Ancell <robert.ancell@canonical.com>  Thu, 22 Mar 2018 12:12:06 +1300
 
-lightdm (1.18.3-4) unstable; urgency=medium
+lightdm (1.25.2-0ubuntu1) bionic; urgency=medium
 
-  * debian/control:
-    - drop build-dep on libck-connector-dev and libdbus-glib-1-dev, thanks
-      Michael Biebl.                                            closes: #865037
-    - add depends on libx11-dev and libglib2.0-dev to liblightdm-gobject-dev
-      and drop libdbus-glib-1-dev, thanks again Michael.
+  * New upstream release:
+    - Fix incorrect use of ConsoleKit CanSuspend/Hibernate API
+    - Correctly install AccountsService interface file
+    - Fix build system to require C99
+    - Use standard format for arguments passed to qtchooser
+  * debian/lightdm.install:
+    - Install AccountsService D-Bus extension files
 
- -- Yves-Alexis Perez <corsac@debian.org>  Sat, 08 Jul 2017 16:26:27 +0200
+ -- Robert Ancell <robert.ancell@canonical.com>  Tue, 13 Feb 2018 16:33:14 +1300
 
-lightdm (1.18.3-3) unstable; urgency=medium
+lightdm (1.25.1-0ubuntu1) bionic; urgency=medium
 
-  * debian/control:
-    - replace libgcrypt11-dev by libgcrypt20-dev.               closes: #864121
-    - update standards version to 4.0.0.
-    - move gir1.2-lightdm-1 to section introspection.
-    - add dependency on gir1.2-lightdm-1 to liblightdm-gobject-dev.
-    - add dependency on ${gir:Depends} to gir1.2-lightdm-1.
+  * New upstream release:
+    - Fixes for VNC and XDMCP connections
+    - Use AccountsService extension system for extended greeter information
+    - Modernise code style
 
- -- Yves-Alexis Perez <corsac@debian.org>  Sun, 18 Jun 2017 19:46:04 +0200
+ -- Robert Ancell <robert.ancell@canonical.com>  Thu, 18 Jan 2018 09:43:40 +1300
 
-lightdm (1.18.3-2) unstable; urgency=medium
+lightdm (1.25.0-0ubuntu1) bionic; urgency=medium
 
-  * debian/lightdm.service:
-    - replace plymouth-quit.service since LightDM will quit plymouth by
-      itself, patch from Laurent Bigonville.                    closes: #854274
-  * debian/control: replace lsb-base build-dep by a dependency (in lightdm).
-  * debian/lightdm.lintian-overrides: add overrides for the command with path
-    because we actually check for the command existence.
+  * New upstream release:
+    - Support moc being called moc-qt5 (e.g. Fedora)
+    - Fail configure if MOC can't be found
+    - Expose autologin-session as a hint to the greeter
+    - Fix timed autologins not using autologin-session when no session specified
+  * debian/control:
+    - Use standards version 4.1.1
+    - Fix package sections
+    - Fix introspection dependencies
+    - Use recent debhelper
+  * debian/liblightdm-gobject-1-0.symbols:
+  * debian/liblightdm-qt-3-0.symbols:
+  * debian/liblightdm-qt5-3-0.symbols:
+    - Updated
+  * debian/watch:
+    - Update to use github for tarballs
 
- -- Yves-Alexis Perez <corsac@debian.org>  Sat, 25 Mar 2017 17:29:08 +0100
+ -- Robert Ancell <robert.ancell@canonical.com>  Mon, 20 Nov 2017 15:38:13 +1300
 
-lightdm (1.18.3-1) unstable; urgency=medium
+lightdm (1.24.0-0ubuntu1) artful; urgency=medium
 
-  * New upstream release.
-  * debian/patches:
-    - 07-Remove-unused-unititialized-file-descriptors-could-c dropped,
-      included upstream.
+  * New upstream release:
+    - No changes from 1.22
 
- -- Yves-Alexis Perez <corsac@debian.org>  Mon, 19 Dec 2016 10:54:11 +0100
+ -- Robert Ancell <robert.ancell@canonical.com>  Tue, 05 Sep 2017 10:42:34 +1200
 
-lightdm (1.18.2-4) unstable; urgency=medium
+lightdm (1.22.0-0ubuntu6) artful; urgency=medium
 
-  * Update debian/liblightdm-qt-3-0.symbols, many thanks Hilko Bengen:
-    - use demangled symbols
-    - add symbols only present on !x86 architectures.           closes: #842675
-  * debian/control:
-    - add dependency on lsb-base.
+  * debian/lightdm.config: When upgrading to this version, don't show the DM
+    selection prompt. We're trying to suppress the prompt and switch Ubuntu
+    desktop users to gdm3 smoothly, but lightdm's prompt is showing up as gdm3
+    is on the system when lightdm.config is executed. This means that if there
+    is a situation when upgraders to this version *should* be shown the
+    prompt, they won't be. If that is the case, we'll need to think again
+    about how to implement this.
 
- -- Yves-Alexis Perez <corsac@debian.org>  Sun, 18 Dec 2016 17:04:16 +0100
+ -- Iain Lane <iain.lane@canonical.com>  Tue, 18 Jul 2017 10:21:45 +0100
 
-lightdm (1.18.2-3) unstable; urgency=medium
+lightdm (1.22.0-0ubuntu5) artful; urgency=medium
 
-  * debian/control:
-    - add Suggests on xserver-xephyr.                           closes: #831298
-  * debian/patches:
-    - 08_reset-SIGPIPE-before-exec added, ignore SIGPIPE during LightDM life
-      but reset it before exec()ing children.                   closes: #823460
+  * Change back the default session to 'ubuntu', as it now corresponds to
+    GNOME Shell one with our ubuntu changes.
 
- -- Yves-Alexis Perez <corsac@debian.org>  Wed, 19 Oct 2016 20:56:07 +0200
+ -- Didier Roche <didrocks@ubuntu.com>  Tue, 20 Jun 2017 12:14:37 +0200
 
-lightdm (1.18.2-2) unstable; urgency=high
+lightdm (1.22.0-0ubuntu4) artful; urgency=medium
 
-  * Urgency=high for the RC bug fix.
-  * debian/patches
-    - 05_debianize-pam-files added, disable autologin by default for root user
-      (as with GDM3).
-    - 07-Remove-unused-unititialized-file-descriptors-could-c added,
-      cherry-picked from upstream. Avoid closing stdin which triggers a bug in
-      dbus preventing dbus-daemon to start.                     closes: #829557
-  * debian/01_debian.conf:
-    - update section name from SeatDefaults to Seat:*.
+  * SECURITY UPDATE: Guest session not confined (LP: #1663157)
+    - debian/50-disable-guest.conf:
+    - debian/lightdm.install:
+      - Disable guest sessions by default, this can be overridden by custom
+        configuration (e.g. /etc/lightdm/lightdm.conf)
+    - CVE-2017-8900    
 
- -- Yves-Alexis Perez <corsac@debian.org>  Mon, 11 Jul 2016 13:25:07 +0200
+ -- Robert Ancell <robert.ancell@canonical.com>  Mon, 19 Jun 2017 16:32:24 +1200
 
-lightdm (1.18.2-1) unstable; urgency=medium
+lightdm (1.22.0-0ubuntu3) artful; urgency=medium
 
-  * New upstream bugfix release.
-  * debian/control:
-    - update standards version to 3.9.8.
-    - run wrap-and-sort
+  * Change the default session to `gnome' (Shell).
 
- -- Yves-Alexis Perez <corsac@debian.org>  Tue, 28 Jun 2016 21:43:15 +0200
+ -- Iain Lane <iain@orangesquash.org.uk>  Tue, 06 Jun 2017 18:40:05 +0100
 
-lightdm (1.18.1-1) unstable; urgency=medium
+lightdm (1.22.0-0ubuntu2) zesty; urgency=medium
 
-  * New upstream bugfix release.
+  * SECURITY UPDATE: Directory traversal allowing arbitrary directory
+    ownership and privilege escalation (LP: #1677924)
+    - debian/guest-account.sh: Detect existing malicious guest user home dirs
+      before proceeding with guest user creation
+    - CVE-2017-7358
 
- -- Yves-Alexis Perez <corsac@debian.org>  Tue, 05 Apr 2016 21:26:36 +0200
+ -- Robert Ancell <robert.ancell@canonical.com>  Wed, 05 Apr 2017 10:34:32 +1200
 
-lightdm (1.18.0-1) unstable; urgency=medium
+lightdm (1.22.0-0ubuntu1) zesty; urgency=medium
 
-  * New upstream release.
-  * debian/watch updated for tracking 1.18 branch.
-  * debian/patches:
-    - 02_fix-apparmor-profile updated for new release.
+  * Allow guest sessions to talk to Mir (allowing unity8)
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Wed, 22 Mar 2017 09:46:38 +1300
+
+lightdm (1.21.5-0ubuntu1) zesty; urgency=medium
+
+  * New upstream release:
+    - Fix logic that checked if a session was being stopped.
+      This fixes a race condition that could cause logging into an existing
+      session from a greeter to not return to that session. (LP: #1656399)
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Wed, 22 Feb 2017 12:38:50 +1300
+
+lightdm (1.21.4-0ubuntu1) zesty; urgency=medium
+
+  * New upstream release:
+    - Use power management functions from ConsoleKit2 if available.
+    - Correctly pass return value from sessions to LightDM.
+    - Retry VT_WAITACTIVE if we get EINTR.
+    - Ignore SIGHUP by default.
+    - Use SA_RESTART with SIGPIPE.
+    - liblightdm-qt: Use liblightdm-gobject power methods instead of
+      re-implementing in Qt.
+  * debian/liblightdm-qt-3-0.symbols:
+  * debian/liblightdm-qt5-3-0.symbols:
+    - Add symbols files for C++ libraries
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Mon, 13 Feb 2017 16:31:48 +1300
+
+lightdm (1.21.3-0ubuntu1) zesty; urgency=medium
 
- -- Yves-Alexis Perez <corsac@debian.org>  Fri, 01 Apr 2016 11:56:59 +0200
+  * New upstream release:
+    - Fix crashes introduced in 1.21.2 due to environment variable changes
+    - Fix incorrect unref in XDMCP server code
+    - Fix logging warning 
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Fri, 09 Dec 2016 14:04:49 +1300
+
+lightdm (1.21.2-0ubuntu1) zesty; urgency=medium
+
+  * New upstream release:
+    - Use SA_RESTART on signals so we don't get interrupted reads (LP: #1648637)
+    - Use logind to terminate greeter sessions if it is available
+    - Load greeters from XDG_DATA_DIRS instead of compile time value
+    - Allow D-Bus interface to be disabled
+    - Always pass through LD_PRELOAD, LD_LIBRARY_PATH and PATH to
+      sessions/display servers
+  * debian/patches/terminate-session.patch:
+    - Merged upstream
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Fri, 09 Dec 2016 10:51:07 +1300
+
+lightdm (1.21.1-0ubuntu2) zesty; urgency=medium
+
+  Restore patch from 1.20.0-0ubuntu3:
+  * Add debian/patches/terminate-session.patch: Terminate leftover processes
+    in greeter session. It can happen that the greeter session does not
+    properly clean up itself on logout. This causes leaked processes like
+    settings-daemon which act on the user session as they share the same
+    $DISPLAY. Ask logind to terminate remaining processes in the greeter
+    session on closing, which is more robust than trying to fix every greeter.
+    (LP: #1637758)
+
+ -- Martin Pitt <martin.pitt@ubuntu.com>  Tue, 22 Nov 2016 09:43:39 +0100
+
+lightdm (1.21.1-0ubuntu1) zesty; urgency=medium
+
+  * New upstream release:
+    - Fix greeters crashing with unknown configuration keys (regression from
+      1.21.0) (LP: #1643276)
+    - Add an API verison to the greeter-daemon protocol for future enhancements
+    - More regression tests
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Wed, 23 Nov 2016 09:47:00 +1300
+
+lightdm (1.21.0-0ubuntu1) zesty; urgency=medium
+
+  * New upstream release:
+    - Add liblightdm functions for getting OS release information and the
+      message of the day.
+    - Warn if we find unknown keys in configuration.
+    - Fix .profile errors not showing in .xsession-errors log. (LP: #1639533)
+    - Remove duplicate Qt property in liblightdm.
+    - Fix and improve liblightdm API documentation.
+    - Minor GIR annotation fixes.
+  * debian/liblightdm-gobject-1-0.symbols:
+    - Updated
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Mon, 14 Nov 2016 11:40:20 +1300
+
+lightdm (1.20.0-0ubuntu2) zesty; urgency=medium
+
+  * debian/lightdm-greeter-session: Don't launch another session D-Bus if one
+    is already running (usually from dbus-user-session).
+
+ -- Martin Pitt <martin.pitt@ubuntu.com>  Tue, 25 Oct 2016 21:35:30 +0200
 
-lightdm (1.16.7-1) unstable; urgency=medium
+lightdm (1.20.0-0ubuntu1) yakkety; urgency=medium
 
-  * New upstream bugfix release.
+  * New upstream release:
+    - Use stable version number (no other changes)
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Sat, 15 Oct 2016 18:14:22 +1300
+
+lightdm (1.19.5-0ubuntu1) yakkety; urgency=medium
+
+  * New upstream release:
+    - Fix errors in documentation generation
+    - Improve documentation
+    - Fix guest AppArmor profile to allow guest sessions more access to the
+      upstart session socket (LP: #1627304)
+    - Fix small memory leak in liblightdm-gobject keyboard layout code
+  * debian/control:
+    - Drop duplicate dependency on gobject-introspection
+    - Alphabetically order dependencies
+  * debian/guest-session-auto.sh:
+    - Don't show guest session dialog in MATE (LP: #1627395)
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Fri, 30 Sep 2016 14:56:00 +1300
+
+lightdm (1.19.4-0ubuntu1) yakkety; urgency=medium
+
+  * New upstream release:
+    - Fix various issues in new in-session greeter code
+    - Fix user list memory management exposed by use of in-session greeters
+    - Fix some spurious warnings in the log
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Fri, 12 Aug 2016 11:07:57 +1200
+
+lightdm (1.19.3-0ubuntu1) yakkety; urgency=medium
+
+  * New upstream release:
+    - Fix in-session greeters not working for greeter logins
   * debian/control:
-    - make libaudit-dev build-dep linux-only, fix FTBFS on !linux.
-                                                                closes: #815343
-    - update standards version to 3.9.7.
+    - Use standards version 3.9.8
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Tue, 12 Jul 2016 10:10:41 +1200
+
+lightdm (1.19.2-0ubuntu1) yakkety; urgency=medium
+
+  * New upstream release:
+    * Add support for greeters running inside sessions. This is enabled by
+      setting X-LightDM-Allow-Greeter inside the session .desktop file.
+      The session can then use liblightdm to connect one greeter to the
+      daemon. The communication is done using a socket
+      (/var/run/lightdm/<user>/greeter-socket) that is accessible to any
+      process run by that user. Consider controlling access to this socket
+      using a MAC system such as AppArmor. (LP: #1582242)
+    * Report errors for all liblightdm methods. This will require existing
+      greeters to update their API usage. The ABI is unchanged.
+    * Handle EAGAIN correctly when daemons communicate with the daemon.
+    * Drop support for mir-container sessions - no-one ever used these.
+  * debian/liblightdm-gobject-1-0.symbols:
+    - Updated
 
- -- Yves-Alexis Perez <corsac@debian.org>  Mon, 22 Feb 2016 13:20:36 +0100
+ -- Robert Ancell <robert.ancell@canonical.com>  Wed, 29 Jun 2016 15:29:17 +1200
 
-lightdm (1.16.6-1) unstable; urgency=medium
+lightdm (1.19.1-0ubuntu1) yakkety; urgency=medium
 
-  * New upstream bugfix release.
-    - fix crash when XDMCP is enabled and a packet with no address is received
-    (CVE-2015-8316)
+  * New upstream release:
+  * debian/lightdm.dirs:
+    - Rename "xlocal" seat type to "local". Using "xlocal" will continue to work
+      but report a warning.
+    - Ensure user configuration directories /etc/lightdm/lightdm.conf.d and
+      /etc/guest-session exist
+    - Use MIR_SERVER_HOST_SOCKET instead of MIR_SOCKET to report compositor
+      socket to sessions. This used to work but no longer works in Mir 0.21
+      (LP: #1583624)
+    - Allow XMir to run on the xlocal seat using the new x-server-backend=mir
+      option
+    - Use only a single compositor on local seats (LP: #1594229)
+    - Fix Mir greeter log filename having "(null)" in the name (LP: #1590582)
+    - Copy fcitx/mozc rules so session works when these aren't installed
+      (LP #1581187)
+    - Revert lxsession change - it caused the AppArmor to fail to compile
+  * debian/rules:
+    - Revert dh_installinit change - we don't want to start LightDM on install
+      (LP: #1581106)
+  * debian/guest-account.sh:
+  * debian/guest-session-setup.sh:
+    - Source prefs.sh as privileged user to allow user modification
+      (LP: #1581853)
 
- -- Yves-Alexis Perez <corsac@debian.org>  Tue, 24 Nov 2015 21:03:33 +0100
+ -- Robert Ancell <robert.ancell@canonical.com>  Mon, 20 Jun 2016 16:18:36 +1200
 
-lightdm (1.16.5-1) unstable; urgency=medium
+lightdm (1.19.0-0ubuntu1) yakkety; urgency=medium
 
-  * New upstream bugfix release.
+  * New upstream release:
+    - Use /dev/tty0 instead of /dev/console for VT operations (LP: #1566073)
+    - Don't quit on SIGUSR1, SIGUSR2 or SIGHUP (LP: #960157)
+    - Improve XDMCP IPv6 address selection (LP: #1575200)
+    - Set XDMCP hostname field in to system hostname or configured value
+      (LP: #1578442)
+    - Allow fcitx and mozc to run in guest session (LP: #1509829)
+    - Fix lxsession running in guest session
+    - Drop support for legacy XMir
+    - Fix g_spawn compiler warning
+  * debian/rules:
+    - Fix usage of dh_installinit (LP: #1292990)
 
- -- Yves-Alexis Perez <corsac@debian.org>  Tue, 10 Nov 2015 10:56:27 +0100
+ -- Robert Ancell <robert.ancell@canonical.com>  Thu, 05 May 2016 12:23:45 +1200
 
-lightdm (1.16.3-1) unstable; urgency=medium
+lightdm (1.18.0-0ubuntu2) xenial; urgency=medium
 
-  * New upstream bugfix release.
+  * debian/control:
+    - Set libaudit and plymouth dependencies to linux-any (LP: #1563036)
 
- -- Yves-Alexis Perez <corsac@debian.org>  Sat, 17 Oct 2015 21:54:44 +0200
+ -- Robert Ancell <robert.ancell@canonical.com>  Tue, 29 Mar 2016 12:05:24 +1300
 
-lightdm (1.16.2-1) unstable; urgency=medium
+lightdm (1.18.0-0ubuntu1) xenial; urgency=medium
+
+  * New upstream release:
+    - Small documentation fixes
+  * debian/guest-account.sh:
+    - More forcibly remove guest sessions so they don't remain after logout
+      (LP: #1556516)
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Wed, 23 Mar 2016 15:09:54 +1300
+
+lightdm (1.17.6-0ubuntu1) xenial; urgency=medium
+
+  * New upstream release:
+    - Don't write $DISPLAY into tty line in utmp/btmp. (LP: #1380364)
+  * debian/guest-account.sh:
+  * debian/guest-session.profile:
+  * debian/rules:
+    - Don't overwrite .profile file from skeleton session, append it instead
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Tue, 15 Mar 2016 15:47:08 +1300
+
+lightdm (1.17.5-0ubuntu2) xenial; urgency=medium
 
-  * debian/patches:
-    - 05_debianize-pam-files updated, fix pam_env configuration and correctly
-      load /etc/environment.                                    closes: #798967
-  * debian/watch updated to track 1.16 branch.
-  * New upstream release.
-  * debian/liblightdm-gobject-1-0.symbols updated for new release.
   * debian/control:
-    - add build-dep on libaudit-dev for audit support.
+    - Fix liblightdm-qt5-3-dev to depend on qtbase5-dev, not libqt4-dev
 
- -- Yves-Alexis Perez <corsac@debian.org>  Sat, 19 Sep 2015 15:08:51 +0200
+ -- Michael Terry <mterry@ubuntu.com>  Wed, 03 Feb 2016 13:45:53 -0500
 
-lightdm (1.14.2-2) unstable; urgency=medium
+lightdm (1.17.5-0ubuntu1) xenial; urgency=medium
 
-  * debian/liblightdm-qt-3-0.symbols updated for symbols removed due to the
-    gcc 5 transition.                                           closes: #777981
+  * New upstream release:
+    - Set XDG_RUNTIME_DIR for ConsoleKit sessions. This is a recent change in
+      ConsoleKit2.
+  * debian/lightdm.postrm:
+    - Don't remove the lightdm user home directory on purge since we no longer
+      remove the user account. (LP: #1540933)
 
- -- Yves-Alexis Perez <corsac@debian.org>  Tue, 25 Aug 2015 21:02:40 +0200
+ -- Robert Ancell <robert.ancell@canonical.com>  Wed, 03 Feb 2016 12:55:04 +1300
 
-lightdm (1.14.2-1) unstable; urgency=medium
+lightdm (1.17.4-0ubuntu1) xenial; urgency=medium
 
-  * New upstream release.
+  * New upstream release:
+    - Add support for g_autoptr and liblightdm-gobject
+    - Fix dm-tool add-local-seat not working because LightDM is trying to
+      connect with TCP/IP (LP: #1529454)
 
- -- Yves-Alexis Perez <corsac@debian.org>  Sat, 27 Jun 2015 14:43:38 +0200
+ -- Robert Ancell <robert.ancell@canonical.com>  Mon, 25 Jan 2016 17:13:18 +1300
 
-lightdm (1.14.0-1) unstable; urgency=medium
+lightdm (1.17.3-0ubuntu1) xenial; urgency=medium
 
-  * debian/patches:
-    - 02_fix-apparmor-profile updated, following information from Mathieu
-      Parent.                                                   closes: #780456
-  * debian/watch updated to follow 1.14 branch.
-  * New upstream release.
-  * debian/lightdm.install:
-    - install bash completion files.
-  * debian/liblightdm-qt-3-0.symbols updated for new release.
-  * Upload to unstable.
+  * New upstream release:
+    - Don't enable the hardware cursor in Unity System Compositor anymore.
+      Unity 8 now correctly provides its own cursor and other shells should too
+      (LP: #1517615)
+  * debian/guest-session.profile:
+    - Fix guest session dialog sleep (LP: #1526004)
 
- -- Yves-Alexis Perez <corsac@debian.org>  Wed, 06 May 2015 22:42:17 +0200
+ -- Robert Ancell <robert.ancell@canonical.com>  Thu, 17 Dec 2015 13:12:24 +1300
 
-lightdm (1.12.3-1) experimental; urgency=medium
+lightdm (1.17.2-0ubuntu1) xenial; urgency=medium
 
-  * New upstream release.
-  * debian/patches:
-    - 02_fix-apparmor-profile edited, dropped parts unneeded anymore with more
-      recent AppArmor.
+  * New upstream release:
+    - Handle XDMCP Request packet with no addresses. (LP: #1516831)
+    - Don't start LightDM if the XDMCP server is configured with a key that
+      doesn't exist. (LP: #1517685)
+    - Add IP addresses to XDMCP log messages.
+    - Refactor XDMCP error handling.
+    - Add more XDMCP tests.
 
- -- Yves-Alexis Perez <corsac@debian.org>  Fri, 13 Mar 2015 22:36:14 +0100
+ -- Robert Ancell <robert.ancell@canonical.com>  Fri, 20 Nov 2015 15:34:08 +1300
 
-lightdm (1.12.2-1) experimental; urgency=medium
+lightdm (1.17.1-0ubuntu2) xenial; urgency=medium
 
-  * New upstream release.
-  * debian/patches:
-    - 01_set-default-path and 06_change-user-dirs refreshed for new release.
-    - 03_use-desktopnames-properties dropped, included upstream.
-  * debian/liblightdm-gobject-1-0.symbols updated for new symbols.
-  * debian/liblightdm-qt-3-0.symbols updated for new symbols.
+  * debian/guest-session-setup.sh:
+    - don't error out if there is no prefs.sh configuration,
+      should fix the guest session not starting in xenial (lp: #1515704)
 
- -- Yves-Alexis Perez <corsac@debian.org>  Sun, 08 Mar 2015 22:06:41 +0100
+ -- Sebastien Bacher <seb128@ubuntu.com>  Fri, 13 Nov 2015 11:52:06 +0100
 
-lightdm (1.10.3-3) unstable; urgency=medium
+lightdm (1.17.1-0ubuntu1) xenial; urgency=medium
 
-  * debian/patches:
-    - 06_change-user-dirs edited, don't use /var/lib/lightdm directly (it
-    seems to confuse lightdm and break .dmrc saving) but use
-    /var/lib/lightdm/data and create it at runtime.             closes: #767359
+  * New upstream release:
+    - Add a backup-logs option that can be used to disable existing logging
+      files having a .old suffix added to them.
+    - Add LC_PAPER, LC_NAME, LC_ADDRESS, LC_TELEPHONE, LC_MEASUREMENT and
+      LC_IDENTIFICATION variables to the list of inherited locale variables.
+      (LP: #1511259)
+    - Implement XDMCP ForwardQuery. (LP: #1511545)
+    - Fix small memory leak in XDMCP logging code. 
 
- -- Yves-Alexis Perez <corsac@debian.org>  Tue, 04 Nov 2014 21:58:15 +0100
+ -- Robert Ancell <robert.ancell@canonical.com>  Tue, 03 Nov 2015 16:28:54 +1300
 
-lightdm (1.10.3-2) unstable; urgency=medium
+lightdm (1.17.0-0ubuntu1) xenial; urgency=medium
 
-  * debian/patches:
-    - 03_use-desktopnames-properties added, from upstream bzr r1984, use
-    DesktopNames property in session .desktop file instead of
-    X-LightDM-DesktopName since GDM uses that key too.
+  * New upstream release:
+    - Disable log backups - this interferes with logrotate.
+    - Support using libaudit to generate audit events.
+    - Handle trailing whitespace on boolean values in configuration.
+    - Update example configuration to more correctly match allowed options.
+    - Fix unnecessary X server from being launched when locking seats.
+    - Check the version of the X server we are running so we correctly pass
+      -listen tcp when required.
+    - Allow reading /proc/<PID>/net/dev from within a guest session.
+      (LP: #1442609)
+    - Allow guest sessions to write in /{,var/}run/screen folder.
+      (LP: #1442611)
+    - Update guest-session AppArmor profile to be suitable for openSUSE.
+    - Fix apparmor profiles for running Chromium in guest sessions.
+      (LP: #1504049, LP: #1464958)
+    - Fix configure failing without Vala installed.
+  * Build with multi-arch
+  * debian/lightdm.logrotate:
+    - Use logrotate to handle log files placed in the default system log
+      directory (/var/log/lightdm).
+  * debian/guest*:
+    - Optimize guest account creation, use OverlayFS of AuFS if available.
 
- -- Yves-Alexis Perez <corsac@debian.org>  Fri, 24 Oct 2014 14:32:07 +0200
+ -- Robert Ancell <robert.ancell@canonical.com>  Wed, 28 Oct 2015 15:02:46 +1300
 
-lightdm (1.10.3-1) unstable; urgency=medium
+lightdm (1.16.0-0ubuntu1) wily; urgency=medium
 
-  * New upstream release.
-  * debian/patches:
-    - 04_fix-double-free-configuration-key-source dropped, included upstream.
-  * debian/upstream/signing-key.asc added, add PGP key for Robert Ancell
-    (0x18EAA1890F7C882E).
-  * debian/watch updated, add mangle option to check PGP signatures.
+  * New upstream release:
+    - Update default configuration better explaining the seat configuration name
+      matching and dropping references to the obsolete [SeatDefaults] section
 
- -- Yves-Alexis Perez <corsac@debian.org>  Thu, 09 Oct 2014 13:01:51 +0200
+ -- Robert Ancell <robert.ancell@canonical.com>  Mon, 07 Sep 2015 10:52:54 +1200
 
-lightdm (1.10.2-3) unstable; urgency=medium
+lightdm (1.15.3-0ubuntu3) wily; urgency=medium
 
-  * debian/patches:
-    - 04_fix-double-free-configuration-key-source added, fix crash when
-      key sources are defined twice in config files.            closes: #762211
-    - 06_change-user-dirs added, use /var/lib/lightdm as user dirs, since it's
-      the home dir for lightdm user since the beginning and it's already
-      correctly created.                                        closes: #749243
-  * debian/control:
-    - update standards version to 3.9.6.
+  * debian/lightdm.postrm:
+    - Don't remove the lightdm user/group on package removal. This fails if the
+      user is still in use and leaves the risk of another user being created
+      with the same UID. (LP: #924224)
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Wed, 26 Aug 2015 09:35:56 +0100
+
+lightdm (1.15.3-0ubuntu2) wily; urgency=medium
+
+  * debian/lightdm.lightdm-greeter.pam:
+  * debian/lightdm.pam:
+    - Load pam_kwallet5 in pam profile (kwallet and kwallet5 are distinct
+      entities requiring sepreate unlocking)
+
+ -- Harald Sitter <sitter@kde.org>  Mon, 24 Aug 2015 12:50:00 +0200
 
- -- Yves-Alexis Perez <corsac@debian.org>  Wed, 08 Oct 2014 22:51:19 +0200
+lightdm (1.15.3-0ubuntu1) wily; urgency=medium
 
-lightdm (1.10.2-2) unstable; urgency=medium
+  * New upstream release:
+    - Drop Xorg option -sharevts. It's no longer required for non-seat0 X
+      servers since xorg-server release 1.16.
+  * debian/patches/autologin-session-workaround.patch:
+    - Workaround faulty setting from user-setup package (LP: #1484083)
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Mon, 17 Aug 2015 10:39:27 +1200
+
+lightdm (1.15.2-0ubuntu2) wily; urgency=medium
 
-  * debian/patches:
-    - 05_debianize-pam-files edited, don't log an error if
-    libpam-gnome-keyring is not installed.                      closes: #683508
   * debian/control:
-    - put lipam-systemd before consolekit in alternative.       closes: #763187
-  * debian/lightdm.postinst:
-    - make sure /var/lib/lightdm always exists.                 closes: #762218
+    - Add build-depends on valac
 
- -- Yves-Alexis Perez <corsac@debian.org>  Sun, 28 Sep 2014 21:58:17 +0200
+ -- Robert Ancell <robert.ancell@canonical.com>  Mon, 10 Aug 2015 16:38:04 +1200
 
-lightdm (1.10.2-1) unstable; urgency=medium
+lightdm (1.15.2-0ubuntu1) wily; urgency=medium
 
-  * debian/patches:
-    - 06_allow_libpamsystemd_and_ck_together dropped, ConsoleKit is now
-      deprecated (wether we're using init=systemd or not).
-  * New upstream release.
+  [ Robert Ancell ]
+  * New upstream release:
+    - Support Wayland sessions. (LP: #888391)
+    - Implement autologin-session option.    
+    - Generate Vala bindings from GIR instead of manually writing them. This
+      fixes some small bugs in both the Vala and GIR bindings.
+    - Don't remove autotools generated files in distclean.
+  * debian/control:
+    - Use standards version 3.9.6
   * debian/liblightdm-gobject-1-0.symbols:
-    - update symbol file, add lightdm_user_get_uid.
+    - Updated
 
- -- Yves-Alexis Perez <corsac@debian.org>  Wed, 17 Sep 2014 21:48:07 +0200
+  [ Gunnar Hjalmarsson ]
+  * debian/lightdm-session:
+    - Prevent ~/.bashrc from being sourced when ~/.profile is sourced.
+      (LP: #1482641)
 
-lightdm (1.10.1-3) unstable; urgency=medium
+ -- Robert Ancell <robert.ancell@canonical.com>  Mon, 10 Aug 2015 16:11:13 +1200
 
-  * debian/rules:
-    - stop installing apparmor guest profile.                   closes: #747252
+lightdm (1.15.1-0ubuntu2) wily; urgency=medium
+
+  * debian/guest-session-auto.sh:
+    - Disable screenlocks for guest sessions on MATE, XFCE, Pantheon
+      (LP: #1481804)
   * debian/control:
-    - make the libpam-systemd dependency linux-any.
+    - Switch build-depends from transitional libgcrypt11-dev to libgcrypt20-dev
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Fri, 07 Aug 2015 12:50:38 +1200
+
+lightdm (1.15.1-0ubuntu1) wily; urgency=medium
+
+  * New upstream release:
+    - Fix default X server command set to XMir in 1.15.0.
+    - Internally merge the [SeatDefaults] and [Seat:*] sections together. The
+      previous method meant configuration snippets using a mix of old and new
+      naming would not correctly override eachother.
+    - Use IP address of XDMCP requests to contact X server if available.
+      (LP: #1481561)
+    - Add an option for XDMCP and VNC servers to only listen on one address.
+      (LP: #1390808)
+    - Fix configuration file warnings so they go to the log, not stderr.
+    - Warn if deprecated options logind-load-seats or xdg-seat are in
+      configuration. (LP: #1468057)
+    - Improve IP addresses in XDMCP log messages.
+    - Fix typo in dm-tool man page. (LP: #1470587)
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Wed, 05 Aug 2015 16:53:39 +1200
+
+lightdm (1.15.0-0ubuntu1) wily; urgency=medium
+
+  * New upstream release:
+    - Deprecate [SeatDefaults] in favour of [Seat:*]
+    - Use new Xmir binary when running X under Unity System Compositor
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Mon, 18 May 2015 13:38:23 +1200
 
- -- Yves-Alexis Perez <corsac@debian.org>  Wed, 11 Jun 2014 20:55:38 +0200
+lightdm (1.14.0-0ubuntu2) vivid; urgency=medium
 
-lightdm (1.10.1-2) unstable; urgency=medium
+  * Quiesce initctl errors when not running under upstart. (LP: #1414420)
 
-  * debian/patches:
-    - 02_fix-apparmor-profile updated, fix chromium path in apparmor
-      abstraction profile.                                      closes: #742829
+ -- Martin Pitt <martin.pitt@ubuntu.com>  Wed, 08 Apr 2015 14:37:17 +0200
+
+lightdm (1.14.0-0ubuntu1) vivid; urgency=medium
+
+  * New upstream release:
+    - Initialize file descriptor handles so we don't attempt to close stdin by
+      accident.
+    - Fix small errors detected by scan-build (clang).
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Tue, 24 Mar 2015 10:25:22 +1300
+
+lightdm (1.13.2-0ubuntu1) vivid; urgency=medium
+
+  * New upstream release:
+    - Fix pipe file descriptor leak for each greeter session. (LP: #1190344)
+    - Support active session changing via logind. (LP: #1371378)
+    - Don't allow liblightdm-gobject to be disabled. It is required for
+      liblightdm-qt and the tests so it's not worth supporting builds without
+      it.
+    - Add bash autocompletion support
+  * debian/lightdm.install:
+    - Install autocompletion configuration
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Tue, 10 Mar 2015 14:54:29 +1300
+
+lightdm (1.13.1-0ubuntu2) vivid; urgency=medium
+
+  * debian/guest-account.sh:
+    - Rename variables to make script compatible with Bash (LP: #1411100)
   * debian/control:
-    - add libpam-systemd as consolekit alternative dependency.  closes: #747619
+    - Set required version of bash
 
- -- Yves-Alexis Perez <corsac@debian.org>  Sat, 17 May 2014 15:31:23 +0200
+ -- Robert Ancell <robert.ancell@canonical.com>  Wed, 21 Jan 2015 12:20:42 +1300
 
-lightdm (1.10.1-1) unstable; urgency=medium
+lightdm (1.13.1-0ubuntu1) vivid; urgency=medium
 
-  * New upstream release.
-  * debian/patches:
-    - really apply 02_fix-apparmor-profile, update it.  (really) closes:#736075
+  * New upstream release:
+    - Don't attempt generate D-Bus seat/session removal signals on shutdown.
+    - Add missing method QLightDM::Greeter::cancelAutologin
 
- -- Yves-Alexis Perez <corsac@debian.org>  Tue, 06 May 2014 07:43:05 +0200
+ -- Robert Ancell <robert.ancell@canonical.com>  Wed, 14 Jan 2015 14:00:02 +1300
 
-lightdm (1.10.0-3) unstable; urgency=medium
+lightdm (1.13.0-0ubuntu2) vivid; urgency=medium
 
+  * debian/config-error-dialog.sh:
+  * debian/lightdm-session:
+    - Use bash for the session to improve error handling (LP: #678421)
   * debian/control:
-    - add build-dep on dh-systemd.
-  * debian/lightdm.postinst:
-    - handle symlinks for systemd service files according to the currently
-      selected display manager.
-  * debian/lightdm.service:
-    - add systemd service file, thanks Martin Pitt for the work.closes: #733220
+    - Depend on bash
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Tue, 25 Nov 2014 11:28:11 +1300
+
+lightdm (1.13.0-0ubuntu1) vivid; urgency=medium
+
+  * New upstream release:
+    - Fix crash when having configuration keys defined in multiple places
+      (LP: #1377373)
+    - Fix pipe file descriptor leak for each session login / authentication
+      (LP: #1190344)
+    - Use correct syntax for DesktopNames key in session files (LP: #1383321)
+    - Match seat configuration with globbing (LP: #1364911)
+    - Allow user switching in multi-seat until bug stopping greeter showing on
+      logout is fixed
+    - Disable log message when AccountsService users change (LP: #1376357)
+    - Update AppArmor scripts, requires AppArmor 2.9
+    - Update tests to run better on servers
+  * debian/config-error-dialog.sh:
+    - Show warning dialog instead of interrupted login if syntax error in
+      ~/.profile etc (LP: #678421)
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Thu, 13 Nov 2014 11:08:17 +1300
+
+lightdm (1.12.0-0ubuntu2) utopic; urgency=medium
+
+  * Restore 1.11.9-0ubuntu2, it was reverted by error in the previous upload
+
+ -- Sebastien Bacher <seb128@ubuntu.com>  Tue, 30 Sep 2014 11:25:09 +0200
+
+lightdm (1.12.0-0ubuntu1) utopic; urgency=medium
+
+  * New upstream release:
+    - Fix assumption that the display server is X when running scripts.
+      (LP: #1305006)
+    - Don't access .dmrc files until information from these files is required.
+      (LP: #1370852)
+  * debian/patches/01_transition_ubuntu2d_ubuntu_desktop.patch:
+    - Dropped, Unity 2D doesn't exist and all users will have been migrated in
+      14.04 LTS
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Tue, 30 Sep 2014 15:11:51 +1300
+
+lightdm (1.11.9-0ubuntu2) utopic; urgency=medium
+
+  * debian/patches/06_apparmor-unix.patch: update for addr= rules
+  * debian/patches/07_apparmor-chrome.patch:
+    - allow new path to Google Chrome (LP: #1361372)
+    - allow read of @{PROC}/[0-9]*/statm
+  * debian/patches/08_apparmor-updates.patch:
+    - allow 'rw' on /etc/compizconfig/unity.ini (continue workaround for
+     LP: 697678)
+    - allow read of @{PROC}/sys/vm/overcommit_memory
+    - allow write to /run/uuidd/request
+
+ -- Jamie Strandboge <jamie@ubuntu.com>  Thu, 18 Sep 2014 12:18:12 -0500
+
+lightdm (1.11.9-0ubuntu1) utopic; urgency=medium
+
+    * New upstream release:
+     - Don't check the logind CanGraphical seat property unless
+       login-check-graphical option is set to true. There are too many cases of
+       drivers that don't set the appropriate flags for this feature to work.
+       (LP: #1365336)
+     - Make socket writing code used between greeter and daemon more robust to
+       errors.
+     - Fix small memory leaks.
+     - Improve logging messages.
+     - Test improvements.
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Wed, 10 Sep 2014 15:47:36 +1200
+
+lightdm (1.11.8-0ubuntu2) utopic; urgency=medium
+
+  * debian/patches/06_apparmor-unix.patch: updates for unix socket mediation
+    (LP: #1362199)
+
+ -- Jamie Strandboge <jamie@ubuntu.com>  Fri, 05 Sep 2014 17:34:03 -0500
+
+lightdm (1.11.8-0ubuntu1) utopic; urgency=medium
+
+  * New upstream release:
+    - Rework logind code that gets session ID. The previous method was racy
+      and a change in lightdm 1.11.7 led to a lockup when this race occurred.
+      (LP: #1364725)
+    - Handle CanGraphical property on logind seats
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Wed, 03 Sep 2014 17:26:36 +1200
+
+lightdm (1.11.7-0ubuntu1) utopic; urgency=medium
+
+  * New upstream release:
+    - Use logind to provide the list of seats to use. Deprecate the old method
+      of manually defining seats.
+    - Add --show-config option that shows combined configuration.
+    - Drop the surfaceflinger seat type. This was a temporary solution while
+      Ubuntu Phone was migrating to Mir.
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Wed, 27 Aug 2014 16:25:53 +1200
+
+lightdm (1.11.6-0ubuntu1) utopic; urgency=medium
+
+  * New upstream release:
+    * Add a seat option 'allow-user-switching' that can disable all user
+      switching for that seat
+    * Add a new session type 'mir-container' that allows the session to run
+      inside a custom system compositor (LP: #1359332)
+    * Only seat0 takes VT from Plymouth
+    * Removed unused GAsyncResultIface.is_tagged as this attribute was not
+      available in earlier versions of Glib I/O.
+    * Abort autogen if yelp-tools not installed
+    * Return correct errors for D-Bus calls
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Fri, 22 Aug 2014 09:10:29 +1200
+
+lightdm (1.11.5-0ubuntu1) utopic; urgency=medium
+
+  * New upstream release:
+    - Make PAM services configurable (LP: #1348251)
+  * debian/guest-account:
+  * debian/lightdm.install:
   * debian/rules:
-    - use dh systemd addon and configure it to not start the lightdm service
-      at once.
+  * debian/patches/05_translate_debian_files.patch:
+    - Make the real name of a guest account translatable (LP: #1177713)
 
- -- Yves-Alexis Perez <corsac@debian.org>  Mon, 28 Apr 2014 21:15:45 +0200
+ -- Robert Ancell <robert.ancell@canonical.com>  Mon, 28 Jul 2014 13:40:46 +1200
 
-lightdm (1.10.0-2) unstable; urgency=medium
+lightdm (1.11.4-0ubuntu1) utopic; urgency=medium
 
-  * Upload to unstable.
+  * New upstream release:
+    - Do timed autologin each time you are returned to the greeter
+    - Fix tests failing with Qt 5.3 due to it checking getuid/geteuid which we are faking
+    - dm-tool: Warn if trying to switch to user without username
+  * debian/lightdm.service:
+    - Don't test for specific installation path
 
- -- Yves-Alexis Perez <corsac@debian.org>  Tue, 22 Apr 2014 23:33:26 +0200
+ -- Robert Ancell <robert.ancell@canonical.com>  Tue, 01 Jul 2014 15:50:16 +1200
 
-lightdm (1.10.0-1) experimental; urgency=medium
+lightdm (1.11.3-0ubuntu1) utopic; urgency=medium
 
-  * New upstream stable release.
-  * debian/watch updated to track 1.10 branch.
+  * New upstream release:
+    - Fix Mir sessions broken with unity-system-compositor 0.3.
+    - Add back Vala bindings for LightDM.Greeter.connect_sync - just mark as
+      deprecated.
+    - Put unity-system-compositor's mir_socket under /run rather than /tmp.
+      (LP: #1325995)
+    - Fix building with clang (3.5) and -Werror.
+    - Correct section name in default users.conf file.
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Thu, 05 Jun 2014 16:07:14 +1200
+
+lightdm (1.11.2-0ubuntu3) utopic; urgency=high
+
+  * No change rebuild against new dh_installinit, to call update-rc.d at
+    postinst.
+
+ -- Dimitri John Ledkov <xnox@ubuntu.com>  Wed, 28 May 2014 11:09:29 +0100
 
- -- Yves-Alexis Perez <corsac@debian.org>  Tue, 08 Apr 2014 22:54:47 +0200
+lightdm (1.11.2-0ubuntu2) utopic; urgency=medium
 
-lightdm (1.9.13-1) experimental; urgency=medium
+  * Integration plymouth systemd system job with plymouth services.
 
-  * New upstream development release.
+ -- Dimitri John Ledkov <xnox@ubuntu.com>  Sat, 17 May 2014 19:18:41 +0100
 
- -- Yves-Alexis Perez <corsac@debian.org>  Tue, 25 Mar 2014 22:04:52 +0100
+lightdm (1.11.2-0ubuntu1) utopic; urgency=medium
 
-lightdm (1.9.11-1) experimental; urgency=medium
+  * New upstream release:
+    - Add liblightdm method to get user UID
+    - DBus-activate logind
+    - Check for libgcrypt at configure time
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Fri, 16 May 2014 10:55:37 +1200
+
+lightdm (1.11.1-0ubuntu1) utopic; urgency=medium
+
+  * New upstream release:
+    - Allow greeters to remain runing to reduce startup time when switching to a
+      greeter
+    - Add asynchronous methods to liblightdm 
+  * debian/lightdm.upstart:
+    - Respawn lightdm daemon if it is unexpectedly closed
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Tue, 06 May 2014 17:07:44 +1200
+
+lightdm (1.11.0-0ubuntu1) utopic; urgency=medium
+
+  * New upstream release:
+    - When switching to an existing session refresh PAM credentials and end
+      session cleanly so no resources leak. (LP: #1296276)
+    - Support new standard DesktopNames field in session files
+    - Set XDG_SESSION_TYPE and XDG_SESSION_DESKTOP as used by systemd
+    - Emit DBus PropertiesChanged when Sessions/Seats properties change. Also
+      add SessionAdded/SessionRemoved signals to Seat interface
 
-  * New upstream development release.
-  * debian/watch updated to track versions over 10.
-  * debian/patches:
-    - 02_fix-build-glib-before-2.40 removed, included upstream.
+  [ Harald Sitter ]
+  * Add pam_kwallet to pam configs. (LP: #1305307)
+  
+  [ Martin Pitt ]
+  * Add systemd integration
 
- -- Yves-Alexis Perez <corsac@debian.org>  Thu, 13 Mar 2014 09:19:21 +0100
+ -- Robert Ancell <robert.ancell@canonical.com>  Mon, 28 Apr 2014 10:32:37 +1200
+
+lightdm (1.10.0-0ubuntu3) trusty; urgency=medium
+
+  * debian/patches/06_apparmor_chromium_updates.patch: allow oxide based
+    browsers and Google Chrome to run in the guest session
+    - LP: #1298021
+    - LP: #1306560
+
+ -- Jamie Strandboge <jamie@ubuntu.com>  Fri, 11 Apr 2014 09:24:09 -0500
+
+lightdm (1.10.0-0ubuntu2) trusty; urgency=medium
+
+  * Add pam_kwallet to pam configs. (LP: #1305307)
+
+ -- Harald Sitter <apachelogger@kubuntu.org>  Thu, 10 Apr 2014 10:27:18 +0200
+
+lightdm (1.10.0-0ubuntu1) trusty; urgency=medium
+
+  * New upstream release:
+    - Fix return value for Vala bindings to Greeter.start_session_sync
+    - Fix logging when failing to find session
 
-lightdm (1.9.9-1) experimental; urgency=medium
+ -- Robert Ancell <robert.ancell@canonical.com>  Tue, 08 Apr 2014 16:12:46 +1200
 
-  * New upstream development release.
-  * debian/liblightdm-gobject-1-0.symbols, debian/liblightdm-qt-3-0.symbols:
-    - add a symbol file to handle library dependencies more carefully.
-  * debian/patches:
-    - 02_fix-build-glib-before-2.40 added, fix FTBFS with glib before 2.40.
+lightdm (1.9.15-0ubuntu1) trusty; urgency=medium
 
- -- Yves-Alexis Perez <corsac@debian.org>  Wed, 12 Mar 2014 11:00:42 +0100
+  * debian/patches/06_guest_signal_and_ptrace_aa_rules.patch,
+    debian/patches/07_guest_proc_pid_stat_aa_rule.patch: Dropped, the fixes
+    are upstream
 
-lightdm (1.9.8-1) experimental; urgency=medium
+ -- Tyler Hicks <tyhicks@canonical.com>  Mon, 07 Apr 2014 10:33:46 -0500
 
-  * New upstream development release.
+lightdm (1.9.14-0ubuntu2) trusty; urgency=medium
 
- -- Yves-Alexis Perez <corsac@debian.org>  Fri, 21 Feb 2014 22:05:10 +0100
+  * debian/patches/06_guest_signal_and_ptrace_aa_rules.patch: Grant
+    permission for guest session processes to signal and ptrace each
+    other (LP: #1298611)
+  * debian/patches/07_guest_proc_pid_stat_aa_rule.patch: Grant permission for
+    guest session processes to read /proc/<PID>/stat. This prevents AppArmor
+    denial messages caused by bamfdaemon and common utilities such as ps and
+    killall. (LP: #1301625)
 
-lightdm (1.9.6-1) experimental; urgency=medium
+ -- Tyler Hicks <tyhicks@canonical.com>  Thu, 03 Apr 2014 02:48:51 -0500
 
-  * New upstream development release.
+lightdm (1.9.14-0ubuntu1) trusty; urgency=medium
 
- -- Yves-Alexis Perez <corsac@debian.org>  Wed, 22 Jan 2014 21:18:16 +0100
+  * New upstream release:
+    - Pass --enable-hardware-greeter to unity-system-compositor for Mir sessions
+      on xlocal seats (LP: #1289072)
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Thu, 03 Apr 2014 09:07:39 +1300
+
+lightdm (1.9.13-0ubuntu1) trusty; urgency=medium
+
+  * New upstream release:
+    - Handle not getting an X connection when attempting to get X layouts.
+      (LP: #1235915)
+    - Read config data from both XDG_DATA_DIRS and XDG_CONFIG_DIRS.
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Tue, 25 Mar 2014 14:45:54 +1300
+
+lightdm (1.9.12-0ubuntu1) trusty; urgency=medium
+
+  [ Robert Ancell ]
+  * New upstream release:
+    - Ensure X authority is written before X server is started (LP: #1260220)
+    - Activate after unlocking a logind session
+
+  [ Gunnar Hjalmarsson ]
+  * debian/guest-account:
+    - Disable Unity shortcut hint. (LP: #1292178)
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Mon, 17 Mar 2014 16:49:37 +1300
+
+lightdm (1.9.11-0ubuntu2) trusty; urgency=medium
+
+  * Rebuild against Qt 5.2.1.
+
+ -- Timo Jyrinki <timo-jyrinki@ubuntu.com>  Thu, 13 Mar 2014 07:41:22 +0200
+
+lightdm (1.9.11-0ubuntu1) trusty; urgency=medium
+
+  * New upstream release:
+    - Don't use g_hash_table_get_keys_as_array, it's a glib 2.40 feature
 
-lightdm (1.9.5-1) experimental; urgency=medium
+ -- Robert Ancell <robert.ancell@canonical.com>  Thu, 13 Mar 2014 13:42:04 +1300
 
-  * New upstream development release.
-  * debian/watch updated to track 1.9 branch.
-  * debian/patches:
-    - 04_dont-add-pkglibexecdir-path dropped, gdm-flexiserver script has been
-      dropped from LightDM so the PATH addition was dropped as well.
-    - 01_set-default-path and 06_allow_libpamsystemd_and_ck_together
-      refreshed.
+lightdm (1.9.10-0ubuntu1) trusty; urgency=medium
+
+  * New upstream release:
+    - Honour session type requested by greeter for guest sessions (LP: #1285132)
+    - Log to wtmp and btmp. (LP: #1027805)
+    - Implement guest-session config option
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Thu, 13 Mar 2014 11:50:38 +1300
+
+lightdm (1.9.9-0ubuntu1) trusty; urgency=medium
+
+  * New upstream release:
+    - Handle signals being received in child processes instead of treating them
+      like they are received in the daemon.
+    - Set utmp ut_line to the display name (i.e. :0) to match what other
+      programs expect (e.g. 'w').
+    - Fix lightdm_greeter_ensure_shared_data_dir_sync returning the wrong value.
+    - Fix shared data tests so you can run test suite without root again.
+    - Be extra careful not to call any non thread safe function after a fork.
+    - Fix some small memory leaks detected by valgrind.
+    - Fix process shutdown code to stop generating confusing warnings
+    - Fix more double removal of source IDs.
+    - Test improvements.
+
+  [ Gunnar Hjalmarsson ]
+  * debian/patches/04_language_handling.patch:
+    - Make lightdm_get_language() return a language with a short form language
+      code (LP: #1276072).
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Tue, 11 Mar 2014 09:17:15 +1300
+
+lightdm (1.9.8-0ubuntu1) trusty; urgency=medium
+
+  * New upstream release:
+    - Add support for shared user data directories between the greeter and user
+      sessions.
+    - Refactor LightDMUser and User classes to use the same code internally.
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Thu, 20 Feb 2014 16:02:35 +1300
+
+lightdm (1.9.7-0ubuntu2) trusty; urgency=medium
+
+  * debian/lightdm.postinst: Guard the chown'ing of /var/lib/lightdm/, it
+    might fail on the .gvfs mount. (LP: #1279428)
+
+ -- Martin Pitt <martin.pitt@ubuntu.com>  Wed, 12 Feb 2014 18:15:55 +0100
+
+lightdm (1.9.7-0ubuntu1) trusty; urgency=medium
+
+  * New upstream release:
+    - Correctly invoke PAM to change authentication token. (LP: #1270118)
+    - Make xdg-seat a core property of a seat and always pass it to X servers.
+    - Qt bindings: properly hand over prompt and message type.
+    - Add warning flags where they are missing and fix the resulting warnings.
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Fri, 07 Feb 2014 15:40:20 +0000
+
+lightdm (1.9.6-0ubuntu3) trusty; urgency=medium
+
+  [ Gunnar Hjalmarsson ]
+  * debian/guest-session-auto.sh:
+    - Export gettext variables.
+  * debian/guest-account:
+    - Chown $HOME after /etc/guest-session/prefs.sh has been sourced.
+  * debian/patches/05_translate_guest_session_dialog.patch:
+    - Make the translatable strings in debian/guest-session-auto.sh end up in
+      the PO files.
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Wed, 05 Feb 2014 10:23:52 +0000
+
+lightdm (1.9.6-0ubuntu2) trusty; urgency=medium
+
+  * Clear default tty on lightdm shutdown, to avoid brief display of text
+    messages on shutdown. (LP: #967229)
+
+ -- Dimitri John Ledkov <xnox@ubuntu.com>  Tue, 04 Feb 2014 10:12:05 +0000
+
+lightdm (1.9.6-0ubuntu1) trusty; urgency=medium
+
+  * New upstream release:
+    - Support Mir sessions in xlocal seats by starting a unity system compositor
+      for each session.
+    - Add --screen and --fullscreen options to "dm-tool add-nested-seat"
+    - Don't try to compile liblightdm-qt if liblightdm-gobject will not be
+      compiled.
+    - Stop greeters warning if sessions directories not present or lightdm.conf
+      doesn't exist - this is valid.
+    - Fix log name for Mir display servers
+    - Fix double removal of source IDs
+  * debian/guest-account:
+  * debian/guest-session-auto.sh:
+  * debian/lightdm.install:
   * debian/rules:
-    - stop removing gdmflexiserver since it doesn't exist anymore.
-    - configure libexecdir to be /u/l/*/lightdm.
+    - Warn users about the temporary nature of a guest session. (LP: #435930)
   * debian/lightdm.install:
-    - drop install of lightdm-set-defaults.
-    - rename lightdm-guest-session-wrapper to lightdm-guest-session.
+  * debian/lightdm.maintscript:
+    - Move configuration from /etc to /usr/share so dpkg doesn't keep it around.
 
- -- Yves-Alexis Perez <corsac@debian.org>  Sun, 29 Dec 2013 22:28:33 +0100
+ -- Robert Ancell <robert.ancell@canonical.com>  Wed, 22 Jan 2014 15:51:29 +1300
 
-lightdm (1.8.8-1) unstable; urgency=medium
+lightdm (1.9.5-0ubuntu1) trusty; urgency=low
 
-  * New upstream release.
+  * New upstream release:
+    - In the unity seat, if we don't have proper VT support, fake VT 0 instead
+      of a real VT number. This matches what logind expects.
 
- -- Yves-Alexis Perez <corsac@debian.org>  Thu, 13 Mar 2014 09:35:36 +0100
+ -- Robert Ancell <robert.ancell@canonical.com>  Thu, 05 Dec 2013 09:35:42 +1300
 
-lightdm (1.8.7-1) unstable; urgency=medium
+lightdm (1.9.4-0ubuntu1) trusty; urgency=low
 
-  * New upstream release.
-  * debian/patches:
-    - 03_fix-pam_chauthtok-call dropped, included upstream.
+  * New upstream release:
+    - Fix issue where VTs are double used when switching sessions.
+      (LP: #1256150)
+    - Remove lightdm-set-defaults and gdmflexiserver.
+    - Add new ability to specify a list of seat types to try, rather than just
+      one.
+    - Allow Mir sessions in the surfaceflinger seat.
+    - Rename the guest session wrapper to have a simpler name.
+    - Make sure sessions are associated with the display server before starting
+      them.
+    - Add a dm-tool man page.
 
- -- Yves-Alexis Perez <corsac@debian.org>  Thu, 06 Feb 2014 21:41:24 +0100
+ -- Robert Ancell <robert.ancell@canonical.com>  Tue, 03 Dec 2013 19:07:28 +1300
 
-lightdm (1.8.6-2) unstable; urgency=medium
+lightdm (1.9.3-0ubuntu1) trusty; urgency=low
 
-  * debian/patches:
-    - 03_fix-pam_chauthtok-call added, pass PAM_CHANGE_EXPIRED_AUTHTOK to the
-      pam_chauthtok() call.                                     closes: #735670
+  * New upstream release:
+    - Don't pass system user accounts from AccountsService to greeters.
+      (LP: #1248541)
+    - Fix crash if switching to greeter and it isn't installed. (LP: #1246529)
 
- -- Yves-Alexis Perez <corsac@debian.org>  Sun, 02 Feb 2014 14:15:27 +0100
+ -- Robert Ancell <robert.ancell@canonical.com>  Thu, 07 Nov 2013 15:07:34 +1300
 
-lightdm (1.8.6-1) unstable; urgency=medium
+lightdm (1.9.2-0ubuntu1) trusty; urgency=low
 
-  * New upstream release.
-  * debian/patches:
-    - 02_fix-apparmor-profile added: remove inclusion of an AppArmor
-      abstraction not available in Debian.                      closes: #736075
+  * New upstream release:
+    - Implement missing guest-wrapper functionality and enable it for Ubuntu.
+    - Update AppArmor scripts to work in Ubuntu 13.10.
+      (LP: #1243339)
 
- -- Yves-Alexis Perez <corsac@debian.org>  Wed, 22 Jan 2014 21:10:28 +0100
+ -- Robert Ancell <robert.ancell@canonical.com>  Wed, 30 Oct 2013 15:35:23 -0700
 
-lightdm (1.8.5-3) unstable; urgency=low
+lightdm (1.9.1-0ubuntu1) trusty; urgency=low
 
-  * debian/lightdm.postrm: warn if user/group deletion failed.  closes: #731220
-  * debian/control:
-    - update standards version to 3.9.5.
+  * New upstream release:
+    - Correctly set $XDG_SESSION_CLASS for greeters. This was regressed in 1.7.5
+      for ConsoleKit and was never passed to logind. logind/ConsoleKit treat
+      greeter sessions without this set as user sessions. This causes greeters
+      to show the lightdm user able to be logged in with.
+      (LP: #1242939)
+    - Set $USER when running the session-setup-script. This is a regression from
+      1.7.5. (LP: #1245957)
+    - Fix notification of sessions being logged out. This is a regression from
+      1.7.5 and caused greeters to show sessions logged in after they had been
+      logged out. (LP: #1245295)
+    - Refactor liblightdm user scanning to be simpler and more reliable. This
+      fixes bugs where some properties wouldn't be updated when they changed in
+      accounts service.
+    - Add support for a "display-stopped-script" field in lightdm.conf. The
+      "display-stopped-script" field allows us to run a script right after
+      stopping the display server.
+    - Allow dm-tool to run outside of a session if it doesn't need to be.
+    - Set $MIR_SERVER_NAME to assign a name to launched sessions. Also use a
+      "greeter-" prefix for greeter sessions for the benefit of
+      unity-system-compositor.
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Wed, 30 Oct 2013 14:11:16 -0700
+
+lightdm (1.9.0-0ubuntu2) UNRELEASED; urgency=low
+
+  * debian/50-guest-wrapper.conf:
+    - Configure guest session wrapper to use
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Sun, 27 Oct 2013 17:34:20 +1300
+
+lightdm (1.9.0-0ubuntu1) trusty; urgency=low
+
+  * New upstream release:
+    - Fix crash when starting with existing X servers. This was introduced in
+      rev 1651 (lightdm 1.7.0). (LP: #1231841)
+    - Fix crash where Process objects are accessed after unref (LP: #1207935)
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Tue, 22 Oct 2013 12:19:25 +1300
+
+lightdm (1.8.0-0ubuntu1) saucy; urgency=low
+
+  * debian/lightdm-session:
+    - Handle xrdb, setxkbmap and xmodmap not being installed (LP: #1236317)
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Wed, 09 Oct 2013 15:53:56 +1300
+
+lightdm (1.7.18-0ubuntu1) saucy; urgency=low
+
+  * New upstream release:
+    - Set session environment variables for guest sessions (1.7 regression).
+      (LP: #1214504)
+    - Don't fail writing X authority if reading it had an error. (LP: #1234400)
+    - Update environment variables that we pass to Mir.
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Mon, 07 Oct 2013 11:57:02 +1300
+
+lightdm (1.7.17-0ubuntu1) saucy; urgency=low
 
- -- Yves-Alexis Perez <corsac@debian.org>  Sun, 29 Dec 2013 14:55:54 +0100
+  * New upstream release:
+    - surfaceflinger: Set XDG_VTNR=0 if VTs are not available
+    - Allow compiling of liblightdm-qt without liblightdm-gobject
+    - Add missing documentation for xremote seat options.
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Wed, 25 Sep 2013 12:06:25 +1200
+
+lightdm (1.7.16-0ubuntu1) saucy; urgency=low
+
+  * New upstream release:
+    - Fix ConsoleKit support broken in 1.7.5
+    - Fix --test-mode (LP: #1226544) 
+    - Add support for running Surfaceflinger sessions
 
-lightdm (1.8.5-2) unstable; urgency=medium
+ -- Robert Ancell <robert.ancell@canonical.com>  Thu, 19 Sep 2013 17:42:48 -0400
 
-  * debian/patches:
-    - 06_allow_libpamsystemd_and_ck_together added. Create a ConsoleKit
-      session, even if a logind session already exists. That makes transition
-      from ConsoleKit to systemd/logind somehow easier, but means some events
-      might happen twice.                                       closes: #728361
+lightdm (1.7.15-0ubuntu1) saucy; urgency=low
 
- -- Yves-Alexis Perez <corsac@debian.org>  Mon, 02 Dec 2013 21:15:54 +0100
+  [ Jeremy Bicha ]
+  * Have liblightdm-gobject-1.0 suggest not recommend lightdm
+    (LP: #1222155)
 
-lightdm (1.8.5-1) unstable; urgency=low
+  [ Michael Terry ]
+  * Set XDG_VTNR=1 as a fallback if using SeatUnity without a functioning
+    compositor or working VT switching, so that logind will recognize the VT
+    as active.
+
+ -- Michael Terry <mterry@ubuntu.com>  Wed, 11 Sep 2013 11:27:51 -0400
+
+lightdm (1.7.14-0ubuntu1) saucy; urgency=low
+
+  * New upstream release:
+    - Correctly set permissions on Xauthority file.
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Wed, 11 Sep 2013 13:06:28 +1200
+
+lightdm (1.7.13-0ubuntu1) saucy; urgency=low
+
+  * New upstream release:
+    - Correctly set $XDG_CURRENT_DESKTOP for non-autologin sessions
+      (LP: #1221803)
+    - Fix overallocation of array for strings from greeter.
+    - Fix truncation writing card32 in XDMCP server.
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Mon, 09 Sep 2013 16:08:55 +1200
+
+lightdm (1.7.12-0ubuntu1) saucy; urgency=low
+
+  * New upstream release:
+    - Add xdg-seat config setting
+    - Notify Unity System Compositor of the session being authenticated
 
-  * New upstream bugfix release.
-  * debian/patches:
-    - 02_default-config removed, replaced by a config snippet.
-  * debian/01_debian.conf:
-    - add config snippet for Debian specific config
+ -- Robert Ancell <robert.ancell@canonical.com>  Thu, 29 Aug 2013 12:59:39 +1200
+
+lightdm (1.7.11-0ubuntu1) saucy; urgency=low
+
+  * New upstream release:
+    [ 1.7.11 ]
+    - Fix crash when greeter quits due to read watch not being removed
+    - Correctly setup Unity System Compositor environment
+    - Improve log messages
+    [ 1.7.10 ]
+    - Fix session locking broken in 1.7.5
+    - Load lightdm.conf after lightdm.conf.d/*.conf
+    - Also support loading config from /usr/share
+    - When switching sessions show a greeter if authentication required
+    - Set $XDG_CURRENT_DESKTOP if specified in the xsession file (LP: #1212408)
+    - Change logging prefixes to make it easier to troubleshoot multiseat setups
+    - Bring Ubuntu packaging in-tree
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Mon, 26 Aug 2013 14:48:55 +1200
+
+lightdm (1.7.9-0ubuntu1) saucy; urgency=low
+
+  * New upstream release:
+    - Correctly set XDG_VTNR for unity sessions that are not autologin.
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Tue, 30 Jul 2013 18:35:21 +0100
+
+lightdm (1.7.8-0ubuntu1) saucy; urgency=low
+
+  * New upstream release:
+    - Add support for Mir sessions and greeters.
+    - Set XDG_VTNR for unity sessions.
+    - Fix desktop-session-start upstart signal not being emitted since 1.7.5.
+    - Fix greeter log broken in 1.7.5.
+  * debian/liblightdm-gobject-1-0.symbols:
+    - Updated
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Tue, 30 Jul 2013 15:27:58 +0100
+
+lightdm (1.7.7-0ubuntu2) saucy; urgency=low
+
+  * debian/lightdm.init:
+    - Use correct path to daemon (LP: #1204713)
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Thu, 25 Jul 2013 14:25:48 +1200
+
+lightdm (1.7.7-0ubuntu1) saucy; urgency=low
+
+  * New upstream release:
+    - Fix uninitialized pointer introduced in 1.7.3
+    - Enable compile warnings and fix code generating warnings
+  * debian/patches/50_ubuntu_fix_uninitialised_pointer.patch:
+    - Applied upstream:
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Tue, 23 Jul 2013 11:23:47 +1200
+
+lightdm (1.7.6-0ubuntu2) saucy; urgency=low
+
+  * src/main.c: fix up an unitialised pointer in configuration directory
+    handling.  (LP: #1203711)
+
+ -- Andy Whitcroft <apw@canonical.com>  Mon, 22 Jul 2013 11:36:05 +0100
+
+lightdm (1.7.6-0ubuntu1) saucy; urgency=low
+
+  * New upstream release:
+    [ 1.7.6 ]
+    - Restore greeter hints that were regressed in 1.7.5.
+    - Don't run greeters through session wrapper - regression in 1.7.5    
+    [ 1.7.5 ]
+    - Quit Plymouth correctly when using the unity seat type (LP: #1192051)
+    - Release the VT when the system compositor fails to start
+    - Load sessions and greeters from /usr/share/lightdm/sessions and
+      /usr/share/lightdm/greeters. The existing directories are checked
+      if the sessions are not in these directories.
+    - Refactor the Display class so that it merges with the Seat class
+    - Support running the greeter and session in different display servers
+      instead of re-using the same one during a login.
+    - Add more regression tests
+    - Documentation fixes
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Mon, 22 Jul 2013 17:13:19 +1200
+
+lightdm (1.7.4-0ubuntu1) saucy; urgency=low
+
+  * New upstream release:
+    - Set XDG_SEAT and XDG_VTNR environment variables.
+    - Add initial support for Unity (i.e. Mir based) seats.
+    - Add a greeter wrapper option.
+  * debian/50-xserver-command.conf:
+  * debian/patches/05_add_xserver_core_option.patch:
+    - Use a conf file to replace X server core patch
+  * debian/50-greeter-wrapper.conf
+  * debian/patches/03_launch_dbus.patch
+    - Use a conf file to greeter wrapper patch    
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Mon, 01 Jul 2013 15:47:21 +1200
+
+lightdm (1.7.3-0ubuntu2) saucy; urgency=low
+
+  * debian/guest-account: disable screen locking in a more reliable way.
+    Rather than trying to write a key for another user, while setting up the
+    guest user account, just set up an autostart desktop that will set it 
+    during the login (lp: #951000)
+
+ -- Sebastien Bacher <seb128@ubuntu.com>  Tue, 25 Jun 2013 22:30:04 +0200
+
+lightdm (1.7.3-0ubuntu1) saucy; urgency=low
+
+  * New upstream release:
+    - Load configuration from /etc/lightdm/lightdm.conf.d. (LP: #1190425)
+    - Fix compile warnings
+    - Fix tests not running from install directory inside checkout.
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Fri, 21 Jun 2013 14:39:27 +1200
+
+lightdm (1.7.2-0ubuntu1) saucy; urgency=low
+
+  * New upstream release:
+    - Fix .pc file for liblightdm-qt5-3
+    - Add a new option "autologin-in-background" which lets an autologin happen
+      in a second display while still showing the greeter.
+    - Stop if fail to create default seat
+    - Add option to set seat type in lightdm-set-defaults
+    - Stop using g_file_set_contents - it can leave intermediate files around
+    - Make tests work without installing them
+    - Fix distcheck
+  * debian/patches/06_fix_qt_pcfiles.patch:
+  * debian/patches/07_lp1189948.patch:
+    - Applied upstream
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Mon, 17 Jun 2013 14:08:46 +1200
+
+lightdm (1.7.0-0ubuntu6) saucy; urgency=low
+
+  * install apparmor abstractions as 064 (LP: #1189948)
+    - debian/patches/07_lp1189948.patch: adjust Makefile.am and Makefile.in
+      to use install --mode=0644
+    - debian/lightdm.postinst: chmod apparmor abstractions to 0644 on upgrade
+
+ -- Jamie Strandboge <jamie@ubuntu.com>  Tue, 11 Jun 2013 14:11:34 -0500
+
+lightdm (1.7.0-0ubuntu5) saucy; urgency=low
+
+  * Drop XS-Testsuite header. We don't actually have any autopkgtests right
+    now (they are commented out in debian/tests/control and are broken).
+
+ -- Martin Pitt <martin.pitt@ubuntu.com>  Thu, 06 Jun 2013 06:58:11 +0200
+
+lightdm (1.7.0-0ubuntu4) saucy; urgency=low
+
+  * Install some files in liblightdm-qt-dev, so it's somewhat useful.
+
+ -- Adam Conrad <adconrad@ubuntu.com>  Fri, 24 May 2013 00:31:31 -0600
+
+lightdm (1.7.0-0ubuntu3) saucy; urgency=low
+
+  * Switch to unversioned -dev package for liblightdm-qt to match Debian and
+    avoid having to change other packages synced from Debian
+  * Swtich Conflicts to Breaks and add liblightdm-qt-3-dev to Breaks/Replaces
+
+ -- Scott Kitterman <scott@kitterman.com>  Fri, 24 May 2013 00:37:06 -0400
+
+lightdm (1.7.0-0ubuntu2) saucy; urgency=low
+
+  * Cherry-pick patches from upstream to fix liblightdm-qt{,5} pcfiles. 
+  * Refresh patches to apply cleanly 
+
+ -- Iain Lane <iain.lane@canonical.com>  Tue, 07 May 2013 17:36:29 +0100
+
+lightdm (1.7.0-0ubuntu1) saucy; urgency=low
+
+  [ Robert Ancell ]
+  * New upstream release:
+    - Use logind instead of ConsoleKit if it is available
+    - Use Q_SLOTS and Q_SIGNALS instead of slots and signals.
+    - Ignore stale X server locks
+    - Pass through system locale or set locale from AccountsService/.dmrc
+    - Fix bug where seat failure before D-Bus acquired would not stop daemon
+  * debian/control:
+    - liblightdm-qt-2 -> liblightdm-qt-3
+  * debian/patches/06_qt_no_keywords.patch:
+    - Applied upstream
+    
+  [ Gunnar Hjalmarsson ]
+  * debian/patches/04_language_options.patch:
+    - Applied upstream
+  * debian/patches/04_language_handling.patch:
+    - Set LANGUAGE instead of LANG, since the Language property in
+      accountsservice as patched for Ubuntu does not contain a valid
+      locale name.
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Thu, 02 May 2013 10:20:02 -0700
+
+lightdm (1.6.0-0ubuntu2.1) raring-proposed; urgency=low
+
+  * lightdm.upstart: Add a start condition on plymouth-ready, and
+    drop conditions already handled by plymouth-splash (LP: #982889).
+  * control: Depend on the new plymouth version that provides plymouth-ready.
+
+ -- Timo Aaltonen <tjaalton@ubuntu.com>  Tue, 23 Apr 2013 12:10:28 +0300
+
+lightdm (1.6.0-0ubuntu2) raring; urgency=low
+
+  * debian/patches/06_qt_no_keywords.patch:
+    - Don't use Qt keywords like slots and signals in headers.  Instead,
+      use Q_SLOTS and Q_SIGNALS.  This avoids breaking builds of projects
+      that define QT_NO_KEYWORDS.
+
+ -- Michael Terry <mterry@ubuntu.com>  Mon, 15 Apr 2013 11:31:15 -0400
+
+lightdm (1.6.0-0ubuntu1) raring; urgency=low
+
+  * New upstream bugfix release:
+    - Allow VNC command to be specified in lightdm.conf
+    - Register enums with QObject meta type system.
+  * debian/watch:
+    - Watch for .xz releases
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Mon, 15 Apr 2013 11:01:22 +1200
+
+lightdm (1.5.3-0ubuntu1) raring; urgency=low
+
+  * New upstream bugfix release:
+    - Fix build with gobject-introspection 1.35.9
+    - Fix authentication cancel regression caused in 1.5.2 (LP: #1163456)
+  * debian/patches/fix-ftbfs-gir-scanner.patch:
+    - Applied upstream
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Wed, 03 Apr 2013 15:55:16 +1300
+
+lightdm (1.5.2-0ubuntu2) raring; urgency=low
+
+  * Pass --symbol-prefix via LightDM_1_gir_SCANNERFLAGS rather than
+    LightDM_1_gir_CFLAGS, fixing build failure with
+    gobject-introspection >= 1.35.9.
+
+ -- Dmitrijs Ledkovs <dmitrij.ledkov@ubuntu.com>  Tue, 02 Apr 2013 12:51:14 +0100
+
+lightdm (1.5.2-0ubuntu1) raring; urgency=low
+
+  * New upstream bugfix release:
+    * Fix stale X server being left behind when using LockSession D-Bus API
+      (LP: #1005813)
+    * Adjust AppArmor profile to also work with logind
+    * Don't use GIO to access X authority files - it uses GVFS which is
+      unnecessary overhead/complexity
+    * Handle over/underflows when reading from greeter
+    * Improve warning message when XDMCP packet has length mismatch
+    * Only report test command line if it fails
+    * Add more regression tests
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Wed, 27 Mar 2013 14:44:44 +1300
+
+lightdm (1.5.1-0ubuntu2) raring; urgency=low
+
+  * debian/lightdm.upstart: Clear the virtual terminal after starting lightdm
+    so startup messages are not displayed when switching users or when
+    suspending (LP: #967229)
+
+ -- Brian Murray <brian@ubuntu.com>  Thu, 21 Mar 2013 14:33:46 -0700
+
+lightdm (1.5.1-0ubuntu1) raring; urgency=low
+
+  * New upstream release:
+    [ 1.5.0 ]
+    - Add man page for lightdm-set-defaults (LP: #1044485)
+    - Use xzip for distribution, don't distribute old metadata
+    - Correctly check if display is active when session quits
+    - Relicense liblightdm to LGPL-2/LGPL-3 so GPL-2 code can link against it
+    - Selectively lock memory rather than calling mlockall for main daemon
+    [ 1.5.1 ]
+    - QLightDM: Add Qt5 version of the library: liblightdm-qt5-2 (LP: #1117355)
+    - QLightDM: Add some missing role names in UsersModel
+    - QLightDM: Add a backgroundPath role to UsersModel
+    - QLightDM: Fix potential crash in QLightDM::UsersModel closedown.
+    - Improve guest session apparmor
+    - Run each test in its own /tmp dir so they can't interfere with eachother
+    - Fix script hooks no longer working with latest glib (LP: #1128474)
+    - Fix display clean up code
+  * debian/control:
+    - Use standards version 3.9.4
+    - Drop bzr branch
+    - Build-depend on qtbase5-dev
+    - Add new Qt 5 packages
+  * debian/patches/08_lp1059510.patch:
+  * debian/patches/09_lp577919-fix-chromium-launch.patch:
+  * debian/patches/10_selective_mlock.patch:
+  * debian/patches/11_runtime_dir_access.patch:
+     - Applied upstream
+  * debian/source/format:
+    - Use 3.0
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Fri, 08 Mar 2013 11:06:52 +1300
+
+lightdm (1.4.0-0ubuntu5) raring; urgency=low
+
+  * Add 11_runtime_dir_access.patch: Allow guest session to write
+    /run/user/<username>/. (LP: #1131139)
+
+ -- Martin Pitt <martin.pitt@ubuntu.com>  Mon, 25 Feb 2013 14:44:18 +0100
+
+lightdm (1.4.0-0ubuntu4) raring; urgency=low
+
+  * Update pam configs to call pam_env last and use user_readenv=1
+    explicitly, so that ~/.pam_environment can always be read even when
+    home directories are encrypted with ecryptfs.  LP: #952185.
+
+ -- Steve Langasek <steve.langasek@ubuntu.com>  Tue, 12 Feb 2013 12:57:29 -0800
+
+lightdm (1.4.0-0ubuntu3) raring; urgency=low
+
+  [ Michael Terry ]
+  * debian/02_disable_tests.patch, debian/rules:
+    - Drop patch, disable test suite during build by just overriding
+      dh_auto_test.  This way we can still manually run tests
+  * debian/control, debian/tests:
+    - Add dep8 tests to run upstream test suite.  The suite only works once
+      lightdm is installed into PREFIX.  So we must run via dep8.
+      Disabled for now until the next upstream release.
+  * debian/patches/05_add_xserver_core_option.patch:
+    - Modify test X server to also accept -core
+  * debian/patches/10_selective_mlock.patch:
+    - Backport patch from upstream to not use mlockall for the daemon
+      (LP: #1074279)
+  * debian/rules:
+    - Use ./autogen.sh when running dh_autoreconf
+
+  [ Matt Fischer ]
   * debian/lightdm.install:
-    - install 01_debian.conf to /usr/share/lightdm/lightdm.conf.d/
+    - Remove duplicate entry /usr/share/man
+    - Install apport hook
+  * debian/lightdm.postinst:
+    - Fix ownership of /var/lib/lightdm
+  * debian/lightdm.postrm:
+    - Correctly remove /var/lib/lightdm on uninstall
+  * debian/source_lightdm.py:
+    - Update apport hook
 
- -- Yves-Alexis Perez <corsac@debian.org>  Thu, 07 Nov 2013 10:20:11 +0100
+ -- Michael Terry <mterry@ubuntu.com>  Thu, 31 Jan 2013 11:05:23 -0500
 
-lightdm (1.8.3-1) unstable; urgency=low
+lightdm (1.4.0-0ubuntu2) quantal; urgency=low
 
-  * New upstream release.
+  * debian/patches/01_transition_ubuntu2d_ubuntu_desktop.patch:
+    - Fix 2d->3d transition to handle new support for accountsservice
+      LP: #1059137
+
+ -- Michael Terry <mterry@ubuntu.com>  Tue, 09 Oct 2012 10:26:43 -0400
+
+lightdm (1.4.0-0ubuntu1) quantal; urgency=low
+
+  * New upstream stable release.
+  * debian/liblightdm-gobject-1-0.symbols:
+    - Updated
+  * debian/patches/06_add_remote_login_hint.patch:
+  * debian/patches/07_fix_types_in_vapi.patch:
+    - Applied upstream
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Fri, 05 Oct 2012 17:33:21 +1300
+
+lightdm (1.3.3-0ubuntu5) quantal; urgency=low
+
+  * debian/patches/08_lp1059510.patch: allow owner 'rw' access to
+    /{,var/}run/user/guest-*/dconf/user. Also allow owner writes to sockets in
+    /{,var/}run/user/guest-*/keyring-*/. (LP: #1059510)
+  * debian/patches/09_lp577919-fix-chromium-launch.patch: allow launch of
+    chromium-browser from guest session. (LP: #577919)
+
+ -- Jamie Strandboge <jamie@ubuntu.com>  Mon, 01 Oct 2012 10:15:51 -0500
+
+lightdm (1.3.3-0ubuntu4) quantal; urgency=low
+
+  * debian/patches/06_add_remote_login_hint.patch,
+    debian/liblightdm-gobject-1-0.symbols:
+    - Add a greeter hint to disable remote login support, and turn it
+      on by default.
+
+ -- Michael Terry <mterry@ubuntu.com>  Tue, 11 Sep 2012 11:42:17 -0400
+
+lightdm (1.3.3-0ubuntu3) quantal; urgency=low
+
+  * debian/patches/06_disable_remote_login.patch:
+    - Drop patch, thereby enabling Remote Login support (LP: #1040221)
+
+ -- Michael Terry <mterry@ubuntu.com>  Fri, 07 Sep 2012 11:40:01 -0400
+
+lightdm (1.3.3-0ubuntu2) quantal; urgency=low
+
+  * debian/patches/07_fix_types_in_vapi.patch:
+    - Patch from upstream to fix a broken vapi when trying to use
+      a couple enums
+
+ -- Michael Terry <mterry@ubuntu.com>  Thu, 06 Sep 2012 17:26:01 -0400
+
+lightdm (1.3.3-0ubuntu1) quantal; urgency=low
+
+  [ Robert Ancell ]
+  * New upstream release:
+    - Add a new remote session type. These sessions create a temporary local
+      account and authenticate against a remote server. The session is an
+      application that accesses that remote session (e.g. VNC, RDP etc)
+    - Support multiple simultaneous PAM prompts (LP: #1043593)
+    - Set utmp ut_host field to the X display address (LP: #1027760)
+    - Correctly reap unused authentication sessions (LP: #990661)
+  * debian/liblightdm-gobject-1-0.symbols:
+    - Updated
+
+  [ Michael Terry ]
+  * debian/patches/06_disable_remote_login.patch:
+    - Always return an error when trying to log in to remote sessions,
+      until the FFe is granted (which is bug 1040221)
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Thu, 30 Aug 2012 10:15:16 +1200
+
+lightdm (1.3.2-0ubuntu3) quantal; urgency=low
+
+  [ Christopher James Halse Rogers ]
+  * debian/patches/05_add_xserver_core_option.patch:
+    - Pass '-core' to the X server, which will cause it to dump core when
+      crashing. This will trigger apport, so we'll get more reliable crash
+      reports from X server crashes.
+
+  [ Didier Roche ]
+  * debian/patches/01_transition_ubuntu2d_ubuntu_desktop.patch:
+    - unity-2d is not supported anymore and won't be port to gsettings,
+      transition people using the 2d session to the 3d one. llvmpipe
+      will be use if no hardware acceleration is available (LP: #1035261)
+  * debian/patches/01_transition_gnome_ubuntu_desktop.patch:
+    - removed, not needed anymore
+
+  [ Scott Kitterman ]
+  * Add lightdm-kde-greeter as an alternate recommends for lightdm
+
+ -- Didier Roche <didrocks@ubuntu.com>  Wed, 15 Aug 2012 08:41:55 +0200
+
+lightdm (1.3.2-0ubuntu2) quantal; urgency=low
+
+  * Update guest-account script to not depend on Gnome and to set
+    various KDE settings LP: #1028552
+
+ -- Jonathan Riddell <jriddell@ubuntu.com>  Tue, 07 Aug 2012 16:37:49 +0100
+
+lightdm (1.3.2-0ubuntu1) quantal; urgency=low
+
+  * New upstream release:
+    - Handle clearenv() not being defined
+    - Fix compilation with GCC 4.7
+    - Expose remaining properties in QLightDM::Greeter
+    - Fix utmp records being written before child process created
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Tue, 17 Jul 2012 18:44:05 +1200
+
+lightdm (1.3.1-0ubuntu2) quantal; urgency=low
+
+  * debian/control:
+    - Add build-depends on yelp-tools
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Thu, 21 Jun 2012 15:22:59 +1200
+
+lightdm (1.3.1-0ubuntu1) quantal; urgency=low
+
+  * New upstream release:
+    - Don't set PAM_XDISPLAY or PAM_XAUTHDATA if not supported
+    - Add lock-memory option, enabled by default, to prevent paging memory
+      to disk.
+    - Write utmp records for sessions
+    - Install PAM configuration
+    - Run greeters inside the "lightdm-greeter" PAM service
+    - Handle setresgid and setresuid not being available
+    - Use xsession directory from lightdm.conf in liblightdm
   * debian/rules:
-    - enable all hardening flags.
+    - Install lightdm-greeter PAM config
+  * debian/lightdm.lightdm-greeter.pam:
+    - PAM configuration for greeters
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Thu, 21 Jun 2012 11:47:33 +1200
 
- -- Yves-Alexis Perez <corsac@debian.org>  Thu, 31 Oct 2013 09:31:16 +0100
+lightdm (1.2.1-0ubuntu1) precise-proposed; urgency=low
 
-lightdm (1.8.2-1) unstable; urgency=low
+  * New upstream release:
+    - Fix wrapper path in AppArmor profile (broken since 1.1.1)
+    - Add show-manual-login and allow-guest options to lightdm-set-defaults  
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Wed, 18 Apr 2012 18:37:47 +1000
+
+lightdm (1.2.0-0ubuntu2) precise; urgency=low
+
+  * Fix wrapper path in AppArmor profile. This got broken in 1.1.1. Patch also
+    committed upstream, and cherry-picked (r1487) (LP: #975901)
+
+ -- Martin Pitt <martin.pitt@ubuntu.com>  Tue, 10 Apr 2012 11:06:03 +0200
+
+lightdm (1.2.0-0ubuntu1) precise; urgency=low
 
   * New upstream release.
-  * debian/patches:
-    - 01_set-default-path, 02_default-config, 05_debianize-pam-files
-      refreshed.
-    - 03_quit-plymouth disabled for now, to check if problem is really fixed
-      upstream.
-  * debian/control:
-    - rename liblightdm-qt-2-0 to liblightdm-qt-3-0 to match updated soname.
+    - Backup .xsession-errors on login (LP: #951597)
+    - Handle failures in pam_setcred
+    - Open log files in append mode (LP: #951597)
+    - Add extra checks in liblightdm so that it doesn't send invalid messages
+      to the daemon (LP: #969023)
+    - Fix gdmflexiserver not being added to the path (broken since 1.1.4)
+      (LP: #953554)
+    - Fix PAM conversations after authentication from locking up sessions
+      (LP: #956848)
+    - Fix PAM informational messages locking up autologin
+    - Change XDMCP manage timeout from 10ms to 126s (maximum specified in the
+      XDMCP specification)
+    - Fix greeter-show-guest example (LP: #972711)
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Thu, 05 Apr 2012 17:26:50 +1000
+
+lightdm (1.1.9-0ubuntu2) precise; urgency=low
+
+  * debian/lightdm-session:
+    - include some Xsession macros used by Xsession.d scripts (lp: #900221)
+
+ -- Sebastien Bacher <seb128@ubuntu.com>  Thu, 29 Mar 2012 12:52:34 +0200
+
+lightdm (1.1.9-0ubuntu1) precise; urgency=low
+
+  [ Gunnar Hjalmarsson ]
+  * debian/guest-account: Add trailing '/' to the line
+    "gs_skel=/etc/guest-session/skel" (LP: #956152).
+
+  [ Robert Ancell ]
+  * New upstream release:
+    * Add --show-users/--hide-users to lightdm-set-defaults
+    * Call initgroups before pam_setcred - this allows pam_setcred to change
+      group membership correctly (LP: #880104)
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Thu, 22 Mar 2012 16:48:59 +1100
+
+lightdm (1.1.8-0ubuntu1) precise; urgency=low
 
- -- Yves-Alexis Perez <corsac@debian.org>  Sun, 20 Oct 2013 20:45:55 +0200
+  * New upstream release:
+    - Handle PAM interactions that have more than one message in one callback
+      (LP: #951460)
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Thu, 15 Mar 2012 12:57:30 +1100
+
+lightdm (1.1.7-0ubuntu2) precise; urgency=low
+
+  * debian/guest-account: Fix arbitrary file deletion in removal of guest
+    files in /tmp. Use find/xargs with 0 separators instead of spaces.
+    (LP: #953044, CVE-2012-0943)
+
+ -- Martin Pitt <martin.pitt@ubuntu.com>  Tue, 13 Mar 2012 14:53:10 +0100
 
-lightdm (1.6.3-1) unstable; urgency=low
+lightdm (1.1.7-0ubuntu1) precise; urgency=low
 
   * New upstream release.
 
- -- Yves-Alexis Perez <corsac@debian.org>  Wed, 09 Oct 2013 21:22:43 +0200
+ -- Robert Ancell <robert.ancell@canonical.com>  Fri, 09 Mar 2012 15:28:40 +1100
+
+lightdm (1.1.6-0ubuntu1) precise; urgency=low
+
+  * Upload the new version to Ubuntu
+  * Reshuffle a bit the vcs to use merge upstream correctly
+
+  [ Robert Ancell ]
+  * New upstream release:
+    - Fix session wrapper working the same as it did in 1.1.3 (lp: #944736)
+    - Stop file descriptors leaking into the session processes (lp: #927060)
+
+  [ Martin Pitt ]
+  * debian/control: Fix liblightdm-gobject-1-doc architecture to "all".
+
+ -- Sebastien Bacher <seb128@ubuntu.com>  Tue, 06 Mar 2012 13:45:29 +0100
+
+lightdm (1.1.4.is.1.1.3-0ubuntu3) precise; urgency=low
+
+  * debian/lightdm.postinst: Drop the disable-while-typing gsettings call
+    again. The Unity greeter already disables the mouse plugin these days, and
+    other known greeters do not use g-s-d.
+  * debian/lightdm.dirs: Really add /etc/X11/, revision 1077 did not actually
+    do it. (LP: #921169)
+
+ -- Martin Pitt <martin.pitt@ubuntu.com>  Mon, 05 Mar 2012 13:10:46 +0100
+
+lightdm (1.1.4.is.1.1.3-0ubuntu2) precise; urgency=low
+
+  [ Matt Fischer ]
+  * debian/lightdm.dirs:
+    - Add /etc/X11/ so lightdm.postinst doesn't fail on systems without X
+      installed (LP: #921169)
+
+  [ Martin Pitt ]
+  * debian/lightdm.postinst: Disable disable-while-typing touchpad setting for
+    GNOME; we do not really need this feature in lightdm, and multiple
+    syndaemon instances cause the touchpad to stop working sometimes. Add
+    libglib2.0-bin dependency for this. (LP: #868400)
+
+ -- Martin Pitt <martin.pitt@ubuntu.com>  Mon, 05 Mar 2012 12:36:04 +0100
 
-lightdm (1.6.2-1) unstable; urgency=low
+lightdm (1.1.4.is.1.1.3-0ubuntu1) precise; urgency=low
+
+  * Revert to 1.1.3 until we can figure out proper solution to bug 944736
+
+ -- Michael Terry <mterry@ubuntu.com>  Fri, 02 Mar 2012 15:03:26 -0500
+
+lightdm (1.1.4-0ubuntu1) precise; urgency=low
 
-  [ Yves-Alexis Perez ]
-  * debian/po:
-    - update pl.po, thanks MichaÅ‚ KuÅ‚ach.                       closes: #711378
   * New upstream release.
-    - fix wrong permissions on .Xauthority file and don't pollute homedir with
-      temporary files.                                          closes: #721744
-  * debian/watch updated to track 1.6 branch.
-  * debian/control:
-    - update standards version to 3.9.4.
+    - Change session directory once user permissions are set so it works
+      on NFS filesystems that don't allow root to access files. (LP: #877766)
+    - Restructure session code so the PAM authentication is run in its
+      own process. (LP: #881466)
+    - Set PAM_XDISPLAY and PAM_XAUTHDATA pam items (LP: #862559)
+    - Don't send session stdout to .xsession-errors
+    - Fix Qt bindings crash when removing a user
 
-  [ Evgeni Golov ]
-  * Correct Vcs-* URLs to point to anonscm.debian.org
+ -- Robert Ancell <robert.ancell@canonical.com>  Thu, 01 Mar 2012 20:54:07 +1100
 
- -- Yves-Alexis Perez <corsac@debian.org>  Wed, 11 Sep 2013 07:41:13 +0200
+lightdm (1.1.3-0ubuntu1) precise; urgency=low
 
-lightdm (1.6.0-3) unstable; urgency=low
+  * New upstream release:
+    - Actually return the system default keyboard layout, not just 'us'
+    - Add keyboard layout variants to list of keyboard layouts
+    - Check accountsservice as well as .dmrc for users' layouts
+    - Add lightdm_user_get_layouts() to query the configured list of layouts
+      on a per-user basis
+    - Add Lock D-Bus method that locks the seat and provides a hint to the
+      greeter to be in lock mode.
+    - Automatically lock sessions when switching away from them
+    - Add a has-messages property to liblightdm
+    - Add regression tests for PAM modules changing usernames
+    - Don't use g_key_file_unref, it requires glib 2.32
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Wed, 15 Feb 2012 20:15:08 +1100
+
+lightdm (1.1.2-0ubuntu3) precise; urgency=low
+
+  * debian/patches/05_keyboard_indicator.patch:
+    - Backported patch from trunk to fix various keyboard layout issues
+      preventing greeter keyboard indicators from working.
+      LP: #919199, LP: #919200, LP: #915468
+
+ -- Michael Terry <mterry@ubuntu.com>  Sun, 12 Feb 2012 19:37:51 -0500
+
+lightdm (1.1.2-0ubuntu2) precise; urgency=low
+
+  * Redo the previous update using merge-upstream in the package vcs so the
+    new version is not reverted in the diff.gz...
+  * 00upstream_set-defaults_autologin_support.patch:
+    - dropped, the fix is in the new version
 
-  * debian/control:
-    - drop valac-0.18 dependency for now since it's not available in sid
-      anyway.                                                   closes: #707176
+ -- Sebastien Bacher <seb128@ubuntu.com>  Sun, 12 Feb 2012 13:01:15 +0100
+
+lightdm (1.1.2-0ubuntu1) precise; urgency=low
+
+  * New upstream release:
+    - Add regression tests for getting the user language and layout
+    - Stop accidentally distributing libsystem
+    - Fix introspection bindings not containing any methods (LP: #920810)
+    - lightdm-set-defaults can now set the autologin user
+    - Add Python greeter regression tests (representative of all introspection
+      based greeters)
+    - Wait for the VT to become active when switching to avoid a suspected
+      race condition somewhere between LightDM, X, ConsoleKit and the kernel.
+      (LP: #851612)
+    - Stop lightdm_greeter_start_session_sync() blocking on success.
+  * debian/lightdm.prerm:
+    - Fix incorrect location of lightdm binary (found by Rolf Anders)
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Fri, 10 Feb 2012 17:32:47 +1100
+
+lightdm (1.1.1-0ubuntu4) precise; urgency=low
+
+  * Add 00upstream_set-defaults_autologin_support.patch: Add support for
+    setting autologin-user in lightdm-set-defaults. Committed to and
+    backported from trunk.
+  * debian/lightdm.postinst: Migrate autologin configuration from gdm on first
+    installation. (LP: #854431)
+
+ -- Martin Pitt <martin.pitt@ubuntu.com>  Mon, 30 Jan 2012 08:25:03 +0100
+
+lightdm (1.1.1-0ubuntu3) precise; urgency=low
+
+  [ AurÃ©lien GÃ¢teau ]
+  * debian/control, liblightdm-qt*.install:
+    - Rename liblightdm-qt packages to match upstream changes
+    - Conflicts, Replaces with the buggy version
+
+ -- Sebastien Bacher <seb128@ubuntu.com>  Thu, 19 Jan 2012 11:34:41 +0100
+
+lightdm (1.1.1-0ubuntu2) precise; urgency=low
 
- -- Yves-Alexis Perez <corsac@debian.org>  Sat, 11 May 2013 23:48:35 +0200
+  * debian/patches/04_language_options.patch:
+    - Replace 'locale -a' output with accountsservice's list of
+      language options (LP: #918225).
 
-lightdm (1.6.0-2) unstable; urgency=low
+ -- Gunnar Hjalmarsson <ubuntu@gunnar.cc>  Wed, 18 Jan 2012 16:10:29 +0100
 
-  [ Niv Sardi ]
-  * Build with GIR
+lightdm (1.1.1-0ubuntu1) precise; urgency=low
 
-  [ Yves-Alexis Perez ]
-  * Upload to unstable.
+  * New upstream release:
+    * Support PAM requesting a change of password (lp: #911597)
+    * Support for reading users' backgrounds from Accounts Service 
+      (lp: #844081)
+    * Switching to a user without a password bypasses the greeter
+      (lp: #861177)      
+    * Move the GTK+ and Qt greeters into their own projects
+  * Drop the gtk and qt greeters packaging files from this source
+  * debian/liblightdm-gobject-1-0.symbols:
+    - list new lightdm_user_get_background symbol
+  * debian/patches/04_CVE-2011-4105.patch,
+    debian/patches/05_CVE-2011-3153.patch,
+    debian/patches/09_show_lang_chooser_option.patch,
+    debian/patches/10_available_languages.patch,
+    debian/patches/11_set_language_in_accountsservice.patch:
+    - dropped, those issues are fixed in the new version or apply to the
+      gtk greeter which is moved to its own source
   * debian/rules:
-    - hardening=+pie segfaults but +bindnow does work so keep it enabled.
-  * debian/docs removed: stop shipping NEWS file since it's the same as
-    changelog.
+    - install lightdm-set-defaults back to its previous location
+
+ -- Sebastien Bacher <seb128@ubuntu.com>  Wed, 18 Jan 2012 11:10:03 +0100
+
+lightdm (1.0.6-0ubuntu4) precise; urgency=low
+
+  [ Gunnar Hjalmarsson ]
+  * debian/lightdm-gtk-greeter-ubuntu.conf and
+    debian/patches/09_show_lang_chooser_option.patch:
+    - Disclose the option to enable the language chooser.
+  * debian/patches/10_available_languages.patch:
+    - If available, show a list of installed translations in the
+      language chooser instead of a 'locale -a' list (LP: #868346).
+    - Use nl_langinfo() to get language and country names for the
+      language chooser labels.
+    - Translate language and country names.
+    - Handle @variants properly.
+  * debian/patches/11_set_language_in_accountsservice.patch:
+    - Save item that is selected from the language chooser also when
+      AccountsService is in use (LP: #868346).
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Tue, 22 Nov 2011 12:41:43 +1100
+
+lightdm (1.0.6-0ubuntu3) precise; urgency=low
+
+  * SECURITY UPDATE: file contents disclosure via hard link
+    - debian/patches/04_CVE-2011-4105.patch: make sure file isn't a symlink
+      or a hard link before doing the chown on it.
+    - CVE-2011-4105
+  * SECURITY UPDATE: file contents disclosure via links (LP: #883865)
+    - debian/patches/05_CVE-2011-3153.patch: drop privileges before
+      accessing file.
+    - CVE-2011-3153
+
+ -- Marc Deslauriers <marc.deslauriers@ubuntu.com>  Tue, 15 Nov 2011 14:23:53 -0500
 
- -- Yves-Alexis Perez <corsac@debian.org>  Sun, 05 May 2013 14:09:23 +0200
+lightdm (1.0.6-0ubuntu2) precise; urgency=low
 
-lightdm (1.6.0-1) experimental; urgency=low
+  * Upload to precise.
+
+ -- Martin Pitt <martin.pitt@ubuntu.com>  Thu, 10 Nov 2011 07:19:12 +0100
+
+lightdm (1.0.6-0ubuntu1) oneiric-proposed; urgency=low
+
+  [ Martin Pitt ]
+  * debian/lightdm.upstart: Put back check for "text" in kernel command line,
+    for inhibiting automatic lightdm start. Check $JOB to still allow a manual
+    "start lightdm" command to work. (LP: #873334)
+
+  [ Robert Ancell ]
+  * New upstream release:
+    - Use lchown for correcting ownership of ~/.Xauthority instead of chown
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Wed, 02 Nov 2011 11:37:43 -0400
+
+lightdm (1.0.5-0ubuntu1) oneiric-proposed; urgency=low
 
   * New upstream release.
+    [1.0.5]
+    - Relax AppArmor guest profile to allow compiz to start
+    - Connect up VNC settings for width, height, depth
+    [1.0.4]
+    - Fix --enable-gtk-greeter=yes not working
+    - Fix X sessions with arguments in Exec not working
+    - Use previous session for automatic login or if greeter does not request
+      one. (LP: #834515)
+    - Correct ownership of ~/.Xauthority if upgrading from buggy version of
+      LightDM that had it root owned. (LP: #871667)
+    - Set default resolution of VNC to 1024x768, add settings for width, height,
+      depth into lightdm.conf.
+    - AppArmor profile: Fix broken gnome-keyring and dbus/gwibber, and quiesce
+      annoying kernel audit messages for privileges that we definitively do not
+      want to grant. (LP: #877736) (LP: #874635)
+    - Set LOGNAME environment variable (LP: #875705)
+    - Mark strings as translatable in GTK greeter (LP: #868613)
+    [ 1.0.3]
+    - Fix reference counting issue in ConsoleKit code
+    - Really add the lightdm-guest-session-wrapper
+    [ 1.0.2 ]
+    - Fix daemon from blocking if Accounts Service does not exist
+    - Fix greeter log file not being written
+    - Don't set LANG environment variable if using Accounts Service.
+    - Fix gdmflexiserver not working due to it not being in PATH
+    - Don't authenticate the greeter user
+    - Allow greeters to be disabled in configure flags
+    - Fix over allocation of read buffer in greeter protocol
+    - Make sure objects are cleaned up on exit
+    - Fix minor memory leaks
+    - Fix hugely oversized allocation in greeter buffer.  Can trigger
+      crashes when entering very long passwords.
+  * debian/patches/00bzr_guest_session_wrapper.diff:
+  * debian/patches/07_long_password_crash.patch:
+  * debian/patches/08_correct_ck_ref.patch:
+    - Applied upstream
+  * New upstream release.
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Wed, 26 Oct 2011 12:45:17 -0400
+
+lightdm (1.0.1-0ubuntu6) oneiric; urgency=low
+
+  * debian/patches/08_correct_ck_ref.patch:
+    - backported fix from Mikkel Kamstrup Erlandsen for a refcounting issue
+      which leads to sessions where unity can't start (lp: #851345)
+
+ -- Sebastien Bacher <seb128@ubuntu.com>  Fri, 07 Oct 2011 13:57:44 +0200
+
+lightdm (1.0.1-0ubuntu5) oneiric; urgency=low
+
+  * Add debian/patches/00bzr_guest_session_wrapper.diff: Add back the guest
+    session wrapper part that was uploaded in 1.0.0-0ubuntu4. The patch was
+    correctly merged into trunk, but the 1.0 branch backport missed this
+    wrapper part and thus broke AppArmor protection entirely. (LP: #849027)
+
+ -- Martin Pitt <martin.pitt@ubuntu.com>  Fri, 07 Oct 2011 11:47:36 +0200
+
+lightdm (1.0.1-0ubuntu4) oneiric; urgency=low
+
+  * debian/patches/04_language_not_to_LANG.patch:
+  * debian/patches/04_dmrc_set_LANG_only.patch:
+    - Replace LANG disabling code with proper fix (LP: #868149)
+  * debian/patches/03_launch_dbus.patch:
+  * debian/patches/05_gdmflexiserver_not_in_PATH.patch:
+    - Refreshed
+  * debian/patches/06_accounts_service_timeout.patch:
+    - Fix D-Bus timeout when accounts service not installed (LP: #866035)
+  * debian/patches/07_long_password_crash.patch:
+    - Fix crash with long passwords (LP: #817186)
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Thu, 06 Oct 2011 15:45:21 +1100
+
+lightdm (1.0.1-0ubuntu3) oneiric; urgency=low
+
+  * debian/patches/05_gdmflexiserver_not_in_PATH.patch:
+    - Make sure to insert our own utility path into PATH after PAM
+      sets PATH, not before.  This ensures gdmflexiserver is present
+      in PATH and can be found by gnome-screensaver, gnome-shell, etc.
+
+ -- Michael Terry <mterry@ubuntu.com>  Wed, 05 Oct 2011 09:05:31 -0400
+
+lightdm (1.0.1-0ubuntu2) oneiric; urgency=low
+
+  * debian/patches/04_language_not_to_LANG.patch:
+    Locale names based on AccountsService's "Language" key may not
+    go to $LANG, as that property is a language name, not a locale.
+    (LP: #864618).
 
- -- Yves-Alexis Perez <corsac@debian.org>  Wed, 17 Apr 2013 22:06:36 +0200
+ -- Gunnar Hjalmarsson <ubuntu@gunnar.cc>  Wed, 05 Oct 2011 09:49:15 +0200
 
-lightdm (1.5.3-1) experimental; urgency=low
+lightdm (1.0.1-0ubuntu1) oneiric; urgency=low
 
-  * New upstream unstable release.
-  * debian/docs: ship NEWS file.                                closes: #689870
-  * debian/watch:
-    - support .xz tarballs.
-  * debian/patches:
-    - 01_set-default-path, 03_quit-plymouth, 04_dont-add-pkglibexecdir-path
-      and 05_debianize-pam-files refreshed.
-  * debian/control:
-    - add build-dep on libgcrypt11-dev.
-  * debian/rules:
-    - disable pie hardening flags for now, it segfaults at startup.
-    - fix gdmflexiserver removal
-    - fix permissions on apparmor profiles.
-  * debian/lightdm.install:
-    - install apparmor profiles.
+  * New upstream release:
+    - GTK greeter now remembers last user
+    - GTK greeter now initializes i18n (LP: #862427)
+    - Start authentication for automatically selected user in GTK greeter
+    - Link liblightdm-qt against QtGui
+    - Fix liblightdm-qt crashing when face images are installed (LP: #850095)
+    - Set correct permissions on session log files (LP: #863119)
+    - Prefer a locale with a codeset over one without for setting LANG
+      (LP: #864618)
+    - Introduce a lightdm-guest-session-wrapper session command which MAC
+      systems like AppArmor and SELinux can use for attaching a restrictive
+      policy to guest sessions.
+    - Provide an AppArmor profile for guest session lockdown.
+  * debian/patches/01_guest_session_lockdown.patch:
+    - Applied upstream
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Tue, 04 Oct 2011 19:58:25 +1100
+
+lightdm (1.0.0-0ubuntu4) oneiric; urgency=low
+
+  * Add 01_guest_session_lockdown.patch: Lock down guest session with an
+    AppArmor profile. This uses the very same approach as gdm-guest-session,
+    and copies the profile from it. (LP: #849027)
+  * 03_launch_dbus.patch: Refresh.
+  * debian/lightdm.install: Install AppArmor profile.
+
+ -- Martin Pitt <martin.pitt@ubuntu.com>  Fri, 30 Sep 2011 17:30:56 +0200
+
+lightdm (1.0.0-0ubuntu3) oneiric; urgency=low
+
+  * debian/patches/03_launch_dbus.patch:
+    - Fix patch applying in the wrong place
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Thu, 29 Sep 2011 16:08:20 +1000
+
+lightdm (1.0.0-0ubuntu2) oneiric; urgency=low
+
+  * debian/lightdm-gtk-greeter.postinst,
+    debian/lightdm-gtk-greeter.postrm,
+    debian/lightdm-gtk-greeter.preinst:
+    - move the gtk-greeter conffile starting from 1.0.0-0ubuntu1 and not
+      0.9.7-0ubuntu1 (the patch using 0.9.7-0ubuntu1 as a reference has
+      been integrated in 1.0.0-0ubuntu1 without being updated even if
+      0.9.7-0ubuntu2 was already released). Ensure we do it now (LP: #861316)
+
+ -- Didier Roche <didrocks@ubuntu.com>  Wed, 28 Sep 2011 13:40:40 +0200
+
+lightdm (1.0.0-0ubuntu1) oneiric; urgency=low
+
+  [ Steve Langasek ]
+  * don't start on graphics-device-added; reintroducing this reverted the fix
+    for bug #615549 from maverick without explanation.
+  * clean up the completely illegible start rule for debian/lightdm.upstart,
+    killing off the unnecessary parentheses
+  * debian/lightdm.upstart: when lightdm is shut down by a runlevel call,
+    emit an upstart event that can be caught by plymouth so it can
+    distinguish between the DM shutting down for a runlevel change vs. other
+    causes.  LP: #854329.
+
+  [ Robert Ancell ]
+  * New upstream release.
+    [ 0.9.8 ]
+    - GetSeatForCookie and GetSessionForCookie are now deprecated.  They
+      remain for now but use the XDG_SEAT_PATH and XDG_SESSION_PATH
+      environment variables instead.
+    - Change log filenames to be unique across different display types.
+    - Fix up script hooks, add regression tests for them
+    - Complete removal of X code from the core of LightDM, so it can better
+      support various display types
+    - Add ability to set the language of a user from the greeter (LP: #803858)
+    - Set LANG variable based on the user language
+    - Add language selector into GTK greeter (disabled by default)
+    - Allow TCP/IP connections if xserver-allow-tcp is true
+    - Allow lightdm --version to be run as non-root
+    - Automatically respond to PAM messages without prompts (LP: #783598)
+    - Create 'AddLocalXSeat' D-Bus method, and require root to use 'AddSeat'
+    - Fix multi-seat configuration picking the same display number (LP: #851362)
+    - Use correct D-Bus and power interface in liblightdm-qt (LP: #852803)
+    - Run pam_setcred inside the session process so pam_group works
+      (LP: #851347)
+    - Make sure one session is always selected in the GTK greeter (LP: #819177)
+    [ 1.0.0 ]
+    - Explicitly grab keyboard focus in GTK greeter
+    - Fix removed power and a11y menu items in GTK greeter
+    - Put system binary directory into path when running in test mode
+      (LP: #860003)
+    - Call pam_getenvlist after pam_setcred
+
+  [ Lionel Le Folgoc ]
+  * Make the gtk greeter easily themable by derivatives: (LP: #845549)
+    - rename lightdm-gtk-greeter.conf to lightdm-gtk-greeter-ubuntu.conf,
+      and handle the move in maintainer scripts.
+    - manage /etc/lightdm/lightdm-gtk-greeter.conf with update-alternatives,
+      by default it uses /etc/lightdm/lightdm-gtk-greeter-ubuntu.conf with a
+      very low priority.
+  * debian/control: lightdm-gtk-greeter provides lightdm-gtk-greeter-config.
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Wed, 28 Sep 2011 16:00:20 +1000
+
+lightdm (0.9.7-0ubuntu2) oneiric; urgency=low
 
- -- Yves-Alexis Perez <corsac@debian.org>  Sun, 07 Apr 2013 14:30:05 +0200
+  * don't start on graphics-device-added; reintroducing this reverted the fix
+    for bug #615549 from maverick without explanation.
+  * clean up the completely illegible start rule for debian/lightdm.upstart,
+    killing off the unnecessary parentheses
+  * debian/lightdm.upstart: when lightdm is shut down by a runlevel call,
+    emit an upstart event that can be caught by plymouth so it can
+    distinguish between the DM shutting down for a runlevel change vs.
+    other causes.  LP: #854329.
 
-lightdm (1.4.0-1) experimental; urgency=low
+ -- Steve Langasek <steve.langasek@ubuntu.com>  Sun, 25 Sep 2011 22:22:38 -0700
+
+lightdm (0.9.7-0ubuntu1) oneiric; urgency=low
 
   * New upstream release.
-  * debian/patches:
-    - 01_set-default-path, 02_default-config and
-      04_dont-add-pkglibexecdir-path refreshed for new release.
-    - 05_debianize-pam-files added, Debianize the lightdm and
-      lightdm-autologin pam config files.
-  * debian/control:
-    - suggests upower.                                          closes: #679538
-    - make lightdm depends on lightdm-gtk-greeter | lightdm-greeter, thanks
-      Ralf Jung for the report.                                 closes: #684714
-    - add build-dep on itstool.
-  * debian/lightdm.install:
-    - stop installing lightdm upstart script since it's broken. closes: #679409
-    - install /u/s/help.*
-    - install PAM files
+    - Set PAM_TTY to the display name, not the tty device (LP: #851055)
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Fri, 16 Sep 2011 09:39:22 +1000
+
+lightdm (0.9.6-0ubuntu1) oneiric; urgency=low
+
+  * New upstream release:
+    - Only unlock displays if switched to from greeter
+    - Make log file not system readable
+    - Write ~/.Xauthority inside the session process so it cannot be hijacked
+    - Set PAM_TTY and PAM_XDISPLAY when opening PAM session
+    - Add VNC server support
+    - Do not write ~/.dmrc and ~/.Xauthority as root. [CVE-2011-3349]
+  * debian/patches/00upstream_unlock_fix.patch:
+  * debian/patches/04_dont_write_files_as_root.patch:
+    - Applied upstream
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Thu, 15 Sep 2011 17:32:25 +1000
+
+lightdm (0.9.5-0ubuntu2) oneiric; urgency=low
+
+  * debian/lightdm.config: When installing from scratch as part of a release
+    upgrade, default to lightdm, otherwise ask. (LP: #806559)
+  * Add 04_dont_write_files_as_root.patch: Do not write ~/.dmrc and
+    ~/.Xauthority as root. [CVE-2011-3349]
+  * Add 00upstream_unlock_fix.patch: Only unlock displays if switched to from
+    greeter. Cherrypicked from upstream r1137. (LP: #844274)
+
+ -- Martin Pitt <martin.pitt@ubuntu.com>  Thu, 15 Sep 2011 08:52:24 +0200
+
+lightdm (0.9.5-0ubuntu1) oneiric; urgency=low
+
+  [ Steve Langasek ]
+  * Update upstart job to use current start condition lifted from gdm,
+    and to check runlevels instead of /proc/cmdline so it's possible to
+    start lightdm after switching out of recovery mode.  LP: #803513.
+
+  [ Didier Roche ]
+  * debian/patches/01_transition_gnome_ubuntu_desktop.patch:
+    natty-oneiric session name upgrade:
+    - transition from unity-2d -> ubuntu-2d
+    - transition from gnome-2d -> gnome-fallback
+
+  [ Robert Ancell ]
+  * New upstream release:
+   [0.9.5]
+    - Use accounts service in the daemon if it is available
+    - Correctly load seat type in multi seat configuration
+    - Add display-setup, session-setup and session-cleanup scripting hooks
+    - Fix cancel button in GTK greeter (LP: #819240)
+    - Fix line through GTK greeter menu items
+    - Exit daemon if a seat fails which has exit-on-failure set to true
+    - Add HasGuestAccount property to seat D-Bus interface (LP: #835084)
+    - Fix XDMCP authorization
+    - Update man file
+    - Emit upstart events (LP: #715094)
+   [0.9.4]
+    - lightdm-set-defaults enables tweaking the default session and chosen
+      greeter for lightdm. This is useful for derivatives waiting to not ship
+      the whole configuration file of lightdm
+    - Fix crash in GTK+ greeter when a user is added
+    - Move xsessions-directory and xgreeters-directory from [SeatDefaults] to
+      [LightDM].  This is a configuration break, but making it on the assumption
+      that these settings are not likely to have been overridden.
+    - Fix fallback from org.freedesktop.Accounts to passwd format
+    - Fix duplicate user entries being shown when using passwd file
+    - Add AddSeat D-Bus method for adding dynamic seats
+    - Added a dm-tool program that allows user switching and adding seats
+    - Allow remote X servers, e.g. launched using dm-tool add-nested-seat
+    - Fix bug where sessions were started when the greeter quit and the user
+      hadn't been authorized.
+    - Fix bug where sessions used the seat bus name
+    - Don't allow autologin-username to be set to empty
+    - Fix bug where PAM session was not opened before writing to home directory
+    - Fix crash when failing to write X authority
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Wed, 07 Sep 2011 16:09:53 +1000
+
+lightdm (0.9.3-0ubuntu8) oneiric; urgency=low
+
+  * debian/patches/series:
+    - Add patch from last commit to actually apply.  Ahem.
   * debian/rules:
-    - stop installing own PAM files.
-  * debian/*.pam: drop obsolete PAM files.
+    - Make greeter wrapper executable
 
- -- Yves-Alexis Perez <corsac@debian.org>  Sun, 07 Oct 2012 09:16:34 +0200
+ -- Michael Terry <mterry@ubuntu.com>  Thu, 25 Aug 2011 16:20:00 -0400
 
-lightdm (1.2.2-3) unstable; urgency=low
+lightdm (0.9.3-0ubuntu7) oneiric; urgency=low
 
-  * debian/lightdm.pam:
-    - enable pam_loginuid.                                      closes: #677435
-  * debian/lightdm.lightdm-autologin.pam added, support auto-login when
-    configured in /etc/lightdm/lightdm.conf.                    closes: #636104
+  * debian/install, debian/lightdm-greeter-session,
+    debian/patches/03_launch_dbus.patch:
+    - Add patch and wrapper script to launch dbus for the greeter so that
+      we can safely kill it when the greeter ends.
+
+ -- Michael Terry <mterry@ubuntu.com>  Wed, 24 Aug 2011 15:34:07 -0400
+
+lightdm (0.9.3-0ubuntu6) oneiric; urgency=low
+
+  * Backport r1065 to use account service instead of .dmrc (lp: #823718), 
+    should fix the session not being correct remembered (lp: #818201)
+
+ -- Sebastien Bacher <seb128@ubuntu.com>  Tue, 23 Aug 2011 16:21:59 +0200
+
+lightdm (0.9.3-0ubuntu5) oneiric; urgency=low
+
+  * Backport potfiles.in fix from trunk
+  * debian/lightdm.install: install dm-tool (seat management utility)
+
+ -- Sebastien Bacher <seb128@ubuntu.com>  Thu, 18 Aug 2011 15:59:45 +0200
+
+lightdm (0.9.3-0ubuntu4) oneiric; urgency=low
+
+  * Updated to current trunk, that's a candidate version version for the next
+    update, it fixes those issues:
+    - login doesn't work for ecryptfs users (lp: #823775, #824594)
+    - "lightdm-gtk-greeter segfaults in get_user_iter when adding a new user"
+    (lp: #822470)
+    - fix fallback from org.freedesktop.Accounts to passwd format (lp: #817835)
+    - empty autologin-user should not be passed to pam (lp: #817581)
+  * debian/control.in:
+    - build-depends on quilt, it's needed with source v1
+    - don't build-depends on valac, vala is not used in the current version
+  * debian/lightdm.install:
+    - install the manpages as well
+  * debian/lightdm.manpages:
+    - dropped, it's installed by the upstream make install
   * debian/rules:
-    - install both pam files.
+    - use the quilt rule
+  * debian/source/format:
+    - use source v1, it works better with vcs workflows
+
+ -- Sebastien Bacher <seb128@ubuntu.com>  Thu, 18 Aug 2011 15:29:42 +0200
+
+lightdm (0.9.3-0ubuntu3) oneiric; urgency=low
+
+  * debian/control: stop forcing the unity-greeter recommends (lp: #824299)
+
+ -- Sebastien Bacher <seb128@ubuntu.com>  Thu, 11 Aug 2011 23:21:51 +0200
 
- -- Yves-Alexis Perez <corsac@debian.org>  Mon, 18 Jun 2012 21:13:57 +0200
+lightdm (0.9.3-0ubuntu2) oneiric; urgency=low
 
-lightdm (1.2.2-2) unstable; urgency=low
+  * Backport mterry's changes to the gdmflexiserver functionnality
+  * debian/control: default to the unity greeter (lp: #809710)
+  * debian/lightdm.install: install the new files
 
+  [ Didier Roche ]
+  * Cherry-pick from upstream:
+    - lightdm-set-defaults enables tweaking the default session and chosen
+      greeter for lightdm. This is useful for derivatives waiting to not ship
+      the whole configuration file of lightdm
+    - refreshed translations
   * debian/rules:
-    - re-enable tests now that gcc-4.7 has been fixed.
+    - set "ubuntu" as the default session (unable to login for people who don't
+      have a .dmrc, sorry for the kittensâ€¦)
 
- -- Yves-Alexis Perez <corsac@debian.org>  Wed, 13 Jun 2012 19:51:16 +0200
+ -- Sebastien Bacher <seb128@ubuntu.com>  Wed, 10 Aug 2011 18:34:03 +0200
 
-lightdm (1.2.2-1) unstable; urgency=low
+lightdm (0.9.3-0ubuntu1) oneiric; urgency=low
 
-  * Upload to unstable.
-  * New upstream release.                                       closes: #673036
+  [ Sebastien Bacher ]
+  * New upstream version
+  * debian/control:
+    - build-depends on dh-translations
+    - build with the current vala
+    - demote the greeter depends back to a recommend, lightdm can be use to
+      connect to remote displays and doesn't need a local greeter
+    - lightdm depends on dbus (lp: #822824)
+    - liblightdm-gobject recommends accountsservice (lp: #822863)
+  * debian/liblightdm-gobject-1-0.symbols:
+    - track library symbols
+  * debian/lightdm.install:
+    - ship the translations
+  * debian/lightdm.preinst:
+    - fix missing dh token
   * debian/rules:
-    - build with --parallel.
-    - disable silent rules so build logs are useful.
-    - disable building test for now since it fails with gcc-4.7.
-  * debian/*.lintian-overrides added, override warning for hardening
-    checks, we do enable build flags.
+    - reorder rules to work with new dh versions
+    - stop the build if the liblightdm-gobject symbols are outdated
+    - use dh-translations to generate the translations template
+  * debian/source_lightdm.py:
+    - get bug informations for apport, thanks Pedro Villavicencio (lp: #819954)
 
- -- Yves-Alexis Perez <corsac@debian.org>  Tue, 15 May 2012 22:44:04 +0200
+  [ Didier Roche ]
+  * debian/watch:
+    - fix debian/watch to get lightdm
+  * debian/patches/01_transition_gnome_ubuntu_desktop.patch:
+    - transition so that gnome.desktop is now move to ubuntu.desktop as the main
+      session. We need that for transitionning to the next step (post LTS) where
+      gnome-shell.desktop will be renamed to gnome.desktop
+
+ -- Sebastien Bacher <seb128@ubuntu.com>  Tue, 09 Aug 2011 18:21:07 +0200
+
+lightdm (0.9.2-0ubuntu4) oneiric; urgency=low
+
+  * debian/control: depends on the greeters rather than recommends, seems some
+    users still get no greeter after upgrade otherwise
+
+ -- Sebastien Bacher <seb128@ubuntu.com>  Wed, 27 Jul 2011 19:10:47 +0200
+
+lightdm (0.9.2-0ubuntu3) oneiric; urgency=low
+
+  * Fix lightdm to conflict liblightdm-gobject-0-0 and liblightdm-qt-0-0,
+    so that old greeters are removed on upgrade
+    - update debian/control
+
+ -- Chris Coulson <chris.coulson@canonical.com>  Tue, 26 Jul 2011 23:26:49 +0100
+
+lightdm (0.9.2-0ubuntu2) oneiric; urgency=low
+
+  * debian/control: 
+    - recommends the preferred greeter before a virtual one
+    - let the new gtk greeter provide the old example named one for easier
+      upgrade
+
+ -- Sebastien Bacher <seb128@ubuntu.com>  Tue, 26 Jul 2011 21:38:25 +0200
+
+lightdm (0.9.2-0ubuntu1) oneiric; urgency=low
+
+  * New upstream release
+    [0.9.0]
+    - Fix invalid XAUTHORITY variable being set for second X server.
+    - Fix bug where switching users created X servers without VTs
+    - Release a VT when the X server on it stops
+    - Greeters are now just standard X sessions that are stored in
+      /usr/share/xgreeters.
+    - Drop most of the configure options, they aren't necessary
+    - Config changes:
+      - Major reorginisation of configuration to make it easier to configure and
+        understand.  Users should set [SeatDefaults] section with settings for
+        all seats, and can override each setting in a per seat configuration.
+      - Default seats are now specified using a [Seat:<name>] section.  If no
+        seats are specified then one is started.  This can be overridden by
+        setting start-default-seat=false in [LightDM].
+      - Support setting autologin user to guest account
+      - Split the user accounts configuration into /etc/lightdm/users.conf so
+        the  main config can be private.
+      - The default user session is now "default".  Distributions should put a
+        symlink to their chosen default or set one in lightdm.conf.
+      - XDMCP keys now stored in keys.conf
+    - liblightdm API changes:
+      - Both libraries are now version 1 and have API and ABI guarantees.
+      - Face images are now local paths not URIs
+      - liblightdm-gobject now uses lightdm_ prefix instead of ldm_
+      - Non-greeter functions are now moved out of the Greeter class
+      - connect_to_server() is now called connect_sync and blocks until
+        completion.
+      - start_session() is now called start_session_sync and blocks until
+        completion. The quit signal is removed, and the greeter should quit if
+        this method returns TRUE.
+      - login() is now called authenticate()
+      - Greeters now have hints instead of configuration (greeters should load
+        their own configuration from /etc/lightdm if they need it).
+      - liblightdm-gobject uses AccountsService if it is available
+      - Added regression tests for liblightdm-qt
+    - D-Bus API changes:
+      - Expose Seats and Sessions on org.freedesktop.DisplayManager
+      - Add a CanSwitch property
+      - Rename ShowGreeter() to SwitchToGreeter()
+    - Greeter changes:
+      - Drop "example" from the name of the GTK+ and Qt greeters and make them
+        official default greeters.
+      - Use GTK3 for GTK+ greeter.
+      - Removed the Vala and Python GTK+ greeters, they weren't being well
+        maintained.
+    [0.9.1]
+    - Fix up translation build system
+    - Add a --with-greeter-user configure option
+    - Fix greeter-user configuration not being used
+    - Abort greeter if attempted to be run as root and greeter-user set
+    - Fix setting session in GTK+ greeter
+    [0.9.2]
+    - Fix annotation and Vala bindings for getting the UserList singleton
+    - Fix GTK+ greeter error label not being shown
+    - Don't set SIGQUIT to ignore in child processes
+    - Reworked the PAM code as ecryptfs users weren't able to log in.  They
+      can now but not sure what changed to fix that!?
+  * debian/control:
+    - Build depend on libgtk3.0-dev, not libgtk2.0-dev
+    - Drop obsolete greeters, use new ones
+    - lightdm conflicts with liblightdm-gobject-1 and liblightdm-qt-1 so old
+      greeters will be removed.
+    - Update versions of libraries
+  * debian/lightdm.conf:
+    - Removed, no longer needs configuration
+  * debian/patches/01_resize_grip.patch:
+    - Dropped, not required anymore
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Tue, 26 Jul 2011 19:19:00 +1000
+
+lightdm (0.4.4-0ubuntu1) oneiric; urgency=low
+
+  * New upstream release
+    - Fix failure to accept XDMCP connections due to invalid assert.
+    - Allow minimum-display-number to be set in lightdm.conf and on the command
+      line.
+    - Session X authority now written to ~/.Xauthority by default.  It can be
+      configured to run from the system location by setting
+      user-authority-in-system-dir=true in lightdm.conf.
+    - When using system authority the authority can be updated by the user.
+      (LP: #795046)
+    - Written X authority files now checks hostname and display number.
+    - Enironment is no longer passed through to X servers and sessions, this is
+      no longer required now PAM works correctly.
+    - liblightdm API changes:
+      - Drop ldm_greeter_get_is_first() - it was added for testing and doesn't
+        work well.
+    - Fix more errors where authentication messages from previous sessions could
+      be confused with new sessions.
+    - Added XDMCP regression tests.
+  * debian/lightdm.conf:
+    - Updated to latest format
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Fri, 15 Jul 2011 13:35:49 +1000
+
+lightdm (0.4.3-0ubuntu1) oneiric; urgency=low
+
+  * New upstream release
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Wed, 13 Jul 2011 15:06:13 +1000
+
+lightdm (0.4.2-0ubuntu2) oneiric; urgency=low
+
+  * debian/Xsession:
+    - Correctly load ~/.Xresource
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Wed, 06 Jul 2011 09:29:15 +1000
+
+lightdm (0.4.2-0ubuntu1) oneiric; urgency=low
+
+  * New upstream release
+    - Fixes (LP: #798277)
+  * debian/lightdm.upstart:
+    - Don't source /etc/environment or /etc/default/locale - this is done in PAM
+  * debian/Xsession:
+    - Handle X resource directory being empty (LP: #800193)
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Tue, 05 Jul 2011 15:22:12 +1000
+
+lightdm (0.4.1-0ubuntu1) oneiric; urgency=low
+
+  * New upstream release
+    - Fixes (LP: #793366)
+  * debian/lightdm.conf:
+  * debian/guest-session-cleanup.sh:
+  * debian/guest-session-setup.sh:
+    - Enable guest session
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Thu, 30 Jun 2011 17:04:25 +0100
+
+lightdm (0.4.0-0ubuntu7) oneiric; urgency=low
+
+  * debian/Xsession:
+    - Correctly load Xresources (LP: #800193)
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Mon, 27 Jun 2011 09:43:49 +0100
+
+lightdm (0.4.0-0ubuntu6) oneiric; urgency=low
+
+  * debian/Xsession:
+    - Set required variables to make Xsession.d scripts work (LP: #800192)
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Mon, 27 Jun 2011 00:03:12 +1000
+
+lightdm (0.4.0-0ubuntu5) oneiric; urgency=low
+
+  * debian/lightdm.lightdm-autologin.pam, debian/rules:
+    - Actually install autologin PAM configuration (LP: #797669).
+
+ -- Colin Watson <cjwatson@ubuntu.com>  Fri, 17 Jun 2011 12:52:33 +0100
+
+lightdm (0.4.0-0ubuntu4) oneiric; urgency=low
+
+  * debian/control: don't depends on gnome-icon-theme-full, the purpose of the
+    binary is to not be installed by default, icons should be moved rather
+
+ -- Sebastien Bacher <seb128@ubuntu.com>  Fri, 17 Jun 2011 11:28:05 +0200
+
+lightdm (0.4.0-0ubuntu3) oneiric; urgency=low
+
+  * debian/control:
+    - Make GTK greeters depend on gnome-icon-theme-full (LP: #796793)
+  * debian/Xsession:
+  * debian/lightdm.conf:
+    - Load profile and X resources when running session (LP: #794315)
+      (LP: #795083)
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Fri, 17 Jun 2011 15:26:59 +1000
+
+lightdm (0.4.0-0ubuntu2) oneiric; urgency=low
+
+  * debian/copyright:
+    - Drop copyright reference to obsolete ck-connector.[ch]
+  * debian/patches/02_disable_tests.patch:
+    - Disable regression tests as they're not running on the buildd's correctly
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Fri, 17 Jun 2011 13:55:12 +1000
+
+lightdm (0.4.0-0ubuntu1) oneiric; urgency=low
+
+  * New upstream release
+  * debian/control:
+    - Add build-depends on dbus for regression tests
+    - lightdm pre-depends on dpkg (>= 1.15.7.2) to get dpkg-maintscript-helper
+      support
+    - Drop build-depends on libdbus-glib-1-dev, libck-connector-dev
+  * debian/lightdm.conf:
+    - Update to latest format
+  * debian/lightdm.postinst:
+  * debian/lightdm.postrm:
+  * debian/lightdm.preinst:
+    - Move config file from /etc/lightdm.conf to /etc/lightdm/lightdm.conf
+  * debian/lightdm-autologin.pam:
+    - Add autologin PAM session
+  * debian/patches/01_resize_grip.patch:
+    - Don't show resize grip on window
+  * debian/patches/01_handle_all_signals.patch:
+  * debian/patches/02_process_exit.patch:
+    - Applied upstream
 
-lightdm (1.2.0-1) experimental; urgency=low
+ -- Robert Ancell <robert.ancell@canonical.com>  Fri, 17 Jun 2011 12:31:14 +1000
 
-  [ Yves-Alexis Perez ]
-  * New upstream release.
-    - don't leak fds to child processes.                        closes: #658678
-  * debian/po:
-    - da.po updated, thanks to â€œJoe Daltonâ€.                    closes: #650946
-  * debian/control:
-    - add Provides: on x-display-manager.                       closes: #654343
-    - liblightdm-gobject-dev requires libdbus-glib-1-dev and libxklavier-dev
-      so add dependencies.
-    - drop lightdm-{gtk,qt}-greeter packages since they have been moved to
-      standalone packages.
-    - rename lightdm-qt-1-0 package to -2-0 to follow soname bump.
-    - drop dh-autoreconf build-dep.
-    - fix liblightdm*-dev package not depending on the library package itself.
-    - update standards version to 3.9.3.
-  * debian/watch updated for new tarballs location.
-  * debian/patches:
-    - 01_set-default-path refreshed.
-    - 02_default-config.patch refreshed
-      + use lightdm-greeter as greeter name, which is provided as an
-        alternative by the various greeters.
-    - 04_default-gtk-greeter-config dropped since lightm-gtk-greeter has been
-      moved to standalone package.
-    - 06_move-progs-to-pkglibexecdir dropped, included upstream.
-    - 07_CVE-2011-4105 dropped, code doesn't exist anymore.
-    - 08_CVE-2011-3153 dropped, included upstream.
-  * debian/rules:
-    - don't install libsystem as it's only useful for tests.
-    - drop autoreconf since we don't need it anymore.
-  * debian/lightdm-{gtk,qt}-greeter.{config.install.templates,postinst,prerm}
-    dropped.
-  * debian/lightdm.pam:
-     - add selinux lines, thanks Laurent Bigonville.            closes: #664805
+lightdm (0.3.7-0ubuntu2) oneiric; urgency=low
 
-  [ Lionel Le Folgoc ]
-  * debian/patches: add missing DEP3 headers.
+  * debian/control:
+    - Add ${python:Depends} and required dependencies for
+      lightdm-greeter-example-python-gtk package (LP: #787409)
+  * debian/patches/01_handle_all_signals.patch:
+    - Correctly handle signals from external processes (LP: #789389)
+  * debian/patches/02_process_exit.patch:
+    - Fix crash when child processes quit (LP: #795050)
 
- -- Yves-Alexis Perez <corsac@debian.org>  Fri, 06 Apr 2012 21:32:13 +0200
+ -- Robert Ancell <robert.ancell@canonical.com>  Fri, 10 Jun 2011 16:24:56 +1000
 
-lightdm (1.0.6-3) unstable; urgency=low
+lightdm (0.3.7-0ubuntu1) oneric; urgency=low
 
-  * debian/patches:
-    - 07_CVE-2011-4105 refreshed, use AC_USE_SYSTEM_EXTENSIONS in configure.ac
-      so GNU extensions are used even on kFreeBSD.              closes: #649633
-  * debian/rules:
-    - explicitly disable introspection. It seems only enabled on kFreeBSD
-      builds for some reason.
+  * New upstream release
 
- -- Yves-Alexis Perez <corsac@debian.org>  Sat, 26 Nov 2011 09:34:47 +0100
+ -- Robert Ancell <robert.ancell@canonical.com>  Mon, 30 May 2011 20:22:39 +1000
 
-lightdm (1.0.6-2) unstable; urgency=high
+lightdm (0.3.6-0ubuntu1) oneiric; urgency=low
 
-  * urgency=high for security fixes.
-  * debian/patches:
-    - 07_CVE-2011-4105 added, make sure the file is not a link when chowning
-      it. (CVE-2011-4105)
-    - 08_CVE-2011-3153 added, fix information disclosure by droping privileges
-      before reading and re-writing ~/.dmrc.
+  * New upstream release
+  * debian/lightdm.conf:
+    - Start display on active VT
 
- -- Yves-Alexis Perez <corsac@debian.org>  Tue, 15 Nov 2011 21:39:30 +0100
+ -- Robert Ancell <robert.ancell@canonical.com>  Mon, 30 May 2011 16:43:37 +1000
 
-lightdm (1.0.6-1) unstable; urgency=high
+lightdm (0.3.5-0ubuntu1) oneiric; urgency=low
 
-  * New upstream release, urgency=high for security fix.
-    - fix .Xauthority ownership using lchown() (CVE-2011-4105)
+  * New upstream release
 
- -- Yves-Alexis Perez <corsac@debian.org>  Fri, 04 Nov 2011 20:54:52 +0100
+ -- Robert Ancell <robert.ancell@canonical.com>  Tue, 24 May 2011 15:38:04 +1000
 
-lightdm (1.0.4-1) unstable; urgency=low
+lightdm (0.3.4-0ubuntu1) oneiric; urgency=low
 
-  * New upstream release.
-  * debian/patches:
-    - 01_set-default-path refreshed.
+  * New upstream release
 
- -- Yves-Alexis Perez <corsac@debian.org>  Wed, 26 Oct 2011 07:29:19 +0200
+ -- Robert Ancell <robert.ancell@canonical.com>  Fri, 20 May 2011 14:56:09 +1000
 
-lightdm (1.0.3-1) unstable; urgency=low
+lightdm (0.3.3-0ubuntu1) natty; urgency=low
 
-  * New upstream release.
-  * debian/watch updated to only track stable releases.
-  * debian/patches:
-    - 01_set-default-path and 05_dont-add-pkglibexecdir-path refreshed for new
-      upstream release.
-    - 06_move-lightdm-set-defaults-to-pkglibexecdir renamed to
-      06_move-progs-to-pkglibexecdir, use the same patch to move
-      lightdm-guest-session-wrapper to pkglibexecdir and refresh the original
-      patch for new upstream.
-  * debian/lightdm.install:
-    - install lightdm-guest-session-wrapper.
+  * New upstream release
+  * debian/lightdm-greeter-example-gtk.install:
+    - Install .ui file
 
- -- Yves-Alexis Perez <corsac@debian.org>  Sat, 08 Oct 2011 13:39:15 +0200
+ -- Robert Ancell <robert.ancell@canonical.com>  Tue, 10 May 2011 17:45:50 +0200
 
-lightdm (1.0.2-1) unstable; urgency=low
+lightdm (0.3.2-0ubuntu1) natty; urgency=low
 
-  * New upstream release.
-    - don't use autologin pam service, fix startup.             closes: #643844
+  * New upstream release:
+  * debian/lightdm-greeter-*.install:
+    - Use new binary names
+  * debian/lightdm.conf:
+    - Start display on VT 7
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Thu, 21 Apr 2011 15:31:24 +1000
+
+lightdm (0.3.0-0ubuntu1) natty; urgency=low
+
+  * New upstream release
   * debian/control:
-    - add recommends on policykit-1 to greeters.                closes: #643292
-  * debian/patches:
-    - 05_dont-add-pkglibexecdir-path refreshed for new upstream release.
+    - Add build-depends on valac
+    - Drop build-depends on libwebkitgtk-dev
+    - Rename gir1.0-lightdm-0 to gir1.2-lightdm-0
+    - Webkit engine and theme dropped
+    - Merge theme and engines into one package
+    - Add vala-gtk, python-gtk and qt greeters
 
- -- Yves-Alexis Perez <corsac@debian.org>  Thu, 06 Oct 2011 07:41:40 +0200
+ -- Robert Ancell <robert.ancell@canonical.com>  Sat, 16 Apr 2011 18:22:50 +1000
 
-lightdm (1.0.0-3) unstable; urgency=low
+lightdm (0.2.3-0ubuntu2) natty; urgency=low
 
-  * debian/lightdm-{gtk,qt}.{postinst,prerm}:
-    - don't use dpkg-architecture since it's in dpkg-dev.       closes: #643792
+  * debian/control:
+    - Fix Vcs-Bzr link
 
- -- Yves-Alexis Perez <corsac@debian.org>  Thu, 29 Sep 2011 22:26:18 +0200
+ -- Robert Ancell <robert.ancell@canonical.com>  Fri, 14 Jan 2011 14:44:48 -0600
 
-lightdm (1.0.0-2) unstable; urgency=low
+lightdm (0.2.3-0ubuntu1) natty; urgency=low
 
-  * debian/rules:
-    - correctly enable pie and bindnow.
-    - use a variable for multi-arch path instead of *.
-    - use autoreconf dh addon
+  * New upstream release
   * debian/control:
-    - add build-dep on dh-autoreconf and gtk-doc-tools
-  * debian/patches:
-    - 06_move-lightdm-set-defaults-to-pkglibexecdir added, move
-      lightdm-set-defaults to pkglibexecdir instead of libexecdir.
-  * debian/lightdm-{gtk,qt}-greeter.{postinst,prerm}:
-    - use variable for multi-arch path instead of *.
-    - update lightdm-set-defaults path to re-add lightdm folder.
+    - Build depend on libwebkitgtk-dev
 
- -- Yves-Alexis Perez <corsac@debian.org>  Thu, 29 Sep 2011 12:09:35 +0200
+ -- Robert Ancell <robert.ancell@canonical.com>  Fri, 14 Jan 2011 14:39:15 -0600
 
-lightdm (1.0.0-1) unstable; urgency=low
+lightdm (0.2.2-0ubuntu2) natty; urgency=low
 
-  * New upstream release.
-  * debian/patches:
-    - all patches refreshed
-    - 02_default-config: explicitly disable tcp listen.
-  * debian/rules:
-    - drop all hardening rules now done by dh in compat mode 9, but manually
-      add pie and bindnow.
-    - add -Wl,--as-needed -Wl,-O1 to LDFLAGS.
-    - update gdmflexiserver path for multi-arch paths.
-  * debian/compat bumped to 9.
-  * debian/control:
-    - added build-deb on dpkg-dev (>= 1.16.1) for hardening support.
-    - dropped hardening-includes from build-depends, now superseded
-    - update debhelper build-dep to 9 for compat mode v9.
-    - add Pre-Depends: ${misc:Pre-Depends} to the lib packages.
-    - add Recommends: on gnome-icon-theme to gtk greeter.       closes: #643291
-  * debian/liblightdm-gobject-1-0.install,
-    debian/liblightdm-gobject-dev.install, debian/liblightdm-qt-1-0.install,
-    debian/liblightdm-qt-dev.install, debian/lightdm.install:
-    - update to use multi-arch folders.
-  * debian/lightdm.install:
-    - in v9 compat mode, libexecdir doesn't have the package name added so
-      update in consequence
-  * debian/liblightdm*.{postinst,prerm}:
-    - update path to lightdm-set-defaults.
-  * debian/lightdm.postinst:
-    - don't fail if one can't reload dbus, like in a chroot.    closes: #642295
+  * debian/copyright:
+    - Update copyright for liblightdm-gobject and liblightdm-qt
 
- -- Yves-Alexis Perez <corsac@debian.org>  Thu, 29 Sep 2011 07:39:18 +0200
+ -- Robert Ancell <robert.ancell@canonical.com>  Wed, 15 Dec 2010 10:16:16 +1100
 
-lightdm (0.9.7-1) unstable; urgency=low
+lightdm (0.2.2-0ubuntu1) natty; urgency=low
 
-  * New upstream release.
-    - fix consolekit session issues.
+  * New upstream release
+  * debian/copyright:
+    - Update copyright for src/ck-connector.[ch]
+  * debian/liblightdm-gobject-0-dev:
+    - .vapi file has moved location
+  * debian/lightdm.upstart:
+    - Tidy up upstart config
+  * debian/rules:
+    - Compile with --with-greeter-user=lightdm
 
- -- Yves-Alexis Perez <corsac@debian.org>  Fri, 16 Sep 2011 08:01:12 +0200
+ -- Robert Ancell <robert.ancell@canonical.com>  Thu, 09 Dec 2010 11:45:44 +1100
 
-lightdm (0.9.6-1) unstable; urgency=low
+lightdm (0.2.1-0ubuntu1) natty; urgency=low
 
-  * New upstream release:
-    - don't write user files as root to prevent symlinks attacks
-      [CVE-2011-3349]                                           closes: #639151
-  * debian/patches:
-    - 01_set-default-path, 02_default-config, 03_quit-plymouth,
-      04_default-gtk-greeter-config refreshed.
-    - 05_always-export-XAUTHORITY dropped, included upstream.
-    - 05_dont-add-pkglibexecdir-path added, don't add /usr/lib/lightdm/lightdm
-      to the PATH, it's ugly.
+  [ Julien Lavergne ]
+  * debian/lightdm.{config,pam,postinst,postrm,prerm,upstart,init}
+   - Add configuration based on gdm and xdm ones.
   * debian/rules:
-    - don't install gdmflexiserver script for now until the PATH issue is
-      solved.
+   - Use dh_installinit --no-start
+   - Remove .la and .a files.
+   - Pass --list-missing to dh_install.
+   - Don't use --with quilt with format 3.0.
+   - Use with autoreconf.
+  * debian/control:
+   - Add myself to Uploaders, and use ubuntu address for Maintainer.
+   - Build-depends on dh-autoreconf and gtk-doc-tools
+   - Improve the description.
+   - Add depends on libpam-runtime (>= 0.76-14) and libpam-modules for pam
+     support.
+   - Add depends on adduser.
+   - Provides x-display-manager.
+   - Add depends on libglib2.0-dev, libdbus-glib-1-dev and libxklavier-dev for
+     libldmgreeter-dev.
+  * debian/libldmgreeter-dev.install:
+   - Install .so
   * debian/lightdm.install
-    - install lightdm-set-default and dm-tool there.
-  * debian/lightdm-{gtk,qt}-greeter.{config,templates,postinst,prerm}:
-    - provide a way to select the current greeter through debconf. Other
-      packages providing a greeter use the same templates/config to register
-      themselves in debconf.
+   - Install conf file for DBus.
+  * debian/lightdm.dirs
+   - Add /var directories for logs, and cache.
+  * debian/po & debian/lightdm.template:
+   - Add translations for display manager switch.
+  * debian/copyright:
+   - Update address for source code and copyright for debian/.
+  * debian/lightdm.conf:
+   - Sync with upstream modification.
+  * debian/lightdm.manpages
+   - Add the upstream manpage.
+
+  [ Robert Ancell ]
+  * New upstream release
+  * Rename from libldmgreeter to liblightdm
+  * debian/control:
+    - Use ubuntu-desktop Bzr link
+  * debian/gir1.0-lightdm-0.install:
+    - Install typelib into correct package
+  * debian/lightdm.postinst:
+  * debian/lightdm.postrm:
+    - Create lightdm user
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Wed, 01 Dec 2010 08:40:37 +1100
+
+lightdm (0.2.0-0ubuntu1) maverick; urgency=low
+
+  * New upstream release
   * debian/control:
-    - add suggests on accountsservice.
+    - Use standards version 3.9.1
+  * debian/lightdm.conf:
+  * debian/rules:
+    - Make an Ubuntu specific default config file
 
- -- Yves-Alexis Perez <corsac@debian.org>  Thu, 15 Sep 2011 11:36:21 +0200
+ -- Robert Ancell <robert.ancell@canonical.com>  Fri, 12 Nov 2010 13:58:43 +1100
 
-lightdm (0.9.2-3) unstable; urgency=low
+lightdm (0.1.2-0ubuntu2) maverick; urgency=low
 
-  * debian/patches:
-    - 05_always-export-XAUTHORITY added, always export path to xauth file.
-  * debian/lightdm-xsession.desktop:
-    - provide a default xsession desktop file.                  closes: #636111
+  * debian/lightdm-theme-gnome.install:
+  * debian/lightdm-theme-webkit.install:
+    - Fix install location of themes
 
- -- Yves-Alexis Perez <corsac@debian.org>  Sat, 06 Aug 2011 11:34:57 +0200
+ -- Robert Ancell <robert.ancell@canonical.com>  Tue, 12 Oct 2010 15:52:24 +1100
 
-lightdm (0.9.2-2) unstable; urgency=low
+lightdm (0.1.2-0ubuntu1) maverick; urgency=low
 
-  * debian/control;
-    - use real package name in greeter dependency.              closes: #636020
-    - recommends desktop-base (for default background) and
-      gnome-theme-standards (for Adwaita GTK+ 3 theme) in GTK+ greeter.
-  * debian/patches:
-    - 04_default-gtk-greeter-config added, tune GTK+ greeter config to match
-      Debian themes.
+  * New upstream release
 
- -- Yves-Alexis Perez <corsac@debian.org>  Sat, 30 Jul 2011 20:03:59 +0200
+ -- Robert Ancell <robert.ancell@canonical.com>  Fri, 10 Sep 2010 16:57:49 +1000
 
-lightdm (0.9.2-1) unstable; urgency=low
+lightdm (0.1.1-0ubuntu1) maverick; urgency=low
 
-  * New upstream release.
-  * debian/lightdm.install:
-    - install locale files in lightdm package.
-  * debian/rules:
-    - set greeter user at build time.
+  * New upstream release
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Sat, 14 Aug 2010 22:06:43 +1000
+
+lightdm (0.1.0-0ubuntu2) maverick; urgency=low
+
+  * debian/lightdm-theme-gnome.install:
+    - Install gnome theme data
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Thu, 22 Jul 2010 22:17:46 +0200
+
+lightdm (0.1.0-0ubuntu1) maverick; urgency=low
+
+  * New upstream release
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Thu, 22 Jul 2010 21:57:35 +0200
+
+lightdm (0.0.4-0ubuntu1) maverick; urgency=low
+
+  * New upstream release
   * debian/control:
-    - rename the greeter packages to fit what's in Ubuntu.
-    - lightdm-vala doesn't provide a greeter anymore.
-  * debian/lightdm{,-gtk-greeter}.install:
-    - ship GTK+ greeter config file in the lightdm-gtk-greeter package.
-  * debian/lightdm.{config,templates} and debian/po debconf files added from
-    Ubuntu package.
+    - Build-depend on libxdmcp-dev, libxcb1-dev
+    - Use standards-version 3.9.0
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Fri, 16 Jul 2010 10:12:40 +1000
+
+lightdm (0.0.3-0ubuntu2) maverick; urgency=low
+
+  * debian/control:
+    - Build-depend on libxklavier-dev
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Sat, 10 Jul 2010 15:33:57 +1000
+
+lightdm (0.0.3-0ubuntu1) maverick; urgency=low
+
+  * New upstream release
+    - Wait for signal from X server before starting session
+    - Add language API
+    - Add keyboard layout API
+    - Add gettext support to the WebKit greeter
+
+ -- Robert Ancell <robert.ancell@canonical.com>  Sat, 10 Jul 2010 14:07:26 +1000
+
+lightdm (0.0.2-0ubuntu1maverick1) maverick; urgency=low
+
+  * New upstream release:
+    - Fix installation of D-Bus service file
+    - Allow DISPLAY env variable to be passed to X server so can run Xephyr
+    - Handle no automatic login in webkit theme
+  * debian/control:
+    - Remove invalid ${shlibs:Depends} lines on binary free packages
+  * debian/watch:
+    - Update watch location
 
- -- Yves-Alexis Perez <corsac@debian.org>  Fri, 29 Jul 2011 20:32:36 +0200
+ -- Robert Ancell <robert.ancell@canonical.com>  Thu, 01 Jul 2010 11:47:58 +1000
 
-lightdm (0.9.0-1) unstable; urgency=low
+lightdm (0.0.1-0ubuntu1) maverick; urgency=low
 
-  * Initial release.                                            closes: #615591
+  * Initial release
 
- -- Yves-Alexis Perez <corsac@debian.org>  Thu, 28 Jul 2011 22:39:44 +0200
+ -- Robert Ancell <robert.ancell@canonical.com>  Sun, 27 Jun 2010 11:14:01 +1000
diff -pruN 1.26.0-8/debian/compat 1.30.0-0ubuntu8/debian/compat
--- 1.26.0-8/debian/compat	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/compat	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1 @@
+9
diff -pruN 1.26.0-8/debian/config-error-dialog.sh 1.30.0-0ubuntu8/debian/config-error-dialog.sh
--- 1.26.0-8/debian/config-error-dialog.sh	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/config-error-dialog.sh	2023-02-08 21:11:34.000000000 +0000
@@ -0,0 +1,33 @@
+# Copyright (C) 2014 Canonical Ltd
+# Author: Gunnar Hjalmarsson <gunnarhj@ubuntu.com>
+#
+# This program is free software: you can redistribute it and/or modify it under
+# the terms of the GNU General Public License as published by the Free Software
+# Foundation, version 3 of the License.
+#
+# See http://www.gnu.org/copyleft/gpl.html the full text of the license.
+
+# This file may be sourced by the function source_with_error_check() in
+# /usr/sbin/lightdm-session
+
+export TEXTDOMAIN=lightdm
+. /usr/bin/gettext.sh
+
+PARA1=$(eval_gettext 'Error found when loading $CONFIG_FILE:')
+PARA2=$(gettext 'As a result the session will not be configured correctly.
+You should fix the problem as soon as feasible.')
+
+TEXT="$PARA1
+
+$(fold -s $ERR)
+
+$PARA2"
+
+if [ -x /usr/bin/kdialog ]; then
+	TEXT_FILE=$(mktemp --tmpdir config-err-kdialog-XXXXXX)
+	echo -n "$TEXT" > "$TEXT_FILE"
+	kdialog --textbox "$TEXT_FILE" 500 300
+	rm -f "$TEXT_FILE"
+elif [ -x /usr/bin/zenity ]; then
+	zenity --warning --no-wrap --no-markup --text="$TEXT"
+fi
diff -pruN 1.26.0-8/debian/control 1.30.0-0ubuntu8/debian/control
--- 1.26.0-8/debian/control	2022-01-11 09:48:56.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/control	2022-09-22 02:53:50.000000000 +0000
@@ -1,75 +1,83 @@
 Source: lightdm
 Section: x11
 Priority: optional
-Maintainer: Debian Xfce Maintainers <debian-xfce@lists.debian.org>
-Uploaders: Yves-Alexis Perez <corsac@debian.org>
-Build-Depends: debhelper-compat (= 13),
-               dpkg-dev (>= 1.16.1),
-               gobject-introspection,
+Maintainer: Robert Ancell <robert.ancell@ubuntu.com>
+Uploaders: Julien Lavergne <gilir@ubuntu.com>
+Standards-Version: 4.1.1
+Build-Depends: autoconf,
+               automake,
+               dbus,
+               debhelper (>= 9.20160709),
+               dh-autoreconf,
+               dh-translations,
                gtk-doc-tools,
-               intltool,
-               itstool,
+               intltool (>= 0.35.0),
                libaudit-dev [linux-any],
+               libtool,
                libgcrypt20-dev,
                libgirepository1.0-dev,
                libglib2.0-dev,
                libgtk-3-dev,
-               libpam-dev,
+               libpam0g-dev,
                libxcb1-dev,
                libxdmcp-dev,
                libxklavier-dev,
                pkg-config,
                qtbase5-dev,
+               quilt,
                valac,
                yelp-tools
-Rules-Requires-Root: no
-Standards-Version: 4.6.0
-Homepage: https://launchpad.net/lightdm
-Vcs-Git: https://salsa.debian.org/xfce-extras-team/lightdm.git
-Vcs-Browser: https://salsa.debian.org/xfce-extras-team/lightdm
+Homepage: https://github.com/canonical/lightdm
+Vcs-Git: https://github.com/canonical/lightdm
 
 Package: lightdm
 Architecture: any
-Depends: adduser,
+Pre-Depends: dpkg (>= 1.15.7.2),
+Depends: ${misc:Depends},
+         ${shlibs:Depends},
+         adduser,
+         bash (>= 4.3),
          dbus,
-         libpam-systemd [linux-any] | logind [linux-any],
-         lightdm-gtk-greeter | lightdm-greeter,
-         lsb-base (>= 3.0-6),
-         ${misc:Depends},
-         ${shlibs:Depends}
-Recommends: xserver-xorg
-Suggests: accountsservice, upower, xserver-xephyr
+         libglib2.0-bin,
+         libpam-runtime (>= 0.76-14),
+         libpam-modules,
+         plymouth (>= 0.8.8-0ubuntu18) [linux-any]
+Recommends: xserver-xorg,
+            notification-daemon | mate-notification-daemon | lxqt-notificationd,
+            policykit-1-gnome | arctica-greeter | ukui-greeter,
+            unity-greeter | lightdm-greeter | lightdm-kde-greeter,
+Suggests: bindfs
+Conflicts: liblightdm-gobject-0-0,
+           liblightdm-qt-0-0,
 Provides: x-display-manager
-Description: simple display manager
- An X display manager that:
+Description: Display Manager
+ LightDM is a X display manager that:
   * Has a lightweight codebase
   * Is standards compliant (PAM, ConsoleKit, etc)
   * Has a well defined interface between the server and user interface
-  * Fully themeable
   * Cross-desktop (greeters can be written in any toolkit)
- .
- Additional software can be useful along with LightDM:
-  * xserver-xephyr can be used to add a nested X display by calling
-   'dm-tool add-nested-seat`
-  * upower can be used to suspend the computer from the display manager
-  * accountsservice is used to populate a user list with addition information.
 
-Package: lightdm-vala
+Package: liblightdm-gobject-1-0
+Section: libs
 Architecture: any
 Multi-Arch: same
-Depends: ${misc:Depends}, ${shlibs:Depends}
-Description: simple display manager (Vala files)
- This package contains the Vala files for the lightdm display manager
+Pre-Depends: ${misc:Pre-Depends}
+Depends: ${misc:Depends},
+         ${shlibs:Depends},
+Recommends: accountsservice
+Suggests: lightdm
+Description: LightDM GObject client library
+ A GObject based library for LightDM clients to use to interface with LightDM.
 
-Package: liblightdm-gobject-1-0
-Section: libs
+Package: gir1.2-lightdm-1
+Section: introspection
 Architecture: any
 Multi-Arch: same
-Pre-depends: ${misc:Pre-Depends}
-Depends: ${misc:Depends}, ${shlibs:Depends}
-Description: simple display manager (GObject library)
- This package contains the GObject library for lightdm, used by the GTK+
- greeter.
+Depends: ${misc:Depends},
+         ${gir:Depends},
+         liblightdm-gobject-1-0 (= ${binary:Version}),
+Description: Typelib file for liblightdm-1
+ A GObject based library for LightDM clients to use to interface with LightDM.
 
 Package: liblightdm-qt5-3-0
 Section: libs
@@ -82,19 +90,21 @@ Recommends: lightdm,
 Description: LightDM Qt 5 client library
  A Qt 5 based library for LightDM clients to use to interface with LightDM.
 
-Package: liblightdm-gobject-dev
+Package: liblightdm-gobject-1-dev
 Section: libdevel
 Architecture: any
-Depends: liblightdm-gobject-1-0 (= ${binary:Version}),
+Multi-Arch: same
+Depends: ${misc:Depends},
+         liblightdm-gobject-1-0 (= ${binary:Version}),
          gir1.2-lightdm-1 (= ${binary:Version}),
+         libdbus-glib-1-dev,
          libglib2.0-dev,
          libxklavier-dev,
-         libx11-dev,
-         ${misc:Depends},
-         ${shlibs:Depends}
-Description: simple display manager (GObject development files)
- This package contains the development files for lightdm.
- They can be used to build new greeters applications GTK+ based.
+Description: LightDM GObject client library (development files)
+ A GObject based library for LightDM clients to use to interface with LightDM.
+ .
+ This package contains header files and development information, which
+ is useful for building LightDM greeters and user switchers.
 
 Package: liblightdm-qt5-3-dev
 Section: libdevel
@@ -109,13 +119,11 @@ Description: LightDM Qt 5 client library
  This package contains header files and development information, which
  is useful for building LightDM greeters and user switchers.
 
-Package: gir1.2-lightdm-1
-Section: introspection
-Architecture: any
-Depends: liblightdm-gobject-1-0 (= ${binary:Version}), ${misc:Depends},
-         ${gir:Depends}
-Description: Typelib file for liblightdm-1
- liblightdm provides a library for building LightDM greeters and applications.
+Package: liblightdm-gobject-1-doc
+Section: doc
+Architecture: all
+Depends: ${misc:Depends},
+Description: LightDM client library (documentation)
+ A GObject based library for LightDM clients to use to interface with LightDM.
  .
- This package can be used by other packages using the GIRepository format to
- generate dynamic bindings for liblightdm.
+ This package contains HTML documentation.
diff -pruN 1.26.0-8/debian/copyright 1.30.0-0ubuntu8/debian/copyright
--- 1.26.0-8/debian/copyright	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/copyright	2019-08-14 02:18:58.000000000 +0000
@@ -1,118 +1,76 @@
-Format-Specification:
- http://wiki.debian.org/Proposals/CopyrightFormat?action=recall&rev=402
-Upstream-Name: lightdm
-Upstream-Maintainer: Robert Ancell
-Upstream-Source: https://launchpad.net/lightdm
+Format-Specification: http://svn.debian.org/wsvn/dep/web/deps/dep5.mdwn?op=file&rev=59
+Name: LightDM
+Maintainer: Robert Ancell <robert.ancell@gmail.com>
+Source: https://github.com/canonical/lightdm
 
-Files: debian/*
-Copyright: Â© 2010 Yves-Alexis Perez <corsac@debian.org>
-License: GPL-2
-
-Files: ./greeters/gtk/lightdm-gtk-greeter.c
- ./src/configuration.c
- ./src/configuration.h
- ./src/display-manager.c
- ./src/display-manager.h
- ./src/display-server.c
- ./src/display-server.h
- ./src/display.c
- ./src/display.h
- ./src/dmrc.c
- ./src/dmrc.h
- ./src/greeter.c
- ./src/greeter.h
- ./src/guest-account.c
- ./src/guest-account.h
- ./src/lightdm.c
- ./src/pam-session.c
- ./src/pam-session.h
- ./src/plymouth.c
- ./src/plymouth.h
- ./src/process.c
- ./src/process.h
- ./src/seat-xdmcp-session.c
- ./src/seat-xdmcp-session.h
- ./src/seat-xlocal.c
- ./src/seat-xlocal.h
- ./src/seat.c
- ./src/seat.h
- ./src/session.c
- ./src/session.h
- ./src/user.c
- ./src/user.h
- ./src/vt.c
- ./src/vt.h
- ./src/xauthority.c
- ./src/xauthority.h
- ./src/xdisplay.c
- ./src/xdisplay.h
- ./src/xdmcp-protocol.c
- ./src/xdmcp-protocol.h
- ./src/xdmcp-server.c
- ./src/xdmcp-server.h
- ./src/xdmcp-session-private.h
- ./src/xdmcp-session.c
- ./src/xdmcp-session.h
- ./src/xserver-local.c
- ./src/xserver-local.h
- ./src/xserver-remote.c
- ./src/xserver-remote.h
- ./src/xserver.c
- ./src/xserver.h
- ./src/xsession.c
- ./src/xsession.h
-Copyright: 2010-2011, Robert Ancell
+Files: *
+Copyright: 2010, Robert Ancell <robert.ancell@gmail.com>
 License: GPL-3+
 
-Files: ./liblightdm-gobject/greeter.c
- ./liblightdm-gobject/language.c
- ./liblightdm-gobject/layout.c
- ./liblightdm-gobject/lightdm.h
- ./liblightdm-gobject/lightdm/greeter.h
- ./liblightdm-gobject/lightdm/language.h
- ./liblightdm-gobject/lightdm/layout.h
- ./liblightdm-gobject/lightdm/power.h
- ./liblightdm-gobject/lightdm/session.h
- ./liblightdm-gobject/lightdm/system.h
- ./liblightdm-gobject/lightdm/user.h
- ./liblightdm-gobject/power.c
- ./liblightdm-gobject/session.c
- ./liblightdm-gobject/system.c
- ./liblightdm-gobject/user.c
-Copyright: 2010, Robert Ancell
- 2010-2011, Robert Ancell
+Files: liblightdm-gobject/* liblightdm-qt/*
+Copyright: 2010, Robert Ancell <robert.ancell@gmail.com>
 License: LGPL-3+
 
-Files: ./greeters/qt/greeter.cpp
- ./greeters/qt/greeter.h
- ./greeters/qt/loginprompt.cpp
- ./greeters/qt/loginprompt.h
- ./greeters/qt/main.cpp
- ./greeters/qt/panel.cpp
- ./greeters/qt/panel.h
-Copyright: 2010-2011, David Edmundson
+Files: debian/*
+Copyright:
+ 2010, Robert Ancell <robert.ancell@gmail.com>
+ 2010, Julien Lavergne <gilir@ubuntu.com>
 License: GPL-3+
 
-Files: ./liblightdm-qt/language.cpp
- ./liblightdm-qt/session.cpp
- ./liblightdm-qt/user.cpp
-Copyright: 2010-2011, David Edmundson
-License: LGPL-3+
-
-Files: ./liblightdm-qt/greeter.cpp
- ./liblightdm-qt/power.cpp
- ./liblightdm-qt/system.cpp
-Copyright: 2010-2011, David Edmundson
- 2010-2011, Robert Ancell
-License: LGPL-3+
+Files: debian/*.config
+       debian/*.init
+Copyright:
+ 1998-2002, 2004, 2005 Branden Robinson <branden@debian.org>.
+ 2006 Eugene Konev <ejka@imfi.kspu.ru>
+License: GPL-2+
 
-License: GPL-2
- On Debian systems, the complete text of the GNU General
- Public License version 2 can be found in
- `/usr/share/common-licenses/GPL-2'.
-
-License: GPL-3
- On Debian systems, the complete text of the GNU General
- Public License version 3 can be found in
- `/usr/share/common-licenses/GPL-3'.
+License: GPL-3+
+ This program is free software: you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation, either version 3 of the License, or
+ (at your option) any later version.
+ .
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ GNU General Public License for more details.
+ .
+ You should have received a copy of the GNU General Public License
+ along with this program.  If not, see <http://www.gnu.org/licenses/>.
+X-Comment: On Debian systems, the complete text of the GNU General
+ Public License can be found in `/usr/share/common-licenses/GPL-3â€™.
 
+License: LGPL-3+
+ This package is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 3 of the License, or (at your option) any later version.
+ .
+ This package is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+ Lesser General Public License for more details.
+ .
+ You should have received a copy of the GNU Lesser General Public
+ License along with this package; if not, write to the Free Software
+ Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301
+ USA
+X-Comment: On Debian systems, the complete text of the GNU Lesser General
+ Public License can be found in `/usr/share/common-licenses/LGPL-3â€™.
+
+License: GPL-2+
+ This program is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 2 of the License, or
+ (at your option) any later version.
+
+ This program is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License along
+ with this program; if not, write to the Free Software Foundation, Inc.,
+ 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+X-Comment: On Debian systems, the complete text of the GNU General
+ Public License can be found in `/usr/share/common-licenses/GPL-2â€™.
diff -pruN 1.26.0-8/debian/gbp.conf 1.30.0-0ubuntu8/debian/gbp.conf
--- 1.26.0-8/debian/gbp.conf	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/gbp.conf	1970-01-01 00:00:00.000000000 +0000
@@ -1,4 +0,0 @@
-[DEFAULT]
-pristine-tar = True
-debian-branch = debian/master
-upstream-branch = upstream/latest
diff -pruN 1.26.0-8/debian/gir1.2-lightdm-1.install 1.30.0-0ubuntu8/debian/gir1.2-lightdm-1.install
--- 1.26.0-8/debian/gir1.2-lightdm-1.install	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/gir1.2-lightdm-1.install	2019-08-14 02:18:58.000000000 +0000
@@ -1 +1 @@
-usr/lib/*/girepository-1.0 /usr/lib/
+debian/tmp/usr/lib/*/girepository-1.0
diff -pruN 1.26.0-8/debian/guest-account.sh 1.30.0-0ubuntu8/debian/guest-account.sh
--- 1.26.0-8/debian/guest-account.sh	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/guest-account.sh	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,229 @@
+#!/bin/sh -e
+# (C) 2008 Canonical Ltd.
+# Author: Martin Pitt <martin.pitt@ubuntu.com>
+# License: GPL v2 or later
+# modified by David D Lowe and Thomas Detoux
+#
+# Setup user and temporary home directory for guest session.
+# If this succeeds, this script needs to print the username as the last line to
+# stdout.
+
+export TEXTDOMAINDIR=/usr/share/locale-langpack
+export TEXTDOMAIN=lightdm
+
+# set the system wide locale for gettext calls
+if [ -f /etc/default/locale ]; then
+  . /etc/default/locale
+  LANGUAGE=
+  export LANG LANGUAGE
+fi
+
+is_system_user ()
+{
+  UID_MIN=$(cat /etc/login.defs | grep UID_MIN | awk '{print $2}')
+  SYS_UID_MIN=$(cat /etc/login.defs | grep SYS_UID_MIN | awk '{print $2}')
+  SYS_UID_MAX=$(cat /etc/login.defs | grep SYS_UID_MAX | awk '{print $2}')
+
+  SYS_UID_MIN=${SYS_UID_MIN:-101}
+  SYS_UID_MAX=${SYS_UID_MAX:-$(( UID_MIN - 1 ))}
+
+  [ ${1} -ge ${SYS_UID_MIN} ] && [ ${1} -le ${SYS_UID_MAX} ]
+}
+
+add_account ()
+{
+  temp_home=$(mktemp -td guest-XXXXXX)
+  GUEST_HOME=$(echo ${temp_home} | tr '[:upper:]' '[:lower:]')
+  GUEST_USER=${GUEST_HOME#/tmp/}
+  if [ "${GUEST_HOME}" != "${temp_home}" ]; then
+    mkdir -m 700 "${GUEST_HOME}" || {
+      echo "Failed to create ${GUEST_USER}'s home directory (${GUEST_HOME})"
+      exit 1
+    }
+    rmdir "${temp_home}"
+  fi
+
+  # if ${GUEST_USER} already exists, it must be a locked system account with no existing
+  # home directory
+  if PWSTAT=$(passwd -S ${GUEST_USER}) 2>/dev/null; then
+    if [ $(echo ${PWSTAT} | cut -f2 -d' ') != L ]; then
+      echo "User account ${GUEST_USER} already exists and is not locked"
+      exit 1
+    fi
+
+    PWENT=$(getent passwd ${GUEST_USER}) || {
+      echo "getent passwd ${GUEST_USER} failed"
+      exit 1
+    }
+
+    GUEST_UID=$(echo ${PWENT} | cut -f3 -d:)
+
+    if ! is_system_user ${GUEST_UID}; then
+      echo "Account ${GUEST_USER} is not a system user"
+      exit 1
+    fi
+
+    GUEST_HOME=$(echo ${PWENT} | cut -f6 -d:)
+
+    if [ ${GUEST_HOME} != / ] && [ ${GUEST_HOME#/tmp} = ${GUEST_HOME} ] && [ -d ${GUEST_HOME} ]; then
+      echo "Home directory of ${GUEST_USER} already exists"
+      exit 1
+    fi
+  else
+    # does not exist, so create it
+    useradd --system --home-dir ${GUEST_HOME} --comment $(gettext "Guest") --user-group --shell /bin/bash ${GUEST_USER} || {
+      rm -rf ${GUEST_HOME}
+      exit 1
+    }
+  fi
+
+  dist_gs=/usr/share/lightdm/guest-session
+  site_gs=/etc/guest-session
+
+  # create temporary home directory
+  mount -t tmpfs -o mode=700,uid=${GUEST_USER} none ${GUEST_HOME} || {
+    rm -rf ${GUEST_HOME}
+    exit 1
+  }
+
+  if [ -d ${site_gs}/skel ] && [ "$(ls -A ${site_gs}/skel)" ]; then
+    # Only perform union-mounting if BindFS is available
+    if [ -x /usr/bin/bindfs ]; then
+      bindfs_mount=true
+
+      # Try OverlayFS first
+      if modinfo -n overlay >/dev/null 2>&1; then
+        mkdir ${GUEST_HOME}/upper ${GUEST_HOME}/work
+        chown ${GUEST_USER}:${GUEST_USER} ${GUEST_HOME}/upper ${GUEST_HOME}/work
+
+        mount -t overlay -o lowerdir=${dist_gs}/skel:${site_gs}/skel,upperdir=${GUEST_HOME}/upper,workdir=${GUEST_HOME}/work overlay ${GUEST_HOME} || {
+          umount ${GUEST_HOME}
+          rm -rf ${GUEST_HOME}
+          exit 1
+        }
+      # If OverlayFS is not available, try AuFS
+      elif [ -x /sbin/mount.aufs ]; then
+        mount -t aufs -o br=${GUEST_HOME}:${dist_gs}/skel:${site_gs}/skel none ${GUEST_HOME} || {
+          umount ${GUEST_HOME}
+          rm -rf ${GUEST_HOME}
+          exit 1
+        }
+      # If none of them is available, fall back to copy over
+      else
+        cp -rT ${site_gs}/skel/ ${GUEST_HOME}
+        cp -rT ${dist_gs}/skel/ ${GUEST_HOME}
+        chown -R ${GUEST_USER}:${GUEST_USER} ${GUEST_HOME}
+        bindfs_mount=false
+      fi
+
+      if ${bindfs_mount}; then
+        # Wrap ${GUEST_HOME} in a BindFS mount, so that
+        # ${GUEST_USER} will be seen as the owner of ${GUEST_HOME}'s contents.
+        bindfs -u ${GUEST_USER} -g ${GUEST_USER} ${GUEST_HOME} ${GUEST_HOME} || {
+          umount ${GUEST_HOME} # union mount
+          umount ${GUEST_HOME} # tmpfs mount
+          rm -rf ${GUEST_HOME}
+          exit 1
+        }
+      fi
+    # If BindFS is not available, just fall back to copy over
+    else
+      cp -rT ${site_gs}/skel/ ${GUEST_HOME}
+      cp -rT ${dist_gs}/skel/ ${GUEST_HOME}
+      chown -R ${GUEST_USER}:${GUEST_USER} ${GUEST_HOME}
+    fi
+  else
+    cp -rT /etc/skel/ ${GUEST_HOME}
+    cp -rT ${dist_gs}/skel/ ${GUEST_HOME}
+    chown -R ${GUEST_USER}:${GUEST_USER} ${GUEST_HOME}
+  fi
+
+  # setup session
+  su ${GUEST_USER} -c "env HOME=${GUEST_HOME} site_gs=${site_gs} ${dist_gs}/setup.sh"
+
+  # set possible local guest session preferences
+  source_local_prefs() {
+    local USER=${GUEST_USER}
+    local HOME=${GUEST_HOME}
+    . ${site_gs}/prefs.sh
+    chown -R ${USER}:${USER} ${HOME}
+  }
+  if [ -f ${site_gs}/prefs.sh ]; then
+    source_local_prefs
+  fi
+
+  echo ${GUEST_USER}
+}
+
+remove_account ()
+{
+  GUEST_USER=${1}
+
+  PWENT=$(getent passwd ${GUEST_USER}) || {
+    echo "Error: invalid user ${GUEST_USER}"
+    exit 1
+  }
+
+  GUEST_UID=$(echo ${PWENT} | cut -f3 -d:)
+
+  if ! is_system_user ${GUEST_UID}; then
+    echo "Error: user ${GUEST_USER} is not a system user."
+    exit 1
+  fi
+
+  GUEST_HOME=$(echo ${PWENT} | cut -f6 -d:)
+
+  # kill all remaining processes
+  if [ -x /bin/loginctl ] || [ -x /usr/bin/loginctl ]; then
+    loginctl --signal=9 kill-user ${GUEST_USER} >/dev/null || true
+  else
+    while ps h -u ${GUEST_USER} >/dev/null
+    do
+      killall -9 -u ${GUEST_USER} || true
+      sleep 0.2;
+    done
+  fi
+
+  if [ ${GUEST_HOME} = ${GUEST_HOME#/tmp/} ]; then
+    echo "Warning: home directory ${GUEST_HOME} is not in /tmp/. It won't be removed."
+  else
+    umount ${GUEST_HOME} || umount -l ${GUEST_HOME} || true # BindFS mount
+    umount ${GUEST_HOME} || umount -l ${GUEST_HOME} || true # union mount
+    umount ${GUEST_HOME} || umount -l ${GUEST_HOME} || true # tmpfs mount
+    rm -rf ${GUEST_HOME}
+  fi
+
+  # remove leftovers in /tmp
+  find /tmp -mindepth 1 -maxdepth 1 -uid ${GUEST_UID} -print0 | xargs -0 rm -rf || true
+
+  # remove possible {/run,}/media/guest-XXXXXX folder
+  for media_dir in /run/media/${GUEST_USER} /media/${GUEST_USER}; do
+    if [ -d ${media_dir} ]; then
+      for dir in $(find ${media_dir} -mindepth 1 -maxdepth 1); do
+        umount ${dir} || true
+      done
+
+      rmdir ${media_dir} || true
+    fi
+  done
+
+  userdel --force ${GUEST_USER}
+}
+
+case ${1} in
+  add)
+    add_account
+    ;;
+  remove)
+    if [ -z ${2} ] ; then
+      echo "Usage: ${0} remove [account]"
+      exit 1
+    fi
+
+    remove_account ${2}
+    ;;
+  *)
+    echo "Usage: ${0} add"
+    echo "       ${0} remove [account]"
+    exit 1
+esac
diff -pruN 1.26.0-8/debian/guest-session-auto.sh 1.30.0-0ubuntu8/debian/guest-session-auto.sh
--- 1.26.0-8/debian/guest-session-auto.sh	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/guest-session-auto.sh	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,64 @@
+#!/bin/sh
+#
+# Copyright (C) 2013-2016 Canonical Ltd
+# Author: Gunnar Hjalmarsson <gunnarhj@ubuntu.com>
+#
+# This program is free software: you can redistribute it and/or modify it under
+# the terms of the GNU General Public License as published by the Free Software
+# Foundation, version 3 of the License.
+#
+# See http://www.gnu.org/copyleft/gpl.html the full text of the license.
+
+# This script is run via autostart at the launch of a guest session.
+
+export TEXTDOMAINDIR=/usr/share/locale-langpack
+export TEXTDOMAIN=lightdm
+
+# disable screen locking (GNOME, Unity)
+gsettings set org.gnome.desktop.lockdown disable-lock-screen true
+
+# disable screen locking (MATE)
+gsettings set org.mate.screensaver lock-enabled false
+
+# disable screenlocking (XFCE, Pantheon)
+gsettings set apps.light-locker light-locker-enabled false
+gsettings set apps.light-locker late-locking false
+gsettings set apps.light-locker lock-on-lid false
+gsettings set apps.light-locker lock-on-suspend false
+
+# info dialog about the temporary nature of a guest session
+dialog_content () {
+	TITLE=$(gettext 'Temporary Guest Session')
+	TEXT=$(gettext 'All data created during this guest session will be deleted
+when you log out, and settings will be reset to defaults.
+Please save files on some external device, for instance a
+USB stick, if you would like to access them again later.')
+	para2=$(gettext 'Another alternative is to save files in the
+/var/guest-data folder.')
+	test -w /var/guest-data && TEXT="$TEXT\n\n$para2"
+}
+if [ ! -f "$HOME"/.skip-guest-warning-dialog ] && [ "$XDG_CURRENT_DESKTOP" != 'MATE' ]; then
+	if [ "$KDE_FULL_SESSION" = true ] && [ -x /usr/bin/kdialog ]; then
+		dialog_content
+		TEXT_FILE="$HOME"/.guest-session-kdialog
+		echo -n "$TEXT" > $TEXT_FILE
+		{
+			# Sleep to wait for the the info dialog to start.
+			# This way the window will likely become focused.
+			sleep $DIALOG_SLEEP
+			kdialog --title "$TITLE" --textbox $TEXT_FILE 450 250
+			rm -f $TEXT_FILE
+		} &
+	elif [ -x /usr/bin/zenity ]; then
+		dialog_content
+		{
+			# Sleep to wait for the the info dialog to start.
+			# This way the window will likely become focused.
+			sleep $DIALOG_SLEEP
+			zenity --warning --no-wrap --title="$TITLE" --text="$TEXT"
+		} &
+	fi
+fi
+
+# run possible local startup commands
+test -f /etc/guest-session/auto.sh && . /etc/guest-session/auto.sh
diff -pruN 1.26.0-8/debian/guest-session-setup.sh 1.30.0-0ubuntu8/debian/guest-session-setup.sh
--- 1.26.0-8/debian/guest-session-setup.sh	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/guest-session-setup.sh	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,33 @@
+#!/bin/sh
+
+HOME=${HOME:-$(getent passwd $(whoami) | cut -f6 -d:)}
+
+# disable some services that are unnecessary for the guest session
+services="jockey-kde.desktop jockey-gtk.desktop update-notifier.desktop user-dirs-update-gtk.desktop"
+
+for service in ${services}; do
+  if [ -e /etc/xdg/autostart/${service} ]; then
+    [ -f ${HOME}/.config/autostart/${service} ] || cp /etc/xdg/autostart/${service} ${HOME}/.config/autostart
+    echo "X-GNOME-Autostart-enabled=false" >> ${HOME}/.config/autostart/${service}
+  fi
+done
+
+# disable Unity shortcut hint
+[ -d ${HOME}/.cache/unity ] || mkdir -p ${HOME}/.cache/unity
+touch ${HOME}/.cache/unity/first_run.stamp
+
+[ -d ${HOME}/.kde/share/config ] || mkdir -p ${HOME}/.kde/share/config
+echo "[Basic Settings]" >> ${HOME}/.kde/share/config/nepomukserverrc
+echo "Start Nepomuk=false" >> ${HOME}/.kde/share/config/nepomukserverrc
+
+echo "[Event]" >> ${HOME}/.kde/share/config/notificationhelper
+echo "hideHookNotifier=true" >> ${HOME}/.kde/share/config/notificationhelper
+echo "hideInstallNotifier=true" >> ${HOME}/.kde/share/config/notificationhelper
+echo "hideRestartNotifier=true" >> ${HOME}/.kde/share/config/notificationhelper
+
+# Load restricted session
+#dmrc='[Desktop]\nSession=guest-restricted'
+#/bin/echo -e ${dmrc} > ${HOME}/.dmrc
+
+# delay the launch of info dialog
+echo "export DIALOG_SLEEP=4" >> ${HOME}/.profile
diff -pruN 1.26.0-8/debian/guest-session-startup.desktop 1.30.0-0ubuntu8/debian/guest-session-startup.desktop
--- 1.26.0-8/debian/guest-session-startup.desktop	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/guest-session-startup.desktop	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,5 @@
+[Desktop Entry]
+Name=Custom startup commands for LightDM guest session
+Type=Application
+NoDisplay=true
+Exec=/usr/lib/lightdm/guest-session-auto.sh
diff -pruN 1.26.0-8/debian/liblightdm-gobject-1-0.symbols 1.30.0-0ubuntu8/debian/liblightdm-gobject-1-0.symbols
--- 1.26.0-8/debian/liblightdm-gobject-1-0.symbols	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/liblightdm-gobject-1-0.symbols	2019-08-14 02:18:58.000000000 +0000
@@ -1,97 +1,98 @@
 liblightdm-gobject-1.so.0 liblightdm-gobject-1-0 #MINVER#
- lightdm_get_can_hibernate@Base 1.2.2
- lightdm_get_can_restart@Base 1.2.2
- lightdm_get_can_shutdown@Base 1.2.2
- lightdm_get_can_suspend@Base 1.2.2
- lightdm_get_hostname@Base 1.2.2
- lightdm_get_language@Base 1.2.2
- lightdm_get_languages@Base 1.2.2
- lightdm_get_layout@Base 1.2.2
- lightdm_get_layouts@Base 1.2.2
- lightdm_get_motd@Base 1.26.0
- lightdm_get_os_id@Base 1.26.0
- lightdm_get_os_name@Base 1.26.0
- lightdm_get_os_pretty_name@Base 1.26.0
- lightdm_get_os_version@Base 1.26.0
- lightdm_get_os_version_id@Base 1.26.0
- lightdm_get_remote_sessions@Base 1.8.7
- lightdm_get_sessions@Base 1.2.2
- lightdm_greeter_authenticate@Base 1.2.2
- lightdm_greeter_authenticate_as_guest@Base 1.2.2
- lightdm_greeter_authenticate_autologin@Base 1.8.7
- lightdm_greeter_authenticate_remote@Base 1.8.7
- lightdm_greeter_cancel_authentication@Base 1.2.2
- lightdm_greeter_cancel_autologin@Base 1.2.2
- lightdm_greeter_connect_sync@Base 1.2.2
- lightdm_greeter_connect_to_daemon@Base 1.12.2
- lightdm_greeter_connect_to_daemon_finish@Base 1.12.2
- lightdm_greeter_connect_to_daemon_sync@Base 1.12.2
- lightdm_greeter_ensure_shared_data_dir@Base 1.12.2
- lightdm_greeter_ensure_shared_data_dir_finish@Base 1.12.2
+ lightdm_get_can_hibernate@Base 0.9.2
+ lightdm_get_can_restart@Base 0.9.2
+ lightdm_get_can_shutdown@Base 0.9.2
+ lightdm_get_can_suspend@Base 0.9.2
+ lightdm_get_hostname@Base 0.9.2
+ lightdm_get_language@Base 0.9.2
+ lightdm_get_languages@Base 0.9.2
+ lightdm_get_layout@Base 0.9.2
+ lightdm_get_layouts@Base 0.9.2
+ lightdm_get_motd@Base 1.21.0
+ lightdm_get_os_id@Base 1.21.0
+ lightdm_get_os_name@Base 1.21.0
+ lightdm_get_os_pretty_name@Base 1.21.0
+ lightdm_get_os_version@Base 1.21.0
+ lightdm_get_os_version_id@Base 1.21.0
+ lightdm_get_remote_sessions@Base 1.3.3
+ lightdm_get_sessions@Base 0.9.2
+ lightdm_greeter_authenticate@Base 0.9.2
+ lightdm_greeter_authenticate_as_guest@Base 0.9.2
+ lightdm_greeter_authenticate_autologin@Base 1.4.0
+ lightdm_greeter_authenticate_remote@Base 1.3.3
+ lightdm_greeter_cancel_authentication@Base 0.9.2
+ lightdm_greeter_cancel_autologin@Base 0.9.2
+ lightdm_greeter_connect_sync@Base 0.9.2
+ lightdm_greeter_connect_to_daemon@Base 1.11.1
+ lightdm_greeter_connect_to_daemon_finish@Base 1.11.1
+ lightdm_greeter_connect_to_daemon_sync@Base 1.11.1
+ lightdm_greeter_ensure_shared_data_dir@Base 1.11.1
+ lightdm_greeter_ensure_shared_data_dir_finish@Base 1.11.1
  lightdm_greeter_ensure_shared_data_dir_sync@Base 1.9.8
- lightdm_greeter_error_get_type@Base 1.26.0
- lightdm_greeter_error_quark@Base 1.26.0
- lightdm_greeter_get_authentication_user@Base 1.2.2
- lightdm_greeter_get_autologin_guest_hint@Base 1.2.2
- lightdm_greeter_get_autologin_session_hint@Base 1.26.0
- lightdm_greeter_get_autologin_timeout_hint@Base 1.2.2
- lightdm_greeter_get_autologin_user_hint@Base 1.2.2
- lightdm_greeter_get_default_session_hint@Base 1.2.2
- lightdm_greeter_get_has_guest_account_hint@Base 1.2.2
- lightdm_greeter_get_hide_users_hint@Base 1.2.2
- lightdm_greeter_get_hint@Base 1.2.2
- lightdm_greeter_get_in_authentication@Base 1.2.2
- lightdm_greeter_get_is_authenticated@Base 1.2.2
- lightdm_greeter_get_lock_hint@Base 1.2.2
- lightdm_greeter_get_select_guest_hint@Base 1.2.2
- lightdm_greeter_get_select_user_hint@Base 1.2.2
- lightdm_greeter_get_show_manual_login_hint@Base 1.2.2
- lightdm_greeter_get_show_remote_login_hint@Base 1.8.7
- lightdm_greeter_get_type@Base 1.2.2
- lightdm_greeter_new@Base 1.2.2
- lightdm_greeter_respond@Base 1.2.2
- lightdm_greeter_set_language@Base 1.2.2
- lightdm_greeter_set_resettable@Base 1.12.2
- lightdm_greeter_start_session@Base 1.12.2
- lightdm_greeter_start_session_finish@Base 1.12.2
- lightdm_greeter_start_session_sync@Base 1.2.2
- lightdm_hibernate@Base 1.2.2
- lightdm_language_get_code@Base 1.2.2
- lightdm_language_get_name@Base 1.2.2
- lightdm_language_get_territory@Base 1.2.2
- lightdm_language_get_type@Base 1.2.2
- lightdm_language_matches@Base 1.2.2
- lightdm_layout_get_description@Base 1.2.2
- lightdm_layout_get_name@Base 1.2.2
- lightdm_layout_get_short_description@Base 1.2.2
- lightdm_layout_get_type@Base 1.2.2
- lightdm_message_type_get_type@Base 1.16.0
- lightdm_prompt_type_get_type@Base 1.16.0
- lightdm_restart@Base 1.2.2
- lightdm_session_get_comment@Base 1.2.2
- lightdm_session_get_key@Base 1.2.2
- lightdm_session_get_name@Base 1.2.2
- lightdm_session_get_session_type@Base 1.8.7
- lightdm_session_get_type@Base 1.2.2
- lightdm_set_layout@Base 1.2.2
- lightdm_shutdown@Base 1.2.2
- lightdm_suspend@Base 1.2.2
- lightdm_user_get_background@Base 1.2.2
- lightdm_user_get_display_name@Base 1.2.2
- lightdm_user_get_has_messages@Base 1.2.2
- lightdm_user_get_home_directory@Base 1.2.2
- lightdm_user_get_image@Base 1.2.2
- lightdm_user_get_language@Base 1.2.2
- lightdm_user_get_layout@Base 1.2.2
- lightdm_user_get_layouts@Base 1.2.2
- lightdm_user_get_logged_in@Base 1.2.2
- lightdm_user_get_name@Base 1.2.2
- lightdm_user_get_real_name@Base 1.2.2
- lightdm_user_get_session@Base 1.2.2
- lightdm_user_get_type@Base 1.2.2
- lightdm_user_get_uid@Base 1.10.2
- lightdm_user_list_get_instance@Base 1.2.2
- lightdm_user_list_get_length@Base 1.2.2
- lightdm_user_list_get_type@Base 1.2.2
- lightdm_user_list_get_user_by_name@Base 1.2.2
- lightdm_user_list_get_users@Base 1.2.2
+ lightdm_greeter_error_get_type@Base 1.19.2
+ lightdm_greeter_error_quark@Base 1.19.2
+ lightdm_greeter_get_authentication_user@Base 0.9.2
+ lightdm_greeter_get_autologin_guest_hint@Base 0.9.2
+ lightdm_greeter_get_autologin_session_hint@Base 1.25.0
+ lightdm_greeter_get_autologin_timeout_hint@Base 0.9.2
+ lightdm_greeter_get_autologin_user_hint@Base 0.9.2
+ lightdm_greeter_get_default_session_hint@Base 0.9.2
+ lightdm_greeter_get_has_guest_account_hint@Base 0.9.2
+ lightdm_greeter_get_hide_users_hint@Base 0.9.2
+ lightdm_greeter_get_hint@Base 0.9.2
+ lightdm_greeter_get_in_authentication@Base 0.9.2
+ lightdm_greeter_get_is_authenticated@Base 0.9.2
+ lightdm_greeter_get_lock_hint@Base 1.1.3
+ lightdm_greeter_get_select_guest_hint@Base 0.9.2
+ lightdm_greeter_get_select_user_hint@Base 0.9.2
+ lightdm_greeter_get_show_manual_login_hint@Base 1.1.7
+ lightdm_greeter_get_show_remote_login_hint@Base 1.4.0
+ lightdm_greeter_get_type@Base 0.9.2
+ lightdm_greeter_new@Base 0.9.2
+ lightdm_greeter_respond@Base 0.9.2
+ lightdm_greeter_set_language@Base 0.9.8
+ lightdm_greeter_set_resettable@Base 1.11.1
+ lightdm_greeter_start_session@Base 1.11.1
+ lightdm_greeter_start_session_finish@Base 1.11.1
+ lightdm_greeter_start_session_sync@Base 0.9.2
+ lightdm_hibernate@Base 0.9.2
+ lightdm_language_get_code@Base 0.9.2
+ lightdm_language_get_name@Base 0.9.2
+ lightdm_language_get_territory@Base 0.9.2
+ lightdm_language_get_type@Base 0.9.2
+ lightdm_language_matches@Base 0.9.2
+ lightdm_layout_get_description@Base 0.9.2
+ lightdm_layout_get_name@Base 0.9.2
+ lightdm_layout_get_short_description@Base 0.9.2
+ lightdm_layout_get_type@Base 0.9.2
+ lightdm_message_type_get_type@Base 1.15.2
+ lightdm_prompt_type_get_type@Base 1.15.2
+ lightdm_restart@Base 0.9.2
+ lightdm_session_get_comment@Base 0.9.2
+ lightdm_session_get_key@Base 0.9.2
+ lightdm_session_get_name@Base 0.9.2
+ lightdm_session_get_session_type@Base 1.7.8
+ lightdm_session_get_type@Base 0.9.2
+ lightdm_set_layout@Base 0.9.2
+ lightdm_shutdown@Base 0.9.2
+ lightdm_suspend@Base 0.9.2
+ lightdm_user_get_background@Base 1.1.1
+ lightdm_user_get_display_name@Base 0.9.2
+ lightdm_user_get_has_messages@Base 1.1.3
+ lightdm_user_get_home_directory@Base 0.9.2
+ lightdm_user_get_image@Base 0.9.2
+ lightdm_user_get_is_locked@Base 1.30.0
+ lightdm_user_get_language@Base 0.9.2
+ lightdm_user_get_layout@Base 0.9.2
+ lightdm_user_get_layouts@Base 1.1.3
+ lightdm_user_get_logged_in@Base 0.9.2
+ lightdm_user_get_name@Base 0.9.2
+ lightdm_user_get_real_name@Base 0.9.2
+ lightdm_user_get_session@Base 0.9.2
+ lightdm_user_get_type@Base 0.9.2
+ lightdm_user_get_uid@Base 1.11.1
+ lightdm_user_list_get_instance@Base 0.9.2
+ lightdm_user_list_get_length@Base 0.9.2
+ lightdm_user_list_get_type@Base 0.9.2
+ lightdm_user_list_get_user_by_name@Base 0.9.2
+ lightdm_user_list_get_users@Base 0.9.2
diff -pruN 1.26.0-8/debian/liblightdm-gobject-1-dev.install 1.30.0-0ubuntu8/debian/liblightdm-gobject-1-dev.install
--- 1.26.0-8/debian/liblightdm-gobject-1-dev.install	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/liblightdm-gobject-1-dev.install	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,5 @@
+usr/share/gir-1.0/LightDM-*.gir
+usr/include/lightdm-gobject-*
+usr/lib/*/pkgconfig/liblightdm-gobject-*.pc
+usr/lib/*/liblightdm-gobject-*.so
+usr/share/vala/vapi
diff -pruN 1.26.0-8/debian/liblightdm-gobject-1-doc.install 1.30.0-0ubuntu8/debian/liblightdm-gobject-1-doc.install
--- 1.26.0-8/debian/liblightdm-gobject-1-doc.install	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/liblightdm-gobject-1-doc.install	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1 @@
+usr/share/gtk-doc/html/lightdm-gobject-*
diff -pruN 1.26.0-8/debian/liblightdm-gobject-dev.install 1.30.0-0ubuntu8/debian/liblightdm-gobject-dev.install
--- 1.26.0-8/debian/liblightdm-gobject-dev.install	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/liblightdm-gobject-dev.install	1970-01-01 00:00:00.000000000 +0000
@@ -1,6 +0,0 @@
-usr/include/lightdm-gobject*
-usr/lib/*/pkgconfig/liblightdm-gobject-*.pc
-usr/lib/*/liblightdm-gobject-*.a
-usr/lib/*/liblightdm-gobject-*.so
-usr/share/gtk-doc
-usr/share/gir-1.0/*.gir
\ No newline at end of file
diff -pruN 1.26.0-8/debian/liblightdm-qt5-3-0.symbols 1.30.0-0ubuntu8/debian/liblightdm-qt5-3-0.symbols
--- 1.26.0-8/debian/liblightdm-qt5-3-0.symbols	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/liblightdm-qt5-3-0.symbols	2019-08-14 02:18:58.000000000 +0000
@@ -8,67 +8,97 @@ liblightdm-qt5-3.so.0 liblightdm-qt5-3-0
  (c++|regex)"^vtable for .*@Base$" 0
  (c++|optional)"QByteArray::~QByteArray()@Base" 0
  (c++|optional)"QString::~QString()@Base" 0
- (c++)"QLightDM::UsersModel::UsersModel(QObject*)@Base" 1.18.3
- (c++)"QLightDM::UsersModel::~UsersModel()@Base" 1.18.3
- (c++)"QLightDM::SessionsModel::SessionsModel(QLightDM::SessionsModel::SessionType, QObject*)@Base" 1.18.3
- (c++)"QLightDM::SessionsModel::SessionsModel(QObject*)@Base" 1.18.3
- (c++)"QLightDM::SessionsModel::~SessionsModel()@Base" 1.18.3
- (c++)"QLightDM::PowerInterface::canRestart()@Base" 1.18.3
- (c++)"QLightDM::PowerInterface::canSuspend()@Base" 1.18.3
- (c++)"QLightDM::PowerInterface::canShutdown()@Base" 1.18.3
- (c++)"QLightDM::PowerInterface::canHibernate()@Base" 1.18.3
- (c++)"QLightDM::PowerInterface::PowerInterfacePrivate::PowerInterfacePrivate()@Base" 1.18.3
- (c++)"QLightDM::PowerInterface::restart()@Base" 1.18.3
- (c++)"QLightDM::PowerInterface::suspend()@Base" 1.18.3
- (c++)"QLightDM::PowerInterface::shutdown()@Base" 1.18.3
- (c++)"QLightDM::PowerInterface::hibernate()@Base" 1.18.3
- (c++)"QLightDM::PowerInterface::PowerInterface(QObject*)@Base" 1.18.3
- (c++)"QLightDM::PowerInterface::~PowerInterface()@Base" 1.18.3
- (c++)"QLightDM::Greeter::showPrompt(QString, QLightDM::Greeter::PromptType)@Base" 1.18.3
- (c++)"QLightDM::Greeter::connectSync()@Base" 1.18.3
- (c++)"QLightDM::Greeter::setLanguage(QString const&)@Base" 1.18.3
- (c++)"QLightDM::Greeter::showMessage(QString, QLightDM::Greeter::MessageType)@Base" 1.18.3
- (c++)"QLightDM::Greeter::authenticate(QString const&)@Base" 1.18.3
- (c++)"QLightDM::Greeter::setResettable(bool)@Base" 1.18.3
- (c++)"QLightDM::Greeter::cancelAutologin()@Base" 1.18.3
- (c++)"QLightDM::Greeter::startSessionSync(QString const&)@Base" 1.18.3
- (c++)"QLightDM::Greeter::authenticateRemote(QString const&, QString const&)@Base" 1.18.3
- (c++)"QLightDM::Greeter::authenticateAsGuest()@Base" 1.18.3
- (c++)"QLightDM::Greeter::connectToDaemonSync()@Base" 1.18.3
- (c++)"QLightDM::Greeter::cancelAuthentication()@Base" 1.18.3
- (c++)"QLightDM::Greeter::authenticateAutologin()@Base" 1.18.3
- (c++)"QLightDM::Greeter::autologinTimerExpired()@Base" 1.18.3
- (c++)"QLightDM::Greeter::authenticationComplete()@Base" 1.18.3
- (c++)"QLightDM::Greeter::ensureSharedDataDirSync(QString const&)@Base" 1.18.3
- (c++)"QLightDM::Greeter::idle()@Base" 1.18.3
- (c++)"QLightDM::Greeter::reset()@Base" 1.18.3
- (c++)"QLightDM::Greeter::respond(QString const&)@Base" 1.18.3
- (c++)"QLightDM::Greeter::Greeter(QObject*)@Base" 1.18.3
- (c++)"QLightDM::Greeter::~Greeter()@Base" 1.18.3
- (c++)"QLightDM::UsersModel::data(QModelIndex const&, int) const@Base" 1.18.3
- (c++)"QLightDM::UsersModel::rowCount(QModelIndex const&) const@Base" 1.18.3
- (c++)"QLightDM::SessionsModel::data(QModelIndex const&, int) const@Base" 1.18.3
- (c++)"QLightDM::SessionsModel::rowCount(QModelIndex const&) const@Base" 1.18.3
- (c++)"QLightDM::Greeter::hideUsersHint() const@Base" 1.18.3
- (c++)"QLightDM::Greeter::selectUserHint() const@Base" 1.18.3
- (c++)"QLightDM::Greeter::isAuthenticated() const@Base" 1.18.3
- (c++)"QLightDM::Greeter::selectGuestHint() const@Base" 1.18.3
- (c++)"QLightDM::Greeter::inAuthentication() const@Base" 1.18.3
- (c++)"QLightDM::Greeter::autologinUserHint() const@Base" 1.18.3
- (c++)"QLightDM::Greeter::authenticationUser() const@Base" 1.18.3
- (c++)"QLightDM::Greeter::autologinGuestHint() const@Base" 1.18.3
- (c++)"QLightDM::Greeter::defaultSessionHint() const@Base" 1.18.3
- (c++)"QLightDM::Greeter::hasGuestAccountHint() const@Base" 1.18.3
- (c++)"QLightDM::Greeter::showManualLoginHint() const@Base" 1.18.3
- (c++)"QLightDM::Greeter::showRemoteLoginHint() const@Base" 1.18.3
- (c++)"QLightDM::Greeter::autologinTimeoutHint() const@Base" 1.18.3
- (c++)"QLightDM::Greeter::getHint(QString const&) const@Base" 1.18.3
- (c++)"QLightDM::Greeter::hostname() const@Base" 1.18.3
- (c++)"QLightDM::Greeter::lockHint() const@Base" 1.18.3
- (c++)"QLightDM::Greeter::osVersionId() const@Base" 1.26.0
- (c++)"QLightDM::Greeter::osPrettyName() const@Base" 1.26.0
- (c++)"QLightDM::Greeter::autologinSessionHint() const@Base" 1.26.0
- (c++)"QLightDM::Greeter::motd() const@Base" 1.26.0
- (c++)"QLightDM::Greeter::osId() const@Base" 1.26.0
- (c++)"QLightDM::Greeter::osName() const@Base" 1.26.0
- (c++)"QLightDM::Greeter::osVersion() const@Base" 1.26.0
+ (c++|optional)"QVector<int>::~QVector()@Base" 0
+ (c++|optional)"QHash<int, QByteArray>::deleteNode2(QHashData::Node*)@Base" 0
+ (c++|optional)"QHash<int, QByteArray>::duplicateNode(QHashData::Node*, void*)@Base" 0
+ (c++|optional)"QHash<int, QByteArray>::findNode(int const&, unsigned int) const@Base" 0
+ (c++|optional)"QHash<int, QByteArray>::~QHash()@Base" 0
+ (c++|optional)"SessionItem::~SessionItem()@Base" 1.21.3
+ (c++|optional)"SessionsModelPrivate::loadSessions(QLightDM::SessionsModel::SessionType)@Base" 1.21.3
+ (c++|optional)"SessionsModelPrivate::SessionsModelPrivate(QLightDM::SessionsModel*)@Base" 1.21.3
+ (c++|optional)"QList<SessionItem>::detach_helper_grow(int, int)@Base" 1.21.3
+ (c++|optional)"QList<SessionItem>::append(SessionItem const&)@Base" 1.21.3
+ (c++|optional)"UserItem::displayName() const@Base" 1.21.3
+ (c++|optional)"UserItem::~UserItem()@Base" 1.21.3
+ (c++|optional)"QList<UserItem>::detach_helper(int)@Base" 1.21.3
+ (c++|optional)"QList<UserItem>::detach_helper_grow(int, int)@Base" 1.21.3
+ (c++|optional)"QList<UserItem>::append(UserItem const&)@Base" 1.21.3
+ (c++)"QLightDM::UsersModel::UsersModel(QObject*)@Base" 1.21.3
+ (c++)"QLightDM::UsersModel::~UsersModel()@Base" 1.21.3
+ (c++)"QLightDM::SessionsModel::SessionsModel(QLightDM::SessionsModel::SessionType, QObject*)@Base" 1.21.3
+ (c++)"QLightDM::SessionsModel::SessionsModel(QObject*)@Base" 1.21.3
+ (c++)"QLightDM::SessionsModel::SessionsModel(QLightDM::SessionsModel::SessionType, QObject*)@Base" 1.21.3
+ (c++)"QLightDM::SessionsModel::SessionsModel(QObject*)@Base" 1.21.3
+ (c++)"QLightDM::SessionsModel::~SessionsModel()@Base" 1.21.3
+ (c++)"QLightDM::GreeterPrivate::cb_showPrompt(_LightDMGreeter*, char const*, LightDMPromptType, void*)@Base" 1.21.3
+ (c++)"QLightDM::GreeterPrivate::cb_showMessage(_LightDMGreeter*, char const*, LightDMMessageType, void*)@Base" 1.21.3
+ (c++)"QLightDM::GreeterPrivate::cb_autoLoginExpired(_LightDMGreeter*, void*)@Base" 1.21.3
+ (c++)"QLightDM::GreeterPrivate::cb_authenticationComplete(_LightDMGreeter*, void*)@Base" 1.21.3
+ (c++)"QLightDM::GreeterPrivate::cb_idle(_LightDMGreeter*, void*)@Base" 1.21.3
+ (c++)"QLightDM::GreeterPrivate::cb_reset(_LightDMGreeter*, void*)@Base" 1.21.3
+ (c++)"QLightDM::GreeterPrivate::GreeterPrivate(QLightDM::Greeter*)@Base" 1.21.3
+ (c++)"QLightDM::PowerInterface::canRestart()@Base" 1.21.3
+ (c++)"QLightDM::PowerInterface::canSuspend()@Base" 1.21.3
+ (c++)"QLightDM::PowerInterface::canShutdown()@Base" 1.21.3
+ (c++)"QLightDM::PowerInterface::canHibernate()@Base" 1.21.3
+ (c++)"QLightDM::PowerInterface::PowerInterfacePrivate::PowerInterfacePrivate()@Base" 1.21.3
+ (c++)"QLightDM::PowerInterface::restart()@Base" 1.21.3
+ (c++)"QLightDM::PowerInterface::suspend()@Base" 1.21.3
+ (c++)"QLightDM::PowerInterface::shutdown()@Base" 1.21.3
+ (c++)"QLightDM::PowerInterface::hibernate()@Base" 1.21.3
+ (c++)"QLightDM::PowerInterface::PowerInterface(QObject*)@Base" 1.21.3
+ (c++)"QLightDM::PowerInterface::~PowerInterface()@Base" 1.21.3
+ (c++)"QLightDM::UsersModelPrivate::cb_userAdded(_LightDMUserList*, _LightDMUser*, void*)@Base" 1.21.3
+ (c++)"QLightDM::UsersModelPrivate::cb_userChanged(_LightDMUserList*, _LightDMUser*, void*)@Base" 1.21.3
+ (c++)"QLightDM::UsersModelPrivate::cb_userRemoved(_LightDMUserList*, _LightDMUser*, void*)@Base" 1.21.3
+ (c++)"QLightDM::UsersModelPrivate::loadUsers()@Base" 1.21.3
+ (c++)"QLightDM::UsersModelPrivate::UsersModelPrivate(QLightDM::UsersModel*)@Base" 1.21.3
+ (c++)"QLightDM::UsersModelPrivate::~UsersModelPrivate()@Base" 1.21.3
+ (c++)"QLightDM::Greeter::showPrompt(QString, QLightDM::Greeter::PromptType)@Base" 1.21.3
+ (c++)"QLightDM::Greeter::connectSync()@Base" 1.21.3
+ (c++)"QLightDM::Greeter::setLanguage(QString const&)@Base" 1.21.3
+ (c++)"QLightDM::Greeter::showMessage(QString, QLightDM::Greeter::MessageType)@Base" 1.21.3
+ (c++)"QLightDM::Greeter::authenticate(QString const&)@Base" 1.21.3
+ (c++)"QLightDM::Greeter::setResettable(bool)@Base" 1.21.3
+ (c++)"QLightDM::Greeter::cancelAutologin()@Base" 1.21.3
+ (c++)"QLightDM::Greeter::startSessionSync(QString const&)@Base" 1.21.3
+ (c++)"QLightDM::Greeter::authenticateRemote(QString const&, QString const&)@Base" 1.21.3
+ (c++)"QLightDM::Greeter::authenticateAsGuest()@Base" 1.21.3
+ (c++)"QLightDM::Greeter::connectToDaemonSync()@Base" 1.21.3
+ (c++)"QLightDM::Greeter::cancelAuthentication()@Base" 1.21.3
+ (c++)"QLightDM::Greeter::authenticateAutologin()@Base" 1.21.3
+ (c++)"QLightDM::Greeter::autologinTimerExpired()@Base" 1.21.3
+ (c++)"QLightDM::Greeter::authenticationComplete()@Base" 1.21.3
+ (c++)"QLightDM::Greeter::ensureSharedDataDirSync(QString const&)@Base" 1.21.3
+ (c++)"QLightDM::Greeter::idle()@Base" 1.21.3
+ (c++)"QLightDM::Greeter::reset()@Base" 1.21.3
+ (c++)"QLightDM::Greeter::respond(QString const&)@Base" 1.21.3
+ (c++)"QLightDM::Greeter::Greeter(QObject*)@Base" 1.21.3
+ (c++)"QLightDM::Greeter::~Greeter()@Base" 1.21.3
+ (c++)"QLightDM::UsersModel::data(QModelIndex const&, int) const@Base" 1.21.3
+ (c++)"QLightDM::UsersModel::rowCount(QModelIndex const&) const@Base" 1.21.3
+ (c++)"QLightDM::SessionsModel::data(QModelIndex const&, int) const@Base" 1.21.3
+ (c++)"QLightDM::SessionsModel::rowCount(QModelIndex const&) const@Base" 1.21.3
+ (c++)"QLightDM::Greeter::osVersionId() const@Base" 1.21.3
+ (c++)"QLightDM::Greeter::osPrettyName() const@Base" 1.21.3
+ (c++)"QLightDM::Greeter::hideUsersHint() const@Base" 1.21.3
+ (c++)"QLightDM::Greeter::selectUserHint() const@Base" 1.21.3
+ (c++)"QLightDM::Greeter::isAuthenticated() const@Base" 1.21.3
+ (c++)"QLightDM::Greeter::selectGuestHint() const@Base" 1.21.3
+ (c++)"QLightDM::Greeter::inAuthentication() const@Base" 1.21.3
+ (c++)"QLightDM::Greeter::autologinSessionHint() const@Base" 1.25.0
+ (c++)"QLightDM::Greeter::autologinUserHint() const@Base" 1.21.3
+ (c++)"QLightDM::Greeter::authenticationUser() const@Base" 1.21.3
+ (c++)"QLightDM::Greeter::autologinGuestHint() const@Base" 1.21.3
+ (c++)"QLightDM::Greeter::defaultSessionHint() const@Base" 1.21.3
+ (c++)"QLightDM::Greeter::hasGuestAccountHint() const@Base" 1.21.3
+ (c++)"QLightDM::Greeter::showManualLoginHint() const@Base" 1.21.3
+ (c++)"QLightDM::Greeter::showRemoteLoginHint() const@Base" 1.21.3
+ (c++)"QLightDM::Greeter::autologinTimeoutHint() const@Base" 1.21.3
+ (c++)"QLightDM::Greeter::motd() const@Base" 1.21.3
+ (c++)"QLightDM::Greeter::osId() const@Base" 1.21.3
+ (c++)"QLightDM::Greeter::osName() const@Base" 1.21.3
+ (c++)"QLightDM::Greeter::getHint(QString const&) const@Base" 1.21.3
+ (c++)"QLightDM::Greeter::hostname() const@Base" 1.21.3
+ (c++)"QLightDM::Greeter::lockHint() const@Base" 1.21.3
+ (c++)"QLightDM::Greeter::osVersion() const@Base" 1.21.3
diff -pruN 1.26.0-8/debian/liblightdm-qt5-3-dev.install 1.30.0-0ubuntu8/debian/liblightdm-qt5-3-dev.install
--- 1.26.0-8/debian/liblightdm-qt5-3-dev.install	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/liblightdm-qt5-3-dev.install	2019-08-14 02:18:58.000000000 +0000
@@ -1,4 +1,3 @@
 usr/include/lightdm-qt5-*
 usr/lib/*/pkgconfig/liblightdm-qt5-*.pc
-usr/lib/*/liblightdm-qt5-*.a
 usr/lib/*/liblightdm-qt5-*.so
diff -pruN 1.26.0-8/debian/lightdm-greeter-session 1.30.0-0ubuntu8/debian/lightdm-greeter-session
--- 1.26.0-8/debian/lightdm-greeter-session	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/lightdm-greeter-session	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,36 @@
+#!/bin/sh
+# -*- Mode: sh; indent-tabs-mode: nil; tab-width: 4 -*-
+#
+# Copyright (C) 2011 Canonical Ltd
+# Author: Michael Terry <michael.terry@canonical.com>
+#
+# This program is free software: you can redistribute it and/or modify it under
+# the terms of the GNU General Public License as published by the Free Software
+# Foundation, version 3 of the License.
+#
+# See http://www.gnu.org/copyleft/gpl.html the full text of the license.
+
+# This wrapper merely ensures that dbus-daemon lives only as long as this
+# script does.  Otherwise, it's very easy for dbus-daemon to be autolaunched
+# and detached from the greeter.
+
+trap cleanup TERM EXIT
+
+cleanup()
+{
+    trap - TERM EXIT
+    if [ -n "$DBUS_SESSION_BUS_PID" ]; then
+        kill "$DBUS_SESSION_BUS_PID"
+    fi
+    if [ -n "$CMD_PID" ]; then
+        kill "$CMD_PID"
+    fi
+    exit 0
+}
+
+[ -n "$DBUS_SESSION_BUS_ADDRESS" ] || eval `dbus-launch --sh-syntax`
+
+exec $@ &
+CMD_PID=$!
+wait $CMD_PID
+CMD_PID=
diff -pruN 1.26.0-8/debian/lightdm-session 1.30.0-0ubuntu8/debian/lightdm-session
--- 1.26.0-8/debian/lightdm-session	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/lightdm-session	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,117 @@
+#!/bin/bash
+#
+# LightDM wrapper to run around X sessions.
+
+echo "Running X session wrapper"
+
+message () {
+  # pretty-print messages of arbitrary length; use xmessage if it
+  # is available and $DISPLAY is set
+  MESSAGE="$PROGNAME: $*"
+  echo "$MESSAGE" | fold -s -w ${COLUMNS:-80} >&2
+  if [ -n "$DISPLAY" ] && which xmessage > /dev/null 2>&1; then
+    echo "$MESSAGE" | fold -s -w ${COLUMNS:-80} | xmessage -center -file -
+  fi
+}
+
+errormsg () {
+  # exit script with error
+  message "$*"
+  exit 1
+}
+
+# temporary storage of error messages
+ERR=$(mktemp --tmpdir config-err-XXXXXX)
+
+source_with_error_check () {
+    CONFIG_FILE="$1"
+    echo "Loading $CONFIG_FILE"
+    BASH_VERSION= . "$CONFIG_FILE" 2>"$ERR"
+    if [ -s "$ERR" ]; then
+        . /usr/lib/lightdm/config-error-dialog.sh
+    fi
+    cat "$ERR" >&2
+    truncate -s 0 "$ERR"
+}
+
+# Load profile
+for file in "/etc/profile" "$HOME/.profile" "/etc/xprofile" "$HOME/.xprofile"; do
+    if [ -f "$file" ]; then
+        source_with_error_check "$file"
+    fi
+done
+
+# Load resources
+if type xrdb >/dev/null 2>&1; then
+    xresourcedir="/etc/X11/Xresources"
+    if [ -d "$xresourcedir" ]; then
+        for file in $xresourcedir/*; do
+            echo "Loading resource: $file"
+            xrdb -merge "$file"
+        done
+    fi
+    xresourcefile="$HOME/.Xresources"
+    if [ -f "$xresourcefile" ]; then
+        echo "Loading resource: $xresourcefile"
+        xrdb -merge "$xresourcefile"
+    fi
+fi
+
+# Load keymaps
+if type setxkbmap >/dev/null 2>&1; then
+    for file in "/etc/X11/Xkbmap" "$HOME/.Xkbmap"; do
+        if [ -f "$file" ]; then
+            echo "Loading keymap: $file"
+            setxkbmap `cat "$file"`
+            XKB_IN_USE=yes
+        fi
+    done
+fi
+
+# Load xmodmap if not using XKB
+if type xmodmap >/dev/null 2>&1; then
+    if [ -z "$XKB_IN_USE" ]; then
+        for file in "/etc/X11/Xmodmap" "$HOME/.Xmodmap"; do
+            if [ -f "$file" ]; then
+               echo "Loading modmap: $file"
+               xmodmap "$file"
+            fi
+        done
+    fi
+fi
+
+unset XKB_IN_USE
+
+# Run all system xinitrc shell scripts.
+xinitdir="/etc/X11/xinit/xinitrc.d"
+if [ -d "$xinitdir" ]; then
+    for script in $xinitdir/*; do
+        echo "Loading xinit script $script"
+        if [ -x "$script" -a ! -d "$script" ]; then
+            . "$script"
+        fi
+    done
+fi
+
+# Load Xsession scripts
+# OPTIONFILE, USERXSESSION, USERXSESSIONRC and ALTUSERXSESSION are required
+# by the scripts to work
+xsessionddir="/etc/X11/Xsession.d"
+OPTIONFILE=/etc/X11/Xsession.options
+USERXSESSION=$HOME/.xsession
+USERXSESSIONRC=$HOME/.xsessionrc
+ALTUSERXSESSION=$HOME/.Xsession
+
+if [ -d "$xsessionddir" ]; then
+    for i in `ls $xsessionddir`; do
+        script="$xsessionddir/$i"
+        echo "Loading X session script $script"
+        if [ -r "$script"  -a -f "$script" ] && expr "$i" : '^[[:alnum:]_-]\+$' > /dev/null; then
+            . "$script"
+        fi
+    done
+fi
+
+echo "X session wrapper complete, running session $@"
+
+exec $@
diff -pruN 1.26.0-8/debian/lightdm-vala.install 1.30.0-0ubuntu8/debian/lightdm-vala.install
--- 1.26.0-8/debian/lightdm-vala.install	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/lightdm-vala.install	1970-01-01 00:00:00.000000000 +0000
@@ -1 +0,0 @@
-usr/share/vala
diff -pruN 1.26.0-8/debian/lightdm-xsession.desktop 1.30.0-0ubuntu8/debian/lightdm-xsession.desktop
--- 1.26.0-8/debian/lightdm-xsession.desktop	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/lightdm-xsession.desktop	1970-01-01 00:00:00.000000000 +0000
@@ -1,6 +0,0 @@
-[Desktop Entry]
-Version=1.0
-Name=Default Xsession
-Exec=default
-Icon=
-Type=Application
diff -pruN 1.26.0-8/debian/lightdm.config 1.30.0-0ubuntu8/debian/lightdm.config
--- 1.26.0-8/debian/lightdm.config	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/lightdm.config	2019-08-14 02:18:58.000000000 +0000
@@ -44,8 +44,17 @@ else
   fi
 fi
 
-db_input high shared/default-x-display-manager || :
-db_go || :
+# when installing from scratch as part of a release upgrade, default to
+# lightdm, otherwise ask
+
+# GDM transition: When upgrading from an old version, don't ask the question.
+if [ -z "$2" -a -n "$RELEASE_UPGRADE_IN_PROGRESS" ]; then
+    db_set shared/default-x-display-manager lightdm
+    db_fset shared/default-x-display-manager seen true
+elif ! dpkg --compare-versions "$2" lt-nl "1.22.0-0ubuntu6~"; then
+    db_input high shared/default-x-display-manager || :
+    db_go || :
+fi
 
 # using this display manager?
 NEW_DEFAULT=
diff -pruN 1.26.0-8/debian/lightdm.dirs 1.30.0-0ubuntu8/debian/lightdm.dirs
--- 1.26.0-8/debian/lightdm.dirs	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/lightdm.dirs	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,6 @@
+/etc/guest-session
+/etc/lightdm/lightdm.conf.d
+/etc/X11
+/var/cache/lightdm
+/var/lib/lightdm-data
+/var/log/lightdm
diff -pruN 1.26.0-8/debian/lightdm.init 1.30.0-0ubuntu8/debian/lightdm.init
--- 1.26.0-8/debian/lightdm.init	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/lightdm.init	2019-08-14 02:18:58.000000000 +0000
@@ -1,80 +1,112 @@
-#! /bin/sh
+#!/bin/sh
+
+# Largely adapted from xdm's init script:
+# Copyright 1998-2002, 2004, 2005 Branden Robinson <branden@debian.org>.
+# Copyright 2006 Eugene Konev <ejka@imfi.kspu.ru>
+#
+# This is free software; you may redistribute it and/or modify
+# it under the terms of the GNU General Public License as
+# published by the Free Software Foundation; either version 2,
+# or (at your option) any later version.
+#
+# This is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License with
+# the Debian operating system, in /usr/share/common-licenses/GPL;  if
+# not, write to the Free Software Foundation, Inc., 51 Franklin Street, 
+# Fifth Floor, Boston, MA 02110-1301, USA.
+
 ### BEGIN INIT INFO
 # Provides:          lightdm
-# Should-Start:      console-screen kbd acpid dbus hal consolekit
-# Required-Start:    $local_fs $remote_fs x11-common
-# Required-Stop:     $local_fs $remote_fs
+# Required-Start:    $local_fs $remote_fs dbus
+# Required-Stop:     $local_fs $remote_fs dbus
+# Should-Start:      $named
+# Should-Stop:       $named
 # Default-Start:     2 3 4 5
 # Default-Stop:      0 1 6
-# Short-Description: Light Display Manager
-# Description:       Debian init script for the Light Display Manager
+# Short-Description: Start lightdm
 ### END INIT INFO
-#
-# Author:       Yves-Alexis Perez <corsac@debian.org> using gdm script from 
-#               Ryan Murray <rmurray@debian.org>
-#
+
 set -e
 
-PATH=/sbin:/bin:/usr/sbin:/usr/bin
-DAEMON=/usr/sbin/lightdm
+HEED_DEFAULT_DISPLAY_MANAGER=
+# To start lightdm even if it is not the default display manager, change
+# HEED_DEFAULT_DISPLAY_MANAGER to "false."
+# Also overridable from command line like:
+# HEED_DEFAULT_DISPLAY_MANAGER=false /etc/init.d/lightdm start
+[ -z "$HEED_DEFAULT_DISPLAY_MANAGER" ] && HEED_DEFAULT_DISPLAY_MANAGER=true
 
-test -x $DAEMON || exit 0
+DEFAULT_DISPLAY_MANAGER_FILE=/etc/X11/default-display-manager
+
+PATH=/bin:/usr/bin:/sbin:/usr/sbin
+DAEMON=/usr/sbin/lightdm
+PIDFILE=/var/run/lightdm.pid
 
 if [ -r /etc/default/locale ]; then
   . /etc/default/locale
   export LANG LANGUAGE
 fi
 
+test -x $DAEMON || exit 0
+
 . /lib/lsb/init-functions
 
-# To start lightdm even if it is not the default display manager, change
-# HEED_DEFAULT_DISPLAY_MANAGER to "false."
-HEED_DEFAULT_DISPLAY_MANAGER=true
-DEFAULT_DISPLAY_MANAGER_FILE=/etc/X11/default-display-manager
+SSD_START_ARGS="--pidfile $PIDFILE --name $(basename $DAEMON) --startas $DAEMON -- -d"
+SSD_STOP_ARGS="--pidfile $PIDFILE --name $(basename $DAEMON) --retry TERM/5/TERM/5"
 
 case "$1" in
   start)
-        CONFIGURED_DAEMON=$(basename "$(cat $DEFAULT_DISPLAY_MANAGER_FILE 2> /dev/null)")
-        if grep -wqs text /proc/cmdline; then
-            log_warning_msg "Not starting Light Display Manager (lightdm); found 'text' in kernel commandline."
-        elif [ -e "$DEFAULT_DISPLAY_MANAGER_FILE" ] && \
-           [ "$HEED_DEFAULT_DISPLAY_MANAGER" = "true" ] && \
-           [ "$CONFIGURED_DAEMON" != lightdm ] ; then
-                log_action_msg "Not starting Light Display Manager; it is not the default display manager"
-        else
-                log_daemon_msg "Starting Light Display Manager" "lightdm"
-                start-stop-daemon --start --quiet --pidfile /var/run/lightdm.pid --name lightdm --exec $DAEMON -b|| echo -n " already running"
-                log_end_msg $?
-        fi
+    if [ "$HEED_DEFAULT_DISPLAY_MANAGER" = "true" ] &&
+       [ -e $DEFAULT_DISPLAY_MANAGER_FILE ] &&
+       [ "$(cat $DEFAULT_DISPLAY_MANAGER_FILE)" != "/usr/bin/lightdm" -a "$(cat $DEFAULT_DISPLAY_MANAGER_FILE)" != "/usr/sbin/lightdm" ]; then
+      echo "Not starting X display manager (lightdm); it is not the default" \
+        "display manager."
+    else
+      log_daemon_msg "Starting X display manager" "lightdm"
+      start-stop-daemon --start --quiet $SSD_START_ARGS \
+        || log_progress_msg "already running"
+      log_end_msg 0
+    fi
+  ;;
+
+  restart)
+    [ -f $PIDFILE ] && /etc/init.d/lightdm stop
+    [ -f $PIDFILE ] && exit 1
+    /etc/init.d/lightdm start
   ;;
+
   stop)
-        log_daemon_msg "Stopping Light Display Manager" "lightdm"
-        set +e
-        start-stop-daemon --stop --quiet --pidfile /var/run/lightdm.pid \
-                --name lightdm --retry 5
-        set -e
-        log_end_msg $?
-  ;;
-  reload)
-        log_daemon_msg "Scheduling reload of Light Display Manager configuration" "lightdm"
-        set +e
-        start-stop-daemon --stop --signal USR1 --quiet --pidfile \
-                /var/run/lightdm.pid --name lightdm
-        set -e
-        log_end_msg $?
+    log_daemon_msg "Stopping X display manager" "lightdm"
+    if ! [ -f $PIDFILE ]; then
+      log_progress_msg "not running ($PIDFILE not found)"
+    else
+      start-stop-daemon --stop --quiet $SSD_STOP_ARGS
+      SSD_RES=$?
+      if [ $SSD_RES -eq 1 ]; then
+        log_progress_msg "not running"
+      fi
+      if [ $SSD_RES -eq 2 ]; then
+        log_progress_msg "not responding to TERM signals"
+      else
+	if [ -f $PIDFILE ]; then
+	  log_progress_msg "(removing stale $PIDFILE)"
+	  rm $PIDFILE
+	fi
+      fi
+    fi
+    log_end_msg 0
   ;;
-  status)
-        status_of_proc -p "$PIDFILE" "$DAEMON" lightdm && exit 0 || exit $?
-  ;;
-  restart|force-reload)
-        $0 stop
-        sleep 1
-        $0 start
+  force-reload)
+    /etc/init.d/lightdm restart
   ;;
+
   *)
-        echo "Usage: /etc/init.d/lightdm {start|stop|restart|reload|force-reload|status}"
-        exit 1
-  ;;
+    echo "Usage: /etc/init.d/lightdm {start|stop|restart|force-reload}"
+    exit 1
+    ;;
 esac
 
 exit 0
diff -pruN 1.26.0-8/debian/lightdm.install 1.30.0-0ubuntu8/debian/lightdm.install
--- 1.26.0-8/debian/lightdm.install	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/lightdm.install	2019-08-14 02:18:58.000000000 +0000
@@ -1,21 +1,25 @@
-usr/bin/dm-tool
 usr/sbin/lightdm
+usr/share/accountsservice
+usr/share/bash-completion
+usr/share/dbus-1
 usr/share/man
 usr/share/locale
-usr/share/help
-usr/share/bash-completion
 usr/share/polkit-1
-usr/share/dbus-1
-usr/share/accountsservice/
-etc/apparmor.d/abstractions/lightdm
-etc/apparmor.d/abstractions/lightdm_chromium-browser
-etc/dbus-1
+usr/lib/lightdm
+usr/bin
+etc/dbus-1/
 etc/lightdm/users.conf
-etc/lightdm/lightdm.conf
-etc/lightdm/keys.conf
-etc/apparmor.d/lightdm-guest-session
-etc/pam.d
-debian/lightdm-xsession.desktop /usr/share/xsessions
-debian/01_debian.conf /usr/share/lightdm/lightdm.conf.d
-usr/lib/*/lightdm/lightdm-guest-session
-debian/lightdm.service /lib/systemd/system/
+etc/lightdm/lightdm.conf usr/share/doc/lightdm/
+etc/lightdm/keys.conf usr/share/doc/lightdm/
+etc/apparmor.d
+debian/lightdm-session usr/sbin
+debian/config-error-dialog.sh usr/lib/lightdm
+debian/guest-session-auto.sh usr/lib/lightdm
+debian/guest-session-startup.desktop usr/share/lightdm/guest-session/skel/.config/autostart
+debian/lightdm-greeter-session usr/lib/lightdm
+debian/source_lightdm.py usr/share/apport/package-hooks
+debian/50-xserver-command.conf usr/share/lightdm/lightdm.conf.d
+debian/50-greeter-wrapper.conf usr/share/lightdm/lightdm.conf.d
+debian/50-guest-wrapper.conf usr/share/lightdm/lightdm.conf.d
+debian/50-disable-log-backup.conf usr/share/lightdm/lightdm.conf.d
+debian/50-disable-guest.conf usr/share/lightdm/lightdm.conf.d
diff -pruN 1.26.0-8/debian/lightdm.lightdm-autologin.pam 1.30.0-0ubuntu8/debian/lightdm.lightdm-autologin.pam
--- 1.26.0-8/debian/lightdm.lightdm-autologin.pam	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/lightdm.lightdm-autologin.pam	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,12 @@
+#%PAM-1.0
+auth    requisite       pam_nologin.so
+auth    required        pam_permit.so
+@include common-account
+session [success=ok ignore=ignore module_unknown=ignore default=bad] pam_selinux.so close
+#session required        pam_loginuid.so
+session required        pam_limits.so
+@include common-session
+session [success=ok ignore=ignore module_unknown=ignore default=bad] pam_selinux.so open
+session required        pam_env.so readenv=1
+session required        pam_env.so readenv=1 user_readenv=1 envfile=/etc/default/locale
+@include common-password
diff -pruN 1.26.0-8/debian/lightdm.lightdm-greeter.pam 1.30.0-0ubuntu8/debian/lightdm.lightdm-greeter.pam
--- 1.26.0-8/debian/lightdm.lightdm-greeter.pam	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/lightdm.lightdm-greeter.pam	2021-11-05 14:16:30.000000000 +0000
@@ -0,0 +1,15 @@
+#%PAM-1.0
+auth    required        pam_permit.so
+-auth    optional        pam_gnome_keyring.so
+-auth    optional        pam_kwallet.so
+-auth    optional        pam_kwallet5.so
+@include common-account
+session [success=ok ignore=ignore module_unknown=ignore default=bad] pam_selinux.so close
+session required        pam_limits.so
+@include common-session
+session [success=ok ignore=ignore module_unknown=ignore default=bad] pam_selinux.so open
+-session optional        pam_gnome_keyring.so auto_start
+-session optional        pam_kwallet.so auto_start
+-session optional        pam_kwallet5.so auto_start
+session required        pam_env.so readenv=1
+session required        pam_env.so readenv=1 user_readenv=1 envfile=/etc/default/locale
diff -pruN 1.26.0-8/debian/lightdm.lintian-overrides 1.30.0-0ubuntu8/debian/lightdm.lintian-overrides
--- 1.26.0-8/debian/lightdm.lintian-overrides	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/lightdm.lintian-overrides	1970-01-01 00:00:00.000000000 +0000
@@ -1,7 +0,0 @@
-# we do use -fstack-protector and FORTIFY
-lightdm: hardening-no-stackprotector usr/bin/dm-tool
-lightdm: hardening-no-stackprotector usr/lib/x86_64-linux-gnu/lightdm/lightdm-guest-session-wrapper
-lightdm: hardening-no-stackprotector usr/lib/x86_64-linux-gnu/lightdm/lightdm-set-defaults
-# we need the path since we check file existence
-lightdm: command-with-path-in-maintainer-script postrm:22 /usr/sbin/deluser
-lightdm: command-with-path-in-maintainer-script postrm:27 /usr/sbin/delgroup
diff -pruN 1.26.0-8/debian/lightdm.logrotate 1.30.0-0ubuntu8/debian/lightdm.logrotate
--- 1.26.0-8/debian/lightdm.logrotate	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/lightdm.logrotate	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,9 @@
+/var/log/lightdm/*.log {
+    daily
+    missingok
+    rotate 7
+    compress
+    notifempty
+    maxsize 10M
+    copytruncate
+}
diff -pruN 1.26.0-8/debian/lightdm.maintscript 1.30.0-0ubuntu8/debian/lightdm.maintscript
--- 1.26.0-8/debian/lightdm.maintscript	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/lightdm.maintscript	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,3 @@
+rm_conffile /etc/lightdm/lightdm.conf.d/50-xserver-command.conf 1.9.5-0ubuntu1
+rm_conffile /etc/lightdm/lightdm.conf.d/50-greeter-wrapper.conf 1.9.5-0ubuntu1
+rm_conffile /etc/lightdm/lightdm.conf.d/50-guest-wrapper.conf 1.9.5-0ubuntu1
diff -pruN 1.26.0-8/debian/lightdm.pam 1.30.0-0ubuntu8/debian/lightdm.pam
--- 1.26.0-8/debian/lightdm.pam	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/lightdm.pam	2021-11-05 14:16:30.000000000 +0000
@@ -0,0 +1,19 @@
+#%PAM-1.0
+auth    requisite       pam_nologin.so
+auth    sufficient      pam_succeed_if.so user ingroup nopasswdlogin
+@include common-auth
+-auth    optional        pam_gnome_keyring.so
+-auth    optional        pam_kwallet.so
+-auth    optional        pam_kwallet5.so
+@include common-account
+session [success=ok ignore=ignore module_unknown=ignore default=bad] pam_selinux.so close
+#session required        pam_loginuid.so
+session required        pam_limits.so
+@include common-session
+session [success=ok ignore=ignore module_unknown=ignore default=bad] pam_selinux.so open
+-session optional        pam_gnome_keyring.so auto_start
+-session optional        pam_kwallet.so auto_start
+-session optional        pam_kwallet5.so auto_start
+session required        pam_env.so readenv=1
+session required        pam_env.so readenv=1 user_readenv=1 envfile=/etc/default/locale
+@include common-password
diff -pruN 1.26.0-8/debian/lightdm.postinst 1.30.0-0ubuntu8/debian/lightdm.postinst
--- 1.26.0-8/debian/lightdm.postinst	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/lightdm.postinst	2019-08-14 02:18:58.000000000 +0000
@@ -2,6 +2,13 @@
 
 set -e
 
+if dpkg-maintscript-helper supports mv_conffile; then
+  dpkg-maintscript-helper mv_conffile \
+    /etc/lightdm.conf \
+    /etc/lightdm/lightdm.conf \
+    0.3.7-0ubuntu2 -- "$@"
+fi    
+
 . /usr/share/debconf/confmodule
 
 THIS_PACKAGE=lightdm
@@ -21,58 +28,79 @@ if ! getent passwd lightdm >/dev/null; t
         usermod -s "/bin/false"            lightdm
 fi
 
-mkdir -p /var/lib/lightdm
-chown lightdm:lightdm /var/lib/lightdm
-chmod 0750 /var/lib/lightdm
+# Creating nopasswdlogin group if he isn't already there.
+# That enables the password-less login feature in the users-admin
+# tool of the gnome-system-tools for users that belong to it,
+# and which is working thanks to LightDM's PAM policy.
+if ! getent group nopasswdlogin >/dev/null; then
+        addgroup --system nopasswdlogin
+fi
+
+if [ -d /var/lib/lightdm ]; then
+  chown -R lightdm:lightdm /var/lib/lightdm || true
+  chmod 0750 /var/lib/lightdm
+fi
 
 # debconf is not a registry, so we only fiddle with the default file if it
 # does not exist
-if [ ! -e "$DEFAULT_DISPLAY_MANAGER_FILE" ]; then
+if ! [ -e "$DEFAULT_DISPLAY_MANAGER_FILE" ]; then
+  DEFAULT_DISPLAY_MANAGER=
   if db_get shared/default-x-display-manager; then
-    # workaround debconf passthru bug (#379198)
-    if [ -z "$RET" ]; then
-      $RET="$THIS_PACKAGE"
+    DEFAULT_DISPLAY_MANAGER="$RET"
+  fi
+  if [ -n "$DEFAULT_DISPLAY_MANAGER" ]; then
+    DAEMON_NAME=
+    if db_get "$DEFAULT_DISPLAY_MANAGER"/daemon_name; then
+      DAEMON_NAME="$RET"
     fi
-    if [ "$THIS_PACKAGE" != "$RET" ]; then
-      echo "Please be sure to run \"dpkg --configure $RET\"."
+    if [ -z "$DAEMON_NAME" ]; then
+      # if we were unable to determine the name of the selected daemon (for
+      # instance, if the selected default display manager doesn't provide a
+      # daemon_name question), guess
+      DAEMON_NAME=$(which "$DEFAULT_DISPLAY_MANAGER" 2>/dev/null)
     fi
-    if db_get "$RET"/daemon_name; then
-      echo "$RET" > $DEFAULT_DISPLAY_MANAGER_FILE
+    if [ -n "$DAEMON_NAME" ]; then
+      echo "$DAEMON_NAME" > "$DEFAULT_DISPLAY_MANAGER_FILE"
     fi
   fi
 fi
 
-# remove the displaced old default display manager file if it exists
-if [ -e "$DEFAULT_DISPLAY_MANAGER_FILE.dpkg-tmp" ]; then
-  rm "$DEFAULT_DISPLAY_MANAGER_FILE.dpkg-tmp"
-fi
-
-# debconf hangs if lightdm gets started below without this
-db_stop || true
-
-# update-rc.d levels
-S=30
-K=01
-
-if [ -x /etc/init.d/lightdm ]; then
-  update-rc.d lightdm defaults $S $K >/dev/null 2>&1
-fi
-
-if [ "$1" = "configure" ];
-then
-  invoke-rc.d dbus reload || true
-
-  # set default-display-manager systemd service link according to our config
-  if [ -e "$DEFAULT_DISPLAY_MANAGER_FILE" -a -d /etc/systemd/system/ ]; then
+# Registering the init scripts or starting the daemon may cause output to
+# stdout, which can confuse debconf.
+db_stop
+
+DEFAULT_SERVICE=/etc/systemd/system/display-manager.service
+# set default-display-manager systemd service link according to our config
+if [ "$1" = configure ] && [ -d /etc/systemd/system/ ]; then
+  if [ -e "$DEFAULT_DISPLAY_MANAGER_FILE" ]; then
     SERVICE=/lib/systemd/system/$(basename $(cat "$DEFAULT_DISPLAY_MANAGER_FILE")).service
-    if [ -e "$SERVICE" ]; then
-      ln -sf "$SERVICE" /etc/systemd/system/display-manager.service
+    if [ -h "$DEFAULT_SERVICE" ] && [ $(readlink "$DEFAULT_SERVICE") = /dev/null ]; then
+      echo "Display manager service is masked" >&2
+    elif [ -e "$SERVICE" ]; then
+      ln -sf "$SERVICE" "$DEFAULT_SERVICE"
     else
-      echo "ERROR: $SERVICE is the selected default display manager but does not exist" >&2
+      echo "WARNING: $SERVICE is the selected default display manager but does not exist" >&2
+      rm -f "$DEFAULT_SERVICE"
     fi
+  else
+    rm -f "$DEFAULT_SERVICE"
   fi
 fi
 
+case "$1" in
+    configure)
+        # LP: #1189948
+        if dpkg --compare-versions "$2" lt "1.7.0-0ubuntu6" ; then
+            if [ -f /etc/apparmor.d/abstractions/lightdm ]; then
+                chmod 0644 /etc/apparmor.d/abstractions/lightdm || true
+            fi
+            if [ -f /etc/apparmor.d/abstractions/lightdm_chromium-browser ]; then
+                chmod 0644 /etc/apparmor.d/abstractions/lightdm_chromium-browser || true
+            fi
+        fi
+        ;;
+esac
+
 #DEBHELPER#
 
 exit 0
diff -pruN 1.26.0-8/debian/lightdm.postrm 1.30.0-0ubuntu8/debian/lightdm.postrm
--- 1.26.0-8/debian/lightdm.postrm	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/lightdm.postrm	2019-08-14 02:18:58.000000000 +0000
@@ -1,33 +1,28 @@
 #!/bin/sh
-
 set -e
 
-DEFAULT_DISPLAY_MANAGER_FILE=/etc/X11/default-display-manager
-
-if [ "$1" = "abort-install" ] || [ "$1" = "abort-upgrade" ]; then
-  if [ -e "$DEFAULT_DISPLAY_MANAGER_FILE.dpkg-tmp" ]; then
-    mv "$DEFAULT_DISPLAY_MANAGER_FILE.dpkg-tmp" "$DEFAULT_DISPLAY_MANAGER_FILE"
-  fi
-fi
+if dpkg-maintscript-helper supports mv_conffile; then
+  dpkg-maintscript-helper mv_conffile \
+    /etc/lightdm.conf \
+    /etc/lightdm/lightdm.conf \
+    0.3.7-0ubuntu2 -- "$@"
+fi    
 
 if [ "$1" = "purge" ] ; then
-        update-rc.d lightdm remove >/dev/null
-        if [ -d /var/lib/lightdm ]; then
-                rm -r /var/lib/lightdm
-        fi
+        rm -f /etc/lightdm.conf
+
         if [ -d /var/log/lightdm ]; then
                 rm -r /var/log/lightdm
         fi
-        if getent passwd lightdm >/dev/null; then
-                if [ -x /usr/sbin/deluser ]; then
-                        deluser --system lightdm ||echo " Could not remove lightdm user, please make sure lightdm is not running before attempting to purge lightdm" 
-                fi
+
+        if [ -d /var/cache/lightdm ]; then
+                rm -r /var/cache/lightdm
         fi
-        if getent group lightdm >/dev/null; then
-                if [ -x /usr/sbin/delgroup ]; then
-                        delgroup --system lightdm || echo "Could not remove lightdm group, please make sure lightdm is not running before attempting to purge lightdm"
-                fi
+
+        if [ -d /var/run/lightdm/authority ]; then
+                rm -r /var/run/lightdm/authority
         fi
+
 fi
 #DEBHELPER#
 exit 0
diff -pruN 1.26.0-8/debian/lightdm.preinst 1.30.0-0ubuntu8/debian/lightdm.preinst
--- 1.26.0-8/debian/lightdm.preinst	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/lightdm.preinst	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,13 @@
+#!/bin/sh
+
+set -e
+
+if dpkg-maintscript-helper supports mv_conffile; then
+  dpkg-maintscript-helper mv_conffile \
+    /etc/lightdm.conf \
+    /etc/lightdm/lightdm.conf \
+    0.3.7-0ubuntu2 -- "$@"
+fi    
+
+#DEBHELPER#
+
diff -pruN 1.26.0-8/debian/lightdm.prerm 1.30.0-0ubuntu8/debian/lightdm.prerm
--- 1.26.0-8/debian/lightdm.prerm	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/lightdm.prerm	2019-08-14 02:18:58.000000000 +0000
@@ -1,21 +1,24 @@
 #!/bin/bash
 # Debian lightdm package pre-removal script
-# Â© 2010 Yves-Alexis Perez, using lightdm script which is
+# based on xdm script
 # Copyright 2001 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>.
 # Acknowlegements to Stephen Early, Mark Eichin, and Manoj Srivastava.
+# based on gdm pre-removal script
 
 set -e
 
 THIS_PACKAGE=lightdm
+DAEMON=/usr/sbin/lightdm
+
 DEFAULT_DISPLAY_MANAGER_FILE=/etc/X11/default-display-manager
 
-if [ "$1" = "remove" -o "$1" = "deconfigure" ]; then
+if [ "$1" = "remove" ] || [ "$1" = "deconfigure" ]; then
   if [ -e /usr/share/debconf/confmodule ]; then
     . /usr/share/debconf/confmodule
     # disown this question
-    db_unregister shared/default-x-display-manager || true
+    db_unregister shared/default-x-display-manager
     # does the question still exist?
     if db_get shared/default-x-display-manager; then
       db_metaget shared/default-x-display-manager owners
@@ -24,10 +27,15 @@ if [ "$1" = "remove" -o "$1" = "deconfig
       # are we removing the currently selected display manager?
       if [ "$THIS_PACKAGE" = "$RET" ]; then
         if [ -e "$DEFAULT_DISPLAY_MANAGER_FILE" ]; then
-          db_get "$RET"/daemon_name
-          if [ "$(cat $DEFAULT_DISPLAY_MANAGER_FILE)" = "$RET" ]; then
-            rm "$DEFAULT_DISPLAY_MANAGER_FILE"
-          fi
+	  if db_get "$RET"/daemon_name; then
+	    if [ "$(cat $DEFAULT_DISPLAY_MANAGER_FILE)" = "$RET" ]; then
+	      rm "$DEFAULT_DISPLAY_MANAGER_FILE"
+	    fi
+	  else
+	    if [ "$(cat $DEFAULT_DISPLAY_MANAGER_FILE)" = "$DAEMON" ]; then
+	      rm "$DEFAULT_DISPLAY_MANAGER_FILE"
+	    fi
+	  fi
         fi
         # ask the user to choose a new default
         db_fset shared/default-x-display-manager seen false
@@ -37,7 +45,6 @@ if [ "$1" = "remove" -o "$1" = "deconfig
         # to the new default display manager
         if [ ! -e $DEFAULT_DISPLAY_MANAGER_FILE ]; then
           db_get shared/default-x-display-manager
-          echo "Please be sure to run \"dpkg-reconfigure $RET\"."
           db_get "$RET"/daemon_name
           echo "$RET" > "$DEFAULT_DISPLAY_MANAGER_FILE"
         fi
@@ -45,20 +52,6 @@ if [ "$1" = "remove" -o "$1" = "deconfig
     fi
   fi
 fi
-
-if [ "$1" = "remove" ]; then
-  if [ -x /etc/init.d/lightdm ]; then
-    nostop=
-    for hostname in "" "localhost" "$(hostname)" "$(hostname -f)"; do
-      if echo $DISPLAY | grep -q "^$hostname:0.*"; then
-        nostop=yes
-      fi
-    done
-    if [ -z $nostop ]; then
-      invoke-rc.d lightdm stop
-    fi
-  fi
-fi
 
 #DEBHELPER#
 
diff -pruN 1.26.0-8/debian/lightdm.service 1.30.0-0ubuntu8/debian/lightdm.service
--- 1.26.0-8/debian/lightdm.service	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/lightdm.service	2019-08-14 02:18:58.000000000 +0000
@@ -1,20 +1,13 @@
 [Unit]
 Description=Light Display Manager
 Documentation=man:lightdm(1)
-After=systemd-user-sessions.service
-
-# replaces plymouth-quit since lightdm quits plymouth on its own
-Conflicts=plymouth-quit.service
-After=plymouth-quit.service
-
-# lightdm takes responsibility for stopping plymouth, so if it fails
-# for any reason, make sure plymouth still stops
-OnFailure=plymouth-quit.service
+Conflicts=getty@tty7.service plymouth-quit.service
+After=systemd-user-sessions.service getty@tty7.service plymouth-quit.service
 
 [Service]
+# temporary safety check until all DMs are converted to correct
+# display-manager.service symlink handling
+ExecStartPre=/bin/sh -c '[ "$(basename $(cat /etc/X11/default-display-manager 2>/dev/null))" = "lightdm" ]'
 ExecStart=/usr/sbin/lightdm
 Restart=always
 BusName=org.freedesktop.DisplayManager
-
-[Install]
-Alias=display-manager.service
diff -pruN 1.26.0-8/debian/lightdm.upstart 1.30.0-0ubuntu8/debian/lightdm.upstart
--- 1.26.0-8/debian/lightdm.upstart	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/lightdm.upstart	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,63 @@
+# LightDM - light Display Manager
+#
+# The display manager service manages the X servers running on the
+# system, providing login and auto-login services
+#
+# based on gdm upstart script
+
+description	"LightDM Display Manager"
+author		"Robert Ancell <robert.ancell@canonical.com>"
+
+start on ((filesystem
+           and runlevel [!06]
+           and started dbus
+           and plymouth-ready)
+          or runlevel PREVLEVEL=S)
+
+stop on runlevel [016]
+
+respawn
+respawn limit 2 15
+
+emits login-session-start
+emits desktop-session-start
+emits desktop-shutdown
+
+script
+    if [ -n "$UPSTART_EVENTS" ]
+    then
+        # Check kernel command-line for inhibitors, unless we are being called
+        # manually
+        for ARG in $(cat /proc/cmdline); do
+            if [ "$ARG" = "text" ]; then
+		plymouth quit || : 
+                stop
+		exit 0
+            fi
+        done
+
+	[ ! -f /etc/X11/default-display-manager -o "$(cat /etc/X11/default-display-manager 2>/dev/null)" = "/usr/bin/lightdm" -o "$(cat /etc/X11/default-display-manager 2>/dev/null)" = "/usr/sbin/lightdm" ] || { stop; exit 0; }
+
+	if [ "$RUNLEVEL" = S -o "$RUNLEVEL" = 1 ]
+	then
+	    # Single-user mode
+	    plymouth quit || :
+	    exit 0
+	fi
+    fi
+
+    exec lightdm
+end script
+
+post-start script
+    sleep 5
+    clear > /dev/tty7
+end script
+
+post-stop script
+	clear > /dev/tty7
+	sleep 1
+	if [ "$UPSTART_STOP_EVENTS" = runlevel ]; then
+		initctl emit desktop-shutdown
+	fi
+end script
diff -pruN 1.26.0-8/debian/patches/01_set-default-path.patch 1.30.0-0ubuntu8/debian/patches/01_set-default-path.patch
--- 1.26.0-8/debian/patches/01_set-default-path.patch	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/patches/01_set-default-path.patch	1970-01-01 00:00:00.000000000 +0000
@@ -1,44 +0,0 @@
-From: Yves-Alexis Perez <corsac@debian.org>
-Date: Fri, 22 Feb 2019 17:10:57 +0100
-Subject: Fix default PATH environment variable
-
-Use the Debian default PATH when needed
-
-Bug: https://bugs.launchpad.net/ubuntu/+source/lightdm/+bug/798277
----
- src/seat.c          | 5 +++++
- src/session-child.c | 5 ++++-
- 2 files changed, 9 insertions(+), 1 deletion(-)
-
-diff --git a/src/seat.c b/src/seat.c
-index 775ddbb..4c0149b 100644
---- a/src/seat.c
-+++ b/src/seat.c
-@@ -361,6 +361,11 @@ run_script (Seat *seat, DisplayServer *display_server, const gchar *script_name,
-         process_set_env (script, "LD_LIBRARY_PATH", g_getenv ("LD_LIBRARY_PATH"));
-     if (g_getenv ("PATH"))
-         process_set_env (script, "PATH", g_getenv ("PATH"));
-+    else
-+        if (user_get_uid (user) == 0)
-+            process_set_env (script, "PATH", "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin");
-+        else
-+            process_set_env (script, "PATH", "/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games");
- 
-     /* Variables required for regression tests */
-     if (g_getenv ("LIGHTDM_TEST_ROOT"))
-diff --git a/src/session-child.c b/src/session-child.c
-index 5d77c5a..7d0c7fd 100644
---- a/src/session-child.c
-+++ b/src/session-child.c
-@@ -393,7 +393,10 @@ session_child_run (int argc, char **argv)
-         else
-         {
-             /* Set POSIX variables */
--            pam_putenv (pam_handle, "PATH=/usr/local/bin:/usr/bin:/bin");
-+            if (user_get_uid (user) == 0)
-+              pam_putenv (pam_handle, "PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin");
-+            else
-+              pam_putenv (pam_handle, "PATH=/usr/local/bin:/usr/bin:/bin:/usr/local/games:/usr/games");
-             pam_putenv (pam_handle, g_strdup_printf ("USER=%s", username));
-             pam_putenv (pam_handle, g_strdup_printf ("LOGNAME=%s", username));
-             pam_putenv (pam_handle, g_strdup_printf ("HOME=%s", user_get_home_directory (user)));
diff -pruN 1.26.0-8/debian/patches/02_fix-apparmor-profile.patch 1.30.0-0ubuntu8/debian/patches/02_fix-apparmor-profile.patch
--- 1.26.0-8/debian/patches/02_fix-apparmor-profile.patch	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/patches/02_fix-apparmor-profile.patch	1970-01-01 00:00:00.000000000 +0000
@@ -1,43 +0,0 @@
-From: Yves-Alexis Perez <corsac@debian.org>
-Date: Fri, 22 Feb 2019 17:15:33 +0100
-Subject: fix apparmor profile for guest session
-
-Bug: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=780456
----
- data/apparmor/abstractions/lightdm                  | 2 +-
- data/apparmor/abstractions/lightdm_chromium-browser | 2 ++
- 2 files changed, 3 insertions(+), 1 deletion(-)
-
-diff --git a/data/apparmor/abstractions/lightdm b/data/apparmor/abstractions/lightdm
-index 4be3d4a..1e64fd2 100644
---- a/data/apparmor/abstractions/lightdm
-+++ b/data/apparmor/abstractions/lightdm
-@@ -32,7 +32,7 @@
-   owner /dev/shm/** rmw,
-   /etc/ r,
-   /etc/** rmk,
--  /etc/gdm/Xsession ix,
-+  /etc/X11/Xsession ix,
-   /etc/X11/xdm/** ix, # needed for openSUSE's default session-wrapper
-   /etc/X11/xinit/** ix, # needed for openSUSE's default session-wrapper
-   /lib/ r,
-diff --git a/data/apparmor/abstractions/lightdm_chromium-browser b/data/apparmor/abstractions/lightdm_chromium-browser
-index 930c87e..c8d6e6e 100644
---- a/data/apparmor/abstractions/lightdm_chromium-browser
-+++ b/data/apparmor/abstractions/lightdm_chromium-browser
-@@ -10,6 +10,7 @@
- 
- # Requires apparmor 2.9
- 
-+  /usr/lib/chromium/chromium Cx -> chromium,
-   /usr/lib/chromium-browser/chromium-browser Cx -> chromium,
-   /usr/bin/webapp-container Cx -> chromium,
-   /usr/bin/webbrowser-app Cx -> chromium,
-@@ -68,6 +69,7 @@
- 
-     /selinux/ r,
- 
-+    /usr/lib/chromium/chrome-sandbox ix,
-     /usr/lib/chromium-browser/chromium-browser-sandbox ix,
-     /usr/lib/@{multiarch}/oxide-qt/chrome-sandbox ix,
-     /opt/google/chrome-*/chrome-sandbox ix,
diff -pruN 1.26.0-8/debian/patches/03_liblightdm-qt3-add-header-visibility.patch 1.30.0-0ubuntu8/debian/patches/03_liblightdm-qt3-add-header-visibility.patch
--- 1.26.0-8/debian/patches/03_liblightdm-qt3-add-header-visibility.patch	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/patches/03_liblightdm-qt3-add-header-visibility.patch	1970-01-01 00:00:00.000000000 +0000
@@ -1,22 +0,0 @@
-From: Yves-Alexis Perez <corsac@debian.org>
-Date: Fri, 22 Feb 2019 17:13:29 +0100
-Subject: liblightdm-qt3: explicitly add symbol visibility
-
-Fix build when symbols are marked hidden by default
----
- liblightdm-qt/QLightDM/power.h | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/liblightdm-qt/QLightDM/power.h b/liblightdm-qt/QLightDM/power.h
-index 44d9e2c..cb1e14f 100644
---- a/liblightdm-qt/QLightDM/power.h
-+++ b/liblightdm-qt/QLightDM/power.h
-@@ -16,7 +16,7 @@
- 
- namespace QLightDM
- {
--    class PowerInterface : public QObject
-+    class Q_DECL_EXPORT PowerInterface : public QObject
-     {
-         Q_OBJECT
-     public:
diff -pruN 1.26.0-8/debian/patches/04_language_handling.patch 1.30.0-0ubuntu8/debian/patches/04_language_handling.patch
--- 1.26.0-8/debian/patches/04_language_handling.patch	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/patches/04_language_handling.patch	2020-02-07 11:40:00.000000000 +0000
@@ -0,0 +1,83 @@
+Description: Adjustments due to handling of languages
+Forwarded: not-needed
+Author: Gunnar Hjalmarsson <gunnarhj@ubuntu.com>
+
+Index: lightdm-1.30.0/liblightdm-gobject/language.c
+===================================================================
+--- lightdm-1.30.0.orig/liblightdm-gobject/language.c
++++ lightdm-1.30.0/liblightdm-gobject/language.c
+@@ -63,7 +63,7 @@ update_languages (void)
+     if (have_languages)
+         return;
+ 
+-    const gchar *command = "locale -a";
++    const gchar *command = "/usr/share/language-tools/language-options";
+     g_autofree gchar *stdout_text = NULL;
+     g_autofree gchar *stderr_text = NULL;
+     gint exit_status;
+@@ -150,14 +150,30 @@ get_locale_name (const gchar *code)
+ LightDMLanguage *
+ lightdm_get_language (void)
+ {
+-    const gchar *lang = g_getenv ("LANG");
+-    if (!lang)
+-        return NULL;
++    static const gchar *short_lang = NULL;
++    if (!short_lang)
++    {
++        const gchar *lang = g_getenv ("LANG");
++        if (!lang)
++            return NULL;
++
++        /* Convert to a short form language code */
++        g_autofree gchar *command = g_strconcat ("/usr/share/language-tools/language-validate ", lang, NULL);
++        g_autofree gchar *out = NULL;
++        g_autoptr(GError) error = NULL;
++        if (g_spawn_command_line_sync (command, &out, NULL, NULL, &error))
++            short_lang = g_strdup (g_strchomp (out));
++        else
++        {
++            g_warning ("Failed to run '%s': %s", command, error->message);
++            return NULL;
++        }
++    }
+ 
+     for (GList *link = lightdm_get_languages (); link; link = link->next)
+     {
+         LightDMLanguage *language = link->data;
+-        if (lightdm_language_matches (language, lang))
++        if (lightdm_language_matches (language, short_lang))
+             return language;
+     }
+ 
+Index: lightdm-1.30.0/tests/scripts/language-env.conf
+===================================================================
+--- lightdm-1.30.0.orig/tests/scripts/language-env.conf
++++ lightdm-1.30.0/tests/scripts/language-env.conf
+@@ -24,8 +24,8 @@ user-session=default
+ #?SESSION-X-0 CONNECT-XSERVER
+ 
+ # Check environment variables
+-#?*SESSION-X-0 READ-ENV NAME=LANG
+-#?SESSION-X-0 READ-ENV NAME=LANG VALUE=en_AU
++#?*SESSION-X-0 READ-ENV NAME=LANGUAGE
++#?SESSION-X-0 READ-ENV NAME=LANGUAGE VALUE=en_AU
+ #?*SESSION-X-0 READ-ENV NAME=GDM_LANG
+ #?SESSION-X-0 READ-ENV NAME=GDM_LANG VALUE=en_AU
+ 
+Index: lightdm-1.30.0/src/seat.c
+===================================================================
+--- lightdm-1.30.0.orig/src/seat.c
++++ lightdm-1.30.0/src/seat.c
+@@ -987,7 +987,10 @@ configure_session (Session *session, Ses
+     }
+     if (language && language[0] != '\0')
+     {
+-        session_set_env (session, "LANG", language);
++        /* Only set LANGUAGE if not in a live session
++           https://launchpad.net/bugs/1861481 */
++        if (system ("df | grep -q ^/cow") != 0)
++            session_set_env (session, "LANGUAGE", language);
+         session_set_env (session, "GDM_LANG", language);
+     }
+ }
diff -pruN 1.26.0-8/debian/patches/05_debianize-pam-files.patch 1.30.0-0ubuntu8/debian/patches/05_debianize-pam-files.patch
--- 1.26.0-8/debian/patches/05_debianize-pam-files.patch	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/patches/05_debianize-pam-files.patch	1970-01-01 00:00:00.000000000 +0000
@@ -1,125 +0,0 @@
-From: Yves-Alexis Perez <corsac@debian.org>
-Date: Fri, 22 Feb 2019 17:16:09 +0100
-Subject: debianize pam files
-
----
- data/pam/lightdm           | 38 +++++++++++++++++++++++++++-----------
- data/pam/lightdm-autologin | 31 ++++++++++++++++++++++++-------
- data/pam/lightdm-greeter   |  3 ++-
- 3 files changed, 53 insertions(+), 19 deletions(-)
-
-diff --git a/data/pam/lightdm b/data/pam/lightdm
-index fed8a9b..f7f77d4 100644
---- a/data/pam/lightdm
-+++ b/data/pam/lightdm
-@@ -1,20 +1,36 @@
- #%PAM-1.0
- 
- # Block login if they are globally disabled
--auth      required pam_nologin.so
-+auth      requisite pam_nologin.so
- 
- # Load environment from /etc/environment and ~/.pam_environment
--auth      required pam_env.so
-+session      required pam_env.so readenv=1
-+session      required pam_env.so readenv=1 envfile=/etc/default/locale
- 
--# Use /etc/passwd and /etc/shadow for passwords
--auth      required pam_unix.so
-+@include common-auth
- 
--# Check account is active, change password if required
--account   required pam_unix.so
-+-auth  optional pam_gnome_keyring.so
- 
--# Allow password to be changed
--password  required pam_unix.so
-+@include common-account
- 
--# Setup session
--session   required pam_unix.so
--session   optional pam_systemd.so
-+# SELinux needs to be the first session rule. This ensures that any
-+# lingering context has been cleared. Without out this it is possible
-+# that a module could execute code in the wrong domain.
-+# When the module is present, "required" would be sufficient (When SELinux
-+# is disabled, this returns success.)
-+session  [success=ok ignore=ignore module_unknown=ignore default=bad] pam_selinux.so close
-+
-+session  required        pam_limits.so
-+session  required        pam_loginuid.so
-+@include common-session
-+
-+# SELinux needs to intervene at login time to ensure that the process
-+# starts in the proper default security context. Only sessions which are
-+# intended to run in the user's context should be run after this.
-+session [success=ok ignore=ignore module_unknown=ignore default=bad] pam_selinux.so open
-+# When the module is present, "required" would be sufficient (When SELinux
-+# is disabled, this returns success.)
-+
-+-session optional        pam_gnome_keyring.so auto_start
-+
-+@include common-password
-diff --git a/data/pam/lightdm-autologin b/data/pam/lightdm-autologin
-index ba7a68c..ad9c4ef 100644
---- a/data/pam/lightdm-autologin
-+++ b/data/pam/lightdm-autologin
-@@ -1,20 +1,37 @@
- #%PAM-1.0
- 
- # Block login if they are globally disabled
--auth      required pam_nologin.so
-+auth      requisite pam_nologin.so
- 
- # Load environment from /etc/environment and ~/.pam_environment
--auth      required pam_env.so
-+session      required pam_env.so readenv=1
-+session      required pam_env.so readenv=1 envfile=/etc/default/locale
- 
- # Allow access without authentication
-+auth      required pam_succeed_if.so user != root quiet_success
- auth      required pam_permit.so
- 
--# Stop autologin if account requires action
--account   required pam_unix.so
-+@include common-account
-+
-+# SELinux needs to be the first session rule. This ensures that any
-+# lingering context has been cleared. Without out this it is possible
-+# that a module could execute code in the wrong domain.
-+# When the module is present, "required" would be sufficient (When SELinux
-+# is disabled, this returns success.)
-+session  [success=ok ignore=ignore module_unknown=ignore default=bad] pam_selinux.so close
-+
-+session  required        pam_limits.so
-+session  required        pam_loginuid.so
-+@include common-session
-+
-+# SELinux needs to intervene at login time to ensure that the process
-+# starts in the proper default security context. Only sessions which are
-+# intended to run in the user's context should be run after this.
-+session [success=ok ignore=ignore module_unknown=ignore default=bad] pam_selinux.so open
-+# When the module is present, "required" would be sufficient (When SELinux
-+# is disabled, this returns success.)
- 
- # Can't change password
- password  required pam_deny.so
- 
--# Setup session
--session   required pam_unix.so
--session   optional pam_systemd.so
-+@include common-password
-diff --git a/data/pam/lightdm-greeter b/data/pam/lightdm-greeter
-index 9a6862b..6343cc2 100644
---- a/data/pam/lightdm-greeter
-+++ b/data/pam/lightdm-greeter
-@@ -1,7 +1,8 @@
- #%PAM-1.0
- 
- # Load environment from /etc/environment and ~/.pam_environment
--auth      required pam_env.so
-+session      required pam_env.so readenv=1
-+session      required pam_env.so readenv=1 envfile=/etc/default/locale
- 
- # Always let the greeter start without authentication
- auth      required pam_permit.so
diff -pruN 1.26.0-8/debian/patches/05_translate_debian_files.patch 1.30.0-0ubuntu8/debian/patches/05_translate_debian_files.patch
--- 1.26.0-8/debian/patches/05_translate_debian_files.patch	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/patches/05_translate_debian_files.patch	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,17 @@
+Description: Grab translatable strings from debian/* files
+ This is done as an Ubuntu patch, since debian/* files are not included upstream.
+Forwarded: not-needed
+Author: Gunnar Hjalmarsson <gunnarhj@ubuntu.com>
+
+--- lightdm.orig/po/POTFILES.in	2014-09-30 05:00:39.000000000 +0200
++++ lightdm/po/POTFILES.in	2014-10-19 18:08:09.576134427 +0200
+@@ -1,6 +1,9 @@
+ # List of source files containing translatable strings.
+ # Please keep this file sorted alphabetically.
+ [encoding: UTF-8]
++debian/config-error-dialog.sh
++debian/guest-account.sh
++debian/guest-session-auto.sh
+ data/org.freedesktop.DisplayManager.AccountsService.policy.in
+ src/lightdm.c
+ src/dm-tool.c
diff -pruN 1.26.0-8/debian/patches/06_change-user-dirs.patch 1.30.0-0ubuntu8/debian/patches/06_change-user-dirs.patch
--- 1.26.0-8/debian/patches/06_change-user-dirs.patch	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/patches/06_change-user-dirs.patch	1970-01-01 00:00:00.000000000 +0000
@@ -1,54 +0,0 @@
-From: Yves-Alexis Perez <corsac@debian.org>
-Date: Fri, 22 Feb 2019 17:17:56 +0100
-Subject: move lightdm users dir to /var/lib/lightdm/data
-
-Make sure the directory exists and reduce clutter by sharing a top
-directory in /var/lib
-
-Bug: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=749243
-Bug: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=767359
----
- src/Makefile.am           | 2 +-
- src/Makefile.in           | 2 +-
- src/shared-data-manager.c | 2 +-
- 3 files changed, 3 insertions(+), 3 deletions(-)
-
-diff --git a/src/Makefile.am b/src/Makefile.am
-index e450197..5dc543a 100644
---- a/src/Makefile.am
-+++ b/src/Makefile.am
-@@ -84,7 +84,7 @@ lightdm_CFLAGS = \
- 	$(LIGHTDM_CFLAGS) \
- 	-I"$(top_srcdir)/common" \
- 	-DSBIN_DIR=\"$(sbindir)\" \
--	-DUSERS_DIR=\"$(localstatedir)/lib/lightdm-data\" \
-+	-DUSERS_DIR=\"$(localstatedir)/lib/lightdm/data\" \
- 	-DLOG_DIR=\"$(localstatedir)/log/lightdm\" \
- 	-DRUN_DIR=\"$(localstatedir)/run/lightdm\" \
- 	-DCACHE_DIR=\"$(localstatedir)/cache/lightdm\" \
-diff --git a/src/Makefile.in b/src/Makefile.in
-index 3428543..e7b76bc 100644
---- a/src/Makefile.in
-+++ b/src/Makefile.in
-@@ -499,7 +499,7 @@ lightdm_CFLAGS = \
- 	$(LIGHTDM_CFLAGS) \
- 	-I"$(top_srcdir)/common" \
- 	-DSBIN_DIR=\"$(sbindir)\" \
--	-DUSERS_DIR=\"$(localstatedir)/lib/lightdm-data\" \
-+	-DUSERS_DIR=\"$(localstatedir)/lib/lightdm/data\" \
- 	-DLOG_DIR=\"$(localstatedir)/log/lightdm\" \
- 	-DRUN_DIR=\"$(localstatedir)/run/lightdm\" \
- 	-DCACHE_DIR=\"$(localstatedir)/cache/lightdm\" \
-diff --git a/src/shared-data-manager.c b/src/shared-data-manager.c
-index e493e58..160b0ac 100644
---- a/src/shared-data-manager.c
-+++ b/src/shared-data-manager.c
-@@ -84,7 +84,7 @@ shared_data_manager_ensure_user_dir (SharedDataManager *manager, const gchar *us
-     g_debug ("Creating shared data directory %s", path);
- 
-     g_autoptr(GError) error = NULL;
--    gboolean result = g_file_make_directory (file, NULL, &error);
-+    gboolean result = g_file_make_directory_with_parents (file, NULL, &error);
-     if (error)
-     {
-         if (g_error_matches (error, G_IO_ERROR, G_IO_ERROR_EXISTS))
diff -pruN 1.26.0-8/debian/patches/08_reset-SIGPIPE-before-exec.patch 1.30.0-0ubuntu8/debian/patches/08_reset-SIGPIPE-before-exec.patch
--- 1.26.0-8/debian/patches/08_reset-SIGPIPE-before-exec.patch	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/patches/08_reset-SIGPIPE-before-exec.patch	1970-01-01 00:00:00.000000000 +0000
@@ -1,59 +0,0 @@
-From: Yves-Alexis Perez <corsac@debian.org>
-Date: Fri, 22 Feb 2019 17:19:10 +0100
-Subject: reset SIGPIPE before exec
-
-Prevent having complete session with SIGPIPE ignored
-
-Bug: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=823460
-Bug: https://bugs.launchpad.net/lightdm/+bug/1579867
----
- src/lightdm.c       | 6 ++++++
- src/process.c       | 3 +++
- src/session-child.c | 3 +++
- 3 files changed, 12 insertions(+)
-
-diff --git a/src/lightdm.c b/src/lightdm.c
-index c54f1ba..0724669 100644
---- a/src/lightdm.c
-+++ b/src/lightdm.c
-@@ -551,6 +551,12 @@ main (int argc, char **argv)
-     sigaction (SIGPIPE, &action, NULL);
-     sigaction (SIGHUP, &action, NULL);
- 
-+    /* Disable the SIGPIPE handler - this is a stupid Unix hangover behaviour.
-+     * We will handle piples / sockets being closed instead of having the whole daemon be killed...
-+     * http://stackoverflow.com/questions/8369506/why-does-sigpipe-exist
-+     */
-+    signal (SIGPIPE, SIG_IGN);
-+
-     /* When lightdm starts sessions it needs to run itself in a new mode */
-     if (argc >= 2 && strcmp (argv[1], "--session-child") == 0)
-         return session_child_run (argc, argv);
-diff --git a/src/process.c b/src/process.c
-index 549ccd9..f121cc7 100644
---- a/src/process.c
-+++ b/src/process.c
-@@ -235,6 +235,9 @@ process_start (Process *process, gboolean block)
-         /* Reset SIGPIPE handler so the child has default behaviour (we disabled it at LightDM start) */
-         signal (SIGPIPE, SIG_DFL);
- 
-+        /* Reset SIGPIPE handler so the child has default behaviour (we disabled it at LightDM start) */
-+        signal (SIGPIPE, SIG_DFL);
-+
-         execvp (argv[0], argv);
-         _exit (EXIT_FAILURE);
-     }
-diff --git a/src/session-child.c b/src/session-child.c
-index 7d0c7fd..d3ebfae 100644
---- a/src/session-child.c
-+++ b/src/session-child.c
-@@ -669,6 +669,9 @@ session_child_run (int argc, char **argv)
-         /* Reset SIGPIPE handler so the child has default behaviour (we disabled it at LightDM start) */
-         signal (SIGPIPE, SIG_DFL);
- 
-+        /* Reset SIGPIPE handler so the child has default behaviour (we disabled it at LightDM start) */
-+        signal (SIGPIPE, SIG_DFL);
-+
-         /* Run the command */
-         execve (command_argv[0], command_argv, pam_getenvlist (pam_handle));
-         _exit (EXIT_FAILURE);
diff -pruN 1.26.0-8/debian/patches/09_hide_systemd_nologin.patch 1.30.0-0ubuntu8/debian/patches/09_hide_systemd_nologin.patch
--- 1.26.0-8/debian/patches/09_hide_systemd_nologin.patch	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/patches/09_hide_systemd_nologin.patch	1970-01-01 00:00:00.000000000 +0000
@@ -1,18 +0,0 @@
-From: Yves-Alexis Perez <corsac@debian.org>
-Date: Fri, 22 Feb 2019 17:23:09 +0100
-Subject: add /sbin/nologin to shells of ignored users
-
----
- data/users.conf | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/data/users.conf b/data/users.conf
-index e4948a6..5c01993 100644
---- a/data/users.conf
-+++ b/data/users.conf
-@@ -11,4 +11,4 @@
- [UserList]
- minimum-uid=500
- hidden-users=nobody nobody4 noaccess
--hidden-shells=/bin/false /usr/sbin/nologin
-+hidden-shells=/bin/false /usr/sbin/nologin /sbin/nologin
diff -pruN 1.26.0-8/debian/patches/10_fix-build-glibc-2.33.patch 1.30.0-0ubuntu8/debian/patches/10_fix-build-glibc-2.33.patch
--- 1.26.0-8/debian/patches/10_fix-build-glibc-2.33.patch	2022-01-11 09:36:38.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/patches/10_fix-build-glibc-2.33.patch	1970-01-01 00:00:00.000000000 +0000
@@ -1,55 +0,0 @@
-From: Martin Liska <mliska@suse.cz>
-Date: Thu, 4 Feb 2021 11:18:05 +0100
-Subject: [PATCH] Glibc 2.33 fix.
-
-The library does not declare __fxstatat64 and friends in a header file.
-Thus the following warning appears:
-
-```
-libsystem.c:333:1: error: no previous prototype for '__xstat' [-Werror=missing-prototypes]
-  333 | __xstat (int version, const char *path, struct stat *buf)
-      | ^~~~~~~
-libsystem.c:342:1: error: no previous prototype for '__xstat64' [-Werror=missing-prototypes]
-  342 | __xstat64 (int version, const char *path, struct stat64 *buf)
-      | ^~~~~~~~~
-libsystem.c:351:1: error: no previous prototype for '__fxstatat' [-Werror=missing-prototypes]
-  351 | __fxstatat(int ver, int dirfd, const char *pathname, struct stat *buf, int flags)
-      | ^~~~~~~~~~
-libsystem.c:360:1: error: no previous prototype for '__fxstatat64' [-Werror=missing-prototypes]
-  360 | __fxstatat64(int ver, int dirfd, const char *pathname, struct stat64 *buf, int flags)
-      | ^~~~~~~~~~~~
-```
-
-Fixed #167.
-
-Origin: upstream, https://github.com/canonical/lightdm/commit/270b3bfcf84939ab2d71db3f3470cffd36816852
-Bug-Debian: https://bugs.debian.org/1002132
-
----
- tests/src/libsystem.c | 6 ++++++
- 1 file changed, 6 insertions(+)
-
-diff --git a/tests/src/libsystem.c b/tests/src/libsystem.c
-index b47b4523..aed3b8cf 100644
---- a/tests/src/libsystem.c
-+++ b/tests/src/libsystem.c
-@@ -329,6 +329,10 @@ stat64 (const char *path, struct stat64 *buf)
-     return _stat64 (new_path, buf);
- }
- 
-+// glibc 2.33 and newer does not declare these functions in a header file
-+#pragma GCC diagnostic push
-+#pragma GCC diagnostic ignored "-Wmissing-prototypes"
-+
- int
- __xstat (int version, const char *path, struct stat *buf)
- {
-@@ -365,6 +369,8 @@ __fxstatat64(int ver, int dirfd, const char *pathname, struct stat64 *buf, int f
-     return ___fxstatat64 (ver, dirfd, new_path, buf, flags);
- }
- 
-+#pragma GCC diagnostic pop
-+
- DIR *
- opendir (const char *name)
- {
diff -pruN 1.26.0-8/debian/patches/Glibc-2.33-fix.patch 1.30.0-0ubuntu8/debian/patches/Glibc-2.33-fix.patch
--- 1.26.0-8/debian/patches/Glibc-2.33-fix.patch	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/patches/Glibc-2.33-fix.patch	2021-04-09 12:17:02.000000000 +0000
@@ -0,0 +1,52 @@
+From: Martin Liska <mliska@suse.cz>
+Date: Thu, 4 Feb 2021 11:18:05 +0100
+Subject: [PATCH] Glibc 2.33 fix.
+Origin: https://github.com/canonical/lightdm/pull/168
+
+The library does not declare __fxstatat64 and friends in a header file.
+Thus the following warning appears:
+
+```
+libsystem.c:333:1: error: no previous prototype for '__xstat' [-Werror=missing-prototypes]
+  333 | __xstat (int version, const char *path, struct stat *buf)
+      | ^~~~~~~
+libsystem.c:342:1: error: no previous prototype for '__xstat64' [-Werror=missing-prototypes]
+  342 | __xstat64 (int version, const char *path, struct stat64 *buf)
+      | ^~~~~~~~~
+libsystem.c:351:1: error: no previous prototype for '__fxstatat' [-Werror=missing-prototypes]
+  351 | __fxstatat(int ver, int dirfd, const char *pathname, struct stat *buf, int flags)
+      | ^~~~~~~~~~
+libsystem.c:360:1: error: no previous prototype for '__fxstatat64' [-Werror=missing-prototypes]
+  360 | __fxstatat64(int ver, int dirfd, const char *pathname, struct stat64 *buf, int flags)
+      | ^~~~~~~~~~~~
+```
+
+Fixed #167.
+---
+ tests/src/libsystem.c | 6 ++++++
+ 1 file changed, 6 insertions(+)
+
+diff --git a/tests/src/libsystem.c b/tests/src/libsystem.c
+index b47b4523..aed3b8cf 100644
+--- a/tests/src/libsystem.c
++++ b/tests/src/libsystem.c
+@@ -329,6 +329,10 @@ stat64 (const char *path, struct stat64 *buf)
+     return _stat64 (new_path, buf);
+ }
+ 
++// glibc 2.33 and newer does not declare these functions in a header file
++#pragma GCC diagnostic push
++#pragma GCC diagnostic ignored "-Wmissing-prototypes"
++
+ int
+ __xstat (int version, const char *path, struct stat *buf)
+ {
+@@ -365,6 +369,8 @@ __fxstatat64(int ver, int dirfd, const char *pathname, struct stat64 *buf, int f
+     return ___fxstatat64 (ver, dirfd, new_path, buf, flags);
+ }
+ 
++#pragma GCC diagnostic pop
++
+ DIR *
+ opendir (const char *name)
+ {
diff -pruN 1.26.0-8/debian/patches/autologin-session-workaround.patch 1.30.0-0ubuntu8/debian/patches/autologin-session-workaround.patch
--- 1.26.0-8/debian/patches/autologin-session-workaround.patch	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/patches/autologin-session-workaround.patch	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,22 @@
+Description: Workaround faulty setting from Ubuntu user-setup package
+Author: Robert Ancell <robert.ancell@canonical.com>
+Bug: https://bugs.launchpad.net/bugs/1484083
+
+Index: lightdm/src/seat.c
+===================================================================
+--- lightdm.orig/src/seat.c
++++ lightdm/src/seat.c
+@@ -1011,7 +1011,12 @@ create_user_session (Seat *seat, const g
+     if (autostart)
+     {
+         const gchar *autologin_session_name = seat_get_string_property (seat, "autologin-session");
+-        if (autologin_session_name)
++        /* Workaround faulty setting from Ubuntu user-setup package
++         * See https://bugs.launchpad.net/bugs/1484083
++         */
++        if (autologin_session_name && strcmp (autologin_session_name, "lightdm-autologin") == 0)
++            l_debug (seat, "Ignoring invalid autologin-session option (LP: #1484083)");
++        else if (autologin_session_name)
+             session_name = autologin_session_name;
+     }
+ 
diff -pruN 1.26.0-8/debian/patches/dont-turn-format-warnings-into-errors.patch 1.30.0-0ubuntu8/debian/patches/dont-turn-format-warnings-into-errors.patch
--- 1.26.0-8/debian/patches/dont-turn-format-warnings-into-errors.patch	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/patches/dont-turn-format-warnings-into-errors.patch	2021-04-10 04:37:40.000000000 +0000
@@ -0,0 +1,29 @@
+Description: Don't turn format warnings into errors
+ Works around a build failure on s390x with gcc versions higher than gcc-9.
+Author: Gunnar Hjalmarsson <gunnarhj@ubuntu.com>
+
+This is the problematic warning:
+
+In file included from display-server.h:19,
+                 from x-server.h:16,
+                 from x-server.c:16:
+x-server.c: In function â€˜x_server_startâ€™:
+logger.h:54:5: error: â€˜%sâ€™ directive argument is null [-Werror=format-overflow=]
+   54 |     logger_log (LOGGER (self), G_LOG_LEVEL_DEBUG, __VA_ARGS__)
+      |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+x-server.c:131:45: note: format string is defined here
+  131 |     l_debug (server, "Connecting to XServer %s", x_server_get_address (server));
+      |                                             ^~
+
+Reported upstream: https://github.com/canonical/lightdm/issues/188
+
+--- a/configure.ac
++++ b/configure.ac
+@@ -29,7 +29,6 @@
+                  -Werror=pointer-arith \
+                  -Werror=init-self \
+                  -Werror=format-security \
+-                 -Werror=format=2 \
+                  -Werror=missing-include-dirs"
+     WARN_CXXFLAGS="-Wall"
+ fi
diff -pruN 1.26.0-8/debian/patches/fix-guest-session-ICEauthority-error.patch 1.30.0-0ubuntu8/debian/patches/fix-guest-session-ICEauthority-error.patch
--- 1.26.0-8/debian/patches/fix-guest-session-ICEauthority-error.patch	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/patches/fix-guest-session-ICEauthority-error.patch	2021-04-10 17:49:50.000000000 +0000
@@ -0,0 +1,17 @@
+Description: Fix ICEauthority error in guest session
+Author: Gunnar Hjalmarsson <gunnarhj@ubuntu.com>
+Bug-Ubuntu: https://launchpad.net/bugs/1921655
+Forwarded: https://github.com/canonical/lightdm/issues/185
+
+--- a/data/apparmor/lightdm-guest-session.in
++++ b/data/apparmor/lightdm-guest-session.in
+@@ -7,6 +7,9 @@
+   # Most applications are confined via the main abstraction
+   #include <abstractions/lightdm>
+ 
++  # Prevent ICEauthority error in e.g. MATE
++  owner /{,var/}run/user/[0-9]*/ICEauthority* l,
++
+   # chromium-browser needs special confinement due to its sandboxing
+   #include <abstractions/lightdm_chromium-browser>
+ 
diff -pruN 1.26.0-8/debian/patches/remove-qt4.patch 1.30.0-0ubuntu8/debian/patches/remove-qt4.patch
--- 1.26.0-8/debian/patches/remove-qt4.patch	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/patches/remove-qt4.patch	2019-10-18 22:24:44.000000000 +0000
@@ -0,0 +1,246 @@
+Description: Drop Qt 4 support, it's been unsupported since 2015
+Author: Robert Ancell <robert.ancell@canonical.com>
+Origin: upstream
+Last-Update: 2019-10-18
+
+--- lightdm-1.30.0.orig/configure.ac
++++ lightdm-1.30.0/configure.ac
+@@ -87,40 +87,6 @@ PKG_CHECK_MODULES(LIBLIGHTDM_GOBJECT, [
+     x11
+ ])
+ 
+-AC_ARG_ENABLE(liblightdm-qt,
+-	AS_HELP_STRING([--enable-liblightdm-qt],[Enable LightDM client Qt4 libraries [[default=auto]]]),
+-	[enable_liblightdm_qt4=$enableval],
+-	[enable_liblightdm_qt4="auto"])
+-compile_liblightdm_qt4=no
+-if test x"$enable_liblightdm_qt4" != "xno" ; then
+-    PKG_CHECK_MODULES(LIBLIGHTDM_QT4, [
+-        QtCore
+-        QtDBus
+-        QtGui
+-    ],
+-    [compile_liblightdm_qt4=yes],
+-    [if test "x$enable_liblightdm_qt4" != xauto; then
+-        AC_MSG_FAILURE(
+-          [--enable-liblightdm-qt was given, but test for Qt4 failed])
+-      fi
+-    ])
+-
+-    AC_CHECK_TOOLS(MOC4, [moc-qt4 moc])
+-    if test x$MOC4 = x; then
+-        compile_liblightdm_qt4=no
+-        if test "x$enable_liblightdm_qt4" != xauto; then
+-            AC_MSG_FAILURE(
+-              [--enable-liblightdm-qt4 was given, but MOC not found])
+-        fi
+-    fi
+-    if test x"$MOC4" = xmoc; then
+-        if test x"$(readlink $(which $MOC4))" = xqtchooser; then
+-            MOC4="$MOC4 --qt=4"
+-        fi
+-    fi
+-fi
+-AM_CONDITIONAL(COMPILE_LIBLIGHTDM_QT4, test x"$compile_liblightdm_qt4" != "xno")
+-
+ AC_ARG_ENABLE(liblightdm-qt5,
+ 	AS_HELP_STRING([--enable-liblightdm-qt5],[Enable LightDM client Qt5 libraries [[default=auto]]]),
+ 	[enable_liblightdm_qt5=$enableval],
+@@ -245,7 +211,6 @@ help/Makefile
+ liblightdm-gobject/liblightdm-gobject-1.pc
+ liblightdm-gobject/Makefile
+ liblightdm-qt/Makefile
+-liblightdm-qt/liblightdm-qt-3.pc
+ liblightdm-qt/liblightdm-qt5-3.pc
+ po/Makefile.in
+ src/Makefile
+@@ -268,7 +233,6 @@ echo "
+         User session:             $DEFAULT_USER_SESSION
+         GObject introspection:    $found_introspection
+         Vala bindings:            $enable_vala
+-        liblightdm-qt:            $compile_liblightdm_qt4
+         liblightdm-qt5:           $compile_liblightdm_qt5
+         libaudit support:         $use_libaudit
+         Enable tests:             $enable_tests
+--- lightdm-1.30.0.orig/liblightdm-qt/Makefile.am
++++ lightdm-1.30.0/liblightdm-qt/Makefile.am
+@@ -1,9 +1,6 @@
+ common_libadd = \
+ 	-L$(top_builddir)/liblightdm-gobject \
+ 	-llightdm-gobject-1
+-liblightdm_qt_3_la_LIBADD = \
+-	$(LIBLIGHTDM_QT4_LIBS) \
+-	$(common_libadd)
+ liblightdm_qt5_3_la_LIBADD = \
+ 	$(LIBLIGHTDM_QT5_LIBS) \
+ 	$(common_libadd)
+@@ -13,9 +10,6 @@ common_cflags = \
+ 	-I$(top_srcdir)/liblightdm-gobject \
+ 	$(GLIB_CFLAGS) \
+ 	-DQT_NO_KEYWORDS
+-liblightdm_qt_3_la_CXXFLAGS = \
+-	$(LIBLIGHTDM_QT4_CFLAGS) \
+-	$(common_cflags)
+ liblightdm_qt5_3_la_CXXFLAGS = \
+ 	-fPIC \
+ 	-DQT_DISABLE_DEPRECATED_BEFORE="QT_VERSION_CHECK(4, 0, 0)" \
+@@ -32,7 +26,6 @@ common_headers = \
+ 	QLightDM/sessionsmodel.h \
+ 	QLightDM/usersmodel.h
+ 
+-liblightdm_qt_3includedir=$(includedir)/lightdm-qt-3/QLightDM
+ liblightdm_qt5_3includedir=$(includedir)/lightdm-qt5-3/QLightDM
+ 
+ common_sources = \
+@@ -59,13 +52,6 @@ lib_LTLIBRARIES =
+ BUILT_SOURCES =
+ pkgconfig_DATA =
+ 
+-if COMPILE_LIBLIGHTDM_QT4
+-lib_LTLIBRARIES += liblightdm-qt-3.la
+-liblightdm_qt_3include_HEADERS = $(common_headers)
+-BUILT_SOURCES += $(common_sources:.cpp=_moc4.cpp)
+-pkgconfig_DATA += liblightdm-qt-3.pc
+-endif
+-
+ if COMPILE_LIBLIGHTDM_QT5
+ lib_LTLIBRARIES += liblightdm-qt5-3.la
+ liblightdm_qt5_3include_HEADERS = $(common_headers)
+@@ -74,12 +60,6 @@ pkgconfig_DATA += liblightdm-qt5-3.pc
+ endif
+ 
+ # Support pretty printing MOC
+-AM_V_MOC4 = $(am__v_MOC4_$(V))
+-am__v_MOC4_ = $(am__v_MOC4_$(AM_DEFAULT_VERBOSITY))
+-am__v_MOC4_0 = @echo "  MOC4    " $@;
+-%_moc4.cpp: QLightDM/%.h
+-	$(AM_V_MOC4) $(MOC4) $< -o $@
+-
+ AM_V_MOC5 = $(am__v_MOC5_$(V))
+ am__v_MOC5_ = $(am__v_MOC5_$(AM_DEFAULT_VERBOSITY))
+ am__v_MOC5_0 = @echo "  MOC5    " $@;
+--- lightdm-1.30.0.orig/tests/Makefile.am
++++ lightdm-1.30.0/tests/Makefile.am
+@@ -297,42 +297,6 @@ TESTS += \
+ 	test-login-remote-session-python \
+ 	test-power-python
+ 
+-if COMPILE_LIBLIGHTDM_QT4
+-TESTS += \
+-	test-autologin-timeout-qt4 \
+-	test-autologin-guest-timeout-qt4 \
+-	test-autologin-session-timeout-qt4 \
+-	test-cancel-authentication-qt4 \
+-	test-login-qt4 \
+-	test-login-manual-qt4 \
+-	test-login-manual-previous-session-qt4 \
+-	test-login-no-password-qt4 \
+-	test-login-long-username-qt4 \
+-	test-login-long-password-qt4 \
+-	test-login-two-factor-qt4 \
+-	test-login-new-authtok-qt4 \
+-	test-login-info-prompt-qt4 \
+-	test-login-multi-info-prompt-qt4 \
+-	test-login-previous-session-qt4 \
+-	test-login-wrong-password-qt4 \
+-	test-login-invalid-user-qt4 \
+-	test-login-invalid-session-qt4 \
+-	test-login-logout-qt4 \
+-	test-login-pick-session-qt4 \
+-	test-login-remember-session-qt4 \
+-	test-login-manual-remember-session-qt4 \
+-	test-login-guest-qt4 \
+-	test-login-guest-pick-session-qt4 \
+-	test-login-guest-disabled-qt4 \
+-	test-login-guest-no-setup-script-qt4 \
+-	test-login-guest-fail-setup-script-qt4 \
+-	test-login-guest-logout-qt4 \
+-	test-login-remote-session-qt4 \
+-	test-sessions-qt4 \
+-	test-users-qt4 \
+-	test-power-qt4
+-endif
+-
+ if COMPILE_LIBLIGHTDM_QT5
+ TESTS += \
+ 	test-autologin-timeout-qt5 \
+@@ -377,7 +341,6 @@ EXTRA_DIST = \
+ 	data/greeters/test-gobject-greeter.desktop \
+ 	data/greeters/test-mir-greeter.desktop \
+ 	data/greeters/test-python-greeter.desktop \
+-	data/greeters/test-qt4-greeter.desktop \
+ 	data/greeters/test-qt5-greeter.desktop \
+ 	data/greeters/test-wayland-greeter.desktop \
+ 	data/keys.conf \
+--- lightdm-1.30.0.orig/tests/src/Makefile.am
++++ lightdm-1.30.0/tests/src/Makefile.am
+@@ -32,10 +32,6 @@ libsystem_la_LIBADD = -ldl $(GLIB_LIBS)
+ # but produces a shared library (instead of just a static library)
+ libsystem_la_LDFLAGS = -rpath /nowhere
+ 
+-if COMPILE_LIBLIGHTDM_QT4
+-noinst_PROGRAMS += test-qt4-greeter
+-endif
+-
+ if COMPILE_LIBLIGHTDM_QT5
+ noinst_PROGRAMS += test-qt5-greeter
+ endif
+@@ -137,30 +133,22 @@ test_script_hook_LDADD = \
+ 	$(GLIB_LIBS) \
+ 	$(GIO_UNIX_LIBS)
+ 
+-test-qt4-greeter_moc4.cpp: test-qt-greeter.h
+-	$(am__v_MOC4_$(V)) $(MOC4) $< -o $@
+ test-qt5-greeter_moc5.cpp: test-qt-greeter.h
+ 	$(am__v_MOC5_$(V)) $(MOC5) $< -o $@
+ common_qt_sources = test-qt-greeter.cpp test-qt-greeter.h status.c status.h
+-test_qt4_greeter_SOURCES = $(common_qt_sources)
+ test_qt5_greeter_SOURCES = $(common_qt_sources)
+-nodist_test_qt4_greeter_SOURCES = test-qt4-greeter_moc4.cpp
+ nodist_test_qt5_greeter_SOURCES = test-qt5-greeter_moc5.cpp
+ common_qt_cflags = \
+ 	$(WARN_CXXFLAGS) \
+ 	$(GLIB_CFLAGS) \
+ 	$(GIO_UNIX_CFLAGS) \
+ 	$(XCB_CFLAGS)
+-test_qt4_greeter_CFLAGS = $(common_qt_cflags)
+ test_qt5_greeter_CFLAGS = $(common_qt_cflags)
+ common_qt_cxxflags = \
+ 	-fPIC \
+ 	-DQT_DISABLE_DEPRECATED_BEFORE="QT_VERSION_CHECK(4, 0, 0)" \
+ 	-I$(top_srcdir)/liblightdm-qt \
+ 	$(GLIB_CFLAGS)
+-test_qt4_greeter_CXXFLAGS = \
+-	$(common_qt_cxxflags) \
+-	$(LIBLIGHTDM_QT4_CFLAGS)
+ test_qt5_greeter_CXXFLAGS = \
+ 	$(common_qt_cxxflags) \
+ 	$(LIBLIGHTDM_QT5_CFLAGS)
+@@ -171,10 +159,6 @@ common_qt_ldadd = \
+ 	$(GLIB_LIBS) \
+ 	$(GIO_UNIX_LIBS) \
+ 	$(XCB_LIBS)
+-test_qt4_greeter_LDADD = \
+-	$(common_qt_ldadd) \
+-	-llightdm-qt-3 \
+-	$(LIBLIGHTDM_QT4_LIBS)
+ test_qt5_greeter_LDADD = \
+ 	$(common_qt_ldadd) \
+ 	-llightdm-qt5-3 \
+@@ -224,16 +208,9 @@ vnc_client_LDADD = \
+ 	$(GIO_UNIX_LIBS)
+ 
+ CLEANFILES = \
+-	test-qt4-greeter_moc4.cpp \
+ 	test-qt5-greeter_moc5.cpp
+ 
+ # Support pretty printing MOC
+-AM_V_MOC4 = $(am__v_MOC4_$(V))
+-am__v_MOC4_ = $(am__v_MOC4_$(AM_DEFAULT_VERBOSITY))
+-am__v_MOC4_0 = @echo "  MOC4    " $@;
+-%_moc4.cpp: QLightDM/%.h
+-	$(AM_V_MOC4) $(MOC4) $< -o $@
+-
+ AM_V_MOC5 = $(am__v_MOC5_$(V))
+ am__v_MOC5_ = $(am__v_MOC5_$(AM_DEFAULT_VERBOSITY))
+ am__v_MOC5_0 = @echo "  MOC5    " $@;
diff -pruN 1.26.0-8/debian/patches/series 1.30.0-0ubuntu8/debian/patches/series
--- 1.26.0-8/debian/patches/series	2022-01-11 09:31:51.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/patches/series	2021-04-10 03:19:29.000000000 +0000
@@ -1,8 +1,7 @@
-03_liblightdm-qt3-add-header-visibility.patch
-01_set-default-path.patch
-02_fix-apparmor-profile.patch
-05_debianize-pam-files.patch
-06_change-user-dirs.patch
-08_reset-SIGPIPE-before-exec.patch
-09_hide_systemd_nologin.patch
-10_fix-build-glibc-2.33.patch
+04_language_handling.patch
+05_translate_debian_files.patch
+autologin-session-workaround.patch
+remove-qt4.patch
+fix-guest-session-ICEauthority-error.patch
+Glibc-2.33-fix.patch
+dont-turn-format-warnings-into-errors.patch
diff -pruN 1.26.0-8/debian/po/af.po 1.30.0-0ubuntu8/debian/po/af.po
--- 1.26.0-8/debian/po/af.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/af.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,51 @@
+# Afrikaans translation for lightdm
+# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2012.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2012-07-24 11:54+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Afrikaans <af@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
diff -pruN 1.26.0-8/debian/po/am.po 1.30.0-0ubuntu8/debian/po/am.po
--- 1.26.0-8/debian/po/am.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/am.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,51 @@
+# Amharic translation for lightdm
+# Copyright (c) 2015 Rosetta Contributors and Canonical Ltd 2015
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2015.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2015-01-11 23:24+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Amharic <am@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
diff -pruN 1.26.0-8/debian/po/an.po 1.30.0-0ubuntu8/debian/po/an.po
--- 1.26.0-8/debian/po/an.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/an.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,51 @@
+# Aragonese translation for lightdm
+# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2012.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2012-02-29 09:26+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Aragonese <an@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
diff -pruN 1.26.0-8/debian/po/ar.po 1.30.0-0ubuntu8/debian/po/ar.po
--- 1.26.0-8/debian/po/ar.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/ar.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,85 @@
+# Arabic translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2014-03-31 17:33+0000\n"
+"Last-Translator: Ibrahim Saed <ibraheem5000@gmail.com>\n"
+"Language-Team: Arabic <ar@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr "Ù…Ø¯ÙŠØ± Ø§Ù„Ø¹Ø±Ø¶ Ø§Ù„Ø§ÙØªØ±Ø§Ø¶ÙŠ:"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+"Ù…Ø¯ÙŠØ± Ø§Ù„Ø¹Ø±Ø¶ Ù‡Ùˆ Ø¨Ø±Ù†Ø§Ù…Ø¬ ÙŠØªÙŠØ­ Ù„Ùƒ Ø¥Ù…ÙƒØ§Ù†ÙŠØ© Ø§Ù„ÙˆÙ„ÙˆØ¬ Ø¨Ø·Ø±ÙŠÙ‚Ø© Ø¹Ø±Ø¶ Ø±Ø³ÙˆÙ…ÙŠØ© Ù„Ù†Ø¸Ø§Ù… Ù†ÙˆØ§ÙØ° X."
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+"Ù…Ø¯ÙŠØ± Ø¹Ø±Ø¶ ÙˆØ§Ø­Ø¯ ÙÙ‚Ø· ÙŠÙ…ÙƒÙ†Ù‡ Ø¥Ø¯Ø§Ø±Ø© Ø®Ø§Ø¯ÙˆÙ… X Ø§Ù„Ù…ÙØ¹Ø·Ù‰ØŒ ÙˆÙ„ÙƒÙ† ÙŠÙˆØ¬Ø¯ Ø­Ø²Ù… Ø¹Ø¯ÙŠØ¯Ø© Ù…ÙØ«Ø¨Ù‘ØªØ© "
+"Ù…Ù† Ù…Ø¯ÙŠØ± Ø§Ù„Ø¹Ø±Ø¶. Ø±Ø¬Ø§Ø¡Ù‹ Ø§Ø®ØªØ± Ø£ÙŠ Ù…Ø¯ÙŠØ± Ø¹Ø±Ø¶ ØªØ±ØºØ¨ Ø¨ØªØ´ØºÙŠÙ„Ù‡ Ø§ÙØªØ±Ø§Ø¶ÙŠØ§."
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
+
+#~ msgid "Large Font"
+#~ msgstr "Ø®Ø· ÙƒØ¨ÙŠØ±"
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
+#~ msgstr "Ø£Ù…ØªØ£ÙƒØ¯ Ø£Ù†Ùƒ ØªØ±ØºØ¨ ÙÙŠ Ø¥ØºÙ„Ø§Ù‚ ÙƒÙ„ Ø§Ù„Ø¨Ø±Ø§Ù…Ø¬ ÙˆØ¥Ø¹Ø§Ø¯Ø© ØªØ´ØºÙŠÙ„ Ø§Ù„Ø­Ø§Ø³ÙˆØ¨ØŸ"
+
+#~ msgid ""
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+#~ msgstr "Ø£Ù…ØªØ£ÙƒØ¯ Ø£Ù†Ùƒ ØªØ±ØºØ¨ ÙÙŠ Ø¥ØºÙ„Ø§Ù‚ ÙƒÙ„ Ø§Ù„Ø¨Ø±Ø§Ù…Ø¬ ÙˆØªÙˆÙ‚ÙŠÙ Ø§Ù„Ø­Ø§Ø³ÙˆØ¨ØŸ"
+
+#~ msgid "Cancel"
+#~ msgstr "Ø¥Ù„ØºØ§Ø¡"
+
+#~ msgid "Restart"
+#~ msgstr "Ø¥Ø¹Ø§Ø¯Ø© ØªØ´ØºÙŠÙ„"
+
+#~ msgid "Shutdown"
+#~ msgstr "Ø£Ø·ÙØ¦"
+
+#~ msgid "Hibernate"
+#~ msgstr "Ø¥Ø³Ø¨Ø§Øª"
+
+#~ msgid "Restart..."
+#~ msgstr "Ø£Ø¹ÙØ¯ Ø§Ù„ØªØ´ØºÙŠÙ„..."
+
+#~ msgid "Shutdown..."
+#~ msgstr "Ø£Ø·ÙØ¦..."
+
+#~ msgid "Suspend"
+#~ msgstr "ØªØ¹Ù„ÙŠÙ‚"
diff -pruN 1.26.0-8/debian/po/ast.po 1.30.0-0ubuntu8/debian/po/ast.po
--- 1.26.0-8/debian/po/ast.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/ast.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,83 @@
+# Asturian translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2011-07-19 15:39+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Asturian <ast@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
+
+#~ msgid "Large Font"
+#~ msgstr "Fonte Grande"
+
+#~ msgid "Cancel"
+#~ msgstr "Encaboxar"
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
+#~ msgstr "Â¿Daveres que quies zarrar tolos programes y reaniciar l'equipu?"
+
+#~ msgid "Hibernate"
+#~ msgstr "Ivernar"
+
+#~ msgid "Restart..."
+#~ msgstr "Rearrancar..."
+
+#~ msgid "Restart"
+#~ msgstr "Rearrancar"
+
+#~ msgid ""
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+#~ msgstr ""
+#~ "Â¿Tas seguru de que quies colar de tolos programes y apagar l'ordenador?"
+
+#~ msgid "Shutdown"
+#~ msgstr "Apagar"
+
+#~ msgid "Shutdown..."
+#~ msgstr "Apagar..."
+
+#~ msgid "Suspend"
+#~ msgstr "Suspender"
diff -pruN 1.26.0-8/debian/po/az.po 1.30.0-0ubuntu8/debian/po/az.po
--- 1.26.0-8/debian/po/az.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/az.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,51 @@
+# Azerbaijani translation for lightdm
+# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2012.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2012-04-14 10:57+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Azerbaijani <az@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
diff -pruN 1.26.0-8/debian/po/be.po 1.30.0-0ubuntu8/debian/po/be.po
--- 1.26.0-8/debian/po/be.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/be.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,51 @@
+# Belarusian translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2011-07-27 04:54+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Belarusian <be@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
diff -pruN 1.26.0-8/debian/po/bg.po 1.30.0-0ubuntu8/debian/po/bg.po
--- 1.26.0-8/debian/po/bg.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/bg.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,96 @@
+# Bulgarian translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2014-02-11 22:46+0000\n"
+"Last-Translator: Atanas Kovachki <Unknown>\n"
+"Language-Team: Bulgarian <bg@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr "Ð¡Ñ‚Ð°Ð½Ð´Ð°Ñ€Ñ‚ÐµÐ½ Ð¼ÐµÐ½Ð¸Ð´Ð¶ÑŠÑ€ Ð½Ð° Ð´Ð¸ÑÐ¿Ð»ÐµÑ:"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+"ÐœÐµÐ½Ð¸Ð´Ð¶ÑŠÑ€ Ð½Ð° Ð´Ð¸ÑÐ¿Ð»ÐµÑ Ðµ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð°, ÐºÐ¾ÑÑ‚Ð¾ Ð¾ÑÐ¸Ð³ÑƒÑ€ÑÐ²Ð° Ð³Ñ€Ð°Ñ„Ð¸Ñ‡Ð½Ð¸ Ð²ÑŠÐ·Ð¼Ð¾Ð¶Ð½Ð¾ÑÑ‚Ð¸ Ð·Ð° "
+"Ð²Ð»Ð¸Ð·Ð°Ð½Ðµ Ð² X Window ÑÐ¸ÑÑ‚ÐµÐ¼Ð°."
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+"Ð¡Ð°Ð¼Ð¾ ÐµÐ´Ð¸Ð½ Ð¼ÐµÐ½Ð¸Ð´Ð¶ÑŠÑ€ Ð½Ð° Ð´Ð¸ÑÐ¿Ð»ÐµÑ Ð¼Ð¾Ð¶Ðµ Ð´Ð° ÑƒÐ¿Ñ€Ð°Ð²Ð»ÑÐ²Ð° Ð´Ð°Ð´ÐµÐ½ X ÑÑŠÑ€Ð²ÑŠÑ€, Ð½Ð¾ Ð¼Ð½Ð¾Ð¶ÐµÑÑ‚Ð²Ð¾ "
+"Ð¿Ð°ÐºÐµÑ‚Ð¸ Ð½Ð° Ð¼ÐµÐ½Ð¸Ð´Ð¶ÑŠÑ€Ð¸ Ð½Ð° Ð´Ð¸ÑÐ¿Ð»ÐµÑ ÑÐ° Ð¸Ð½ÑÑ‚Ð°Ð»Ð¸Ñ€Ð°Ð½Ð¸. ÐœÐ¾Ð»Ñ, Ð¸Ð·Ð±ÐµÑ€ÐµÑ‚Ðµ ÐºÐ¾Ð¹ Ð¼ÐµÐ½Ð¸Ð´Ð¶ÑŠÑ€ "
+"Ð½Ð° Ð´Ð¸ÑÐ¿Ð»ÐµÑ Ð±Ð¸ Ñ‚Ñ€ÑÐ±Ð²Ð°Ð»Ð¾ ÑÑ‚Ð°Ð½Ð´Ð°Ñ€Ñ‚Ð½Ð¾ Ð´Ð° Ñ€Ð°Ð±Ð¾Ñ‚Ð¸."
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
+"ÐœÐ½Ð¾Ð¶ÐµÑÑ‚Ð²Ð¾ Ð¼ÐµÐ½Ð¸Ð´Ð¶ÑŠÑ€Ð¸ Ð½Ð° Ð´Ð¸ÑÐ¿Ð»ÐµÑ Ð¼Ð¾Ð³Ð°Ñ‚ Ð´Ð° Ñ€Ð°Ð±Ð¾Ñ‚ÑÑ‚ ÐµÐ´Ð½Ð¾Ð²Ñ€ÐµÐ¼ÐµÐ½Ð½Ð¾, Ð°ÐºÐ¾ Ñ‚Ðµ ÑÐ° "
+"ÐºÐ¾Ð½Ñ„Ð¸Ð³ÑƒÑ€Ð¸Ñ€Ð°Ð½Ð¸ Ð·Ð° ÑƒÐ¿Ñ€Ð°Ð²Ð»ÐµÐ½Ð¸Ðµ Ð½Ð° Ñ€Ð°Ð·Ð»Ð¸Ñ‡Ð½Ð¸ ÑÑŠÑ€Ð²ÑŠÑ€Ð¸, Ð·Ð° Ð´Ð° ÑÐµ Ð¿Ð¾ÑÑ‚Ð¸Ð³Ð½Ðµ Ñ‚Ð¾Ð²Ð° "
+"ÐºÐ¾Ð½Ñ„Ð¸Ð³ÑƒÑ€Ð¸Ñ€Ð°Ð¹Ñ‚Ðµ Ð¼ÐµÐ½Ð¸Ð´Ð¶ÑŠÑ€Ð¸Ñ‚Ðµ Ð½Ð° Ð´Ð¸ÑÐ¿Ð»ÐµÑ ÑÑŠÐ¾Ñ‚Ð²ÐµÑ‚Ð½Ð¾, Ð´Ð° Ñ€ÐµÐ´Ð°ÐºÑ‚Ð¸Ñ€Ð°Ñ‚ Ð²ÑÐµÐºÐ¸ ÐµÐ´Ð¸Ð½ Ð¾Ñ‚ "
+"Ñ‚ÐµÑ…Ð½Ð¸Ñ‚Ðµ Ð¸Ð½Ð¸Ñ†Ð¸Ð°Ð»Ð¸Ð·Ð¸Ñ€Ð°Ñ‰Ð¸ ÑÐºÑ€Ð¸Ð¿Ñ‚Ð¾Ð²Ðµ Ð² /etc/init.d Ð¸ Ð´ÐµÐ°ÐºÑ‚Ð¸Ð²Ð¸Ñ€Ð°Ð¹Ñ‚Ðµ Ð¿Ñ€Ð¾Ð²ÐµÑ€ÐºÐ°Ñ‚Ð° Ð·Ð° "
+"ÑÑ‚Ð°Ð½Ð´Ð°Ñ€Ñ‚Ð½Ð¸Ñ Ð¼ÐµÐ½Ð¸Ð´Ð¶ÑŠÑ€ Ð½Ð° Ð´Ð¸ÑÐ¿Ð»ÐµÑ."
+
+#~ msgid "Large Font"
+#~ msgstr "Ð“Ð¾Ð»ÑÐ¼ ÑˆÑ€Ð¸Ñ„Ñ‚"
+
+#~ msgid "Cancel"
+#~ msgstr "ÐžÑ‚ÐºÐ°Ð·"
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
+#~ msgstr ""
+#~ "Ð¡Ð¸Ð³ÑƒÑ€Ð½Ð¸ Ð»Ð¸ ÑÑ‚Ðµ, Ñ‡Ðµ Ð¸ÑÐºÐ°Ñ‚Ðµ Ð´Ð° ÑÐµ Ð·Ð°Ñ‚Ð²Ð¾Ñ€ÑÑ‚ Ð²ÑÐ¸Ñ‡ÐºÐ¸ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð¸ Ð¸ ÐºÐ¾Ð¼Ð¿ÑŽÑ‚ÑŠÑ€ÑŠÑ‚ Ð´Ð° ÑÐµ "
+#~ "Ñ€ÐµÑÑ‚Ð°Ñ€Ñ‚Ð¸Ñ€Ð°?"
+
+#~ msgid "Restart"
+#~ msgstr "Ð ÐµÑÑ‚Ð°Ñ€Ñ‚Ð¸Ñ€Ð°Ð½Ðµ"
+
+#~ msgid ""
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+#~ msgstr ""
+#~ "Ð¡Ð¸Ð³ÑƒÑ€Ð½Ð¸ Ð»Ð¸ ÑÑ‚Ðµ, Ñ‡Ðµ Ð¸ÑÐºÐ°Ñ‚Ðµ Ð´Ð° ÑÐµ Ð·Ð°Ñ‚Ð²Ð¾Ñ€ÑÑ‚ Ð²ÑÐ¸Ñ‡ÐºÐ¸ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð¸ Ð¸ ÐºÐ¾Ð¼Ð¿ÑŽÑ‚ÑŠÑ€ÑŠÑ‚ Ð´Ð° ÑÐµ "
+#~ "Ð¸Ð·ÐºÐ»ÑŽÑ‡Ð¸?"
+
+#~ msgid "Shutdown"
+#~ msgstr "Ð˜Ð·ÐºÐ»ÑŽÑ‡Ð²Ð°Ð½Ðµ"
+
+#~ msgid "Hibernate"
+#~ msgstr "Ð”ÑŠÐ»Ð±Ð¾ÐºÐ¾ Ð·Ð°ÑÐ¿Ð¸Ð²Ð°Ð½Ðµ"
+
+#~ msgid "Restart..."
+#~ msgstr "Ð ÐµÑÑ‚Ð°Ñ€Ñ‚Ð¸Ñ€Ð°Ð½Ðµ..."
+
+#~ msgid "Shutdown..."
+#~ msgstr "Ð˜Ð·ÐºÐ»ÑŽÑ‡Ð²Ð°Ð½Ðµ..."
+
+#~ msgid "Suspend"
+#~ msgstr "ÐŸÑ€Ð¸ÑÐ¿Ð¸Ð²Ð°Ð½Ðµ"
diff -pruN 1.26.0-8/debian/po/bn.po 1.30.0-0ubuntu8/debian/po/bn.po
--- 1.26.0-8/debian/po/bn.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/bn.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,83 @@
+# Bengali translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2011-08-31 16:20+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Bengali <bn@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
+
+#~ msgid "Large Font"
+#~ msgstr "à¦¬à§œ à¦«à¦¨à§à¦Ÿ"
+
+#~ msgid "Cancel"
+#~ msgstr "à¦¬à¦¾à¦¤à¦¿à¦²"
+
+#~ msgid "Hibernate"
+#~ msgstr "à¦¨à¦¿à¦¦à§à¦°à¦¿à¦¤ à¦…à¦¬à¦¸à§à¦¥à¦¾à§Ÿ à¦°à¦¾à¦–à§à¦¨"
+
+#~ msgid "Restart..."
+#~ msgstr "à¦ªà§à¦¨à¦°à¦¾à§Ÿ à¦†à¦°à¦®à§à¦­..."
+
+#~ msgid "Shutdown..."
+#~ msgstr "à¦¬à¦¨à§à¦§ à¦•à¦°à§à¦¨..."
+
+#~ msgid "Suspend"
+#~ msgstr "à¦¸à§à¦¥à¦—à¦¿à¦¤ à¦•à¦°à§à¦¨"
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
+#~ msgstr ""
+#~ "à¦†à¦ªà¦¨à¦¿ à¦•à¦¿ à¦¨à¦¿à¦¶à§à¦šà¦¿à¦¤ à¦†à¦ªà¦¨à¦¿ à¦¸à¦¬ à¦ªà§à¦°à§‹à¦—à§à¦°à¦¾à¦® à¦¬à¦¨à§à¦§ à¦•à¦°à§‡ à¦•à¦®à§à¦ªà¦¿à¦‰à¦Ÿà¦¾à¦° à¦ªà§à¦¨à¦°à¦¾à§Ÿ à¦†à¦°à¦®à§à¦­ à¦•à¦°à¦¤à§‡ à¦šà¦¾à¦¨?"
+
+#~ msgid "Restart"
+#~ msgstr "à¦ªà§à¦¨à¦°à¦¾à§Ÿ à¦†à¦°à¦®à§à¦­"
+
+#~ msgid ""
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+#~ msgstr "à¦†à¦ªà¦¨à¦¿ à¦•à¦¿ à¦¨à¦¿à¦¶à§à¦šà¦¿à¦¤ à¦†à¦ªà¦¨à¦¿ à¦¸à¦¬ à¦ªà§à¦°à§‹à¦—à§à¦°à¦¾à¦® à¦¬à¦¨à§à¦§ à¦•à¦°à§‡ à¦•à¦®à§à¦ªà¦¿à¦‰à¦Ÿà¦¾à¦° à¦¬à¦¨à§à¦§ à¦•à¦°à¦¤à§‡ à¦šà¦¾à¦¨?"
+
+#~ msgid "Shutdown"
+#~ msgstr "à¦¬à¦¨à§à¦§ à¦•à¦°à§à¦¨"
diff -pruN 1.26.0-8/debian/po/bo.po 1.30.0-0ubuntu8/debian/po/bo.po
--- 1.26.0-8/debian/po/bo.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/bo.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,51 @@
+# Tibetan translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2011-11-09 02:38+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Tibetan <bo@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
diff -pruN 1.26.0-8/debian/po/br.po 1.30.0-0ubuntu8/debian/po/br.po
--- 1.26.0-8/debian/po/br.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/br.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,51 @@
+# Breton translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2016-11-02 13:54+0000\n"
+"Last-Translator: Denis <Unknown>\n"
+"Language-Team: Breton <br@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr "Ardoer skrammaÃ± dre ziouer :"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
diff -pruN 1.26.0-8/debian/po/bs.po 1.30.0-0ubuntu8/debian/po/bs.po
--- 1.26.0-8/debian/po/bs.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/bs.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,85 @@
+# Bosnian translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2012-03-16 12:36+0000\n"
+"Last-Translator: Kenan DerviÅ¡eviÄ‡ <kenan@dkenan.com>\n"
+"Language-Team: Bosnian <bs@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
+
+#~ msgid ""
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+#~ msgstr ""
+#~ "Jeste li sigurni da Å¾elite zatvoriti sve programe i iskljuÄiti raÄunar?"
+
+#~ msgid "Large Font"
+#~ msgstr "Veliki font"
+
+#~ msgid "Hibernate"
+#~ msgstr "Hibernacija"
+
+#~ msgid "Restart..."
+#~ msgstr "Ponovo pokreni..."
+
+#~ msgid "Shutdown..."
+#~ msgstr "GaÅ¡enje..."
+
+#~ msgid "Restart"
+#~ msgstr "Ponovo pokreni"
+
+#~ msgid "Suspend"
+#~ msgstr "Suspenduj"
+
+#~ msgid "Cancel"
+#~ msgstr "Odustani"
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
+#~ msgstr ""
+#~ "Da li ste sigurni da Å¾elite da zatvorite sve programe i da ponovo pokrenete "
+#~ "raÄunar?"
+
+#~ msgid "Shutdown"
+#~ msgstr "Ugasi"
diff -pruN 1.26.0-8/debian/po/ca.po 1.30.0-0ubuntu8/debian/po/ca.po
--- 1.26.0-8/debian/po/ca.po	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/ca.po	2019-08-14 02:18:58.000000000 +0000
@@ -1,100 +1,94 @@
-# debconf templates for xorg-x11 package
-# Catalan translation
-#
-# $Id: ca.po 1273 2006-02-21 10:58:12Z ender $
-#
-# Copyrights:
-# Branden Robinson, 2000-2004
-# Ivan Vilata i Balaguer <net.selidor@ivan>, 2002-2007
-#
-# This file is distributed under the same license as the xorg-x11 package.
-# Please see debian/copyright.
-#
-#    Translators, if you are not familiar with the PO format, gettext
-#    documentation is worth reading, especially sections dedicated to
-#    this format, e.g. by running:
-#         info -n '(gettext)PO Files'
-#         info -n '(gettext)Header Entry'
-#
-#    Some information specific to po-debconf are available at
-#            /usr/share/doc/po-debconf/README-trans
-#         or http://www.debian.org/intl/l10n/po-debconf/README-trans
-#
-#    Developers do not need to manually edit POT or PO files.
+# Catalan translation for lightdm
+# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2010.
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: xdm 1:1.0.5-2\n"
-"Report-Msgid-Bugs-To: lightdm@packages.debian.org\n"
-"POT-Creation-Date: 2012-03-27 21:31+0200\n"
-"PO-Revision-Date: 2007-03-22 11:00+0100\n"
-"Last-Translator: Ivan Vilata i Balaguer <ivan@selidor.net>\n"
-"Language-Team: Catalan <debian-l10n-catalan@lists.debian.org>\n"
-"Language: ca\n"
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2017-03-24 06:56+0000\n"
+"Last-Translator: Walter Garcia-Fontes <walter.garcia@upf.edu>\n"
+"Language-Team: Catalan <ca@li.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid "Default display manager:"
-msgstr "Escolliu el gestor de pantalla:"
+msgstr "Gestor de pantalla predeterminat:"
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "A display manager is a program that provides graphical login capabilities "
 "for the X Window System."
 msgstr ""
-"Un gestor de pantalla (display manager) Ã©s un programa que proporciona la "
-"capacitat dâ€™un quadre grÃ fic dâ€™entrada (login) a lâ€™X Window System."
+"Un gestor de pantalla Ã©s un programa que proveeix la capacitat d'iniciar una "
+"sessiÃ³ grÃ ficament al Sistema de Finestres X."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Only one display manager can manage a given X server, but multiple display "
 "manager packages are installed. Please select which display manager should "
 "run by default."
 msgstr ""
-"NomÃ©s un gestor de pantalla pot gestionar un servidor X determinat, perÃ² "
-"teniu instaÅ€lats diversos paquets de gestor de pantalla.  Per favor, "
-"escolliu quin gestor de pantalla s'executarÃ  per defecte."
+"NomÃ©s un gestor de pantalla pot gestionar un servidor X donat, perÃ² estan "
+"instalÂ·lats mÃºltiples paquets de gestiÃ³ de pantalles. Si us plau, "
+"seleccioneu quin gestor de pantalla s'ha d'executar per defecte."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Multiple display managers can run simultaneously if they are configured to "
 "manage different servers; to achieve this, configure the display managers "
 "accordingly, edit each of their init scripts in /etc/init.d, and disable the "
 "check for a default display manager."
 msgstr ""
-"Poden haver diversos gestors de pantalla corrent simultÃ niament si es "
-"configuren per a gestionar diferents servidors; per a aconseguir aÃ§Ã², "
-"configureu adequadament els gestors de pantalla, editeu cadascun dels seus "
-"scripts dâ€™inici en Â«/etc/init.dÂ», i deshabiliteu la comprovaciÃ³ de gestor de "
-"pantalla per defecte."
+"MÃºltiples gestors de pantalla es poden executar simultÃ niament si estan "
+"configurats per gestionar servidors diferents; per aconseguir aixÃ², "
+"configureu els gestors de pantalla en la forma corresponent, editeu cada un "
+"dels seus scripts d'inici a /etc/init.d i inhabiliteu la comprovaciÃ³ per un "
+"gestor de pantalla predeterminat."
 
-#~ msgid "Stop the xdm daemon?"
-#~ msgstr "Voleu detenir el dimoni Â«xdmÂ»?"
+#~ msgid "Cancel"
+#~ msgstr "CancelÂ·la"
 
-#~ msgid ""
-#~ "The X display manager (xdm) daemon is typically stopped on package "
-#~ "upgrade and removal, but it appears to be managing at least one running X "
-#~ "session."
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
 #~ msgstr ""
-#~ "El dimoni gestor de pantalla dâ€™X, Â«xdmÂ», sol ser detingut en actualitzarâ€"
-#~ "ne i eliminarâ€ne el paquet, perÃ² sembla que ara estÃ  gestionant almenys "
-#~ "una sessiÃ³ X activa."
+#~ "Esteu segur que voleu tancar tots els programes i reiniciar l'ordinador?"
+
+#~ msgid "Restart"
+#~ msgstr "Reinicia"
 
 #~ msgid ""
-#~ "If xdm is stopped now, any X sessions it manages will be terminated. "
-#~ "Otherwise, the new version will take effect the next time the daemon is "
-#~ "restarted."
+#~ "Are you sure you want to close all programs and shutdown the computer?"
 #~ msgstr ""
-#~ "Si es detÃ© Â«xdmÂ» ara, terminaran totes les sessions X que estÃ  "
-#~ "gestionant.  Altrament, podeu deixar corrent Â«xdmÂ», i la nova versiÃ³ "
-#~ "surtirÃ  efecte a la segÃ¼ent volta que el dimoni es reinicie."
+#~ "Esteu segur que voleu tancar tots els programes i aturar l'ordinador?"
+
+#~ msgid "Shutdown"
+#~ msgstr "Atura"
+
+#~ msgid "Hibernate"
+#~ msgstr "Hiberna"
+
+#~ msgid "Restart..."
+#~ msgstr "Reinicia..."
+
+#~ msgid "Shutdown..."
+#~ msgstr "Atura..."
+
+#~ msgid "Suspend"
+#~ msgstr "Atura temporalment"
+
+#~ msgid "Large Font"
+#~ msgstr "Mida de lletra gran"
diff -pruN 1.26.0-8/debian/po/ca@valencia.po 1.30.0-0ubuntu8/debian/po/ca@valencia.po
--- 1.26.0-8/debian/po/ca@valencia.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/ca@valencia.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,84 @@
+# Catalan (Valencian) translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2011-10-06 04:49+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Catalan (Valencian) <ca@valencia@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
+
+#~ msgid "Cancel"
+#~ msgstr "CancelÂ·la"
+
+#~ msgid "Hibernate"
+#~ msgstr "Hiberna"
+
+#~ msgid "Large Font"
+#~ msgstr "Mida de lletra gran"
+
+#~ msgid "Restart..."
+#~ msgstr "Reinicia..."
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
+#~ msgstr ""
+#~ "Esteu segur que voleu tancar tots els programes i reiniciar l'ordinador?"
+
+#~ msgid "Restart"
+#~ msgstr "Reinicia"
+
+#~ msgid ""
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+#~ msgstr ""
+#~ "Esteu segur que voleu tancar tots els programes i aturar l'ordinador?"
+
+#~ msgid "Shutdown"
+#~ msgstr "Atura"
+
+#~ msgid "Shutdown..."
+#~ msgstr "Atura..."
+
+#~ msgid "Suspend"
+#~ msgstr "Atura temporalment"
diff -pruN 1.26.0-8/debian/po/ce.po 1.30.0-0ubuntu8/debian/po/ce.po
--- 1.26.0-8/debian/po/ce.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/ce.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,51 @@
+# Chechen translation for lightdm
+# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2014.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2014-08-11 10:28+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Chechen <ce@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
diff -pruN 1.26.0-8/debian/po/ckb.po 1.30.0-0ubuntu8/debian/po/ckb.po
--- 1.26.0-8/debian/po/ckb.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/ckb.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,51 @@
+# Kurdish (Sorani) translation for lightdm
+# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2013.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2013-04-14 06:40+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Kurdish (Sorani) <ckb@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
diff -pruN 1.26.0-8/debian/po/co.po 1.30.0-0ubuntu8/debian/po/co.po
--- 1.26.0-8/debian/po/co.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/co.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,51 @@
+# Corsican translation for lightdm
+# Copyright (c) 2016 Rosetta Contributors and Canonical Ltd 2016
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2016.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2016-05-24 10:53+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Corsican <co@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
diff -pruN 1.26.0-8/debian/po/cs.po 1.30.0-0ubuntu8/debian/po/cs.po
--- 1.26.0-8/debian/po/cs.po	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/cs.po	2019-08-14 02:18:58.000000000 +0000
@@ -1,97 +1,91 @@
-# debconf templates for xdm package
-# Czech translation
-#
-# $Id: cs.po 1042 2006-01-09 07:55:08Z ender $
-#
-# Copyrights:
-# Branden Robinson, 2000-2004
-# Miroslav Kure <kurem@debian.cz>, 2004-2007
-#
-# This file is distributed under the same license as the xorg-x11 package.
-# Please see debian/copyright.
-#
-#    Translators, if you are not familiar with the PO format, gettext
-#    documentation is worth reading, especially sections dedicated to
-#    this format, e.g. by running:
-#         info -n '(gettext)PO Files'
-#         info -n '(gettext)Header Entry'
-#
-#    Some information specific to po-debconf are available at
-#            /usr/share/doc/po-debconf/README-trans
-#         or http://www.debian.org/intl/l10n/po-debconf/README-trans
-#
-#    Developers do not need to manually edit POT or PO files.
+# Czech translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: xdm\n"
-"Report-Msgid-Bugs-To: lightdm@packages.debian.org\n"
-"POT-Creation-Date: 2012-03-27 21:31+0200\n"
-"PO-Revision-Date: 2007-03-24 10:42+0100\n"
-"Last-Translator: Miroslav Kure <kurem@debian.cz>\n"
-"Language-Team: Czech <debian-l10n-czech@lists.debian.org>\n"
-"Language: cs\n"
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2013-12-23 11:13+0000\n"
+"Last-Translator: TadeÃ¡Å¡ PaÅ™Ã­k <tadeas.parik@gmail.com>\n"
+"Language-Team: Czech <cs@li.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid "Default display manager:"
-msgstr "VÃ½chozÃ­ sprÃ¡vce obrazovky:"
+msgstr "VÃ½chozÃ­ zobrazovacÃ­ manaÅ¾er:"
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "A display manager is a program that provides graphical login capabilities "
 "for the X Window System."
 msgstr ""
-"SprÃ¡vce obrazovky je program, kterÃ½ nabÃ­zÃ­ grafickÃ© pÅ™ihlÃ¡Å¡enÃ­ do systÃ©mu X "
-"Window."
+"ZobrazovacÃ­ manaÅ¾er je program, kterÃ½ zajiÅ¡Å¥uje grafickÃ© pÅ™ihlaÅ¡ovacÃ­ "
+"moÅ¾nosti pro systÃ©m X Window."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Only one display manager can manage a given X server, but multiple display "
 "manager packages are installed. Please select which display manager should "
 "run by default."
 msgstr ""
-"Je nainstalovÃ¡no nÄ›kolik sprÃ¡vcÅ¯ obrazovky, ale jen jeden mÅ¯Å¾e obsluhovat "
-"danÃ½ X server. Vyberte, kterÃ½ sprÃ¡vce se mÃ¡ spouÅ¡tÄ›t jako vÃ½chozÃ­."
+"Pouze jeden zobrazovacÃ­ manaÅ¾er mÅ¯Å¾e spravovat danÃ½ X server, je ovÅ¡em "
+"nainstalovÃ¡no vÃ­ce zobrazovacÃ­ch manaÅ¾erÅ¯. Zvolte prosÃ­m vÃ½chozÃ­ zobrazovacÃ­ "
+"manaÅ¾er."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Multiple display managers can run simultaneously if they are configured to "
 "manage different servers; to achieve this, configure the display managers "
 "accordingly, edit each of their init scripts in /etc/init.d, and disable the "
 "check for a default display manager."
 msgstr ""
-"VÃ­ce sprÃ¡vcÅ¯ obrazovky mÅ¯Å¾e bÄ›Å¾et zÃ¡roveÅˆ pouze pokud spravujÃ­ rÅ¯znÃ© "
-"servery. Pro dosaÅ¾enÃ­ takovÃ©ho nastavenÃ­ je musÃ­te sprÃ¡vnÄ› nakonfigurovat, "
-"upravit jejich spouÅ¡tÄ›cÃ­ skripty v /etc/init.d a zakÃ¡zat kontrolu vÃ½chozÃ­ho "
-"sprÃ¡vce obrazovky."
+"JestliÅ¾e je nastavena sprÃ¡va odliÅ¡nÃ½ch serverÅ¯, mÅ¯Å¾e bÄ›Å¾et vÃ­ce "
+"zobrazovacÃ­ch manaÅ¾erÅ¯ souÄasnÄ›. NastavenÃ­ tohoto chovÃ¡nÃ­ je moÅ¾nÃ© docÃ­lit "
+"Ãºpravou init skriptÅ¯ v /etc/init.d a vypnutÃ­m kontroly vÃ½chozÃ­ho "
+"zobrazovacÃ­ho manaÅ¾eru."
+
+#~ msgid "Large Font"
+#~ msgstr "VelkÃ© pÃ­smo"
 
-#~ msgid "Stop the xdm daemon?"
-#~ msgstr "Zastavit dÃ©mona xdm?"
+#~ msgid "Cancel"
+#~ msgstr "Storno"
 
-#~ msgid ""
-#~ "The X display manager (xdm) daemon is typically stopped on package "
-#~ "upgrade and removal, but it appears to be managing at least one running X "
-#~ "session."
-#~ msgstr ""
-#~ "DÃ©mon xdm (X display manager) je obvykle pÅ™i aktualizaci nebo odstranÄ›nÃ­ "
-#~ "balÃ­ku zastaven, ale zdÃ¡ se, Å¾e spravuje minimÃ¡lnÄ› jedno X sezenÃ­."
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
+#~ msgstr "Opravdu chcete ukonÄit vÅ¡echny programy a restartovat poÄÃ­taÄ?"
+
+#~ msgid "Restart"
+#~ msgstr "Restartovat"
 
 #~ msgid ""
-#~ "If xdm is stopped now, any X sessions it manages will be terminated. "
-#~ "Otherwise, the new version will take effect the next time the daemon is "
-#~ "restarted."
-#~ msgstr ""
-#~ "Pokud by byl xdm zastaven nynÃ­, vÅ¡echna jÃ­m spravovanÃ¡ X sezenÃ­ by se "
-#~ "ukonÄila. V opaÄnÃ©m pÅ™Ã­padÄ› zÅ¯stane xdm bÄ›Å¾et a novÃ¡ verze se spustÃ­ s "
-#~ "pÅ™Ã­Å¡tÃ­m restartem dÃ©mona."
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+#~ msgstr "Opravdu chcete ukonÄit vÅ¡echny programy a vypnout poÄÃ­taÄ?"
+
+#~ msgid "Shutdown"
+#~ msgstr "Vypnout"
+
+#~ msgid "Hibernate"
+#~ msgstr "Hibernovat"
+
+#~ msgid "Restart..."
+#~ msgstr "Restartovat..."
+
+#~ msgid "Shutdown..."
+#~ msgstr "Vypnout..."
+
+#~ msgid "Suspend"
+#~ msgstr "Uspat"
diff -pruN 1.26.0-8/debian/po/cy.po 1.30.0-0ubuntu8/debian/po/cy.po
--- 1.26.0-8/debian/po/cy.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/cy.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,51 @@
+# Welsh translation for lightdm
+# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2014.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2014-04-19 17:48+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Welsh <cy@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
diff -pruN 1.26.0-8/debian/po/da.po 1.30.0-0ubuntu8/debian/po/da.po
--- 1.26.0-8/debian/po/da.po	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/da.po	2019-08-14 02:18:58.000000000 +0000
@@ -1,65 +1,93 @@
-# Danish translation lightdm.
-# Copyright (C) 2011 lightdm & nedenstÃ¥ende oversÃ¦ttere.
+# Danish translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
 # This file is distributed under the same license as the lightdm package.
-# Branden Robinson, 2000-2004.
-# Dennis Haney, 2002.
-# Morten Brix Pedersen <morten@wtf.dk>, 2003.
-# Claus Hindsgaul <claus_h@image.dk>, 2004, 2005.
-# Joe Hansen <joedalton2@yahoo.dk>, 2011.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
 #
 msgid ""
 msgstr ""
 "Project-Id-Version: lightdm\n"
-"Report-Msgid-Bugs-To: lightdm@packages.debian.org\n"
-"POT-Creation-Date: 2012-03-27 21:31+0200\n"
-"PO-Revision-Date: 2011-12-04 17:06+0200\n"
-"Last-Translator: Joe Hansen <joedalton2@yahoo.dk>\n"
-"Language-Team: Danish <debian-l10n-danish@lists.debian.org>\n"
-"Language: da\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2017-03-07 03:55+0000\n"
+"Last-Translator: scootergrisen <scootergrisen@gmail.com>\n"
+"Language-Team: Danish <da@li.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms:  nplurals=2; plural=(n != 1);\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid "Default display manager:"
-msgstr "StandardhÃ¥ndtering for logind:"
+msgstr "Standard-display manager:"
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "A display manager is a program that provides graphical login capabilities "
 "for the X Window System."
 msgstr ""
-"En logindhÃ¥ndtering er et program der giver et grafisk logind til X-"
-"vinduessystemet."
+"En display manager er et program som giver mulighed for et grafisk login til "
+"X Window System."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Only one display manager can manage a given X server, but multiple display "
 "manager packages are installed. Please select which display manager should "
 "run by default."
 msgstr ""
-"Der kan kun kÃ¸re en logindhÃ¥ndtering for hver X-server, men der er "
-"installeret flere logindhÃ¥ndteringer. VÃ¦lg venligst hvilken logindhÃ¥ndtering "
-"der skal benyttes som standard."
+"Kun Ã©n display manager kan hÃ¥ndtere en given X-server, men der er "
+"installeret flere display manager-pakker. VÃ¦lg venligst hvilken display "
+"manager som skal kÃ¸res som standard."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Multiple display managers can run simultaneously if they are configured to "
 "manage different servers; to achieve this, configure the display managers "
 "accordingly, edit each of their init scripts in /etc/init.d, and disable the "
 "check for a default display manager."
 msgstr ""
-"Flere logindhÃ¥ndteringer kan kÃ¸re samtidig, hvis de er sat op til at "
-"hÃ¥ndtere forskellige servere. For at fÃ¥ dette til at fungere, skal "
-"logindhÃ¥ndteringerne sÃ¦ttes op til det. Det gÃ¸r du ved at fjerne kontrollen "
-"for en standardhÃ¥ndtering for logind i deres initialiseringsskripter i /etc/"
-"init.d."
+"Flere display managere kan kÃ¸re pÃ¥ samme tid hvis de er konfigureret til at "
+"hÃ¥ndtere forskellige servere. For at opnÃ¥ dette skal du konfigurere display "
+"managerne i overensstemmelse hermed, redigere hver af deres skripter i "
+"/etc/init.d og deaktivere tjek af standard-display manager."
+
+#~ msgid "Large Font"
+#~ msgstr "Stor skrifttype"
+
+#~ msgid "Cancel"
+#~ msgstr "Annuller"
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
+#~ msgstr ""
+#~ "Er du sikker pÃ¥, at du vil afslutte alle programmer og genstarte computeren?"
+
+#~ msgid "Restart"
+#~ msgstr "Genstart"
+
+#~ msgid ""
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+#~ msgstr ""
+#~ "Er du sikker pÃ¥, at du vil afslutte alle programmer og lukke computeren?"
+
+#~ msgid "Shutdown"
+#~ msgstr "Luk ned"
+
+#~ msgid "Shutdown..."
+#~ msgstr "Luk ned..."
+
+#~ msgid "Hibernate"
+#~ msgstr "Dvale"
+
+#~ msgid "Restart..."
+#~ msgstr "Genstart..."
+
+#~ msgid "Suspend"
+#~ msgstr "Hvile"
diff -pruN 1.26.0-8/debian/po/de.po 1.30.0-0ubuntu8/debian/po/de.po
--- 1.26.0-8/debian/po/de.po	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/de.po	2019-08-14 02:18:58.000000000 +0000
@@ -1,112 +1,96 @@
-# translation of xdm to german
-# debconf templates for xorg-x11 package
-# German translation
+# German translation for lightdm
+# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2010.
 #
-# $Id: de.po 1042 2006-01-09 07:55:08Z ender $
-#
-# Copyrights:
-#
-# This file is distributed under the same license as the xorg-x11 package.
-# Please see debian/copyright.
-#
-#    Translators, if you are not familiar with the PO format, gettext
-#    documentation is worth reading, especially sections dedicated to
-#    this format, e.g. by running:
-#         info -n '(gettext)PO Files'
-#         info -n '(gettext)Header Entry'
-#
-#    Some information specific to po-debconf are available at
-#            /usr/share/doc/po-debconf/README-trans
-#         or http://www.debian.org/intl/l10n/po-debconf/README-trans
-#
-#    Developers do not need to manually edit POT or PO files.
-#
-# Branden Robinson, 2000-2004.
-# Martin Schuster, 2001.
-# Sebastian Rittau, 2001.
-# Erich Schubert, 2001.
-# Knut Suebert, 2001.
-# Sebastian Feltel, 2001.
-# Philipp Matthias Hahn, 2001.
-# Veit Waltemath, 2002.
-# Andreas Metzler, 2002.
-# Alwin Meschede <ameschede@gmx.de>, 2004, 2005, 2007.
 msgid ""
 msgstr ""
-"Project-Id-Version: de\n"
-"Report-Msgid-Bugs-To: lightdm@packages.debian.org\n"
-"POT-Creation-Date: 2012-03-27 21:31+0200\n"
-"PO-Revision-Date: 2007-03-24 12:33+0100\n"
-"Last-Translator: Alwin Meschede <ameschede@gmx.de>\n"
-"Language-Team: german <debian-l10n-german@lists.debian.org>\n"
-"Language: \n"
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2015-08-20 12:56+0000\n"
+"Last-Translator: Tobias Bannert <tobannert@gmail.com>\n"
+"Language-Team: German <de@li.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.11.4\n"
-"Plural-Forms:  nplurals=2; plural=(n != 1);\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid "Default display manager:"
-msgstr "StandardmÃ¤ÃŸiger Display-Manager:"
+msgstr "Vorgegebene Anzeigenverwaltung:"
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "A display manager is a program that provides graphical login capabilities "
 "for the X Window System."
 msgstr ""
-"Ein Display-Manager ist ein Programm, welches grafische AnmeldemÃ¶glichkeiten "
-"fÃ¼r das X Window System zur VerfÃ¼gung stellt."
+"Eine Anzeigenverwaltung ist ein Programm, das eine grafische Anmeldefunktion "
+"fÃ¼r das X-Window-System bereitstellt."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Only one display manager can manage a given X server, but multiple display "
 "manager packages are installed. Please select which display manager should "
 "run by default."
 msgstr ""
-"Nur ein einziger Display-Manager kann einen gegebenen X-Server verwalten, es "
-"sind allerdings mehrere Display-Manager installiert. Bitte wÃ¤hlen Sie den "
-"Display-Manager aus, der standardmÃ¤ÃŸig ausgefÃ¼hrt werden soll."
+"Nur eine Anzeigenverwaltung kann einen bestimmten X-Server zu verwalten, "
+"aber mehrere Anzeigenverwaltungspakete sind installiert. Bitte die "
+"Anzeigenverwaltung auswÃ¤hlen, die standardmÃ¤ÃŸig ausgefÃ¼hrt werden soll."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Multiple display managers can run simultaneously if they are configured to "
 "manage different servers; to achieve this, configure the display managers "
 "accordingly, edit each of their init scripts in /etc/init.d, and disable the "
 "check for a default display manager."
 msgstr ""
-"Es kÃ¶nnen mehrere Display-Manager gleichzeitig laufen, wenn diese so "
-"konfiguriert sind, dass sie verschiedene X-Server verwalten. Um dies zu "
-"erreichen, konfigurieren Sie die Display-Manager entsprechend, editieren Sie "
-"jedes ihrer Init-Skripte in /etc/init.d, und schalten Sie die ÃœberprÃ¼fung "
-"auf einen Standard-Display-Manager ab."
+"Mehre Anzeigenverwaltungen kÃ¶nnen gleichzeitig ausgefÃ¼hrt werden, wenn sie "
+"so konfiguriert werden, um verschiedene Server zu verwalten; um das zu "
+"erreichen, bitte die Anzeigenverwaltungen entsprechend konfigurieren, bitte "
+"jedes ihrer Init-Skripte in /etc/init.d bearbeiten und das ÃœberprÃ¼fen nach "
+"einer Standardanzeigenverwaltungs deaktivieren."
 
-#~ msgid "Stop the xdm daemon?"
-#~ msgstr "Soll der xdm-Dienst gestoppt werden?"
+#~ msgid "Large Font"
+#~ msgstr "GroÃŸe Schrift"
 
-#~ msgid ""
-#~ "The X display manager (xdm) daemon is typically stopped on package "
-#~ "upgrade and removal, but it appears to be managing at least one running X "
-#~ "session."
+#~ msgid "Cancel"
+#~ msgstr "Abbrechen"
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
 #~ msgstr ""
-#~ "Der X Display Manager (xdm) Dienst wird meist beim Aktualisieren oder "
-#~ "Entfernen eines Pakets gestoppt, aber er scheint mindestens eine laufende "
-#~ "X-Sitzung zu verwalten."
+#~ "Sind Sie sicher, dass Sie alle Programme schlieÃŸen und den Rechner neu "
+#~ "starten mÃ¶chten?"
+
+#~ msgid "Restart"
+#~ msgstr "Neustart"
 
 #~ msgid ""
-#~ "If xdm is stopped now, any X sessions it manages will be terminated. "
-#~ "Otherwise, the new version will take effect the next time the daemon is "
-#~ "restarted."
+#~ "Are you sure you want to close all programs and shutdown the computer?"
 #~ msgstr ""
-#~ "Wenn xdm jetzt gestoppt wird, werden alle Sitzungen beendet, die er "
-#~ "gerade verwaltet. Alternativ kÃ¶nnen Sie xdm weiter laufen lassen, die "
-#~ "neue Version wird dann aktiv, sobald der Dienst das nÃ¤chste Mal gestartet "
-#~ "wird."
+#~ "Sind Sie sicher, dass Sie alle Programme schlieÃŸen und den Rechner "
+#~ "herunterfahren mÃ¶chten?"
+
+#~ msgid "Shutdown..."
+#~ msgstr "Herunterfahren â€¦"
+
+#~ msgid "Suspend"
+#~ msgstr "Energiesparmodus"
+
+#~ msgid "Hibernate"
+#~ msgstr "Ruhezustand"
+
+#~ msgid "Shutdown"
+#~ msgstr "Herunterfahren"
+
+#~ msgid "Restart..."
+#~ msgstr "Neu starten â€¦"
diff -pruN 1.26.0-8/debian/po/el.po 1.30.0-0ubuntu8/debian/po/el.po
--- 1.26.0-8/debian/po/el.po	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/el.po	2019-08-14 02:18:58.000000000 +0000
@@ -1,114 +1,86 @@
-# debconf templates for xorg-x11 package
-# Greek translation
-#
-# $Id: el.po 1042 2006-01-09 07:55:08Z ender $
-#
-# Copyrights:
-# Branden Robinson, 2000-2004
-# Konstantinos Margaritis <markos@debian.org>, 2004
-#
-# This file is distributed under the same license as the xorg-x11 package.
-# Please see debian/copyright.
-#
-#    Translators, if you are not familiar with the PO format, gettext
-#    documentation is worth reading, especially sections dedicated to
-#    this format, e.g. by running:
-#         info -n '(gettext)PO Files'
-#         info -n '(gettext)Header Entry'
-#
-#    Some information specific to po-debconf are available at
-#            /usr/share/doc/po-debconf/README-trans
-#         or http://www.debian.org/intl/l10n/po-debconf/README-trans
-#
-#    Developers do not need to manually edit POT or PO files.
+# Greek translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: el\n"
-"Report-Msgid-Bugs-To: lightdm@packages.debian.org\n"
-"POT-Creation-Date: 2012-03-27 21:31+0200\n"
-"PO-Revision-Date: 2005-12-19 18:40+0200\n"
-"Last-Translator: Konstantinos Margaritis <markos@debian.org>\n"
-"Language-Team: Greek <debian-l10n-greek@lists.debian.org>\n"
-"Language: el\n"
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2012-02-19 23:40+0000\n"
+"Last-Translator: Simos Xenitellis îƒ¿ <Unknown>\n"
+"Language-Team: Greek <el@li.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
-#, fuzzy
+#: ../lightdm.templates:2001
 msgid "Default display manager:"
-msgstr "Î•Ï€Î¹Î»Î­Î¾Ï„Îµ Ï„Î¿Î½ ÎµÏ€Î¹Î¸Ï…Î¼Î·Ï„ÏŒ Î´Î¹Î±Ï‡ÎµÎ¹ÏÎ¹ÏƒÏ„Î® Î¿Î¸ÏŒÎ½Î·Ï‚."
+msgstr ""
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "A display manager is a program that provides graphical login capabilities "
 "for the X Window System."
 msgstr ""
-"ÎŸ Î´Î¹Î±Ï‡ÎµÎ¹ÏÎ¹ÏƒÏ„Î®Ï‚ Î¿Î¸ÏŒÎ½Î·Ï‚ ÎµÎ¯Î½Î±Î¹ Î­Î½Î± Ï€ÏÏŒÎ³ÏÎ±Î¼Î¼Î± Ï€Î¿Ï… Ï€ÏÎ¿ÏƒÏ†Î­ÏÎµÎ¹ Ï„Î· Î´Ï…Î½Î±Ï„ÏŒÏ„Î·Ï„Î± "
-"ÏƒÏÎ½Î´ÎµÏƒÎ·Ï‚ ÏƒÏ„Î¿ ÏƒÏÏƒÏ„Î·Î¼Î± Ï€Î±ÏÎ±Î¸ÏÏÏ‰Î½ X Î¼Î­ÏƒÏ‰ Î³ÏÎ±Ï†Î¹ÎºÎ¿Ï Ï€ÎµÏÎ¹Î²Î¬Î»Î»Î¿Î½Ï„Î¿Ï‚."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
-#, fuzzy
+#: ../lightdm.templates:2001
 msgid ""
 "Only one display manager can manage a given X server, but multiple display "
 "manager packages are installed. Please select which display manager should "
 "run by default."
 msgstr ""
-"ÎœÏŒÎ½Î¿ Î­Î½Î±Ï‚ Î´Î¹Î±Ï‡ÎµÎ¹ÏÎ¹ÏƒÏ„Î®Ï‚ Î¿Î¸ÏŒÎ½Î·Ï‚ Î¼Ï€Î¿ÏÎµÎ¯ Î½Î± Ï‡ÎµÎ¹ÏÎ¯Î¶ÎµÏ„Î±Î¹ Î­Î½Î± ÏƒÏ…Î³ÎºÎµÎºÏÎ¹Î¼Î­Î½Î¿ "
-"ÎµÎ¾Ï…Ï€Î·ÏÎµÏ„Î·Ï„Î® X, Î±Î»Î»Î¬ Ï€ÎµÏÎ¹ÏƒÏƒÏŒÏ„ÎµÏÎ¿Î¹ Î±Ï€ÏŒ Î­Î½Î±Ï‚ ÎµÎ¯Î½Î±Î¹ ÎµÎ³ÎºÎ±Ï„ÎµÏƒÏ„Î·Î¼Î­Î½Î¿Î¹. Î Î±ÏÎ±ÎºÎ±Î»ÏŽ "
-"ÎµÏ€Î¹Î»Î­Î¾Ï„Îµ Ï„Î¿Î½ Î´Î¹Î±Ï‡ÎµÎ¹ÏÎ¹ÏƒÏ„Î® Î¿Î¸ÏŒÎ½Î·Ï‚ Ï€Î¿Ï… Î¸Î± ÎµÎºÏ„ÎµÎ»ÎµÎ¯Ï„Î±Î¹ Ï‰Ï‚ Ï€ÏÎ¿ÎºÎ±Î¸Î¿ÏÎ¹ÏƒÎ¼Î­Î½Î¿Ï‚."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
-#, fuzzy
+#: ../lightdm.templates:2001
 msgid ""
 "Multiple display managers can run simultaneously if they are configured to "
 "manage different servers; to achieve this, configure the display managers "
 "accordingly, edit each of their init scripts in /etc/init.d, and disable the "
 "check for a default display manager."
 msgstr ""
-"Î Î¿Î»Î»Î±Ï€Î»Î¿Î¯ Î´Î¹Î±Ï‡ÎµÎ¹ÏÎ¹ÏƒÏ„Î­Ï‚ Î¿Î¸ÏŒÎ½Î·Ï‚ Î¼Ï€Î¿ÏÎ¿ÏÎ½ Î½Î± Ï„ÏÎ­Ï‡Î¿Ï…Î½ Ï„Î±Ï…Ï„ÏŒÏ‡ÏÎ¿Î½Î±, Î±Î½ Î­Ï‡Î¿Ï…Î½ "
-"ÏÏ…Î¸Î¼Î¹ÏƒÏ„ÎµÎ¯ Î½Î± Ï‡ÎµÎ¹ÏÎ¯Î¶Î¿Î½Ï„Î±Î¹ Î´Î¹Î±Ï†Î¿ÏÎµÏ„Î¹ÎºÎ¿ÏÏ‚ Î´Î¹Î±ÎºÎ¿Î¼Î¹ÏƒÏ„Î­Ï‚ X. Î“Î¹Î± Î½Î± ÎµÏ€Î¹Ï„ÎµÏ…Ï‡Î¸ÎµÎ¯ "
-"Î±Ï…Ï„ÏŒ, ÏÏ…Î¸Î¼Î¯ÏƒÏ„Îµ Ï„Î¿Ï…Ï‚ Î´Î¹Î±Ï‡ÎµÎ¹ÏÎ¹ÏƒÏ„Î­Ï‚ Î¿Î¸ÏŒÎ½Î·Ï‚ ÎºÎ±Ï„Î¬Î»Î»Î·Î»Î±, ÎµÏ€ÎµÎ¾ÎµÏÎ³Î±ÏƒÏ„ÎµÎ¯Ï„Îµ Ï„Î± Î±ÏÏ‡ÎµÎ¯Î± "
-"ÎµÎºÎºÎ¯Î½Î·ÏƒÎ®Ï‚ Ï„Î¿Ï…Ï‚ ÏƒÏ„Î¿Î½ ÎºÎ±Ï„Î¬Î»Î¿Î³Î¿ /etc/init.d, ÎºÎ±Î¹ Î±Ï€ÎµÎ½ÎµÏÎ³Î¿Ï€Î¿Î¹Î®ÏƒÏ„Îµ Ï„Î¿Î½ Î­Î»ÎµÎ³Ï‡Î¿ Î³Î¹Î± "
-"Ï€ÏÎ¿ÎºÎ±Î¸Î¿ÏÎ¹ÏƒÎ¼Î­Î½Î¿ Î´Î¹Î±Ï‡ÎµÎ¹ÏÎ¹ÏƒÏ„Î® Î¿Î¸ÏŒÎ½Î·Ï‚."
-
-#, fuzzy
-#~ msgid "Stop the xdm daemon?"
-#~ msgstr "Î˜Î­Î»ÎµÏ„Îµ Î½Î± ÏƒÏ„Î±Î¼Î±Ï„Î®ÏƒÎµÏ„Îµ Î½Î± Ï‡ÏÎ·ÏƒÎ¹Î¼Î¿Ï€Î¿Î¹ÎµÎ¯Ï„Îµ Ï„Î¿Î½ Î´Î±Î¯Î¼Î¿Î½Î± xdm;"
 
-#, fuzzy
+#~ msgid "Cancel"
+#~ msgstr "Î‘ÎºÏÏÏ‰ÏƒÎ·"
+
+#~ msgid "Hibernate"
+#~ msgstr "Î‘Î´ÏÎ±Î½Î¿Ï€Î¿Î¯Î·ÏƒÎ·"
+
+#~ msgid "Restart"
+#~ msgstr "Î•Ï€Î±Î½ÎµÎºÎºÎ¯Î½Î·ÏƒÎ·"
+
 #~ msgid ""
-#~ "The X display manager (xdm) daemon is typically stopped on package "
-#~ "upgrade and removal, but it appears to be managing at least one running X "
-#~ "session."
+#~ "Are you sure you want to close all programs and shutdown the computer?"
 #~ msgstr ""
-#~ "ÎšÎ±Î½Î¿Î½Î¹ÎºÎ¬, Î· Î»ÎµÎ¹Ï„Î¿Ï…ÏÎ³Î¯Î± Ï„Î¿Ï… Î´Î±Î¯Î¼Î¿Î½Î± Ï„Î¿Ï… Î´Î¹Î±Ï‡ÎµÎ¹ÏÎ¹ÏƒÏ„Î® Î¿Î¸ÏŒÎ½Î·Ï‚ Ï„Ï‰Î½ X (xdm) "
-#~ "Î´Î¹Î±ÎºÏŒÏ€Ï„ÎµÏ„Î±Î¹ Î¼Îµ ÎºÎ¬Î¸Îµ Î±Î½Î±Î²Î¬Î¸Î¼Î¹ÏƒÎ· ÎºÎ±Î¹ Î´Î¹Î±Î³ÏÎ±Ï†Î® Ï„Î¿Ï… Ï€Î±ÎºÎ­Ï„Î¿Ï…, Î±Î»Î»Î¬ ÏƒÏ„Î· "
-#~ "ÏƒÏ…Î³ÎºÎµÎºÏÎ¹Î¼Î­Î½Î· Ï€ÎµÏÎ¯Ï€Ï„Ï‰ÏƒÎ· Ï†Î±Î¯Î½ÎµÏ„Î±Î¹ ÏŒÏ„Î¹ Î´Î¹Î±Ï‡ÎµÎ¹ÏÎ¯Î¶ÎµÏ„Î±Î¹ Î®Î´Î· Ï„Î¿Ï…Î»Î¬Ï‡Î¹ÏƒÏ„Î¿Î½ Î¼Î¹Î± "
-#~ "ÏƒÏ…Î½ÎµÎ´ÏÎ¯Î± Ï„Ï‰Î½ X (X session). Î‘Î½ Î¿ xdm Ï„ÎµÏÎ¼Î±Ï„Î¹ÏƒÏ„ÎµÎ¯ Ï„ÏŽÏÎ±, Î¿Ï€Î¿Î¹ÎµÏƒÎ´Î®Ï€Î¿Ï„Îµ "
-#~ "ÏƒÏ…Î½ÎµÎ´ÏÎ¯ÎµÏ‚ Ï„Ï‰Î½ X Ï‡ÎµÎ¹ÏÎ¯Î¶ÎµÏ„Î±Î¹ Î¸Î± Ï„ÎµÏÎ¼Î±Ï„Î¹ÏƒÏ„Î¿ÏÎ½ ÎµÏ€Î¯ÏƒÎ·Ï‚. Î”Î¹Î±Ï†Î¿ÏÎµÏ„Î¹ÎºÎ¬, Î¼Ï€Î¿ÏÎµÎ¯Ï„Îµ "
-#~ "Î½Î± Î±Ï†Î®ÏƒÎµÏ„Îµ Ï„Î¿Î½ xdm Î½Î± ÏƒÏ…Î½ÎµÏ‡Î¯ÏƒÎµÎ¹ Ï„Î· Î»ÎµÎ¹Ï„Î¿Ï…ÏÎ³Î¯Î± Ï„Î¿Ï… ÎºÎ±Î¹ Î· Î½Î­Î± Î­ÎºÎ´Î¿ÏƒÎ· Î½Î± "
-#~ "Ï‡ÏÎ·ÏƒÎ¹Î¼Î¿Ï€Î¿Î¹Î·Î¸ÎµÎ¯ Ï„Î·Î½ ÎµÏ€ÏŒÎ¼ÎµÎ½Î· Ï†Î¿ÏÎ¬ Ï€Î¿Ï… Î¸Î± Ï„ÏÎ­Î¾ÎµÎ¹ Î¿ Î´Î±Î¯Î¼Î¿Î½Î±Ï‚."
+#~ "Î•Î¯ÏƒÏ„Îµ Î²Î­Î²Î±Î¹Î¿Î¹ ÏŒÏ„Î¹ Î¸Î­Î»ÎµÏ„Îµ Î½Î± ÎºÎ»ÎµÎ¯ÏƒÎµÏ„Îµ ÏŒÎ»Î± Ï„Î± Ï€ÏÎ¿Î³ÏÎ¬Î¼Î¼Î±Ï„Î± ÎºÎ±Î¹ Î½Î± "
+#~ "Î±Ï€ÎµÎ½ÎµÏÎ³Î¿Ï€Î¿Î¹Î®ÏƒÎµÏ„Îµ Ï„Î¿Î½ Ï…Ï€Î¿Î»Î¿Î³Î¹ÏƒÏ„Î®;"
 
-#, fuzzy
-#~ msgid ""
-#~ "If xdm is stopped now, any X sessions it manages will be terminated. "
-#~ "Otherwise, the new version will take effect the next time the daemon is "
-#~ "restarted."
+#~ msgid "Shutdown"
+#~ msgstr "Î¤ÎµÏÎ¼Î±Ï„Î¹ÏƒÎ¼ÏŒÏ‚"
+
+#~ msgid "Suspend"
+#~ msgstr "Î‘Î½Î±Î¼Î¿Î½Î®"
+
+#~ msgid "Large Font"
+#~ msgstr "ÎœÎµÎ³Î¬Î»Î· Î³ÏÎ±Î¼Î¼Î±Ï„Î¿ÏƒÎµÎ¹ÏÎ¬"
+
+#~ msgid "Restart..."
+#~ msgstr "Î•Ï€Î±Î½ÎµÎºÎºÎ¯Î½Î·ÏƒÎ·..."
+
+#~ msgid "Shutdown..."
+#~ msgstr "Î¤ÎµÏÎ¼Î±Ï„Î¹ÏƒÎ¼ÏŒÏ‚..."
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
 #~ msgstr ""
-#~ "ÎšÎ±Î½Î¿Î½Î¹ÎºÎ¬, Î· Î»ÎµÎ¹Ï„Î¿Ï…ÏÎ³Î¯Î± Ï„Î¿Ï… Î´Î±Î¯Î¼Î¿Î½Î± Ï„Î¿Ï… Î´Î¹Î±Ï‡ÎµÎ¹ÏÎ¹ÏƒÏ„Î® Î¿Î¸ÏŒÎ½Î·Ï‚ Ï„Ï‰Î½ X (xdm) "
-#~ "Î´Î¹Î±ÎºÏŒÏ€Ï„ÎµÏ„Î±Î¹ Î¼Îµ ÎºÎ¬Î¸Îµ Î±Î½Î±Î²Î¬Î¸Î¼Î¹ÏƒÎ· ÎºÎ±Î¹ Î´Î¹Î±Î³ÏÎ±Ï†Î® Ï„Î¿Ï… Ï€Î±ÎºÎ­Ï„Î¿Ï…, Î±Î»Î»Î¬ ÏƒÏ„Î· "
-#~ "ÏƒÏ…Î³ÎºÎµÎºÏÎ¹Î¼Î­Î½Î· Ï€ÎµÏÎ¯Ï€Ï„Ï‰ÏƒÎ· Ï†Î±Î¯Î½ÎµÏ„Î±Î¹ ÏŒÏ„Î¹ Î´Î¹Î±Ï‡ÎµÎ¹ÏÎ¯Î¶ÎµÏ„Î±Î¹ Î®Î´Î· Ï„Î¿Ï…Î»Î¬Ï‡Î¹ÏƒÏ„Î¿Î½ Î¼Î¹Î± "
-#~ "ÏƒÏ…Î½ÎµÎ´ÏÎ¯Î± Ï„Ï‰Î½ X (X session). Î‘Î½ Î¿ xdm Ï„ÎµÏÎ¼Î±Ï„Î¹ÏƒÏ„ÎµÎ¯ Ï„ÏŽÏÎ±, Î¿Ï€Î¿Î¹ÎµÏƒÎ´Î®Ï€Î¿Ï„Îµ "
-#~ "ÏƒÏ…Î½ÎµÎ´ÏÎ¯ÎµÏ‚ Ï„Ï‰Î½ X Ï‡ÎµÎ¹ÏÎ¯Î¶ÎµÏ„Î±Î¹ Î¸Î± Ï„ÎµÏÎ¼Î±Ï„Î¹ÏƒÏ„Î¿ÏÎ½ ÎµÏ€Î¯ÏƒÎ·Ï‚. Î”Î¹Î±Ï†Î¿ÏÎµÏ„Î¹ÎºÎ¬, Î¼Ï€Î¿ÏÎµÎ¯Ï„Îµ "
-#~ "Î½Î± Î±Ï†Î®ÏƒÎµÏ„Îµ Ï„Î¿Î½ xdm Î½Î± ÏƒÏ…Î½ÎµÏ‡Î¯ÏƒÎµÎ¹ Ï„Î· Î»ÎµÎ¹Ï„Î¿Ï…ÏÎ³Î¯Î± Ï„Î¿Ï… ÎºÎ±Î¹ Î· Î½Î­Î± Î­ÎºÎ´Î¿ÏƒÎ· Î½Î± "
-#~ "Ï‡ÏÎ·ÏƒÎ¹Î¼Î¿Ï€Î¿Î¹Î·Î¸ÎµÎ¯ Ï„Î·Î½ ÎµÏ€ÏŒÎ¼ÎµÎ½Î· Ï†Î¿ÏÎ¬ Ï€Î¿Ï… Î¸Î± Ï„ÏÎ­Î¾ÎµÎ¹ Î¿ Î´Î±Î¯Î¼Î¿Î½Î±Ï‚."
+#~ "Î•Î¯ÏƒÏ„Îµ Î²Î­Î²Î±Î¹Î¿Î¹ ÏŒÏ„Î¹ Î¸Î­Î»ÎµÏ„Îµ Î½Î± ÎºÎ»ÎµÎ¯ÏƒÎµÏ„Îµ ÏŒÎ»Î± Ï„Î± Ï€ÏÎ¿Î³ÏÎ¬Î¼Î¼Î±Ï„Î± ÎºÎ±Î¹ Î½Î± "
+#~ "ÎµÏ€Î±Î½ÎµÎºÎºÎ¹Î½Î®ÏƒÎµÏ„Îµ Ï„Î¿Î½ Ï…Ï€Î¿Î»Î¿Î³Î¹ÏƒÏ„Î®;"
diff -pruN 1.26.0-8/debian/po/en_AU.po 1.30.0-0ubuntu8/debian/po/en_AU.po
--- 1.26.0-8/debian/po/en_AU.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/en_AU.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,84 @@
+# English (Australia) translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2011-12-19 13:08+0000\n"
+"Last-Translator: Joel Pickett <jlkpcktt@gmail.com>\n"
+"Language-Team: English (Australia) <en_AU@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
+
+#~ msgid "Large Font"
+#~ msgstr "Large Font"
+
+#~ msgid "Cancel"
+#~ msgstr "Cancel"
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
+#~ msgstr ""
+#~ "Are you sure you want to close all programs and restart the computer?"
+
+#~ msgid "Hibernate"
+#~ msgstr "Hibernate"
+
+#~ msgid "Restart"
+#~ msgstr "Restart"
+
+#~ msgid ""
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+#~ msgstr ""
+#~ "Are you sure you want to close all programs and shut down the computer?"
+
+#~ msgid "Shutdown"
+#~ msgstr "Shutdown"
+
+#~ msgid "Restart..."
+#~ msgstr "Restart..."
+
+#~ msgid "Shutdown..."
+#~ msgstr "Shutdown..."
+
+#~ msgid "Suspend"
+#~ msgstr "Suspend"
diff -pruN 1.26.0-8/debian/po/en_CA.po 1.30.0-0ubuntu8/debian/po/en_CA.po
--- 1.26.0-8/debian/po/en_CA.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/en_CA.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,51 @@
+# English (Canada) translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2011-09-27 22:00+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: English (Canada) <en_CA@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
diff -pruN 1.26.0-8/debian/po/en_GB.po 1.30.0-0ubuntu8/debian/po/en_GB.po
--- 1.26.0-8/debian/po/en_GB.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/en_GB.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,93 @@
+# English (United Kingdom) translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2015-04-13 10:29+0000\n"
+"Last-Translator: Andi Chandler <Unknown>\n"
+"Language-Team: English (United Kingdom) <en_GB@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr "Default display manager:"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+
+#~ msgid "Large Font"
+#~ msgstr "Large Font"
+
+#~ msgid "Cancel"
+#~ msgstr "Cancel"
+
+#~ msgid "Hibernate"
+#~ msgstr "Hibernate"
+
+#~ msgid "Restart..."
+#~ msgstr "Restart..."
+
+#~ msgid "Shutdown..."
+#~ msgstr "Shutdown..."
+
+#~ msgid "Suspend"
+#~ msgstr "Suspend"
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
+#~ msgstr ""
+#~ "Are you sure you want to close all programs and restart the computer?"
+
+#~ msgid "Restart"
+#~ msgstr "Restart"
+
+#~ msgid ""
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+#~ msgstr ""
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+
+#~ msgid "Shutdown"
+#~ msgstr "Shutdown"
diff -pruN 1.26.0-8/debian/po/eo.po 1.30.0-0ubuntu8/debian/po/eo.po
--- 1.26.0-8/debian/po/eo.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/eo.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,82 @@
+# Esperanto translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2015-08-10 08:25+0000\n"
+"Last-Translator: Adolfo Jayme <Unknown>\n"
+"Language-Team: Esperanto <eo@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr "DefaÅ­lta ekranadministrilo:"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
+
+#~ msgid "Cancel"
+#~ msgstr "Nuligi"
+
+#~ msgid "Shutdown"
+#~ msgstr "ElÅalti"
+
+#~ msgid "Suspend"
+#~ msgstr "PaÅ­zigi"
+
+#~ msgid "Shutdown..."
+#~ msgstr "ElÅalti..."
+
+#~ msgid "Hibernate"
+#~ msgstr "Pasivumigi"
+
+#~ msgid "Large Font"
+#~ msgstr "Granda tiparo"
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
+#~ msgstr "Äˆu vi certe volas fermi Ä‰iujn programojn kaj restarti la komputilon?"
+
+#~ msgid ""
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+#~ msgstr "Äˆu vi certe volas fermi Ä‰iujn programojn kaj elÅalti la komputilon?"
+
+#~ msgid "Restart"
+#~ msgstr "Restartigi"
+
+#~ msgid "Restart..."
+#~ msgstr "Restartigi..."
diff -pruN 1.26.0-8/debian/po/es.po 1.30.0-0ubuntu8/debian/po/es.po
--- 1.26.0-8/debian/po/es.po	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/es.po	2019-08-14 02:18:58.000000000 +0000
@@ -1,117 +1,93 @@
-# slim po-debconf translation to Spanish
-# Copyright (C) 2001, 2002, 2003, 2005, 2008 Software in the Public Interest
-# This file is distributed under the same license as the slim package.
-#
-# Changes:
-#   - Initial translation
-#       Carlos Valdivia YagÃ¼e, 2001
-#
-#   - Updates
-#       Javier Fernandez-Sanguino PeÃ±a, 2003
-#       David MartÃ­nez Moreno <ender@debian.org>, 2001, 2002, 2005
-#       Francisco Javier Cuadrado <fcocuadrado@gmail.com>, 2008
-#
-# Traductores, si no conoce el formato PO, merece la pena leer la
-# documentaciÃ³n de gettext, especialmente las secciones dedicadas a este
-# formato, por ejemplo ejecutando:
-#       info -n '(gettext)PO Files'
-#       info -n '(gettext)Header Entry'
-#
-# Equipo de traducciÃ³n al espaÃ±ol, por favor, lean antes de traducir
-# los siguientes documentos:
-#
-#   - El proyecto de traducciÃ³n de Debian al espaÃ±ol
-#     http://www.debian.org/intl/spanish/
-#     especialmente las notas de traducciÃ³n en
-#     http://www.debian.org/intl/spanish/notas
-#
-#   - La guÃ­a de traducciÃ³n de po's de debconf:
-#     /usr/share/doc/po-debconf/README-trans
-#     o http://www.debian.org/intl/l10n/po-debconf/README-trans
+# Spanish translation for lightdm
+# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2010.
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: slim 1.3.0-2\n"
-"Report-Msgid-Bugs-To: lightdm@packages.debian.org\n"
-"POT-Creation-Date: 2012-03-27 21:31+0200\n"
-"PO-Revision-Date: 2008-12-24 13:47+0100\n"
-"Last-Translator: Francisco Javier Cuadrado <fcocuadrado@gmail.com>\n"
-"Language-Team: ES <debian-l10n-spanish@lists.debian.org>\n"
-"Language: \n"
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2014-08-05 08:52+0000\n"
+"Last-Translator: Adolfo Jayme <Unknown>\n"
+"Language-Team: Spanish <es@li.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid "Default display manager:"
 msgstr "Gestor de sesiones predeterminado:"
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "A display manager is a program that provides graphical login capabilities "
 "for the X Window System."
 msgstr ""
-"Un gestor de sesiones es un programa que le ofrece la posibilidad de entrar "
-"grÃ¡ficamente a su sistema mediante el sistema X Window."
+"Un gestor de sesiones es un programa que provee al Sistema de ventanas X de "
+"una forma grÃ¡fica de iniciar una sesiÃ³n."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Only one display manager can manage a given X server, but multiple display "
 "manager packages are installed. Please select which display manager should "
 "run by default."
 msgstr ""
-"SÃ³lo puede utilizarse un gestor de sesiones para gestionar un servidor de X "
-"concreto, pero existen varios paquetes de gestores de sesiones instalados. "
-"Por favor, seleccione que gestor de sesiones deberÃ­a ejecutarse de manera "
+"Solo un gestor de sesiones puede gestionar un servidor X dado, pero hay "
+"varios gestores instalados. Elija cuÃ¡l quiere ejecutar de manera "
 "predeterminada."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Multiple display managers can run simultaneously if they are configured to "
 "manage different servers; to achieve this, configure the display managers "
 "accordingly, edit each of their init scripts in /etc/init.d, and disable the "
 "check for a default display manager."
 msgstr ""
-"Varios gestores de sesiones se pueden ejecutar simultÃ¡neamente si estÃ¡n "
-"configurados para manejar diferentes servidores. Para conseguir esto, "
-"configure los gestores de sesiones apropiadamente, edite cada script de init "
-"en Â«/etc/init.dÂ» relacionado con ellos y desactive la comprobaciÃ³n en busca "
-"del gestor de sesiones predeterminado."
-
-#, fuzzy
-#~ msgid "Stop the xdm daemon?"
-#~ msgstr "Â¿Desea parar el demonio de xdm?"
+"Se pueden ejecutar varios gestores de sesiones si se configuran para manejar "
+"servidores distintos. Para hacer esto, edite las secuencias de Ã³rdenes de "
+"init de cada gestor (en /etc/init.d) y desactive la comprobaciÃ³n de gestor "
+"de sesiones predeterminado."
 
-#, fuzzy
-#~ msgid ""
-#~ "The X display manager (xdm) daemon is typically stopped on package "
-#~ "upgrade and removal, but it appears to be managing at least one running X "
-#~ "session."
+#~ msgid "Cancel"
+#~ msgstr "Cancelar"
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
 #~ msgstr ""
-#~ "El demonio del gestor de sesiones (xdm) generalmente se para al "
-#~ "actualizar los paquetes y al eliminarlos, pero parece que gestiona por lo "
-#~ "menos una sesiÃ³n X en estos momentos. Si detiene xdm ahora, cualquier "
-#~ "sesiÃ³n X que gestione serÃ¡ destruida. Puede dejar que xdm siga "
-#~ "ejecutÃ¡ndose, y la siguiente versiÃ³n tendrÃ¡ efecto cuando el demonio se "
-#~ "rearranque."
+#~ "Â¿EstÃ¡ seguro de que quiere cerrar todos los programas y reiniciar el equipo?"
+
+#~ msgid "Restart"
+#~ msgstr "Reiniciar"
 
-#, fuzzy
 #~ msgid ""
-#~ "If xdm is stopped now, any X sessions it manages will be terminated. "
-#~ "Otherwise, the new version will take effect the next time the daemon is "
-#~ "restarted."
+#~ "Are you sure you want to close all programs and shutdown the computer?"
 #~ msgstr ""
-#~ "El demonio del gestor de sesiones (xdm) generalmente se para al "
-#~ "actualizar los paquetes y al eliminarlos, pero parece que gestiona por lo "
-#~ "menos una sesiÃ³n X en estos momentos. Si detiene xdm ahora, cualquier "
-#~ "sesiÃ³n X que gestione serÃ¡ destruida. Puede dejar que xdm siga "
-#~ "ejecutÃ¡ndose, y la siguiente versiÃ³n tendrÃ¡ efecto cuando el demonio se "
-#~ "rearranque."
+#~ "Â¿EstÃ¡ seguro de que quiere cerrar todos los programas y apagar el equipo?"
+
+#~ msgid "Shutdown"
+#~ msgstr "Apagar"
+
+#~ msgid "Hibernate"
+#~ msgstr "Hibernar"
+
+#~ msgid "Restart..."
+#~ msgstr "Reiniciar..."
+
+#~ msgid "Shutdown..."
+#~ msgstr "Apagar..."
+
+#~ msgid "Suspend"
+#~ msgstr "Suspender"
+
+#~ msgid "Large Font"
+#~ msgstr "TipografÃ­a grande"
diff -pruN 1.26.0-8/debian/po/et.po 1.30.0-0ubuntu8/debian/po/et.po
--- 1.26.0-8/debian/po/et.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/et.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,84 @@
+# Estonian translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2011-08-28 16:42+0000\n"
+"Last-Translator: Jalakas <Unknown>\n"
+"Language-Team: Estonian <et@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
+#~ msgstr ""
+#~ "Kas oled kindel, et tahad kÃµik programmid sulgeda ja arvuti taaskÃ¤ivitada?"
+
+#~ msgid "Restart"
+#~ msgstr "TaaskÃ¤ivita"
+
+#~ msgid "Shutdown"
+#~ msgstr "LÃ¼lita vÃ¤lja"
+
+#~ msgid "Large Font"
+#~ msgstr "Suur kiri"
+
+#~ msgid ""
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+#~ msgstr ""
+#~ "Kas oled kindel, et tahad kÃµik programmid sulgeda ja arvuti vÃ¤lja lÃ¼litada?"
+
+#~ msgid "Suspend"
+#~ msgstr "Uinak"
+
+#~ msgid "Cancel"
+#~ msgstr "Loobu"
+
+#~ msgid "Hibernate"
+#~ msgstr "Talveuni"
+
+#~ msgid "Restart..."
+#~ msgstr "TaaskÃ¤ivita..."
+
+#~ msgid "Shutdown..."
+#~ msgstr "LÃ¼lita vÃ¤lja..."
diff -pruN 1.26.0-8/debian/po/eu.po 1.30.0-0ubuntu8/debian/po/eu.po
--- 1.26.0-8/debian/po/eu.po	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/eu.po	2019-08-14 02:18:58.000000000 +0000
@@ -1,102 +1,83 @@
-# translation of xdm-eu.po to librezale
-# debconf templates for xorg-x11 package
-# Euskara translation
+# Basque translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
 #
-# $Id: eu.po 490 2005-08-03 09:59:07Z ender $
-#
-# Copyright:
-#
-# This file is distributed under the same license as the xorg-x11 package.
-# Please see debian/copyright.
-#
-#    Translators, if you are not familiar with the PO format, gettext
-#    documentation is worth reading, especially sections dedicated to
-#    this format, e.g. by running:
-#         info -n '(gettext)PO Files'
-#         info -n '(gettext)Header Entry'
-#
-#    Some information specific to po-debconf is available at
-#            /usr/share/doc/po-debconf/README-trans
-#         or http://www.debian.org/intl/l10n/po-debconf/README-trans
-#
-#    Developers do not need to manually edit POT or PO files.
-#
-# Branden Robinson, 2000-2004.
-# Piarres Beobide <pi@beobide.net>, 2005, 2007.
 msgid ""
 msgstr ""
-"Project-Id-Version: xdm-eu\n"
-"Report-Msgid-Bugs-To: lightdm@packages.debian.org\n"
-"POT-Creation-Date: 2012-03-27 21:31+0200\n"
-"PO-Revision-Date: 2007-03-22 16:06+0100\n"
-"Last-Translator: Piarres Beobide <pi@beobide.net>\n"
-"Language-Team: librezale <librezale@librezale.org>\n"
-"Language: \n"
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2011-05-17 18:49+0000\n"
+"Last-Translator: Asier Sarasua Garmendia <Unknown>\n"
+"Language-Team: Basque <eu@li.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.11.4\n"
-"Plural-Forms: nplurals=2; plural=(n != 1)\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid "Default display manager:"
-msgstr "Lehenetsiriko pantaila kudeatzailea:"
+msgstr ""
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "A display manager is a program that provides graphical login capabilities "
 "for the X Window System."
 msgstr ""
-"Pantaila kudeatzailea X Leiho Sistemarako saio hasiera grafiko aukera ematen "
-"duen programa bat da."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Only one display manager can manage a given X server, but multiple display "
 "manager packages are installed. Please select which display manager should "
 "run by default."
 msgstr ""
-"Jakindako X zerbitzari bat pantaila kudeatzaile batek bakarrik kudea dezake, "
-"baina pantaila kudeatzaile anitz daude instalaturik.  Hautatu zein pantaila "
-"kudeatzaile erabili nahi duzun lehenetsi bezala."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Multiple display managers can run simultaneously if they are configured to "
 "manage different servers; to achieve this, configure the display managers "
 "accordingly, edit each of their init scripts in /etc/init.d, and disable the "
 "check for a default display manager."
 msgstr ""
-"Pantaila kudeatzaile anitz batera martxan egon daitezke, zerbitzari "
-"ezberdinak kudeatzeko konfiguraturik badaude; hau lortzeko, pantaila "
-"kudeatzaileak behar bezala konfiguratu eta /etc/init.d-eko init script-ean "
-"lehenetsiriko pantaila kudeatzailea arakatzeko aukera ezgaitu."
 
-#~ msgid "Stop the xdm daemon?"
-#~ msgstr "Xdm deabrua gelditu?"
+#~ msgid "Large Font"
+#~ msgstr "Letra-tipo handia"
 
-#~ msgid ""
-#~ "The X display manager (xdm) daemon is typically stopped on package "
-#~ "upgrade and removal, but it appears to be managing at least one running X "
-#~ "session."
+#~ msgid "Cancel"
+#~ msgstr "Utzi"
+
+#~ msgid "Restart"
+#~ msgstr "Berrabiarazi"
+
+#~ msgid "Shutdown"
+#~ msgstr "Itzali"
+
+#~ msgid "Hibernate"
+#~ msgstr "Hibernatu"
+
+#~ msgid "Restart..."
+#~ msgstr "Berrabiarazi..."
+
+#~ msgid "Shutdown..."
+#~ msgstr "Itzali..."
+
+#~ msgid "Suspend"
+#~ msgstr "Eseki"
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
 #~ msgstr ""
-#~ "X Pantaila Kudeatzaile (xdm) deabrua arruntean gelditu egiten da pakete "
-#~ "eguneraketa edo ezabaketa egiterakoan, baina dirudienez martxan dagoen X "
-#~ "saio bat beintzat kudeatzen ari da."
+#~ "Ziur programa guztiak itxi eta ordenagailua berrabiarazi nahi duzula?"
 
 #~ msgid ""
-#~ "If xdm is stopped now, any X sessions it manages will be terminated. "
-#~ "Otherwise, the new version will take effect the next time the daemon is "
-#~ "restarted."
-#~ msgstr ""
-#~ "xdm orain gelditu ezkero, kudeatzen ari den edozein X saio itxi egingo "
-#~ "da. Bestela xdm martxan utz dezakezu eta bersio berria deabrua abiarazten "
-#~ "den hurrengo aldian erabiliko da."
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+#~ msgstr "Ziur programa guztiak itxi eta ordenagailua itzali nahi duzula?"
diff -pruN 1.26.0-8/debian/po/fa.po 1.30.0-0ubuntu8/debian/po/fa.po
--- 1.26.0-8/debian/po/fa.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/fa.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,51 @@
+# Persian translation for lightdm
+# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2012.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2012-03-24 17:32+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Persian <fa@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
diff -pruN 1.26.0-8/debian/po/fi.po 1.30.0-0ubuntu8/debian/po/fi.po
--- 1.26.0-8/debian/po/fi.po	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/fi.po	2019-08-14 02:18:58.000000000 +0000
@@ -1,57 +1,92 @@
+# Finnish translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+#
 msgid ""
 msgstr ""
-"Project-Id-Version: slim\n"
-"Report-Msgid-Bugs-To: lightdm@packages.debian.org\n"
-"POT-Creation-Date: 2012-03-27 21:31+0200\n"
-"PO-Revision-Date: 2007-12-22 13:23+0200\n"
-"Last-Translator: Esko ArajÃ¤rvi <edu@iki.fi>\n"
-"Language-Team: Finnish <debian-l10n-finnish@lists.debian.org>\n"
-"Language: fi\n"
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2014-03-20 01:40+0000\n"
+"Last-Translator: Pasi Lallinaho <pasi@shimmerproject.org>\n"
+"Language-Team: Finnish <fi@li.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"X-Poedit-Language: Finnish\n"
-"X-Poedit-Country: Finland\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid "Default display manager:"
-msgstr "OletusnÃ¤ytÃ¶nhallintaohjelma:"
+msgstr "OletusnÃ¤ytÃ¶nhallintasovellus:"
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "A display manager is a program that provides graphical login capabilities "
 "for the X Window System."
 msgstr ""
-"NÃ¤ytÃ¶nhallintaohjelma tarjoaa graafisen kirjautumisruudun X-"
-"ikkunointijÃ¤rjestelmÃ¤Ã¤n."
+"NÃ¤ytÃ¶nhallintasovellus tarjoaa graafisen kirjautumismahdollisuuden X-"
+"ikkunointijÃ¤rjestelmÃ¤lle."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Only one display manager can manage a given X server, but multiple display "
 "manager packages are installed. Please select which display manager should "
 "run by default."
 msgstr ""
-"Vain yksi nÃ¤ytÃ¶nhallintaohjelma voi hallinnoida kutakin X-palvelinta, mutta "
-"useampia nÃ¤ytÃ¶nhallintaohjelmapaketteja on asennettuna. Valitse minkÃ¤ "
-"nÃ¤ytÃ¶nhallintaohjelman tulisi olla oletuksena kÃ¤ytÃ¶ssÃ¤."
+"Vain yksi nÃ¤ytÃ¶nhallintasovellus voi olla kÃ¤ynnissÃ¤ X-palvelinta kohden, "
+"mutta useampia nÃ¤ytÃ¶nhallintasovelluksia voi olla asennettuna. Valitse mikÃ¤ "
+"nÃ¤ytÃ¶nhallintasovellus tulisi kÃ¤ynnistÃ¤Ã¤ oletuksena."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Multiple display managers can run simultaneously if they are configured to "
 "manage different servers; to achieve this, configure the display managers "
 "accordingly, edit each of their init scripts in /etc/init.d, and disable the "
 "check for a default display manager."
 msgstr ""
-"Useampia nÃ¤ytÃ¶nhallintaohjelmia voidaan ajaa yhtÃ¤aikaisesti, jos ne on "
-"asetettu hallinnoimaan eri palvelimia. Saadaksesi tÃ¤mÃ¤n aikaan muokkaa "
-"nÃ¤ytÃ¶nhallintaohjelmien asetuksia tarpeen mukaan, muokkaa kunkin "
-"kÃ¤ynnistyskomentosarjaa hakemistossa /etc/init.d ja passivoi "
-"oletusnÃ¤ytÃ¶nhallintaohjelman tarkistus."
+"Useammat nÃ¤ytÃ¶nhallintasovellukset voivat olla kÃ¤ynnistÃ¤ samaan aikaan "
+"mikÃ¤li ne ovat asetettu hallitsemaan eri palvelimia; saavuttaaksesi tÃ¤mÃ¤n, "
+"muokkaa nÃ¤ytÃ¶nhallintasovellusten kÃ¤ynnistysasetuksia hakemistossa "
+"/etc/init.d sekÃ¤ poista valinta oletusnÃ¤ytÃ¶nhallintasovelluksen kohdalta."
+
+#~ msgid "Shutdown"
+#~ msgstr "Sammuta"
+
+#~ msgid "Large Font"
+#~ msgstr "Suuri kirjasin"
+
+#~ msgid "Cancel"
+#~ msgstr "Peru"
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
+#~ msgstr ""
+#~ "Haluatko todella sulkea kaikki ohjelmat ja kÃ¤ynnistÃ¤Ã¤ tietokoneen uudelleen?"
+
+#~ msgid "Restart"
+#~ msgstr "KÃ¤ynnistÃ¤ uudelleen"
+
+#~ msgid ""
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+#~ msgstr "Haluatko todella sulkea kaikki ohjelmat ja sammuttaa tietokoneen?"
+
+#~ msgid "Restart..."
+#~ msgstr "KÃ¤ynnistÃ¤ uudelleen..."
+
+#~ msgid "Shutdown..."
+#~ msgstr "Sammuta..."
+
+#~ msgid "Hibernate"
+#~ msgstr "Lepotila"
+
+#~ msgid "Suspend"
+#~ msgstr "Valmiustila"
diff -pruN 1.26.0-8/debian/po/fo.po 1.30.0-0ubuntu8/debian/po/fo.po
--- 1.26.0-8/debian/po/fo.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/fo.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,51 @@
+# Faroese translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2011-12-18 23:45+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Faroese <fo@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
diff -pruN 1.26.0-8/debian/po/fr.po 1.30.0-0ubuntu8/debian/po/fr.po
--- 1.26.0-8/debian/po/fr.po	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/fr.po	2019-08-14 02:18:58.000000000 +0000
@@ -1,107 +1,92 @@
-# translation of fr.po to French
-# debconf templates for xorg-x11 package
-# French translation
+# French translation for lightdm
+# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2010.
 #
-# $Id: fr.po 1053 2006-01-10 19:20:06Z ender $
-#
-# Copyrights:
-#
-# This file is distributed under the same license as the xorg-x11 package.
-# Please see debian/copyright.
-#
-#    Translators, if you are not familiar with the PO format, gettext
-#    documentation is worth reading, especially sections dedicated to
-#    this format, e.g. by running:
-#         info -n '(gettext)PO Files'
-#         info -n '(gettext)Header Entry'
-#
-#    Some information specific to po-debconf are available at
-#            /usr/share/doc/po-debconf/README-trans
-#         or http://www.debian.org/intl/l10n/po-debconf/README-trans
-#
-#    Developers do not need to manually edit POT or PO files.
-#
-# Branden Robinson, 2000-2004.
-# Thomas Morin, 2001.
-# Patrice Karatchentzeff, 2001.
-# JÃ©rÃ´me Schell, 2001.
-# Jean-Christophe Dubacq, 2002.
-# Christian Perrier <bubulle@debian.org>, 2003, 2004, 2006, 2007.
 msgid ""
 msgstr ""
-"Project-Id-Version: fr\n"
-"Report-Msgid-Bugs-To: lightdm@packages.debian.org\n"
-"POT-Creation-Date: 2012-03-27 21:31+0200\n"
-"PO-Revision-Date: 2007-03-22 20:06+0100\n"
-"Last-Translator: Christian Perrier <bubulle@debian.org>\n"
-"Language-Team: French <debian-l10n-french@lists.debian.org>\n"
-"Language: fr\n"
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2015-06-14 15:29+0000\n"
+"Last-Translator: Anne017 <anneonyme017@openmailbox.org>\n"
+"Language-Team: French <fr@li.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.11.4\n"
-"Plural-Forms: Plural-Forms: nplurals=2; plural=n>1;\n"
-"\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid "Default display manager:"
-msgstr "Gestionnaire graphique de session par dÃ©fautÂ :"
+msgstr "Gestionnaire d'affichage par dÃ©fautÂ :"
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "A display manager is a program that provides graphical login capabilities "
 "for the X Window System."
 msgstr ""
-"Un gestionnaire graphique de session est un programme qui permet de se "
-"connecter depuis le systÃ¨me X Window."
+"Un gestionnaire d'affichage est un programme qui propose un environnement "
+"graphique de(s) session(s) des utilisateurs pour le systÃ¨me X Window."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Only one display manager can manage a given X server, but multiple display "
 "manager packages are installed. Please select which display manager should "
 "run by default."
 msgstr ""
-"Un seul gestionnaire graphique de session peut s'occuper d'un serveur X "
-"donnÃ©, bien que plusieurs gestionnaires puissent Ãªtre installÃ©s "
-"simultanÃ©ment. Veuillez choisir celui qui sera utilisÃ© par dÃ©faut."
+"Seul un gestionnaire d'affichage peut gÃ©rer un serveur X donnÃ©. Cependant, "
+"plusieurs paquets de gestion de l'affichage sont installÃ©s. Veuillez "
+"sÃ©lectionner quel gestionnaire d'affichage devrait Ãªtre utilisÃ© par dÃ©faut."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Multiple display managers can run simultaneously if they are configured to "
 "manage different servers; to achieve this, configure the display managers "
 "accordingly, edit each of their init scripts in /etc/init.d, and disable the "
 "check for a default display manager."
 msgstr ""
-"Plusieurs gestionnaires graphiques peuvent Ãªtre lancÃ©s en mÃªme temps, s'ils "
-"gÃ¨rent des serveurs X diffÃ©rentsÂ ; pour cela, configurez correctement chacun "
-"des gestionnaires graphiques, modifiez leurs scripts de lancement dans /etc/"
-"init.d, et dÃ©sactivez le test de gestionnaire graphique par dÃ©faut."
+"Plusieurs gestionnaires d'affichage peuvent fonctionner simultanÃ©ment s'ils "
+"sont configurÃ©s pour gÃ©rer diffÃ©rents serveurs. Pour ce faire, configurez "
+"les gestionnaires d'affichage en consÃ©quence, modifiez chacun de leurs "
+"scripts d'initialisation dans /etc/init.d , et dÃ©sactivez la vÃ©rification "
+"d'un gestionnaire d'affichage par dÃ©faut."
+
+#~ msgid "Large Font"
+#~ msgstr "Grande police"
 
-#~ msgid "Stop the xdm daemon?"
-#~ msgstr "Faut-il arrÃªter le dÃ©mon xdmÂ ?"
+#~ msgid "Cancel"
+#~ msgstr "Annuler"
 
-#~ msgid ""
-#~ "The X display manager (xdm) daemon is typically stopped on package "
-#~ "upgrade and removal, but it appears to be managing at least one running X "
-#~ "session."
-#~ msgstr ""
-#~ "Le gestionnaire de sessions X (xdm) est gÃ©nÃ©ralement arrÃªtÃ© lors de la "
-#~ "mise Ã  jour ou de la suppression du paquet. Cependant, il semble qu'il "
-#~ "gÃ¨re actuellement encore au moins une session X."
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
+#~ msgstr "Voulez-vous fermer tous les programmes et redÃ©marrer l'ordinateurÂ ?"
+
+#~ msgid "Restart"
+#~ msgstr "RedÃ©marrer"
 
 #~ msgid ""
-#~ "If xdm is stopped now, any X sessions it manages will be terminated. "
-#~ "Otherwise, the new version will take effect the next time the daemon is "
-#~ "restarted."
-#~ msgstr ""
-#~ "Si xdm est arrÃªtÃ© maintenant, toutes les sessions X qu'il gÃ¨re seront "
-#~ "terminÃ©es. L'autre possibilitÃ© est de laisser fonctionner xdm, la "
-#~ "nouvelle version ne devenant active qu'au prochain redÃ©marrage du dÃ©mon."
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+#~ msgstr "Voulez-vous fermer tous les programmes et Ã©teindre l'ordinateurÂ ?"
+
+#~ msgid "Hibernate"
+#~ msgstr "Hiberner"
+
+#~ msgid "Restart..."
+#~ msgstr "RedÃ©marrer..."
+
+#~ msgid "Shutdown..."
+#~ msgstr "Ã‰teindre..."
+
+#~ msgid "Suspend"
+#~ msgstr "Mettre en veille"
+
+#~ msgid "Shutdown"
+#~ msgstr "Ã‰teindre"
diff -pruN 1.26.0-8/debian/po/fr_CA.po 1.30.0-0ubuntu8/debian/po/fr_CA.po
--- 1.26.0-8/debian/po/fr_CA.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/fr_CA.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,51 @@
+# French (Canada) translation for lightdm
+# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2014.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2014-01-31 22:19+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: French (Canada) <fr_CA@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
diff -pruN 1.26.0-8/debian/po/fy.po 1.30.0-0ubuntu8/debian/po/fy.po
--- 1.26.0-8/debian/po/fy.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/fy.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,51 @@
+# Frisian translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2011-08-21 11:54+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Frisian <fy@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
diff -pruN 1.26.0-8/debian/po/ga.po 1.30.0-0ubuntu8/debian/po/ga.po
--- 1.26.0-8/debian/po/ga.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/ga.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,51 @@
+# Irish translation for lightdm
+# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2014.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2014-12-15 20:50+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Irish <ga@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
diff -pruN 1.26.0-8/debian/po/gd.po 1.30.0-0ubuntu8/debian/po/gd.po
--- 1.26.0-8/debian/po/gd.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/gd.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,80 @@
+# Gaelic; Scottish translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2011-08-16 22:47+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Gaelic; Scottish <gd@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
+
+#~ msgid "Cancel"
+#~ msgstr "Sguir dheth"
+
+#~ msgid "Hibernate"
+#~ msgstr "DÃ¨an cadal-geamhraidh"
+
+#~ msgid "Restart..."
+#~ msgstr "Ath-thÃ²isich..."
+
+#~ msgid "Suspend"
+#~ msgstr "Cuir dÃ il ann"
+
+#~ msgid "Shutdown"
+#~ msgstr "DÃ¹in sÃ¬os"
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
+#~ msgstr ""
+#~ "A bheil thu cinnteach gu bheil thu airson gach prÃ²gram a dhÃ¹nadh is an "
+#~ "coimpiutair ath-thÃ²iseachadh?"
+
+#~ msgid "Restart"
+#~ msgstr "Ath-thÃ²isich"
+
+#~ msgid ""
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+#~ msgstr ""
+#~ "A bheil thu cinnteach gu bheil thu airson gach prÃ²gram a dhÃ¹nadh agus an "
+#~ "coimpiutair a chur dheth?"
diff -pruN 1.26.0-8/debian/po/gl.po 1.30.0-0ubuntu8/debian/po/gl.po
--- 1.26.0-8/debian/po/gl.po	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/gl.po	2019-08-14 02:18:58.000000000 +0000
@@ -1,86 +1,84 @@
-# debconf templates for xorg-x11 package
-# Galician translation
-#
-# $Id: gl.po 1080 2006-01-14 02:15:39Z ender $
-#
-# Copyrights:
-# Branden Robinson, 2000-2004
-# Jacobo Tarrio, 2001, 2006
-#
-# This file is distributed under the same license as the xorg-x11 package.
-# Please see debian/copyright.
+# Galician translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: xorg-x11\n"
-"Report-Msgid-Bugs-To: lightdm@packages.debian.org\n"
-"POT-Creation-Date: 2012-03-27 21:31+0200\n"
-"PO-Revision-Date: 2007-03-22 13:03+0100\n"
-"Last-Translator: Jacobo Tarrio <jtarrio@debian.org>\n"
-"Language-Team: Galician <trasno@ceu.fi.udc.es>\n"
-"Language: gl\n"
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2011-08-24 14:34+0000\n"
+"Last-Translator: Fran DiÃ©guez <Unknown>\n"
+"Language-Team: Galician <gl@li.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid "Default display manager:"
-msgstr "Xestor de pantalla por defecto:"
+msgstr ""
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "A display manager is a program that provides graphical login capabilities "
 "for the X Window System."
 msgstr ""
-"Un xestor de pantalla Ã© un programa que fornece capacidades de inicio de "
-"sesiÃ³n grÃ¡fico para o sistema X Window."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Only one display manager can manage a given X server, but multiple display "
 "manager packages are installed. Please select which display manager should "
 "run by default."
 msgstr ""
-"SÃ³ un xestor de pantalla pode xestionar un servidor X determinado, pero hai "
-"varios paquetes de xestores de pantalla instalados. Escolla o xestor de "
-"pantalla que se deberÃ­a executar por defecto."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Multiple display managers can run simultaneously if they are configured to "
 "manage different servers; to achieve this, configure the display managers "
 "accordingly, edit each of their init scripts in /etc/init.d, and disable the "
 "check for a default display manager."
 msgstr ""
-"PÃ³dense executar varios xestores de pantalla ao mesmo tempo se se configuran "
-"para xestionar servidores distintos; para facelo, configure os xestores de "
-"pantalla, edite cada un dos scripts de inicio de /etc/init.d e desactive a "
-"comprobaciÃ³n do xestor de pantalla por defecto."
 
-#~ msgid "Stop the xdm daemon?"
-#~ msgstr "Â¿Deter o servizo de xdm?"
+#~ msgid "Cancel"
+#~ msgstr "Cancelar"
 
-#~ msgid ""
-#~ "The X display manager (xdm) daemon is typically stopped on package "
-#~ "upgrade and removal, but it appears to be managing at least one running X "
-#~ "session."
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
 #~ msgstr ""
-#~ "Adoita se deter o servizo do xestor de pantalla de X (xdm) ao actualizar "
-#~ "ou eliminar o paquete, pero semella que estÃ¡ a xestionar alomenos unha "
-#~ "sesiÃ³n X en execuciÃ³n."
+#~ "Ten certeza de que desexa pechar todos os programas e reiniciar o computador?"
+
+#~ msgid "Large Font"
+#~ msgstr "Letras grandes"
+
+#~ msgid "Hibernate"
+#~ msgstr "Hibernar"
+
+#~ msgid "Restart"
+#~ msgstr "Reiniciar"
 
 #~ msgid ""
-#~ "If xdm is stopped now, any X sessions it manages will be terminated. "
-#~ "Otherwise, the new version will take effect the next time the daemon is "
-#~ "restarted."
+#~ "Are you sure you want to close all programs and shutdown the computer?"
 #~ msgstr ""
-#~ "Se se detÃ©n xdm agora, hase cortar calquera sesiÃ³n X que xestione. Se "
-#~ "non, a nova versiÃ³n ha tomar efecto a prÃ³xima vez que reinicie o servizo."
+#~ "Ten certeza de que desexa pechar todos os programas e apagar o computador?"
+
+#~ msgid "Shutdown"
+#~ msgstr "Apagar"
+
+#~ msgid "Restart..."
+#~ msgstr "Reiniciar..."
+
+#~ msgid "Shutdown..."
+#~ msgstr "Apagar..."
+
+#~ msgid "Suspend"
+#~ msgstr "Suspender"
diff -pruN 1.26.0-8/debian/po/gu.po 1.30.0-0ubuntu8/debian/po/gu.po
--- 1.26.0-8/debian/po/gu.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/gu.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,51 @@
+# Gujarati translation for lightdm
+# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2013.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2013-01-02 14:51+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Gujarati <gu@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
diff -pruN 1.26.0-8/debian/po/he.po 1.30.0-0ubuntu8/debian/po/he.po
--- 1.26.0-8/debian/po/he.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/he.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,82 @@
+# Hebrew translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2011-01-13 14:34+0000\n"
+"Last-Translator: Yaron <sh.yaron@gmail.com>\n"
+"Language-Team: Hebrew <he@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
+
+#~ msgid "Large Font"
+#~ msgstr "×’×•×¤×Ÿ ×’×“×•×œ"
+
+#~ msgid "Cancel"
+#~ msgstr "×‘×™×˜×•×œ"
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
+#~ msgstr "×”×× ××›×Ÿ ×‘×¨×¦×•× ×š ×œ×¡×’×•×¨ ××ª ×›×œ ×”×ª×›× ×™×•×ª ×•×œ×”×¤×¢×™×œ ×ž×—×“×© ××ª ×”×ž×—×©×‘?"
+
+#~ msgid "Restart"
+#~ msgstr "×”×¤×¢×œ×” ×ž×—×“×©"
+
+#~ msgid ""
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+#~ msgstr "×”×× ××›×Ÿ ×‘×¨×¦×•× ×š ×œ×¡×’×•×¨ ××ª ×›×œ ×”×ª×‘× ×™×•×ª ×•×œ×›×‘×•×ª ××ª ×”×ž×—×©×‘?"
+
+#~ msgid "Shutdown"
+#~ msgstr "×›×™×‘×•×™"
+
+#~ msgid "Hibernate"
+#~ msgstr "×ž×¦×‘ ×©×™× ×”"
+
+#~ msgid "Restart..."
+#~ msgstr "×”×¤×¢×œ×” ×ž×—×“×©..."
+
+#~ msgid "Shutdown..."
+#~ msgstr "×›×™×‘×•×™..."
+
+#~ msgid "Suspend"
+#~ msgstr "×”×©×”×™×”"
diff -pruN 1.26.0-8/debian/po/hi.po 1.30.0-0ubuntu8/debian/po/hi.po
--- 1.26.0-8/debian/po/hi.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/hi.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,75 @@
+# Hindi translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2012-03-27 14:57+0000\n"
+"Last-Translator: Abhijeet Kumar Singh <neo.1in@gmail.com>\n"
+"Language-Team: Hindi <hi@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
+
+#~ msgid "Shutdown..."
+#~ msgstr "à¤•à¤‚à¤ªà¥à¤¯à¥‚à¤Ÿà¤° à¤¬à¤‚à¤¦ à¤•à¤°à¥‡à¤‚"
+
+#~ msgid "Cancel"
+#~ msgstr "à¤°à¤¦à¥à¤¦ à¤•à¤°à¥‡à¤‚"
+
+#~ msgid "Shutdown"
+#~ msgstr "à¤¬à¤‚à¤¦ à¤•à¤°à¥‡à¤‚"
+
+#~ msgid "Hibernate"
+#~ msgstr "à¤¸à¥à¤·à¥à¤ªà¥à¤¤à¤¾à¤µà¤¸à¥à¤¥à¤¾ à¤®à¥‡ à¤¡à¤¾à¤²à¥‡à¤‚"
+
+#~ msgid "Restart..."
+#~ msgstr "à¤ªà¥à¤¨à¤ƒ à¤†à¤°à¤‚à¤­ à¤•à¤°à¥‡à¤‚..."
+
+#~ msgid "Suspend"
+#~ msgstr "à¤¨à¤¿à¤²à¤®à¥à¤¬à¤¿à¤¤ à¤•à¤°à¥‡à¤‚"
+
+#~ msgid "Large Font"
+#~ msgstr "à¤¬à¤¡à¤¼à¤¾ à¤«à¤¼à¥‰à¤¨à¥à¤Ÿ"
+
+#~ msgid "Restart"
+#~ msgstr "à¤«à¤¿à¤° à¤¸à¥‡ à¤šà¤¾à¤²à¥‚ à¤•à¤°à¥‡à¤‚"
diff -pruN 1.26.0-8/debian/po/hr.po 1.30.0-0ubuntu8/debian/po/hr.po
--- 1.26.0-8/debian/po/hr.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/hr.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,95 @@
+# Croatian translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# gogo <trebelnik2@gmail.com>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: gogo <trebelnik2@gmail.com>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2016-02-04 20:43+0000\n"
+"Last-Translator: gogo <trebelnik2@gmail.com>\n"
+"Language-Team: Croatian <hr@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr "Zadani upravitelj zaslona:"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+"Upravitelj zaslona je program koji omoguÄ‡uje grafiÄku prijavu za X sustav "
+"prozora."
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+"Samo jedan upravitelj prozora moÅ¾e upravljati zadanim X posluÅ¾iteljem, dok "
+"je instalirano viÅ¡e upravitelja prozora. Odaberite koji upravitelj zaslona "
+"Ä‡e se zadano pokretati."
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
+"ViÅ¡e upravitelja zaslona moÅ¾e se pokretati istovremeno ako su podeÅ¡eni za "
+"upravljanjem razliÄitim posluÅ¾iteljima; kako bi to postigli, podesite "
+"upravitelja zaslonom shodno tome, uredite svaku pojedinu datoteku njihove "
+"init skripte u /etc/init.d i onemoguÄ‡ite provjeru zadanog upravitelja "
+"zaslona."
+
+#~ msgid "Cancel"
+#~ msgstr "OtkaÅ¾i"
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
+#~ msgstr ""
+#~ "Jeste li sigurni da Å¾elite zatvoriti sve programe i ponovno pokrenuti "
+#~ "raÄunalo?"
+
+#~ msgid ""
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+#~ msgstr ""
+#~ "Jeste li sigurni da Å¾elite zatvoriti sve programe i iskljuÄiti raÄunalo?"
+
+#~ msgid "Shutdown..."
+#~ msgstr "IskljuÄivanje..."
+
+#~ msgid "Hibernate"
+#~ msgstr "Hibernacija"
+
+#~ msgid "Restart"
+#~ msgstr "Ponovno pokretanje"
+
+#~ msgid "Shutdown"
+#~ msgstr "IskljuÄivanje"
+
+#~ msgid "Restart..."
+#~ msgstr "Ponovno pokretanje..."
+
+#~ msgid "Suspend"
+#~ msgstr "Suspenzija"
+
+#~ msgid "Large Font"
+#~ msgstr "Velika slova"
diff -pruN 1.26.0-8/debian/po/ht.po 1.30.0-0ubuntu8/debian/po/ht.po
--- 1.26.0-8/debian/po/ht.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/ht.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,51 @@
+# Haitian; Haitian Creole translation for lightdm
+# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2014.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2014-09-13 23:01+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Haitian; Haitian Creole <ht@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
diff -pruN 1.26.0-8/debian/po/hu.po 1.30.0-0ubuntu8/debian/po/hu.po
--- 1.26.0-8/debian/po/hu.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/hu.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,85 @@
+# Hungarian translation for lightdm
+# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2010.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2011-05-12 10:25+0000\n"
+"Last-Translator: Richard SomlÃ³i <ricsipontaz@gmail.com>\n"
+"Language-Team: Hungarian <hu@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
+
+#~ msgid "Large Font"
+#~ msgstr "Nagy betÅ±mÃ©ret"
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
+#~ msgstr ""
+#~ "Biztos benne, hogy bezÃ¡rja az Ã¶sszes programot, Ã©s ÃºjraindÃ­tja a "
+#~ "szÃ¡mÃ­tÃ³gÃ©pet?"
+
+#~ msgid "Restart"
+#~ msgstr "ÃšjraindÃ­tÃ¡s"
+
+#~ msgid "Shutdown"
+#~ msgstr "LeÃ¡llÃ­tÃ¡s"
+
+#~ msgid "Hibernate"
+#~ msgstr "HibernÃ¡lÃ¡s"
+
+#~ msgid "Shutdown..."
+#~ msgstr "LeÃ¡llÃ­tÃ¡sâ€¦"
+
+#~ msgid "Suspend"
+#~ msgstr "FelfÃ¼ggesztÃ©s"
+
+#~ msgid "Restart..."
+#~ msgstr "ÃšjraindÃ­tÃ¡sâ€¦"
+
+#~ msgid "Cancel"
+#~ msgstr "MÃ©gse"
+
+#~ msgid ""
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+#~ msgstr ""
+#~ "Biztos benne, hogy bezÃ¡rja az Ã¶sszes programot, Ã©s leÃ¡llÃ­tja a szÃ¡mÃ­tÃ³gÃ©pet?"
diff -pruN 1.26.0-8/debian/po/hy.po 1.30.0-0ubuntu8/debian/po/hy.po
--- 1.26.0-8/debian/po/hy.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/hy.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,51 @@
+# Armenian translation for lightdm
+# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2014.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2014-10-27 11:23+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Armenian <hy@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
diff -pruN 1.26.0-8/debian/po/ia.po 1.30.0-0ubuntu8/debian/po/ia.po
--- 1.26.0-8/debian/po/ia.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/ia.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,73 @@
+# Interlingua translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2012-05-11 04:43+0000\n"
+"Last-Translator: Emilio Sepulveda <Unknown>\n"
+"Language-Team: Interlingua <ia@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
+
+#~ msgid "Cancel"
+#~ msgstr "Cancellar"
+
+#~ msgid "Restart"
+#~ msgstr "Re-initiar"
+
+#~ msgid "Hibernate"
+#~ msgstr "Hibernar"
+
+#~ msgid "Restart..."
+#~ msgstr "Reinitiar..."
+
+#~ msgid "Suspend"
+#~ msgstr "Suspender"
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
+#~ msgstr ""
+#~ "Secur que tu vole clauder tote le programmas e reinitiar le computator?"
+
+#~ msgid "Shutdown..."
+#~ msgstr "Clauder omne..."
diff -pruN 1.26.0-8/debian/po/id.po 1.30.0-0ubuntu8/debian/po/id.po
--- 1.26.0-8/debian/po/id.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/id.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,82 @@
+# Indonesian translation for lightdm
+# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2010.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2012-10-07 06:56+0000\n"
+"Last-Translator: Dirgita <Unknown>\n"
+"Language-Team: Indonesian <id@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
+
+#~ msgid "Cancel"
+#~ msgstr "Batal"
+
+#~ msgid "Restart"
+#~ msgstr "Nyalakan Ulang"
+
+#~ msgid "Shutdown"
+#~ msgstr "Matikan"
+
+#~ msgid "Hibernate"
+#~ msgstr "Hibernasi"
+
+#~ msgid "Shutdown..."
+#~ msgstr "Matikan..."
+
+#~ msgid "Large Font"
+#~ msgstr "Fonta Besar"
+
+#~ msgid "Suspend"
+#~ msgstr "Suspensi"
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
+#~ msgstr "Tutup semua program dan nyalakan ulang komputer?"
+
+#~ msgid ""
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+#~ msgstr "Tutup semua program dan matikan komputer?"
+
+#~ msgid "Restart..."
+#~ msgstr "Nyalakan Ulang..."
diff -pruN 1.26.0-8/debian/po/is.po 1.30.0-0ubuntu8/debian/po/is.po
--- 1.26.0-8/debian/po/is.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/is.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,51 @@
+# Icelandic translation for lightdm
+# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2012.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2012-12-26 04:32+0000\n"
+"Last-Translator: Andri Thorlacius <Unknown>\n"
+"Language-Team: Icelandic <is@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
diff -pruN 1.26.0-8/debian/po/it.po 1.30.0-0ubuntu8/debian/po/it.po
--- 1.26.0-8/debian/po/it.po	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/it.po	2019-08-14 02:18:58.000000000 +0000
@@ -1,103 +1,82 @@
-# debconf templates for xorg-x11 package
-# Italian translation
-#
-# $Id: it.po 1042 2006-01-09 07:55:08Z ender $
-#
-# Copyrights:
-# Branden Robinson, 2000-2004
-# Matteo Dell'Amico, 2002
-# Emanuele Aina, 2002
-# Luca Monducci, 2004
-# Danilo Piazzalunga, 2004-2007
-#
-# This file is distributed under the same license as the xorg-x11 package.
-# Please see debian/copyright.
-#
-#    Translators, if you are not familiar with the PO format, gettext
-#    documentation is worth reading, especially sections dedicated to
-#    this format, e.g. by running:
-#         info -n '(gettext)PO Files'
-#         info -n '(gettext)Header Entry'
-#
-#    Some information specific to po-debconf are available at
-#            /usr/share/doc/po-debconf/README-trans
-#         or http://www.debian.org/intl/l10n/po-debconf/README-trans
-#
-#    Developers do not need to manually edit POT or PO files.
+# Italian translation for lightdm
+# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2010.
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: xorg-x11 6.8.2.dfsg.1-10\n"
-"Report-Msgid-Bugs-To: lightdm@packages.debian.org\n"
-"POT-Creation-Date: 2012-03-27 21:31+0200\n"
-"PO-Revision-Date: 2007-03-25 14:40+0200\n"
-"Last-Translator: Danilo Piazzalunga <danilopiazza@gmail.com>\n"
-"Language-Team: Italian <tp@lists.linux.it>\n"
-"Language: it\n"
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2010-12-15 18:29+0000\n"
+"Last-Translator: turnick <turnickdbz@msn.com>\n"
+"Language-Team: Italian <it@li.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid "Default display manager:"
-msgstr "Display manager predefinito."
+msgstr ""
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "A display manager is a program that provides graphical login capabilities "
 "for the X Window System."
 msgstr ""
-"Un display manager Ã¨ un programma che fornisce capacitÃ  di login grafico per "
-"il sistema X Window."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Only one display manager can manage a given X server, but multiple display "
 "manager packages are installed. Please select which display manager should "
 "run by default."
 msgstr ""
-"Solo un display manager puÃ² gestire un dato server X, ma sono installati piÃ¹ "
-"pacchetti di display manager. Scegliere il display manager da usare come "
-"predefinito."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Multiple display managers can run simultaneously if they are configured to "
 "manage different servers; to achieve this, configure the display managers "
 "accordingly, edit each of their init scripts in /etc/init.d, and disable the "
 "check for a default display manager."
 msgstr ""
-"Possono essere eseguiti piÃ¹ display manager contemporaneamente, a patto che "
-"siano impostati per gestire server diversi; per fare questo, configurare i "
-"display manager in maniera appropriata, modificare ciascuno dei loro script "
-"di avvio in /etc/init.d e disabilitare il controllo per un display manager "
-"predefinito."
 
-#~ msgid "Stop the xdm daemon?"
-#~ msgstr "Arrestare il demone xdm?"
+#~ msgid "Cancel"
+#~ msgstr "Annulla"
 
-#~ msgid ""
-#~ "The X display manager (xdm) daemon is typically stopped on package "
-#~ "upgrade and removal, but it appears to be managing at least one running X "
-#~ "session."
-#~ msgstr ""
-#~ "Il demone del display manager X (xdm) viene tipicamente fermato in fase "
-#~ "di aggiornamento o rimozione del pacchetto, ma pare che al momento stia "
-#~ "gestendo almeno una sessione attiva di X."
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
+#~ msgstr "Chiudere veramente tutti i programmi e riavviare il computer?"
+
+#~ msgid "Restart"
+#~ msgstr "Riavvia"
 
 #~ msgid ""
-#~ "If xdm is stopped now, any X sessions it manages will be terminated. "
-#~ "Otherwise, the new version will take effect the next time the daemon is "
-#~ "restarted."
-#~ msgstr ""
-#~ "Se xdm viene arrestato ora, anche tutte le sessioni di X che gestisce "
-#~ "verranno terminate. In alternativa, la nuova versione sarÃ  usata a "
-#~ "partire dal prossimo avvio del demone."
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+#~ msgstr "Chiudere veramente tutti i programmi e arrestare il computer?"
+
+#~ msgid "Shutdown"
+#~ msgstr "Arresta"
+
+#~ msgid "Hibernate"
+#~ msgstr "Iberna"
+
+#~ msgid "Restart..."
+#~ msgstr "Riavvia..."
+
+#~ msgid "Shutdown..."
+#~ msgstr "Arresta..."
+
+#~ msgid "Suspend"
+#~ msgstr "Sospendi"
+
+#~ msgid "Large Font"
+#~ msgstr "Caratteri grandi"
diff -pruN 1.26.0-8/debian/po/ja.po 1.30.0-0ubuntu8/debian/po/ja.po
--- 1.26.0-8/debian/po/ja.po	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/ja.po	2019-08-14 02:18:58.000000000 +0000
@@ -1,103 +1,82 @@
-# debconf templates for xorg-x11 package
-# Japanese translation
-#
-# $Id: ja.po 1063 2006-01-11 10:46:20Z ender $
-#
-# Copyrights:
-# Branden Robinson, 2000-2004
-# ISHIKAWA Mutsumi, 2001
-# Tomohiro KUBOTA, 2001, 2002
-# Kenshi Muto, 2001, 2003, 2004
-# Takeo Nakano, 2001, 2003
-#
-# This file is distributed under the same license as the xorg-x11 package.
-# Please see debian/copyright.
-#
-#    Translators, if you are not familiar with the PO format, gettext
-#    documentation is worth reading, especially sections dedicated to
-#    this format, e.g. by running:
-#         info -n '(gettext)PO Files'
-#         info -n '(gettext)Header Entry'
-#
-#    Some information specific to po-debconf are available at
-#            /usr/share/doc/po-debconf/README-trans
-#         or http://www.debian.org/intl/l10n/po-debconf/README-trans
-#
-#    Developers do not need to manually edit POT or PO files.
+# Japanese translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: xorg-x11 6.9.dfsg.1-3+SVN\n"
-"Report-Msgid-Bugs-To: lightdm@packages.debian.org\n"
-"POT-Creation-Date: 2012-03-27 21:31+0200\n"
-"PO-Revision-Date: 2007-03-22 19:09+0900\n"
-"Last-Translator: Kenshi Muto <kmuto@debian.org> and ISHIKAWA Mutsumi "
-"<ishikawa@debian.org>\n"
-"Language-Team: Japanese <debian-japanese@lists.debian.org>\n"
-"Language: ja\n"
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2012-12-23 02:36+0000\n"
+"Last-Translator: OKANO Takayoshi <Unknown>\n"
+"Language-Team: Japanese <ja@li.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid "Default display manager:"
-msgstr "ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®ãƒ‡ã‚£ã‚¹ãƒ—ãƒ¬ã‚¤ãƒžãƒãƒ¼ã‚¸ãƒ£:"
+msgstr ""
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "A display manager is a program that provides graphical login capabilities "
 "for the X Window System."
 msgstr ""
-"ãƒ‡ã‚£ã‚¹ãƒ—ãƒ¬ã‚¤ãƒžãƒãƒ¼ã‚¸ãƒ£ã¨ã¯ã€X Window System ä¸Šã§ã®ã‚°ãƒ©ãƒ•ã‚£ã‚«ãƒ«ãªãƒ­ã‚°ã‚¤ãƒ³æ©Ÿèƒ½"
-"ã‚’æä¾›ã™ã‚‹ã‚‚ã®ã§ã™ã€‚"
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Only one display manager can manage a given X server, but multiple display "
 "manager packages are installed. Please select which display manager should "
 "run by default."
 msgstr ""
-"ã²ã¨ã¤ã® X ã‚µãƒ¼ãƒã‚’ç®¡ç†ã§ãã‚‹ã®ã¯ã²ã¨ã¤ã®ãƒ‡ã‚£ã‚¹ãƒ—ãƒ¬ã‚¤ãƒžãƒãƒ¼ã‚¸ãƒ£ã ã‘ã§ã™ãŒã€"
-"ãƒ‡ã‚£ã‚¹ãƒ—ãƒ¬ã‚¤ãƒžãƒãƒ¼ã‚¸ãƒ£ãƒ‘ãƒƒã‚±ãƒ¼ã‚¸ãŒè¤‡æ•°ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã•ã‚Œã¦ã„ã¾ã™ã€‚ã©ã®ãƒ‡ã‚£ã‚¹ãƒ—"
-"ãƒ¬ã‚¤ãƒžãƒãƒ¼ã‚¸ãƒ£ã‚’ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã§èµ·å‹•ã•ã›ã‚‹ã‹é¸æŠžã—ã¦ä¸‹ã•ã„ã€‚"
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Multiple display managers can run simultaneously if they are configured to "
 "manage different servers; to achieve this, configure the display managers "
 "accordingly, edit each of their init scripts in /etc/init.d, and disable the "
 "check for a default display manager."
 msgstr ""
-"ç•°ãªã‚‹ã‚µãƒ¼ãƒã‚’æ‹…å½“ã™ã‚‹ã‚ˆã†ã«è¨­å®šã™ã‚Œã°ã€è¤‡æ•°ã®ãƒ‡ã‚£ã‚¹ãƒ—ãƒ¬ã‚¤ã‚µãƒ¼ãƒã¯åŒæ™‚ã«å‹•ä½œ"
-"ã§ãã¾ã™ã€‚ãã®ã‚ˆã†ã«ã™ã‚‹ã«ã¯ã€/etc/init.d ã«ã‚ã‚‹å„ãƒ‡ã‚£ã‚¹ãƒ—ãƒ¬ã‚¤ãƒžãƒãƒ¼ã‚¸ãƒ£ã®åˆ"
-"æœŸåŒ–ã‚¹ã‚¯ãƒªãƒ—ãƒˆã‚’ç·¨é›†ã—ã€ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆãƒ‡ã‚£ã‚¹ãƒ—ãƒ¬ã‚¤ãƒžãƒãƒ¼ã‚¸ãƒ£ã®ãƒã‚§ãƒƒã‚¯ã‚’ç„¡åŠ¹ã«ã—"
-"ã¦ä¸‹ã•ã„ã€‚"
 
-#~ msgid "Stop the xdm daemon?"
-#~ msgstr "xdm ãƒ‡ãƒ¼ãƒ¢ãƒ³ã‚’åœæ­¢ã—ã¾ã™ã‹?"
+#~ msgid "Large Font"
+#~ msgstr "å¤§ãã„ãƒ•ã‚©ãƒ³ãƒˆ"
 
-#~ msgid ""
-#~ "The X display manager (xdm) daemon is typically stopped on package "
-#~ "upgrade and removal, but it appears to be managing at least one running X "
-#~ "session."
-#~ msgstr ""
-#~ "X ãƒ‡ã‚£ã‚¹ãƒ—ãƒ¬ã‚¤ãƒžãƒãƒ¼ã‚¸ãƒ£ (xdm) ãƒ‡ãƒ¼ãƒ¢ãƒ³ã¯ã€æ™®é€šã€ãƒ‘ãƒƒã‚±ãƒ¼ã‚¸ã®æ›´æ–°ã‚„å‰Šé™¤ã®"
-#~ "éš›ã«åœæ­¢ã•ã›ã‚‰ã‚Œã¾ã™ã€‚ã—ã‹ã— xdm ã¯ç¾åœ¨å‹•ä½œä¸­ã® X ã‚»ãƒƒã‚·ãƒ§ãƒ³ã‚’æœ€ä½Žã²ã¨ã¤ã¯"
-#~ "ç®¡ç†ã—ã¦ã„ã‚‹ã‚ˆã†ã§ã™ã€‚"
+#~ msgid "Cancel"
+#~ msgstr "ã‚­ãƒ£ãƒ³ã‚»ãƒ«"
+
+#~ msgid "Restart..."
+#~ msgstr "å†èµ·å‹•..."
+
+#~ msgid "Restart"
+#~ msgstr "å†èµ·å‹•"
 
 #~ msgid ""
-#~ "If xdm is stopped now, any X sessions it manages will be terminated. "
-#~ "Otherwise, the new version will take effect the next time the daemon is "
-#~ "restarted."
-#~ msgstr ""
-#~ "ã„ã¾ xdm ã‚’åœæ­¢ã™ã‚‹ã¨ã€ã“ã® xdm ãŒç®¡ç†ã—ã¦ã„ã‚‹ X ã‚»ãƒƒã‚·ãƒ§ãƒ³ã¯åœæ­¢ã—ã¾ã™ã€‚"
-#~ "ã‚ã‚‹ã„ã¯æ¬¡ã«ãƒ‡ãƒ¼ãƒ¢ãƒ³ã‚’ãƒªã‚¹ã‚¿ãƒ¼ãƒˆã—ãŸã¨ãã«æ–°ã—ã„ãƒãƒ¼ã‚¸ãƒ§ãƒ³ã® xdm ã‚’æœ‰åŠ¹ã«"
-#~ "ã™ã‚‹ã“ã¨ã‚‚ã§ãã¾ã™ã€‚"
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+#~ msgstr "æœ¬å½“ã«ã™ã¹ã¦ã®ãƒ—ãƒ­ã‚°ãƒ©ãƒ ã‚’çµ‚äº†ã—ã‚³ãƒ³ãƒ”ãƒ¥ãƒ¼ã‚¿ãƒ¼ã‚’ã‚·ãƒ£ãƒƒãƒˆãƒ€ã‚¦ãƒ³ã—ã¾ã™ã‹?"
+
+#~ msgid "Shutdown"
+#~ msgstr "ã‚·ãƒ£ãƒƒãƒˆãƒ€ã‚¦ãƒ³"
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
+#~ msgstr "æœ¬å½“ã«ã™ã¹ã¦ã®ãƒ—ãƒ­ã‚°ãƒ©ãƒ ã‚’çµ‚äº†ã—ã€ã‚³ãƒ³ãƒ”ãƒ¥ãƒ¼ã‚¿ãƒ¼ã‚’å†èµ·å‹•ã•ã›ã¾ã™ã‹?"
+
+#~ msgid "Shutdown..."
+#~ msgstr "ã‚·ãƒ£ãƒƒãƒˆãƒ€ã‚¦ãƒ³..."
+
+#~ msgid "Suspend"
+#~ msgstr "ã‚µã‚¹ãƒšãƒ³ãƒ‰"
+
+#~ msgid "Hibernate"
+#~ msgstr "ãƒã‚¤ãƒãƒãƒ¼ãƒˆ"
diff -pruN 1.26.0-8/debian/po/jv.po 1.30.0-0ubuntu8/debian/po/jv.po
--- 1.26.0-8/debian/po/jv.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/jv.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,51 @@
+# Javanese translation for lightdm
+# Copyright (c) 2016 Rosetta Contributors and Canonical Ltd 2016
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2016.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2016-01-03 00:15+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Javanese <jv@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
diff -pruN 1.26.0-8/debian/po/kk.po 1.30.0-0ubuntu8/debian/po/kk.po
--- 1.26.0-8/debian/po/kk.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/kk.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,93 @@
+# Kazakh translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2013-08-31 05:52+0000\n"
+"Last-Translator: Baurzhan Muftakhidinov <Unknown>\n"
+"Language-Team: Kazakh <kk@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr "Ò®Ð½ÑÑ–Ð· ÐºÐµÐ»Ñ–ÑÑ–Ð¼ Ð´Ð¸ÑÐ¿Ð»ÐµÐ¹ Ð±Ð°ÑÒ›Ð°Ñ€ÑƒÑˆÑ‹ÑÑ‹:"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+"Ð”Ð¸ÑÐ¿Ð»ÐµÐ¹ Ð±Ð°ÑÒ›Ð°Ñ€ÑƒÑˆÑ‹ÑÑ‹ - X Window Ð¶Ò¯Ð¹ÐµÑÑ– Ò¯ÑˆÑ–Ð½ Ð³Ñ€Ð°Ñ„Ð¸ÐºÐ°Ð»Ñ‹Ò› Ð¶Ò¯Ð¹ÐµÐ³Ðµ ÐºÑ–Ñ€Ñƒ "
+"Ð¼Ò¯Ð¼ÐºÑ–Ð½Ð´Ñ–Ð³Ñ–Ð½ Ò±ÑÑ‹Ð½Ð°Ñ‚Ñ‹Ð½ Ð±Ð°Ò“Ð´Ð°Ñ€Ð»Ð°Ð¼Ð°."
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+"X ÑÐµÑ€Ð²ÐµÑ€Ñ–Ð½ Ñ‚ÐµÐº Ð±Ñ–Ñ€ Ð´Ð¸ÑÐ¿Ð»ÐµÐ¹ Ð±Ð°ÑÒ›Ð°Ñ€ÑƒÑˆÑ‹ÑÑ‹ Ð±Ð°ÑÒ›Ð°Ñ€Ð° Ð°Ð»Ð°Ð´Ñ‹, Ð±Ñ–Ñ€Ð°Ò› Ð±Ñ–Ñ€Ð½ÐµÑˆÐµ Ð´Ð¸ÑÐ¿Ð»ÐµÐ¹ "
+"Ð±Ð°ÑÒ›Ð°Ñ€ÑƒÑˆÑ‹ÑÑ‹ Ð´ÐµÑÑ‚ÐµÐ»ÐµÑ€Ñ– Ð¾Ñ€Ð½Ð°Ñ‚Ñ‹Ð»Ò“Ð°Ð½. Ò®Ð½ÑÑ–Ð· ÐºÐµÐ»Ñ–ÑÑ–Ð¼ Ð±Ð¾Ð¹Ñ‹Ð½ÑˆÐ° Ò›Ð°Ð¹ÑÑ‹ÑÑ‹ "
+"Ò›Ð¾Ð»Ð´Ð°Ð½Ñ‹Ð»Ð°Ñ‚Ñ‹Ð½Ñ‹Ð½ Ñ‚Ð°Ò£Ð´Ð°Ò£Ñ‹Ð·."
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
+"Ð‘Ñ–Ñ€ ÑƒÐ°Ò›Ñ‹Ñ‚Ñ‚Ð° Ð±Ñ–Ñ€Ð½ÐµÑˆÐµ Ð´Ð¸ÑÐ¿Ð»ÐµÐ¹ Ð±Ð°ÑÒ›Ð°Ñ€ÑƒÑˆÑ‹ÑÑ‹ Ð¶Ò±Ð¼Ñ‹Ñ Ñ–ÑÑ‚ÐµÐ¹ Ð°Ð»Ð°Ð´Ñ‹, ÐµÐ³ÐµÑ€ Ð¾Ð»Ð°Ñ€ Ó™Ñ€ "
+"Ñ‚Ò¯Ñ€Ð»Ñ– ÑÐµÑ€Ð²ÐµÑ€Ð»ÐµÑ€Ð´Ñ– Ð±Ð°ÑÒ›Ð°Ñ€Ð°Ñ‚Ñ‹Ð½ Ð±Ð¾Ð»ÑÐ°; Ð¾ÑÑ‹Ò“Ð°Ð½ Ò›Ð¾Ð» Ð¶ÐµÑ‚ÐºÑ–Ð·Ñƒ Ò¯ÑˆÑ–Ð½, Ð´Ð¸ÑÐ¿Ð»ÐµÐ¹ "
+"Ð±Ð°ÑÒ›Ð°Ñ€ÑƒÑˆÑ‹Ð»Ð°Ñ€Ñ‹Ð½ ÑÓ™Ð¹ÐºÐµÑÑ–Ð½ÑˆÐµ Ð±Ð°Ð¿Ñ‚Ð°Ò£Ñ‹Ð·, Ð¾Ð»Ð°Ñ€Ð´Ñ‹Ò£ init ÑÐºÑ€Ð¸Ð¿Ñ‚ÐµÑ€Ñ–Ð½ /etc/init.d "
+"Ñ–ÑˆÑ–Ð½Ð´Ðµ Ñ‚Ò¯Ð·ÐµÑ‚Ñ–Ð¿, Ò¯Ð½ÑÑ–Ð· ÐºÐµÐ»Ñ–ÑÑ–Ð¼ Ð±Ð¾Ð¹Ñ‹Ð½ÑˆÐ° Ð´Ð¸ÑÐ¿Ð»ÐµÐ¹ Ð±Ð°ÑÒ›Ð°Ñ€ÑƒÑˆÑ‹ÑÑ‹Ð½ Ñ‚ÐµÐºÑÐµÑ€ÑƒÐ´Ñ– "
+"ÑÓ©Ð½Ð´Ñ–Ñ€Ñ–Ò£Ñ–Ð·."
+
+#~ msgid "Large Font"
+#~ msgstr "Ò®Ð»ÐºÐµÐ½ Ò›Ð°Ñ€Ñ–Ð¿"
+
+#~ msgid "Cancel"
+#~ msgstr "Ð‘Ð°Ñ Ñ‚Ð°Ñ€Ñ‚Ñƒ"
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
+#~ msgstr ""
+#~ "Ð‘Ð°Ñ€Ð»Ñ‹Ò› Ð±Ð°Ò“Ð´Ð°Ñ€Ð»Ð°Ð¼Ð°Ð»Ð°Ñ€Ð´Ñ‹ Ð¶Ð°ÑƒÑ‹Ð¿, ÐºÐ¾Ð¼Ð¿ÑŒÑŽÑ‚ÐµÑ€Ñ–Ò£Ñ–Ð·Ð´Ñ– Ò›Ð°Ð¹Ñ‚Ð° Ð¶Ò¯ÐºÑ‚ÐµÑƒÐ´Ñ– Ò›Ð°Ð»Ð°Ð¹ÑÑ‹Ð· Ð±Ð°?"
+
+#~ msgid "Restart"
+#~ msgstr "ÒšÐ°Ð¹Ñ‚Ð° Ð¶Ò¯ÐºÑ‚ÐµÑƒ"
+
+#~ msgid ""
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+#~ msgstr "Ð‘Ð°Ñ€Ð»Ñ‹Ò› Ð±Ð°Ò“Ð´Ð°Ñ€Ð»Ð°Ð¼Ð°Ð»Ð°Ñ€Ð´Ñ‹ Ð¶Ð°ÑƒÑ‹Ð¿, ÐºÐ¾Ð¼Ð¿ÑŒÑŽÑ‚ÐµÑ€Ñ–Ò£Ñ–Ð·Ð´Ñ– ÑÓ©Ð½Ð´Ñ–Ñ€ÑƒÐ´Ñ– Ò›Ð°Ð»Ð°Ð¹ÑÑ‹Ð· Ð±Ð°?"
+
+#~ msgid "Shutdown"
+#~ msgstr "Ð¡Ó©Ð½Ð´Ñ–Ñ€Ñƒ"
+
+#~ msgid "Shutdown..."
+#~ msgstr "Ð¡Ó©Ð½Ð´Ñ–Ñ€Ñƒ..."
+
+#~ msgid "Hibernate"
+#~ msgstr "Ð“Ð¸Ð±ÐµÑ€Ð½Ð°Ñ†Ð¸Ñ"
+
+#~ msgid "Suspend"
+#~ msgstr "Ò°Ð¹Ñ‹Ò›Ñ‚Ð°Ñ‚Ñƒ"
+
+#~ msgid "Restart..."
+#~ msgstr "ÒšÐ°Ð¹Ñ‚Ð° Ð¶Ò¯ÐºÑ‚ÐµÑƒ..."
diff -pruN 1.26.0-8/debian/po/kl.po 1.30.0-0ubuntu8/debian/po/kl.po
--- 1.26.0-8/debian/po/kl.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/kl.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,51 @@
+# Greenlandic (Kalaallisut) translation for lightdm
+# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2013.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2013-09-10 11:28+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Greenlandic (Kalaallisut) <kl@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
diff -pruN 1.26.0-8/debian/po/km.po 1.30.0-0ubuntu8/debian/po/km.po
--- 1.26.0-8/debian/po/km.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/km.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,51 @@
+# Khmer translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2011-10-20 02:55+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Khmer <km@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
diff -pruN 1.26.0-8/debian/po/kn.po 1.30.0-0ubuntu8/debian/po/kn.po
--- 1.26.0-8/debian/po/kn.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/kn.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,51 @@
+# Kannada translation for lightdm
+# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2012.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2012-06-01 09:17+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Kannada <kn@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
diff -pruN 1.26.0-8/debian/po/ko.po 1.30.0-0ubuntu8/debian/po/ko.po
--- 1.26.0-8/debian/po/ko.po	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/ko.po	2019-08-14 02:18:58.000000000 +0000
@@ -1,78 +1,78 @@
-# Korean translations for xdm package
-# xdm íŒ¨í‚¤ì§€ì— ëŒ€í•œ í•œêµ­ì–´ ë²ˆì—­ë¬¸.
-# Copyright (C) 2007 THE xdm'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the xdm package.
-# Sunjae Park <darehanl@gmail.com>, 2007.
+# Korean translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: xdm\n"
-"Report-Msgid-Bugs-To: lightdm@packages.debian.org\n"
-"POT-Creation-Date: 2012-03-27 21:31+0200\n"
-"PO-Revision-Date: 2007-04-07 20:03-0400\n"
-"Last-Translator: Sunjae Park <darehanl@gmail.com>\n"
-"Language-Team: Korean <debian-l10n-korean@lists.debian.org>\n"
-"Language: ko\n"
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2011-07-24 07:38+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Korean <ko@li.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid "Default display manager:"
-msgstr "ê¸°ë³¸ í™”ë©´ê´€ë¦¬ìž:"
+msgstr ""
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "A display manager is a program that provides graphical login capabilities "
 "for the X Window System."
 msgstr ""
-"í™”ë©´ ê´€ë¦¬ìžëŠ” ê·¸ëž˜í”½ ë¡œê·¸ì¸ ê¸°ëŠ¥ì„ ì œê³µí•˜ëŠ” X ìœˆë„ìš° ì‹œìŠ¤í…œì„ ìœ„í•œ í”„ë¡œê·¸ëž¨ìž…"
-"ë‹ˆë‹¤."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Only one display manager can manage a given X server, but multiple display "
 "manager packages are installed. Please select which display manager should "
 "run by default."
 msgstr ""
-"í•œ í™”ë©´ê´€ë¦¬ìžëŠ” X ì„œë²„ í•˜ë‚˜ë§Œì„ ê´€ë¦¬í•  ìˆ˜ ìžˆëŠ”ë°ë„ ì„¤ì¹˜ëœ í™”ë©´ ê´€ë¦¬ìžê°€ ì—¬ëŸ¬ "
-"ê°œ ìžˆìŠµë‹ˆë‹¤. ê¸°ë³¸ìœ¼ë¡œ ì‚¬ìš©í•  í™”ë©´ê´€ë¦¬ìžë¥¼ ì„ íƒí•´ì£¼ì‹­ì‹œì˜¤."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Multiple display managers can run simultaneously if they are configured to "
 "manage different servers; to achieve this, configure the display managers "
 "accordingly, edit each of their init scripts in /etc/init.d, and disable the "
 "check for a default display manager."
 msgstr ""
-"ì„œë¡œ ë‹¤ë¥¸ ì„œë²„ë¥¼ ê´€ë¦¬í•˜ë„ë¡ ì„¤ì •í•  ê²½ìš° í™”ë©´ê´€ë¦¬ìžë¥¼ ë™ì‹œì— ì—¬ëŸ¬ ê°œ ì‹¤í–‰ì‹œí‚¬ "
-"ìˆ˜ ìžˆìŠµë‹ˆë‹¤. ì´ë¥¼ ìœ„í•´ì„œëŠ” ê°ê°ì˜ í™”ë©´ê´€ë¦¬ìžë¥¼ ì ì ˆížˆ ì„¤ì •í•˜ê³  /etc/init.dì— "
-"ì— ìžˆëŠ” init ìŠ¤í¬ë¦½íŠ¸ë¥¼ ìˆ˜ì •í•´ì„œ ê¸°ë³¸ í™”ë©´ê´€ë¦¬ìž ê²€ì‚¬ë¥¼ ë¹„í™œì„±í•˜ì‹­ì‹œì˜¤."
-
-#~ msgid "Stop the xdm daemon?"
-#~ msgstr "xdm ë°ëª¬ì„ ì¤‘ì§€ì‹œí‚¬ê¹Œìš”?"
-
-#~ msgid ""
-#~ "The X display manager (xdm) daemon is typically stopped on package "
-#~ "upgrade and removal, but it appears to be managing at least one running X "
-#~ "session."
-#~ msgstr ""
-#~ "X í™”ë©´ê´€ë¦¬ìž(xdm) ë°ëª¬ì€ ì¼ë°˜ì ìœ¼ë¡œ ê¾¸ëŸ¬ë¯¸ë¥¼ ì„¤ì¹˜í•˜ê³  ì—…ê·¸ë ˆì´ë“œí•  ë•Œ ì¤‘ì§€"
-#~ "ë˜ì§€ë§Œ í˜„ìž¬ í•˜ë‚˜ ì´ìƒì˜ X ì„¸ì…˜ì„ ê´€ë¦¬í•˜ëŠ” ì¤‘ì¸ ê²ƒ ê°™ìŠµë‹ˆë‹¤."
-
-#~ msgid ""
-#~ "If xdm is stopped now, any X sessions it manages will be terminated. "
-#~ "Otherwise, the new version will take effect the next time the daemon is "
-#~ "restarted."
-#~ msgstr ""
-#~ "xdmì„ ì§€ê¸ˆ ì¤‘ì§€ì‹œí‚¤ë©´ xdmì´ ê´€ë¦¬í•˜ê³  ìžˆëŠ” X ì„¸ì…˜ì€ ëª¨ë‘ ì¤‘ë‹¨ë©ë‹ˆë‹¤. ì§€ê¸ˆ "
-#~ "ì¤‘ì§€ì‹œí‚¤ì§€ ì•Šìœ¼ë©´ ìƒˆë¡œ ì„¤ì¹˜í•œ ë²„ì „ì€ ë°ëª¬ì„ ë‹¤ì‹œ ì‹œìž‘í•  ë•Œë¶€í„° ì‚¬ìš©ë©ë‹ˆë‹¤."
+
+#~ msgid "Large Font"
+#~ msgstr "í° ê¸€ê¼´"
+
+#~ msgid "Cancel"
+#~ msgstr "ì·¨ì†Œ"
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
+#~ msgstr "ëª¨ë“  í”„ë¡œê·¸ëž¨ì„ ë‹«ê³  ì»´í“¨í„°ë¥¼ ë‹¤ì‹œ ì‹œìž‘í•˜ê² ìŠµë‹ˆê¹Œ?"
+
+#~ msgid "Restart..."
+#~ msgstr "ìž¬ì‹œìž‘..."
+
+#~ msgid "Hibernate"
+#~ msgstr "ìµœëŒ€ ì ˆì „ ëª¨ë“œ"
+
+#~ msgid "Restart"
+#~ msgstr "ë‹¤ì‹œ ì‹œìž‘"
+
+#~ msgid "Shutdown"
+#~ msgstr "ì»´í“¨í„° ë„ê¸°"
+
+#~ msgid "Shutdown..."
+#~ msgstr "ì»´í“¨í„° ë„ê¸°..."
+
+#~ msgid "Suspend"
+#~ msgstr "ì ˆì „ëª¨ë“œ"
diff -pruN 1.26.0-8/debian/po/ku.po 1.30.0-0ubuntu8/debian/po/ku.po
--- 1.26.0-8/debian/po/ku.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/ku.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,83 @@
+# Kurdish translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2011-10-03 23:00+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Kurdish <ku@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
+
+#~ msgid "Large Font"
+#~ msgstr "CurenivÃ®sÃª mezin"
+
+#~ msgid "Cancel"
+#~ msgstr "Betal"
+
+#~ msgid "Shutdown..."
+#~ msgstr "Girtin..."
+
+#~ msgid "Hibernate"
+#~ msgstr "Xewa kÃ»r"
+
+#~ msgid "Restart..."
+#~ msgstr "DÃ®sdestpÃªkirin..."
+
+#~ msgid "Suspend"
+#~ msgstr "Xew"
+
+#~ msgid "Restart"
+#~ msgstr "DÃ®sdestpÃªkirin"
+
+#~ msgid "Shutdown"
+#~ msgstr "Girtin"
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
+#~ msgstr ""
+#~ "Bi rastÃ® dixwazÃ® hemÃ» bernameyan bigirÃ® Ã» komputerÃª dÃ®sa bidÃ® destpÃªkirin?"
+
+#~ msgid ""
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+#~ msgstr "Bi rastÃ® dixwazÃ® hemÃ» bernameyan Ã» komputerÃª bigirÃ®?"
diff -pruN 1.26.0-8/debian/po/lb.po 1.30.0-0ubuntu8/debian/po/lb.po
--- 1.26.0-8/debian/po/lb.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/lb.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,86 @@
+# Luxembourgish translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2011-06-16 13:20+0000\n"
+"Last-Translator: Edson <soued0311@hotmail.com>\n"
+"Language-Team: Luxembourgish <lb@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
+
+#~ msgid "Cancel"
+#~ msgstr "Ofbriechen"
+
+#~ msgid "Shutdown"
+#~ msgstr "Ausmaachen"
+
+#~ msgid "Hibernate"
+#~ msgstr "Wanterschlof"
+
+#~ msgid "Restart..."
+#~ msgstr "Nei starten..."
+
+#~ msgid "Shutdown..."
+#~ msgstr "Ausmaachen..."
+
+#~ msgid "Large Font"
+#~ msgstr "Grouss SchrÃ«ft"
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
+#~ msgstr ""
+#~ "Sidd Dir sÃ©cher, dass Dir all Programmer zoumaachen an de Computer nei "
+#~ "starte wÃ«llt?"
+
+#~ msgid "Restart"
+#~ msgstr "Nei starten"
+
+#~ msgid ""
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+#~ msgstr ""
+#~ "Sidd Dir sÃ©cher, dass Dir all Programmer zoumaachen an de Computer ausmaache "
+#~ "wÃ«llt?"
+
+#~ msgid "Suspend"
+#~ msgstr "Schlofmodus"
diff -pruN 1.26.0-8/debian/po/ln.po 1.30.0-0ubuntu8/debian/po/ln.po
--- 1.26.0-8/debian/po/ln.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/ln.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,51 @@
+# Lingala translation for lightdm
+# Copyright (c) 2016 Rosetta Contributors and Canonical Ltd 2016
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2016.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2016-10-01 16:54+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Lingala <ln@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
diff -pruN 1.26.0-8/debian/po/lo.po 1.30.0-0ubuntu8/debian/po/lo.po
--- 1.26.0-8/debian/po/lo.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/lo.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,51 @@
+# Lao translation for lightdm
+# Copyright (c) 2016 Rosetta Contributors and Canonical Ltd 2016
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2016.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2016-12-31 07:00+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Lao <lo@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
diff -pruN 1.26.0-8/debian/po/lt.po 1.30.0-0ubuntu8/debian/po/lt.po
--- 1.26.0-8/debian/po/lt.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/lt.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,92 @@
+# Lithuanian translation for lightdm
+# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2010.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2016-03-10 10:27+0000\n"
+"Last-Translator: Moo <hazap@hotmail.com>\n"
+"Language-Team: Lithuanian <lt@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr "Numatytoji prisijungimo tvarkytuvÄ—:"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+"Prisijungimo tvarkytuvÄ— tai programa, kuri suteikia X langÅ³ sistemai "
+"grafines prisijungimo galimybes."
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+"PasirinktÄ… X serverÄ¯ tvarkyti gali tik viena prisijungimo tvarkytuvÄ—, bet "
+"yra Ä¯diegtos kelios prisijungimo tvarkytuvÄ—s. Pasirinkite kuri prisijungimo "
+"tvarkytuvÄ— turÄ—tÅ³ bÅ«ti naudojama pagal nutylÄ—jimÄ…."
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
+"Vienu metu gali veikti kelios tvarkytuvÄ—s, jei jos sukonfigÅ«ruotos tvarkyti "
+"skirtingus serverius. NorÄ—dami tokios veiksenos pakeiskite kiekvienos "
+"tvarkytuvÄ—s init scenarijus jÅ³ /etc/init.d ir iÅ¡junkite numatytosios "
+"tvarkytuvÄ—s aptikimÄ…."
+
+#~ msgid "Large Font"
+#~ msgstr "Didelis Å¡riftas"
+
+#~ msgid "Cancel"
+#~ msgstr "Atsisakyti"
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
+#~ msgstr ""
+#~ "Ar tikrai norite uÅ¾verti visas programas ir paleisti kompiuterÄ¯ iÅ¡ naujo?"
+
+#~ msgid "Hibernate"
+#~ msgstr "Hibernuoti"
+
+#~ msgid "Restart"
+#~ msgstr "Paleisti iÅ¡ naujo"
+
+#~ msgid ""
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+#~ msgstr "Ar tikrai norite uÅ¾verti visas programas ir iÅ¡jungti kompiuterÄ¯?"
+
+#~ msgid "Shutdown"
+#~ msgstr "IÅ¡jungti"
+
+#~ msgid "Shutdown..."
+#~ msgstr "IÅ¡jungti..."
+
+#~ msgid "Restart..."
+#~ msgstr "Paleisti iÅ¡ naujo..."
+
+#~ msgid "Suspend"
+#~ msgstr "Sustabdyti"
diff -pruN 1.26.0-8/debian/po/lv.po 1.30.0-0ubuntu8/debian/po/lv.po
--- 1.26.0-8/debian/po/lv.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/lv.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,51 @@
+# Latvian translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2011-08-23 20:41+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Latvian <lv@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
diff -pruN 1.26.0-8/debian/po/mhr.po 1.30.0-0ubuntu8/debian/po/mhr.po
--- 1.26.0-8/debian/po/mhr.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/mhr.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,51 @@
+# Mari (Meadow) translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2011-10-16 13:52+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Mari (Meadow) <mhr@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
diff -pruN 1.26.0-8/debian/po/mi.po 1.30.0-0ubuntu8/debian/po/mi.po
--- 1.26.0-8/debian/po/mi.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/mi.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,51 @@
+# Maori translation for lightdm
+# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2012.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2012-07-24 01:41+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Maori <mi@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
diff -pruN 1.26.0-8/debian/po/ml.po 1.30.0-0ubuntu8/debian/po/ml.po
--- 1.26.0-8/debian/po/ml.po	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/ml.po	2019-08-14 02:18:58.000000000 +0000
@@ -1,81 +1,70 @@
-# Malayalam translation of xdm debconf template.
-# Copyright (C) 2007 THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the xdm package.
-# Praveen|à´ªàµà´°à´µàµ€à´£àµâ€ A|à´Ž <pravi.a@gmail.com>, 2007.
+# Malayalam translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: xdm 1.0\n"
-"Report-Msgid-Bugs-To: lightdm@packages.debian.org\n"
-"POT-Creation-Date: 2012-03-27 21:31+0200\n"
-"PO-Revision-Date: 2007-03-23 09:46+0530\n"
-"Last-Translator: Praveen|à´ªàµà´°à´µàµ€à´£àµâ€ A|à´Ž <pravi.a@gmail.com>\n"
-"Language-Team: Swathanthra|à´¸àµà´µà´¤à´¨àµà´¤àµà´° Malayalam|à´®à´²à´¯à´¾à´³à´‚ Computing|à´•à´®àµà´ªàµà´¯àµ‚à´Ÿàµà´Ÿà´¿à´™àµà´™àµ <smc-"
-"discuss@googlegroups.com>\n"
-"Language: \n"
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2011-10-13 09:14+0000\n"
+"Last-Translator: gireesh kumar k m <Unknown>\n"
+"Language-Team: Malayalam <ml@li.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid "Default display manager:"
-msgstr "à´¡à´¿à´«à´¾à´³àµâ€à´Ÿàµà´Ÿà´¾à´¯à´¿ à´µàµ‡à´£àµà´Ÿ à´ªàµà´°à´¦à´°àµâ€à´¶à´¨ à´®à´¾à´¨àµ‡à´œà´°àµâ€:"
+msgstr ""
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "A display manager is a program that provides graphical login capabilities "
 "for the X Window System."
 msgstr ""
-"à´Žà´•àµà´¸àµ à´œà´¾à´²à´• à´¸à´¿à´¸àµà´±àµà´±à´¤àµà´¤à´¿à´¨àµ à´—àµà´°à´¾à´«à´¿à´•àµà´•à´²à´¾à´¯à´¿ à´…à´•à´¤àµà´¤àµ à´•à´Ÿà´•àµà´•à´¾à´¨àµà´³àµà´³ à´•à´´à´¿à´µàµà´•à´³àµâ€ à´¨à´²àµà´•àµà´¨àµà´¨ à´’à´°àµ à´ªàµà´°àµ‹à´—àµà´°à´¾à´®à´¾à´£àµ à´’à´°àµ "
-"à´ªàµà´°à´¦à´°àµâ€à´¶à´¨ à´®à´¾à´¨àµ‡à´œà´°àµâ€."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Only one display manager can manage a given X server, but multiple display "
 "manager packages are installed. Please select which display manager should "
 "run by default."
 msgstr ""
-"à´à´¤àµ†à´™àµà´•à´¿à´²àµà´‚ à´’à´°àµ à´Žà´•àµà´¸àµ à´¸àµ‡à´µà´•à´¨àµ† à´’à´°àµ‡ à´’à´°àµ à´ªàµà´°à´¦à´°àµâ€à´¶à´¨ à´®à´¾à´¨àµ‡à´œà´°àµâ€â€Œà´•àµà´•àµ‡ à´®à´¾à´¨àµ‡à´œàµ à´šàµ†à´¯àµà´¯à´¾à´¨àµâ€ à´ªà´±àµà´±àµ‚, à´ªà´•àµà´·àµ‡ "
-"à´’à´¨àµà´¨à´¿à´²à´§à´¿à´•à´‚ à´ªàµà´°à´¦à´°àµâ€à´¶à´¨ à´®à´¾à´¨àµ‡à´œà´°àµâ€ à´ªà´¾à´•àµà´•àµ‡à´œàµà´•à´³àµâ€ à´‡à´¨àµâ€à´¸àµà´±àµà´±à´¾à´³àµâ€ à´šàµ†à´¯àµà´¤à´¿à´Ÿàµà´Ÿàµà´£àµà´Ÿàµ. à´¦à´¯à´µà´¾à´¯à´¿ à´¡à´¿à´«à´¾à´³àµâ€à´Ÿàµà´Ÿà´¾à´¯à´¿ "
-"à´ªàµà´°à´µà´°àµâ€à´¤àµà´¤à´¿à´ªàµà´ªà´¿à´•àµà´•àµ‡à´£àµà´Ÿ à´ªàµà´°à´¦à´°àµâ€à´¶à´¨ à´®à´¾à´¨àµ‡à´œà´°àµâ€ à´à´¤à´¾à´£àµ†à´¨àµà´¨àµ à´¤à´¿à´°à´žàµà´žàµ†à´Ÿàµà´•àµà´•àµà´•."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Multiple display managers can run simultaneously if they are configured to "
 "manage different servers; to achieve this, configure the display managers "
 "accordingly, edit each of their init scripts in /etc/init.d, and disable the "
 "check for a default display manager."
 msgstr ""
-"à´µàµà´¯à´¤àµà´¯à´¸àµà´¤ à´¸àµ‡à´µà´•à´¨àµâ€à´®à´¾à´°àµ† à´®à´¾à´¨àµ‡à´œàµ à´šàµ†à´¯àµà´¯à´¾à´¨à´¾à´¯à´¿ à´•àµà´°à´®àµ€à´•à´°à´¿à´šàµà´šà´¿à´Ÿàµà´Ÿàµà´£àµà´Ÿàµ†à´™àµà´•à´¿à´²àµâ€ à´’à´¨àµà´¨à´¿à´²à´§à´¿à´•à´‚ à´ªàµà´°à´¦à´°àµâ€à´¶à´¨ "
-"à´®à´¾à´¨àµ‡à´œà´°àµâ€à´®à´¾à´°àµâ€à´•àµà´•àµ à´’à´°àµ‡ à´¸à´®à´¯à´‚ à´ªàµà´°à´µà´°àµâ€à´¤àµà´¤à´¿à´•àµà´•à´¾à´‚; à´‡à´¤àµ à´•àµˆà´µà´°à´¿à´•àµà´•à´£à´®àµ†à´™àµà´•à´¿à´²àµâ€, à´ªàµà´°à´¦à´°àµâ€à´¶à´¨ à´®à´¾à´¨àµ‡à´œà´°àµâ€à´®à´¾à´°àµ† "
-"à´…à´¨àµà´¸àµƒà´¤à´®à´¾à´¯à´¿ à´•àµà´°à´®àµ€à´•à´°à´¿à´•àµà´•àµà´•à´¯àµà´‚, à´…à´µà´¯àµ‹à´°àµ‹à´¨àµà´¨à´¿à´¨àµà´±àµ‡à´¯àµà´‚ /etc/init.d à´¯à´¿à´²àµà´³àµà´³ à´‡à´¨à´¿à´±àµà´±àµ à´¸àµà´•àµà´°à´¿à´ªàµà´±àµà´±àµà´•à´³àµ† "
-"à´®à´¾à´±àµà´±àµà´•à´¯àµà´‚, à´¡à´¿à´«à´¾à´³àµâ€à´Ÿàµà´Ÿàµ à´ªàµà´°à´¦à´°àµâ€à´¶à´¨ à´®à´¾à´¨àµ‡à´œà´°àµâ€à´•àµà´•à´¾à´¯àµà´³àµà´³ à´ªà´°à´¿à´¶àµ‹à´¦à´¨ à´¡à´¿à´¸àµ‡à´¬à´¿à´³àµâ€ à´šàµ†à´¯àµà´¯àµà´•à´¯àµà´‚ à´šàµ†à´¯àµà´¯àµà´•."
 
-#~ msgid "Stop the xdm daemon?"
-#~ msgstr "xdm à´¡àµ€à´®à´£àµ† à´¨à´¿à´°àµâ€à´¤àµà´¤à´Ÿàµà´Ÿàµ‡?"
+#~ msgid "Large Font"
+#~ msgstr "à´µà´²à´¿à´¯  à´«àµ‹à´£àµà´Ÿàµ"
 
-#~ msgid ""
-#~ "The X display manager (xdm) daemon is typically stopped on package "
-#~ "upgrade and removal, but it appears to be managing at least one running X "
-#~ "session."
-#~ msgstr ""
-#~ "à´Žà´•àµà´¸àµ à´ªàµà´°à´¦à´°àµâ€à´¶à´¨ à´®à´¾à´¨àµ‡à´œà´°àµâ€ (xdm) à´¡àµ€à´®à´£àµâ€ à´¸à´¾à´§à´¾à´°à´£à´¯à´¾à´¯à´¿ à´ªà´¾à´•àµà´•àµ‡à´œàµ à´…à´ªàµâ€‹à´—àµà´°àµ‡à´¡à´¿à´¨àµà´±àµ‡à´¯àµà´‚ à´¨àµ€à´•àµà´•à´‚ "
-#~ "à´šàµ†à´¯àµà´¯à´²à´¿à´¨àµà´±àµ‡à´¯àµà´‚ à´¸à´®à´¯à´¤àµà´¤à´¾à´£àµ à´¨à´¿à´°àµâ€à´¤àµà´¤à´¾à´±àµà´³àµà´³à´¤àµ, à´ªà´•àµà´·àµ‡ à´ªàµà´°à´µà´°àµâ€à´¤àµà´¤à´¿à´šàµà´šàµà´•àµŠà´£àµà´Ÿà´¿à´°à´¿à´•àµà´•àµà´¨àµà´¨ à´’à´°àµ à´Žà´•àµà´¸àµ "
-#~ "à´¸àµ†à´·à´¨àµ†à´¯àµ†à´™àµà´•à´¿à´²àµà´‚ à´‡à´¤àµ à´®à´¾à´¨àµ‡à´œàµ à´šàµ†à´¯àµà´¤àµà´•àµŠà´£àµà´Ÿà´¿à´°à´¿à´•àµà´•àµà´¨àµà´¨à´¤àµ à´ªàµ‹à´²àµ† à´¤àµ‹à´¨àµà´¨àµà´¨àµà´¨àµ."
+#~ msgid "Restart..."
+#~ msgstr "à´ªàµà´¨à´°à´¾à´°à´‚à´­à´¿à´•àµà´•àµà´•"
+
+#~ msgid "Shutdown..."
+#~ msgstr "à´¨à´¿à´°àµâ€à´¤àµà´¤àµà´•"
 
 #~ msgid ""
-#~ "If xdm is stopped now, any X sessions it manages will be terminated. "
-#~ "Otherwise, the new version will take effect the next time the daemon is "
-#~ "restarted."
-#~ msgstr ""
-#~ "xdm à´‡à´ªàµà´ªàµ‹à´³àµâ€ à´¨à´¿à´°àµâ€à´¤àµà´¤àµà´•à´¯à´¾à´£àµ†à´™àµà´•à´¿à´²àµâ€, à´‡à´¤àµ à´®à´¾à´¨àµ‡à´œàµ à´šàµ†à´¯àµà´¤àµà´•àµŠà´£àµà´Ÿà´¿à´°à´¿à´•àµà´•àµà´¨àµà´¨ à´à´¤àµ à´Žà´•àµà´¸àµ à´¸àµ†à´·à´¨àµà´•à´³àµà´‚ "
-#~ "à´…à´µà´¸à´¾à´¨à´¿à´ªàµà´ªà´¿à´•àµà´•àµà´¨àµà´¨à´¤à´¾à´¯à´¿à´°à´¿à´•àµà´•àµà´‚. à´…à´²àµà´²àµ†à´™àµà´•à´¿à´²àµâ€, à´…à´Ÿàµà´¤àµà´¤ à´¤à´µà´£ à´¡àµ€à´®à´£àµâ€ à´µàµ€à´£àµà´Ÿàµà´‚ à´¤àµà´Ÿà´™àµà´™àµà´®àµà´ªàµ‹à´³àµâ€ à´ªàµà´¤à´¿à´¯ à´²à´•àµà´•à´‚ "
-#~ "à´¨à´¿à´²à´µà´¿à´²àµâ€ à´µà´°àµà´‚."
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+#~ msgstr "à´Žà´²àµà´²à´¾ à´ªàµà´°àµ‹à´—àµà´°à´¾à´®àµà´•à´³àµà´‚ à´…à´Ÿà´šà´¿à´Ÿàµà´Ÿàµâ€Œ à´•à´‚à´ªàµà´¯àµ‚à´Ÿàµà´Ÿà´°àµâ€ à´¨à´¿à´°àµâ€à´¤àµà´¤à´Ÿàµà´Ÿàµ†?"
+
+#~ msgid "Cancel"
+#~ msgstr "à´µàµ‡à´£àµà´Ÿ"
+
+#~ msgid "Hibernate"
+#~ msgstr "à´¶à´¿à´¶à´¿à´° à´¨à´¿à´¦àµà´°"
diff -pruN 1.26.0-8/debian/po/mr.po 1.30.0-0ubuntu8/debian/po/mr.po
--- 1.26.0-8/debian/po/mr.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/mr.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,51 @@
+# Marathi translation for lightdm
+# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2012.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2012-06-20 03:35+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Marathi <mr@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
diff -pruN 1.26.0-8/debian/po/ms.po 1.30.0-0ubuntu8/debian/po/ms.po
--- 1.26.0-8/debian/po/ms.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/ms.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,82 @@
+# Malay translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2011-07-21 02:26+0000\n"
+"Last-Translator: abuyop <Unknown>\n"
+"Language-Team: Malay <ms@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
+
+#~ msgid "Large Font"
+#~ msgstr "Fon Besar"
+
+#~ msgid "Cancel"
+#~ msgstr "Batal"
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
+#~ msgstr "Anda pasti ingin menutup semua perisian dan mulakan semula komputer?"
+
+#~ msgid "Hibernate"
+#~ msgstr "Hibernasi"
+
+#~ msgid "Restart..."
+#~ msgstr "Mula Semula..."
+
+#~ msgid "Restart"
+#~ msgstr "Mulakan Semula"
+
+#~ msgid ""
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+#~ msgstr "Anda pasti ingin menutup semua program dan matikan komputer?"
+
+#~ msgid "Shutdown"
+#~ msgstr "Matikan"
+
+#~ msgid "Shutdown..."
+#~ msgstr "Matikan..."
+
+#~ msgid "Suspend"
+#~ msgstr "Tangguh"
diff -pruN 1.26.0-8/debian/po/my.po 1.30.0-0ubuntu8/debian/po/my.po
--- 1.26.0-8/debian/po/my.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/my.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,51 @@
+# Burmese translation for lightdm
+# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2012.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2012-05-18 06:50+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Burmese <my@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
diff -pruN 1.26.0-8/debian/po/nb.po 1.30.0-0ubuntu8/debian/po/nb.po
--- 1.26.0-8/debian/po/nb.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/nb.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,93 @@
+# Norwegian Bokmal translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2016-01-20 07:48+0000\n"
+"Last-Translator: Ã…ka Sikrom <Unknown>\n"
+"Language-Team: Norwegian Bokmal <nb@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr "Standard skjermbehandler:"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+"En skjermbehandler er et program som gir deg mulighet til Ã¥ logge inn i "
+"vindusystemet X via et grafisk grensesnitt."
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+"Du kan bare hÃ¥ndtere en X-tjener med Ã©n skjermbehandler om gangen, men flere "
+"skjermbehandler-pakker er installert. Velg hvilken skjermbehandler som skal "
+"brukes som standard."
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
+"Flere skjermbehandlere kan kjÃ¸re samtidig hvis de er satt opp til Ã¥ behandle "
+"ulike tjenere. For at dette skal fungere mÃ¥ du sette opp skjermbehandlerne "
+"deretter, redigere oppstartsskriptene deres under /etc/init.d og slÃ¥ av "
+"funksjonen som ser etter en standard skjermbehandler."
+
+#~ msgid ""
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+#~ msgstr "Ã˜nsker du Ã¥ lukke alle programmer og starte datamaskinen pÃ¥ nytt?"
+
+#~ msgid "Large Font"
+#~ msgstr "Stor skrift"
+
+#~ msgid "Cancel"
+#~ msgstr "Avbryt"
+
+#~ msgid "Restart..."
+#~ msgstr "Omstart..."
+
+#~ msgid "Shutdown..."
+#~ msgstr "SlÃ¥ av..."
+
+#~ msgid "Suspend"
+#~ msgstr "Hvilemodus"
+
+#~ msgid "Hibernate"
+#~ msgstr "Dvalemodus"
+
+#~ msgid "Restart"
+#~ msgstr "Start pÃ¥ nytt"
+
+#~ msgid "Shutdown"
+#~ msgstr "SlÃ¥ av"
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
+#~ msgstr ""
+#~ "Er du sikker pÃ¥ at du vil lukke alle programmer og starte datamaskinen pÃ¥ "
+#~ "nytt?"
diff -pruN 1.26.0-8/debian/po/ne.po 1.30.0-0ubuntu8/debian/po/ne.po
--- 1.26.0-8/debian/po/ne.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/ne.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,51 @@
+# Nepali translation for lightdm
+# Copyright (c) 2015 Rosetta Contributors and Canonical Ltd 2015
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2015.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2015-11-05 06:07+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Nepali <ne@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
diff -pruN 1.26.0-8/debian/po/nl.po 1.30.0-0ubuntu8/debian/po/nl.po
--- 1.26.0-8/debian/po/nl.po	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/nl.po	2019-08-14 02:18:58.000000000 +0000
@@ -1,103 +1,96 @@
-# debconf templates for xorg-x11 package
-# Dutch translation
-#
-# $Id: nl.po 1042 2006-01-09 07:55:08Z ender $
-#
-# Copyrights:
-# Branden Robinson, 2000-2004
-# Wouter Verhelst, 2002
-# Bart Cornelis, 2003
-#
-# This file is distributed under the same license as the xorg-x11 package.
-# Please see debian/copyright.
-#
-#    Translators, if you are not familiar with the PO format, gettext
-#    documentation is worth reading, especially sections dedicated to
-#    this format, e.g. by running:
-#         info -n '(gettext)PO Files'
-#         info -n '(gettext)Header Entry'
-#
-#    Some information specific to po-debconf are available at
-#            /usr/share/doc/po-debconf/README-trans
-#         or http://www.debian.org/intl/l10n/po-debconf/README-trans
-#
-#    Developers do not need to manually edit POT or PO files.
+# Dutch translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: xdm\n"
-"Report-Msgid-Bugs-To: lightdm@packages.debian.org\n"
-"POT-Creation-Date: 2012-03-27 21:31+0200\n"
-"PO-Revision-Date: 2007-03-22 20:24+0100\n"
-"Last-Translator: Bart Cornelis <cobaco@skolelinux.no>\n"
-"Language-Team: debian-l10n-dutch <debian-l10n-dutch@lists.debian.org>\n"
-"Language: \n"
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2016-05-04 08:24+0000\n"
+"Last-Translator: Pjotr12345 <Unknown>\n"
+"Language-Team: Dutch <nl@li.org>\n"
 "MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
+"Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"X-Poedit-Language: Dutch\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid "Default display manager:"
-msgstr "Standaard beeldschermbeheerder:"
+msgstr "Standaardaanmeldbeheerder:"
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "A display manager is a program that provides graphical login capabilities "
 "for the X Window System."
 msgstr ""
-"Een beeldschermbeheerder is een programma waarmee u zich grafisch op het "
-"systeem kunt aanmelden, waarna u in de grafische omgeving (het X Window "
-"System) terecht komt."
+"Een aanmeldbeheerder is een programma dat grafische aanmeldmogelijkheden "
+"biedt voor het X-Venstersysteem."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Only one display manager can manage a given X server, but multiple display "
 "manager packages are installed. Please select which display manager should "
 "run by default."
 msgstr ""
-"Elke X-server kan door slechts Ã©Ã©n beeldschermbeheerder beheerd worden, "
-"hoewel er meerdere beeldschermbeheerders geÃ¯nstalleerd kunnen zijn. Welke "
-"beeldschermbeheerder dient standaard gebruikt te worden?"
+"Slechts Ã©Ã©n aanmeldbeheerder kan een bepaalde X-server beheren, maar er zijn "
+"meerdere aanmeldbeheerderpakketten geÃ¯nstalleerd. Kies a.u.b. welke "
+"aanmeldbeheerder er standaard moet draaien."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Multiple display managers can run simultaneously if they are configured to "
 "manage different servers; to achieve this, configure the display managers "
 "accordingly, edit each of their init scripts in /etc/init.d, and disable the "
 "check for a default display manager."
 msgstr ""
-"Het is mogelijk om meerdere beeldschermbeheerders tegelijk te draaien zolang "
-"deze verschillende servers beheren. Om dat te bereiken dient u de "
-"beeldschermbeheerders overeenkomstig in te stellen door in hun init-scripts "
-"(in /etc/init.d) de controle of ze de standaard beeldschermbeheerder zijn "
-"uit te schakelen."
+"Er kunnen meerdere aanmeldbeheerders gelijktijdig draaien indien zij zijn "
+"ingesteld om verschillende servers te beheren; om dit te bereiken kunt u de "
+"aanmeldbeheerders dienovereenkomstig instellen, elk van hun init-scripts "
+"bewerken in /etc/init.d, en de controle uitschakelen op de aanwezigheid van "
+"een standaardaanmeldbeheerder."
 
-#~ msgid "Stop the xdm daemon?"
-#~ msgstr "Wilt u de xdm-achtergronddienst stoppen?"
+#~ msgid "Large Font"
+#~ msgstr "Groot lettertype"
 
-#~ msgid ""
-#~ "The X display manager (xdm) daemon is typically stopped on package "
-#~ "upgrade and removal, but it appears to be managing at least one running X "
-#~ "session."
+#~ msgid "Cancel"
+#~ msgstr "Annuleren"
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
 #~ msgstr ""
-#~ "Normaal wordt de beeldschermbeheerder (xdm) gestopt bij opwaardering en "
-#~ "verwijdering van dit pakket; momenteel is er echter minstens Ã©Ã©n lopende "
-#~ "X-sessie actief."
+#~ "Weet u zeker dat u alle programma's wilt afsluiten en de computer wilt "
+#~ "herstarten?"
+
+#~ msgid "Restart"
+#~ msgstr "Herstarten"
 
 #~ msgid ""
-#~ "If xdm is stopped now, any X sessions it manages will be terminated. "
-#~ "Otherwise, the new version will take effect the next time the daemon is "
-#~ "restarted."
+#~ "Are you sure you want to close all programs and shutdown the computer?"
 #~ msgstr ""
-#~ "Als xdm nu gestopt word, worden alle door xdm beheerde X-sessies "
-#~ "afgesloten. Als u xdm nu laat draaien wordt de nieuwe versie pas actief "
-#~ "de eerstvolgende keer dat de achtergronddienst herstart wordt. "
+#~ "Weet u zeker dat u alle programma's wilt afsluiten en de computer wilt "
+#~ "uitschakelen?"
+
+#~ msgid "Shutdown"
+#~ msgstr "Uitschakelen"
+
+#~ msgid "Suspend"
+#~ msgstr "Pauzestand"
+
+#~ msgid "Hibernate"
+#~ msgstr "Slaapstand"
+
+#~ msgid "Restart..."
+#~ msgstr "Herstartenâ€¦"
+
+#~ msgid "Shutdown..."
+#~ msgstr "Afsluiten..."
diff -pruN 1.26.0-8/debian/po/nn.po 1.30.0-0ubuntu8/debian/po/nn.po
--- 1.26.0-8/debian/po/nn.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/nn.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,51 @@
+# Norwegian Nynorsk translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2011-10-22 12:20+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Norwegian Nynorsk <nn@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
diff -pruN 1.26.0-8/debian/po/oc.po 1.30.0-0ubuntu8/debian/po/oc.po
--- 1.26.0-8/debian/po/oc.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/oc.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,51 @@
+# Occitan (post 1500) translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2011-08-14 13:45+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Occitan (post 1500) <oc@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
diff -pruN 1.26.0-8/debian/po/pa.po 1.30.0-0ubuntu8/debian/po/pa.po
--- 1.26.0-8/debian/po/pa.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/pa.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,51 @@
+# Punjabi translation for lightdm
+# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2012.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2012-04-06 07:15+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Punjabi <pa@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
diff -pruN 1.26.0-8/debian/po/pl.po 1.30.0-0ubuntu8/debian/po/pl.po
--- 1.26.0-8/debian/po/pl.po	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/pl.po	2019-08-14 02:18:58.000000000 +0000
@@ -1,65 +1,83 @@
-# Polish translation of debconf templates for lightdm package
-# Copyrights:
+# Polish translation for lightdm
+# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
 # This file is distributed under the same license as the lightdm package.
-# Branden Robinson, 2000-2004.
-# Marcin Owsiany, 2001, 2002.
-# MichaÅ‚ KuÅ‚ach <michal.kulach@gmail.com>, 2013.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2010.
+#
 msgid ""
 msgstr ""
-"Project-Id-Version: slim\n"
-"Report-Msgid-Bugs-To: lightdm@packages.debian.org\n"
-"POT-Creation-Date: 2012-03-27 21:31+0200\n"
-"PO-Revision-Date: 2013-06-06 17:59+0200\n"
-"Last-Translator: MichaÅ‚ KuÅ‚ach <michal.kulach@gmail.com>\n"
-"Language-Team: Polish <debian-l10n-polish@lists.debian.org>\n"
-"Language: pl\n"
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2015-12-28 11:13+0000\n"
+"Last-Translator: Piotr StrÄ™bski <strebski@gmail.com>\n"
+"Language-Team: Polish <pl@li.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=3; plural=(n==1 ? 0 : n%10>=2 && n%10<=4 && (n%100<10 "
-"|| n%100>=20) ? 1 : 2);\n"
-"X-Generator: Lokalize 1.4\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid "Default display manager:"
-msgstr "DomyÅ›lny menedÅ¼er logowania:"
+msgstr "DomyÅ›lny menedÅ¼er wyÅ›wietlania:"
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "A display manager is a program that provides graphical login capabilities "
 "for the X Window System."
 msgstr ""
-"MenedÅ¼er logowania to program, ktÃ³ry umoÅ¼liwia graficzne logowanie do X "
-"Window System."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Only one display manager can manage a given X server, but multiple display "
 "manager packages are installed. Please select which display manager should "
 "run by default."
 msgstr ""
-"Tylko jeden menedÅ¼er logowania moÅ¼e kontrolowaÄ‡ dany serwer X, ale "
-"zainstalowanych jest obecnie kilka takich programÃ³w. ProszÄ™ wybraÄ‡, ktÃ³ry z "
-"nich ma byÄ‡ uruchamiany domyÅ›lnie."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Multiple display managers can run simultaneously if they are configured to "
 "manage different servers; to achieve this, configure the display managers "
 "accordingly, edit each of their init scripts in /etc/init.d, and disable the "
 "check for a default display manager."
 msgstr ""
-"MoÅ¼na uruchomiÄ‡ kilka menedÅ¼erÃ³w logowania, ale muszÄ… one kontrolowaÄ‡ rÃ³Å¼ne "
-"serwery; moÅ¼na to osiÄ…gnÄ…Ä‡ konfigurujÄ…c odpowiednio kaÅ¼dy z nich, edytujÄ…c "
-"ich skrypty startowe w /etc/init.d i wyÅ‚Ä…czajÄ…c sprawdzanie domyÅ›lnego "
-"menedÅ¼era logowania."
 
+#~ msgid "Large Font"
+#~ msgstr "DuÅ¼a czcionka"
 
+#~ msgid "Cancel"
+#~ msgstr "Anuluj"
+
+#~ msgid "Restart"
+#~ msgstr "Uruchom ponownie"
+
+#~ msgid "Shutdown"
+#~ msgstr "WyÅ‚Ä…cz"
+
+#~ msgid "Restart..."
+#~ msgstr "Uruchom ponownie..."
+
+#~ msgid "Shutdown..."
+#~ msgstr "WyÅ‚Ä…cz..."
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
+#~ msgstr ""
+#~ "ZakoÅ„czyÄ‡ dziaÅ‚anie wszystkich programÃ³w i ponownie uruchomiÄ‡ komputer?"
+
+#~ msgid ""
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+#~ msgstr "ZakoÅ„czyÄ‡ dziaÅ‚anie wszystkich programÃ³w i wyÅ‚Ä…czyÄ‡ komputer?"
+
+#~ msgid "Hibernate"
+#~ msgstr "Zahibernuj"
+
+#~ msgid "Suspend"
+#~ msgstr "Wstrzymaj"
diff -pruN 1.26.0-8/debian/po/pt.po 1.30.0-0ubuntu8/debian/po/pt.po
--- 1.26.0-8/debian/po/pt.po	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/pt.po	2019-08-14 02:18:58.000000000 +0000
@@ -1,65 +1,94 @@
-# debconf templates for xorg-x11 package
-# Portuguese translation
-#
-# $Id: pt.po 1042 2006-01-09 07:55:08Z ender $
-#
-# Copyright:
-# Branden Robinson, 2000-2004
-# Eduardo Silva <jobezone@yahoo.com>, 2005
-# Miguel Figueiredo <elmig@debianpt.org>, 2007-2008
+# Portuguese translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: xserver-xorg_debian_po\n"
-"Report-Msgid-Bugs-To: lightdm@packages.debian.org\n"
-"POT-Creation-Date: 2012-03-27 21:31+0200\n"
-"PO-Revision-Date: 2008-09-02 21:27+0100\n"
-"Last-Translator: Miguel Figueiredo <elmig@debianpt.org>\n"
-"Language-Team: Portuguese <traduz@debianPT.org>\n"
-"Language: pt\n"
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2015-09-08 21:50+0000\n"
+"Last-Translator: Ivo Xavier <ivoxavier.8@gmail.com>\n"
+"Language-Team: Portuguese <pt@li.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid "Default display manager:"
-msgstr "Gestor de ecrÃ£ prÃ©-definido:"
+msgstr "Gerenciador de janelas padrÃ£o:"
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "A display manager is a program that provides graphical login capabilities "
 "for the X Window System."
 msgstr ""
-"Um gestor de ecrÃ£ Ã© um programa que fornece capacidades de autenticaÃ§Ã£o "
-"grÃ¡fica ao X Window System."
+"O gerenciador de tela Ã© um programa que fornece a capacidade de um login "
+"grÃ¡fico para o X Sistema de Janelas"
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Only one display manager can manage a given X server, but multiple display "
 "manager packages are installed. Please select which display manager should "
 "run by default."
 msgstr ""
-"Apenas um Ãºnico gestor de ecrÃ£ pode gerir um dado servidor X, mas estÃ£o "
-"instalados vÃ¡rios pacotes de gestores de ecrÃ£. Por favor escolha qual o "
-"gestor de ecrÃ£ que deve ser executado por omissÃ£o."
+"Apenas um gerenciador de janela pode gerenciar um determinado servidor X, "
+"mas vÃ¡rios pacotes de gerenciador de janelas estÃ£o instalados. Por favor, "
+"selecione qual gerenciador de janelas deve ser executado por padrÃ£o."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Multiple display managers can run simultaneously if they are configured to "
 "manage different servers; to achieve this, configure the display managers "
 "accordingly, edit each of their init scripts in /etc/init.d, and disable the "
 "check for a default display manager."
 msgstr ""
-"Podem correr simultaneamente vÃ¡rios gestores de ecrÃ£ se estes estiverem "
-"configurados para gerir diferentes servidores; para alcanÃ§ar isto, configure "
-"os gestores de ecrÃ£ de acordo, edite cada um dos seus scripts 'init' em /etc/"
-"init.d, e desligue a verificaÃ§Ã£o de um gestor de ecrÃ£ prÃ©-definido."
+"MÃºltiplos gerenciadores de telas podem correr em simultÃ¢neo, se estiverem "
+"configurados para gerir diferentes servidores; para   que seja possÃ­vel, "
+"configure o gerenciador de tela corretamente, edite cada um dos seus scripts "
+"de iniciaÃ§Ã£o em /etc/init.d, e desative a opÃ§Ã£o de gerenciador de telas "
+"padrÃ£o."
+
+#~ msgid "Cancel"
+#~ msgstr "Cancelar"
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
+#~ msgstr ""
+#~ "Tem a certeza que deseja fechar todos os programas e reiniciar o computador?"
+
+#~ msgid "Restart"
+#~ msgstr "Reiniciar"
+
+#~ msgid "Shutdown"
+#~ msgstr "Encerrar"
+
+#~ msgid "Hibernate"
+#~ msgstr "Hibernar"
+
+#~ msgid "Restart..."
+#~ msgstr "Reiniciar..."
+
+#~ msgid "Shutdown..."
+#~ msgstr "Encerrar..."
+
+#~ msgid "Suspend"
+#~ msgstr "Suspender"
+
+#~ msgid ""
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+#~ msgstr ""
+#~ "Tem certeza que quer fechar todos os programas e desligar o computador?"
+
+#~ msgid "Large Font"
+#~ msgstr "Fonte Grande"
diff -pruN 1.26.0-8/debian/po/pt_BR.po 1.30.0-0ubuntu8/debian/po/pt_BR.po
--- 1.26.0-8/debian/po/pt_BR.po	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/pt_BR.po	2019-08-14 02:18:58.000000000 +0000
@@ -1,104 +1,86 @@
-# Brazilian Portuguese translation (xdm) 
-# debconf templates for xdm package
+# Brazilian Portuguese translation for lightdm
+# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2010.
 #
-# $Id: pt_BR.po 1042 2006-01-09 07:55:08Z ender $
-#
-# Copyrights:
-#
-# This file is distributed under the same license as the xdm package.
-# Please see debian/copyright.
-#
-#    Translators, if you are not familiar with the PO format, gettext
-#    documentation is worth reading, especially sections dedicated to
-#    this format, e.g. by running:
-#         info -n '(gettext)PO Files'
-#         info -n '(gettext)Header Entry'
-#
-#    Some information specific to po-debconf are available at
-#            /usr/share/doc/po-debconf/README-trans
-#         or http://www.debian.org/intl/l10n/po-debconf/README-trans
-#
-#    Developers do not need to manually edit POT or PO files.
-#
-# Branden Robinson, 2000-2004.
-# Gustavo Noronha Silva, 2001.
-# Henrique de Moraes Holschuh, 2001.
-# AndrÃ© LuÃ­s Lopes <andrelop@debian.org>, 2001-2005.
-# Eder L. Marques <frolic@debian-ce.org>, 2007.
 msgid ""
 msgstr ""
-"Project-Id-Version: xdm 1:1.0.5-2\n"
-"Report-Msgid-Bugs-To: lightdm@packages.debian.org\n"
-"POT-Creation-Date: 2012-03-27 21:31+0200\n"
-"PO-Revision-Date: 2007-03-27 01:16-0300\n"
-"Last-Translator: Eder L. Marques <frolic@debian-ce.org>\n"
-"Language-Team:  l10n portuguese <debian-l10n-portuguese@lists.debian.org>\n"
-"Language: \n"
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2011-08-05 20:50+0000\n"
+"Last-Translator: AndrÃ© Gondim <Unknown>\n"
+"Language-Team: Brazilian Portuguese <pt_BR@li.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"pt_BR utf-8\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid "Default display manager:"
-msgstr "Gerenciador de sessÃ£o padrÃ£o:"
+msgstr ""
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "A display manager is a program that provides graphical login capabilities "
 "for the X Window System."
 msgstr ""
-"Um gerenciador de sessÃ£o Ã© um programa que provÃª capacidades de login "
-"grÃ¡fico para o 'X Window System'."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Only one display manager can manage a given X server, but multiple display "
 "manager packages are installed. Please select which display manager should "
 "run by default."
 msgstr ""
-"Somente um gerenciador de sessÃ£o pode gerenciar um dado servidor X, mas "
-"diversos pacotes de gerenciadores de sessÃ£o estÃ£o instalados. Por favor "
-"selecione qual gerenciador de sessÃ£o deverÃ¡ ser executado por padrÃ£o."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Multiple display managers can run simultaneously if they are configured to "
 "manage different servers; to achieve this, configure the display managers "
 "accordingly, edit each of their init scripts in /etc/init.d, and disable the "
 "check for a default display manager."
 msgstr ""
-"MÃºltiplos gerenciadores de sessÃ£o podem ser executados simultaneamente se "
-"eles estÃ£o configurados para gerenciar servidores diferentes; para conseguir "
-"isso, configure os gerenciadores de sessÃ£o apropriadamente, edite cada um "
-"dos seus scripts de inicializaÃ§Ã£o em /etc/init.d, e desabilite a checagem "
-"por um gerenciador de sessÃ£o padrÃ£o."
 
-#~ msgid "Stop the xdm daemon?"
-#~ msgstr "Deseja parar o daemon xdm?"
+#~ msgid "Cancel"
+#~ msgstr "Cancelar"
 
-#~ msgid ""
-#~ "The X display manager (xdm) daemon is typically stopped on package "
-#~ "upgrade and removal, but it appears to be managing at least one running X "
-#~ "session."
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
 #~ msgstr ""
-#~ "O daemon do gerenciador de sessÃ£o do X (xdm) tipicamente Ã© parado em "
-#~ "atualizaÃ§Ãµes e remoÃ§Ãµes de pacotes, mas ele parece estar gerenciando pelo "
-#~ "menos uma sessÃ£o X em execuÃ§Ã£o. "
+#~ "VocÃª tem certeza de que deseja fechar todos os programas e reiniciar o "
+#~ "computador?"
+
+#~ msgid "Restart"
+#~ msgstr "Reiniciar"
 
 #~ msgid ""
-#~ "If xdm is stopped now, any X sessions it manages will be terminated. "
-#~ "Otherwise, the new version will take effect the next time the daemon is "
-#~ "restarted."
+#~ "Are you sure you want to close all programs and shutdown the computer?"
 #~ msgstr ""
-#~ "Caso o xdm seja parado agora, quaisquer sessÃµes X que ele esteja "
-#~ "gerenciando serÃ£o encerradas. Caso contrÃ¡rio a nova versÃ£o terÃ¡ efeito na "
-#~ "prÃ³xima vez que o daemon for reiniciado."
+#~ "VocÃª tem certeza de que deseja fechar todos os programas e desligar o "
+#~ "computador?"
+
+#~ msgid "Hibernate"
+#~ msgstr "Hibernar"
+
+#~ msgid "Suspend"
+#~ msgstr "Suspender"
+
+#~ msgid "Large Font"
+#~ msgstr "Fonte grande"
+
+#~ msgid "Shutdown"
+#~ msgstr "Desligar"
+
+#~ msgid "Shutdown..."
+#~ msgstr "Desligarâ€¦"
+
+#~ msgid "Restart..."
+#~ msgstr "Reiniciarâ€¦"
diff -pruN 1.26.0-8/debian/po/ro.po 1.30.0-0ubuntu8/debian/po/ro.po
--- 1.26.0-8/debian/po/ro.po	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/ro.po	2019-08-14 02:18:58.000000000 +0000
@@ -1,113 +1,84 @@
-# translation of ro.po to Romanian
-# debconf templates for xorg-x11 package
+# Romanian translation for lightdm
+# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2010.
 #
-# $Id: pothead.in 189 2005-06-11 00:04:27Z branden $
-#
-# Copyright:
-#
-# This file is distributed under the same license as the xorg-x11 package.
-# Please see debian/copyright.
-#
-#    Translators, if you are not familiar with the PO format, gettext
-#    documentation is worth reading, especially sections dedicated to
-#    this format, e.g. by running:
-#         info -n '(gettext)PO Files'
-#         info -n '(gettext)Header Entry'
-#
-#    Some information specific to po-debconf is available at
-#            /usr/share/doc/po-debconf/README-trans
-#         or http://www.debian.org/intl/l10n/po-debconf/README-trans
-#
-#    Developers do not need to manually edit POT or PO files.
-#
-# Branden Robinson, 2000--2004.
-# Eddy PetriÅŸor <eddy.petrisor@gmail.com>, 2005.
-# RuÅŸeÅ£ Zeno <rzeno@cwazy.co.uk>, 2005.
-# Eddy Petrisor <eddy.petrisor@gmail.com>, 2005.
-# Eddy PetriÈ™or <eddy.petrisor@gmail.com>, 2007.
 msgid ""
 msgstr ""
-"Project-Id-Version: ro\n"
-"Report-Msgid-Bugs-To: lightdm@packages.debian.org\n"
-"POT-Creation-Date: 2012-03-27 21:31+0200\n"
-"PO-Revision-Date: 2007-05-31 11:00+0300\n"
-"Last-Translator: Eddy PetriÈ™or <eddy.petrisor@gmail.com>\n"
-"Language-Team: Romanian <debian-l10n-romanian@lists.debian.org>\n"
-"Language: ro\n"
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2010-10-15 10:38+0000\n"
+"Last-Translator: Lucian Adrian Grijincu <lucian.grijincu@gmail.com>\n"
+"Language-Team: Romanian <ro@li.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.11.4\n"
-"Plural-Forms:  nplurals=3; plural=n==1 ? 0 : (n==0 || (n%100 > 0 && n%100 < "
-"20)) ? 1 : 2;\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid "Default display manager:"
-msgstr "Managerul de ecran implicit:"
+msgstr ""
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "A display manager is a program that provides graphical login capabilities "
 "for the X Window System."
 msgstr ""
-"Un manager de ecran este un program care oferÄƒ facilitatea de autentificare "
-"graficÄƒ sistemului de ferestre X."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Only one display manager can manage a given X server, but multiple display "
 "manager packages are installed. Please select which display manager should "
 "run by default."
 msgstr ""
-"Doar un singur manager de ecran poate guverna un anumit server X, dar mai "
-"mulÅ£i manageri de ecran sunt instalaÅ£i. SelectaÅ£i managerul care ar trebui "
-"sÄƒ porneascÄƒ Ã®n mod implicit."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Multiple display managers can run simultaneously if they are configured to "
 "manage different servers; to achieve this, configure the display managers "
 "accordingly, edit each of their init scripts in /etc/init.d, and disable the "
 "check for a default display manager."
 msgstr ""
-"Mai mulÅ£i manageri de ecran pot rula simultan dacÄƒ sunt configuraÅ£i sÄƒ "
-"guverneze servere diferite; pentru a obÅ£ine acest lucru, configuraÅ£i "
-"corespunzÄƒtor managerii de ecran, editaÅ£i fiecare dintre script-urile lor de "
-"iniÅ£ializare din /etc/init.d ÅŸi dezactivaÅ£i testul de manager de ecran "
-"implicit."
-
-#, fuzzy
-#~ msgid "Stop the xdm daemon?"
-#~ msgstr "DoriÅ£i sÄƒ opriÅ£i demonul xdm?"
 
-#, fuzzy
-#~ msgid ""
-#~ "The X display manager (xdm) daemon is typically stopped on package "
-#~ "upgrade and removal, but it appears to be managing at least one running X "
-#~ "session."
+#~ msgid "Large Font"
+#~ msgstr "Font mare"
+
+#~ msgid "Cancel"
+#~ msgstr "RenunÈ›Äƒ"
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
 #~ msgstr ""
-#~ "Demonul X de management al ecranului (xdm) este, Ã®n mod obiÅŸnuit oprit la "
-#~ "Ã®nnoirea sau ÅŸtergerea pachetului, dar se pare cÄƒ acesta guverneazÄƒ cel "
-#~ "puÅ£in o sesiune X care ruleazÄƒ acum. DacÄƒ xdm este oprit acum, orice "
-#~ "sesiune guvernatÄƒ de el va fi terminatÄƒ. Altfel, Ã®l puteÅ£i lÄƒsa pe xdm sÄƒ "
-#~ "ruleze ÅŸi noua versiune va avea efect la urmÄƒtoarea repornire a demonului."
+#~ "Sigur doriÈ›i sÄƒ Ã®nchideÈ›i toate aplicaÈ›iile È™i sÄƒ reporniÈ›i calculatorul?"
+
+#~ msgid "Restart"
+#~ msgstr "ReporneÈ™te"
 
-#, fuzzy
 #~ msgid ""
-#~ "If xdm is stopped now, any X sessions it manages will be terminated. "
-#~ "Otherwise, the new version will take effect the next time the daemon is "
-#~ "restarted."
+#~ "Are you sure you want to close all programs and shutdown the computer?"
 #~ msgstr ""
-#~ "Demonul X de management al ecranului (xdm) este, Ã®n mod obiÅŸnuit oprit la "
-#~ "Ã®nnoirea sau ÅŸtergerea pachetului, dar se pare cÄƒ acesta guverneazÄƒ cel "
-#~ "puÅ£in o sesiune X care ruleazÄƒ acum. DacÄƒ xdm este oprit acum, orice "
-#~ "sesiune guvernatÄƒ de el va fi terminatÄƒ. Altfel, Ã®l puteÅ£i lÄƒsa pe xdm sÄƒ "
-#~ "ruleze ÅŸi noua versiune va avea efect la urmÄƒtoarea repornire a demonului."
+#~ "Sigur doriÈ›i sÄƒ Ã®nchideÈ›i toate aplicaÈ›iile È™i sÄƒ Ã®nchideÈ›i calculatorul?"
+
+#~ msgid "Shutdown"
+#~ msgstr "ÃŽnchide calculatorul"
+
+#~ msgid "Hibernate"
+#~ msgstr "Hibernare"
+
+#~ msgid "Restart..."
+#~ msgstr "Repornire..."
+
+#~ msgid "Shutdown..."
+#~ msgstr "Oprire..."
+
+#~ msgid "Suspend"
+#~ msgstr "Suspendare"
diff -pruN 1.26.0-8/debian/po/ru.po 1.30.0-0ubuntu8/debian/po/ru.po
--- 1.26.0-8/debian/po/ru.po	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/ru.po	2019-08-14 02:18:58.000000000 +0000
@@ -1,103 +1,84 @@
-# translation of xserver-xorg_debian_po_ru.po to Russian
-# debconf templates for xorg-x11 package
-# Russian translation
-#
-# $Id: ru.po 1042 2006-01-09 07:55:08Z ender $
-#
-# Copyrights:
-# Branden Robinson, 2000-2004
-# Ilgiz Kalmetev, 2002, 2003
-# Serge Winitzki, 2003
-#
-# This file is distributed under the same license as the xorg-x11 package.
-# Please see debian/copyright.
-#
-#    Translators, if you are not familiar with the PO format, gettext
-#    documentation is worth reading, especially sections dedicated to
-#    this format, e.g. by running:
-#         info -n '(gettext)PO Files'
-#         info -n '(gettext)Header Entry'
-#
-#    Some information specific to po-debconf are available at
-#            /usr/share/doc/po-debconf/README-trans
-#         or http://www.debian.org/intl/l10n/po-debconf/README-trans
-#
-#    Developers do not need to manually edit POT or PO files.
-# Yuri Kozlov <kozlov.y@gmail.com>, 2005.
+# Russian translation for lightdm
+# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2010.
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: xserver-xorg_debian_po_ru\n"
-"Report-Msgid-Bugs-To: lightdm@packages.debian.org\n"
-"POT-Creation-Date: 2012-03-27 21:31+0200\n"
-"PO-Revision-Date: 2007-03-22 12:07+0300\n"
-"Last-Translator: asv <alyoshin@pisem.net>\n"
-"Language-Team: Russian <debian-l10n-russian@lists.debian.org>\n"
-"Language: ru\n"
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2011-07-26 18:23+0000\n"
+"Last-Translator: Alexey Ivanov <alexey.ivanes@gmail.com>\n"
+"Language-Team: Russian <ru@li.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.9.1\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid "Default display manager:"
-msgstr "ÐœÐµÐ½ÐµÐ´Ð¶ÐµÑ€ Ð´Ð¸ÑÐ¿Ð»ÐµÐµÐ² Ð¿Ð¾ ÑƒÐ¼Ð¾Ð»Ñ‡Ð°Ð½Ð¸ÑŽ:"
+msgstr ""
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "A display manager is a program that provides graphical login capabilities "
 "for the X Window System."
 msgstr ""
-"ÐœÐµÐ½ÐµÐ´Ð¶ÐµÑ€ Ð´Ð¸ÑÐ¿Ð»ÐµÐµÐ² -- ÑÑ‚Ð¾ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð¼Ð°, ÐºÐ¾Ñ‚Ð¾Ñ€Ð°Ñ Ð¾Ð±ÐµÑÐ¿ÐµÑ‡Ð¸Ð²Ð°ÐµÑ‚ Ð²Ð¾Ð·Ð¼Ð¾Ð¶Ð½Ð¾ÑÑ‚ÑŒ "
-"Ð³Ñ€Ð°Ñ„Ð¸Ñ‡ÐµÑÐºÐ¾Ð³Ð¾ Ð²Ñ…Ð¾Ð´Ð° Ð² ÑÐ¸ÑÑ‚ÐµÐ¼Ñƒ Ð´Ð»Ñ X Window System."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Only one display manager can manage a given X server, but multiple display "
 "manager packages are installed. Please select which display manager should "
 "run by default."
 msgstr ""
-"Ð”Ð°Ð½Ð½Ñ‹Ð¹ X-ÑÐµÑ€Ð²ÐµÑ€ Ð¼Ð¾Ð¶ÐµÑ‚ Ð¾Ð±ÑÐ»ÑƒÐ¶Ð¸Ð²Ð°Ñ‚ÑŒ Ñ‚Ð¾Ð»ÑŒÐºÐ¾ Ð¾Ð´Ð¸Ð½ Ð¼ÐµÐ½ÐµÐ´Ð¶ÐµÑ€ Ð´Ð¸ÑÐ¿Ð»ÐµÐµÐ², Ð½Ð¾ "
-"ÑƒÑÑ‚Ð°Ð½Ð¾Ð²Ð»ÐµÐ½Ð¾ Ð½ÐµÑÐºÐ¾Ð»ÑŒÐºÐ¾ Ð¿Ð°ÐºÐµÑ‚Ð¾Ð² Ð¼ÐµÐ½ÐµÐ´Ð¶ÐµÑ€Ð¾Ð² Ð´Ð¸ÑÐ¿Ð»ÐµÐµÐ². ÐŸÐ¾Ð¶Ð°Ð»ÑƒÐ¹ÑÑ‚Ð°, Ð²Ñ‹Ð±ÐµÑ€Ð¸Ñ‚Ðµ "
-"Ð¼ÐµÐ½ÐµÐ´Ð¶ÐµÑ€ Ð´Ð¸ÑÐ¿Ð»ÐµÐµÐ², ÐºÐ¾Ñ‚Ð¾Ñ€Ñ‹Ð¹ Ð´Ð¾Ð»Ð¶ÐµÐ½ Ð·Ð°Ð¿ÑƒÑÐºÐ°Ñ‚ÑŒÑÑ Ð¿Ð¾ ÑƒÐ¼Ð¾Ð»Ñ‡Ð°Ð½Ð¸ÑŽ."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Multiple display managers can run simultaneously if they are configured to "
 "manage different servers; to achieve this, configure the display managers "
 "accordingly, edit each of their init scripts in /etc/init.d, and disable the "
 "check for a default display manager."
 msgstr ""
-"ÐÐµÑÐºÐ¾Ð»ÑŒÐºÐ¾ Ð¼ÐµÐ½ÐµÐ´Ð¶ÐµÑ€Ð¾Ð² Ð´Ð¸ÑÐ¿Ð»ÐµÐµÐ² Ð¼Ð¾Ð³ÑƒÑ‚ Ð·Ð°Ð¿ÑƒÑÐºÐ°Ñ‚ÑŒÑÑ Ð¾Ð´Ð½Ð¾Ð²Ñ€ÐµÐ¼ÐµÐ½Ð½Ð¾, ÐµÑÐ»Ð¸ Ð¾Ð½Ð¸ "
-"Ð½Ð°ÑÑ‚Ñ€Ð¾ÐµÐ½Ñ‹ Ð½Ð° Ð¾Ð±ÑÐ»ÑƒÐ¶Ð¸Ð²Ð°Ð½Ð¸Ðµ Ñ€Ð°Ð·Ð½Ñ‹Ñ… ÑÐµÑ€Ð²ÐµÑ€Ð¾Ð²; Ñ‡Ñ‚Ð¾Ð±Ñ‹ Ð´Ð¾Ð±Ð¸Ñ‚ÑŒÑÑ ÑÑ‚Ð¾Ð³Ð¾,  Ð½Ð°ÑÑ‚Ñ€Ð¾Ð¹Ñ‚Ðµ "
-"Ð¼ÐµÐ½ÐµÐ´Ð¶ÐµÑ€Ñ‹ Ð´Ð¸ÑÐ¿Ð»ÐµÐµÐ² ÑÐ¾Ð¾Ñ‚Ð²ÐµÑ‚ÑÑ‚Ð²ÐµÐ½Ð½Ð¾, Ð¾Ñ‚Ñ€ÐµÐ´Ð°ÐºÑ‚Ð¸Ñ€ÑƒÐ¹Ñ‚Ðµ Ð¸Ñ… ÑÑ†ÐµÐ½Ð°Ñ€Ð¸Ð¸ Ð¸Ð½Ð¸Ñ†Ð¸Ð°Ð»Ð¸Ð·Ð°Ñ†Ð¸Ð¸ "
-"Ð² /etc/init.d Ð¸ Ð¾Ñ‚ÐºÐ»ÑŽÑ‡Ð¸Ñ‚Ðµ Ð¿Ñ€Ð¾Ð²ÐµÑ€ÐºÑƒ Ð¼ÐµÐ½ÐµÐ´Ð¶ÐµÑ€Ð° Ð´Ð¸ÑÐ¿Ð»ÐµÐµÐ² Ð¿Ð¾ ÑƒÐ¼Ð¾Ð»Ñ‡Ð°Ð½Ð¸ÑŽ."
 
-#~ msgid "Stop the xdm daemon?"
-#~ msgstr "ÐžÑÑ‚Ð°Ð½Ð¾Ð²Ð¸Ñ‚ÑŒ ÑÐµÑ€Ð²ÐµÑ€-Ð´ÐµÐ¼Ð¾Ð½ xdm?"
+#~ msgid "Large Font"
+#~ msgstr "ÐšÑ€ÑƒÐ¿Ð½Ñ‹Ð¹ ÑˆÑ€Ð¸Ñ„Ñ‚"
 
-#~ msgid ""
-#~ "The X display manager (xdm) daemon is typically stopped on package "
-#~ "upgrade and removal, but it appears to be managing at least one running X "
-#~ "session."
+#~ msgid "Cancel"
+#~ msgstr "ÐžÑ‚Ð¼ÐµÐ½Ð°"
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
 #~ msgstr ""
-#~ "Ð¡ÐµÑ€Ð²ÐµÑ€-Ð´ÐµÐ¼Ð¾Ð½ Ð¼ÐµÐ½ÐµÐ´Ð¶ÐµÑ€Ð° X-Ð´Ð¸ÑÐ¿Ð»ÐµÐµÐ² (xdm) Ð¾Ð±Ñ‹Ñ‡Ð½Ð¾ Ð¾ÑÑ‚Ð°Ð½Ð°Ð²Ð»Ð¸Ð²Ð°ÑŽÑ‚ Ð¿Ñ€Ð¸ "
-#~ "Ð¾Ð±Ð½Ð¾Ð²Ð»ÐµÐ½Ð¸Ð¸ Ð¸Ð»Ð¸ ÑƒÐ´Ð°Ð»ÐµÐ½Ð¸Ð¸ Ð¿Ð°ÐºÐµÑ‚Ð°, Ð½Ð¾, ÐºÐ°Ð¶ÐµÑ‚ÑÑ, Ñ‡Ñ‚Ð¾ xdm ÑÐµÐ¹Ñ‡Ð°Ñ ÑƒÐ¿Ñ€Ð°Ð²Ð»ÑÐµÑ‚ Ð¿Ð¾ "
-#~ "ÐºÑ€Ð°Ð¹Ð½ÐµÐ¹ Ð¼ÐµÑ€Ðµ Ð¾Ð´Ð½Ð¸Ð¼ X-ÑÐµÐ°Ð½ÑÐ¾Ð¼."
+#~ "Ð’Ñ‹ Ð´ÐµÐ¹ÑÑ‚Ð²Ð¸Ñ‚ÐµÐ»ÑŒÐ½Ð¾ Ñ…Ð¾Ñ‚Ð¸Ñ‚Ðµ Ð·Ð°ÐºÑ€Ñ‹Ñ‚ÑŒ Ð²ÑÐµ Ð¿Ñ€Ð¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð¸ Ð¿ÐµÑ€ÐµÐ·Ð°Ð³Ñ€ÑƒÐ·Ð¸Ñ‚ÑŒ ÐºÐ¾Ð¼Ð¿ÑŒÑŽÑ‚ÐµÑ€?"
 
 #~ msgid ""
-#~ "If xdm is stopped now, any X sessions it manages will be terminated. "
-#~ "Otherwise, the new version will take effect the next time the daemon is "
-#~ "restarted."
+#~ "Are you sure you want to close all programs and shutdown the computer?"
 #~ msgstr ""
-#~ "Ð•ÑÐ»Ð¸ ÑÐµÐ¹Ñ‡Ð°Ñ Ð¾ÑÑ‚Ð°Ð½Ð¾Ð²Ð¸Ñ‚ÑŒ xdm, Ñ‚Ð¾ Ð²ÑÐµ ÑƒÐ¿Ñ€Ð°Ð²Ð»ÑÐµÐ¼Ñ‹Ðµ Ð¸Ð¼ X-ÑÐµÐ°Ð½ÑÑ‹ Ð±ÑƒÐ´ÑƒÑ‚ "
-#~ "Ð¿Ñ€ÐµÑ€Ð²Ð°Ð½Ñ‹. Ð˜Ð»Ð¸ Ð²Ñ‹ Ð¼Ð¾Ð¶ÐµÑ‚Ðµ Ð½Ðµ Ð¾ÑÑ‚Ð°Ð½Ð°Ð²Ð»Ð¸Ð²Ð°Ñ‚ÑŒ xdm, Ð¸ Ñ‚Ð¾Ð³Ð´Ð° Ð½Ð¾Ð²Ð°Ñ Ð²ÐµÑ€ÑÐ¸Ñ Ð±ÑƒÐ´ÐµÑ‚ "
-#~ "Ð·Ð°Ð³Ñ€ÑƒÐ¶ÐµÐ½Ð° Ñ‚Ð¾Ð³Ð´Ð°, ÐºÐ¾Ð³Ð´Ð° xdm ÑÐ½Ð¾Ð²Ð° Ð¿ÐµÑ€ÐµÐ·Ð°Ð¿ÑƒÑÑ‚ÑÑ‚."
+#~ "Ð’Ñ‹ Ð´ÐµÐ¹ÑÑ‚Ð²Ð¸Ñ‚ÐµÐ»ÑŒÐ½Ð¾ Ñ…Ð¾Ñ‚Ð¸Ñ‚Ðµ Ð·Ð°ÐºÑ€Ñ‹Ñ‚ÑŒ Ð²ÑÐµ Ð¿Ñ€Ð¸Ð»Ð¾Ð¶ÐµÐ½Ð¸Ñ Ð¸ Ð²Ñ‹ÐºÐ»ÑŽÑ‡Ð¸Ñ‚ÑŒ ÐºÐ¾Ð¼Ð¿ÑŒÑŽÑ‚ÐµÑ€?"
+
+#~ msgid "Hibernate"
+#~ msgstr "Ð¡Ð¿ÑÑ‰Ð¸Ð¹ Ñ€ÐµÐ¶Ð¸Ð¼"
+
+#~ msgid "Suspend"
+#~ msgstr "Ð–Ð´ÑƒÑ‰Ð¸Ð¹ Ñ€ÐµÐ¶Ð¸Ð¼"
+
+#~ msgid "Restart"
+#~ msgstr "ÐŸÐµÑ€ÐµÐ·Ð°Ð³Ñ€ÑƒÐ·Ð¸Ñ‚ÑŒ"
+
+#~ msgid "Shutdown"
+#~ msgstr "Ð’Ñ‹ÐºÐ»ÑŽÑ‡Ð¸Ñ‚ÑŒ"
+
+#~ msgid "Restart..."
+#~ msgstr "ÐŸÐµÑ€ÐµÐ·Ð°Ð³Ñ€ÑƒÐ·Ð¸Ñ‚ÑŒ..."
+
+#~ msgid "Shutdown..."
+#~ msgstr "Ð’Ñ‹ÐºÐ»ÑŽÑ‡Ð¸Ñ‚ÑŒ..."
diff -pruN 1.26.0-8/debian/po/sc.po 1.30.0-0ubuntu8/debian/po/sc.po
--- 1.26.0-8/debian/po/sc.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/sc.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,51 @@
+# Sardinian translation for lightdm
+# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2012.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2012-11-27 18:07+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Sardinian <sc@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
diff -pruN 1.26.0-8/debian/po/sd.po 1.30.0-0ubuntu8/debian/po/sd.po
--- 1.26.0-8/debian/po/sd.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/sd.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,51 @@
+# Sindhi translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2011-10-15 16:41+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Sindhi <sd@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
diff -pruN 1.26.0-8/debian/po/shn.po 1.30.0-0ubuntu8/debian/po/shn.po
--- 1.26.0-8/debian/po/shn.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/shn.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,51 @@
+# Shan translation for lightdm
+# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2012.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2012-01-18 13:54+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Shan <shn@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
diff -pruN 1.26.0-8/debian/po/si.po 1.30.0-0ubuntu8/debian/po/si.po
--- 1.26.0-8/debian/po/si.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/si.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,51 @@
+# Sinhalese translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2011-10-02 22:24+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Sinhalese <si@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
diff -pruN 1.26.0-8/debian/po/sk.po 1.30.0-0ubuntu8/debian/po/sk.po
--- 1.26.0-8/debian/po/sk.po	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/sk.po	2019-08-14 02:18:58.000000000 +0000
@@ -1,83 +1,92 @@
-# debconf templates for xorg-x11 package
-# Slovak translation
-# $Id: sk.po 1042 2006-01-09 07:55:08Z ender $
-#
-# Copyrights:
-# Branden Robinson, 2000-2004
-# Miroslav Kure <kurem@debian.cz>, 2004
-# Peter Mann <Peter.Mann@tuke.sk>, 2005
+# Slovak translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: xorg-x11\n"
-"Report-Msgid-Bugs-To: lightdm@packages.debian.org\n"
-"POT-Creation-Date: 2012-03-27 21:31+0200\n"
-"PO-Revision-Date: 2007-03-22 09:30+0100\n"
-"Last-Translator: Peter Mann <Peter.Mann@tuke.sk>\n"
-"Language-Team: Slovak <sk-i18n@lists.linux.sk>\n"
-"Language: sk\n"
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2016-01-30 13:59+0000\n"
+"Last-Translator: Dusan Kazik <prescott66@gmail.com>\n"
+"Language-Team: Slovak <sk@li.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid "Default display manager:"
-msgstr "ZvoÄ¾te predvolenÃ©ho sprÃ¡vcu obrazovky:"
+msgstr "PredvolenÃ½ sprÃ¡vca zobrazenia:"
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "A display manager is a program that provides graphical login capabilities "
 "for the X Window System."
 msgstr ""
-"SprÃ¡vca obrazovky je program, ktorÃ½ ponÃºka grafickÃ© prihlÃ¡senie do systÃ©mu X "
-"Window."
+"SprÃ¡vca zobrazenia je program, ktorÃ½ poskytuje moÅ¾nosti grafickÃ©ho "
+"prihlÃ¡senia pre systÃ©m okien X."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Only one display manager can manage a given X server, but multiple display "
 "manager packages are installed. Please select which display manager should "
 "run by default."
 msgstr ""
-"MÃ¡te nainÅ¡talovanÃ½ch viac sprÃ¡vcov obrazovky, ale iba jeden mÃ´Å¾e obsluhovaÅ¥ "
-"danÃ½ X server. ZvoÄ¾te si sprÃ¡vcu, ktorÃ½ bude predvolenÃ½."
+"Iba jeden sprÃ¡vca zobrazenia mÃ´Å¾e spravovaÅ¥ danÃ½ server X, ale je "
+"nainÅ¡talovanÃ½ch viacero balÃ­kov sprÃ¡vcov zobrazenia. ProsÃ­m, vyberte, ktorÃ½ "
+"sprÃ¡vca zobrazenia by mal byÅ¥ predvolene spustenÃ½."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Multiple display managers can run simultaneously if they are configured to "
 "manage different servers; to achieve this, configure the display managers "
 "accordingly, edit each of their init scripts in /etc/init.d, and disable the "
 "check for a default display manager."
 msgstr ""
-"SÃºbeÅ¾ne mÃ´Å¾e byÅ¥ spustenÃ½ch viac sprÃ¡vcov obrazovky, ale iba v prÃ­pade "
-"viacero rozdielnych serverov. Pre dosiahnutie takÃ©hoto nastavenia ich musÃ­te "
-"sprÃ¡vne nastaviÅ¥, upraviÅ¥ ich spÃºÅ¡Å¥acie skripty v /etc/init.d a zakÃ¡zaÅ¥ "
-"kontrolu predvolenÃ©ho sprÃ¡vcu obrazovky."
+"Viacero sprÃ¡vcov zobrazenia mÃ´Å¾e byÅ¥ spustenÃ½ch naraz, ak sÃº nastavenÃ©, aby "
+"spravovali rozliÄnÃ© servery. Toto docielite adekvÃ¡tnym nastavenÃ­m sprÃ¡vcov "
+"zobrazenia. Upravte kaÅ¾dÃ©mu inicializaÄnÃ½ skript v /etc/init.d a zakÃ¡Å¾te "
+"kontrolu predvolenÃ©ho sprÃ¡vcu zobrazenia."
 
-#~ msgid "Stop the xdm daemon?"
-#~ msgstr "ZastaviÅ¥ sprÃ¡vcu obrazovky xdm?"
+#~ msgid "Shutdown"
+#~ msgstr "VypnÃºÅ¥"
 
-#~ msgid ""
-#~ "The X display manager (xdm) daemon is typically stopped on package "
-#~ "upgrade and removal, but it appears to be managing at least one running X "
-#~ "session."
+#~ msgid "Large Font"
+#~ msgstr "VeÄ¾kÃ© pÃ­smo"
+
+#~ msgid "Cancel"
+#~ msgstr "ZruÅ¡iÅ¥"
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
 #~ msgstr ""
-#~ "SprÃ¡vca obrazovky xdm (X display manager) sa zvykne zastaviÅ¥ pri "
-#~ "aktualizÃ¡cii alebo odstraÅˆovanÃ­ balÃ­ka, lenÅ¾e teraz to vyzerÃ¡ tak, Å¾e mÃ¡ "
-#~ "na starosti aspoÅˆ jedno ÄalÅ¡ie spustenÃ© X sedenie."
+#~ "Ste si istÃ½, Å¾e chcete zavrieÅ¥ vÅ¡etky programy a reÅ¡tartovaÅ¥ poÄÃ­taÄ?"
+
+#~ msgid "Restart"
+#~ msgstr "ReÅ¡tartovaÅ¥"
 
 #~ msgid ""
-#~ "If xdm is stopped now, any X sessions it manages will be terminated. "
-#~ "Otherwise, the new version will take effect the next time the daemon is "
-#~ "restarted."
-#~ msgstr ""
-#~ "Ak by sa teraz xdm zastavil, vÅ¡etky nÃ­m ovlÃ¡danÃ© X sedenia by sa "
-#~ "ukonÄili. V opaÄnom prÃ­pade mÃ´Å¾ete nechaÅ¥ xdm spustenÃ½, priÄom novÃ¡ "
-#~ "verzia sa spustÃ­ pri ÄalÅ¡om reÅ¡tarte xdm."
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+#~ msgstr "Ste si istÃ½, Å¾e chcete zavrieÅ¥ vÅ¡etky programy a vypnÃºÅ¥ poÄÃ­taÄ?"
+
+#~ msgid "Hibernate"
+#~ msgstr "HibernovaÅ¥"
+
+#~ msgid "Restart..."
+#~ msgstr "ReÅ¡tartovaÅ¥..."
+
+#~ msgid "Shutdown..."
+#~ msgstr "VypnÃºÅ¥..."
+
+#~ msgid "Suspend"
+#~ msgstr "UspaÅ¥"
diff -pruN 1.26.0-8/debian/po/sl.po 1.30.0-0ubuntu8/debian/po/sl.po
--- 1.26.0-8/debian/po/sl.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/sl.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,94 @@
+# Slovenian translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2016-11-16 16:11+0000\n"
+"Last-Translator: renato <Unknown>\n"
+"Language-Team: Slovenian <sl@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr "Privzeti upravitelj zaslona:"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+"Upravitelj zaslona je program, ki nam omogoÄa grafiÄno prijavo v X okenski "
+"sistem."
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+"Le en upravitelj zaslona lahko upravlja dani X streÅ¾nik, a je nameÅ¡Äenih veÄ "
+"paketov upraviteljev zaslona. Prosimo, izberite kateri upravitelj zaslona "
+"naj se privzeto zaÅ¾ene."
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
+"VeÄ upraviteljev zaslona lahko teÄe istoÄasno, Äe so nastavljeni za "
+"upravljanje razliÄnih streÅ¾nikov; da to storite, nastavite upravitelje "
+"zaslona po tem, uredite vse njihove skripte init v /etc/init.d in "
+"onemogoÄite preverjanje za privzetim upraviteljem zaslona."
+
+#~ msgid "Large Font"
+#~ msgstr "Velika pisava"
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
+#~ msgstr ""
+#~ "Ali ste prepriÄani, da Å¾elite zapreti vse programe in ponovno zagnati "
+#~ "raÄunalnik?"
+
+#~ msgid ""
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+#~ msgstr ""
+#~ "Ali ste prepriÄani, da Å¾elite zapreti vse programe in izklopiti raÄunalnik?"
+
+#~ msgid "Shutdown..."
+#~ msgstr "Izklopi ..."
+
+#~ msgid "Cancel"
+#~ msgstr "PrekliÄi"
+
+#~ msgid "Hibernate"
+#~ msgstr "V mirovanje"
+
+#~ msgid "Restart..."
+#~ msgstr "Ponovni zagon ..."
+
+#~ msgid "Restart"
+#~ msgstr "Ponovno zaÅ¾eni"
+
+#~ msgid "Shutdown"
+#~ msgstr "Izklopi"
+
+#~ msgid "Suspend"
+#~ msgstr "V pripravljenost"
diff -pruN 1.26.0-8/debian/po/sq.po 1.30.0-0ubuntu8/debian/po/sq.po
--- 1.26.0-8/debian/po/sq.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/sq.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,86 @@
+# Albanian translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2011-04-14 13:10+0000\n"
+"Last-Translator: Lulzim <Unknown>\n"
+"Language-Team: Albanian <sq@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
+
+#~ msgid "Cancel"
+#~ msgstr "Anullo"
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
+#~ msgstr ""
+#~ "Jeni i sigurtÃ« qÃ« dÃ«shironi t'i mbyllni tÃ« gjitha programet dhe tÃ« rindizni "
+#~ "kompjuterin?"
+
+#~ msgid "Restart"
+#~ msgstr "Rindiz"
+
+#~ msgid ""
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+#~ msgstr ""
+#~ "Jeni i sigurtÃ« qÃ« dÃ«shironi t'i mbyllni tÃ« gjitha programet dhe tÃ« fikni "
+#~ "kompjuterin?"
+
+#~ msgid "Shutdown"
+#~ msgstr "Fike"
+
+#~ msgid "Restart..."
+#~ msgstr "Rindiz..."
+
+#~ msgid "Shutdown..."
+#~ msgstr "Fike..."
+
+#~ msgid "Large Font"
+#~ msgstr "GÃ«rma tÃ« MÃ«dha"
+
+#~ msgid "Hibernate"
+#~ msgstr "Hiberno"
+
+#~ msgid "Suspend"
+#~ msgstr "Pezullo"
diff -pruN 1.26.0-8/debian/po/sr.po 1.30.0-0ubuntu8/debian/po/sr.po
--- 1.26.0-8/debian/po/sr.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/sr.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,95 @@
+# Serbian translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+# ÐœÐ¸Ñ€Ð¾ÑÐ»Ð°Ð² ÐÐ¸ÐºÐ¾Ð»Ð¸Ñ› <miroslavnikolic@rocketmail.com>, 2011.
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2013-10-22 19:35+0000\n"
+"Last-Translator: ÐœÐ¸Ñ€Ð¾ÑÐ»Ð°Ð² ÐÐ¸ÐºÐ¾Ð»Ð¸Ñ› <miroslavnikolic@rocketmail.com>\n"
+"Language-Team: Launchpad Serbian Translators\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+"Language: sr\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr "ÐžÑÐ½Ð¾Ð²Ð½Ð¸ ÑƒÐ¿Ñ€Ð°Ð²Ð½Ð¸Ðº Ð¿Ñ€Ð¸ÐºÐ°Ð·Ð°:"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+"Ð£Ð¿Ñ€Ð°Ð²Ð½Ð¸Ðº Ð¿Ñ€Ð¸ÐºÐ°Ð·Ð° Ñ˜Ðµ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼ ÐºÐ¾Ñ˜Ð¸ Ð¾Ð±ÐµÐ·Ð±ÐµÑ’ÑƒÑ˜Ðµ Ð¼Ð¾Ð³ÑƒÑ›Ð½Ð¾ÑÑ‚Ð¸ Ð³Ñ€Ð°Ñ„Ð¸Ñ‡ÐºÐ¾Ð³ "
+"Ð¿Ñ€Ð¸Ñ˜Ð°Ð²Ñ™Ð¸Ð²Ð°ÑšÐ° Ð·Ð° ÑÐ¸ÑÑ‚ÐµÐ¼ Ð¿Ñ€Ð¾Ð·Ð¾Ñ€Ð° Ð˜ÐºÑ."
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+"Ð¡Ð°Ð¼Ð¾ Ñ˜ÐµÐ´Ð°Ð½ ÑƒÐ¿Ñ€Ð°Ð²Ð½Ð¸Ðº Ð¿Ñ€Ð¸ÐºÐ°Ð·Ð° Ð¼Ð¾Ð¶Ðµ ÑƒÐ¿Ñ€Ð°Ð²Ñ™Ð°Ñ‚Ð¸ Ð´Ð°Ñ‚Ð¸Ð¼ Ð˜ÐºÑ ÑÐµÑ€Ð²ÐµÑ€Ð¾Ð¼, Ð°Ð»Ð¸ Ñ˜Ðµ "
+"Ð¸Ð½ÑÑ‚Ð°Ð»Ð¸Ñ€Ð°Ð½Ð¾ Ð½ÐµÐºÐ¾Ð»Ð¸ÐºÐ¾ Ð¿Ð°ÐºÐµÑ‚Ð° ÑƒÐ¿Ñ€Ð°Ð²Ð½Ð¸ÐºÐ° Ð¿Ñ€Ð¸ÐºÐ°Ð·Ð°. ÐœÐ¾Ð»Ð¸Ð¼ Ð¸Ð·Ð°Ð±ÐµÑ€Ð¸Ñ‚Ðµ ÐºÐ¾Ñ˜Ð¸ Ñ›Ðµ "
+"ÑƒÐ¿Ñ€Ð°Ð²Ð½Ð¸Ðº Ð¿Ñ€Ð¸ÐºÐ°Ð·Ð° Ð±Ð¸Ñ‚Ð¸ Ð¿Ð¾Ð´Ñ€Ð°Ð·ÑƒÐ¼ÐµÐ²Ð°Ð½Ð¾ Ð¿Ð¾ÐºÑ€ÐµÐ½ÑƒÑ‚."
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
+"Ð’Ð¸ÑˆÐµ ÑƒÐ¿Ñ€Ð°Ð²Ð½Ð¸ÐºÐ° Ð¿Ñ€Ð¸ÐºÐ°Ð·Ð° Ð¼Ð¾Ð¶Ðµ Ñ€Ð°Ð´Ð¸Ñ‚Ð¸ Ð¸ÑÑ‚Ð¾Ð²Ñ€ÐµÐ¼ÐµÐ½Ð¾ Ð°ÐºÐ¾ ÑÑƒ Ð¿Ð¾Ð´ÐµÑˆÐµÐ½Ð¸ Ð´Ð° ÑƒÐ¿Ñ€Ð°Ð²Ñ™Ð°Ñ˜Ñƒ "
+"Ñ€Ð°Ð·Ð»Ð¸Ñ‡Ð¸Ñ‚Ð¸Ð¼ ÑÐµÑ€Ð²ÐµÑ€Ð¸Ð¼Ð°; Ð´Ð° Ð¿Ð¾ÑÑ‚Ð¸Ð³Ð½ÐµÑ‚Ðµ Ð¾Ð²Ð¾, Ð¿Ð¾Ð´ÐµÑÐ¸Ñ‚Ðµ ÑƒÐ¿Ñ€Ð°Ð²Ð½Ð¸ÐºÐµ Ð¿Ñ€Ð¸ÐºÐ°Ð·Ð° Ñ‚Ð°ÐºÐ¾ ÑˆÑ‚Ð¾ "
+"Ñ›ÐµÑ‚Ðµ ÑƒÑ€ÐµÐ´Ð¸Ñ‚Ð¸ ÑÐ²Ð°ÐºÑƒ Ð¾Ð´ ÑšÐ¸Ñ…Ð¾Ð²Ð¸Ñ… Ð¿Ð¾ÐºÑ€ÐµÑ‚Ð°Ñ‡ÐºÐ¸Ñ… ÑÐºÑ€Ð¸Ð¿Ñ‚Ð¸ Ñƒ â€ž/etc/init.dâ€œ, Ð¸ "
+"Ð¸ÑÐºÑ™ÑƒÑ‡Ð¸Ñ‚Ð¸ Ð¿Ñ€Ð¾Ð²ÐµÑ€Ñƒ Ð·Ð° Ð¿Ð¾Ð´Ñ€Ð°Ð·ÑƒÐ¼ÐµÐ²Ð°Ð½Ð¸Ð¼ ÑƒÐ¿Ñ€Ð°Ð²Ð½Ð¸ÐºÐ¾Ð¼ Ð¿Ñ€Ð¸ÐºÐ°Ð·Ð°."
+
+#~ msgid "Cancel"
+#~ msgstr "ÐžÑ‚ÐºÐ°Ð¶Ð¸"
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
+#~ msgstr ""
+#~ "Ð”Ð° Ð»Ð¸ ÑÑ‚Ðµ ÑÐ¸Ð³ÑƒÑ€Ð½Ð¸ Ð´Ð° Ð¶ÐµÐ»Ð¸Ñ‚Ðµ Ð´Ð° Ð·Ð°Ñ‚Ð²Ð¾Ñ€Ð¸Ñ‚Ðµ ÑÐ²Ðµ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ðµ Ð¸ Ð´Ð° Ð¿Ð¾Ð½Ð¾Ð²Ð¾ Ð¿Ð¾ÐºÑ€ÐµÐ½ÐµÑ‚Ðµ "
+#~ "Ñ€Ð°Ñ‡ÑƒÐ½Ð°Ñ€?"
+
+#~ msgid "Large Font"
+#~ msgstr "Ð’ÐµÑ›Ð¸ ÑÐ»Ð¾Ð²Ð½Ð¸ Ð»Ð¸ÐºÐ¾Ð²Ð¸"
+
+#~ msgid "Hibernate"
+#~ msgstr "Ð—Ð°Ð¼Ñ€Ð·Ð½Ð¸"
+
+#~ msgid "Restart"
+#~ msgstr "ÐŸÐ¾Ð½Ð¾Ð²Ð¾ Ð¿Ð¾ÐºÑ€ÐµÐ½Ð¸"
+
+#~ msgid ""
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+#~ msgstr ""
+#~ "Ð”Ð° Ð»Ð¸ ÑÑ‚Ðµ ÑÐ¸Ð³ÑƒÑ€Ð½Ð¸ Ð´Ð° Ð¶ÐµÐ»Ð¸Ñ‚Ðµ Ð´Ð° Ð·Ð°Ñ‚Ð²Ð¾Ñ€Ð¸Ñ‚Ðµ ÑÐ²Ðµ Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ðµ Ð¸ Ð´Ð° ÑƒÐ³Ð°ÑÐ¸Ñ‚Ðµ Ñ€Ð°Ñ‡ÑƒÐ½Ð°Ñ€?"
+
+#~ msgid "Shutdown"
+#~ msgstr "Ð£Ð³Ð°ÑÐ¸"
+
+#~ msgid "Shutdown..."
+#~ msgstr "Ð£Ð³Ð°ÑÐ¸..."
+
+#~ msgid "Suspend"
+#~ msgstr "ÐžÐ±ÑƒÑÑ‚Ð°Ð²Ð¸"
+
+#~ msgid "Restart..."
+#~ msgstr "ÐŸÐ¾Ð½Ð¾Ð²Ð¾ Ð¿Ð¾ÐºÑ€ÐµÐ½Ð¸..."
diff -pruN 1.26.0-8/debian/po/sv.po 1.30.0-0ubuntu8/debian/po/sv.po
--- 1.26.0-8/debian/po/sv.po	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/sv.po	2019-08-14 02:18:58.000000000 +0000
@@ -1,104 +1,82 @@
-# debconf templates for xorg-x11 package
-# Swedish translation
-#
-# $Id: sv.po 1042 2006-01-09 07:55:08Z ender $
-#
-# Copyrights:
-# Branden Robinson, 2000-2004
-# André Dahlqvist, 2001
-# Peter Toneby, 2002
-# Mikael Hedin, 2002
-#
-# This file is distributed under the same license as the xorg-x11 package.
-# Please see debian/copyright.
-#
-#    Translators, if you are not familiar with the PO format, gettext
-#    documentation is worth reading, especially sections dedicated to
-#    this format, e.g. by running:
-#         info -n '(gettext)PO Files'
-#         info -n '(gettext)Header Entry'
-#
-#    Some information specific to po-debconf are available at
-#            /usr/share/doc/po-debconf/README-trans
-#         or http://www.debian.org/intl/l10n/po-debconf/README-trans
-#
-#    Developers do not need to manually edit POT or PO files.
+# Swedish translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: xserver-xorg\n"
-"Report-Msgid-Bugs-To: lightdm@packages.debian.org\n"
-"POT-Creation-Date: 2012-03-27 21:31+0200\n"
-"PO-Revision-Date: 2007-03-22 10:43+0100\n"
-"Last-Translator: Daniel Nylander <po@danielnylander.se>\n"
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2011-03-09 23:25+0000\n"
+"Last-Translator: Daniel Nylander <yeager@ubuntu.com>\n"
 "Language-Team: Swedish <sv@li.org>\n"
-"Language: sv\n"
 "MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=ISO-8859-1\n"
+"Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"X-Poedit-Language: Swedish\n"
-"X-Poedit-Country: SWEDEN\n"
-"X-Poedit-SourceCharset: iso-8859-1\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid "Default display manager:"
-msgstr "Standarddisplayhanterare:"
+msgstr ""
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "A display manager is a program that provides graphical login capabilities "
 "for the X Window System."
 msgstr ""
-"En displayhanterare är det program som tillhandahåller grafiska "
-"inloggningsmöjligheter i X Window System."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Only one display manager can manage a given X server, but multiple display "
 "manager packages are installed. Please select which display manager should "
 "run by default."
 msgstr ""
-"Endast en displayhanterare kan hantera en angiven X-server, men flera "
-"displayhanterarpaket kan vara installerade. Välj vilken displayhanterare som "
-"skall köras som standard."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Multiple display managers can run simultaneously if they are configured to "
 "manage different servers; to achieve this, configure the display managers "
 "accordingly, edit each of their init scripts in /etc/init.d, and disable the "
 "check for a default display manager."
 msgstr ""
-"Flera displayhanterare kan köras samtidigt om de är konfigurerade att "
-"hantera olika servrar. För att uppnå detta ska du konfigurera "
-"displayhanterarnas init-skript under /etc/init.d, och inaktivera kontrollen "
-"efter en standarddisplayhanterare."
 
-#~ msgid "Stop the xdm daemon?"
-#~ msgstr "Stoppa xdm-demonen?"
+#~ msgid "Shutdown"
+#~ msgstr "StÃ¤ng av"
 
-#~ msgid ""
-#~ "The X display manager (xdm) daemon is typically stopped on package "
-#~ "upgrade and removal, but it appears to be managing at least one running X "
-#~ "session."
-#~ msgstr ""
-#~ "X-displayhanterardemonen (xdm) stoppas vanligtvis vid paketuppgradering "
-#~ "och borttagning men det verkar som om den hanterar åtminstone en körande "
-#~ "X-session."
+#~ msgid "Large Font"
+#~ msgstr "Stort typsnitt"
+
+#~ msgid "Cancel"
+#~ msgstr "Avbryt"
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
+#~ msgstr "Ã„r du sÃ¤ker pÃ¥ att du vill stÃ¤nga alla program och starta om datorn?"
+
+#~ msgid "Restart"
+#~ msgstr "Starta om"
 
 #~ msgid ""
-#~ "If xdm is stopped now, any X sessions it manages will be terminated. "
-#~ "Otherwise, the new version will take effect the next time the daemon is "
-#~ "restarted."
-#~ msgstr ""
-#~ "Om xdm stoppas nu kommer de X-sessioner som den hanterar att avslutas. Om "
-#~ "inte kommer den nya versionen att bli aktiv nästa gång som demonen "
-#~ "startas om."
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+#~ msgstr "Ã„r du sÃ¤ker pÃ¥ att du vill stÃ¤nga alla program och stÃ¤nga av datorn?"
+
+#~ msgid "Hibernate"
+#~ msgstr "VilolÃ¤ge"
+
+#~ msgid "Restart..."
+#~ msgstr "Starta om..."
+
+#~ msgid "Shutdown..."
+#~ msgstr "StÃ¤ng av..."
+
+#~ msgid "Suspend"
+#~ msgstr "VÃ¤ntelÃ¤ge"
diff -pruN 1.26.0-8/debian/po/ta.po 1.30.0-0ubuntu8/debian/po/ta.po
--- 1.26.0-8/debian/po/ta.po	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/ta.po	2019-08-14 02:18:58.000000000 +0000
@@ -1,78 +1,84 @@
-# translation of templates.po to TAMIL
-# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER
-# This file is distributed under the same license as the PACKAGE package.
+# Tamil translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
 #
-# Dr.T.Vasudevan <agnihot3@gmail.com>, 2007.
 msgid ""
 msgstr ""
-"Project-Id-Version: templates\n"
-"Report-Msgid-Bugs-To: lightdm@packages.debian.org\n"
-"POT-Creation-Date: 2012-03-27 21:31+0200\n"
-"PO-Revision-Date: 2007-03-26 16:49+0530\n"
-"Last-Translator: Dr.T.Vasudevan <agnihot3@gmail.com>\n"
-"Language-Team: TAMIL <ubuntu-l10n-tam@lists.ubuntu.com>\n"
-"Language: \n"
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2011-07-04 05:24+0000\n"
+"Last-Translator: Mel C <melwin.a3@gmail.com>\n"
+"Language-Team: Tamil <ta@li.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.11.4\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid "Default display manager:"
-msgstr "à®®à¯à®©à¯à®©à®¿à®°à¯à®ªà¯à®ªà¯ à®•à®¾à®Ÿà¯à®šà®¿ à®®à¯‡à®²à®¾à®³à®°à¯:"
+msgstr ""
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "A display manager is a program that provides graphical login capabilities "
 "for the X Window System."
 msgstr ""
-"à®•à®¾à®Ÿà¯à®šà®¿ à®®à¯‡à®²à®¾à®³à®°à¯ à®Žà®©à¯à®ªà®¤à¯ à®µà®°à¯ˆà®•à®²à¯ˆ à®‰à®³à¯à®¨à¯à®´à¯ˆà®µà¯ à®‡à®¯à®²à¯à®®à¯ˆà®¯à¯ˆ à®Žà®•à¯à®¸à¯ à®µà®¿à®£à¯à®Ÿà¯‹à®¸à¯ à®…à®®à¯ˆà®ªà¯à®ªà¯à®•à¯à®•à¯ à®¤à®°à¯à®®à¯ "
-"à®¨à®¿à®°à®²à®¾à®•à¯à®®à¯."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Only one display manager can manage a given X server, but multiple display "
 "manager packages are installed. Please select which display manager should "
 "run by default."
 msgstr ""
-"à®’à®°à¯ à®•à¯Šà®Ÿà¯à®•à¯à®•à®ªà¯ à®ªà®Ÿà¯à®Ÿ X à®šà¯‡à®µà¯ˆà®¯à®•à®¤à¯à®¤à®¿à®²à¯ à®’à®°à¯ à®•à®¾à®Ÿà¯à®šà®¿ à®®à¯‡à®²à®¾à®³à®°à¯à®¤à®¾à®©à¯ à®®à¯‡à®²à®¾à®³ à®‡à®¯à®²à¯à®®à¯. à®†à®©à®¾à®²à¯ à®ªà®² à®•à®¾à®Ÿà¯à®šà®¿ "
-"à®®à¯‡à®²à®¾à®³à®°à¯à®•à®³à¯ à®¨à®¿à®±à¯à®µà®ªà¯ à®ªà®Ÿà¯à®Ÿà¯à®³à¯à®³à®©. à®Žà®¤à¯ à®®à¯à®©à¯à®©à®¿à®°à¯à®ªà¯à®ªà®¾à®• à®‡à®°à¯à®•à¯à®• à®µà¯‡à®£à¯à®Ÿà¯à®®à¯ à®Žà®© à®¤à¯‡à®°à¯à®¨à¯à®¤à¯†à®Ÿà¯à®™à¯à®•à®³à¯"
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Multiple display managers can run simultaneously if they are configured to "
 "manage different servers; to achieve this, configure the display managers "
 "accordingly, edit each of their init scripts in /etc/init.d, and disable the "
 "check for a default display manager."
 msgstr ""
-"à®µà¯†à®µà¯à®µà¯‡à®±à¯ à®šà¯‡à®µà¯ˆà®¯à®•à®™à¯à®•à®³à¯ˆ à®®à¯‡à®²à®¾à®³ à®µà®Ÿà®¿à®µà®®à¯ˆà®¤à¯à®¤à®¾à®²à¯ à®ªà®² à®•à®¾à®Ÿà¯à®šà®¿ à®®à¯‡à®²à®¾à®³à®°à¯à®•à®³à¯ à®’à®°à¯‡ à®¨à¯‡à®°à®¤à¯à®¤à®¿à®²à¯ à®‡à®¯à®™à¯à®•à®•à¯ "
-"à®•à¯‚à®Ÿà¯à®®à¯. à®‡à®¤à¯ˆ à®šà¯†à®¯à¯à®¯ à®•à®¾à®Ÿà¯à®šà®¿ à®®à¯‡à®²à®¾à®³à®°à¯à®•à®³à¯ˆ à®¤à®•à¯à®¨à¯à®¤à®¾à®±à¯ à®ªà¯‹à®² à®µà®Ÿà®¿à®µà®®à¯ˆà®¯à¯à®™à¯à®•à®³à¯. à®…à®µà®±à¯à®±à®¿à®©à¯ à®‡à®©à®¿à®Ÿà¯ à®šà®¿à®±à¯ "
-"à®¨à®¿à®°à®²à¯à®•à®³à¯ˆ /etc/init.d à®‡à®²à¯ à®¤à®¿à®°à¯à®¤à¯à®¤à¯à®™à¯à®•à®³à¯. à®®à¯à®©à¯à®©à®¿à®°à¯à®ªà¯à®ªà¯ à®•à®¾à®Ÿà¯à®šà®¿ à®®à¯‡à®²à®¾à®³à®°à¯ à®¤à¯‡à®°à¯à®µà¯ˆ à®šà¯†à®¯à®²à®¿à®´à®•à¯à®•à®šà¯ "
-"à®šà¯†à®¯à¯à®¯à®µà¯à®®à¯."
 
-#~ msgid "Stop the xdm daemon?"
-#~ msgstr "à®Žà®•à¯à®¸à¯à®Ÿà®¿à®Žà®®à¯ à®•à®¿à®™à¯à®•à®°à®©à¯ˆ à®¨à®¿à®±à¯à®¤à¯à®¤à®µà®¾?"
+#~ msgid "Shutdown"
+#~ msgstr "à®®à¯à®´à¯à®¨à®¿à®±à¯à®¤à¯à®¤à®®à¯"
 
-#~ msgid ""
-#~ "The X display manager (xdm) daemon is typically stopped on package "
-#~ "upgrade and removal, but it appears to be managing at least one running X "
-#~ "session."
+#~ msgid "Large Font"
+#~ msgstr "à®¤à®Ÿà®¿à®®à®Žà®´à¯à®¤à¯à®¤à¯à®°à¯"
+
+#~ msgid "Cancel"
+#~ msgstr "à®°à®¤à¯à®¤à¯à®šà¯†à®¯à¯"
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
 #~ msgstr ""
-#~ "à®Žà®•à¯à®¸à¯à®Ÿà®¿à®Žà®®à¯ à®•à®¿à®™à¯à®•à®°à®©à¯ à®µà®´à®•à¯à®•à®®à®¾à®• à®ªà¯Šà®¤à®¿ à®®à¯‡à®²à®¾à®•à¯à®•à®®à¯ à®…à®²à¯à®²à®¤à¯ à®¨à¯€à®•à¯à®•à®®à¯ à®¨à®¿à®•à®´à¯à®®à¯ à®ªà¯‹à®¤à¯ à®¨à®¿à®±à¯à®¤à¯à®¤à®ªà¯ à®ªà®Ÿà¯à®®à¯. "
-#~ "à®†à®©à®¾à®²à¯ à®…à®¤à¯ à®’à®°à¯ à®Žà®•à¯à®¸à¯ à®…à®®à®°à¯à®µà¯ˆà®¯à®¾à®µà®¤à¯ à®‡à®¯à®•à¯à®•à¯à®µà®¤à¯ à®ªà¯‹à®² à®¤à¯†à®°à®¿à®•à®¿à®±à®¤à¯."
+#~ "à®…à®©à¯ˆà®¤à¯à®¤à¯ à®¨à®¿à®°à®²à¯à®•à®³à¯ˆà®¯à¯à®®à¯ à®®à¯‚à®Ÿà®¿ à®•à®£à®¿à®©à®¿à®¯à¯ˆ à®®à¯€à®³à¯à®¤à¯à®µà®•à¯à®•à®®à¯ à®šà¯†à®¯à¯à®¯ à®‰à®±à¯à®¤à®¿à®¯à®¾à®• à®‰à®³à¯à®³à¯€à®°à¯à®•à®³à®¾?"
+
+#~ msgid "Restart"
+#~ msgstr "à®®à¯€à®³à¯à®¤à¯à®µà®•à¯à®•à¯"
+
+#~ msgid "Hibernate"
+#~ msgstr "à®‡à®Ÿà¯ˆ à®‰à®±à®•à¯à®•à®®à¯"
+
+#~ msgid "Restart..."
+#~ msgstr "à®®à¯€à®³à¯à®¤à¯à®µà®•à¯à®•à¯"
+
+#~ msgid "Shutdown..."
+#~ msgstr "à®®à¯à®´à¯à®¨à®¿à®±à¯à®¤à¯à®¤à®®à¯"
+
+#~ msgid "Suspend"
+#~ msgstr "à®’à®¤à¯à®¤à®¿à®ªà¯à®ªà¯‹à®Ÿà¯"
 
 #~ msgid ""
-#~ "If xdm is stopped now, any X sessions it manages will be terminated. "
-#~ "Otherwise, the new version will take effect the next time the daemon is "
-#~ "restarted."
+#~ "Are you sure you want to close all programs and shutdown the computer?"
 #~ msgstr ""
-#~ "à®‡à®ªà¯à®ªà¯‹à®¤à¯ à®Žà®•à¯à®¸à¯à®Ÿà®¿à®Žà®®à¯ à®¨à®¿à®±à¯à®¤à¯à®¤à®ªà¯ à®ªà®Ÿà¯à®Ÿà®¾à®²à¯ à®…à®¤à¯ à®®à¯‡à®²à®¾à®³à¯à®®à¯ à®Žà®•à¯à®¸à¯ à®…à®®à®°à¯à®µà¯à®•à®³à¯ à®¨à®¿à®±à¯à®¤à¯à®¤à®ªà¯ à®ªà®Ÿà¯à®®à¯. à®…à®²à¯à®²à®¤à¯ "
-#~ "à®ªà¯à®¤à®¿à®¯ à®ªà®¤à®¿à®ªà¯à®ªà¯ à®•à®¿à®™à¯à®•à®°à®©à¯ à®…à®Ÿà¯à®¤à¯à®¤ à®®à¯à®±à¯ˆ à®‡à®¯à®™à¯à®•à¯à®®à¯ à®ªà¯‹à®¤à¯ à®šà¯†à®¯à®²à¯ à®²à¯ à®ªà®Ÿà¯à®®à¯."
+#~ "à®…à®©à¯ˆà®¤à¯à®¤à¯ à®¨à®¿à®°à®²à¯à®•à®³à¯ˆà®¯à¯à®®à¯ à®®à¯‚à®Ÿà®¿ à®•à®£à®¿à®©à®¿à®¯à¯ˆ à®®à¯à®´à¯à®¨à®¿à®±à¯à®¤à¯à®¤à®®à¯ à®šà¯†à®¯à¯à®¯ à®‰à®±à¯à®¤à®¿à®¯à®¾à®• à®‰à®³à¯à®³à¯€à®°à¯à®•à®³à®¾?"
diff -pruN 1.26.0-8/debian/po/te.po 1.30.0-0ubuntu8/debian/po/te.po
--- 1.26.0-8/debian/po/te.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/te.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,51 @@
+# Telugu translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2011-08-02 13:14+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Telugu <te@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
diff -pruN 1.26.0-8/debian/po/templates.pot 1.30.0-0ubuntu8/debian/po/templates.pot
--- 1.26.0-8/debian/po/templates.pot	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/templates.pot	2019-08-14 02:18:58.000000000 +0000
@@ -6,26 +6,25 @@
 #, fuzzy
 msgid ""
 msgstr ""
-"Project-Id-Version: lightdm\n"
+"Project-Id-Version: PACKAGE VERSION\n"
 "Report-Msgid-Bugs-To: lightdm@packages.debian.org\n"
-"POT-Creation-Date: 2012-03-27 21:31+0200\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
 "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
 "Language-Team: LANGUAGE <LL@li.org>\n"
-"Language: \n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=CHARSET\n"
 "Content-Transfer-Encoding: 8bit\n"
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid "Default display manager:"
 msgstr ""
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "A display manager is a program that provides graphical login capabilities "
 "for the X Window System."
@@ -33,7 +32,7 @@ msgstr ""
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Only one display manager can manage a given X server, but multiple display "
 "manager packages are installed. Please select which display manager should "
@@ -42,7 +41,7 @@ msgstr ""
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Multiple display managers can run simultaneously if they are configured to "
 "manage different servers; to achieve this, configure the display managers "
diff -pruN 1.26.0-8/debian/po/tg.po 1.30.0-0ubuntu8/debian/po/tg.po
--- 1.26.0-8/debian/po/tg.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/tg.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,51 @@
+# Tajik translation for lightdm
+# Copyright (c) 2013 Rosetta Contributors and Canonical Ltd 2013
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2013.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2013-04-16 06:43+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Tajik <tg@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
diff -pruN 1.26.0-8/debian/po/th.po 1.30.0-0ubuntu8/debian/po/th.po
--- 1.26.0-8/debian/po/th.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/th.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,83 @@
+# Thai translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2011-07-19 14:52+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Thai <th@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
+
+#~ msgid "Large Font"
+#~ msgstr "à¹à¸šà¸šà¸•à¸±à¸§à¸­à¸±à¸à¸©à¸£à¸‚à¸™à¸²à¸”à¹ƒà¸«à¸à¹ˆ"
+
+#~ msgid "Cancel"
+#~ msgstr "à¸¢à¸à¹€à¸¥à¸´à¸"
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
+#~ msgstr ""
+#~ "à¸„à¸¸à¸“à¹à¸™à¹ˆà¹ƒà¸ˆà¸«à¸£à¸·à¸­à¹„à¸¡à¹ˆà¸—à¸µà¹ˆà¸ˆà¸°à¸›à¸´à¸”à¹‚à¸›à¸£à¹à¸à¸£à¸¡à¸—à¸±à¹‰à¸‡à¸«à¸¡à¸”à¹à¸¥à¸°à¹€à¸£à¸´à¹ˆà¸¡à¹€à¸›à¸´à¸”à¹€à¸„à¸£à¸·à¹ˆà¸­à¸‡à¸„à¸­à¸¡à¸žà¸´à¸§à¹€à¸•à¸­à¸£à¹Œà¹ƒà¸«à¸¡à¹ˆ"
+
+#~ msgid "Hibernate"
+#~ msgstr "à¸«à¸¢à¸¸à¸”à¸žà¸±à¸à¹€à¸„à¸£à¸·à¹ˆà¸­à¸‡"
+
+#~ msgid "Restart..."
+#~ msgstr "à¹€à¸£à¸´à¹ˆà¸¡à¹ƒà¸«à¸¡à¹ˆ..."
+
+#~ msgid "Restart"
+#~ msgstr "à¹€à¸£à¸´à¹ˆà¸¡à¹ƒà¸«à¸¡à¹ˆ"
+
+#~ msgid ""
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+#~ msgstr "à¸„à¸¸à¸“à¹à¸™à¹ˆà¹ƒà¸ˆà¸§à¹ˆà¸²à¸•à¹‰à¸­à¸‡à¸à¸²à¸£à¸›à¸´à¸”à¹‚à¸›à¸£à¹à¸à¸£à¸¡à¸—à¸±à¹‰à¸‡à¸«à¸¡à¸”à¹à¸¥à¹‰à¸§à¸›à¸´à¸”à¹€à¸„à¸£à¸·à¹ˆà¸­à¸‡"
+
+#~ msgid "Shutdown"
+#~ msgstr "à¸›à¸´à¸”à¹€à¸„à¸£à¸·à¹ˆà¸­à¸‡"
+
+#~ msgid "Shutdown..."
+#~ msgstr "à¸›à¸´à¸”à¹€à¸„à¸£à¸·à¹ˆà¸­à¸‡..."
+
+#~ msgid "Suspend"
+#~ msgstr "à¸›à¸´à¸”à¸žà¸±à¸à¹€à¸„à¸£à¸·à¹ˆà¸­à¸‡"
diff -pruN 1.26.0-8/debian/po/tl.po 1.30.0-0ubuntu8/debian/po/tl.po
--- 1.26.0-8/debian/po/tl.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/tl.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,51 @@
+# Tagalog translation for lightdm
+# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2012.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2012-11-06 07:32+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Tagalog <tl@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
diff -pruN 1.26.0-8/debian/po/tr.po 1.30.0-0ubuntu8/debian/po/tr.po
--- 1.26.0-8/debian/po/tr.po	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/tr.po	2019-08-14 02:18:58.000000000 +0000
@@ -1,111 +1,94 @@
-# translation of tr.po to Turkish
-# debconf templates for xorg-x11 package
-# Turkish translation
-#
-# $Id: tr.po 1061 2006-01-11 10:19:43Z ender $
-#
-# Copyrights:
-# Branden Robinson, 2000-2004
-#
-# This file is distributed under the same license as the xorg-x11 package.
-# Please see debian/copyright.
-#
-#    Translators, if you are not familiar with the PO format, gettext
-#    documentation is worth reading, especially sections dedicated to
-#    this format, e.g. by running:
-#         info -n '(gettext)PO Files'
-#         info -n '(gettext)Header Entry'
-#
-#    Some information specific to po-debconf are available at
-#            /usr/share/doc/po-debconf/README-trans
-#         or http://www.debian.org/intl/l10n/po-debconf/README-trans
-#
-#    Developers do not need to manually edit POT or PO files.
-# Osman YÃ¼ksel <yuxel@sonsuzdongu.com>, 2004, 2006.
-# Recai OktaÅŸ <roktas@debian.org>, 2004.
+# Turkish translation for lightdm
+# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2010.
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: xorg-x11\n"
-"Report-Msgid-Bugs-To: lightdm@packages.debian.org\n"
-"POT-Creation-Date: 2012-03-27 21:31+0200\n"
-"PO-Revision-Date: 2008-09-19 12:58+0200\n"
-"Last-Translator: Mert Dirik <mertdirik@gmail.com>\n"
-"Language-Team: Debian L10n Turkish <debian-l10n-turkish@lists.debian.org>\n"
-"Language: \n"
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2013-11-01 15:33+0000\n"
+"Last-Translator: Volkan Gezer <Unknown>\n"
+"Language-Team: Turkish <tr@li.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"X-Generator: KBabel 1.10.2\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid "Default display manager:"
-msgstr "Ã–ntanÄ±mlÄ± ekran yÃ¶neticisi:"
+msgstr "Ã–ntanÄ±mlÄ± gÃ¶rÃ¼ntÃ¼ yÃ¶neticisi:"
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "A display manager is a program that provides graphical login capabilities "
 "for the X Window System."
 msgstr ""
-"Ekran yÃ¶neticisi, X Pencere Sistemi'ne gÃ¶rsel arayÃ¼z ile giriÅŸ yapmayÄ± "
-"saÄŸlayan bir programdÄ±r."
+"X Pencere Sistemi iÃ§in grafiksel oturum aÃ§ma yetenekleri saÄŸlayan bir "
+"gÃ¶rÃ¼ntÃ¼ yÃ¶netici programÄ±."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Only one display manager can manage a given X server, but multiple display "
 "manager packages are installed. Please select which display manager should "
 "run by default."
 msgstr ""
-"Sadece bir ekran yÃ¶neticisi verilen X sunucusunu yÃ¶netebilir; ancak "
-"sisteminizde birden fazla ekran yÃ¶neticisi kurulu durumda.  LÃ¼tfen Ã¶ntanÄ±mlÄ± "
-"olarak Ã§alÄ±ÅŸtÄ±rmak istediÄŸiniz ekran yÃ¶neticisini seÃ§in."
+"Belirtilen X sunucusunu sadece bir gÃ¶rÃ¼ntÃ¼ yÃ¶neticisi Ã§alÄ±ÅŸtÄ±rabilir ancak "
+"birden fazla gÃ¶rÃ¼ntÃ¼ yÃ¶neticisi kurulu. LÃ¼tfen Ã¶ntanÄ±mlÄ± olarak "
+"Ã§alÄ±ÅŸtÄ±rÄ±lacak gÃ¶rÃ¼ntÃ¼ yÃ¶neticisini seÃ§in."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Multiple display managers can run simultaneously if they are configured to "
 "manage different servers; to achieve this, configure the display managers "
 "accordingly, edit each of their init scripts in /etc/init.d, and disable the "
 "check for a default display manager."
 msgstr ""
-"EÄŸer farklÄ± sunucularÄ± Ã§alÄ±ÅŸtÄ±rmak iÃ§in ayarlanÄ±rsa birden fazla ekran "
-"yÃ¶neticisi kullanÄ±labilir.  Bunun iÃ§in, her bir ekran yÃ¶neticisini uygun bir "
-"ÅŸekilde yapÄ±landÄ±rÄ±n, /etc/init.d iÃ§indeki ilgili betikleri deÄŸiÅŸtirin ve "
-"Ã¶ntanÄ±mlÄ± ekran yÃ¶neticisini denetleyen iÅŸlevleri devre dÄ±ÅŸÄ± bÄ±rakÄ±n."
-
-#, fuzzy
-#~ msgid "Stop the xdm daemon?"
-#~ msgstr "xdm servisini durdurmak istiyor musunuz?"
+"FarklÄ± sunucularÄ± yÃ¶netmek Ã¼zere yapÄ±landÄ±rÄ±lmÄ±ÅŸlarsa, birden fazla gÃ¶rÃ¼ntÃ¼ "
+"yÃ¶neticisi Ã§alÄ±ÅŸabilir. Bunun iÃ§in gÃ¶rÃ¼ntÃ¼ yÃ¶neticilerinin ilgili "
+"/etc/init.d dosyalarÄ±nÄ± dÃ¼zenleyerek yapÄ±landÄ±rÄ±n ve Ã¶ntanÄ±mlÄ± gÃ¶rÃ¼ntÃ¼ "
+"yÃ¶neticisi seÃ§imi denetlemesini devre dÄ±ÅŸÄ± bÄ±rakÄ±n."
 
-#, fuzzy
 #~ msgid ""
-#~ "The X display manager (xdm) daemon is typically stopped on package "
-#~ "upgrade and removal, but it appears to be managing at least one running X "
-#~ "session."
+#~ "Are you sure you want to close all programs and shutdown the computer?"
 #~ msgstr ""
-#~ "X ekran yÃ¶neticisi (xdm) servisi, paket gÃ¼ncelleme ve kaldÄ±rma sÄ±rasÄ±nda "
-#~ "genellikle durdurulur.  Fakat Ã¶yle gÃ¶rÃ¼nÃ¼yor ki xdm, Ã§alÄ±ÅŸan (en az) bir "
-#~ "X oturumunu yÃ¶netiyor.  EÄŸer xdm ÅŸimdi durdurulursa yÃ¶netilen X "
-#~ "oturumlarÄ± da sonlandÄ±rÄ±lacaktÄ±r.  BÃ¶yle yapmak yerine xdm'i Ã§alÄ±ÅŸÄ±r "
-#~ "vaziyette bÄ±rakabilirsiniz.  Yeni sÃ¼rÃ¼m, xdm servisinin bir sonraki "
-#~ "Ã§alÄ±ÅŸtÄ±rÄ±lÄ±ÅŸÄ±nda etkin olacaktÄ±r."
+#~ "TÃ¼m programlarÄ± sonlandÄ±rÄ±p bilgisayarÄ± kapatmak istediÄŸinize emin misiniz?"
 
-#, fuzzy
-#~ msgid ""
-#~ "If xdm is stopped now, any X sessions it manages will be terminated. "
-#~ "Otherwise, the new version will take effect the next time the daemon is "
-#~ "restarted."
+#~ msgid "Large Font"
+#~ msgstr "BÃ¼yÃ¼k YazÄ± Tipi"
+
+#~ msgid "Cancel"
+#~ msgstr "VazgeÃ§"
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
 #~ msgstr ""
-#~ "X ekran yÃ¶neticisi (xdm) servisi, paket gÃ¼ncelleme ve kaldÄ±rma sÄ±rasÄ±nda "
-#~ "genellikle durdurulur.  Fakat Ã¶yle gÃ¶rÃ¼nÃ¼yor ki xdm, Ã§alÄ±ÅŸan (en az) bir "
-#~ "X oturumunu yÃ¶netiyor.  EÄŸer xdm ÅŸimdi durdurulursa yÃ¶netilen X "
-#~ "oturumlarÄ± da sonlandÄ±rÄ±lacaktÄ±r.  BÃ¶yle yapmak yerine xdm'i Ã§alÄ±ÅŸÄ±r "
-#~ "vaziyette bÄ±rakabilirsiniz.  Yeni sÃ¼rÃ¼m, xdm servisinin bir sonraki "
-#~ "Ã§alÄ±ÅŸtÄ±rÄ±lÄ±ÅŸÄ±nda etkin olacaktÄ±r."
+#~ "TÃ¼m programlarÄ± sonlandÄ±rÄ±p bilgisayarÄ± yeniden baÅŸlatmak istediÄŸinize emin "
+#~ "misiniz?"
+
+#~ msgid "Shutdown"
+#~ msgstr "BilgisayarÄ± Kapat"
+
+#~ msgid "Restart"
+#~ msgstr "Yeniden BaÅŸlat"
+
+#~ msgid "Hibernate"
+#~ msgstr "HazÄ±rda Beklet"
+
+#~ msgid "Restart..."
+#~ msgstr "Yeniden BaÅŸlat..."
+
+#~ msgid "Suspend"
+#~ msgstr "AskÄ±ya Al"
+
+#~ msgid "Shutdown..."
+#~ msgstr "Kapat..."
diff -pruN 1.26.0-8/debian/po/ug.po 1.30.0-0ubuntu8/debian/po/ug.po
--- 1.26.0-8/debian/po/ug.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/ug.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,82 @@
+# Uyghur translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2012-03-02 04:52+0000\n"
+"Last-Translator: Gheyret T.Kenji <Unknown>\n"
+"Language-Team: Uyghur <ug@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
+
+#~ msgid "Hibernate"
+#~ msgstr "Ø¦ÛˆÚ†Û•Ùƒ"
+
+#~ msgid "Restart..."
+#~ msgstr "Ù‚Ø§ÙŠØªØ§ Ù‚ÙˆØ²ØºØ§Øªâ€¦"
+
+#~ msgid "Shutdown..."
+#~ msgstr "ØªØ§Ù‚Ø§â€¦"
+
+#~ msgid "Suspend"
+#~ msgstr "ØªÙˆÚ­Ù„Ø§Øª"
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
+#~ msgstr "Ú¾Û•Ù…Ù…Û• Ù¾Ø±ÙˆÚ¯Ø±Ø§Ù…Ù…Ù‰Ù†Ù‰ Ø¦ÛØªÙ‰Ù¾ ÙƒÙˆÙ…Ù¾ÙŠÛ‡ØªÛØ±Ù†Ù‰ Ù‚Ø§ÙŠØªØ§ Ù‚ÙˆØ²ØºØ§Ù…Ø³Ù‰Ø²ØŸ"
+
+#~ msgid "Restart"
+#~ msgstr "Ù‚Ø§ÙŠØªØ§ Ù‚ÙˆØ²ØºØ§Øª"
+
+#~ msgid "Shutdown"
+#~ msgstr "ØªØ§Ù‚Ø§"
+
+#~ msgid "Cancel"
+#~ msgstr "Û‹Ø§Ø² ÙƒÛ•Ú†"
+
+#~ msgid "Large Font"
+#~ msgstr "Ú†ÙˆÚ­ Ø®Û•Øª Ù†Û‡Ø³Ø®Ù‰Ø³Ù‰"
+
+#~ msgid ""
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+#~ msgstr "Ø¨Ø§Ø±Ù„Ù‰Ù‚ Ù¾Ø±ÙˆÚ¯Ø±Ø§Ù…Ù…Ù‰Ù†Ù‰ ÙŠÛÙ¾Ù‰Ù¾ØŒ ÙƒÙˆÙ…Ù¾ÙŠÛ‡ØªÛØ±Ù†Ù‰ ØªØ§Ù‚Ø§Ù…Ø³Ù‰Ø²ØŸ"
diff -pruN 1.26.0-8/debian/po/uk.po 1.30.0-0ubuntu8/debian/po/uk.po
--- 1.26.0-8/debian/po/uk.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/uk.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,82 @@
+# Ukrainian translation for lightdm
+# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2010.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2010-09-10 11:53+0000\n"
+"Last-Translator: Sergiy Gavrylov <sergiovana@bigmir.net>\n"
+"Language-Team: Ukrainian <uk@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
+
+#~ msgid "Large Font"
+#~ msgstr "Ð’ÐµÐ»Ð¸ÐºÐ¸Ð¹ ÑˆÑ€Ð¸Ñ„Ñ‚"
+
+#~ msgid "Shutdown"
+#~ msgstr "Ð’Ð¸Ð¼ÐºÐ½ÑƒÑ‚Ð¸"
+
+#~ msgid "Cancel"
+#~ msgstr "Ð¡ÐºÐ°ÑÑƒÐ²Ð°Ñ‚Ð¸"
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
+#~ msgstr "Ð’Ð¸ Ð´Ñ–Ð¹ÑÐ½Ð¾ Ð±Ð°Ð¶Ð°Ñ”Ñ‚Ðµ Ð·Ð°ÐºÑ€Ð¸Ñ‚Ð¸ Ð²ÑÑ– Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð¸ Ñ‚Ð° Ð¿ÐµÑ€ÐµÐ·Ð°Ð²Ð°Ð½Ñ‚Ð°Ð¶Ð¸Ñ‚Ð¸ ÐºÐ¾Ð¼Ð¿'ÑŽÑ‚ÐµÑ€?"
+
+#~ msgid "Hibernate"
+#~ msgstr "Ð ÐµÐ¶Ð¸Ð¼ ÑÐ½Ñƒ"
+
+#~ msgid "Restart..."
+#~ msgstr "ÐŸÐµÑ€ÐµÐ·Ð°Ð¿ÑƒÑÑ‚Ð¸Ñ‚Ð¸..."
+
+#~ msgid "Shutdown..."
+#~ msgstr "Ð’Ð¸Ð¼ÐºÐ½ÑƒÑ‚Ð¸..."
+
+#~ msgid "Restart"
+#~ msgstr "ÐŸÐµÑ€ÐµÐ·Ð°Ð¿ÑƒÑÑ‚Ð¸Ñ‚Ð¸"
+
+#~ msgid ""
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+#~ msgstr "Ð’Ð¸ Ð´Ñ–Ð¹ÑÐ½Ð¾ Ð±Ð°Ð¶Ð°Ñ”Ñ‚Ðµ Ð·Ð°ÐºÑ€Ð¸Ñ‚Ð¸ Ð²ÑÑ– Ð¿Ñ€Ð¾Ð³Ñ€Ð°Ð¼Ð¸ Ñ‚Ð° Ð²Ð¸Ð¼ÐºÐ½ÑƒÑ‚Ð¸ ÐºÐ¾Ð¼Ð¿'ÑŽÑ‚ÐµÑ€?"
+
+#~ msgid "Suspend"
+#~ msgstr "ÐŸÑ€Ð¸Ð·ÑƒÐ¿Ð¸Ð½Ð¸Ñ‚Ð¸"
diff -pruN 1.26.0-8/debian/po/ur.po 1.30.0-0ubuntu8/debian/po/ur.po
--- 1.26.0-8/debian/po/ur.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/ur.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,51 @@
+# Urdu translation for lightdm
+# Copyright (c) 2014 Rosetta Contributors and Canonical Ltd 2014
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2014.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2014-09-08 15:19+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Urdu <ur@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
diff -pruN 1.26.0-8/debian/po/uz.po 1.30.0-0ubuntu8/debian/po/uz.po
--- 1.26.0-8/debian/po/uz.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/uz.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,82 @@
+# Uzbek translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2011-09-01 17:00+0000\n"
+"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
+"Language-Team: Uzbek <uz@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
+
+#~ msgid "Large Font"
+#~ msgstr "ÐšÐ°Ñ‚Ñ‚Ð° ÑˆÑ€Ð¸Ñ„Ñ‚"
+
+#~ msgid "Cancel"
+#~ msgstr "Ð‘ÐµÐºÐ¾Ñ€ Ò›Ð¸Ð»Ð¸Ñˆ"
+
+#~ msgid "Suspend"
+#~ msgstr "ÐšÑƒÑ‚Ð¸Ñˆ ÑƒÑÑƒÐ»Ð¸"
+
+#~ msgid "Hibernate"
+#~ msgstr "Ð£Ð¹Ò›ÑƒÐ³Ð° ÐºÐµÑ‚Ð¸Ñˆ"
+
+#~ msgid "Restart..."
+#~ msgstr "ÐŽÑ‡Ð¸Ñ€Ð¸Ð±-Ñ‘Ò›Ð¸Ñˆ"
+
+#~ msgid "Shutdown..."
+#~ msgstr "ÐŽÑ‡Ð¸Ñ€Ð¸Ñˆ"
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
+#~ msgstr "Ò²Ð°Ð¼Ð¼Ð° Ð´Ð°ÑÑ‚ÑƒÑ€Ð»Ð°Ñ€Ð½Ð¸ Ñ‘Ð¿Ð¸ÑˆÐ³Ð° Ð²Ð° ÐºÐ¾Ð¼Ð¿ÑŒÑŽÑ‚ÐµÑ€Ð½Ð¸ ÑžÑ‡Ð¸Ñ€Ð¸Ð±-Ñ‘Ò›Ð¸ÑˆÐ³Ð° Ñ€Ð¾Ð·Ð¸Ð¼Ð¸ÑÐ¸Ð·?"
+
+#~ msgid "Restart"
+#~ msgstr "ÐŽÑ‡Ð¸Ñ€Ð¸Ð±-Ñ‘Ò›Ð¸Ñˆ"
+
+#~ msgid ""
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+#~ msgstr "Ð‘Ð°Ñ€Ñ‡Ð° Ð´Ð°ÑÑ‚ÑƒÑ€Ð»Ð°Ñ€Ð½Ð¸ Ñ‘Ð¿Ð¸ÑˆÐ½Ð¸ Ð²Ð° ÐºÐ¾Ð¼Ð¿ÑŒÑŽÑ‚ÐµÑ€Ð½Ð¸ ÑžÑ‡Ð¸Ñ€Ð¸ÑˆÐ½Ð¸ Ñ…Ð¾Ò³Ð»Ð°Ð¹ÑÐ¸Ð·Ð¼Ð¸?"
+
+#~ msgid "Shutdown"
+#~ msgstr "ÐŽÑ‡Ð¸Ñ€Ð¸Ñˆ"
diff -pruN 1.26.0-8/debian/po/vi.po 1.30.0-0ubuntu8/debian/po/vi.po
--- 1.26.0-8/debian/po/vi.po	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/vi.po	2019-08-14 02:18:58.000000000 +0000
@@ -1,90 +1,82 @@
-# debconf templates for xorg-x11 package
-# Vietnamese translation
-# slim 1.2.6-2
-# $Id: vi.po 1042 2006-01-09 07:55:08Z ender $
-#
-# Copyright:
-# Branden Robinson, 2000-2004
-# Clytie Siddall <clytie@riverland.net.au>, 2005-2007.
-#
-# This file is distributed under the same license as the xorg-x11 package.
-# Please see debian/copyright.
+# Vietnamese translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: 4.3.0.dfsg.1-7+SVN\n"
-"Report-Msgid-Bugs-To: lightdm@packages.debian.org\n"
-"POT-Creation-Date: 2012-03-27 21:31+0200\n"
-"PO-Revision-Date: 2007-06-02 16:14+0930\n"
-"Last-Translator: Clytie Siddall <clytie@riverland.net.au>\n"
-"Language-Team: Vietnamese <vi-VN@googlegroups.com>\n"
-"Language: vi\n"
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2011-09-07 16:33+0000\n"
+"Last-Translator: LÃª HoÃ ng PhÆ°Æ¡ng <Unknown>\n"
+"Language-Team: Vietnamese <vi@li.org>\n"
 "MIME-Version: 1.0\n"
-"Content-Type: text/plain; charset=utf-8\n"
+"Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=1; plural=0;\n"
-"X-Generator: LocFactoryEditor 1.6.3b1\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid "Default display manager:"
-msgstr "Bá»™ quáº£n lÃ½ trÃ¬nh bÃ y máº·c Ä‘á»‹nh:"
+msgstr ""
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "A display manager is a program that provides graphical login capabilities "
 "for the X Window System."
 msgstr ""
-"Bá»™ quáº£n lÃ½ trÃ¬nh bÃ y lÃ  chÆ°Æ¡ng trÃ¬nh cung cáº¥p kháº£ nÄƒng Ä‘Äƒng nháº­p kiá»ƒu Ä‘á»“ há»a "
-"cho Há»‡ thá»‘ng Cá»­a sá»• X."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Only one display manager can manage a given X server, but multiple display "
 "manager packages are installed. Please select which display manager should "
 "run by default."
 msgstr ""
-"Chá»‰ má»™t bá»™ quáº£n lÃ½ trÃ¬nh bÃ y cÃ³ kháº£ nÄƒng quáº£n lÃ½ má»—i trÃ¬nh phá»¥c vá»¥ X (X "
-"server) Ä‘Ã£ cho, nhÆ°ng mÃ  nhiá»u gÃ³i chÆ°Æ¡ng trÃ¬nh quáº£n lÃ½ trÃ¬nh bÃ y Ä‘Ã£ Ä‘Æ°á»£c "
-"cÃ i Ä‘áº·t. HÃ£y chá»n bá»™ quáº£n lÃ½ trÃ¬nh bÃ y nÃ o nÃ  nÃªn cháº¡y theo máº·c Ä‘á»‹nh."
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Multiple display managers can run simultaneously if they are configured to "
 "manage different servers; to achieve this, configure the display managers "
 "accordingly, edit each of their init scripts in /etc/init.d, and disable the "
 "check for a default display manager."
 msgstr ""
-"Nhiá»u bá»™ quáº£n lÃ½ trÃ¬nh bÃ y cÃ³ kháº£ nÄƒng cháº¡y Ä‘á»“ng thá»i náº¿u má»—i Ä‘iá»u Ä‘Æ°á»£c cáº¥u "
-"hÃ¬nh Ä‘á»ƒ quáº£n lÃ½ trÃ¬nh phá»¥c vá»¥ khÃ¡c nhau. Äá»ƒ lÃ m nhÆ° tháº¿, hÃ£y cáº¥u hÃ¬nh má»i bá»™ "
-"quáº£n lÃ½ trÃ¬nh bÃ y má»™t cÃ¡ch thÃ­ch há»£p, sá»­a Ä‘á»•i má»—i vÄƒn lá»‡nh sÆ¡ khá»Ÿi (init "
-"script) trong </etc/init.d>, vÃ  táº¯t kháº£ nÄƒng kiá»ƒm tra cÃ³ bá»™ quáº£n lÃ½ trÃ¬nh "
-"bÃ y máº·c Ä‘á»‹nh."
 
-#~ msgid "Stop the xdm daemon?"
-#~ msgstr "Ngá»«ng trÃ¬nh ná»n xdm khÃ´ng?"
+#~ msgid "Cancel"
+#~ msgstr "Há»§y bá»"
 
-#~ msgid ""
-#~ "The X display manager (xdm) daemon is typically stopped on package "
-#~ "upgrade and removal, but it appears to be managing at least one running X "
-#~ "session."
-#~ msgstr ""
-#~ "TrÃ¬nh ná»n (dÃ¦mon) quáº£n lÃ½ trÃ¬nh bÃ y X thÆ°á»ng Ä‘Æ°á»£c ngá»«ng cháº¡y khi cáº­p nháº­t "
-#~ "hay gá»¡ bá» gÃ³i pháº§n má»m, nhÆ°ng mÃ  cÃ³ váº» lÃ  nÃ³ Ä‘ang quáº£n lÃ½ Ã­t nháº¥t má»™t "
-#~ "phiÃªn cháº¡y X cÃ²n hoáº¡t Ä‘á»™ng. "
+#~ msgid "Hibernate"
+#~ msgstr "Ngá»§ Ä‘Ã´ng"
+
+#~ msgid "Restart..."
+#~ msgstr "Khá»Ÿi Ä‘á»™ng láº¡i..."
+
+#~ msgid "Shutdown..."
+#~ msgstr "Táº¯t mÃ¡y..."
+
+#~ msgid "Suspend"
+#~ msgstr "Táº¡m ngÆ°ng"
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
+#~ msgstr "Báº¡n cÃ³ cháº¯c muá»‘n Ä‘Ã³ng táº¥t cáº£ chÆ°Æ¡ng trÃ¬nh vÃ  khá»Ÿi Ä‘á»™ng láº¡i mÃ¡y tÃ­nh?"
+
+#~ msgid "Restart"
+#~ msgstr "Khá»Ÿi Ä‘á»™ng láº¡i"
 
 #~ msgid ""
-#~ "If xdm is stopped now, any X sessions it manages will be terminated. "
-#~ "Otherwise, the new version will take effect the next time the daemon is "
-#~ "restarted."
-#~ msgstr ""
-#~ "Ngá»«ng cháº¡y xdm ngay bÃ¢y giá» thÃ¬ phiÃªn cháº¡y X nÃ o nÃ³ quáº£n lÃ½ sáº½ cÅ©ng bá»‹ "
-#~ "káº¿t thÃºc. KhÃ´ng thÃ¬ phiÃªn báº£n má»›i sáº½ cÃ³ tÃ¡c Ä‘á»™ng láº§n káº¿ tiáº¿p khá»Ÿi cháº¡y "
-#~ "láº¡i trÃ¬nh ná»n."
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+#~ msgstr "Báº¡n cÃ³ cháº¯c muá»‘n Ä‘Ã³ng táº¥t cáº£ chÆ°Æ¡ng trÃ¬nh vÃ  táº¯t mÃ¡y tÃ­nh?"
+
+#~ msgid "Shutdown"
+#~ msgstr "Táº¯t mÃ¡y"
+
+#~ msgid "Large Font"
+#~ msgstr "PhÃ´ng chá»¯ lá»›n"
diff -pruN 1.26.0-8/debian/po/wae.po 1.30.0-0ubuntu8/debian/po/wae.po
--- 1.26.0-8/debian/po/wae.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/wae.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,76 @@
+# Walser translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2011-05-17 18:24+0000\n"
+"Last-Translator: bortis <Unknown>\n"
+"Language-Team: Walser <wae@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
+
+#~ msgid "Cancel"
+#~ msgstr "AbbrÃ¤Äe"
+
+#~ msgid "Restart"
+#~ msgstr "NiwÅ¡tart"
+
+#~ msgid "Restart..."
+#~ msgstr "NiwÅ¡tart..."
+
+#~ msgid "Large Font"
+#~ msgstr "Groá¹£i Å¡rift"
+
+#~ msgid "Shutdown..."
+#~ msgstr "AbÅ¡teá¸·e..."
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
+#~ msgstr "Aá¸·i prograá¹ƒ gÅ¡lieá¹£e und de kompiuter niw Å¡tarte?"
+
+#~ msgid ""
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+#~ msgstr "Aá¸·i prograá¹ƒ gÅ¡lieá¹£e und de kompiuter abÅ¡teá¸·e?"
+
+#~ msgid "Shutdown"
+#~ msgstr "AbÅ¡teá¸·e"
diff -pruN 1.26.0-8/debian/po/zh_CN.po 1.30.0-0ubuntu8/debian/po/zh_CN.po
--- 1.26.0-8/debian/po/zh_CN.po	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/zh_CN.po	2019-08-14 02:18:58.000000000 +0000
@@ -1,93 +1,82 @@
-# debconf templates for xdm package
-# simplified Chinese translation
-#
-# Copyrights:
-# Branden Robinson, 2000-2004
-# Carlos Z.F. Liu <carlosliu@users.sourceforge.net>, 2005
-# Ming Hua <minghua@rice.edu>, 2005,2007
-#
-# This file is distributed under the same license as the xdm package.
-# Please see debian/copyright.
-#
-#    Translators, if you are not familiar with the PO format, gettext
-#    documentation is worth reading, especially sections dedicated to
-#    this format, e.g. by running:
-#         info -n '(gettext)PO Files'
-#         info -n '(gettext)Header Entry'
-#
-#    Some information specific to po-debconf are available at
-#            /usr/share/doc/po-debconf/README-trans
-#         or http://www.debian.org/intl/l10n/po-debconf/README-trans
-#
-#    Developers do not need to manually edit POT or PO files.
+# Chinese (Simplified) translation for lightdm
+# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2010.
 #
 msgid ""
 msgstr ""
-"Project-Id-Version: 1:1.0.5-2\n"
-"Report-Msgid-Bugs-To: lightdm@packages.debian.org\n"
-"POT-Creation-Date: 2012-03-27 21:31+0200\n"
-"PO-Revision-Date: 2007-03-28 18:50-0500\n"
-"Last-Translator: Ming Hua <minghua@rice.edu>\n"
-"Language-Team: Debian Chinese [GB] <debian-chinese-gb@lists.debian.org>\n"
-"Language: \n"
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2010-12-28 10:03+0000\n"
+"Last-Translator: Wheat0r Hou <Unknown>\n"
+"Language-Team: Chinese (Simplified) <zh_CN@li.org>\n"
 "MIME-Version: 1.0\n"
 "Content-Type: text/plain; charset=UTF-8\n"
 "Content-Transfer-Encoding: 8bit\n"
-"Plural-Forms: nplurals=1; plural=0;\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid "Default display manager:"
-msgstr "é»˜è®¤æ˜¾ç¤ºç®¡ç†å™¨ï¼š"
+msgstr ""
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "A display manager is a program that provides graphical login capabilities "
 "for the X Window System."
-msgstr "æ˜¾ç¤ºç®¡ç†å™¨æ˜¯ä¸º X çª—å£ç³»ç»Ÿæä¾›å›¾å½¢ç•Œé¢ç™»å½•æ¨¡å¼çš„ç¨‹åºã€‚"
+msgstr ""
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Only one display manager can manage a given X server, but multiple display "
 "manager packages are installed. Please select which display manager should "
 "run by default."
 msgstr ""
-"ä¸€ä¸ªç»™å®šçš„ X æœåŠ¡å™¨åªèƒ½ç”±ä¸€ä¸ªæ˜¾ç¤ºç®¡ç†å™¨æ¥ç®¡ç†ï¼Œä½†æ˜¯ç³»ç»Ÿä¸­å·²ç»å®‰è£…äº†å¤šä¸ªæ˜¾ç¤ºç®¡"
-"ç†å™¨è½¯ä»¶åŒ…ã€‚è¯·é€‰æ‹©ä¸€ä¸ªä½œä¸ºé»˜è®¤çš„æ˜¾ç¤ºç®¡ç†å™¨ã€‚"
 
 #. Type: select
 #. Description
-#: ../lightdm.templates:3001
+#: ../lightdm.templates:2001
 msgid ""
 "Multiple display managers can run simultaneously if they are configured to "
 "manage different servers; to achieve this, configure the display managers "
 "accordingly, edit each of their init scripts in /etc/init.d, and disable the "
 "check for a default display manager."
 msgstr ""
-"å¦‚æžœå¤šä¸ªæ˜¾ç¤ºç®¡ç†å™¨è¢«é…ç½®ä¸ºåˆ†åˆ«ç®¡ç†ä¸åŒçš„ X æœåŠ¡å™¨ï¼Œé‚£ä¹ˆå®ƒä»¬å¯ä»¥åŒæ—¶è¿è¡Œã€‚è¦åš"
-"åˆ°è¿™ä¸€ç‚¹ï¼Œæ‚¨è¦æŒ‰ç…§éœ€æ±‚åˆ†åˆ«å¯¹å„æ˜¾ç¤ºç®¡ç†å™¨è¿›è¡Œè®¾ç½®ï¼Œç¼–è¾‘å®ƒä»¬åœ¨ /etc/init.d ç›®å½•"
-"ä¸‹çš„ init è„šæœ¬ï¼Œå¹¶ä¸”å…³é—­å¯¹é»˜è®¤æ˜¾ç¤ºç®¡ç†å™¨çš„æ£€æŸ¥ã€‚"
 
-#~ msgid "Stop the xdm daemon?"
-#~ msgstr "åœæ­¢ xdm å®ˆæŠ¤è¿›ç¨‹å—ï¼Ÿ"
+#~ msgid "Large Font"
+#~ msgstr "å¤§å­—ä½“"
 
-#~ msgid ""
-#~ "The X display manager (xdm) daemon is typically stopped on package "
-#~ "upgrade and removal, but it appears to be managing at least one running X "
-#~ "session."
-#~ msgstr ""
-#~ "X æ˜¾ç¤ºç®¡ç†å™¨ (xdm) å®ˆæŠ¤è¿›ç¨‹é€šå¸¸ä¼šåœ¨è½¯ä»¶åŒ…å‡çº§å’Œå¸è½½æ—¶è¢«åœæ­¢ï¼Œä½†çœ‹èµ·æ¥å®ƒç›®"
-#~ "å‰åœ¨ç®¡ç†ä¸€ä¸ªæˆ–å¤šä¸ªæ­£åœ¨è¿è¡Œçš„ X ä¼šè¯ã€‚"
+#~ msgid "Cancel"
+#~ msgstr "å–æ¶ˆ"
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
+#~ msgstr "æ‚¨ç¡®å®šè¦å…³é—­æ‰€æœ‰ç¨‹åºå¹¶é‡æ–°å¯åŠ¨è®¡ç®—æœºï¼Ÿ"
+
+#~ msgid "Restart"
+#~ msgstr "é‡å¯"
+
+#~ msgid "Shutdown"
+#~ msgstr "å…³æœº"
+
+#~ msgid "Hibernate"
+#~ msgstr "ä¼‘çœ "
 
 #~ msgid ""
-#~ "If xdm is stopped now, any X sessions it manages will be terminated. "
-#~ "Otherwise, the new version will take effect the next time the daemon is "
-#~ "restarted."
-#~ msgstr ""
-#~ "å¦‚æžœ xdm çŽ°åœ¨å°±è¢«åœæ­¢ï¼Œå®ƒæ‰€ç®¡ç†çš„å…¨éƒ¨ X ä¼šè¯éƒ½ä¼šè¢«ä¸­æ­¢ã€‚å¦‚æžœä¸åœæ­¢ xdmï¼Œæ–°"
-#~ "å®‰è£…çš„ç‰ˆæœ¬å°†ä¼šåœ¨å®ˆæŠ¤è¿›ç¨‹ä¸‹æ¬¡é‡æ–°å¯åŠ¨æ—¶ç”Ÿæ•ˆã€‚"
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+#~ msgstr "æ‚¨ç¡®å®šè¦å…³é—­æ‰€æœ‰ç¨‹åºå¹¶å…³é—­è®¡ç®—æœºï¼Ÿ"
+
+#~ msgid "Shutdown..."
+#~ msgstr "å…³é—­..."
+
+#~ msgid "Restart..."
+#~ msgstr "é‡å¯..."
+
+#~ msgid "Suspend"
+#~ msgstr "å¾…æœº"
diff -pruN 1.26.0-8/debian/po/zh_HK.po 1.30.0-0ubuntu8/debian/po/zh_HK.po
--- 1.26.0-8/debian/po/zh_HK.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/zh_HK.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,82 @@
+# Chinese (Hong Kong) translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2012-10-08 09:51+0000\n"
+"Last-Translator: Roy Chan <roy.chan@linux.org.hk>\n"
+"Language-Team: Chinese (Hong Kong) <zh_HK@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
+
+#~ msgid "Large Font"
+#~ msgstr "å¤§å­—åž‹"
+
+#~ msgid "Cancel"
+#~ msgstr "å–æ¶ˆ"
+
+#~ msgid "Restart..."
+#~ msgstr "é‡æ–°å•Ÿå‹•..."
+
+#~ msgid "Shutdown..."
+#~ msgstr "é—œæ©Ÿ..."
+
+#~ msgid "Suspend"
+#~ msgstr "æš«åœ"
+
+#~ msgid "Hibernate"
+#~ msgstr "ä¼‘çœ "
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
+#~ msgstr "æ‚¨ç¢ºå®šè¦é—œé–‰æ‰€æœ‰ç¨‹å¼ï¼Œä¸¦é‡æ–°å•Ÿå‹•é›»è…¦ï¼Ÿ"
+
+#~ msgid ""
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+#~ msgstr "æ‚¨ç¢ºå®šè¦é—œé–‰æ‰€æœ‰ç¨‹å¼ï¼Œä¸¦é—œé–‰é›»è…¦ï¼Ÿ"
+
+#~ msgid "Shutdown"
+#~ msgstr "é—œæ©Ÿ"
+
+#~ msgid "Restart"
+#~ msgstr "é‡æ–°å•Ÿå‹•"
diff -pruN 1.26.0-8/debian/po/zh_TW.po 1.30.0-0ubuntu8/debian/po/zh_TW.po
--- 1.26.0-8/debian/po/zh_TW.po	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/po/zh_TW.po	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,67 @@
+# Chinese (Traditional) translation for lightdm
+# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
+# This file is distributed under the same license as the lightdm package.
+# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
+#
+msgid ""
+msgstr ""
+"Project-Id-Version: lightdm\n"
+"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
+"POT-Creation-Date: 2007-05-31 08:04+0200\n"
+"PO-Revision-Date: 2014-03-16 03:54+0000\n"
+"Last-Translator: Walter Cheuk <wwycheuk@gmail.com>\n"
+"Language-Team: Chinese (Traditional) <zh_TW@li.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=UTF-8\n"
+"Content-Transfer-Encoding: 8bit\n"
+"X-Launchpad-Export-Date: 2017-09-28 05:20+0000\n"
+"X-Generator: Launchpad (build 18463)\n"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid "Default display manager:"
+msgstr "é è¨­é¡¯ç¤ºç®¡ç†å“¡ï¼š"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"A display manager is a program that provides graphical login capabilities "
+"for the X Window System."
+msgstr "é¡¯ç¤ºç®¡ç†å“¡ç‚º X è¦–çª—ç³»çµ±æä¾›åœ–åƒåŒ–ç™»å…¥ã€‚"
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Only one display manager can manage a given X server, but multiple display "
+"manager packages are installed. Please select which display manager should "
+"run by default."
+msgstr ""
+
+#. Type: select
+#. Description
+#: ../lightdm.templates:2001
+msgid ""
+"Multiple display managers can run simultaneously if they are configured to "
+"manage different servers; to achieve this, configure the display managers "
+"accordingly, edit each of their init scripts in /etc/init.d, and disable the "
+"check for a default display manager."
+msgstr ""
+
+#~ msgid "Hibernate"
+#~ msgstr "ä¼‘çœ "
+
+#~ msgid "Suspend"
+#~ msgstr "æš«åœ"
+
+#~ msgid "Are you sure you want to close all programs and restart the computer?"
+#~ msgstr "æ‚¨ç¢ºå®šè¦é—œé–‰æ‰€æœ‰ç¨‹å¼ï¼Œä¸¦é‡æ–°å•Ÿå‹•é›»è…¦ï¼Ÿ"
+
+#~ msgid ""
+#~ "Are you sure you want to close all programs and shutdown the computer?"
+#~ msgstr "æ‚¨ç¢ºå®šè¦é—œé–‰æ‰€æœ‰ç¨‹å¼ï¼Œä¸¦é—œé–‰é›»è…¦ï¼Ÿ"
+
+#~ msgid "Large Font"
+#~ msgstr "å¤§å­—åž‹"
diff -pruN 1.26.0-8/debian/rules 1.30.0-0ubuntu8/debian/rules
--- 1.26.0-8/debian/rules	2022-01-11 09:44:42.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/rules	2021-04-10 22:13:44.000000000 +0000
@@ -1,39 +1,49 @@
-#!/usr/bin/make -f
+#!/usr/bin/make -f 
 
-include /usr/share/dpkg/pkg-info.mk
-include /usr/share/dpkg/architecture.mk
+LDFLAGS+=-Wl,--as-needed
 
-export DEB_LDFLAGS_MAINT_APPEND=-Wl,-O1
-export DEB_CXXFLAGS_MAINT_APPEND=-fvisibility=hidden
-export DEB_BUILD_MAINT_OPTIONS=hardening=+all
+%:
+	dh $@ --with quilt,autoreconf,translations,systemd --parallel
+
+override_dh_autoreconf:
+	NOCONFIGURE=1 dh_autoreconf ./autogen.sh
 
+# NOTE: Using GNOME for now, but we still need a proper configuration system
+# See https://launchpad.net/bugs/799754
 override_dh_auto_configure:
 	dh_auto_configure -- \
-		--with-greeter-user=lightdm \
-		--with-user-session=lightdm-xsession \
-		--enable-introspection=yes \
-		--disable-silent-rules \
-		--libexecdir=/usr/lib/$(DEB_HOST_MULTIARCH)/$(DEB_SOURCE)/ \
-		--enable-liblightdm-qt5 \
-		--disable-liblightdm-qt \
-		--enable-gtk-doc
-override_dh_installchangelogs:
-	dh_installchangelogs -- NEWS
+        --libexecdir=/usr/lib/lightdm \
+        --with-greeter-user=lightdm \
+        --with-user-session=ubuntu \
+        --enable-gtk-doc \
+        --disable-libaudit
 
-override_dh_installinit:
-	dh_installinit --noscripts
+override_dh_auto_test:
+	#Disabled for now, are failing for some reason
+	#DEBUG=1 dh_auto_test || { cat tests/test-suite.log; exit 1; }
 
 override_dh_install:
-	find debian/tmp -name '*.la' -delete
-	find debian/tmp/etc/apparmor.d -type f -exec chmod 0644 '{}' \;
-	dh_install
-
-override_dh_missing:
-	dh_missing --fail-missing -X etc/init/lightdm.conf -X etc/apparmor.d/lightdm-guest-session
+	rm -r debian/tmp/usr/share/help/C/
+	# we do install pam through installpam and init through installinit
+	dh_install -X.a -X.la -Xpam.d -X'etc/init/lightdm.conf' --fail-missing
+	install -D debian/guest-account.sh debian/lightdm/usr/sbin/guest-account
+	install -D -m 755 debian/guest-session-setup.sh debian/lightdm/usr/share/lightdm/guest-session/setup.sh
+	chmod +x debian/lightdm/usr/lib/lightdm/lightdm-greeter-session
+	chmod +x debian/lightdm/usr/lib/lightdm/guest-session-auto.sh
 
-%:
-	dh $@
-
-override_dh_auto_test:
+override_dh_installinit:
+	# Don't automatically start LightDM since it could require configuration first
+	dh_installinit --no-start
 
-override_dh_installsystemd:
+override_dh_systemd_start:
+	# Don't automatically start LightDM since it could require configuration first
+	dh_systemd_start -plightdm --no-start -r lightdm.service
+
+override_dh_installpam:
+	dh_installpam
+	dh_installpam --name=lightdm-autologin
+	dh_installpam --name=lightdm-greeter
+	
+override_dh_makeshlibs:
+	dh_makeshlibs -pliblightdm-gobject-1-0 -V'liblightdm-gobject-1-0 (>= 0.9.2)' -- -c4
+	dh_makeshlibs -Nliblightdm-gobject-1-0
diff -pruN 1.26.0-8/debian/source_lightdm.py 1.30.0-0ubuntu8/debian/source_lightdm.py
--- 1.26.0-8/debian/source_lightdm.py	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/source_lightdm.py	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,28 @@
+import os
+import re
+
+from apport.hookutils import *
+
+def add_info(report, ui):
+
+    if ui:
+        display_manager_files = {}
+        if os.path.lexists('/var/log/lightdm'):
+            display_manager_files['LightdmLog'] = \
+                'cat /var/log/lightdm/lightdm.log'
+            display_manager_files['LightdmDisplayLog'] = \
+                'cat /var/log/lightdm/x-0.log'
+            display_manager_files['LightdmGreeterLog'] = \
+                 'cat /var/log/lightdm/seat0-greeter.log'
+            display_manager_files['LightdmGreeterLogOld'] = \
+                 'cat /var/log/lightdm/seat0-greeter.log.old'
+            display_manager_files['LightdmConfig'] = \
+                'cat /etc/lightdm/lightdm.conf'
+            display_manager_files['LightdmUsersConfig'] = \
+                'cat /etc/lightdm/users.conf'
+
+        if ui.yesno("Your display manager log files may help developers"\
+                    " diagnose the bug, but may contain sensitive information"\
+                    " such as your hostname or username.  Do you want to"\
+                    " include these logs in your bug report?") == True:
+            attach_root_command_outputs(report, display_manager_files)
diff -pruN 1.26.0-8/debian/tests/control 1.30.0-0ubuntu8/debian/tests/control
--- 1.26.0-8/debian/tests/control	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/tests/control	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,3 @@
+#Tests: upstream-tests
+#Depends: @, python-gi, xauth
+#Restrictions: build-needed needs-root
diff -pruN 1.26.0-8/debian/tests/upstream-tests 1.30.0-0ubuntu8/debian/tests/upstream-tests
--- 1.26.0-8/debian/tests/upstream-tests	1970-01-01 00:00:00.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/tests/upstream-tests	2019-08-14 02:18:58.000000000 +0000
@@ -0,0 +1,8 @@
+#!/bin/sh
+set -e
+set -x
+
+# We use 'ubuntu' as the default xsession, so make sure it exists
+cp tests/data/xsessions/default.desktop tests/data/xsessions/ubuntu.desktop
+
+make check
diff -pruN 1.26.0-8/debian/upstream/metadata 1.30.0-0ubuntu8/debian/upstream/metadata
--- 1.26.0-8/debian/upstream/metadata	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/upstream/metadata	1970-01-01 00:00:00.000000000 +0000
@@ -1,4 +0,0 @@
-Bug-Database: https://bugs.launchpad.net/lightdm
-Bug-Submit: https://bugs.launchpad.net/lightdm/+filebug
-Repository: https://github.com/CanonicalLtd/lightdm.git
-Repository-Browse: https://github.com/CanonicalLtd/lightdm
diff -pruN 1.26.0-8/debian/upstream/signing-key.asc 1.30.0-0ubuntu8/debian/upstream/signing-key.asc
--- 1.26.0-8/debian/upstream/signing-key.asc	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/upstream/signing-key.asc	1970-01-01 00:00:00.000000000 +0000
@@ -1,36 +0,0 @@
------BEGIN PGP PUBLIC KEY BLOCK-----
-Version: GnuPG v2
-
-mQGiBEnI6yYRBACv3C7LMEU0LHnNqyYGac+B1JZ1QDUaoUZR5lrcCHCFwzVqCYl8
-vAduwBNbWhinRaKuCbSuj5i27KjRBJM7p3nmxomnGNL0OwYakSV5xksseKv1+BNz
-QW7zNj+fONNQ3F7vsmuWsIvNoXzeQCU+4TS2bMJCoKfyqjqUKZiGW90XVwCg48Di
-OTCHQoG+WwOk8/HDrbd+yhcD/0d5OcVoq9QbitcaU9Ash2NLbffd4pl6BVwx46wJ
-2LruvaPO0MOWTn3BFPl468Uh9r8zgAqYfzOt10d8ZQIdnGuw7gLuT8WPeSgZrqT1
-lU2+hRF3gwtSjQxsozuHNXa9A4V9Y2CVOHCXs71ImWMAbG8GsikYuhHShoMzhwYS
-jJtFBACmI0AqRKyWFbrIEJxhhwjn0MAoAzaIHemYrl/GaypVUK/3v0xv0enmYl1L
-POte3fH10LDTkzUk7AWtrx0otS8iFUJR/ael6rqvfOB//XLbJTTpIzWO/bhRv6wA
-/QCZR9mhFwu5+1ygDFwlVqDd6UN7xI8yf6XLyuXBNtKed/GANbQnUm9iZXJ0IEFu
-Y2VsbCA8cm9iZXJ0LmFuY2VsbEBnbWFpbC5jb20+iGAEExECACAFAknKInwCGyMG
-CwkIBwMCBBUCCAMEFgIDAQIeAQIXgAAKCRAY6qGJD3yILmfNAJ9RW60aT3+MsCXl
-F2mdoEYvx9R1tACeL9foZq429kta/JPkfBsOsIe5kaC0KFJvYmVydCBBbmNlbGwg
-PHJvYmVydC5hbmNlbGxAdWJ1bnR1LmNvbT6IYAQTEQIAIAUCScoiaQIbIwYLCQgH
-AwIEFQIIAwQWAgMBAh4BAheAAAoJEBjqoYkPfIguivsAoJak1E7piubfdF4CuCmF
-OlfopjxwAJ9jQGAt+BBGBWtJQ3hwPxa1oz1EzbQrUm9iZXJ0IEFuY2VsbCA8cm9i
-ZXJ0LmFuY2VsbEBjYW5vbmljYWwuY29tPohgBBMRAgAgBQJJyOsmAhsjBgsJCAcD
-AgQVAggDBBYCAwECHgECF4AACgkQGOqhiQ98iC4RrwCgocvKuZXjYE8zLgGz67Xl
-ygphqScAniVSXuB/HAoC74TO24lvOCCfb4TiuQINBEnI6yYQCADH71aCWUgWAxeb
-risnj584m7TfyUAr8kUqsd0DpompOC6Nxxe6xAT8X9jWyhhieC2FpiXUSF9qZmrZ
-tEFOnlfrujqnJEee4Y/Lgo53Q2edDb3nksaaJGcK7j6R0s03dwpG8ioZc+76/lRy
-OHRTvWtJPmlHqr/VzKwL3LnUrTDc3GxJ/Gzde/iqGMCBAbPR24jJ8F56aeQdmmHB
-tiim7fnkQGSw8C26YL2eBxt3x3GfR7FTJEiGc3FBXHQ0ouoE7tELJezKm7yXPHnJ
-0flBaiYzyrRJ+m8ugoNXk+QfFiO1v1GnuNOpA82/rNtuW8DMg+rjEStxfdmRN03z
-UwQaKB0/AAMFB/9xdMe8kd+2qDTB8S9MTiYseEwY7vXrnjC/mAQXVQzjSqh+aTXy
-Un1/hPzJtZCeaQO9Wh2W/BcE4pflAcuHZ3outWIZsjzJmNvG3lPgICTuY+5V/gYL
-yyrt+Gb2ZgAtzPmS2YHkQvwqpz7w4ATV8NkYOk2KxixLDn85Dh3vdAY6PZdRmxZH
-w7mbj4gIQWxB1HfbcAzAODWEltSTJ+MPreczORKCSy7FUhoNCLlICcM/NTndlaMb
-txSkXRIC2YT2lcpHYy3zH/qCniIpQBEG6llaSn1DSWnVmoRXtGvhIpMsWrNxiEFj
-xFG0lgviFgJqm/k1Y/R1NqpIhCyZOBo4DwLQiEkEGBECAAkFAknI6yYCGwwACgkQ
-GOqhiQ98iC73TACgxvJ4sSPWaIijFZ1qGZfzHA8U+nkAn21nHJ2fZQujcWEEVhI+
-x2im2q2r
-=1Eoe
------END PGP PUBLIC KEY BLOCK-----
diff -pruN 1.26.0-8/debian/watch 1.30.0-0ubuntu8/debian/watch
--- 1.26.0-8/debian/watch	2022-01-11 09:29:21.000000000 +0000
+++ 1.30.0-0ubuntu8/debian/watch	2019-08-14 02:18:58.000000000 +0000
@@ -1,3 +1,2 @@
-version=4
-opts=pgpsigurlmangle=s/$/.asc/ \
-https://github.com/CanonicalLtd/@PACKAGE@/releases/ .*/1.26.0/@PACKAGE@-(\d\S+)\.tar\.xz
+version=3
+https://github.com/Canonical/lightdm/releases .*/lightdm-([0-9.]+)\.tar\.xz
diff -pruN 1.26.0-8/depcomp 1.30.0-0ubuntu8/depcomp
--- 1.26.0-8/depcomp	2018-03-21 23:13:51.000000000 +0000
+++ 1.30.0-0ubuntu8/depcomp	2019-05-17 04:47:12.000000000 +0000
@@ -1,9 +1,9 @@
 #! /bin/sh
 # depcomp - compile a program generating dependencies as side-effects
 
-scriptversion=2016-01-11.22; # UTC
+scriptversion=2018-03-07.03; # UTC
 
-# Copyright (C) 1999-2017 Free Software Foundation, Inc.
+# Copyright (C) 1999-2018 Free Software Foundation, Inc.
 
 # This program is free software; you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -16,7 +16,7 @@ scriptversion=2016-01-11.22; # UTC
 # GNU General Public License for more details.
 
 # You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+# along with this program.  If not, see <https://www.gnu.org/licenses/>.
 
 # As a special exception to the GNU General Public License, if you
 # distribute this file as part of a program that contains a
@@ -783,7 +783,7 @@ exit 0
 # Local Variables:
 # mode: shell-script
 # sh-indentation: 2
-# eval: (add-hook 'write-file-hooks 'time-stamp)
+# eval: (add-hook 'before-save-hook 'time-stamp)
 # time-stamp-start: "scriptversion="
 # time-stamp-format: "%:y-%02m-%02d.%02H"
 # time-stamp-time-zone: "UTC0"
diff -pruN 1.26.0-8/doc/Makefile.in 1.30.0-0ubuntu8/doc/Makefile.in
--- 1.26.0-8/doc/Makefile.in	2018-03-21 23:13:51.000000000 +0000
+++ 1.30.0-0ubuntu8/doc/Makefile.in	2019-05-17 04:47:12.000000000 +0000
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2017 Free Software Foundation, Inc.
+# Copyright (C) 1994-2018 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -461,8 +461,8 @@ Makefile: $(srcdir)/Makefile.in $(top_bu
 	  *config.status*) \
 	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
 	  *) \
-	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
-	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
+	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
 	esac;
 $(top_srcdir)/gtk-doc.make $(am__empty):
 
@@ -487,7 +487,10 @@ ctags CTAGS:
 cscope cscopelist:
 
 
-distdir: $(DISTFILES)
+distdir: $(BUILT_SOURCES)
+	$(MAKE) $(AM_MAKEFLAGS) distdir-am
+
+distdir-am: $(DISTFILES)
 	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 	list='$(DISTFILES)'; \
diff -pruN 1.26.0-8/doc/html/LightDMGreeter.html 1.30.0-0ubuntu8/doc/html/LightDMGreeter.html
--- 1.26.0-8/doc/html/LightDMGreeter.html	2018-03-21 23:15:22.000000000 +0000
+++ 1.30.0-0ubuntu8/doc/html/LightDMGreeter.html	2019-05-17 04:49:11.000000000 +0000
@@ -8,7 +8,7 @@
 <link rel="up" href="ch01.html" title="liblightdm-gobject">
 <link rel="prev" href="ch01.html" title="liblightdm-gobject">
 <link rel="next" href="LightDMLanguage.html" title="LightDMLanguage">
-<meta name="generator" content="GTK-Doc V1.27 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.28 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -2303,6 +2303,6 @@ field for the user to provide a response
 </div>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.27</div>
+<hr>Generated by GTK-Doc V1.28</div>
 </body>
 </html>
\ No newline at end of file
diff -pruN 1.26.0-8/doc/html/LightDMLanguage.html 1.30.0-0ubuntu8/doc/html/LightDMLanguage.html
--- 1.26.0-8/doc/html/LightDMLanguage.html	2018-03-21 23:15:22.000000000 +0000
+++ 1.30.0-0ubuntu8/doc/html/LightDMLanguage.html	2019-05-17 04:49:11.000000000 +0000
@@ -8,7 +8,7 @@
 <link rel="up" href="ch01.html" title="liblightdm-gobject">
 <link rel="prev" href="LightDMGreeter.html" title="LightDMGreeter">
 <link rel="next" href="LightDMLayout.html" title="LightDMLayout">
-<meta name="generator" content="GTK-Doc V1.27 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.28 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -303,6 +303,6 @@ lightdm_language_matches (<em class="par
 </div>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.27</div>
+<hr>Generated by GTK-Doc V1.28</div>
 </body>
 </html>
\ No newline at end of file
diff -pruN 1.26.0-8/doc/html/LightDMLayout.html 1.30.0-0ubuntu8/doc/html/LightDMLayout.html
--- 1.26.0-8/doc/html/LightDMLayout.html	2018-03-21 23:15:22.000000000 +0000
+++ 1.30.0-0ubuntu8/doc/html/LightDMLayout.html	2019-05-17 04:49:11.000000000 +0000
@@ -8,7 +8,7 @@
 <link rel="up" href="ch01.html" title="liblightdm-gobject">
 <link rel="prev" href="LightDMLanguage.html" title="LightDMLanguage">
 <link rel="next" href="LightDMSession.html" title="LightDMSession">
-<meta name="generator" content="GTK-Doc V1.27 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.28 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -291,6 +291,6 @@ lightdm_layout_get_description (<em clas
 </div>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.27</div>
+<hr>Generated by GTK-Doc V1.28</div>
 </body>
 </html>
\ No newline at end of file
diff -pruN 1.26.0-8/doc/html/LightDMSession.html 1.30.0-0ubuntu8/doc/html/LightDMSession.html
--- 1.26.0-8/doc/html/LightDMSession.html	2018-03-21 23:15:22.000000000 +0000
+++ 1.30.0-0ubuntu8/doc/html/LightDMSession.html	2019-05-17 04:49:11.000000000 +0000
@@ -8,7 +8,7 @@
 <link rel="up" href="ch01.html" title="liblightdm-gobject">
 <link rel="prev" href="LightDMLayout.html" title="LightDMLayout">
 <link rel="next" href="LightDMUserList.html" title="LightDMUserList">
-<meta name="generator" content="GTK-Doc V1.27 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.28 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -294,6 +294,6 @@ lightdm_session_get_comment (<em class="
 </div>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.27</div>
+<hr>Generated by GTK-Doc V1.28</div>
 </body>
 </html>
\ No newline at end of file
diff -pruN 1.26.0-8/doc/html/LightDMUser.html 1.30.0-0ubuntu8/doc/html/LightDMUser.html
--- 1.26.0-8/doc/html/LightDMUser.html	2018-03-21 23:15:22.000000000 +0000
+++ 1.30.0-0ubuntu8/doc/html/LightDMUser.html	2019-05-17 04:49:11.000000000 +0000
@@ -8,7 +8,7 @@
 <link rel="up" href="ch01.html" title="liblightdm-gobject">
 <link rel="prev" href="LightDMUserList.html" title="LightDMUserList">
 <link rel="next" href="lightdm-gobject-1-Power-Management.html" title="Power Management">
-<meta name="generator" content="GTK-Doc V1.27 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.28 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -136,6 +136,14 @@
 <a class="link" href="LightDMUser.html#lightdm-user-get-uid" title="lightdm_user_get_uidÂ ()">lightdm_user_get_uid</a>Â <span class="c_punctuation">()</span>
 </td>
 </tr>
+<tr>
+<td class="function_type">
+<a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+</td>
+<td class="function_name">
+<a class="link" href="LightDMUser.html#lightdm-user-get-is-locked" title="lightdm_user_get_is_lockedÂ ()">lightdm_user_get_is_locked</a>Â <span class="c_punctuation">()</span>
+</td>
+</tr>
 </tbody>
 </table></div>
 </div>
@@ -184,6 +192,11 @@
 <td class="property_flags">Read</td>
 </tr>
 <tr>
+<td class="property_type"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></td>
+<td class="property_name"><a class="link" href="LightDMUser.html#LightDMUser--is-locked" title="The â€œis-lockedâ€ property">is-locked</a></td>
+<td class="property_flags">Read</td>
+</tr>
+<tr>
 <td class="property_type">
 <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>Â *</td>
 <td class="property_name"><a class="link" href="LightDMUser.html#LightDMUser--language" title="The â€œlanguageâ€ property">language</a></td>
@@ -606,6 +619,32 @@ lightdm_user_get_uid (<em class="paramet
 <p> The uid of the given user</p>
 </div>
 </div>
+<hr>
+<div class="refsect2">
+<a name="lightdm-user-get-is-locked"></a><h3>lightdm_user_get_is_lockedÂ ()</h3>
+<pre class="programlisting"><a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="returnvalue">gboolean</span></a>
+lightdm_user_get_is_locked (<em class="parameter"><code><a class="link" href="LightDMUser.html" title="LightDMUser"><span class="type">LightDMUser</span></a> *user</code></em>);</pre>
+<p>Get if the user is locked.</p>
+<div class="refsect3">
+<a name="lightdm-user-get-is-locked.parameters"></a><h4>Parameters</h4>
+<div class="informaltable"><table class="informaltable" width="100%" border="0">
+<colgroup>
+<col width="150px" class="parameters_name">
+<col class="parameters_description">
+<col width="200px" class="parameters_annotations">
+</colgroup>
+<tbody><tr>
+<td class="parameter_name"><p>user</p></td>
+<td class="parameter_description"><p>A <a class="link" href="LightDMUser.html" title="LightDMUser"><span class="type">LightDMUser</span></a></p></td>
+<td class="parameter_annotations">Â </td>
+</tr></tbody>
+</table></div>
+</div>
+<div class="refsect3">
+<a name="lightdm-user-get-is-locked.returns"></a><h4>Returns</h4>
+<p> <a href="/usr/share/gtk-doc/html/glib/glib-Standard-Macros.html#TRUE:CAPS"><code class="literal">TRUE</code></a> if the user is locked</p>
+</div>
+</div>
 </div>
 <div class="refsect1">
 <a name="LightDMUser.other_details"></a><h2>Types and Values</h2>
@@ -660,6 +699,14 @@ lightdm_user_get_uid (<em class="paramet
 </div>
 <hr>
 <div class="refsect2">
+<a name="LightDMUser--is-locked"></a><h3>The <code class="literal">â€œis-lockedâ€</code> property</h3>
+<pre class="programlisting">  â€œis-lockedâ€                <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gboolean"><span class="type">gboolean</span></a></pre>
+<p>TRUE if the user is currently locked.</p>
+<p>Flags: Read</p>
+<p>Default value: FALSE</p>
+</div>
+<hr>
+<div class="refsect2">
 <a name="LightDMUser--language"></a><h3>The <code class="literal">â€œlanguageâ€</code> property</h3>
 <pre class="programlisting">  â€œlanguageâ€                 <a href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gchar"><span class="type">gchar</span></a>Â *</pre>
 <p>Language used by this user.</p>
@@ -757,6 +804,6 @@ user_function (<a class="link" href="Lig
 </div>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.27</div>
+<hr>Generated by GTK-Doc V1.28</div>
 </body>
 </html>
\ No newline at end of file
diff -pruN 1.26.0-8/doc/html/LightDMUserList.html 1.30.0-0ubuntu8/doc/html/LightDMUserList.html
--- 1.26.0-8/doc/html/LightDMUserList.html	2018-03-21 23:15:22.000000000 +0000
+++ 1.30.0-0ubuntu8/doc/html/LightDMUserList.html	2019-05-17 04:49:11.000000000 +0000
@@ -8,7 +8,7 @@
 <link rel="up" href="ch01.html" title="liblightdm-gobject">
 <link rel="prev" href="LightDMSession.html" title="LightDMSession">
 <link rel="next" href="LightDMUser.html" title="LightDMUser">
-<meta name="generator" content="GTK-Doc V1.27 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.28 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -381,6 +381,6 @@ user_function (<a class="link" href="Lig
 </div>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.27</div>
+<hr>Generated by GTK-Doc V1.28</div>
 </body>
 </html>
\ No newline at end of file
diff -pruN 1.26.0-8/doc/html/annotation-glossary.html 1.30.0-0ubuntu8/doc/html/annotation-glossary.html
--- 1.26.0-8/doc/html/annotation-glossary.html	2018-03-21 23:15:22.000000000 +0000
+++ 1.30.0-0ubuntu8/doc/html/annotation-glossary.html	2019-05-17 04:49:11.000000000 +0000
@@ -7,7 +7,7 @@
 <link rel="home" href="index.html" title="LightDM Reference Manual">
 <link rel="up" href="index.html" title="LightDM Reference Manual">
 <link rel="prev" href="deprecated-api-index.html" title="Index of deprecated API">
-<meta name="generator" content="GTK-Doc V1.27 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.28 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -43,6 +43,6 @@
 <dd class="glossdef"><p>Don't free data after the code is done.</p></dd>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.27</div>
+<hr>Generated by GTK-Doc V1.28</div>
 </body>
 </html>
\ No newline at end of file
diff -pruN 1.26.0-8/doc/html/api-index-full.html 1.30.0-0ubuntu8/doc/html/api-index-full.html
--- 1.26.0-8/doc/html/api-index-full.html	2018-03-21 23:15:22.000000000 +0000
+++ 1.30.0-0ubuntu8/doc/html/api-index-full.html	2019-05-17 04:49:11.000000000 +0000
@@ -8,7 +8,7 @@
 <link rel="up" href="index.html" title="LightDM Reference Manual">
 <link rel="prev" href="object-tree.html" title="Object Hierarchy">
 <link rel="next" href="deprecated-api-index.html" title="Index of deprecated API">
-<meta name="generator" content="GTK-Doc V1.27 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.28 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -485,6 +485,10 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="LightDMUser.html#LightDMUser--is-locked" title="The â€œis-lockedâ€ property">LightDMUser:is-locked</a>, object property in <a class="link" href="LightDMUser.html" title="LightDMUser">LightDMUser</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="LightDMUser.html#LightDMUser--language" title="The â€œlanguageâ€ property">LightDMUser:language</a>, object property in <a class="link" href="LightDMUser.html" title="LightDMUser">LightDMUser</a>
 </dt>
 <dd></dd>
@@ -557,6 +561,10 @@
 </dt>
 <dd></dd>
 <dt>
+<a class="link" href="LightDMUser.html#lightdm-user-get-is-locked" title="lightdm_user_get_is_lockedÂ ()">lightdm_user_get_is_locked</a>, function in <a class="link" href="LightDMUser.html" title="LightDMUser">LightDMUser</a>
+</dt>
+<dd></dd>
+<dt>
 <a class="link" href="LightDMUser.html#lightdm-user-get-language" title="lightdm_user_get_languageÂ ()">lightdm_user_get_language</a>, function in <a class="link" href="LightDMUser.html" title="LightDMUser">LightDMUser</a>
 </dt>
 <dd></dd>
@@ -606,6 +614,6 @@
 <dd></dd>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.27</div>
+<hr>Generated by GTK-Doc V1.28</div>
 </body>
 </html>
\ No newline at end of file
diff -pruN 1.26.0-8/doc/html/ch01.html 1.30.0-0ubuntu8/doc/html/ch01.html
--- 1.26.0-8/doc/html/ch01.html	2018-03-21 23:15:22.000000000 +0000
+++ 1.30.0-0ubuntu8/doc/html/ch01.html	2019-05-17 04:49:11.000000000 +0000
@@ -8,7 +8,7 @@
 <link rel="up" href="index.html" title="LightDM Reference Manual">
 <link rel="prev" href="index.html" title="LightDM Reference Manual">
 <link rel="next" href="LightDMGreeter.html" title="LightDMGreeter">
-<meta name="generator" content="GTK-Doc V1.27 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.28 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -50,6 +50,6 @@
 </dl></div>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.27</div>
+<hr>Generated by GTK-Doc V1.28</div>
 </body>
 </html>
\ No newline at end of file
diff -pruN 1.26.0-8/doc/html/deprecated-api-index.html 1.30.0-0ubuntu8/doc/html/deprecated-api-index.html
--- 1.26.0-8/doc/html/deprecated-api-index.html	2018-03-21 23:15:22.000000000 +0000
+++ 1.30.0-0ubuntu8/doc/html/deprecated-api-index.html	2019-05-17 04:49:11.000000000 +0000
@@ -8,7 +8,7 @@
 <link rel="up" href="index.html" title="LightDM Reference Manual">
 <link rel="prev" href="api-index-full.html" title="API Index">
 <link rel="next" href="annotation-glossary.html" title="Annotation Glossary">
-<meta name="generator" content="GTK-Doc V1.27 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.28 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -29,6 +29,6 @@
 <dd></dd>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.27</div>
+<hr>Generated by GTK-Doc V1.28</div>
 </body>
 </html>
\ No newline at end of file
diff -pruN 1.26.0-8/doc/html/index.html 1.30.0-0ubuntu8/doc/html/index.html
--- 1.26.0-8/doc/html/index.html	2018-03-21 23:15:22.000000000 +0000
+++ 1.30.0-0ubuntu8/doc/html/index.html	2019-05-17 04:49:11.000000000 +0000
@@ -6,7 +6,7 @@
 <meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
 <link rel="home" href="index.html" title="LightDM Reference Manual">
 <link rel="next" href="ch01.html" title="liblightdm-gobject">
-<meta name="generator" content="GTK-Doc V1.27 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.28 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -50,6 +50,6 @@
 </dl></div>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.27</div>
+<hr>Generated by GTK-Doc V1.28</div>
 </body>
 </html>
\ No newline at end of file
diff -pruN 1.26.0-8/doc/html/lightdm-gobject-1-Power-Management.html 1.30.0-0ubuntu8/doc/html/lightdm-gobject-1-Power-Management.html
--- 1.26.0-8/doc/html/lightdm-gobject-1-Power-Management.html	2018-03-21 23:15:22.000000000 +0000
+++ 1.30.0-0ubuntu8/doc/html/lightdm-gobject-1-Power-Management.html	2019-05-17 04:49:11.000000000 +0000
@@ -8,7 +8,7 @@
 <link rel="up" href="ch01.html" title="liblightdm-gobject">
 <link rel="prev" href="LightDMUser.html" title="LightDMUser">
 <link rel="next" href="lightdm-gobject-1-System-Information.html" title="System Information">
-<meta name="generator" content="GTK-Doc V1.27 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.28 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -270,6 +270,6 @@ lightdm_shutdown (<em class="parameter">
 </div>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.27</div>
+<hr>Generated by GTK-Doc V1.28</div>
 </body>
 </html>
\ No newline at end of file
diff -pruN 1.26.0-8/doc/html/lightdm-gobject-1-System-Information.html 1.30.0-0ubuntu8/doc/html/lightdm-gobject-1-System-Information.html
--- 1.26.0-8/doc/html/lightdm-gobject-1-System-Information.html	2018-03-21 23:15:22.000000000 +0000
+++ 1.30.0-0ubuntu8/doc/html/lightdm-gobject-1-System-Information.html	2019-05-17 04:49:11.000000000 +0000
@@ -8,7 +8,7 @@
 <link rel="up" href="ch01.html" title="liblightdm-gobject">
 <link rel="prev" href="lightdm-gobject-1-Power-Management.html" title="Power Management">
 <link rel="next" href="object-tree.html" title="Object Hierarchy">
-<meta name="generator" content="GTK-Doc V1.27 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.28 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -196,6 +196,6 @@ e.g. "Welcome to Yoyodyne"</p>
 </div>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.27</div>
+<hr>Generated by GTK-Doc V1.28</div>
 </body>
 </html>
\ No newline at end of file
diff -pruN 1.26.0-8/doc/html/lightdm-gobject-1.devhelp2 1.30.0-0ubuntu8/doc/html/lightdm-gobject-1.devhelp2
--- 1.26.0-8/doc/html/lightdm-gobject-1.devhelp2	2018-03-21 23:15:22.000000000 +0000
+++ 1.30.0-0ubuntu8/doc/html/lightdm-gobject-1.devhelp2	2019-05-17 04:49:11.000000000 +0000
@@ -127,12 +127,14 @@
     <keyword type="function" name="lightdm_user_get_logged_inÂ ()" link="LightDMUser.html#lightdm-user-get-logged-in"/>
     <keyword type="function" name="lightdm_user_get_has_messagesÂ ()" link="LightDMUser.html#lightdm-user-get-has-messages"/>
     <keyword type="function" name="lightdm_user_get_uidÂ ()" link="LightDMUser.html#lightdm-user-get-uid"/>
+    <keyword type="function" name="lightdm_user_get_is_lockedÂ ()" link="LightDMUser.html#lightdm-user-get-is-locked"/>
     <keyword type="property" name="The â€œbackgroundâ€ property" link="LightDMUser.html#LightDMUser--background"/>
     <keyword type="property" name="The â€œcommon-userâ€ property" link="LightDMUser.html#LightDMUser--common-user"/>
     <keyword type="property" name="The â€œdisplay-nameâ€ property" link="LightDMUser.html#LightDMUser--display-name"/>
     <keyword type="property" name="The â€œhas-messagesâ€ property" link="LightDMUser.html#LightDMUser--has-messages"/>
     <keyword type="property" name="The â€œhome-directoryâ€ property" link="LightDMUser.html#LightDMUser--home-directory"/>
     <keyword type="property" name="The â€œimageâ€ property" link="LightDMUser.html#LightDMUser--image"/>
+    <keyword type="property" name="The â€œis-lockedâ€ property" link="LightDMUser.html#LightDMUser--is-locked"/>
     <keyword type="property" name="The â€œlanguageâ€ property" link="LightDMUser.html#LightDMUser--language"/>
     <keyword type="property" name="The â€œlayoutâ€ property" link="LightDMUser.html#LightDMUser--layout"/>
     <keyword type="property" name="The â€œlayoutsâ€ property" link="LightDMUser.html#LightDMUser--layouts"/>
diff -pruN 1.26.0-8/doc/html/object-tree.html 1.30.0-0ubuntu8/doc/html/object-tree.html
--- 1.26.0-8/doc/html/object-tree.html	2018-03-21 23:15:22.000000000 +0000
+++ 1.30.0-0ubuntu8/doc/html/object-tree.html	2019-05-17 04:49:11.000000000 +0000
@@ -8,7 +8,7 @@
 <link rel="up" href="index.html" title="LightDM Reference Manual">
 <link rel="prev" href="lightdm-gobject-1-System-Information.html" title="System Information">
 <link rel="next" href="api-index-full.html" title="API Index">
-<meta name="generator" content="GTK-Doc V1.27 (XML mode)">
+<meta name="generator" content="GTK-Doc V1.28 (XML mode)">
 <link rel="stylesheet" href="style.css" type="text/css">
 </head>
 <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
@@ -37,6 +37,6 @@
 </pre>
 </div>
 <div class="footer">
-<hr>Generated by GTK-Doc V1.27</div>
+<hr>Generated by GTK-Doc V1.28</div>
 </body>
 </html>
\ No newline at end of file
diff -pruN 1.26.0-8/doc/html/style.css 1.30.0-0ubuntu8/doc/html/style.css
--- 1.26.0-8/doc/html/style.css	2018-03-21 23:15:22.000000000 +0000
+++ 1.30.0-0ubuntu8/doc/html/style.css	2019-05-17 04:49:11.000000000 +0000
@@ -30,6 +30,10 @@ body
   vertical-align: top;
 }
 
+span.nowrap {
+  white-space: nowrap;
+}
+
 div.gallery-float
 {
   float: left;
diff -pruN 1.26.0-8/doc/lightdm-gobject-1-sections.txt 1.30.0-0ubuntu8/doc/lightdm-gobject-1-sections.txt
--- 1.26.0-8/doc/lightdm-gobject-1-sections.txt	2018-03-21 23:15:22.000000000 +0000
+++ 1.30.0-0ubuntu8/doc/lightdm-gobject-1-sections.txt	2019-05-17 04:49:11.000000000 +0000
@@ -192,6 +192,7 @@ lightdm_user_get_session
 lightdm_user_get_logged_in
 lightdm_user_get_has_messages
 lightdm_user_get_uid
+lightdm_user_get_is_locked
 <SUBSECTION Standard>
 LIGHTDM_IS_USER
 LIGHTDM_IS_USER_CLASS
diff -pruN 1.26.0-8/help/Makefile.in 1.30.0-0ubuntu8/help/Makefile.in
--- 1.26.0-8/help/Makefile.in	2018-03-21 23:13:51.000000000 +0000
+++ 1.30.0-0ubuntu8/help/Makefile.in	2019-05-17 04:47:12.000000000 +0000
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2017 Free Software Foundation, Inc.
+# Copyright (C) 1994-2018 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -357,8 +357,8 @@ Makefile: $(srcdir)/Makefile.in $(top_bu
 	  *config.status*) \
 	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
 	  *) \
-	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
-	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
+	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
 	esac;
 
 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
@@ -382,7 +382,10 @@ ctags CTAGS:
 cscope cscopelist:
 
 
-distdir: $(DISTFILES)
+distdir: $(BUILT_SOURCES)
+	$(MAKE) $(AM_MAKEFLAGS) distdir-am
+
+distdir-am: $(DISTFILES)
 	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 	list='$(DISTFILES)'; \
diff -pruN 1.26.0-8/liblightdm-gobject/Makefile.in 1.30.0-0ubuntu8/liblightdm-gobject/Makefile.in
--- 1.26.0-8/liblightdm-gobject/Makefile.in	2018-03-21 23:13:51.000000000 +0000
+++ 1.30.0-0ubuntu8/liblightdm-gobject/Makefile.in	2019-05-17 04:47:12.000000000 +0000
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2017 Free Software Foundation, Inc.
+# Copyright (C) 1994-2018 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -176,7 +176,14 @@ am__v_at_0 = @
 am__v_at_1 = 
 DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
 depcomp = $(SHELL) $(top_srcdir)/depcomp
-am__depfiles_maybe = depfiles
+am__maybe_remake_depfiles = depfiles
+am__depfiles_remade = ./$(DEPDIR)/liblightdm_gobject_1_la-greeter.Plo \
+	./$(DEPDIR)/liblightdm_gobject_1_la-language.Plo \
+	./$(DEPDIR)/liblightdm_gobject_1_la-layout.Plo \
+	./$(DEPDIR)/liblightdm_gobject_1_la-power.Plo \
+	./$(DEPDIR)/liblightdm_gobject_1_la-session.Plo \
+	./$(DEPDIR)/liblightdm_gobject_1_la-system.Plo \
+	./$(DEPDIR)/liblightdm_gobject_1_la-user.Plo
 am__mv = mv -f
 COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
 	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
@@ -506,8 +513,8 @@ Makefile: $(srcdir)/Makefile.in $(top_bu
 	  *config.status*) \
 	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
 	  *) \
-	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
-	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
+	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
 	esac;
 
 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
@@ -565,13 +572,19 @@ mostlyclean-compile:
 distclean-compile:
 	-rm -f *.tab.c
 
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/liblightdm_gobject_1_la-greeter.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/liblightdm_gobject_1_la-language.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/liblightdm_gobject_1_la-layout.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/liblightdm_gobject_1_la-power.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/liblightdm_gobject_1_la-session.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/liblightdm_gobject_1_la-system.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/liblightdm_gobject_1_la-user.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/liblightdm_gobject_1_la-greeter.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/liblightdm_gobject_1_la-language.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/liblightdm_gobject_1_la-layout.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/liblightdm_gobject_1_la-power.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/liblightdm_gobject_1_la-session.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/liblightdm_gobject_1_la-system.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/liblightdm_gobject_1_la-user.Plo@am__quote@ # am--include-marker
+
+$(am__depfiles_remade):
+	@$(MKDIR_P) $(@D)
+	@echo '# dummy' >$@-t && $(am__mv) $@-t $@
+
+am--depfiles: $(am__depfiles_remade)
 
 .c.o:
 @am__fastdepCC_TRUE@	$(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@@ -827,7 +840,10 @@ cscopelist-am: $(am__tagged_files)
 distclean-tags:
 	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
 
-distdir: $(DISTFILES)
+distdir: $(BUILT_SOURCES)
+	$(MAKE) $(AM_MAKEFLAGS) distdir-am
+
+distdir-am: $(DISTFILES)
 	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 	list='$(DISTFILES)'; \
@@ -901,7 +917,13 @@ clean-am: clean-generic clean-libLTLIBRA
 	mostlyclean-am
 
 distclean: distclean-am
-	-rm -rf ./$(DEPDIR)
+		-rm -f ./$(DEPDIR)/liblightdm_gobject_1_la-greeter.Plo
+	-rm -f ./$(DEPDIR)/liblightdm_gobject_1_la-language.Plo
+	-rm -f ./$(DEPDIR)/liblightdm_gobject_1_la-layout.Plo
+	-rm -f ./$(DEPDIR)/liblightdm_gobject_1_la-power.Plo
+	-rm -f ./$(DEPDIR)/liblightdm_gobject_1_la-session.Plo
+	-rm -f ./$(DEPDIR)/liblightdm_gobject_1_la-system.Plo
+	-rm -f ./$(DEPDIR)/liblightdm_gobject_1_la-user.Plo
 	-rm -f Makefile
 distclean-am: clean-am distclean-compile distclean-generic \
 	distclean-tags
@@ -950,7 +972,13 @@ install-ps-am:
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
-	-rm -rf ./$(DEPDIR)
+		-rm -f ./$(DEPDIR)/liblightdm_gobject_1_la-greeter.Plo
+	-rm -f ./$(DEPDIR)/liblightdm_gobject_1_la-language.Plo
+	-rm -f ./$(DEPDIR)/liblightdm_gobject_1_la-layout.Plo
+	-rm -f ./$(DEPDIR)/liblightdm_gobject_1_la-power.Plo
+	-rm -f ./$(DEPDIR)/liblightdm_gobject_1_la-session.Plo
+	-rm -f ./$(DEPDIR)/liblightdm_gobject_1_la-system.Plo
+	-rm -f ./$(DEPDIR)/liblightdm_gobject_1_la-user.Plo
 	-rm -f Makefile
 maintainer-clean-am: distclean-am maintainer-clean-generic
 
@@ -974,9 +1002,9 @@ uninstall-am: uninstall-girDATA uninstal
 
 .MAKE: install-am install-strip
 
-.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
-	clean-libLTLIBRARIES clean-libtool cscopelist-am ctags \
-	ctags-am distclean distclean-compile distclean-generic \
+.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \
+	clean-generic clean-libLTLIBRARIES clean-libtool cscopelist-am \
+	ctags ctags-am distclean distclean-compile distclean-generic \
 	distclean-libtool distclean-tags distdir dvi dvi-am html \
 	html-am info info-am install install-am install-data \
 	install-data-am install-dvi install-dvi-am install-exec \
diff -pruN 1.26.0-8/liblightdm-gobject/greeter.c 1.30.0-0ubuntu8/liblightdm-gobject/greeter.c
--- 1.26.0-8/liblightdm-gobject/greeter.c	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/liblightdm-gobject/greeter.c	2018-09-05 01:33:31.000000000 +0000
@@ -166,7 +166,7 @@ typedef struct
     gboolean cancelling_authentication;
 } LightDMGreeterPrivate;
 
-G_DEFINE_TYPE (LightDMGreeter, lightdm_greeter, G_TYPE_OBJECT)
+G_DEFINE_TYPE_WITH_PRIVATE (LightDMGreeter, lightdm_greeter, G_TYPE_OBJECT)
 
 #define GET_PRIVATE(obj) G_TYPE_INSTANCE_GET_PRIVATE ((obj), LIGHTDM_TYPE_GREETER, LightDMGreeterPrivate)
 
@@ -1897,8 +1897,6 @@ lightdm_greeter_class_init (LightDMGreet
 {
     GObjectClass *object_class = G_OBJECT_CLASS (klass);
 
-    g_type_class_add_private (klass, sizeof (LightDMGreeterPrivate));
-
     object_class->set_property = lightdm_greeter_set_property;
     object_class->get_property = lightdm_greeter_get_property;
     object_class->finalize = lightdm_greeter_finalize;
diff -pruN 1.26.0-8/liblightdm-gobject/language.c 1.30.0-0ubuntu8/liblightdm-gobject/language.c
--- 1.26.0-8/liblightdm-gobject/language.c	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/liblightdm-gobject/language.c	2018-09-05 01:33:31.000000000 +0000
@@ -50,7 +50,7 @@ typedef struct
     gchar *territory;
 } LightDMLanguagePrivate;
 
-G_DEFINE_TYPE (LightDMLanguage, lightdm_language, G_TYPE_OBJECT)
+G_DEFINE_TYPE_WITH_PRIVATE (LightDMLanguage, lightdm_language, G_TYPE_OBJECT)
 
 #define GET_PRIVATE(obj) G_TYPE_INSTANCE_GET_PRIVATE ((obj), LIGHTDM_TYPE_LANGUAGE, LightDMLanguagePrivate)
 
@@ -356,8 +356,6 @@ lightdm_language_class_init (LightDMLang
 {
     GObjectClass *object_class = G_OBJECT_CLASS (klass);
 
-    g_type_class_add_private (klass, sizeof (LightDMLanguagePrivate));
-
     object_class->set_property = lightdm_language_set_property;
     object_class->get_property = lightdm_language_get_property;
 
diff -pruN 1.26.0-8/liblightdm-gobject/layout.c 1.30.0-0ubuntu8/liblightdm-gobject/layout.c
--- 1.26.0-8/liblightdm-gobject/layout.c	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/liblightdm-gobject/layout.c	2018-09-05 01:33:31.000000000 +0000
@@ -47,7 +47,7 @@ typedef struct
     gchar *description;
 } LightDMLayoutPrivate;
 
-G_DEFINE_TYPE (LightDMLayout, lightdm_layout, G_TYPE_OBJECT)
+G_DEFINE_TYPE_WITH_PRIVATE (LightDMLayout, lightdm_layout, G_TYPE_OBJECT)
 
 #define GET_PRIVATE(obj) G_TYPE_INSTANCE_GET_PRIVATE ((obj), LIGHTDM_TYPE_LAYOUT, LightDMLayoutPrivate)
 
@@ -319,8 +319,6 @@ lightdm_layout_class_init (LightDMLayout
 {
     GObjectClass *object_class = G_OBJECT_CLASS (klass);
 
-    g_type_class_add_private (klass, sizeof (LightDMLayoutPrivate));
-
     object_class->set_property = lightdm_layout_set_property;
     object_class->get_property = lightdm_layout_get_property;
     object_class->finalize = lightdm_layout_finalize;
diff -pruN 1.26.0-8/liblightdm-gobject/lightdm/language.h 1.30.0-0ubuntu8/liblightdm-gobject/lightdm/language.h
--- 1.26.0-8/liblightdm-gobject/lightdm/language.h	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/liblightdm-gobject/lightdm/language.h	2018-09-05 01:33:31.000000000 +0000
@@ -16,7 +16,7 @@
 G_BEGIN_DECLS
 
 #define LIGHTDM_TYPE_LANGUAGE            (lightdm_language_get_type())
-#define LIGHTDM_LANGUAGE(obj)            (G_TYPE_CHECK_INSTANCE_CAST ((obj), LIGHTDM_TYPE_LANGUAGE, LightDMLanguage));
+#define LIGHTDM_LANGUAGE(obj)            (G_TYPE_CHECK_INSTANCE_CAST ((obj), LIGHTDM_TYPE_LANGUAGE, LightDMLanguage))
 #define LIGHTDM_LANGUAGE_CLASS(klass)    (G_TYPE_CHECK_CLASS_CAST ((klass), LIGHTDM_TYPE_LANGUAGE, LightDMLanguageClass))
 #define LIGHTDM_IS_LANGUAGE(obj)         (G_TYPE_CHECK_INSTANCE_TYPE ((obj), LIGHTDM_TYPE_LANGUAGE))
 #define LIGHTDM_IS_LANGUAGE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), LIGHTDM_TYPE_LANGUAGE))
diff -pruN 1.26.0-8/liblightdm-gobject/lightdm/layout.h 1.30.0-0ubuntu8/liblightdm-gobject/lightdm/layout.h
--- 1.26.0-8/liblightdm-gobject/lightdm/layout.h	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/liblightdm-gobject/lightdm/layout.h	2018-09-05 01:33:31.000000000 +0000
@@ -16,7 +16,7 @@
 G_BEGIN_DECLS
 
 #define LIGHTDM_TYPE_LAYOUT            (lightdm_layout_get_type())
-#define LIGHTDM_LAYOUT(obj)            (G_TYPE_CHECK_INSTANCE_CAST ((obj), LIGHTDM_TYPE_LAYOUT, LightDMLayout));
+#define LIGHTDM_LAYOUT(obj)            (G_TYPE_CHECK_INSTANCE_CAST ((obj), LIGHTDM_TYPE_LAYOUT, LightDMLayout))
 #define LIGHTDM_LAYOUT_CLASS(klass)    (G_TYPE_CHECK_CLASS_CAST ((klass), LIGHTDM_TYPE_LAYOUT, LightDMLayoutClass))
 #define LIGHTDM_IS_LAYOUT(obj)         (G_TYPE_CHECK_INSTANCE_TYPE ((obj), LIGHTDM_TYPE_LAYOUT))
 #define LIGHTDM_IS_LAYOUT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), LIGHTDM_TYPE_LAYOUT))
diff -pruN 1.26.0-8/liblightdm-gobject/lightdm/session.h 1.30.0-0ubuntu8/liblightdm-gobject/lightdm/session.h
--- 1.26.0-8/liblightdm-gobject/lightdm/session.h	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/liblightdm-gobject/lightdm/session.h	2018-09-05 01:33:31.000000000 +0000
@@ -16,7 +16,7 @@
 G_BEGIN_DECLS
 
 #define LIGHTDM_TYPE_SESSION            (lightdm_session_get_type())
-#define LIGHTDM_SESSION(obj)            (G_TYPE_CHECK_INSTANCE_CAST ((obj), LIGHTDM_TYPE_SESSION, LightDMSession));
+#define LIGHTDM_SESSION(obj)            (G_TYPE_CHECK_INSTANCE_CAST ((obj), LIGHTDM_TYPE_SESSION, LightDMSession))
 #define LIGHTDM_SESSION_CLASS(klass)    (G_TYPE_CHECK_CLASS_CAST ((klass), LIGHTDM_TYPE_SESSION, LightDMSessionClass))
 #define LIGHTDM_IS_SESSION(obj)         (G_TYPE_CHECK_INSTANCE_TYPE ((obj), LIGHTDM_TYPE_SESSION))
 #define LIGHTDM_IS_SESSION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), LIGHTDM_TYPE_SESSION))
diff -pruN 1.26.0-8/liblightdm-gobject/lightdm/user.h 1.30.0-0ubuntu8/liblightdm-gobject/lightdm/user.h
--- 1.26.0-8/liblightdm-gobject/lightdm/user.h	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/liblightdm-gobject/lightdm/user.h	2019-05-17 04:41:37.000000000 +0000
@@ -16,7 +16,7 @@
 G_BEGIN_DECLS
 
 #define LIGHTDM_TYPE_USER_LIST            (lightdm_user_list_get_type())
-#define LIGHTDM_USER_LIST(obj)            (G_TYPE_CHECK_INSTANCE_CAST ((obj), LIGHTDM_TYPE_USER_LIST, LightDMUserList));
+#define LIGHTDM_USER_LIST(obj)            (G_TYPE_CHECK_INSTANCE_CAST ((obj), LIGHTDM_TYPE_USER_LIST, LightDMUserList))
 #define LIGHTDM_USER_LIST_CLASS(klass)    (G_TYPE_CHECK_CLASS_CAST ((klass), LIGHTDM_TYPE_USER_LIST, LightDMUserListClass))
 #define LIGHTDM_IS_USER_LIST(obj)         (G_TYPE_CHECK_INSTANCE_TYPE ((obj), LIGHTDM_TYPE_USER_LIST))
 #define LIGHTDM_IS_USER_LIST_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), LIGHTDM_TYPE_USER_LIST))
@@ -26,7 +26,7 @@ typedef struct _LightDMUserList
 typedef struct _LightDMUserListClass      LightDMUserListClass;
 
 #define LIGHTDM_TYPE_USER            (lightdm_user_get_type())
-#define LIGHTDM_USER(obj)            (G_TYPE_CHECK_INSTANCE_CAST ((obj), LIGHTDM_TYPE_USER, LightDMUser));
+#define LIGHTDM_USER(obj)            (G_TYPE_CHECK_INSTANCE_CAST ((obj), LIGHTDM_TYPE_USER, LightDMUser))
 #define LIGHTDM_USER_CLASS(klass)    (G_TYPE_CHECK_CLASS_CAST ((klass), LIGHTDM_TYPE_USER, LightDMUserClass))
 #define LIGHTDM_IS_USER(obj)         (G_TYPE_CHECK_INSTANCE_TYPE ((obj), LIGHTDM_TYPE_USER))
 #define LIGHTDM_IS_USER_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), LIGHTDM_TYPE_USER))
@@ -136,6 +136,8 @@ gboolean lightdm_user_get_has_messages (
 
 uid_t lightdm_user_get_uid (LightDMUser *user);
 
+gboolean lightdm_user_get_is_locked (LightDMUser *user);
+
 G_END_DECLS
 
 #endif /* LIGHTDM_USER_H_ */
diff -pruN 1.26.0-8/liblightdm-gobject/session.c 1.30.0-0ubuntu8/liblightdm-gobject/session.c
--- 1.26.0-8/liblightdm-gobject/session.c	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/liblightdm-gobject/session.c	2019-05-17 04:41:32.000000000 +0000
@@ -49,7 +49,7 @@ typedef struct
     gchar *comment;
 } LightDMSessionPrivate;
 
-G_DEFINE_TYPE (LightDMSession, lightdm_session, G_TYPE_OBJECT)
+G_DEFINE_TYPE_WITH_PRIVATE (LightDMSession, lightdm_session, G_TYPE_OBJECT)
 
 #define GET_PRIVATE(obj) G_TYPE_INSTANCE_GET_PRIVATE ((obj), LIGHTDM_TYPE_SESSION, LightDMSessionPrivate)
 
@@ -355,8 +355,6 @@ lightdm_session_class_init (LightDMSessi
 {
     GObjectClass *object_class = G_OBJECT_CLASS (klass);
 
-    g_type_class_add_private (klass, sizeof (LightDMSessionPrivate));
-
     object_class->set_property = lightdm_session_set_property;
     object_class->get_property = lightdm_session_get_property;
     object_class->finalize = lightdm_session_finalize;
diff -pruN 1.26.0-8/liblightdm-gobject/user.c 1.30.0-0ubuntu8/liblightdm-gobject/user.c
--- 1.26.0-8/liblightdm-gobject/user.c	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/liblightdm-gobject/user.c	2019-05-17 04:41:37.000000000 +0000
@@ -81,6 +81,7 @@ enum
     USER_PROP_LOGGED_IN,
     USER_PROP_HAS_MESSAGES,
     USER_PROP_UID,
+    USER_PROP_IS_LOCKED,
 };
 
 enum
@@ -112,8 +113,8 @@ typedef struct
     CommonUser *common_user;
 } LightDMUserPrivate;
 
-G_DEFINE_TYPE (LightDMUserList, lightdm_user_list, G_TYPE_OBJECT)
-G_DEFINE_TYPE (LightDMUser, lightdm_user, G_TYPE_OBJECT)
+G_DEFINE_TYPE_WITH_PRIVATE (LightDMUserList, lightdm_user_list, G_TYPE_OBJECT)
+G_DEFINE_TYPE_WITH_PRIVATE (LightDMUser, lightdm_user, G_TYPE_OBJECT)
 
 #define GET_LIST_PRIVATE(obj) G_TYPE_INSTANCE_GET_PRIVATE ((obj), LIGHTDM_TYPE_USER_LIST, LightDMUserListPrivate)
 #define GET_USER_PRIVATE(obj) G_TYPE_INSTANCE_GET_PRIVATE ((obj), LIGHTDM_TYPE_USER, LightDMUserPrivate)
@@ -320,8 +321,6 @@ lightdm_user_list_class_init (LightDMUse
 {
     GObjectClass *object_class = G_OBJECT_CLASS (klass);
 
-    g_type_class_add_private (klass, sizeof (LightDMUserListPrivate));
-
     object_class->set_property = lightdm_user_list_set_property;
     object_class->get_property = lightdm_user_list_get_property;
     object_class->finalize = lightdm_user_list_finalize;
@@ -593,6 +592,21 @@ lightdm_user_get_uid (LightDMUser *user)
     return common_user_get_uid (GET_USER_PRIVATE (user)->common_user);
 }
 
+/**
+ * lightdm_user_get_is_locked:
+ * @user: A #LightDMUser
+ *
+ * Get if the user is locked.
+ *
+ * Returns: %TRUE if the user is locked
+ **/
+gboolean
+lightdm_user_get_is_locked (LightDMUser *user)
+{
+    g_return_val_if_fail (LIGHTDM_IS_USER (user), FALSE);
+    return common_user_get_is_locked (GET_USER_PRIVATE (user)->common_user);
+}
+
 static void
 lightdm_user_init (LightDMUser *user)
 {
@@ -667,6 +681,8 @@ lightdm_user_get_property (GObject    *o
     case USER_PROP_UID:
         g_value_set_uint64 (value, lightdm_user_get_uid (self));
         break;
+    case USER_PROP_IS_LOCKED:
+        g_value_set_boolean (value, lightdm_user_get_is_locked (self));
     default:
         G_OBJECT_WARN_INVALID_PROPERTY_ID (object, prop_id, pspec);
         break;
@@ -689,8 +705,6 @@ lightdm_user_class_init (LightDMUserClas
 {
     GObjectClass *object_class = G_OBJECT_CLASS (klass);
 
-    g_type_class_add_private (klass, sizeof (LightDMUserPrivate));
-
     object_class->set_property = lightdm_user_set_property;
     object_class->get_property = lightdm_user_get_property;
     object_class->finalize = lightdm_user_finalize;
@@ -793,6 +807,13 @@ lightdm_user_class_init (LightDMUserClas
                                                           "User UID",
                                                           0, G_MAXUINT64, 0,
                                                           G_PARAM_READABLE));
+    g_object_class_install_property (object_class,
+                                     USER_PROP_IS_LOCKED,
+                                     g_param_spec_boolean ("is-locked",
+                                                           "is-locked",
+                                                           "TRUE if the user is currently locked",
+                                                           FALSE,
+                                                           G_PARAM_READABLE));
 
     /**
      * LightDMUser::changed:
diff -pruN 1.26.0-8/liblightdm-qt/Makefile.in 1.30.0-0ubuntu8/liblightdm-qt/Makefile.in
--- 1.26.0-8/liblightdm-qt/Makefile.in	2018-03-21 23:13:51.000000000 +0000
+++ 1.30.0-0ubuntu8/liblightdm-qt/Makefile.in	2019-05-17 04:47:12.000000000 +0000
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2017 Free Software Foundation, Inc.
+# Copyright (C) 1994-2018 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -204,7 +204,15 @@ am__v_at_0 = @
 am__v_at_1 = 
 DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
 depcomp = $(SHELL) $(top_srcdir)/depcomp
-am__depfiles_maybe = depfiles
+am__maybe_remake_depfiles = depfiles
+am__depfiles_remade = ./$(DEPDIR)/liblightdm_qt5_3_la-greeter.Plo \
+	./$(DEPDIR)/liblightdm_qt5_3_la-power.Plo \
+	./$(DEPDIR)/liblightdm_qt5_3_la-sessionsmodel.Plo \
+	./$(DEPDIR)/liblightdm_qt5_3_la-usersmodel.Plo \
+	./$(DEPDIR)/liblightdm_qt_3_la-greeter.Plo \
+	./$(DEPDIR)/liblightdm_qt_3_la-power.Plo \
+	./$(DEPDIR)/liblightdm_qt_3_la-sessionsmodel.Plo \
+	./$(DEPDIR)/liblightdm_qt_3_la-usersmodel.Plo
 am__mv = mv -f
 CXXCOMPILE = $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) \
 	$(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS)
@@ -572,8 +580,8 @@ Makefile: $(srcdir)/Makefile.in $(top_bu
 	  *config.status*) \
 	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
 	  *) \
-	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
-	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
+	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
 	esac;
 
 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
@@ -636,14 +644,20 @@ mostlyclean-compile:
 distclean-compile:
 	-rm -f *.tab.c
 
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/liblightdm_qt5_3_la-greeter.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/liblightdm_qt5_3_la-power.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/liblightdm_qt5_3_la-sessionsmodel.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/liblightdm_qt5_3_la-usersmodel.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/liblightdm_qt_3_la-greeter.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/liblightdm_qt_3_la-power.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/liblightdm_qt_3_la-sessionsmodel.Plo@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/liblightdm_qt_3_la-usersmodel.Plo@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/liblightdm_qt5_3_la-greeter.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/liblightdm_qt5_3_la-power.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/liblightdm_qt5_3_la-sessionsmodel.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/liblightdm_qt5_3_la-usersmodel.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/liblightdm_qt_3_la-greeter.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/liblightdm_qt_3_la-power.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/liblightdm_qt_3_la-sessionsmodel.Plo@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/liblightdm_qt_3_la-usersmodel.Plo@am__quote@ # am--include-marker
+
+$(am__depfiles_remade):
+	@$(MKDIR_P) $(@D)
+	@echo '# dummy' >$@-t && $(am__mv) $@-t $@
+
+am--depfiles: $(am__depfiles_remade)
 
 .cpp.o:
 @am__fastdepCXX_TRUE@	$(AM_V_CXX)$(CXXCOMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@@ -843,7 +857,10 @@ cscopelist-am: $(am__tagged_files)
 distclean-tags:
 	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
 
-distdir: $(DISTFILES)
+distdir: $(BUILT_SOURCES)
+	$(MAKE) $(AM_MAKEFLAGS) distdir-am
+
+distdir-am: $(DISTFILES)
 	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 	list='$(DISTFILES)'; \
@@ -921,7 +938,14 @@ clean-am: clean-generic clean-libLTLIBRA
 	mostlyclean-am
 
 distclean: distclean-am
-	-rm -rf ./$(DEPDIR)
+		-rm -f ./$(DEPDIR)/liblightdm_qt5_3_la-greeter.Plo
+	-rm -f ./$(DEPDIR)/liblightdm_qt5_3_la-power.Plo
+	-rm -f ./$(DEPDIR)/liblightdm_qt5_3_la-sessionsmodel.Plo
+	-rm -f ./$(DEPDIR)/liblightdm_qt5_3_la-usersmodel.Plo
+	-rm -f ./$(DEPDIR)/liblightdm_qt_3_la-greeter.Plo
+	-rm -f ./$(DEPDIR)/liblightdm_qt_3_la-power.Plo
+	-rm -f ./$(DEPDIR)/liblightdm_qt_3_la-sessionsmodel.Plo
+	-rm -f ./$(DEPDIR)/liblightdm_qt_3_la-usersmodel.Plo
 	-rm -f Makefile
 distclean-am: clean-am distclean-compile distclean-generic \
 	distclean-tags
@@ -968,7 +992,14 @@ install-ps-am:
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
-	-rm -rf ./$(DEPDIR)
+		-rm -f ./$(DEPDIR)/liblightdm_qt5_3_la-greeter.Plo
+	-rm -f ./$(DEPDIR)/liblightdm_qt5_3_la-power.Plo
+	-rm -f ./$(DEPDIR)/liblightdm_qt5_3_la-sessionsmodel.Plo
+	-rm -f ./$(DEPDIR)/liblightdm_qt5_3_la-usersmodel.Plo
+	-rm -f ./$(DEPDIR)/liblightdm_qt_3_la-greeter.Plo
+	-rm -f ./$(DEPDIR)/liblightdm_qt_3_la-power.Plo
+	-rm -f ./$(DEPDIR)/liblightdm_qt_3_la-sessionsmodel.Plo
+	-rm -f ./$(DEPDIR)/liblightdm_qt_3_la-usersmodel.Plo
 	-rm -f Makefile
 maintainer-clean-am: distclean-am maintainer-clean-generic
 
@@ -992,9 +1023,9 @@ uninstall-am: uninstall-libLTLIBRARIES \
 
 .MAKE: all check install install-am install-strip
 
-.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean clean-generic \
-	clean-libLTLIBRARIES clean-libtool cscopelist-am ctags \
-	ctags-am distclean distclean-compile distclean-generic \
+.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \
+	clean-generic clean-libLTLIBRARIES clean-libtool cscopelist-am \
+	ctags ctags-am distclean distclean-compile distclean-generic \
 	distclean-libtool distclean-tags distdir dvi dvi-am html \
 	html-am info info-am install install-am install-data \
 	install-data-am install-dvi install-dvi-am install-exec \
diff -pruN 1.26.0-8/liblightdm-qt/QLightDM/power.h 1.30.0-0ubuntu8/liblightdm-qt/QLightDM/power.h
--- 1.26.0-8/liblightdm-qt/QLightDM/power.h	2017-10-05 22:20:29.000000000 +0000
+++ 1.30.0-0ubuntu8/liblightdm-qt/QLightDM/power.h	2018-09-05 01:33:31.000000000 +0000
@@ -16,7 +16,7 @@
 
 namespace QLightDM
 {
-    class PowerInterface : public QObject
+    class Q_DECL_EXPORT PowerInterface : public QObject
     {
         Q_OBJECT
     public:
diff -pruN 1.26.0-8/liblightdm-qt/QLightDM/usersmodel.h 1.30.0-0ubuntu8/liblightdm-qt/QLightDM/usersmodel.h
--- 1.26.0-8/liblightdm-qt/QLightDM/usersmodel.h	2017-10-05 22:20:29.000000000 +0000
+++ 1.30.0-0ubuntu8/liblightdm-qt/QLightDM/usersmodel.h	2019-05-17 04:41:37.000000000 +0000
@@ -38,7 +38,8 @@ public:
                          HasMessagesRole,
                          ImagePathRole,
                          BackgroundPathRole,
-                         UidRole
+                         UidRole,
+                         IsLockedRole
     };
 
     int rowCount(const QModelIndex &parent) const;
diff -pruN 1.26.0-8/liblightdm-qt/usersmodel.cpp 1.30.0-0ubuntu8/liblightdm-qt/usersmodel.cpp
--- 1.26.0-8/liblightdm-qt/usersmodel.cpp	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/liblightdm-qt/usersmodel.cpp	2019-05-17 04:41:37.000000000 +0000
@@ -31,6 +31,7 @@ public:
     bool hasMessages;
     quint64 uid;
     QString displayName() const;
+    bool isLocked;
 };
 
 QString UserItem::displayName() const {
@@ -101,6 +102,7 @@ void UsersModelPrivate::loadUsers()
             user.isLoggedIn = lightdm_user_get_logged_in(ldmUser);
             user.hasMessages = lightdm_user_get_has_messages(ldmUser);
             user.uid = (quint64)lightdm_user_get_uid(ldmUser);
+            user.isLocked = lightdm_user_get_is_locked(ldmUser);
             users.append(user);
         }
 
@@ -127,6 +129,7 @@ void UsersModelPrivate::cb_userAdded(Lig
     user.isLoggedIn = lightdm_user_get_logged_in(ldmUser);
     user.hasMessages = lightdm_user_get_has_messages(ldmUser);
     user.uid = (quint64)lightdm_user_get_uid(ldmUser);
+    user.isLocked = lightdm_user_get_is_locked(ldmUser);
     that->users.append(user);
 
     that->q_func()->endInsertRows();
@@ -150,6 +153,7 @@ void UsersModelPrivate::cb_userChanged(L
             that->users[i].isLoggedIn = lightdm_user_get_logged_in(ldmUser);
             that->users[i].hasMessages = lightdm_user_get_has_messages(ldmUser);
             that->users[i].uid = (quint64)lightdm_user_get_uid(ldmUser);
+            that->users[i].isLocked = lightdm_user_get_is_locked(ldmUser);
 
             QModelIndex index = that->q_ptr->createIndex(i, 0);
             that->q_ptr->dataChanged(index, index);
@@ -192,6 +196,7 @@ UsersModel::UsersModel(QObject *parent)
     roles[HasMessagesRole] = "hasMessages";
     roles[ImagePathRole] = "imagePath";
     roles[UidRole] = "uid";
+    roles[IsLockedRole] = "isLocked";
     setRoleNames(roles);
     d->loadUsers();
 
@@ -245,6 +250,8 @@ QVariant UsersModel::data(const QModelIn
         return d->users[row].image;
     case UsersModel::UidRole:
         return d->users[row].uid;
+    case UsersModel::IsLockedRole:
+        return d->users[row].isLocked;
     }
 
     return QVariant();
diff -pruN 1.26.0-8/ltmain.sh 1.30.0-0ubuntu8/ltmain.sh
--- 1.26.0-8/ltmain.sh	2018-03-21 23:13:43.000000000 +0000
+++ 1.30.0-0ubuntu8/ltmain.sh	2019-05-17 04:47:07.000000000 +0000
@@ -31,7 +31,7 @@
 
 PROGRAM=libtool
 PACKAGE=libtool
-VERSION="2.4.6 Debian-2.4.6-2"
+VERSION="2.4.6 Debian-2.4.6-10"
 package_revision=2.4.6
 
 
@@ -1370,7 +1370,7 @@ func_lt_ver ()
 #! /bin/sh
 
 # Set a version string for this script.
-scriptversion=2014-01-07.03; # UTC
+scriptversion=2015-10-07.11; # UTC
 
 # A portable, pluggable option parser for Bourne shell.
 # Written by Gary V. Vaughan, 2010
@@ -1530,6 +1530,8 @@ func_run_hooks ()
 {
     $debug_cmd
 
+    _G_rc_run_hooks=false
+
     case " $hookable_fns " in
       *" $1 "*) ;;
       *) func_fatal_error "'$1' does not support hook funcions.n" ;;
@@ -1538,16 +1540,16 @@ func_run_hooks ()
     eval _G_hook_fns=\$$1_hooks; shift
 
     for _G_hook in $_G_hook_fns; do
-      eval $_G_hook '"$@"'
-
-      # store returned options list back into positional
-      # parameters for next 'cmd' execution.
-      eval _G_hook_result=\$${_G_hook}_result
-      eval set dummy "$_G_hook_result"; shift
+      if eval $_G_hook '"$@"'; then
+        # store returned options list back into positional
+        # parameters for next 'cmd' execution.
+        eval _G_hook_result=\$${_G_hook}_result
+        eval set dummy "$_G_hook_result"; shift
+        _G_rc_run_hooks=:
+      fi
     done
 
-    func_quote_for_eval ${1+"$@"}
-    func_run_hooks_result=$func_quote_for_eval_result
+    $_G_rc_run_hooks && func_run_hooks_result=$_G_hook_result
 }
 
 
@@ -1557,10 +1559,16 @@ func_run_hooks ()
 ## --------------- ##
 
 # In order to add your own option parsing hooks, you must accept the
-# full positional parameter list in your hook function, remove any
-# options that you action, and then pass back the remaining unprocessed
+# full positional parameter list in your hook function, you may remove/edit
+# any options that you action, and then pass back the remaining unprocessed
 # options in '<hooked_function_name>_result', escaped suitably for
-# 'eval'.  Like this:
+# 'eval'.  In this case you also must return $EXIT_SUCCESS to let the
+# hook's caller know that it should pay attention to
+# '<hooked_function_name>_result'.  Returning $EXIT_FAILURE signalizes that
+# arguments are left untouched by the hook and therefore caller will ignore the
+# result variable.
+#
+# Like this:
 #
 #    my_options_prep ()
 #    {
@@ -1570,9 +1578,11 @@ func_run_hooks ()
 #        usage_message=$usage_message'
 #      -s, --silent       don'\''t print informational messages
 #    '
-#
-#        func_quote_for_eval ${1+"$@"}
-#        my_options_prep_result=$func_quote_for_eval_result
+#        # No change in '$@' (ignored completely by this hook).  There is
+#        # no need to do the equivalent (but slower) action:
+#        # func_quote_for_eval ${1+"$@"}
+#        # my_options_prep_result=$func_quote_for_eval_result
+#        false
 #    }
 #    func_add_hook func_options_prep my_options_prep
 #
@@ -1581,25 +1591,37 @@ func_run_hooks ()
 #    {
 #        $debug_cmd
 #
+#        args_changed=false
+#
 #        # Note that for efficiency, we parse as many options as we can
 #        # recognise in a loop before passing the remainder back to the
 #        # caller on the first unrecognised argument we encounter.
 #        while test $# -gt 0; do
 #          opt=$1; shift
 #          case $opt in
-#            --silent|-s) opt_silent=: ;;
+#            --silent|-s) opt_silent=:
+#                         args_changed=:
+#                         ;;
 #            # Separate non-argument short options:
 #            -s*)         func_split_short_opt "$_G_opt"
 #                         set dummy "$func_split_short_opt_name" \
 #                             "-$func_split_short_opt_arg" ${1+"$@"}
 #                         shift
+#                         args_changed=:
 #                         ;;
-#            *)            set dummy "$_G_opt" "$*"; shift; break ;;
+#            *)           # Make sure the first unrecognised option "$_G_opt"
+#                         # is added back to "$@", we could need that later
+#                         # if $args_changed is true.
+#                         set dummy "$_G_opt" ${1+"$@"}; shift; break ;;
 #          esac
 #        done
 #
-#        func_quote_for_eval ${1+"$@"}
-#        my_silent_option_result=$func_quote_for_eval_result
+#        if $args_changed; then
+#          func_quote_for_eval ${1+"$@"}
+#          my_silent_option_result=$func_quote_for_eval_result
+#        fi
+#
+#        $args_changed
 #    }
 #    func_add_hook func_parse_options my_silent_option
 #
@@ -1611,16 +1633,32 @@ func_run_hooks ()
 #        $opt_silent && $opt_verbose && func_fatal_help "\
 #    '--silent' and '--verbose' options are mutually exclusive."
 #
-#        func_quote_for_eval ${1+"$@"}
-#        my_option_validation_result=$func_quote_for_eval_result
+#        false
 #    }
 #    func_add_hook func_validate_options my_option_validation
 #
-# You'll alse need to manually amend $usage_message to reflect the extra
+# You'll also need to manually amend $usage_message to reflect the extra
 # options you parse.  It's preferable to append if you can, so that
 # multiple option parsing hooks can be added safely.
 
 
+# func_options_finish [ARG]...
+# ----------------------------
+# Finishing the option parse loop (call 'func_options' hooks ATM).
+func_options_finish ()
+{
+    $debug_cmd
+
+    _G_func_options_finish_exit=false
+    if func_run_hooks func_options ${1+"$@"}; then
+      func_options_finish_result=$func_run_hooks_result
+      _G_func_options_finish_exit=:
+    fi
+
+    $_G_func_options_finish_exit
+}
+
+
 # func_options [ARG]...
 # ---------------------
 # All the functions called inside func_options are hookable. See the
@@ -1630,17 +1668,28 @@ func_options ()
 {
     $debug_cmd
 
-    func_options_prep ${1+"$@"}
-    eval func_parse_options \
-        ${func_options_prep_result+"$func_options_prep_result"}
-    eval func_validate_options \
-        ${func_parse_options_result+"$func_parse_options_result"}
+    _G_rc_options=false
 
-    eval func_run_hooks func_options \
-        ${func_validate_options_result+"$func_validate_options_result"}
+    for my_func in options_prep parse_options validate_options options_finish
+    do
+      if eval func_$my_func '${1+"$@"}'; then
+        eval _G_res_var='$'"func_${my_func}_result"
+        eval set dummy "$_G_res_var" ; shift
+        _G_rc_options=:
+      fi
+    done
 
-    # save modified positional parameters for caller
-    func_options_result=$func_run_hooks_result
+    # Save modified positional parameters for caller.  As a top-level
+    # options-parser function we always need to set the 'func_options_result'
+    # variable (regardless the $_G_rc_options value).
+    if $_G_rc_options; then
+      func_options_result=$_G_res_var
+    else
+      func_quote_for_eval ${1+"$@"}
+      func_options_result=$func_quote_for_eval_result
+    fi
+
+    $_G_rc_options
 }
 
 
@@ -1649,9 +1698,9 @@ func_options ()
 # All initialisations required before starting the option parse loop.
 # Note that when calling hook functions, we pass through the list of
 # positional parameters.  If a hook function modifies that list, and
-# needs to propogate that back to rest of this script, then the complete
+# needs to propagate that back to rest of this script, then the complete
 # modified list must be put in 'func_run_hooks_result' before
-# returning.
+# returning $EXIT_SUCCESS (otherwise $EXIT_FAILURE is returned).
 func_hookable func_options_prep
 func_options_prep ()
 {
@@ -1661,10 +1710,14 @@ func_options_prep ()
     opt_verbose=false
     opt_warning_types=
 
-    func_run_hooks func_options_prep ${1+"$@"}
+    _G_rc_options_prep=false
+    if func_run_hooks func_options_prep ${1+"$@"}; then
+      _G_rc_options_prep=:
+      # save modified positional parameters for caller
+      func_options_prep_result=$func_run_hooks_result
+    fi
 
-    # save modified positional parameters for caller
-    func_options_prep_result=$func_run_hooks_result
+    $_G_rc_options_prep
 }
 
 
@@ -1678,18 +1731,20 @@ func_parse_options ()
 
     func_parse_options_result=
 
+    _G_rc_parse_options=false
     # this just eases exit handling
     while test $# -gt 0; do
       # Defer to hook functions for initial option parsing, so they
       # get priority in the event of reusing an option name.
-      func_run_hooks func_parse_options ${1+"$@"}
-
-      # Adjust func_parse_options positional parameters to match
-      eval set dummy "$func_run_hooks_result"; shift
+      if func_run_hooks func_parse_options ${1+"$@"}; then
+        eval set dummy "$func_run_hooks_result"; shift
+        _G_rc_parse_options=:
+      fi
 
       # Break out of the loop if we already parsed every option.
       test $# -gt 0 || break
 
+      _G_match_parse_options=:
       _G_opt=$1
       shift
       case $_G_opt in
@@ -1704,7 +1759,10 @@ func_parse_options ()
 		      ;;
 
         --warnings|--warning|-W)
-                      test $# = 0 && func_missing_arg $_G_opt && break
+                      if test $# = 0 && func_missing_arg $_G_opt; then
+                        _G_rc_parse_options=:
+                        break
+                      fi
                       case " $warning_categories $1" in
                         *" $1 "*)
                           # trailing space prevents matching last $1 above
@@ -1757,15 +1815,25 @@ func_parse_options ()
                       shift
                       ;;
 
-        --)           break ;;
+        --)           _G_rc_parse_options=: ; break ;;
         -*)           func_fatal_help "unrecognised option: '$_G_opt'" ;;
-        *)            set dummy "$_G_opt" ${1+"$@"}; shift; break ;;
+        *)            set dummy "$_G_opt" ${1+"$@"}; shift
+                      _G_match_parse_options=false
+                      break
+                      ;;
       esac
+
+      $_G_match_parse_options && _G_rc_parse_options=:
     done
 
-    # save modified positional parameters for caller
-    func_quote_for_eval ${1+"$@"}
-    func_parse_options_result=$func_quote_for_eval_result
+
+    if $_G_rc_parse_options; then
+      # save modified positional parameters for caller
+      func_quote_for_eval ${1+"$@"}
+      func_parse_options_result=$func_quote_for_eval_result
+    fi
+
+    $_G_rc_parse_options
 }
 
 
@@ -1778,16 +1846,21 @@ func_validate_options ()
 {
     $debug_cmd
 
+    _G_rc_validate_options=false
+
     # Display all warnings if -W was not given.
     test -n "$opt_warning_types" || opt_warning_types=" $warning_categories"
 
-    func_run_hooks func_validate_options ${1+"$@"}
+    if func_run_hooks func_validate_options ${1+"$@"}; then
+      # save modified positional parameters for caller
+      func_validate_options_result=$func_run_hooks_result
+      _G_rc_validate_options=:
+    fi
 
     # Bail if the options were screwed!
     $exit_cmd $EXIT_FAILURE
 
-    # save modified positional parameters for caller
-    func_validate_options_result=$func_run_hooks_result
+    $_G_rc_validate_options
 }
 
 
@@ -2068,7 +2141,7 @@ include the following information:
        compiler:       $LTCC
        compiler flags: $LTCFLAGS
        linker:         $LD (gnu? $with_gnu_ld)
-       version:        $progname $scriptversion Debian-2.4.6-2
+       version:        $progname $scriptversion Debian-2.4.6-10
        automake:       `($AUTOMAKE --version) 2>/dev/null |$SED 1q`
        autoconf:       `($AUTOCONF --version) 2>/dev/null |$SED 1q`
 
@@ -2270,6 +2343,8 @@ libtool_options_prep ()
     nonopt=
     preserve_args=
 
+    _G_rc_lt_options_prep=:
+
     # Shorthand for --mode=foo, only valid as the first argument
     case $1 in
     clean|clea|cle|cl)
@@ -2293,11 +2368,18 @@ libtool_options_prep ()
     uninstall|uninstal|uninsta|uninst|unins|unin|uni|un|u)
       shift; set dummy --mode uninstall ${1+"$@"}; shift
       ;;
+    *)
+      _G_rc_lt_options_prep=false
+      ;;
     esac
 
-    # Pass back the list of options.
-    func_quote_for_eval ${1+"$@"}
-    libtool_options_prep_result=$func_quote_for_eval_result
+    if $_G_rc_lt_options_prep; then
+      # Pass back the list of options.
+      func_quote_for_eval ${1+"$@"}
+      libtool_options_prep_result=$func_quote_for_eval_result
+    fi
+
+    $_G_rc_lt_options_prep
 }
 func_add_hook func_options_prep libtool_options_prep
 
@@ -2309,9 +2391,12 @@ libtool_parse_options ()
 {
     $debug_cmd
 
+    _G_rc_lt_parse_options=false
+
     # Perform our own loop to consume as many options as possible in
     # each iteration.
     while test $# -gt 0; do
+      _G_match_lt_parse_options=:
       _G_opt=$1
       shift
       case $_G_opt in
@@ -2386,15 +2471,22 @@ libtool_parse_options ()
                         func_append preserve_args " $_G_opt"
                         ;;
 
-	# An option not handled by this hook function:
-        *)		set dummy "$_G_opt" ${1+"$@"};	shift; break  ;;
+        # An option not handled by this hook function:
+        *)              set dummy "$_G_opt" ${1+"$@"} ; shift
+                        _G_match_lt_parse_options=false
+                        break
+                        ;;
       esac
+      $_G_match_lt_parse_options && _G_rc_lt_parse_options=:
     done
 
+    if $_G_rc_lt_parse_options; then
+      # save modified positional parameters for caller
+      func_quote_for_eval ${1+"$@"}
+      libtool_parse_options_result=$func_quote_for_eval_result
+    fi
 
-    # save modified positional parameters for caller
-    func_quote_for_eval ${1+"$@"}
-    libtool_parse_options_result=$func_quote_for_eval_result
+    $_G_rc_lt_parse_options
 }
 func_add_hook func_parse_options libtool_parse_options
 
@@ -7275,10 +7367,11 @@ func_mode_link ()
       # -specs=*             GCC specs files
       # -stdlib=*            select c++ std lib with clang
       # -fsanitize=*         Clang/GCC memory and address sanitizer
+      # -fuse-ld=*           Linker select flags for GCC
       -64|-mips[0-9]|-r[0-9][0-9]*|-xarch=*|-xtarget=*|+DA*|+DD*|-q*|-m*| \
       -t[45]*|-txscale*|-p|-pg|--coverage|-fprofile-*|-F*|@*|-tp=*|--sysroot=*| \
       -O*|-g*|-flto*|-fwhopr*|-fuse-linker-plugin|-fstack-protector*|-stdlib=*| \
-      -specs=*|-fsanitize=*)
+      -specs=*|-fsanitize=*|-fuse-ld=*)
         func_quote_for_eval "$arg"
 	arg=$func_quote_for_eval_result
         func_append compile_command " $arg"
diff -pruN 1.26.0-8/m4/libtool.m4 1.30.0-0ubuntu8/m4/libtool.m4
--- 1.26.0-8/m4/libtool.m4	2018-03-21 23:13:43.000000000 +0000
+++ 1.30.0-0ubuntu8/m4/libtool.m4	2019-05-17 04:47:07.000000000 +0000
@@ -4063,7 +4063,8 @@ _LT_EOF
   if AC_TRY_EVAL(ac_compile); then
     # Now try to grab the symbols.
     nlist=conftest.nm
-    if AC_TRY_EVAL(NM conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist) && test -s "$nlist"; then
+    $ECHO "$as_me:$LINENO: $NM conftest.$ac_objext | $lt_cv_sys_global_symbol_pipe > $nlist" >&AS_MESSAGE_LOG_FD
+    if eval "$NM" conftest.$ac_objext \| "$lt_cv_sys_global_symbol_pipe" \> $nlist 2>&AS_MESSAGE_LOG_FD && test -s "$nlist"; then
       # Try sorting and uniquifying the output.
       if sort "$nlist" | uniq > "$nlist"T; then
 	mv -f "$nlist"T "$nlist"
@@ -4703,6 +4704,12 @@ m4_if([$1], [CXX], [
 	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-KPIC'
 	_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
         ;;
+      # flang / f18. f95 an alias for gfortran or flang on Debian
+      flang* | f18* | f95*)
+	_LT_TAGVAR(lt_prog_compiler_wl, $1)='-Wl,'
+	_LT_TAGVAR(lt_prog_compiler_pic, $1)='-fPIC'
+	_LT_TAGVAR(lt_prog_compiler_static, $1)='-static'
+        ;;
       # icc used to be incompatible with GCC.
       # ICC 10 doesn't accept -KPIC any more.
       icc* | ifort*)
@@ -6438,7 +6445,7 @@ if test yes != "$_lt_caught_CXX_error";
       # Commands to make compiler produce verbose output that lists
       # what "hidden" libraries, object files and flags are used when
       # linking a shared library.
-      output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
+      output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"'
 
     else
       GXX=no
@@ -6813,7 +6820,7 @@ if test yes != "$_lt_caught_CXX_error";
             # explicitly linking system object files so we need to strip them
             # from the output so that they don't get included in the library
             # dependencies.
-            output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP "\-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
+            output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $EGREP " \-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
             ;;
           *)
             if test yes = "$GXX"; then
@@ -6878,7 +6885,7 @@ if test yes != "$_lt_caught_CXX_error";
 	    # explicitly linking system object files so we need to strip them
 	    # from the output so that they don't get included in the library
 	    # dependencies.
-	    output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP "\-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
+	    output_verbose_link_cmd='templist=`($CC -b $CFLAGS -v conftest.$objext 2>&1) | $GREP " \-L"`; list= ; for z in $templist; do case $z in conftest.$objext) list="$list $z";; *.$objext);; *) list="$list $z";;esac; done; func_echo_all "$list"'
 	    ;;
           *)
 	    if test yes = "$GXX"; then
@@ -7217,7 +7224,7 @@ if test yes != "$_lt_caught_CXX_error";
 	      # Commands to make compiler produce verbose output that lists
 	      # what "hidden" libraries, object files and flags are used when
 	      # linking a shared library.
-	      output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
+	      output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"'
 
 	    else
 	      # FIXME: insert proper C++ library support
@@ -7301,7 +7308,7 @@ if test yes != "$_lt_caught_CXX_error";
 	        # Commands to make compiler produce verbose output that lists
 	        # what "hidden" libraries, object files and flags are used when
 	        # linking a shared library.
-	        output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
+	        output_verbose_link_cmd='$CC -shared $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"'
 	      else
 	        # g++ 2.7 appears to require '-G' NOT '-shared' on this
 	        # platform.
@@ -7312,7 +7319,7 @@ if test yes != "$_lt_caught_CXX_error";
 	        # Commands to make compiler produce verbose output that lists
 	        # what "hidden" libraries, object files and flags are used when
 	        # linking a shared library.
-	        output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP "\-L"'
+	        output_verbose_link_cmd='$CC -G $CFLAGS -v conftest.$objext 2>&1 | $GREP -v "^Configured with:" | $GREP " \-L"'
 	      fi
 
 	      _LT_TAGVAR(hardcode_libdir_flag_spec, $1)='$wl-R $wl$libdir'
diff -pruN 1.26.0-8/missing 1.30.0-0ubuntu8/missing
--- 1.26.0-8/missing	2018-03-21 23:13:51.000000000 +0000
+++ 1.30.0-0ubuntu8/missing	2019-05-17 04:47:12.000000000 +0000
@@ -1,9 +1,9 @@
 #! /bin/sh
 # Common wrapper for a few potentially missing GNU programs.
 
-scriptversion=2013-10-28.13; # UTC
+scriptversion=2018-03-07.03; # UTC
 
-# Copyright (C) 1996-2014 Free Software Foundation, Inc.
+# Copyright (C) 1996-2018 Free Software Foundation, Inc.
 # Originally written by Fran,cois Pinard <pinard@iro.umontreal.ca>, 1996.
 
 # This program is free software; you can redistribute it and/or modify
@@ -17,7 +17,7 @@ scriptversion=2013-10-28.13; # UTC
 # GNU General Public License for more details.
 
 # You should have received a copy of the GNU General Public License
-# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+# along with this program.  If not, see <https://www.gnu.org/licenses/>.
 
 # As a special exception to the GNU General Public License, if you
 # distribute this file as part of a program that contains a
@@ -101,9 +101,9 @@ else
   exit $st
 fi
 
-perl_URL=http://www.perl.org/
-flex_URL=http://flex.sourceforge.net/
-gnu_software_URL=http://www.gnu.org/software
+perl_URL=https://www.perl.org/
+flex_URL=https://github.com/westes/flex
+gnu_software_URL=https://www.gnu.org/software
 
 program_details ()
 {
@@ -207,9 +207,9 @@ give_advice "$1" | sed -e '1s/^/WARNING:
 exit $st
 
 # Local variables:
-# eval: (add-hook 'write-file-hooks 'time-stamp)
+# eval: (add-hook 'before-save-hook 'time-stamp)
 # time-stamp-start: "scriptversion="
 # time-stamp-format: "%:y-%02m-%02d.%02H"
-# time-stamp-time-zone: "UTC"
+# time-stamp-time-zone: "UTC0"
 # time-stamp-end: "; # UTC"
 # End:
diff -pruN 1.26.0-8/src/Makefile.am 1.30.0-0ubuntu8/src/Makefile.am
--- 1.26.0-8/src/Makefile.am	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/src/Makefile.am	2019-05-17 04:41:32.000000000 +0000
@@ -35,8 +35,6 @@ lightdm_SOURCES = \
 	seat.h \
 	seat-local.c \
 	seat-local.h \
-	seat-unity.c \
-	seat-unity.h \
 	seat-xdmcp-session.c \
 	seat-xdmcp-session.h \
 	seat-xremote.c \
@@ -51,8 +49,6 @@ lightdm_SOURCES = \
 	session-config.h \
 	shared-data-manager.c \
 	shared-data-manager.h \
-	unity-system-compositor.c \
-	unity-system-compositor.h \
 	vnc-server.c \
 	vnc-server.h \
 	vt.c \
@@ -65,8 +61,6 @@ lightdm_SOURCES = \
 	x-server-local.h \
 	x-server-remote.c \
 	x-server-remote.h \
-	x-server-xmir.c \
-	x-server-xmir.h \
 	x-server-xvnc.c \
 	x-server-xvnc.h \
 	x-server.c \
@@ -76,8 +70,7 @@ lightdm_SOURCES = \
 	xdmcp-server.c \
 	xdmcp-server.h \
 	xdmcp-session.c \
-	xdmcp-session.h \
-	xdmcp-session-private.h
+	xdmcp-session.h
 
 lightdm_CFLAGS = \
 	$(WARN_CFLAGS) \
diff -pruN 1.26.0-8/src/Makefile.in 1.30.0-0ubuntu8/src/Makefile.in
--- 1.26.0-8/src/Makefile.in	2018-03-21 23:13:51.000000000 +0000
+++ 1.30.0-0ubuntu8/src/Makefile.in	2019-05-17 04:47:12.000000000 +0000
@@ -1,7 +1,7 @@
-# Makefile.in generated by automake 1.15.1 from Makefile.am.
+# Makefile.in generated by automake 1.16.1 from Makefile.am.
 # @configure_input@
 
-# Copyright (C) 1994-2017 Free Software Foundation, Inc.
+# Copyright (C) 1994-2018 Free Software Foundation, Inc.
 
 # This Makefile.in is free software; the Free Software Foundation
 # gives unlimited permission to copy and/or distribute it,
@@ -131,18 +131,16 @@ am_lightdm_OBJECTS = lightdm-accounts.$(
 	lightdm-logger.$(OBJEXT) lightdm-login1.$(OBJEXT) \
 	lightdm-log-file.$(OBJEXT) lightdm-plymouth.$(OBJEXT) \
 	lightdm-process.$(OBJEXT) lightdm-seat.$(OBJEXT) \
-	lightdm-seat-local.$(OBJEXT) lightdm-seat-unity.$(OBJEXT) \
+	lightdm-seat-local.$(OBJEXT) \
 	lightdm-seat-xdmcp-session.$(OBJEXT) \
 	lightdm-seat-xremote.$(OBJEXT) lightdm-seat-xvnc.$(OBJEXT) \
 	lightdm-session.$(OBJEXT) lightdm-session-child.$(OBJEXT) \
 	lightdm-session-config.$(OBJEXT) \
 	lightdm-shared-data-manager.$(OBJEXT) \
-	lightdm-unity-system-compositor.$(OBJEXT) \
 	lightdm-vnc-server.$(OBJEXT) lightdm-vt.$(OBJEXT) \
 	lightdm-wayland-session.$(OBJEXT) \
 	lightdm-x-authority.$(OBJEXT) lightdm-x-server-local.$(OBJEXT) \
 	lightdm-x-server-remote.$(OBJEXT) \
-	lightdm-x-server-xmir.$(OBJEXT) \
 	lightdm-x-server-xvnc.$(OBJEXT) lightdm-x-server.$(OBJEXT) \
 	lightdm-xdmcp-protocol.$(OBJEXT) \
 	lightdm-xdmcp-server.$(OBJEXT) lightdm-xdmcp-session.$(OBJEXT)
@@ -174,7 +172,39 @@ am__v_at_0 = @
 am__v_at_1 = 
 DEFAULT_INCLUDES = -I.@am__isrc@ -I$(top_builddir)
 depcomp = $(SHELL) $(top_srcdir)/depcomp
-am__depfiles_maybe = depfiles
+am__maybe_remake_depfiles = depfiles
+am__depfiles_remade = ./$(DEPDIR)/dm_tool-dm-tool.Po \
+	./$(DEPDIR)/lightdm-accounts.Po \
+	./$(DEPDIR)/lightdm-console-kit.Po \
+	./$(DEPDIR)/lightdm-display-manager-service.Po \
+	./$(DEPDIR)/lightdm-display-manager.Po \
+	./$(DEPDIR)/lightdm-display-server.Po \
+	./$(DEPDIR)/lightdm-greeter-session.Po \
+	./$(DEPDIR)/lightdm-greeter-socket.Po \
+	./$(DEPDIR)/lightdm-greeter.Po \
+	./$(DEPDIR)/lightdm-guest-account.Po \
+	./$(DEPDIR)/lightdm-lightdm.Po ./$(DEPDIR)/lightdm-log-file.Po \
+	./$(DEPDIR)/lightdm-logger.Po ./$(DEPDIR)/lightdm-login1.Po \
+	./$(DEPDIR)/lightdm-plymouth.Po ./$(DEPDIR)/lightdm-process.Po \
+	./$(DEPDIR)/lightdm-seat-local.Po \
+	./$(DEPDIR)/lightdm-seat-xdmcp-session.Po \
+	./$(DEPDIR)/lightdm-seat-xremote.Po \
+	./$(DEPDIR)/lightdm-seat-xvnc.Po ./$(DEPDIR)/lightdm-seat.Po \
+	./$(DEPDIR)/lightdm-session-child.Po \
+	./$(DEPDIR)/lightdm-session-config.Po \
+	./$(DEPDIR)/lightdm-session.Po \
+	./$(DEPDIR)/lightdm-shared-data-manager.Po \
+	./$(DEPDIR)/lightdm-vnc-server.Po ./$(DEPDIR)/lightdm-vt.Po \
+	./$(DEPDIR)/lightdm-wayland-session.Po \
+	./$(DEPDIR)/lightdm-x-authority.Po \
+	./$(DEPDIR)/lightdm-x-server-local.Po \
+	./$(DEPDIR)/lightdm-x-server-remote.Po \
+	./$(DEPDIR)/lightdm-x-server-xvnc.Po \
+	./$(DEPDIR)/lightdm-x-server.Po \
+	./$(DEPDIR)/lightdm-xdmcp-protocol.Po \
+	./$(DEPDIR)/lightdm-xdmcp-server.Po \
+	./$(DEPDIR)/lightdm-xdmcp-session.Po \
+	./$(DEPDIR)/lightdm_guest_session-lightdm-guest-session.Po
 am__mv = mv -f
 COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \
 	$(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS)
@@ -450,8 +480,6 @@ lightdm_SOURCES = \
 	seat.h \
 	seat-local.c \
 	seat-local.h \
-	seat-unity.c \
-	seat-unity.h \
 	seat-xdmcp-session.c \
 	seat-xdmcp-session.h \
 	seat-xremote.c \
@@ -466,8 +494,6 @@ lightdm_SOURCES = \
 	session-config.h \
 	shared-data-manager.c \
 	shared-data-manager.h \
-	unity-system-compositor.c \
-	unity-system-compositor.h \
 	vnc-server.c \
 	vnc-server.h \
 	vt.c \
@@ -480,8 +506,6 @@ lightdm_SOURCES = \
 	x-server-local.h \
 	x-server-remote.c \
 	x-server-remote.h \
-	x-server-xmir.c \
-	x-server-xmir.h \
 	x-server-xvnc.c \
 	x-server-xvnc.h \
 	x-server.c \
@@ -491,8 +515,7 @@ lightdm_SOURCES = \
 	xdmcp-server.c \
 	xdmcp-server.h \
 	xdmcp-session.c \
-	xdmcp-session.h \
-	xdmcp-session-private.h
+	xdmcp-session.h
 
 lightdm_CFLAGS = \
 	$(WARN_CFLAGS) \
@@ -553,8 +576,8 @@ Makefile: $(srcdir)/Makefile.in $(top_bu
 	  *config.status*) \
 	    cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh;; \
 	  *) \
-	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe)'; \
-	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__depfiles_maybe);; \
+	    echo ' cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles)'; \
+	    cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@ $(am__maybe_remake_depfiles);; \
 	esac;
 
 $(top_builddir)/config.status: $(top_srcdir)/configure $(CONFIG_STATUS_DEPENDENCIES)
@@ -731,46 +754,49 @@ mostlyclean-compile:
 distclean-compile:
 	-rm -f *.tab.c
 
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dm_tool-dm-tool.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-accounts.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-console-kit.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-display-manager-service.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-display-manager.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-display-server.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-greeter-session.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-greeter-socket.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-greeter.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-guest-account.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-lightdm.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-log-file.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-logger.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-login1.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-plymouth.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-process.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-seat-local.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-seat-unity.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-seat-xdmcp-session.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-seat-xremote.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-seat-xvnc.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-seat.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-session-child.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-session-config.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-session.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-shared-data-manager.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-unity-system-compositor.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-vnc-server.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-vt.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-wayland-session.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-x-authority.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-x-server-local.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-x-server-remote.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-x-server-xmir.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-x-server-xvnc.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-x-server.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-xdmcp-protocol.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-xdmcp-server.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-xdmcp-session.Po@am__quote@
-@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm_guest_session-lightdm-guest-session.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/dm_tool-dm-tool.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-accounts.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-console-kit.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-display-manager-service.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-display-manager.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-display-server.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-greeter-session.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-greeter-socket.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-greeter.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-guest-account.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-lightdm.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-log-file.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-logger.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-login1.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-plymouth.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-process.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-seat-local.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-seat-xdmcp-session.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-seat-xremote.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-seat-xvnc.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-seat.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-session-child.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-session-config.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-session.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-shared-data-manager.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-vnc-server.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-vt.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-wayland-session.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-x-authority.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-x-server-local.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-x-server-remote.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-x-server-xvnc.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-x-server.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-xdmcp-protocol.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-xdmcp-server.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm-xdmcp-session.Po@am__quote@ # am--include-marker
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/lightdm_guest_session-lightdm-guest-session.Po@am__quote@ # am--include-marker
+
+$(am__depfiles_remade):
+	@$(MKDIR_P) $(@D)
+	@echo '# dummy' >$@-t && $(am__mv) $@-t $@
+
+am--depfiles: $(am__depfiles_remade)
 
 .c.o:
 @am__fastdepCC_TRUE@	$(AM_V_CC)$(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
@@ -1045,20 +1071,6 @@ lightdm-seat-local.obj: seat-local.c
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lightdm_CFLAGS) $(CFLAGS) -c -o lightdm-seat-local.obj `if test -f 'seat-local.c'; then $(CYGPATH_W) 'seat-local.c'; else $(CYGPATH_W) '$(srcdir)/seat-local.c'; fi`
 
-lightdm-seat-unity.o: seat-unity.c
-@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lightdm_CFLAGS) $(CFLAGS) -MT lightdm-seat-unity.o -MD -MP -MF $(DEPDIR)/lightdm-seat-unity.Tpo -c -o lightdm-seat-unity.o `test -f 'seat-unity.c' || echo '$(srcdir)/'`seat-unity.c
-@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lightdm-seat-unity.Tpo $(DEPDIR)/lightdm-seat-unity.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='seat-unity.c' object='lightdm-seat-unity.o' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lightdm_CFLAGS) $(CFLAGS) -c -o lightdm-seat-unity.o `test -f 'seat-unity.c' || echo '$(srcdir)/'`seat-unity.c
-
-lightdm-seat-unity.obj: seat-unity.c
-@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lightdm_CFLAGS) $(CFLAGS) -MT lightdm-seat-unity.obj -MD -MP -MF $(DEPDIR)/lightdm-seat-unity.Tpo -c -o lightdm-seat-unity.obj `if test -f 'seat-unity.c'; then $(CYGPATH_W) 'seat-unity.c'; else $(CYGPATH_W) '$(srcdir)/seat-unity.c'; fi`
-@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lightdm-seat-unity.Tpo $(DEPDIR)/lightdm-seat-unity.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='seat-unity.c' object='lightdm-seat-unity.obj' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lightdm_CFLAGS) $(CFLAGS) -c -o lightdm-seat-unity.obj `if test -f 'seat-unity.c'; then $(CYGPATH_W) 'seat-unity.c'; else $(CYGPATH_W) '$(srcdir)/seat-unity.c'; fi`
-
 lightdm-seat-xdmcp-session.o: seat-xdmcp-session.c
 @am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lightdm_CFLAGS) $(CFLAGS) -MT lightdm-seat-xdmcp-session.o -MD -MP -MF $(DEPDIR)/lightdm-seat-xdmcp-session.Tpo -c -o lightdm-seat-xdmcp-session.o `test -f 'seat-xdmcp-session.c' || echo '$(srcdir)/'`seat-xdmcp-session.c
 @am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lightdm-seat-xdmcp-session.Tpo $(DEPDIR)/lightdm-seat-xdmcp-session.Po
@@ -1157,20 +1169,6 @@ lightdm-shared-data-manager.obj: shared-
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lightdm_CFLAGS) $(CFLAGS) -c -o lightdm-shared-data-manager.obj `if test -f 'shared-data-manager.c'; then $(CYGPATH_W) 'shared-data-manager.c'; else $(CYGPATH_W) '$(srcdir)/shared-data-manager.c'; fi`
 
-lightdm-unity-system-compositor.o: unity-system-compositor.c
-@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lightdm_CFLAGS) $(CFLAGS) -MT lightdm-unity-system-compositor.o -MD -MP -MF $(DEPDIR)/lightdm-unity-system-compositor.Tpo -c -o lightdm-unity-system-compositor.o `test -f 'unity-system-compositor.c' || echo '$(srcdir)/'`unity-system-compositor.c
-@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lightdm-unity-system-compositor.Tpo $(DEPDIR)/lightdm-unity-system-compositor.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unity-system-compositor.c' object='lightdm-unity-system-compositor.o' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lightdm_CFLAGS) $(CFLAGS) -c -o lightdm-unity-system-compositor.o `test -f 'unity-system-compositor.c' || echo '$(srcdir)/'`unity-system-compositor.c
-
-lightdm-unity-system-compositor.obj: unity-system-compositor.c
-@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lightdm_CFLAGS) $(CFLAGS) -MT lightdm-unity-system-compositor.obj -MD -MP -MF $(DEPDIR)/lightdm-unity-system-compositor.Tpo -c -o lightdm-unity-system-compositor.obj `if test -f 'unity-system-compositor.c'; then $(CYGPATH_W) 'unity-system-compositor.c'; else $(CYGPATH_W) '$(srcdir)/unity-system-compositor.c'; fi`
-@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lightdm-unity-system-compositor.Tpo $(DEPDIR)/lightdm-unity-system-compositor.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='unity-system-compositor.c' object='lightdm-unity-system-compositor.obj' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lightdm_CFLAGS) $(CFLAGS) -c -o lightdm-unity-system-compositor.obj `if test -f 'unity-system-compositor.c'; then $(CYGPATH_W) 'unity-system-compositor.c'; else $(CYGPATH_W) '$(srcdir)/unity-system-compositor.c'; fi`
-
 lightdm-vnc-server.o: vnc-server.c
 @am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lightdm_CFLAGS) $(CFLAGS) -MT lightdm-vnc-server.o -MD -MP -MF $(DEPDIR)/lightdm-vnc-server.Tpo -c -o lightdm-vnc-server.o `test -f 'vnc-server.c' || echo '$(srcdir)/'`vnc-server.c
 @am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lightdm-vnc-server.Tpo $(DEPDIR)/lightdm-vnc-server.Po
@@ -1255,20 +1253,6 @@ lightdm-x-server-remote.obj: x-server-re
 @AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lightdm_CFLAGS) $(CFLAGS) -c -o lightdm-x-server-remote.obj `if test -f 'x-server-remote.c'; then $(CYGPATH_W) 'x-server-remote.c'; else $(CYGPATH_W) '$(srcdir)/x-server-remote.c'; fi`
 
-lightdm-x-server-xmir.o: x-server-xmir.c
-@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lightdm_CFLAGS) $(CFLAGS) -MT lightdm-x-server-xmir.o -MD -MP -MF $(DEPDIR)/lightdm-x-server-xmir.Tpo -c -o lightdm-x-server-xmir.o `test -f 'x-server-xmir.c' || echo '$(srcdir)/'`x-server-xmir.c
-@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lightdm-x-server-xmir.Tpo $(DEPDIR)/lightdm-x-server-xmir.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='x-server-xmir.c' object='lightdm-x-server-xmir.o' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lightdm_CFLAGS) $(CFLAGS) -c -o lightdm-x-server-xmir.o `test -f 'x-server-xmir.c' || echo '$(srcdir)/'`x-server-xmir.c
-
-lightdm-x-server-xmir.obj: x-server-xmir.c
-@am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lightdm_CFLAGS) $(CFLAGS) -MT lightdm-x-server-xmir.obj -MD -MP -MF $(DEPDIR)/lightdm-x-server-xmir.Tpo -c -o lightdm-x-server-xmir.obj `if test -f 'x-server-xmir.c'; then $(CYGPATH_W) 'x-server-xmir.c'; else $(CYGPATH_W) '$(srcdir)/x-server-xmir.c'; fi`
-@am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lightdm-x-server-xmir.Tpo $(DEPDIR)/lightdm-x-server-xmir.Po
-@AMDEP_TRUE@@am__fastdepCC_FALSE@	$(AM_V_CC)source='x-server-xmir.c' object='lightdm-x-server-xmir.obj' libtool=no @AMDEPBACKSLASH@
-@AMDEP_TRUE@@am__fastdepCC_FALSE@	DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
-@am__fastdepCC_FALSE@	$(AM_V_CC@am__nodep@)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lightdm_CFLAGS) $(CFLAGS) -c -o lightdm-x-server-xmir.obj `if test -f 'x-server-xmir.c'; then $(CYGPATH_W) 'x-server-xmir.c'; else $(CYGPATH_W) '$(srcdir)/x-server-xmir.c'; fi`
-
 lightdm-x-server-xvnc.o: x-server-xvnc.c
 @am__fastdepCC_TRUE@	$(AM_V_CC)$(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(lightdm_CFLAGS) $(CFLAGS) -MT lightdm-x-server-xvnc.o -MD -MP -MF $(DEPDIR)/lightdm-x-server-xvnc.Tpo -c -o lightdm-x-server-xvnc.o `test -f 'x-server-xvnc.c' || echo '$(srcdir)/'`x-server-xvnc.c
 @am__fastdepCC_TRUE@	$(AM_V_at)$(am__mv) $(DEPDIR)/lightdm-x-server-xvnc.Tpo $(DEPDIR)/lightdm-x-server-xvnc.Po
@@ -1411,7 +1395,10 @@ cscopelist-am: $(am__tagged_files)
 distclean-tags:
 	-rm -f TAGS ID GTAGS GRTAGS GSYMS GPATH tags
 
-distdir: $(DISTFILES)
+distdir: $(BUILT_SOURCES)
+	$(MAKE) $(AM_MAKEFLAGS) distdir-am
+
+distdir-am: $(DISTFILES)
 	@srcdirstrip=`echo "$(srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 	topsrcdirstrip=`echo "$(top_srcdir)" | sed 's/[].[^$$\\*]/\\\\&/g'`; \
 	list='$(DISTFILES)'; \
@@ -1484,7 +1471,43 @@ clean-am: clean-binPROGRAMS clean-generi
 	clean-libtool clean-sbinPROGRAMS mostlyclean-am
 
 distclean: distclean-am
-	-rm -rf ./$(DEPDIR)
+		-rm -f ./$(DEPDIR)/dm_tool-dm-tool.Po
+	-rm -f ./$(DEPDIR)/lightdm-accounts.Po
+	-rm -f ./$(DEPDIR)/lightdm-console-kit.Po
+	-rm -f ./$(DEPDIR)/lightdm-display-manager-service.Po
+	-rm -f ./$(DEPDIR)/lightdm-display-manager.Po
+	-rm -f ./$(DEPDIR)/lightdm-display-server.Po
+	-rm -f ./$(DEPDIR)/lightdm-greeter-session.Po
+	-rm -f ./$(DEPDIR)/lightdm-greeter-socket.Po
+	-rm -f ./$(DEPDIR)/lightdm-greeter.Po
+	-rm -f ./$(DEPDIR)/lightdm-guest-account.Po
+	-rm -f ./$(DEPDIR)/lightdm-lightdm.Po
+	-rm -f ./$(DEPDIR)/lightdm-log-file.Po
+	-rm -f ./$(DEPDIR)/lightdm-logger.Po
+	-rm -f ./$(DEPDIR)/lightdm-login1.Po
+	-rm -f ./$(DEPDIR)/lightdm-plymouth.Po
+	-rm -f ./$(DEPDIR)/lightdm-process.Po
+	-rm -f ./$(DEPDIR)/lightdm-seat-local.Po
+	-rm -f ./$(DEPDIR)/lightdm-seat-xdmcp-session.Po
+	-rm -f ./$(DEPDIR)/lightdm-seat-xremote.Po
+	-rm -f ./$(DEPDIR)/lightdm-seat-xvnc.Po
+	-rm -f ./$(DEPDIR)/lightdm-seat.Po
+	-rm -f ./$(DEPDIR)/lightdm-session-child.Po
+	-rm -f ./$(DEPDIR)/lightdm-session-config.Po
+	-rm -f ./$(DEPDIR)/lightdm-session.Po
+	-rm -f ./$(DEPDIR)/lightdm-shared-data-manager.Po
+	-rm -f ./$(DEPDIR)/lightdm-vnc-server.Po
+	-rm -f ./$(DEPDIR)/lightdm-vt.Po
+	-rm -f ./$(DEPDIR)/lightdm-wayland-session.Po
+	-rm -f ./$(DEPDIR)/lightdm-x-authority.Po
+	-rm -f ./$(DEPDIR)/lightdm-x-server-local.Po
+	-rm -f ./$(DEPDIR)/lightdm-x-server-remote.Po
+	-rm -f ./$(DEPDIR)/lightdm-x-server-xvnc.Po
+	-rm -f ./$(DEPDIR)/lightdm-x-server.Po
+	-rm -f ./$(DEPDIR)/lightdm-xdmcp-protocol.Po
+	-rm -f ./$(DEPDIR)/lightdm-xdmcp-server.Po
+	-rm -f ./$(DEPDIR)/lightdm-xdmcp-session.Po
+	-rm -f ./$(DEPDIR)/lightdm_guest_session-lightdm-guest-session.Po
 	-rm -f Makefile
 distclean-am: clean-am distclean-compile distclean-generic \
 	distclean-tags
@@ -1531,7 +1554,43 @@ install-ps-am:
 installcheck-am:
 
 maintainer-clean: maintainer-clean-am
-	-rm -rf ./$(DEPDIR)
+		-rm -f ./$(DEPDIR)/dm_tool-dm-tool.Po
+	-rm -f ./$(DEPDIR)/lightdm-accounts.Po
+	-rm -f ./$(DEPDIR)/lightdm-console-kit.Po
+	-rm -f ./$(DEPDIR)/lightdm-display-manager-service.Po
+	-rm -f ./$(DEPDIR)/lightdm-display-manager.Po
+	-rm -f ./$(DEPDIR)/lightdm-display-server.Po
+	-rm -f ./$(DEPDIR)/lightdm-greeter-session.Po
+	-rm -f ./$(DEPDIR)/lightdm-greeter-socket.Po
+	-rm -f ./$(DEPDIR)/lightdm-greeter.Po
+	-rm -f ./$(DEPDIR)/lightdm-guest-account.Po
+	-rm -f ./$(DEPDIR)/lightdm-lightdm.Po
+	-rm -f ./$(DEPDIR)/lightdm-log-file.Po
+	-rm -f ./$(DEPDIR)/lightdm-logger.Po
+	-rm -f ./$(DEPDIR)/lightdm-login1.Po
+	-rm -f ./$(DEPDIR)/lightdm-plymouth.Po
+	-rm -f ./$(DEPDIR)/lightdm-process.Po
+	-rm -f ./$(DEPDIR)/lightdm-seat-local.Po
+	-rm -f ./$(DEPDIR)/lightdm-seat-xdmcp-session.Po
+	-rm -f ./$(DEPDIR)/lightdm-seat-xremote.Po
+	-rm -f ./$(DEPDIR)/lightdm-seat-xvnc.Po
+	-rm -f ./$(DEPDIR)/lightdm-seat.Po
+	-rm -f ./$(DEPDIR)/lightdm-session-child.Po
+	-rm -f ./$(DEPDIR)/lightdm-session-config.Po
+	-rm -f ./$(DEPDIR)/lightdm-session.Po
+	-rm -f ./$(DEPDIR)/lightdm-shared-data-manager.Po
+	-rm -f ./$(DEPDIR)/lightdm-vnc-server.Po
+	-rm -f ./$(DEPDIR)/lightdm-vt.Po
+	-rm -f ./$(DEPDIR)/lightdm-wayland-session.Po
+	-rm -f ./$(DEPDIR)/lightdm-x-authority.Po
+	-rm -f ./$(DEPDIR)/lightdm-x-server-local.Po
+	-rm -f ./$(DEPDIR)/lightdm-x-server-remote.Po
+	-rm -f ./$(DEPDIR)/lightdm-x-server-xvnc.Po
+	-rm -f ./$(DEPDIR)/lightdm-x-server.Po
+	-rm -f ./$(DEPDIR)/lightdm-xdmcp-protocol.Po
+	-rm -f ./$(DEPDIR)/lightdm-xdmcp-server.Po
+	-rm -f ./$(DEPDIR)/lightdm-xdmcp-session.Po
+	-rm -f ./$(DEPDIR)/lightdm_guest_session-lightdm-guest-session.Po
 	-rm -f Makefile
 maintainer-clean-am: distclean-am maintainer-clean-generic
 
@@ -1553,7 +1612,7 @@ uninstall-am: uninstall-binPROGRAMS unin
 
 .MAKE: install-am install-strip
 
-.PHONY: CTAGS GTAGS TAGS all all-am check check-am clean \
+.PHONY: CTAGS GTAGS TAGS all all-am am--depfiles check check-am clean \
 	clean-binPROGRAMS clean-generic clean-libexecPROGRAMS \
 	clean-libtool clean-sbinPROGRAMS cscopelist-am ctags ctags-am \
 	distclean distclean-compile distclean-generic \
diff -pruN 1.26.0-8/src/accounts.c 1.30.0-0ubuntu8/src/accounts.c
--- 1.26.0-8/src/accounts.c	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/src/accounts.c	2018-09-05 01:33:31.000000000 +0000
@@ -16,13 +16,13 @@
 #include "accounts.h"
 #include "user-list.h"
 
-struct UserPrivate
+typedef struct
 {
     /* Internal user object */
     CommonUser *common_user;
-};
+} UserPrivate;
 
-G_DEFINE_TYPE (User, user, G_TYPE_OBJECT)
+G_DEFINE_TYPE_WITH_PRIVATE (User, user, G_TYPE_OBJECT)
 
 User *
 accounts_get_user_by_name (const gchar *username)
@@ -34,7 +34,8 @@ accounts_get_user_by_name (const gchar *
         return NULL;
 
     User *user = g_object_new (USER_TYPE, NULL);
-    user->priv->common_user = common_user;
+    UserPrivate *priv = user_get_instance_private (user);
+    priv->common_user = common_user;
     return user;
 }
 
@@ -51,78 +52,87 @@ accounts_get_current_user ()
 const gchar *
 user_get_name (User *user)
 {
+    UserPrivate *priv = user_get_instance_private (user);
     g_return_val_if_fail (user != NULL, NULL);
-    return common_user_get_name (user->priv->common_user);
+    return common_user_get_name (priv->common_user);
 }
 
 uid_t
 user_get_uid (User *user)
 {
+    UserPrivate *priv = user_get_instance_private (user);
     g_return_val_if_fail (user != NULL, 0);
-    return common_user_get_uid (user->priv->common_user);
+    return common_user_get_uid (priv->common_user);
 }
 
 gid_t
 user_get_gid (User *user)
 {
+    UserPrivate *priv = user_get_instance_private (user);
     g_return_val_if_fail (user != NULL, 0);
-    return common_user_get_gid (user->priv->common_user);
+    return common_user_get_gid (priv->common_user);
 }
 
 const gchar *
 user_get_home_directory (User *user)
 {
+    UserPrivate *priv = user_get_instance_private (user);
     g_return_val_if_fail (user != NULL, NULL);
-    return common_user_get_home_directory (user->priv->common_user);
+    return common_user_get_home_directory (priv->common_user);
 }
 
 const gchar *
 user_get_shell (User *user)
 {
+    UserPrivate *priv = user_get_instance_private (user);
     g_return_val_if_fail (user != NULL, NULL);
-    return common_user_get_shell (user->priv->common_user);
+    return common_user_get_shell (priv->common_user);
 }
 
 void
 user_set_language (User *user, const gchar *language)
 {
+    UserPrivate *priv = user_get_instance_private (user);
     g_return_if_fail (user != NULL);
-    common_user_set_language (user->priv->common_user, language);
+    common_user_set_language (priv->common_user, language);
 }
 
 const gchar *
 user_get_language (User *user)
 {
+    UserPrivate *priv = user_get_instance_private (user);
     g_return_val_if_fail (user != NULL, NULL);
-    return common_user_get_language (user->priv->common_user);
+    return common_user_get_language (priv->common_user);
 }
 
 void
 user_set_xsession (User *user, const gchar *xsession)
 {
+    UserPrivate *priv = user_get_instance_private (user);
     g_return_if_fail (user != NULL);
-    common_user_set_session (user->priv->common_user, xsession);
+    common_user_set_session (priv->common_user, xsession);
 }
 
 const gchar *
 user_get_xsession (User *user)
 {
+    UserPrivate *priv = user_get_instance_private (user);
     g_return_val_if_fail (user != NULL, NULL);
-    return common_user_get_session (user->priv->common_user);
+    return common_user_get_session (priv->common_user);
 }
 
 static void
 user_init (User *user)
 {
-    user->priv = G_TYPE_INSTANCE_GET_PRIVATE (user, USER_TYPE, UserPrivate);
 }
 
 static void
 user_finalize (GObject *object)
 {
     User *self = USER (object);
+    UserPrivate *priv = user_get_instance_private (self);
 
-    g_clear_object (&self->priv->common_user);
+    g_clear_object (&priv->common_user);
 
     G_OBJECT_CLASS (user_parent_class)->finalize (object);
 }
@@ -133,6 +143,4 @@ user_class_init (UserClass *klass)
     GObjectClass *object_class = G_OBJECT_CLASS (klass);
 
     object_class->finalize = user_finalize;
-
-    g_type_class_add_private (klass, sizeof (UserPrivate));
 }
diff -pruN 1.26.0-8/src/accounts.h 1.30.0-0ubuntu8/src/accounts.h
--- 1.26.0-8/src/accounts.h	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/src/accounts.h	2018-09-05 01:33:31.000000000 +0000
@@ -21,12 +21,9 @@ G_BEGIN_DECLS
 #define USER_TYPE (user_get_type())
 #define USER(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), USER_TYPE, User));
 
-typedef struct UserPrivate UserPrivate;
-
 typedef struct
 {
-    GObject      parent_instance;
-    UserPrivate *priv;
+    GObject parent_instance;
 } User;
 
 typedef struct
diff -pruN 1.26.0-8/src/display-manager-service.c 1.30.0-0ubuntu8/src/display-manager-service.c
--- 1.26.0-8/src/display-manager-service.c	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/src/display-manager-service.c	2018-09-05 01:33:31.000000000 +0000
@@ -20,7 +20,7 @@ enum {
 };
 static guint signals[LAST_SIGNAL] = { 0 };
 
-struct DisplayManagerServicePrivate
+typedef struct
 {
     /* Display manager being exposed on D-Bus */
     DisplayManager *manager;
@@ -45,9 +45,9 @@ struct DisplayManagerServicePrivate
     /* Bus entries for seats / session */
     GHashTable *seat_bus_entries;
     GHashTable *session_bus_entries;
-};
+} DisplayManagerServicePrivate;
 
-G_DEFINE_TYPE (DisplayManagerService, display_manager_service, G_TYPE_OBJECT)
+G_DEFINE_TYPE_WITH_PRIVATE (DisplayManagerService, display_manager_service, G_TYPE_OBJECT)
 
 typedef struct
 {
@@ -71,7 +71,9 @@ DisplayManagerService *
 display_manager_service_new (DisplayManager *manager)
 {
     DisplayManagerService *service = g_object_new (DISPLAY_MANAGER_SERVICE_TYPE, NULL);
-    service->priv->manager = g_object_ref (manager);
+    DisplayManagerServicePrivate *priv = display_manager_service_get_instance_private (service);
+
+    priv->manager = g_object_ref (manager);
 
     return service;
 }
@@ -153,11 +155,13 @@ session_bus_entry_free (gpointer data)
 static GVariant *
 get_seat_list (DisplayManagerService *service)
 {
+    DisplayManagerServicePrivate *priv = display_manager_service_get_instance_private (service);
+
     GVariantBuilder builder;
     g_variant_builder_init (&builder, G_VARIANT_TYPE ("ao"));
 
     GHashTableIter iter;
-    g_hash_table_iter_init (&iter, service->priv->seat_bus_entries);
+    g_hash_table_iter_init (&iter, priv->seat_bus_entries);
     gpointer value;
     while (g_hash_table_iter_next (&iter, NULL, &value))
     {
@@ -171,11 +175,13 @@ get_seat_list (DisplayManagerService *se
 static GVariant *
 get_session_list (DisplayManagerService *service, const gchar *seat_path)
 {
+    DisplayManagerServicePrivate *priv = display_manager_service_get_instance_private (service);
+
     GVariantBuilder builder;
     g_variant_builder_init (&builder, G_VARIANT_TYPE ("ao"));
 
     GHashTableIter iter;
-    g_hash_table_iter_init (&iter, service->priv->session_bus_entries);
+    g_hash_table_iter_init (&iter, priv->session_bus_entries);
     gpointer value;
     while (g_hash_table_iter_next (&iter, NULL, &value))
     {
@@ -217,6 +223,7 @@ handle_display_manager_call (GDBusConnec
                              gpointer               user_data)
 {
     DisplayManagerService *service = user_data;
+    DisplayManagerServicePrivate *priv = display_manager_service_get_instance_private (service);
 
     if (g_strcmp0 (method_name, "AddSeat") == 0)
         g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_INVALID_ARGS, "AddSeat is deprecated");
@@ -239,7 +246,7 @@ handle_display_manager_call (GDBusConnec
             g_dbus_method_invocation_return_error (invocation, G_DBUS_ERROR, G_DBUS_ERROR_FAILED, "Unable to create local X seat");
             return;
         }
-        SeatBusEntry *entry = g_hash_table_lookup (service->priv->seat_bus_entries, seat);
+        SeatBusEntry *entry = g_hash_table_lookup (priv->seat_bus_entries, seat);
         g_dbus_method_invocation_return_value (invocation, g_variant_new ("(o)", entry->path));
     }
     else
@@ -337,7 +344,9 @@ handle_seat_call (GDBusConnection
 static Seat *
 get_seat_for_session (DisplayManagerService *service, Session *session)
 {
-    for (GList *seat_link = display_manager_get_seats (service->priv->manager); seat_link; seat_link = seat_link->next)
+    DisplayManagerServicePrivate *priv = display_manager_service_get_instance_private (service);
+
+    for (GList *seat_link = display_manager_get_seats (priv->manager); seat_link; seat_link = seat_link->next)
     {
         Seat *seat = seat_link->data;
 
@@ -401,16 +410,18 @@ handle_session_call (GDBusConnection
 static void
 running_user_session_cb (Seat *seat, Session *session, DisplayManagerService *service)
 {
+    DisplayManagerServicePrivate *priv = display_manager_service_get_instance_private (service);
+
     /* Set environment variables when session runs */
-    SeatBusEntry *seat_entry = g_hash_table_lookup (service->priv->seat_bus_entries, seat);
+    SeatBusEntry *seat_entry = g_hash_table_lookup (priv->seat_bus_entries, seat);
     session_set_env (session, "XDG_SEAT_PATH", seat_entry->path);
-    g_autofree gchar *path = g_strdup_printf ("/org/freedesktop/DisplayManager/Session%d", service->priv->session_index);
-    service->priv->session_index++;
+    g_autofree gchar *path = g_strdup_printf ("/org/freedesktop/DisplayManager/Session%d", priv->session_index);
+    priv->session_index++;
     session_set_env (session, "XDG_SESSION_PATH", path);
     g_object_set_data_full (G_OBJECT (session), "XDG_SESSION_PATH", g_steal_pointer (&path), g_free);
 
     SessionBusEntry *session_entry = session_bus_entry_new (service, session, g_object_get_data (G_OBJECT (session), "XDG_SESSION_PATH"), seat_entry ? seat_entry->path : NULL);
-    g_hash_table_insert (service->priv->session_bus_entries, g_object_ref (session), session_entry);
+    g_hash_table_insert (priv->session_bus_entries, g_object_ref (session), session_entry);
 
     g_debug ("Registering session with bus path %s", session_entry->path);
 
@@ -420,54 +431,58 @@ running_user_session_cb (Seat *seat, Ses
         handle_session_get_property
     };
     g_autoptr(GError) error = NULL;
-    session_entry->bus_id = g_dbus_connection_register_object (service->priv->bus,
+    session_entry->bus_id = g_dbus_connection_register_object (priv->bus,
                                                                session_entry->path,
-                                                               service->priv->session_info->interfaces[0],
+                                                               priv->session_info->interfaces[0],
                                                                &session_vtable,
                                                                session_entry, NULL,
                                                                &error);
     if (session_entry->bus_id == 0)
         g_warning ("Failed to register user session: %s", error->message);
 
-    emit_object_value_changed (service->priv->bus, "/org/freedesktop/DisplayManager", "org.freedesktop.DisplayManager", "Sessions", get_session_list (service, NULL));
-    emit_object_signal (service->priv->bus, "/org/freedesktop/DisplayManager", "SessionAdded", session_entry->path);
+    emit_object_value_changed (priv->bus, "/org/freedesktop/DisplayManager", "org.freedesktop.DisplayManager", "Sessions", get_session_list (service, NULL));
+    emit_object_signal (priv->bus, "/org/freedesktop/DisplayManager", "SessionAdded", session_entry->path);
 
-    emit_object_value_changed (service->priv->bus, seat_entry->path, "org.freedesktop.DisplayManager.Seat", "Sessions", get_session_list (service, session_entry->seat_path));
-    emit_object_signal (service->priv->bus, seat_entry->path, "SessionAdded", session_entry->path);
+    emit_object_value_changed (priv->bus, seat_entry->path, "org.freedesktop.DisplayManager.Seat", "Sessions", get_session_list (service, session_entry->seat_path));
+    emit_object_signal (priv->bus, seat_entry->path, "SessionAdded", session_entry->path);
 }
 
 static void
 session_removed_cb (Seat *seat, Session *session, DisplayManagerService *service)
 {
+    DisplayManagerServicePrivate *priv = display_manager_service_get_instance_private (service);
+
     g_signal_handlers_disconnect_matched (session, G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, seat);
 
-    SessionBusEntry *entry = g_hash_table_lookup (service->priv->session_bus_entries, session);
+    SessionBusEntry *entry = g_hash_table_lookup (priv->session_bus_entries, session);
     g_autofree gchar *seat_path = NULL;
     if (entry)
     {
-        g_dbus_connection_unregister_object (service->priv->bus, entry->bus_id);
-        emit_object_signal (service->priv->bus, "/org/freedesktop/DisplayManager", "SessionRemoved", entry->path);
-        emit_object_signal (service->priv->bus, entry->seat_path, "SessionRemoved", entry->path);
+        g_dbus_connection_unregister_object (priv->bus, entry->bus_id);
+        emit_object_signal (priv->bus, "/org/freedesktop/DisplayManager", "SessionRemoved", entry->path);
+        emit_object_signal (priv->bus, entry->seat_path, "SessionRemoved", entry->path);
         seat_path = g_strdup (entry->seat_path);
     }
 
-    g_hash_table_remove (service->priv->session_bus_entries, session);
+    g_hash_table_remove (priv->session_bus_entries, session);
 
     if (seat_path)
     {
-        emit_object_value_changed (service->priv->bus, "/org/freedesktop/DisplayManager", "org.freedesktop.DisplayManager", "Sessions", get_session_list (service, NULL));
-        emit_object_value_changed (service->priv->bus, seat_path, "org.freedesktop.DisplayManager.Seat", "Sessions", get_session_list (service, seat_path));
+        emit_object_value_changed (priv->bus, "/org/freedesktop/DisplayManager", "org.freedesktop.DisplayManager", "Sessions", get_session_list (service, NULL));
+        emit_object_value_changed (priv->bus, seat_path, "org.freedesktop.DisplayManager.Seat", "Sessions", get_session_list (service, seat_path));
     }
 }
 
 static void
 seat_added_cb (DisplayManager *display_manager, Seat *seat, DisplayManagerService *service)
 {
-    g_autofree gchar *path = g_strdup_printf ("/org/freedesktop/DisplayManager/Seat%d", service->priv->seat_index);
-    service->priv->seat_index++;
+    DisplayManagerServicePrivate *priv = display_manager_service_get_instance_private (service);
+
+    g_autofree gchar *path = g_strdup_printf ("/org/freedesktop/DisplayManager/Seat%d", priv->seat_index);
+    priv->seat_index++;
 
     SeatBusEntry *entry = seat_bus_entry_new (service, seat, path);
-    g_hash_table_insert (service->priv->seat_bus_entries, g_object_ref (seat), entry);
+    g_hash_table_insert (priv->seat_bus_entries, g_object_ref (seat), entry);
 
     g_debug ("Registering seat with bus path %s", entry->path);
 
@@ -477,17 +492,17 @@ seat_added_cb (DisplayManager *display_m
         handle_seat_get_property
     };
     g_autoptr(GError) error = NULL;
-    entry->bus_id = g_dbus_connection_register_object (service->priv->bus,
+    entry->bus_id = g_dbus_connection_register_object (priv->bus,
                                                        entry->path,
-                                                       service->priv->seat_info->interfaces[0],
+                                                       priv->seat_info->interfaces[0],
                                                        &seat_vtable,
                                                        entry, NULL,
                                                        &error);
     if (entry->bus_id == 0)
         g_warning ("Failed to register seat: %s", error->message);
 
-    emit_object_value_changed (service->priv->bus, "/org/freedesktop/DisplayManager", "org.freedesktop.DisplayManager", "Seats", get_seat_list (service));
-    emit_object_signal (service->priv->bus, "/org/freedesktop/DisplayManager", "SeatAdded", entry->path);
+    emit_object_value_changed (priv->bus, "/org/freedesktop/DisplayManager", "org.freedesktop.DisplayManager", "Seats", get_seat_list (service));
+    emit_object_signal (priv->bus, "/org/freedesktop/DisplayManager", "SeatAdded", entry->path);
 
     g_signal_connect (seat, SEAT_SIGNAL_RUNNING_USER_SESSION, G_CALLBACK (running_user_session_cb), service);
     g_signal_connect (seat, SEAT_SIGNAL_SESSION_REMOVED, G_CALLBACK (session_removed_cb), service);
@@ -496,16 +511,18 @@ seat_added_cb (DisplayManager *display_m
 static void
 seat_removed_cb (DisplayManager *display_manager, Seat *seat, DisplayManagerService *service)
 {
-    SeatBusEntry *entry = g_hash_table_lookup (service->priv->seat_bus_entries, seat);
+    DisplayManagerServicePrivate *priv = display_manager_service_get_instance_private (service);
+
+    SeatBusEntry *entry = g_hash_table_lookup (priv->seat_bus_entries, seat);
     if (entry)
     {
-        g_dbus_connection_unregister_object (service->priv->bus, entry->bus_id);
-        emit_object_signal (service->priv->bus, "/org/freedesktop/DisplayManager", "SeatRemoved", entry->path);
+        g_dbus_connection_unregister_object (priv->bus, entry->bus_id);
+        emit_object_signal (priv->bus, "/org/freedesktop/DisplayManager", "SeatRemoved", entry->path);
     }
 
-    g_hash_table_remove (service->priv->seat_bus_entries, seat);
+    g_hash_table_remove (priv->seat_bus_entries, seat);
 
-    emit_object_value_changed (service->priv->bus, "/org/freedesktop/DisplayManager", "org.freedesktop.DisplayManager", "Seats", get_seat_list (service));
+    emit_object_value_changed (priv->bus, "/org/freedesktop/DisplayManager", "org.freedesktop.DisplayManager", "Seats", get_seat_list (service));
 }
 
 static void
@@ -514,10 +531,11 @@ bus_acquired_cb (GDBusConnection *connec
                  gpointer         user_data)
 {
     DisplayManagerService *service = user_data;
+    DisplayManagerServicePrivate *priv = display_manager_service_get_instance_private (service);
 
     g_debug ("Acquired bus name %s", name);
 
-    service->priv->bus = g_object_ref (connection);
+    priv->bus = g_object_ref (connection);
 
     const gchar *display_manager_interface =
         "<node>"
@@ -573,8 +591,8 @@ bus_acquired_cb (GDBusConnection *connec
         "    </signal>"
         "  </interface>"
         "</node>";
-    service->priv->seat_info = g_dbus_node_info_new_for_xml (seat_interface, NULL);
-    g_assert (service->priv->seat_info != NULL);
+    priv->seat_info = g_dbus_node_info_new_for_xml (seat_interface, NULL);
+    g_assert (priv->seat_info != NULL);
 
     const gchar *session_interface =
         "<node>"
@@ -584,8 +602,8 @@ bus_acquired_cb (GDBusConnection *connec
         "    <method name='Lock'/>"
         "  </interface>"
         "</node>";
-    service->priv->session_info = g_dbus_node_info_new_for_xml (session_interface, NULL);
-    g_assert (service->priv->session_info != NULL);
+    priv->session_info = g_dbus_node_info_new_for_xml (session_interface, NULL);
+    g_assert (priv->session_info != NULL);
 
     static const GDBusInterfaceVTable display_manager_vtable =
     {
@@ -593,21 +611,21 @@ bus_acquired_cb (GDBusConnection *connec
         handle_display_manager_get_property
     };
     g_autoptr(GError) error = NULL;
-    service->priv->reg_id = g_dbus_connection_register_object (connection,
-                                                               "/org/freedesktop/DisplayManager",
-                                                               display_manager_info->interfaces[0],
-                                                               &display_manager_vtable,
-                                                               service, NULL,
-                                                               &error);
-    if (service->priv->reg_id == 0)
+    priv->reg_id = g_dbus_connection_register_object (connection,
+                                                      "/org/freedesktop/DisplayManager",
+                                                      display_manager_info->interfaces[0],
+                                                      &display_manager_vtable,
+                                                      service, NULL,
+                                                      &error);
+    if (priv->reg_id == 0)
         g_warning ("Failed to register display manager: %s", error->message);
     g_dbus_node_info_unref (display_manager_info);
 
     /* Add objects for existing seats and listen to new ones */
-    g_signal_connect (service->priv->manager, DISPLAY_MANAGER_SIGNAL_SEAT_ADDED, G_CALLBACK (seat_added_cb), service);
-    g_signal_connect (service->priv->manager, DISPLAY_MANAGER_SIGNAL_SEAT_REMOVED, G_CALLBACK (seat_removed_cb), service);
-    for (GList *link = display_manager_get_seats (service->priv->manager); link; link = link->next)
-        seat_added_cb (service->priv->manager, (Seat *) link->data, service);
+    g_signal_connect (priv->manager, DISPLAY_MANAGER_SIGNAL_SEAT_ADDED, G_CALLBACK (seat_added_cb), service);
+    g_signal_connect (priv->manager, DISPLAY_MANAGER_SIGNAL_SEAT_REMOVED, G_CALLBACK (seat_removed_cb), service);
+    for (GList *link = display_manager_get_seats (priv->manager); link; link = link->next)
+        seat_added_cb (priv->manager, (Seat *) link->data, service);
 
     g_signal_emit (service, signals[READY], 0);
 }
@@ -630,42 +648,45 @@ name_lost_cb (GDBusConnection *connectio
 void
 display_manager_service_start (DisplayManagerService *service)
 {
+    DisplayManagerServicePrivate *priv = display_manager_service_get_instance_private (service);
+
     g_return_if_fail (service != NULL);
 
     g_debug ("Using D-Bus name %s", LIGHTDM_BUS_NAME);
-    service->priv->bus_id = g_bus_own_name (getuid () == 0 ? G_BUS_TYPE_SYSTEM : G_BUS_TYPE_SESSION,
-                                            LIGHTDM_BUS_NAME,
-                                            G_BUS_NAME_OWNER_FLAGS_NONE,
-                                            bus_acquired_cb,
-                                            NULL,
-                                            name_lost_cb,
-                                            service,
-                                            NULL);
+    priv->bus_id = g_bus_own_name (getuid () == 0 ? G_BUS_TYPE_SYSTEM : G_BUS_TYPE_SESSION,
+                                   LIGHTDM_BUS_NAME,
+                                   G_BUS_NAME_OWNER_FLAGS_NONE,
+                                   bus_acquired_cb,
+                                   NULL,
+                                   name_lost_cb,
+                                   service,
+                                   NULL);
 }
 
 static void
 display_manager_service_init (DisplayManagerService *service)
 {
-    service->priv = G_TYPE_INSTANCE_GET_PRIVATE (service, DISPLAY_MANAGER_SERVICE_TYPE, DisplayManagerServicePrivate);
-    service->priv->seat_bus_entries = g_hash_table_new_full (g_direct_hash, g_direct_equal, g_object_unref, seat_bus_entry_free);
-    service->priv->session_bus_entries = g_hash_table_new_full (g_direct_hash, g_direct_equal, g_object_unref, session_bus_entry_free);
+    DisplayManagerServicePrivate *priv = display_manager_service_get_instance_private (service);
+    priv->seat_bus_entries = g_hash_table_new_full (g_direct_hash, g_direct_equal, g_object_unref, seat_bus_entry_free);
+    priv->session_bus_entries = g_hash_table_new_full (g_direct_hash, g_direct_equal, g_object_unref, session_bus_entry_free);
 }
 
 static void
 display_manager_service_finalize (GObject *object)
 {
     DisplayManagerService *self = DISPLAY_MANAGER_SERVICE (object);
+    DisplayManagerServicePrivate *priv = display_manager_service_get_instance_private (self);
 
-    g_dbus_connection_unregister_object (self->priv->bus, self->priv->reg_id);
-    g_bus_unown_name (self->priv->bus_id);
-    if (self->priv->seat_info)
-        g_dbus_node_info_unref (self->priv->seat_info);
-    if (self->priv->session_info)
-        g_dbus_node_info_unref (self->priv->session_info);
-    g_hash_table_unref (self->priv->seat_bus_entries);
-    g_hash_table_unref (self->priv->session_bus_entries);
-    g_object_unref (self->priv->bus);
-    g_clear_object (&self->priv->manager);
+    g_dbus_connection_unregister_object (priv->bus, priv->reg_id);
+    g_bus_unown_name (priv->bus_id);
+    if (priv->seat_info)
+        g_dbus_node_info_unref (priv->seat_info);
+    if (priv->session_info)
+        g_dbus_node_info_unref (priv->session_info);
+    g_hash_table_unref (priv->seat_bus_entries);
+    g_hash_table_unref (priv->session_bus_entries);
+    g_object_unref (priv->bus);
+    g_clear_object (&priv->manager);
 
     G_OBJECT_CLASS (display_manager_service_parent_class)->finalize (object);
 }
@@ -677,8 +698,6 @@ display_manager_service_class_init (Disp
 
     object_class->finalize = display_manager_service_finalize;
 
-    g_type_class_add_private (klass, sizeof (DisplayManagerServicePrivate));
-
     signals[READY] =
         g_signal_new (DISPLAY_MANAGER_SERVICE_SIGNAL_READY,
                       G_TYPE_FROM_CLASS (klass),
diff -pruN 1.26.0-8/src/display-manager-service.h 1.30.0-0ubuntu8/src/display-manager-service.h
--- 1.26.0-8/src/display-manager-service.h	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/src/display-manager-service.h	2018-09-05 01:33:31.000000000 +0000
@@ -24,12 +24,9 @@ G_BEGIN_DECLS
 #define DISPLAY_MANAGER_SERVICE_SIGNAL_ADD_XLOCAL_SEAT "add-xlocal-seat"
 #define DISPLAY_MANAGER_SERVICE_SIGNAL_NAME_LOST       "name-lost"
 
-typedef struct DisplayManagerServicePrivate DisplayManagerServicePrivate;
-
 typedef struct
 {
-    GObject                       parent_instance;
-    DisplayManagerServicePrivate *priv;
+    GObject parent_instance;
 } DisplayManagerService;
 
 typedef struct
diff -pruN 1.26.0-8/src/display-manager.c 1.30.0-0ubuntu8/src/display-manager.c
--- 1.26.0-8/src/display-manager.c	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/src/display-manager.c	2018-09-05 01:33:31.000000000 +0000
@@ -19,7 +19,6 @@
 #include "configuration.h"
 #include "seat-local.h"
 #include "seat-xremote.h"
-#include "seat-unity.h"
 #include "plymouth.h"
 
 enum {
@@ -30,7 +29,7 @@ enum {
 };
 static guint signals[LAST_SIGNAL] = { 0 };
 
-struct DisplayManagerPrivate
+typedef struct
 {
     /* The seats available */
     GList *seats;
@@ -40,9 +39,9 @@ struct DisplayManagerPrivate
 
     /* TRUE if stopped */
     gboolean stopped;
-};
+} DisplayManagerPrivate;
 
-G_DEFINE_TYPE (DisplayManager, display_manager, G_TYPE_OBJECT)
+G_DEFINE_TYPE_WITH_PRIVATE (DisplayManager, display_manager, G_TYPE_OBJECT)
 
 DisplayManager *
 display_manager_new (void)
@@ -53,13 +52,16 @@ display_manager_new (void)
 GList *
 display_manager_get_seats (DisplayManager *manager)
 {
-    return manager->priv->seats;
+    DisplayManagerPrivate *priv = display_manager_get_instance_private (manager);
+    return priv->seats;
 }
 
 Seat *
 display_manager_get_seat (DisplayManager *manager, const gchar *name)
 {
-    for (GList *link = manager->priv->seats; link; link = link->next)
+    DisplayManagerPrivate *priv = display_manager_get_instance_private (manager);
+
+    for (GList *link = priv->seats; link; link = link->next)
     {
         Seat *seat = link->data;
 
@@ -73,11 +75,13 @@ display_manager_get_seat (DisplayManager
 static void
 check_stopped (DisplayManager *manager)
 {
-    if (manager->priv->stopping &&
-        !manager->priv->stopped &&
-        g_list_length (manager->priv->seats) == 0)
+    DisplayManagerPrivate *priv = display_manager_get_instance_private (manager);
+
+    if (priv->stopping &&
+        !priv->stopped &&
+        g_list_length (priv->seats) == 0)
     {
-        manager->priv->stopped = TRUE;
+        priv->stopped = TRUE;
         g_debug ("Display manager stopped");
         g_signal_emit (manager, signals[STOPPED], 0);
     }
@@ -86,10 +90,12 @@ check_stopped (DisplayManager *manager)
 static void
 seat_stopped_cb (Seat *seat, DisplayManager *manager)
 {
-    manager->priv->seats = g_list_remove (manager->priv->seats, seat);
+    DisplayManagerPrivate *priv = display_manager_get_instance_private (manager);
+
+    priv->seats = g_list_remove (priv->seats, seat);
     g_signal_handlers_disconnect_matched (seat, G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, manager);
 
-    if (!manager->priv->stopping)
+    if (!priv->stopping)
         g_signal_emit (manager, signals[SEAT_REMOVED], 0, seat);
 
     g_object_unref (seat);
@@ -100,15 +106,15 @@ seat_stopped_cb (Seat *seat, DisplayMana
 gboolean
 display_manager_add_seat (DisplayManager *manager, Seat *seat)
 {
-    gboolean result;
+    DisplayManagerPrivate *priv = display_manager_get_instance_private (manager);
 
-    g_return_val_if_fail (!manager->priv->stopping, FALSE);
+    g_return_val_if_fail (!priv->stopping, FALSE);
 
-    result = seat_start (SEAT (seat));
+    gboolean result = seat_start (SEAT (seat));
     if (!result)
         return FALSE;
 
-    manager->priv->seats = g_list_append (manager->priv->seats, g_object_ref (seat));
+    priv->seats = g_list_append (priv->seats, g_object_ref (seat));
     g_signal_connect (seat, SEAT_SIGNAL_STOPPED, G_CALLBACK (seat_stopped_cb), manager);
     g_signal_emit (manager, signals[SEAT_ADDED], 0, seat);
 
@@ -131,17 +137,19 @@ display_manager_start (DisplayManager *m
 void
 display_manager_stop (DisplayManager *manager)
 {
+    DisplayManagerPrivate *priv = display_manager_get_instance_private (manager);
+
     g_return_if_fail (manager != NULL);
 
-    if (manager->priv->stopping)
+    if (priv->stopping)
         return;
 
     g_debug ("Stopping display manager");
 
-    manager->priv->stopping = TRUE;
+    priv->stopping = TRUE;
 
     /* Stop all the seats. Copy the list as it might be modified if a seat stops during this loop */
-    GList *seats = g_list_copy (manager->priv->seats);
+    GList *seats = g_list_copy (priv->seats);
     for (GList *link = seats; link; link = link->next)
     {
         Seat *seat = link->data;
@@ -155,25 +163,23 @@ display_manager_stop (DisplayManager *ma
 static void
 display_manager_init (DisplayManager *manager)
 {
-    manager->priv = G_TYPE_INSTANCE_GET_PRIVATE (manager, DISPLAY_MANAGER_TYPE, DisplayManagerPrivate);
-
     /* Load the seat modules */
     seat_register_module ("local", SEAT_LOCAL_TYPE);
     seat_register_module ("xremote", SEAT_XREMOTE_TYPE);
-    seat_register_module ("unity", SEAT_UNITY_TYPE);
 }
 
 static void
 display_manager_finalize (GObject *object)
 {
     DisplayManager *self = DISPLAY_MANAGER (object);
+    DisplayManagerPrivate *priv = display_manager_get_instance_private (self);
 
-    for (GList *link = self->priv->seats; link; link = link->next)
+    for (GList *link = priv->seats; link; link = link->next)
     {
         Seat *seat = link->data;
         g_signal_handlers_disconnect_matched (seat, G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, self);
     }
-    g_list_free_full (self->priv->seats, g_object_unref);
+    g_list_free_full (priv->seats, g_object_unref);
 
     G_OBJECT_CLASS (display_manager_parent_class)->finalize (object);
 }
@@ -185,8 +191,6 @@ display_manager_class_init (DisplayManag
 
     object_class->finalize = display_manager_finalize;
 
-    g_type_class_add_private (klass, sizeof (DisplayManagerPrivate));
-
     signals[SEAT_ADDED] =
         g_signal_new (DISPLAY_MANAGER_SIGNAL_SEAT_ADDED,
                       G_TYPE_FROM_CLASS (klass),
diff -pruN 1.26.0-8/src/display-manager.h 1.30.0-0ubuntu8/src/display-manager.h
--- 1.26.0-8/src/display-manager.h	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/src/display-manager.h	2018-09-05 01:33:31.000000000 +0000
@@ -25,12 +25,9 @@ G_BEGIN_DECLS
 #define DISPLAY_MANAGER_SIGNAL_SEAT_REMOVED "seat-removed"
 #define DISPLAY_MANAGER_SIGNAL_STOPPED      "stopped"
 
-typedef struct DisplayManagerPrivate DisplayManagerPrivate;
-
 typedef struct
 {
-    GObject         parent_instance;
-    DisplayManagerPrivate *priv;
+    GObject parent_instance;
 } DisplayManager;
 
 typedef struct
diff -pruN 1.26.0-8/src/display-server.c 1.30.0-0ubuntu8/src/display-server.c
--- 1.26.0-8/src/display-server.c	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/src/display-server.c	2018-09-05 01:33:31.000000000 +0000
@@ -20,7 +20,7 @@ enum {
 };
 static guint signals[LAST_SIGNAL] = { 0 };
 
-struct DisplayServerPrivate
+typedef struct
 {
     /* TRUE when started */
     gboolean is_ready;
@@ -30,11 +30,12 @@ struct DisplayServerPrivate
 
     /* TRUE when the display server has stopped */
     gboolean stopped;
-};
+} DisplayServerPrivate;
 
 static void display_server_logger_iface_init (LoggerInterface *iface);
 
 G_DEFINE_TYPE_WITH_CODE (DisplayServer, display_server, G_TYPE_OBJECT,
+                         G_ADD_PRIVATE (DisplayServer)
                          G_IMPLEMENT_INTERFACE (LOGGER_TYPE, display_server_logger_iface_init))
 
 const gchar *
@@ -92,14 +93,16 @@ display_server_start (DisplayServer *ser
 gboolean
 display_server_get_is_ready (DisplayServer *server)
 {
+    DisplayServerPrivate *priv = display_server_get_instance_private (server);
     g_return_val_if_fail (server != NULL, FALSE);
-    return server->priv->is_ready;
+    return priv->is_ready;
 }
 
 static gboolean
 display_server_real_start (DisplayServer *server)
 {
-    server->priv->is_ready = TRUE;
+    DisplayServerPrivate *priv = display_server_get_instance_private (server);
+    priv->is_ready = TRUE;
     g_signal_emit (server, signals[READY], 0);
     return TRUE;
 }
@@ -129,11 +132,13 @@ display_server_real_disconnect_session (
 void
 display_server_stop (DisplayServer *server)
 {
+    DisplayServerPrivate *priv = display_server_get_instance_private (server);
+
     g_return_if_fail (server != NULL);
 
-    if (server->priv->stopping)
+    if (priv->stopping)
         return;
-    server->priv->stopping = TRUE;
+    priv->stopping = TRUE;
 
     DISPLAY_SERVER_GET_CLASS (server)->stop (server);
 }
@@ -141,8 +146,9 @@ display_server_stop (DisplayServer *serv
 gboolean
 display_server_get_is_stopping (DisplayServer *server)
 {
+    DisplayServerPrivate *priv = display_server_get_instance_private (server);
     g_return_val_if_fail (server != NULL, FALSE);
-    return server->priv->stopping;
+    return priv->stopping;
 }
 
 static void
@@ -154,7 +160,6 @@ display_server_real_stop (DisplayServer
 static void
 display_server_init (DisplayServer *server)
 {
-    server->priv = G_TYPE_INSTANCE_GET_PRIVATE (server, DISPLAY_SERVER_TYPE, DisplayServerPrivate);
 }
 
 static void
@@ -168,8 +173,6 @@ display_server_class_init (DisplayServer
     klass->disconnect_session = display_server_real_disconnect_session;
     klass->stop = display_server_real_stop;
 
-    g_type_class_add_private (klass, sizeof (DisplayServerPrivate));
-
     signals[READY] =
         g_signal_new (DISPLAY_SERVER_SIGNAL_READY,
                       G_TYPE_FROM_CLASS (klass),
diff -pruN 1.26.0-8/src/display-server.h 1.30.0-0ubuntu8/src/display-server.h
--- 1.26.0-8/src/display-server.h	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/src/display-server.h	2018-09-05 01:33:31.000000000 +0000
@@ -29,12 +29,9 @@ G_BEGIN_DECLS
 #define DISPLAY_SERVER_SIGNAL_READY   "ready"
 #define DISPLAY_SERVER_SIGNAL_STOPPED "stopped"
 
-typedef struct DisplayServerPrivate DisplayServerPrivate;
-
 struct DisplayServer
 {
-    GObject               parent_instance;
-    DisplayServerPrivate *priv;
+    GObject parent_instance;
 };
 
 typedef struct
diff -pruN 1.26.0-8/src/dm-tool.c 1.30.0-0ubuntu8/src/dm-tool.c
--- 1.26.0-8/src/dm-tool.c	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/src/dm-tool.c	2018-09-05 01:33:31.000000000 +0000
@@ -353,9 +353,7 @@ main (int argc, char **argv)
                     g_print ("    %s=%s\n", property_names[i], g_variant_print (value, FALSE));
                 }
             }
-            g_variant_iter_free (session_iter);
         }
-        g_variant_iter_free (seat_iter);
 
         return EXIT_SUCCESS;
     }
diff -pruN 1.26.0-8/src/greeter-session.c 1.30.0-0ubuntu8/src/greeter-session.c
--- 1.26.0-8/src/greeter-session.c	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/src/greeter-session.c	2018-09-05 01:33:31.000000000 +0000
@@ -17,13 +17,13 @@
 
 #include "greeter-session.h"
 
-struct GreeterSessionPrivate
+typedef struct
 {
     /* Greeter running inside this session */
     Greeter *greeter;
-};
+} GreeterSessionPrivate;
 
-G_DEFINE_TYPE (GreeterSession, greeter_session, SESSION_TYPE)
+G_DEFINE_TYPE_WITH_PRIVATE (GreeterSession, greeter_session, SESSION_TYPE)
 
 GreeterSession *
 greeter_session_new (void)
@@ -34,14 +34,15 @@ greeter_session_new (void)
 Greeter *
 greeter_session_get_greeter (GreeterSession *session)
 {
+    GreeterSessionPrivate *priv = greeter_session_get_instance_private (session);
     g_return_val_if_fail (session != NULL, NULL);
-    return session->priv->greeter;
+    return priv->greeter;
 }
 
 static gboolean
 greeter_session_start (Session *session)
 {
-    GreeterSession *s = GREETER_SESSION (session);
+    GreeterSessionPrivate *priv = greeter_session_get_instance_private (GREETER_SESSION (session));
 
     /* Create a pipe to talk with the greeter */
     int to_greeter_pipe[2], from_greeter_pipe[2];
@@ -55,7 +56,7 @@ greeter_session_start (Session *session)
     int to_greeter_output = to_greeter_pipe[0];
     int from_greeter_input = from_greeter_pipe[1];
     int from_greeter_output = from_greeter_pipe[0];
-    greeter_set_file_descriptors (s->priv->greeter, to_greeter_input, from_greeter_output);
+    greeter_set_file_descriptors (priv->greeter, to_greeter_input, from_greeter_output);
 
     /* Don't allow the daemon end of the pipes to be accessed in child processes */
     fcntl (to_greeter_input, F_SETFD, FD_CLOEXEC);
@@ -79,9 +80,9 @@ greeter_session_start (Session *session)
 static void
 greeter_session_stop (Session *session)
 {
-    GreeterSession *s = GREETER_SESSION (session);
+    GreeterSessionPrivate *priv = greeter_session_get_instance_private (GREETER_SESSION (session));
 
-    greeter_stop (s->priv->greeter);
+    greeter_stop (priv->greeter);
 
     SESSION_CLASS (greeter_session_parent_class)->stop (session);
 }
@@ -89,16 +90,17 @@ greeter_session_stop (Session *session)
 static void
 greeter_session_init (GreeterSession *session)
 {
-    session->priv = G_TYPE_INSTANCE_GET_PRIVATE (session, GREETER_SESSION_TYPE, GreeterSessionPrivate);
-    session->priv->greeter = greeter_new ();
+    GreeterSessionPrivate *priv = greeter_session_get_instance_private (session);
+    priv->greeter = greeter_new ();
 }
 
 static void
 greeter_session_finalize (GObject *object)
 {
     GreeterSession *self = GREETER_SESSION (object);
+    GreeterSessionPrivate *priv = greeter_session_get_instance_private (self);
 
-    g_clear_object (&self->priv->greeter);
+    g_clear_object (&priv->greeter);
 
     G_OBJECT_CLASS (greeter_session_parent_class)->finalize (object);
 }
@@ -112,6 +114,4 @@ greeter_session_class_init (GreeterSessi
     session_class->start = greeter_session_start;
     session_class->stop = greeter_session_stop;
     object_class->finalize = greeter_session_finalize;
-
-    g_type_class_add_private (klass, sizeof (GreeterSessionPrivate));
 }
diff -pruN 1.26.0-8/src/greeter-session.h 1.30.0-0ubuntu8/src/greeter-session.h
--- 1.26.0-8/src/greeter-session.h	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/src/greeter-session.h	2018-09-05 01:33:31.000000000 +0000
@@ -23,12 +23,9 @@ G_BEGIN_DECLS
 #define GREETER_SESSION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), GREETER_SESSION_TYPE, GreeterSessionClass))
 #define IS_GREETER_SESSION(obj)        (G_TYPE_CHECK_INSTANCE_TYPE ((obj), GREETER_SESSION_TYPE))
 
-typedef struct GreeterSessionPrivate GreeterSessionPrivate;
-
 typedef struct
 {
-    Session                parent_instance;
-    GreeterSessionPrivate *priv;
+    Session parent_instance;
 } GreeterSession;
 
 typedef struct
diff -pruN 1.26.0-8/src/greeter-socket.c 1.30.0-0ubuntu8/src/greeter-socket.c
--- 1.26.0-8/src/greeter-socket.c	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/src/greeter-socket.c	2018-09-05 01:33:31.000000000 +0000
@@ -23,7 +23,7 @@ enum {
 };
 static guint signals[LAST_SIGNAL] = { 0 };
 
-struct GreeterSocketPrivate
+typedef struct
 {
     /* Path of socket to use */
     gchar *path;
@@ -39,15 +39,17 @@ struct GreeterSocketPrivate
 
     /* Greeter connected on this socket */
     Greeter *greeter;
-};
+} GreeterSocketPrivate;
 
-G_DEFINE_TYPE (GreeterSocket, greeter_socket, G_TYPE_OBJECT)
+G_DEFINE_TYPE_WITH_PRIVATE (GreeterSocket, greeter_socket, G_TYPE_OBJECT)
 
 GreeterSocket *
 greeter_socket_new (const gchar *path)
 {
     GreeterSocket *socket = g_object_new (GREETER_SOCKET_TYPE, NULL);
-    socket->priv->path = g_strdup (path);
+    GreeterSocketPrivate *priv = greeter_socket_get_instance_private (socket);
+
+    priv->path = g_strdup (path);
 
     return socket;
 }
@@ -55,34 +57,38 @@ greeter_socket_new (const gchar *path)
 static void
 greeter_disconnected_cb (Greeter *greeter, GreeterSocket *socket)
 {
-    if (greeter == socket->priv->greeter)
+    GreeterSocketPrivate *priv = greeter_socket_get_instance_private (socket);
+
+    if (greeter == priv->greeter)
     {
-        g_clear_object (&socket->priv->greeter);
-        g_clear_object (&socket->priv->greeter_socket);
+        g_clear_object (&priv->greeter);
+        g_clear_object (&priv->greeter_socket);
     }
 }
 
 static gboolean
 greeter_connect_cb (GSocket *s, GIOCondition condition, GreeterSocket *socket)
 {
+    GreeterSocketPrivate *priv = greeter_socket_get_instance_private (socket);
+
     g_autoptr(GError) error = NULL;
-    g_autoptr(GSocket) new_socket = g_socket_accept (socket->priv->socket, NULL, &error);
+    g_autoptr(GSocket) new_socket = g_socket_accept (priv->socket, NULL, &error);
     if (error)
         g_warning ("Failed to accept greeter connection: %s", error->message);
     if (!new_socket)
         return G_SOURCE_CONTINUE;
 
     /* Greeter already connected */
-    if (socket->priv->greeter)
+    if (priv->greeter)
     {
         g_socket_close (new_socket, NULL);
         return G_SOURCE_CONTINUE;
     }
 
-    socket->priv->greeter_socket = g_steal_pointer (&new_socket);
-    g_signal_emit (socket, signals[CREATE_GREETER], 0, &socket->priv->greeter);
-    g_signal_connect (socket->priv->greeter, GREETER_SIGNAL_DISCONNECTED, G_CALLBACK (greeter_disconnected_cb), socket);
-    greeter_set_file_descriptors (socket->priv->greeter, g_socket_get_fd (socket->priv->greeter_socket), g_socket_get_fd (socket->priv->greeter_socket));
+    priv->greeter_socket = g_steal_pointer (&new_socket);
+    g_signal_emit (socket, signals[CREATE_GREETER], 0, &priv->greeter);
+    g_signal_connect (priv->greeter, GREETER_SIGNAL_DISCONNECTED, G_CALLBACK (greeter_disconnected_cb), socket);
+    greeter_set_file_descriptors (priv->greeter, g_socket_get_fd (priv->greeter_socket), g_socket_get_fd (priv->greeter_socket));
 
     return G_SOURCE_CONTINUE;
 }
@@ -90,34 +96,36 @@ greeter_connect_cb (GSocket *s, GIOCondi
 gboolean
 greeter_socket_start (GreeterSocket *socket, GError **error)
 {
+    GreeterSocketPrivate *priv = greeter_socket_get_instance_private (socket);
+
     g_return_val_if_fail (socket != NULL, FALSE);
-    g_return_val_if_fail (socket->priv->socket == NULL, FALSE);  
+    g_return_val_if_fail (priv->socket == NULL, FALSE);
 
-    socket->priv->socket = g_socket_new (G_SOCKET_FAMILY_UNIX, G_SOCKET_TYPE_STREAM, G_SOCKET_PROTOCOL_DEFAULT, error);
-    if (!socket->priv->socket)
+    priv->socket = g_socket_new (G_SOCKET_FAMILY_UNIX, G_SOCKET_TYPE_STREAM, G_SOCKET_PROTOCOL_DEFAULT, error);
+    if (!priv->socket)
         return FALSE;
 
-    unlink (socket->priv->path);  
-    g_autoptr(GSocketAddress) address = g_unix_socket_address_new (socket->priv->path);
-    gboolean result = g_socket_bind (socket->priv->socket, address, FALSE, error);
+    unlink (priv->path);
+    g_autoptr(GSocketAddress) address = g_unix_socket_address_new (priv->path);
+    gboolean result = g_socket_bind (priv->socket, address, FALSE, error);
     if (!result)
         return FALSE;
-    if (!g_socket_listen (socket->priv->socket, error))
+    if (!g_socket_listen (priv->socket, error))
         return FALSE;
 
-    socket->priv->source = g_socket_create_source (socket->priv->socket, G_IO_IN, NULL);
-    g_source_set_callback (socket->priv->source, (GSourceFunc) greeter_connect_cb, socket, NULL);
-    g_source_attach (socket->priv->source, NULL);
+    priv->source = g_socket_create_source (priv->socket, G_IO_IN, NULL);
+    g_source_set_callback (priv->source, (GSourceFunc) greeter_connect_cb, socket, NULL);
+    g_source_attach (priv->source, NULL);
 
     /* Allow to be written to */
-    if (chmod (socket->priv->path, S_IRWXU | S_IRWXG | S_IRWXO) < 0)
+    if (chmod (priv->path, S_IRWXU | S_IRWXG | S_IRWXO) < 0)
     {
         g_set_error (error,
                      G_FILE_ERROR,
                      g_file_error_from_errno (errno),
                      "Failed to set permissions on greeter socket %s: %s",
-                     socket->priv->path,
-                     g_strerror (errno));     
+                     priv->path,
+                     g_strerror (errno));
         return FALSE;
     }
 
@@ -127,21 +135,21 @@ greeter_socket_start (GreeterSocket *soc
 static void
 greeter_socket_init (GreeterSocket *socket)
 {
-    socket->priv = G_TYPE_INSTANCE_GET_PRIVATE (socket, GREETER_SOCKET_TYPE, GreeterSocketPrivate);
 }
 
 static void
 greeter_socket_finalize (GObject *object)
 {
     GreeterSocket *self = GREETER_SOCKET (object);
+    GreeterSocketPrivate *priv = greeter_socket_get_instance_private (self);
 
-    if (self->priv->path)
-        unlink (self->priv->path);
-    g_clear_pointer (&self->priv->path, g_free);
-    g_clear_object (&self->priv->socket);
-    g_clear_object (&self->priv->source);
-    g_clear_object (&self->priv->greeter_socket);
-    g_clear_object (&self->priv->greeter);
+    if (priv->path)
+        unlink (priv->path);
+    g_clear_pointer (&priv->path, g_free);
+    g_clear_object (&priv->socket);
+    g_clear_object (&priv->source);
+    g_clear_object (&priv->greeter_socket);
+    g_clear_object (&priv->greeter);
 
     G_OBJECT_CLASS (greeter_socket_parent_class)->finalize (object);
 }
@@ -162,6 +170,4 @@ greeter_socket_class_init (GreeterSocket
                       NULL,
                       NULL,
                       GREETER_TYPE, 0);
-
-    g_type_class_add_private (klass, sizeof (GreeterSocketPrivate));
 }
diff -pruN 1.26.0-8/src/greeter-socket.h 1.30.0-0ubuntu8/src/greeter-socket.h
--- 1.26.0-8/src/greeter-socket.h	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/src/greeter-socket.h	2018-09-05 01:33:31.000000000 +0000
@@ -25,12 +25,9 @@ G_BEGIN_DECLS
 
 #define GREETER_SOCKET_SIGNAL_CREATE_GREETER "create-greeter"
 
-typedef struct GreeterSocketPrivate GreeterSocketPrivate;
-
 typedef struct
 {
-    GObject               parent_instance;
-    GreeterSocketPrivate *priv;
+    GObject parent_instance;
 } GreeterSocket;
 
 typedef struct
diff -pruN 1.26.0-8/src/greeter.c 1.30.0-0ubuntu8/src/greeter.c
--- 1.26.0-8/src/greeter.c	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/src/greeter.c	2018-09-18 12:15:01.000000000 +0000
@@ -31,7 +31,7 @@ enum {
 };
 static guint signals[LAST_SIGNAL] = { 0 };
 
-struct GreeterPrivate
+typedef struct
 {
     /* PAM service to authenticate with */
     gchar *pam_service;
@@ -81,9 +81,9 @@ struct GreeterPrivate
     GIOChannel *to_greeter_channel;
     GIOChannel *from_greeter_channel;
     guint from_greeter_watch;
-};
+} GreeterPrivate;
 
-G_DEFINE_TYPE (Greeter, greeter, G_TYPE_OBJECT)
+G_DEFINE_TYPE_WITH_PRIVATE (Greeter, greeter, G_TYPE_OBJECT)
 
 #define API_VERSION 1
 
@@ -125,71 +125,80 @@ greeter_new (void)
 void
 greeter_set_file_descriptors (Greeter *greeter, int to_greeter_fd, int from_greeter_fd)
 {
+    GreeterPrivate *priv = greeter_get_instance_private (greeter);
+
     g_return_if_fail (greeter != NULL);
-    g_return_if_fail (greeter->priv->to_greeter_input < 0);
-    g_return_if_fail (greeter->priv->from_greeter_output < 0);
+    g_return_if_fail (priv->to_greeter_input < 0);
+    g_return_if_fail (priv->from_greeter_output < 0);
 
-    greeter->priv->to_greeter_input = to_greeter_fd;
-    greeter->priv->to_greeter_channel = g_io_channel_unix_new (greeter->priv->to_greeter_input);
+    priv->to_greeter_input = to_greeter_fd;
+    priv->to_greeter_channel = g_io_channel_unix_new (priv->to_greeter_input);
     g_autoptr(GError) to_error = NULL;
-    g_io_channel_set_encoding (greeter->priv->to_greeter_channel, NULL, &to_error);
+    g_io_channel_set_encoding (priv->to_greeter_channel, NULL, &to_error);
     if (to_error)
         g_warning ("Failed to set encoding on to greeter channel to binary: %s\n", to_error->message);
 
-    greeter->priv->from_greeter_output = from_greeter_fd;
-    greeter->priv->from_greeter_channel = g_io_channel_unix_new (greeter->priv->from_greeter_output);
+    priv->from_greeter_output = from_greeter_fd;
+    priv->from_greeter_channel = g_io_channel_unix_new (priv->from_greeter_output);
     g_autoptr(GError) from_error = NULL;
-    g_io_channel_set_encoding (greeter->priv->from_greeter_channel, NULL, &from_error);
+    g_io_channel_set_encoding (priv->from_greeter_channel, NULL, &from_error);
     if (from_error)
         g_warning ("Failed to set encoding on from greeter channel to binary: %s\n", from_error->message);
-    g_io_channel_set_buffered (greeter->priv->from_greeter_channel, FALSE);
+    g_io_channel_set_buffered (priv->from_greeter_channel, FALSE);
 
-    greeter->priv->from_greeter_watch = g_io_add_watch (greeter->priv->from_greeter_channel, G_IO_IN | G_IO_HUP, read_cb, greeter);
+    priv->from_greeter_watch = g_io_add_watch (priv->from_greeter_channel, G_IO_IN | G_IO_HUP, read_cb, greeter);
 }
 
 void
 greeter_stop (Greeter *greeter)
 {
+    GreeterPrivate *priv = greeter_get_instance_private (greeter);
+
     /* Stop any events occurring after we've stopped */
-    if (greeter->priv->authentication_session)
-        g_signal_handlers_disconnect_matched (greeter->priv->authentication_session, G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, greeter);
+    if (priv->authentication_session)
+        g_signal_handlers_disconnect_matched (priv->authentication_session, G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, greeter);
 }
 
 void
 greeter_set_pam_services (Greeter *greeter, const gchar *pam_service, const gchar *autologin_pam_service)
 {
+    GreeterPrivate *priv = greeter_get_instance_private (greeter);
     g_return_if_fail (greeter != NULL);
-    g_free (greeter->priv->pam_service);
-    greeter->priv->pam_service = g_strdup (pam_service);
-    g_free (greeter->priv->autologin_pam_service);
-    greeter->priv->autologin_pam_service = g_strdup (autologin_pam_service);
+    g_free (priv->pam_service);
+    priv->pam_service = g_strdup (pam_service);
+    g_free (priv->autologin_pam_service);
+    priv->autologin_pam_service = g_strdup (autologin_pam_service);
 }
 
 void
 greeter_set_allow_guest (Greeter *greeter, gboolean allow_guest)
 {
+    GreeterPrivate *priv = greeter_get_instance_private (greeter);
     g_return_if_fail (greeter != NULL);
-    greeter->priv->allow_guest = allow_guest;
+    priv->allow_guest = allow_guest;
 }
 
 void
 greeter_clear_hints (Greeter *greeter)
 {
+    GreeterPrivate *priv = greeter_get_instance_private (greeter);
     g_return_if_fail (greeter != NULL);
-    g_hash_table_remove_all (greeter->priv->hints);
+    g_hash_table_remove_all (priv->hints);
 }
 
 void
 greeter_set_hint (Greeter *greeter, const gchar *name, const gchar *value)
 {
+    GreeterPrivate *priv = greeter_get_instance_private (greeter);
     g_return_if_fail (greeter != NULL);
-    g_hash_table_insert (greeter->priv->hints, g_strdup (name), g_strdup (value));
+    g_hash_table_insert (priv->hints, g_strdup (name), g_strdup (value));
 }
 
 static void *
 secure_malloc (Greeter *greeter, size_t n)
 {
-    if (greeter->priv->use_secure_memory)
+    GreeterPrivate *priv = greeter_get_instance_private (greeter);
+    if (priv->use_secure_memory)
         return gcry_malloc_secure (n);
     else
         return g_malloc (n);
@@ -198,7 +207,8 @@ secure_malloc (Greeter *greeter, size_t
 static void *
 secure_realloc (Greeter *greeter, void *ptr, size_t n)
 {
-    if (greeter->priv->use_secure_memory)
+    GreeterPrivate *priv = greeter_get_instance_private (greeter);
+    if (priv->use_secure_memory)
         return gcry_realloc (ptr, n);
     else
         return g_realloc (ptr, n);
@@ -207,7 +217,8 @@ secure_realloc (Greeter *greeter, void *
 static void
 secure_free (Greeter *greeter, void *ptr)
 {
-    if (greeter->priv->use_secure_memory)
+    GreeterPrivate *priv = greeter_get_instance_private (greeter);
+    if (priv->use_secure_memory)
         return gcry_free (ptr);
     else
         return g_free (ptr);
@@ -233,6 +244,8 @@ int_length (void)
 static void
 write_message (Greeter *greeter, guint8 *message, gsize message_length)
 {
+    GreeterPrivate *priv = greeter_get_instance_private (greeter);
+
     gchar *data = (gchar *) message;
     gsize data_length = message_length;
     while (data_length > 0)
@@ -241,7 +254,7 @@ write_message (Greeter *greeter, guint8
         gsize n_written;
 
         g_autoptr(GError) error = NULL;
-        status = g_io_channel_write_chars (greeter->priv->to_greeter_channel, data, data_length, &n_written, &error);
+        status = g_io_channel_write_chars (priv->to_greeter_channel, data, data_length, &n_written, &error);
         if (error)
             g_warning ("Error writing to greeter: %s", error->message);
         if (status != G_IO_STATUS_NORMAL)
@@ -251,7 +264,7 @@ write_message (Greeter *greeter, guint8
     }
 
     g_autoptr(GError) error = NULL;
-    g_io_channel_flush (greeter->priv->to_greeter_channel, &error);
+    g_io_channel_flush (priv->to_greeter_channel, &error);
     if (error)
         g_warning ("Failed to flush data to greeter: %s", error->message);
 }
@@ -305,14 +318,16 @@ string_length (const gchar *value)
 static void
 handle_connect (Greeter *greeter, const gchar *version, gboolean resettable, guint32 api_version)
 {
+    GreeterPrivate *priv = greeter_get_instance_private (greeter);
+
     g_debug ("Greeter connected version=%s api=%u resettable=%s", version, api_version, resettable ? "true" : "false");
 
-    greeter->priv->api_version = api_version;
-    greeter->priv->resettable = resettable;
+    priv->api_version = api_version;
+    priv->resettable = resettable;
 
     guint32 env_length = 0;
     GHashTableIter iter;
-    g_hash_table_iter_init (&iter, greeter->priv->hints);
+    g_hash_table_iter_init (&iter, priv->hints);
     gpointer key, value;
     while (g_hash_table_iter_next (&iter, &key, &value))
         env_length += string_length (key) + string_length (value);
@@ -323,7 +338,7 @@ handle_connect (Greeter *greeter, const
     {
         write_header (message, MAX_MESSAGE_LENGTH, SERVER_MESSAGE_CONNECTED, string_length (VERSION) + env_length, &offset);
         write_string (message, MAX_MESSAGE_LENGTH, VERSION, &offset);
-        g_hash_table_iter_init (&iter, greeter->priv->hints);
+        g_hash_table_iter_init (&iter, priv->hints);
         while (g_hash_table_iter_next (&iter, &key, &value))
         {
             write_string (message, MAX_MESSAGE_LENGTH, key, &offset);
@@ -335,8 +350,8 @@ handle_connect (Greeter *greeter, const
         write_header (message, MAX_MESSAGE_LENGTH, SERVER_MESSAGE_CONNECTED_V2, string_length (VERSION) + int_length () * 2 + env_length, &offset);
         write_int (message, MAX_MESSAGE_LENGTH, api_version <= API_VERSION ? api_version : API_VERSION, &offset);
         write_string (message, MAX_MESSAGE_LENGTH, VERSION, &offset);
-        write_int (message, MAX_MESSAGE_LENGTH, g_hash_table_size (greeter->priv->hints), &offset);
-        g_hash_table_iter_init (&iter, greeter->priv->hints);
+        write_int (message, MAX_MESSAGE_LENGTH, g_hash_table_size (priv->hints), &offset);
+        g_hash_table_iter_init (&iter, priv->hints);
         while (g_hash_table_iter_next (&iter, &key, &value))
         {
             write_string (message, MAX_MESSAGE_LENGTH, key, &offset);
@@ -351,6 +366,8 @@ handle_connect (Greeter *greeter, const
 static void
 pam_messages_cb (Session *session, Greeter *greeter)
 {
+    GreeterPrivate *priv = greeter_get_instance_private (greeter);
+
     const struct pam_message *messages = session_get_messages (session);
     int messages_length = session_get_messages_length (session);
 
@@ -363,7 +380,7 @@ pam_messages_cb (Session *session, Greet
     guint8 message[MAX_MESSAGE_LENGTH];
     gsize offset = 0;
     write_header (message, MAX_MESSAGE_LENGTH, SERVER_MESSAGE_PROMPT_AUTHENTICATION, size, &offset);
-    write_int (message, MAX_MESSAGE_LENGTH, greeter->priv->authentication_sequence_number, &offset);
+    write_int (message, MAX_MESSAGE_LENGTH, priv->authentication_sequence_number, &offset);
     write_string (message, MAX_MESSAGE_LENGTH, session_get_username (session), &offset);
     write_int (message, MAX_MESSAGE_LENGTH, messages_length, &offset);
     int n_prompts = 0;
@@ -383,7 +400,7 @@ pam_messages_cb (Session *session, Greet
     {
         struct pam_response *response;
         response = calloc (messages_length, sizeof (struct pam_response));
-        session_respond (greeter->priv->authentication_session, response);
+        session_respond (priv->authentication_session, response);
         free (response);
     }
 }
@@ -412,10 +429,12 @@ greeter_idle (Greeter *greeter)
 void
 greeter_reset (Greeter *greeter)
 {
+    GreeterPrivate *priv = greeter_get_instance_private (greeter);
+
     g_return_if_fail (greeter != NULL);
 
     GHashTableIter iter;
-    g_hash_table_iter_init (&iter, greeter->priv->hints);
+    g_hash_table_iter_init (&iter, priv->hints);
     gpointer key, value;
     guint32 length = 0;
     while (g_hash_table_iter_next (&iter, &key, &value))
@@ -424,7 +443,7 @@ greeter_reset (Greeter *greeter)
     guint8 message[MAX_MESSAGE_LENGTH];
     gsize offset = 0;
     write_header (message, MAX_MESSAGE_LENGTH, SERVER_MESSAGE_RESET, length, &offset);
-    g_hash_table_iter_init (&iter, greeter->priv->hints);
+    g_hash_table_iter_init (&iter, priv->hints);
     while (g_hash_table_iter_next (&iter, &key, &value))
     {
         write_string (message, MAX_MESSAGE_LENGTH, key, &offset);
@@ -436,6 +455,8 @@ greeter_reset (Greeter *greeter)
 static void
 authentication_complete_cb (Session *session, Greeter *greeter)
 {
+    GreeterPrivate *priv = greeter_get_instance_private (greeter);
+
     g_debug ("Authenticate result for user %s: %s", session_get_username (session), session_get_authentication_result_string (session));
 
     int result = session_get_authentication_result (session);
@@ -450,27 +471,31 @@ authentication_complete_cb (Session *ses
         }
     }
 
-    send_end_authentication (greeter, greeter->priv->authentication_sequence_number, session_get_username (session), result);
+    send_end_authentication (greeter, priv->authentication_sequence_number, session_get_username (session), result);
 }
 
 static void
 reset_session (Greeter *greeter)
 {
-    g_free (greeter->priv->remote_session);
-    greeter->priv->remote_session = NULL;
-    if (greeter->priv->authentication_session)
+    GreeterPrivate *priv = greeter_get_instance_private (greeter);
+
+    g_free (priv->remote_session);
+    priv->remote_session = NULL;
+    if (priv->authentication_session)
     {
-        g_signal_handlers_disconnect_matched (greeter->priv->authentication_session, G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, greeter);
-        session_stop (greeter->priv->authentication_session);
-        g_clear_object (&greeter->priv->authentication_session);
+        g_signal_handlers_disconnect_matched (priv->authentication_session, G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, greeter);
+        session_stop (priv->authentication_session);
+        g_clear_object (&priv->authentication_session);
     }
 
-    greeter->priv->guest_account_authenticated = FALSE;
+    priv->guest_account_authenticated = FALSE;
 }
 
 static void
 handle_authenticate (Greeter *greeter, guint32 sequence_number, const gchar *username)
 {
+    GreeterPrivate *priv = greeter_get_instance_private (greeter);
+
     if (username[0] == '\0')
     {
         g_debug ("Greeter start authentication");
@@ -481,60 +506,62 @@ handle_authenticate (Greeter *greeter, g
 
     reset_session (greeter);
 
-    if (greeter->priv->active_username)
-        g_free (greeter->priv->active_username);
-    greeter->priv->active_username = g_strdup (username);
+    if (priv->active_username)
+        g_free (priv->active_username);
+    priv->active_username = g_strdup (username);
     g_object_notify (G_OBJECT (greeter), GREETER_PROPERTY_ACTIVE_USERNAME);
 
-    greeter->priv->authentication_sequence_number = sequence_number;
-    g_signal_emit (greeter, signals[CREATE_SESSION], 0, &greeter->priv->authentication_session);
-    if (!greeter->priv->authentication_session)
+    priv->authentication_sequence_number = sequence_number;
+    g_signal_emit (greeter, signals[CREATE_SESSION], 0, &priv->authentication_session);
+    if (!priv->authentication_session)
     {
         send_end_authentication (greeter, sequence_number, "", PAM_USER_UNKNOWN);
         return;
     }
 
-    g_signal_connect (G_OBJECT (greeter->priv->authentication_session), SESSION_SIGNAL_GOT_MESSAGES, G_CALLBACK (pam_messages_cb), greeter);
-    g_signal_connect (G_OBJECT (greeter->priv->authentication_session), SESSION_SIGNAL_AUTHENTICATION_COMPLETE, G_CALLBACK (authentication_complete_cb), greeter);
+    g_signal_connect (G_OBJECT (priv->authentication_session), SESSION_SIGNAL_GOT_MESSAGES, G_CALLBACK (pam_messages_cb), greeter);
+    g_signal_connect (G_OBJECT (priv->authentication_session), SESSION_SIGNAL_AUTHENTICATION_COMPLETE, G_CALLBACK (authentication_complete_cb), greeter);
 
     /* Use non-interactive service for autologin user */
-    const gchar *autologin_username = g_hash_table_lookup (greeter->priv->hints, "autologin-user");
+    const gchar *autologin_username = g_hash_table_lookup (priv->hints, "autologin-user");
     const gchar *service;
     gboolean is_interactive;
     if (autologin_username != NULL && g_strcmp0 (username, autologin_username) == 0)
     {
-        service = greeter->priv->autologin_pam_service;
+        service = priv->autologin_pam_service;
         is_interactive = FALSE;
     }
     else
     {
-        service = greeter->priv->pam_service;
+        service = priv->pam_service;
         is_interactive = TRUE;
     }
 
     /* Run the session process */
-    session_set_pam_service (greeter->priv->authentication_session, service);
-    session_set_username (greeter->priv->authentication_session, username);
-    session_set_do_authenticate (greeter->priv->authentication_session, TRUE);
-    session_set_is_interactive (greeter->priv->authentication_session, is_interactive);
-    session_start (greeter->priv->authentication_session);
+    session_set_pam_service (priv->authentication_session, service);
+    session_set_username (priv->authentication_session, username);
+    session_set_do_authenticate (priv->authentication_session, TRUE);
+    session_set_is_interactive (priv->authentication_session, is_interactive);
+    session_start (priv->authentication_session);
 }
 
 static void
 handle_authenticate_as_guest (Greeter *greeter, guint32 sequence_number)
 {
+    GreeterPrivate *priv = greeter_get_instance_private (greeter);
+
     g_debug ("Greeter start authentication for guest account");
 
     reset_session (greeter);
 
-    if (!greeter->priv->allow_guest)
+    if (!priv->allow_guest)
     {
         g_debug ("Guest account is disabled");
         send_end_authentication (greeter, sequence_number, "", PAM_USER_UNKNOWN);
         return;
     }
 
-    greeter->priv->guest_account_authenticated = TRUE;
+    priv->guest_account_authenticated = TRUE;
     send_end_authentication (greeter, sequence_number, "", PAM_SUCCESS);
 }
 
@@ -566,6 +593,8 @@ get_remote_session_service (const gchar
 static void
 handle_authenticate_remote (Greeter *greeter, const gchar *session_name, const gchar *username, guint32 sequence_number)
 {
+    GreeterPrivate *priv = greeter_get_instance_private (greeter);
+
     if (username[0] == '\0')
     {
         g_debug ("Greeter start authentication for remote session %s", session_name);
@@ -583,24 +612,24 @@ handle_authenticate_remote (Greeter *gre
         return;
     }
 
-    greeter->priv->authentication_sequence_number = sequence_number;
-    greeter->priv->remote_session = g_strdup (session_name);
-    g_signal_emit (greeter, signals[CREATE_SESSION], 0, &greeter->priv->authentication_session);
-    if (greeter->priv->authentication_session)
+    priv->authentication_sequence_number = sequence_number;
+    priv->remote_session = g_strdup (session_name);
+    g_signal_emit (greeter, signals[CREATE_SESSION], 0, &priv->authentication_session);
+    if (priv->authentication_session)
     {
-        g_signal_connect (G_OBJECT (greeter->priv->authentication_session), SESSION_SIGNAL_GOT_MESSAGES, G_CALLBACK (pam_messages_cb), greeter);
-        g_signal_connect (G_OBJECT (greeter->priv->authentication_session), SESSION_SIGNAL_AUTHENTICATION_COMPLETE, G_CALLBACK (authentication_complete_cb), greeter);
+        g_signal_connect (G_OBJECT (priv->authentication_session), SESSION_SIGNAL_GOT_MESSAGES, G_CALLBACK (pam_messages_cb), greeter);
+        g_signal_connect (G_OBJECT (priv->authentication_session), SESSION_SIGNAL_AUTHENTICATION_COMPLETE, G_CALLBACK (authentication_complete_cb), greeter);
 
         /* Run the session process */
-        session_set_pam_service (greeter->priv->authentication_session, service);
-        session_set_username (greeter->priv->authentication_session, username);
-        session_set_do_authenticate (greeter->priv->authentication_session, TRUE);
-        session_set_is_interactive (greeter->priv->authentication_session, TRUE);
-        session_set_is_guest (greeter->priv->authentication_session, TRUE);
-        session_start (greeter->priv->authentication_session);
+        session_set_pam_service (priv->authentication_session, service);
+        session_set_username (priv->authentication_session, username);
+        session_set_do_authenticate (priv->authentication_session, TRUE);
+        session_set_is_interactive (priv->authentication_session, TRUE);
+        session_set_is_guest (priv->authentication_session, TRUE);
+        session_start (priv->authentication_session);
     }
 
-    if (!greeter->priv->authentication_session)
+    if (!priv->authentication_session)
     {
         send_end_authentication (greeter, sequence_number, "", PAM_USER_UNKNOWN);
         return;
@@ -610,12 +639,14 @@ handle_authenticate_remote (Greeter *gre
 static void
 handle_continue_authentication (Greeter *greeter, gchar **secrets)
 {
+    GreeterPrivate *priv = greeter_get_instance_private (greeter);
+
     /* Not in authentication */
-    if (greeter->priv->authentication_session == NULL)
+    if (priv->authentication_session == NULL)
         return;
 
-    int messages_length = session_get_messages_length (greeter->priv->authentication_session);
-    const struct pam_message *messages = session_get_messages (greeter->priv->authentication_session);
+    int messages_length = session_get_messages_length (priv->authentication_session);
+    const struct pam_message *messages = session_get_messages (priv->authentication_session);
 
     /* Check correct number of responses */
     int n_prompts = 0;
@@ -627,7 +658,7 @@ handle_continue_authentication (Greeter
     }
     if (g_strv_length (secrets) != n_prompts)
     {
-        session_respond_error (greeter->priv->authentication_session, PAM_CONV_ERR);
+        session_respond_error (priv->authentication_session, PAM_CONV_ERR);
         return;
     }
 
@@ -647,7 +678,7 @@ handle_continue_authentication (Greeter
         }
     }
 
-    session_respond (greeter->priv->authentication_session, response);
+    session_respond (priv->authentication_session, response);
 
     for (int i = 0; i < messages_length; i++)
         secure_free (greeter, response[i].resp);
@@ -657,8 +688,10 @@ handle_continue_authentication (Greeter
 static void
 handle_cancel_authentication (Greeter *greeter)
 {
+    GreeterPrivate *priv = greeter_get_instance_private (greeter);
+
     /* Not in authentication */
-    if (greeter->priv->authentication_session == NULL)
+    if (priv->authentication_session == NULL)
         return;
 
     g_debug ("Cancel authentication");
@@ -668,25 +701,27 @@ handle_cancel_authentication (Greeter *g
 static void
 handle_start_session (Greeter *greeter, const gchar *session)
 {
+    GreeterPrivate *priv = greeter_get_instance_private (greeter);
+
     if (strcmp (session, "") == 0)
         session = NULL;
 
     /* Use session type chosen in remote session */
     SessionType session_type = SESSION_TYPE_LOCAL;
-    if (greeter->priv->remote_session)
+    if (priv->remote_session)
     {
         session_type = SESSION_TYPE_REMOTE;
-        session = greeter->priv->remote_session;
+        session = priv->remote_session;
     }
 
     gboolean result;
-    if (greeter->priv->guest_account_authenticated || session_get_is_authenticated (greeter->priv->authentication_session))
+    if (priv->guest_account_authenticated || session_get_is_authenticated (priv->authentication_session))
     {
         if (session)
             g_debug ("Greeter requests session %s", session);
         else
             g_debug ("Greeter requests default session");
-        greeter->priv->start_session = TRUE;
+        priv->start_session = TRUE;
         g_signal_emit (greeter, signals[START_SESSION], 0, session_type, session, &result);
     }
     else
@@ -705,21 +740,23 @@ handle_start_session (Greeter *greeter,
 static void
 handle_set_language (Greeter *greeter, const gchar *language)
 {
-    if (!greeter->priv->guest_account_authenticated && !session_get_is_authenticated (greeter->priv->authentication_session))
+    GreeterPrivate *priv = greeter_get_instance_private (greeter);
+
+    if (!priv->guest_account_authenticated && !session_get_is_authenticated (priv->authentication_session))
     {
         g_debug ("Ignoring set language request, user is not authorized");
         return;
     }
 
     // FIXME: Could use this
-    if (greeter->priv->guest_account_authenticated)
+    if (priv->guest_account_authenticated)
     {
         g_debug ("Ignoring set language request for guest user");
         return;
     }
 
     g_debug ("Greeter sets language %s", language);
-    User *user = session_get_user (greeter->priv->authentication_session);
+    User *user = session_get_user (priv->authentication_session);
     user_set_language (user, language);
 }
 
@@ -740,12 +777,14 @@ handle_ensure_shared_dir (Greeter *greet
 static guint32
 read_int (Greeter *greeter, gsize *offset)
 {
-    if (greeter->priv->n_read - *offset < sizeof (guint32))
+    GreeterPrivate *priv = greeter_get_instance_private (greeter);
+
+    if (priv->n_read - *offset < sizeof (guint32))
     {
-        g_warning ("Not enough space for int, need %zu, got %zu", sizeof (guint32), greeter->priv->n_read - *offset);
+        g_warning ("Not enough space for int, need %zu, got %zu", sizeof (guint32), priv->n_read - *offset);
         return 0;
     }
-    guint8 *buffer = greeter->priv->read_buffer + *offset;
+    guint8 *buffer = priv->read_buffer + *offset;
     guint32 value = buffer[0] << 24 | buffer[1] << 16 | buffer[2] << 8 | buffer[3];
     *offset += int_length ();
     return value;
@@ -772,15 +811,17 @@ get_message_length (Greeter *greeter)
 static gchar *
 read_string_full (Greeter *greeter, gsize *offset, void* (*alloc_fn)(size_t n))
 {
+    GreeterPrivate *priv = greeter_get_instance_private (greeter);
+
     guint32 length = read_int (greeter, offset);
-    if (greeter->priv->n_read - *offset < length)
+    if (priv->n_read - *offset < length)
     {
-        g_warning ("Not enough space for string, need %u, got %zu", length, greeter->priv->n_read - *offset);
+        g_warning ("Not enough space for string, need %u, got %zu", length, priv->n_read - *offset);
         return g_strdup ("");
     }
 
     gchar *value = (*alloc_fn) (sizeof (gchar) * (length + 1));
-    memcpy (value, greeter->priv->read_buffer + *offset, length);
+    memcpy (value, priv->read_buffer + *offset, length);
     value[length] = '\0';
     *offset += length;
 
@@ -796,7 +837,8 @@ read_string (Greeter *greeter, gsize *of
 static gchar *
 read_secret (Greeter *greeter, gsize *offset)
 {
-    if (greeter->priv->use_secure_memory)
+    GreeterPrivate *priv = greeter_get_instance_private (greeter);
+    if (priv->use_secure_memory)
         return read_string_full (greeter, offset, gcry_malloc_secure);
     else
         return read_string_full (greeter, offset, g_malloc);
@@ -806,31 +848,32 @@ static gboolean
 read_cb (GIOChannel *source, GIOCondition condition, gpointer data)
 {
     Greeter *greeter = data;
+    GreeterPrivate *priv = greeter_get_instance_private (greeter);
 
     if (condition == G_IO_HUP)
     {
         g_debug ("Greeter closed communication channel");
-        greeter->priv->from_greeter_watch = 0;
+        priv->from_greeter_watch = 0;
         g_signal_emit (greeter, signals[DISCONNECTED], 0);
         return FALSE;
     }
 
     gsize n_to_read = HEADER_SIZE;
-    if (greeter->priv->n_read >= HEADER_SIZE)
+    if (priv->n_read >= HEADER_SIZE)
     {
         n_to_read = get_message_length (greeter);
         if (n_to_read <= HEADER_SIZE)
         {
-            greeter->priv->from_greeter_watch = 0;
+            priv->from_greeter_watch = 0;
             return FALSE;
         }
     }
 
     gsize n_read;
     g_autoptr(GError) error = NULL;
-    GIOStatus status = g_io_channel_read_chars (greeter->priv->from_greeter_channel,
-                                                (gchar *) greeter->priv->read_buffer + greeter->priv->n_read,
-                                                n_to_read - greeter->priv->n_read,
+    GIOStatus status = g_io_channel_read_chars (priv->from_greeter_channel,
+                                                (gchar *) priv->read_buffer + priv->n_read,
+                                                n_to_read - priv->n_read,
                                                 &n_read,
                                                 &error);
     if (error)
@@ -838,24 +881,24 @@ read_cb (GIOChannel *source, GIOConditio
     if (status == G_IO_STATUS_EOF)
     {
         g_debug ("Greeter closed communication channel");
-        greeter->priv->from_greeter_watch = 0;
+        priv->from_greeter_watch = 0;
         g_signal_emit (greeter, signals[DISCONNECTED], 0);
         return FALSE;
     }
     else if (status != G_IO_STATUS_NORMAL)
         return TRUE;
 
-    greeter->priv->n_read += n_read;
-    if (greeter->priv->n_read != n_to_read)
+    priv->n_read += n_read;
+    if (priv->n_read != n_to_read)
         return TRUE;
 
     /* If have header, rerun for content */
-    if (greeter->priv->n_read == HEADER_SIZE)
+    if (priv->n_read == HEADER_SIZE)
     {
         n_to_read = get_message_length (greeter);
         if (n_to_read > HEADER_SIZE)
         {
-            greeter->priv->read_buffer = secure_realloc (greeter, greeter->priv->read_buffer, n_to_read);
+            priv->read_buffer = secure_realloc (greeter, priv->read_buffer, n_to_read);
             read_cb (source, condition, greeter);
             return TRUE;
         }
@@ -906,7 +949,7 @@ read_cb (GIOChannel *source, GIOConditio
             if (n_secrets > max_secrets)
             {
                 g_warning ("Array length of %u elements too long", n_secrets);
-                greeter->priv->from_greeter_watch = 0;
+                priv->from_greeter_watch = 0;
                 return FALSE;
             }
             gchar **secrets = g_malloc (sizeof (gchar *) * (n_secrets + 1));
@@ -944,7 +987,7 @@ read_cb (GIOChannel *source, GIOConditio
         break;
     }
 
-    greeter->priv->n_read = 0;
+    priv->n_read = 0;
 
     return TRUE;
 }
@@ -952,19 +995,22 @@ read_cb (GIOChannel *source, GIOConditio
 gboolean
 greeter_get_guest_authenticated (Greeter *greeter)
 {
+    GreeterPrivate *priv = greeter_get_instance_private (greeter);
     g_return_val_if_fail (greeter != NULL, FALSE);
-    return greeter->priv->guest_account_authenticated;
+    return priv->guest_account_authenticated;
 }
 
 Session *
 greeter_take_authentication_session (Greeter *greeter)
 {
+    GreeterPrivate *priv = greeter_get_instance_private (greeter);
+
     g_return_val_if_fail (greeter != NULL, NULL);
 
-    Session *session = greeter->priv->authentication_session;
-    if (greeter->priv->authentication_session)
-        g_signal_handlers_disconnect_matched (greeter->priv->authentication_session, G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, greeter);
-    greeter->priv->authentication_session = NULL;
+    Session *session = priv->authentication_session;
+    if (priv->authentication_session)
+        g_signal_handlers_disconnect_matched (priv->authentication_session, G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, greeter);
+    priv->authentication_session = NULL;
 
     return session;
 }
@@ -972,22 +1018,25 @@ greeter_take_authentication_session (Gre
 gboolean
 greeter_get_resettable (Greeter *greeter)
 {
+    GreeterPrivate *priv = greeter_get_instance_private (greeter);
     g_return_val_if_fail (greeter != NULL, FALSE);
-    return greeter->priv->resettable;
+    return priv->resettable;
 }
 
 gboolean
 greeter_get_start_session (Greeter *greeter)
 {
+    GreeterPrivate *priv = greeter_get_instance_private (greeter);
     g_return_val_if_fail (greeter != NULL, FALSE);
-    return greeter->priv->start_session;
+    return priv->start_session;
 }
 
 const gchar *
 greeter_get_active_username (Greeter *greeter)
 {
+    GreeterPrivate *priv = greeter_get_instance_private (greeter);
     g_return_val_if_fail (greeter != NULL, NULL);
-    return greeter->priv->active_username;
+    return priv->active_username;
 }
 
 static Session *
@@ -1005,38 +1054,40 @@ greeter_real_start_session (Greeter *gre
 static void
 greeter_init (Greeter *greeter)
 {
-    greeter->priv = G_TYPE_INSTANCE_GET_PRIVATE (greeter, GREETER_TYPE, GreeterPrivate);
-    greeter->priv->read_buffer = secure_malloc (greeter, HEADER_SIZE);
-    greeter->priv->hints = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, g_free);
-    greeter->priv->use_secure_memory = config_get_boolean (config_get_instance (), "LightDM", "lock-memory");
-    greeter->priv->to_greeter_input = -1;
-    greeter->priv->from_greeter_output = -1;
+    GreeterPrivate *priv = greeter_get_instance_private (greeter);
+
+    priv->read_buffer = secure_malloc (greeter, HEADER_SIZE);
+    priv->hints = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, g_free);
+    priv->use_secure_memory = config_get_boolean (config_get_instance (), "LightDM", "lock-memory");
+    priv->to_greeter_input = -1;
+    priv->from_greeter_output = -1;
 }
 
 static void
 greeter_finalize (GObject *object)
 {
     Greeter *self = GREETER (object);
+    GreeterPrivate *priv = greeter_get_instance_private (self);
 
-    g_clear_pointer (&self->priv->pam_service, g_free);
-    g_clear_pointer (&self->priv->autologin_pam_service, g_free);
-    secure_free (self, self->priv->read_buffer);
-    g_hash_table_unref (self->priv->hints);
-    g_clear_pointer (&self->priv->remote_session, g_free);
-    g_clear_pointer (&self->priv->active_username, g_free);
-    if (self->priv->authentication_session)
-    {
-        g_signal_handlers_disconnect_matched (self->priv->authentication_session, G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, self);
-        g_object_unref (self->priv->authentication_session);
-    }
-    close (self->priv->to_greeter_input);
-    close (self->priv->from_greeter_output);
-    if (self->priv->to_greeter_channel)
-        g_io_channel_unref (self->priv->to_greeter_channel);
-    if (self->priv->from_greeter_channel)
-        g_io_channel_unref (self->priv->from_greeter_channel);
-    if (self->priv->from_greeter_watch)
-        g_source_remove (self->priv->from_greeter_watch);
+    g_clear_pointer (&priv->pam_service, g_free);
+    g_clear_pointer (&priv->autologin_pam_service, g_free);
+    secure_free (self, priv->read_buffer);
+    g_hash_table_unref (priv->hints);
+    g_clear_pointer (&priv->remote_session, g_free);
+    g_clear_pointer (&priv->active_username, g_free);
+    if (priv->authentication_session)
+    {
+        g_signal_handlers_disconnect_matched (priv->authentication_session, G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, self);
+        g_object_unref (priv->authentication_session);
+    }
+    close (priv->to_greeter_input);
+    close (priv->from_greeter_output);
+    if (priv->to_greeter_channel)
+        g_io_channel_unref (priv->to_greeter_channel);
+    if (priv->from_greeter_channel)
+        g_io_channel_unref (priv->from_greeter_channel);
+    if (priv->from_greeter_watch)
+        g_source_remove (priv->from_greeter_watch);
 
     G_OBJECT_CLASS (greeter_parent_class)->finalize (object);
 }
@@ -1124,6 +1175,4 @@ greeter_class_init (GreeterClass *klass)
                                                           "Active username",
                                                           NULL,
                                                           G_PARAM_READABLE));
-
-    g_type_class_add_private (klass, sizeof (GreeterPrivate));
 }
diff -pruN 1.26.0-8/src/greeter.h 1.30.0-0ubuntu8/src/greeter.h
--- 1.26.0-8/src/greeter.h	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/src/greeter.h	2018-09-05 01:33:31.000000000 +0000
@@ -32,12 +32,9 @@ G_BEGIN_DECLS
 
 #define GREETER_SIGNAL_ACTIVE_USERNAME_CHANGED "notify::" GREETER_PROPERTY_ACTIVE_USERNAME
 
-typedef struct GreeterPrivate GreeterPrivate;
-
 struct Greeter
 {
-    GObject         parent_instance;
-    GreeterPrivate *priv;
+    GObject parent_instance;
 };
 
 typedef struct
diff -pruN 1.26.0-8/src/lightdm.c 1.30.0-0ubuntu8/src/lightdm.c
--- 1.26.0-8/src/lightdm.c	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/src/lightdm.c	2018-09-05 01:33:31.000000000 +0000
@@ -772,8 +772,6 @@ main (int argc, char **argv)
         config_set_string (config_get_instance (), "Seat:*", "xmir-command", "Xmir");
     if (!config_has_key (config_get_instance (), "Seat:*", "xserver-share"))
         config_set_boolean (config_get_instance (), "Seat:*", "xserver-share", TRUE);
-    if (!config_has_key (config_get_instance (), "Seat:*", "unity-compositor-command"))
-        config_set_string (config_get_instance (), "Seat:*", "unity-compositor-command", "unity-system-compositor");
     if (!config_has_key (config_get_instance (), "Seat:*", "start-session"))
         config_set_boolean (config_get_instance (), "Seat:*", "start-session", TRUE);
     if (!config_has_key (config_get_instance (), "Seat:*", "allow-user-switching"))
diff -pruN 1.26.0-8/src/login1.c 1.30.0-0ubuntu8/src/login1.c
--- 1.26.0-8/src/login1.c	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/src/login1.c	2018-09-05 01:33:31.000000000 +0000
@@ -26,7 +26,7 @@ enum {
 };
 static guint service_signals[LAST_SERVICE_SIGNAL] = { 0 };
 
-struct Login1ServicePrivate
+typedef struct
 {
     /* Connection to bus service is running on */
     GDBusConnection *connection;
@@ -39,7 +39,7 @@ struct Login1ServicePrivate
 
     /* Handle to signal subscription */
     guint signal_id;
-};
+} Login1ServicePrivate;
 
 enum {
     CAN_GRAPHICAL_CHANGED,
@@ -48,7 +48,7 @@ enum {
 };
 static guint seat_signals[LAST_SEAT_SIGNAL] = { 0 };
 
-struct Login1SeatPrivate
+typedef struct
 {
     /* Connection to bus seat is running on */
     GDBusConnection *connection;
@@ -67,10 +67,10 @@ struct Login1SeatPrivate
 
     /* TRUE if can do session switching */
     gboolean can_multi_session;
-};
+} Login1SeatPrivate;
 
-G_DEFINE_TYPE (Login1Service, login1_service, G_TYPE_OBJECT)
-G_DEFINE_TYPE (Login1Seat, login1_seat, G_TYPE_OBJECT)
+G_DEFINE_TYPE_WITH_PRIVATE (Login1Service, login1_service, G_TYPE_OBJECT)
+G_DEFINE_TYPE_WITH_PRIVATE (Login1Seat, login1_seat, G_TYPE_OBJECT)
 
 G_DEFINE_AUTOPTR_CLEANUP_FUNC (Login1Seat, g_object_unref)
 
@@ -87,9 +87,11 @@ login1_service_get_instance (void)
 static void
 update_property (Login1Seat *seat, const gchar *name, GVariant *value)
 {
+    Login1SeatPrivate *priv = login1_seat_get_instance_private (seat);
+
     if (strcmp (name, "CanGraphical") == 0 && g_variant_is_of_type (value, G_VARIANT_TYPE_BOOLEAN))
     {
-        seat->priv->can_graphical = g_variant_get_boolean (value);
+        priv->can_graphical = g_variant_get_boolean (value);
         g_signal_emit (seat, seat_signals[CAN_GRAPHICAL_CHANGED], 0);
     }
     else if (strcmp (name, "ActiveSession") == 0 && g_variant_is_of_type (value, G_VARIANT_TYPE ("(so)")))
@@ -110,23 +112,23 @@ seat_properties_changed_cb (GDBusConnect
                             gpointer user_data)
 {
     Login1Seat *seat = user_data;
+    Login1SeatPrivate *priv = login1_seat_get_instance_private (seat);
 
-    GVariantIter *iter;
-    GVariantIter *invalidated_properties;
+    g_autoptr(GVariantIter) iter = NULL;
+    g_autoptr(GVariantIter) invalidated_properties = NULL;
     g_variant_get (parameters, "(sa{sv}as)", NULL, &iter, &invalidated_properties);
 
     const gchar *name;
     GVariant *value;
     while (g_variant_iter_loop (iter, "{&sv}", &name, &value))
         update_property (seat, name, value);
-    g_variant_iter_free (iter);
 
     while (g_variant_iter_loop (invalidated_properties, "&s", &name))
     {
         g_autoptr(GError) error = NULL;
         g_autoptr(GVariant) result = g_dbus_connection_call_sync (connection,
                                                                   LOGIN1_SERVICE_NAME,
-                                                                  seat->priv->path,
+                                                                  priv->path,
                                                                   "org.freedesktop.DBus.Properties",
                                                                   "Get",
                                                                   g_variant_new ("(ss)", "org.freedesktop.login1.Seat", name),
@@ -144,31 +146,34 @@ seat_properties_changed_cb (GDBusConnect
             update_property (seat, name, v);
         }
     }
-    g_variant_iter_free (invalidated_properties);
 }
 
 static Login1Seat *
 add_seat (Login1Service *service, const gchar *id, const gchar *path)
 {
+    Login1ServicePrivate *priv = login1_service_get_instance_private (service);
+
     Login1Seat *seat = g_object_new (LOGIN1_SEAT_TYPE, NULL);
-    seat->priv->connection = g_object_ref (service->priv->connection);
-    seat->priv->id = g_strdup (id);
-    seat->priv->path = g_strdup (path);
-
-    seat->priv->signal_id = g_dbus_connection_signal_subscribe (seat->priv->connection,
-                                                                LOGIN1_SERVICE_NAME,
-                                                                "org.freedesktop.DBus.Properties",
-                                                                "PropertiesChanged",
-                                                                path,
-                                                                "org.freedesktop.login1.Seat",
-                                                                G_DBUS_SIGNAL_FLAGS_NONE,
-                                                                seat_properties_changed_cb,
-                                                                g_object_ref (seat),
-                                                                g_object_unref);
+    Login1SeatPrivate *s_priv = login1_seat_get_instance_private (seat);
+
+    s_priv->connection = g_object_ref (priv->connection);
+    s_priv->id = g_strdup (id);
+    s_priv->path = g_strdup (path);
+
+    s_priv->signal_id = g_dbus_connection_signal_subscribe (s_priv->connection,
+                                                            LOGIN1_SERVICE_NAME,
+                                                            "org.freedesktop.DBus.Properties",
+                                                            "PropertiesChanged",
+                                                            path,
+                                                            "org.freedesktop.login1.Seat",
+                                                            G_DBUS_SIGNAL_FLAGS_NONE,
+                                                            seat_properties_changed_cb,
+                                                            g_object_ref (seat),
+                                                            g_object_unref);
 
     /* Get properties for this seat */
     g_autoptr(GError) error = NULL;
-    g_autoptr(GVariant) result = g_dbus_connection_call_sync (seat->priv->connection,
+    g_autoptr(GVariant) result = g_dbus_connection_call_sync (s_priv->connection,
                                                               LOGIN1_SERVICE_NAME,
                                                               path,
                                                               "org.freedesktop.DBus.Properties",
@@ -183,7 +188,7 @@ add_seat (Login1Service *service, const
         g_warning ("Failed to get seat properties: %s", error->message);
     if (result)
     {
-        GVariantIter *properties;
+        g_autoptr(GVariantIter) properties = NULL;
         g_variant_get (result, "(a{sv})", &properties);
 
         const gchar *name;
@@ -191,14 +196,13 @@ add_seat (Login1Service *service, const
         while (g_variant_iter_loop (properties, "{&sv}", &name, &value))
         {
             if (strcmp (name, "CanGraphical") == 0 && g_variant_is_of_type (value, G_VARIANT_TYPE_BOOLEAN))
-                seat->priv->can_graphical = g_variant_get_boolean (value);
+                s_priv->can_graphical = g_variant_get_boolean (value);
             else if (strcmp (name, "CanMultiSession") == 0 && g_variant_is_of_type (value, G_VARIANT_TYPE_BOOLEAN))
-                seat->priv->can_multi_session = g_variant_get_boolean (value);
+                s_priv->can_multi_session = g_variant_get_boolean (value);
         }
-        g_variant_iter_free (properties);
     }
 
-    service->priv->seats = g_list_append (service->priv->seats, seat);
+    priv->seats = g_list_append (priv->seats, seat);
 
     return seat;
 }
@@ -213,6 +217,7 @@ signal_cb (GDBusConnection *connection,
            gpointer user_data)
 {
     Login1Service *service = user_data;
+    Login1ServicePrivate *priv = login1_service_get_instance_private (service);
 
     if (strcmp (signal_name, "SeatNew") == 0)
     {
@@ -234,7 +239,7 @@ signal_cb (GDBusConnection *connection,
         g_autoptr(Login1Seat) seat = login1_service_get_seat (service, id);
         if (seat)
         {
-            service->priv->seats = g_list_remove (service->priv->seats, seat);
+            priv->seats = g_list_remove (priv->seats, seat);
             g_signal_emit (service, service_signals[SEAT_REMOVED], 0, seat);
         }
     }
@@ -243,30 +248,32 @@ signal_cb (GDBusConnection *connection,
 gboolean
 login1_service_connect (Login1Service *service)
 {
+    Login1ServicePrivate *priv = login1_service_get_instance_private (service);
+
     g_return_val_if_fail (service != NULL, FALSE);
 
-    if (service->priv->connected)
+    if (priv->connected)
         return TRUE;
 
     g_autoptr(GError) error = NULL;
-    service->priv->connection = g_bus_get_sync (G_BUS_TYPE_SYSTEM, NULL, &error);
+    priv->connection = g_bus_get_sync (G_BUS_TYPE_SYSTEM, NULL, &error);
     if (error)
         g_warning ("Failed to get system bus: %s", error->message);
-    if (!service->priv->connection)
+    if (!priv->connection)
         return FALSE;
 
-    service->priv->signal_id = g_dbus_connection_signal_subscribe (service->priv->connection,
-                                                                   LOGIN1_SERVICE_NAME,
-                                                                   LOGIN1_MANAGER_INTERFACE_NAME,
-                                                                   NULL,
-                                                                   LOGIN1_OBJECT_NAME,
-                                                                   NULL,
-                                                                   G_DBUS_SIGNAL_FLAGS_NONE,
-                                                                   signal_cb,
-                                                                   g_object_ref (service),
-                                                                   g_object_unref);
+    priv->signal_id = g_dbus_connection_signal_subscribe (priv->connection,
+                                                          LOGIN1_SERVICE_NAME,
+                                                          LOGIN1_MANAGER_INTERFACE_NAME,
+                                                          NULL,
+                                                          LOGIN1_OBJECT_NAME,
+                                                          NULL,
+                                                          G_DBUS_SIGNAL_FLAGS_NONE,
+                                                          signal_cb,
+                                                          g_object_ref (service),
+                                                          g_object_unref);
 
-    g_autoptr(GVariant) result = g_dbus_connection_call_sync (service->priv->connection,
+    g_autoptr(GVariant) result = g_dbus_connection_call_sync (priv->connection,
                                                               LOGIN1_SERVICE_NAME,
                                                               LOGIN1_OBJECT_NAME,
                                                               LOGIN1_MANAGER_INTERFACE_NAME,
@@ -282,15 +289,14 @@ login1_service_connect (Login1Service *s
     if (!result)
         return FALSE;
 
-    GVariantIter *seat_iter;
+    g_autoptr(GVariantIter) seat_iter = NULL;
     g_variant_get (result, "(a(so))", &seat_iter);
 
     const gchar *id, *path;
     while (g_variant_iter_loop (seat_iter, "(&s&o)", &id, &path))
         add_seat (service, id, path);
-    g_variant_iter_free (seat_iter);
 
-    service->priv->connected = TRUE;
+    priv->connected = TRUE;
 
     return TRUE;
 }
@@ -298,26 +304,32 @@ login1_service_connect (Login1Service *s
 gboolean
 login1_service_get_is_connected (Login1Service *service)
 {
+    Login1ServicePrivate *priv = login1_service_get_instance_private (service);
     g_return_val_if_fail (service != NULL, FALSE);
-    return service->priv->connected;
+    return priv->connected;
 }
 
 GList *
 login1_service_get_seats (Login1Service *service)
 {
+    Login1ServicePrivate *priv = login1_service_get_instance_private (service);
     g_return_val_if_fail (service != NULL, NULL);
-    return service->priv->seats;
+    return priv->seats;
 }
 
 Login1Seat *
 login1_service_get_seat (Login1Service *service, const gchar *id)
 {
+    Login1ServicePrivate *priv = login1_service_get_instance_private (service);
+
     g_return_val_if_fail (service != NULL, NULL);
 
-    for (GList *link = service->priv->seats; link; link = link->next)
+    for (GList *link = priv->seats; link; link = link->next)
     {
         Login1Seat *seat = link->data;
-        if (strcmp (seat->priv->id, id) == 0)
+        Login1SeatPrivate *s_priv = login1_seat_get_instance_private (seat);
+
+        if (strcmp (s_priv->id, id) == 0)
             return seat;
     }
 
@@ -327,6 +339,8 @@ login1_service_get_seat (Login1Service *
 void
 login1_service_lock_session (Login1Service *service, const gchar *session_id)
 {
+    Login1ServicePrivate *priv = login1_service_get_instance_private (service);
+
     g_return_if_fail (service != NULL);
     g_return_if_fail (session_id != NULL);
 
@@ -336,7 +350,7 @@ login1_service_lock_session (Login1Servi
         return;
 
     g_autoptr(GError) error = NULL;
-    g_autoptr(GVariant) result = g_dbus_connection_call_sync (service->priv->connection,
+    g_autoptr(GVariant) result = g_dbus_connection_call_sync (priv->connection,
                                                               LOGIN1_SERVICE_NAME,
                                                               LOGIN1_OBJECT_NAME,
                                                               LOGIN1_MANAGER_INTERFACE_NAME,
@@ -354,6 +368,8 @@ login1_service_lock_session (Login1Servi
 void
 login1_service_unlock_session (Login1Service *service, const gchar *session_id)
 {
+    Login1ServicePrivate *priv = login1_service_get_instance_private (service);
+
     g_return_if_fail (service != NULL);
     g_return_if_fail (session_id != NULL);
 
@@ -363,7 +379,7 @@ login1_service_unlock_session (Login1Ser
         return;
 
     g_autoptr(GError) error = NULL;
-    g_autoptr(GVariant) result = g_dbus_connection_call_sync (service->priv->connection,
+    g_autoptr(GVariant) result = g_dbus_connection_call_sync (priv->connection,
                                                               LOGIN1_SERVICE_NAME,
                                                               LOGIN1_OBJECT_NAME,
                                                               LOGIN1_MANAGER_INTERFACE_NAME,
@@ -381,6 +397,8 @@ login1_service_unlock_session (Login1Ser
 void
 login1_service_activate_session (Login1Service *service, const gchar *session_id)
 {
+    Login1ServicePrivate *priv = login1_service_get_instance_private (service);
+
     g_return_if_fail (service != NULL);
     g_return_if_fail (session_id != NULL);
 
@@ -390,7 +408,7 @@ login1_service_activate_session (Login1S
         return;
 
     g_autoptr(GError) error = NULL;
-    g_autoptr(GVariant) result = g_dbus_connection_call_sync (service->priv->connection,
+    g_autoptr(GVariant) result = g_dbus_connection_call_sync (priv->connection,
                                                               LOGIN1_SERVICE_NAME,
                                                               LOGIN1_OBJECT_NAME,
                                                               LOGIN1_MANAGER_INTERFACE_NAME,
@@ -408,6 +426,8 @@ login1_service_activate_session (Login1S
 void
 login1_service_terminate_session (Login1Service *service, const gchar *session_id)
 {
+    Login1ServicePrivate *priv = login1_service_get_instance_private (service);
+
     g_return_if_fail (service != NULL);
     g_return_if_fail (session_id != NULL);
 
@@ -417,7 +437,7 @@ login1_service_terminate_session (Login1
         return;
 
     g_autoptr(GError) error = NULL;
-    g_autoptr(GVariant) result = g_dbus_connection_call_sync (service->priv->connection,
+    g_autoptr(GVariant) result = g_dbus_connection_call_sync (priv->connection,
                                                               LOGIN1_SERVICE_NAME,
                                                               LOGIN1_OBJECT_NAME,
                                                               LOGIN1_MANAGER_INTERFACE_NAME,
@@ -435,17 +455,17 @@ login1_service_terminate_session (Login1
 static void
 login1_service_init (Login1Service *service)
 {
-    service->priv = G_TYPE_INSTANCE_GET_PRIVATE (service, LOGIN1_SERVICE_TYPE, Login1ServicePrivate);
 }
 
 static void
 login1_service_finalize (GObject *object)
 {
     Login1Service *self = LOGIN1_SERVICE (object);
+    Login1ServicePrivate *priv = login1_service_get_instance_private (self);
 
-    g_list_free_full (self->priv->seats, g_object_unref);
-    g_dbus_connection_signal_unsubscribe (self->priv->connection, self->priv->signal_id);
-    g_clear_object (&self->priv->connection);
+    g_list_free_full (priv->seats, g_object_unref);
+    g_dbus_connection_signal_unsubscribe (priv->connection, priv->signal_id);
+    g_clear_object (&priv->connection);
 
     G_OBJECT_CLASS (login1_service_parent_class)->finalize (object);
 }
@@ -457,8 +477,6 @@ login1_service_class_init (Login1Service
 
     object_class->finalize = login1_service_finalize;
 
-    g_type_class_add_private (klass, sizeof (Login1ServicePrivate));
-
     service_signals[SEAT_ADDED] =
         g_signal_new (LOGIN1_SERVICE_SIGNAL_SEAT_ADDED,
                       G_TYPE_FROM_CLASS (klass),
@@ -480,39 +498,42 @@ login1_service_class_init (Login1Service
 const gchar *
 login1_seat_get_id (Login1Seat *seat)
 {
+    Login1SeatPrivate *priv = login1_seat_get_instance_private (seat);
     g_return_val_if_fail (seat != NULL, NULL);
-    return seat->priv->id;
+    return priv->id;
 }
 
 gboolean
 login1_seat_get_can_graphical (Login1Seat *seat)
 {
+    Login1SeatPrivate *priv = login1_seat_get_instance_private (seat);
     g_return_val_if_fail (seat != NULL, FALSE);
-    return seat->priv->can_graphical;
+    return priv->can_graphical;
 }
 
 gboolean
 login1_seat_get_can_multi_session (Login1Seat *seat)
 {
+    Login1SeatPrivate *priv = login1_seat_get_instance_private (seat);
     g_return_val_if_fail (seat != NULL, FALSE);
-    return seat->priv->can_multi_session;
+    return priv->can_multi_session;
 }
 
 static void
 login1_seat_init (Login1Seat *seat)
 {
-    seat->priv = G_TYPE_INSTANCE_GET_PRIVATE (seat, LOGIN1_SEAT_TYPE, Login1SeatPrivate);
 }
 
 static void
 login1_seat_finalize (GObject *object)
 {
     Login1Seat *self = LOGIN1_SEAT (object);
+    Login1SeatPrivate *priv = login1_seat_get_instance_private (self);
 
-    g_clear_pointer (&self->priv->id, g_free);
-    g_clear_pointer (&self->priv->path, g_free);
-    g_dbus_connection_signal_unsubscribe (self->priv->connection, self->priv->signal_id);
-    g_clear_object (&self->priv->connection);
+    g_clear_pointer (&priv->id, g_free);
+    g_clear_pointer (&priv->path, g_free);
+    g_dbus_connection_signal_unsubscribe (priv->connection, priv->signal_id);
+    g_clear_object (&priv->connection);
 
     G_OBJECT_CLASS (login1_seat_parent_class)->finalize (object);
 }
@@ -524,8 +545,6 @@ login1_seat_class_init (Login1SeatClass
 
     object_class->finalize = login1_seat_finalize;
 
-    g_type_class_add_private (klass, sizeof (Login1SeatPrivate));
-
     seat_signals[CAN_GRAPHICAL_CHANGED] =
         g_signal_new (LOGIN1_SEAT_SIGNAL_CAN_GRAPHICAL_CHANGED,
                       G_TYPE_FROM_CLASS (klass),
diff -pruN 1.26.0-8/src/login1.h 1.30.0-0ubuntu8/src/login1.h
--- 1.26.0-8/src/login1.h	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/src/login1.h	2018-09-05 01:33:31.000000000 +0000
@@ -28,12 +28,9 @@ G_BEGIN_DECLS
 #define LOGIN1_SEAT_SIGNAL_CAN_GRAPHICAL_CHANGED "can-graphical-changed"
 #define LOGIN1_SIGNAL_ACTIVE_SESION_CHANGED "active-session-changed"
 
-typedef struct Login1SeatPrivate Login1SeatPrivate;
-
 typedef struct
 {
-    GObject            parent_instance;
-    Login1SeatPrivate *priv;
+    GObject parent_instance;
 } Login1Seat;
 
 typedef struct
@@ -43,12 +40,9 @@ typedef struct
     void (*active_session_changed)(Login1Seat *seat, const gchar *login1_session_id);
 } Login1SeatClass;
 
-typedef struct Login1ServicePrivate Login1ServicePrivate;
-
 typedef struct
 {
-    GObject               parent_instance;
-    Login1ServicePrivate *priv;
+    GObject parent_instance;
 } Login1Service;
 
 typedef struct
diff -pruN 1.26.0-8/src/process.c 1.30.0-0ubuntu8/src/process.c
--- 1.26.0-8/src/process.c	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/src/process.c	2018-09-05 01:33:31.000000000 +0000
@@ -30,7 +30,7 @@ enum {
 };
 static guint signals[LAST_SIGNAL] = { 0 };
 
-struct ProcessPrivate
+typedef struct
 {
     /* Function to run inside subprocess before exec */
     ProcessRunFunc run_func;
@@ -64,9 +64,9 @@ struct ProcessPrivate
 
     /* Watch on process */
     guint watch;
-};
+} ProcessPrivate;
 
-G_DEFINE_TYPE (Process, process, G_TYPE_OBJECT)
+G_DEFINE_TYPE_WITH_PRIVATE (Process, process, G_TYPE_OBJECT)
 
 static Process *current_process = NULL;
 static GHashTable *processes = NULL;
@@ -80,7 +80,8 @@ process_get_current (void)
         return current_process;
 
     current_process = process_new (NULL, NULL);
-    current_process->priv->pid = getpid ();
+    ProcessPrivate *priv = process_get_instance_private (current_process);
+    priv->pid = getpid ();
 
     return current_process;
 }
@@ -89,85 +90,96 @@ Process *
 process_new (ProcessRunFunc run_func, gpointer run_func_data)
 {
     Process *process = g_object_new (PROCESS_TYPE, NULL);
-    process->priv->run_func = run_func;
-    process->priv->run_func_data = run_func_data;
-    process->priv->log_mode = LOG_MODE_INVALID;
+    ProcessPrivate *priv = process_get_instance_private (process);
+
+    priv->run_func = run_func;
+    priv->run_func_data = run_func_data;
+    priv->log_mode = LOG_MODE_INVALID;
     return process;
 }
 
 void
 process_set_log_file (Process *process, const gchar *path, gboolean log_stdout, LogMode log_mode)
 {
+    ProcessPrivate *priv = process_get_instance_private (process);
+
     g_return_if_fail (process != NULL);
-    g_free (process->priv->log_file);
-    process->priv->log_file = g_strdup (path);
-    process->priv->log_stdout = log_stdout;
-    process->priv->log_mode = log_mode;
+
+    g_free (priv->log_file);
+    priv->log_file = g_strdup (path);
+    priv->log_stdout = log_stdout;
+    priv->log_mode = log_mode;
 }
 
 void
 process_set_clear_environment (Process *process, gboolean clear_environment)
 {
+    ProcessPrivate *priv = process_get_instance_private (process);
     g_return_if_fail (process != NULL);
-    process->priv->clear_environment = clear_environment;
+    priv->clear_environment = clear_environment;
 }
 
 gboolean
 process_get_clear_environment (Process *process)
 {
+    ProcessPrivate *priv = process_get_instance_private (process);
     g_return_val_if_fail (process != NULL, FALSE);
-    return process->priv->clear_environment;
+    return priv->clear_environment;
 }
 
 void
 process_set_env (Process *process, const gchar *name, const gchar *value)
 {
+    ProcessPrivate *priv = process_get_instance_private (process);
     g_return_if_fail (process != NULL);
     g_return_if_fail (name != NULL);
-    g_hash_table_insert (process->priv->env, g_strdup (name), g_strdup (value));
+    g_hash_table_insert (priv->env, g_strdup (name), g_strdup (value));
 }
 
 const gchar *
 process_get_env (Process *process, const gchar *name)
 {
+    ProcessPrivate *priv = process_get_instance_private (process);
     g_return_val_if_fail (process != NULL, NULL);
     g_return_val_if_fail (name != NULL, NULL);
-    return g_hash_table_lookup (process->priv->env, name);
+    return g_hash_table_lookup (priv->env, name);
 }
 
 void
 process_set_command (Process *process, const gchar *command)
 {
+    ProcessPrivate *priv = process_get_instance_private (process);
     g_return_if_fail (process != NULL);
-
-    g_free (process->priv->command);
-    process->priv->command = g_strdup (command);
+    g_free (priv->command);
+    priv->command = g_strdup (command);
 }
 
 const gchar *
 process_get_command (Process *process)
 {
+    ProcessPrivate *priv = process_get_instance_private (process);
     g_return_val_if_fail (process != NULL, NULL);
-    return process->priv->command;
+    return priv->command;
 }
 
 static void
 process_watch_cb (GPid pid, gint status, gpointer data)
 {
     Process *process = data;
+    ProcessPrivate *priv = process_get_instance_private (process);
 
-    process->priv->watch = 0;
-    process->priv->exit_status = status;
+    priv->watch = 0;
+    priv->exit_status = status;
 
     if (WIFEXITED (status))
         g_debug ("Process %d exited with return value %d", pid, WEXITSTATUS (status));
     else if (WIFSIGNALED (status))
         g_debug ("Process %d terminated with signal %d", pid, WTERMSIG (status));
 
-    if (process->priv->quit_timeout)
-        g_source_remove (process->priv->quit_timeout);
-    process->priv->quit_timeout = 0;
-    process->priv->pid = 0;
+    if (priv->quit_timeout)
+        g_source_remove (priv->quit_timeout);
+    priv->quit_timeout = 0;
+    priv->pid = 0;
     g_hash_table_remove (processes, GINT_TO_POINTER (pid));
 
     g_signal_emit (process, signals[STOPPED], 0);
@@ -176,33 +188,35 @@ process_watch_cb (GPid pid, gint status,
 gboolean
 process_start (Process *process, gboolean block)
 {
+    ProcessPrivate *priv = process_get_instance_private (process);
+
     g_return_val_if_fail (process != NULL, FALSE);
-    g_return_val_if_fail (process->priv->command != NULL, FALSE);
-    g_return_val_if_fail (process->priv->pid == 0, FALSE);
+    g_return_val_if_fail (priv->command != NULL, FALSE);
+    g_return_val_if_fail (priv->pid == 0, FALSE);
 
     gint argc;
     g_auto(GStrv) argv = NULL;
     g_autoptr(GError) error = NULL;
-    if (!g_shell_parse_argv (process->priv->command, &argc, &argv, &error))
+    if (!g_shell_parse_argv (priv->command, &argc, &argv, &error))
     {
-        g_warning ("Error parsing command %s: %s", process->priv->command, error->message);
+        g_warning ("Error parsing command %s: %s", priv->command, error->message);
         return FALSE;
     }
 
     int log_fd = -1;
-    if (process->priv->log_file)
-        log_fd = log_file_open (process->priv->log_file, process->priv->log_mode);
+    if (priv->log_file)
+        log_fd = log_file_open (priv->log_file, priv->log_mode);
 
     /* Work out variables to set */
-    guint env_length = g_hash_table_size (process->priv->env);
+    guint env_length = g_hash_table_size (priv->env);
     g_autofree gchar **env_keys = g_malloc (sizeof (gchar *) * env_length);
     g_autofree gchar **env_values = g_malloc (sizeof (gchar *) * env_length);
-    GList *keys = g_hash_table_get_keys (process->priv->env);
+    GList *keys = g_hash_table_get_keys (priv->env);
     guint i = 0;
     for (GList *link = keys; i < env_length; i++, link = link->next)
     {
         env_keys[i] = link->data;
-        env_values[i] = g_hash_table_lookup (process->priv->env, env_keys[i]);
+        env_values[i] = g_hash_table_lookup (priv->env, env_keys[i]);
     }
     g_list_free (keys);
 
@@ -210,20 +224,20 @@ process_start (Process *process, gboolea
     if (pid == 0)
     {
         /* Do custom setup */
-        if (process->priv->run_func)
-            process->priv->run_func (process, process->priv->run_func_data);
+        if (priv->run_func)
+            priv->run_func (process, priv->run_func_data);
 
         /* Redirect output to logfile */
         if (log_fd >= 0)
         {
-             if (process->priv->log_stdout)
+             if (priv->log_stdout)
                  dup2 (log_fd, STDOUT_FILENO);
              dup2 (log_fd, STDERR_FILENO);
              close (log_fd);
         }
 
         /* Set environment */
-        if (process->priv->clear_environment)
+        if (priv->clear_environment)
 #ifdef HAVE_CLEARENV
             clearenv ();
 #else
@@ -247,20 +261,20 @@ process_start (Process *process, gboolea
         return FALSE;
     }
 
-    g_debug ("Launching process %d: %s", pid, process->priv->command);
+    g_debug ("Launching process %d: %s", pid, priv->command);
 
-    process->priv->pid = pid;
+    priv->pid = pid;
 
     if (block)
     {
         int exit_status;
-        waitpid (process->priv->pid, &exit_status, 0);
-        process_watch_cb (process->priv->pid, exit_status, process);
+        waitpid (priv->pid, &exit_status, 0);
+        process_watch_cb (priv->pid, exit_status, process);
     }
     else
     {
-        g_hash_table_insert (processes, GINT_TO_POINTER (process->priv->pid), g_object_ref (process));
-        process->priv->watch = g_child_watch_add (process->priv->pid, process_watch_cb, process);
+        g_hash_table_insert (processes, GINT_TO_POINTER (priv->pid), g_object_ref (process));
+        priv->watch = g_child_watch_add (priv->pid, process_watch_cb, process);
     }
 
     return TRUE;
@@ -269,73 +283,83 @@ process_start (Process *process, gboolea
 gboolean
 process_get_is_running (Process *process)
 {
+    ProcessPrivate *priv = process_get_instance_private (process);
     g_return_val_if_fail (process != NULL, FALSE);
-    return process->priv->pid != 0;
+    return priv->pid != 0;
 }
 
 GPid
 process_get_pid (Process *process)
 {
+    ProcessPrivate *priv = process_get_instance_private (process);
     g_return_val_if_fail (process != NULL, 0);
-    return process->priv->pid;
+    return priv->pid;
 }
 
 void
 process_signal (Process *process, int signum)
 {
+    ProcessPrivate *priv = process_get_instance_private (process);
+
     g_return_if_fail (process != NULL);
 
-    if (process->priv->pid == 0)
+    if (priv->pid == 0)
         return;
 
-    g_debug ("Sending signal %d to process %d", signum, process->priv->pid);
+    g_debug ("Sending signal %d to process %d", signum, priv->pid);
 
-    if (kill (process->priv->pid, signum) < 0)
+    if (kill (priv->pid, signum) < 0)
     {
         /* Ignore ESRCH, we will pick that up in our wait */
         if (errno != ESRCH)
-            g_warning ("Error sending signal %d to process %d: %s", signum, process->priv->pid, strerror (errno));
+            g_warning ("Error sending signal %d to process %d: %s", signum, priv->pid, strerror (errno));
     }
 }
 
 static gboolean
 quit_timeout_cb (Process *process)
 {
-    process->priv->quit_timeout = 0;
+    ProcessPrivate *priv = process_get_instance_private (process);
+
+    priv->quit_timeout = 0;
     process_signal (process, SIGKILL);
+
     return FALSE;
 }
 
 void
 process_stop (Process *process)
 {
+    ProcessPrivate *priv = process_get_instance_private (process);
+
     g_return_if_fail (process != NULL);
 
-    if (process->priv->stopping)
+    if (priv->stopping)
         return;
-    process->priv->stopping = TRUE;
+    priv->stopping = TRUE;
 
     /* If already stopped then we're done! */
-    if (process->priv->pid == 0)
+    if (priv->pid == 0)
         return;
 
     /* Send SIGTERM, and then SIGKILL if no response */
-    process->priv->quit_timeout = g_timeout_add (5000, (GSourceFunc) quit_timeout_cb, process);
+    priv->quit_timeout = g_timeout_add (5000, (GSourceFunc) quit_timeout_cb, process);
     process_signal (process, SIGTERM);
 }
 
 int
 process_get_exit_status (Process *process)
 {
+    ProcessPrivate *priv = process_get_instance_private (process);
     g_return_val_if_fail (process != NULL, -1);
-    return process->priv->exit_status;
+    return priv->exit_status;
 }
 
 static void
 process_init (Process *process)
 {
-    process->priv = G_TYPE_INSTANCE_GET_PRIVATE (process, PROCESS_TYPE, ProcessPrivate);
-    process->priv->env = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, g_free);
+    ProcessPrivate *priv = process_get_instance_private (process);
+    priv->env = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, g_free);
 }
 
 static void
@@ -347,20 +371,21 @@ static void
 process_finalize (GObject *object)
 {
     Process *self = PROCESS (object);
+    ProcessPrivate *priv = process_get_instance_private (self);
 
-    if (self->priv->pid > 0)
-        g_hash_table_remove (processes, GINT_TO_POINTER (self->priv->pid));
+    if (priv->pid > 0)
+        g_hash_table_remove (processes, GINT_TO_POINTER (priv->pid));
 
-    g_clear_pointer (&self->priv->log_file, g_free);
-    g_clear_pointer (&self->priv->command, g_free);
-    g_hash_table_unref (self->priv->env);
-    if (self->priv->quit_timeout)
-        g_source_remove (self->priv->quit_timeout);
-    if (self->priv->watch)
-        g_source_remove (self->priv->watch);
+    g_clear_pointer (&priv->log_file, g_free);
+    g_clear_pointer (&priv->command, g_free);
+    g_hash_table_unref (priv->env);
+    if (priv->quit_timeout)
+        g_source_remove (priv->quit_timeout);
+    if (priv->watch)
+        g_source_remove (priv->watch);
 
-    if (self->priv->pid)
-        kill (self->priv->pid, SIGTERM);
+    if (priv->pid)
+        kill (priv->pid, SIGTERM);
 
     G_OBJECT_CLASS (process_parent_class)->finalize (object);
 }
@@ -412,8 +437,6 @@ process_class_init (ProcessClass *klass)
     klass->stopped = process_stopped;
     object_class->finalize = process_finalize;
 
-    g_type_class_add_private (klass, sizeof (ProcessPrivate));
-
     signals[GOT_DATA] =
         g_signal_new (PROCESS_SIGNAL_GOT_DATA,
                       G_TYPE_FROM_CLASS (klass),
diff -pruN 1.26.0-8/src/process.h 1.30.0-0ubuntu8/src/process.h
--- 1.26.0-8/src/process.h	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/src/process.h	2018-09-05 01:33:31.000000000 +0000
@@ -27,12 +27,9 @@ G_BEGIN_DECLS
 #define PROCESS_SIGNAL_GOT_SIGNAL "got-signal"
 #define PROCESS_SIGNAL_STOPPED    "stopped"
 
-typedef struct ProcessPrivate ProcessPrivate;
-
 typedef struct
 {
-    GObject              parent_instance;
-    ProcessPrivate *priv;
+    GObject parent_instance;
 } Process;
 
 typedef struct
diff -pruN 1.26.0-8/src/seat-local.c 1.30.0-0ubuntu8/src/seat-local.c
--- 1.26.0-8/src/seat-local.c	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/src/seat-local.c	2018-09-05 01:33:31.000000000 +0000
@@ -14,28 +14,17 @@
 #include "seat-local.h"
 #include "configuration.h"
 #include "x-server-local.h"
-#include "x-server-xmir.h"
-#include "unity-system-compositor.h"
 #include "wayland-session.h"
 #include "plymouth.h"
 #include "vt.h"
 
-struct SeatLocalPrivate
+typedef struct
 {
-    /* System compositor being used for Mir sessions */
-    UnitySystemCompositor *compositor;
-
-    /* Session currently active on compositor */
-    Session *active_compositor_session;
-
-    /* Counter for Mir IDs to use */
-    int next_xmir_id;
-
     /* X server being used for XDMCP */
     XServerLocal *xdmcp_x_server;
-};
+} SeatLocalPrivate;
 
-G_DEFINE_TYPE (SeatLocal, seat_local, SEAT_TYPE)
+G_DEFINE_TYPE_WITH_PRIVATE (SeatLocal, seat_local, SEAT_TYPE)
 
 static XServerLocal *create_x_server (SeatLocal *seat);
 
@@ -50,17 +39,21 @@ seat_local_setup (Seat *seat)
 static void
 check_stopped (SeatLocal *seat)
 {
-    if (!seat->priv->compositor && !seat->priv->xdmcp_x_server)
+    SeatLocalPrivate *priv = seat_local_get_instance_private (seat);
+
+    if (!priv->xdmcp_x_server)
         SEAT_CLASS (seat_local_parent_class)->stop (SEAT (seat));
 }
 
 static void
 xdmcp_x_server_stopped_cb (DisplayServer *display_server, SeatLocal *seat)
 {
+    SeatLocalPrivate *priv = seat_local_get_instance_private (seat);
+
     l_debug (seat, "XDMCP X server stopped");
 
-    g_signal_handlers_disconnect_matched (seat->priv->xdmcp_x_server, G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, seat);
-    g_clear_object (&seat->priv->xdmcp_x_server);
+    g_signal_handlers_disconnect_matched (priv->xdmcp_x_server, G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, seat);
+    g_clear_object (&priv->xdmcp_x_server);
 
     if (seat_get_is_stopping (SEAT (seat)))
         check_stopped (seat);
@@ -68,31 +61,20 @@ xdmcp_x_server_stopped_cb (DisplayServer
         seat_stop (SEAT (seat));
 }
 
-static void
-compositor_stopped_cb (UnitySystemCompositor *compositor, SeatLocal *seat)
-{
-    l_debug (seat, "Compositor stopped");
-
-    g_clear_object (&seat->priv->compositor);
-
-    if (seat_get_is_stopping (SEAT (seat)))
-        check_stopped (seat);
-}
-
 static gboolean
 seat_local_start (Seat *seat)
 {
+    SeatLocalPrivate *priv = seat_local_get_instance_private (SEAT_LOCAL (seat));
+
     /* If running as an XDMCP client then just start an X server */
     const gchar *xdmcp_manager = seat_get_string_property (seat, "xdmcp-manager");
     if (xdmcp_manager)
     {
-        SeatLocal *s = SEAT_LOCAL (seat);
-
-        s->priv->xdmcp_x_server = create_x_server (s);
-        x_server_local_set_xdmcp_server (s->priv->xdmcp_x_server, xdmcp_manager);
+        priv->xdmcp_x_server = create_x_server (SEAT_LOCAL (seat));
+        x_server_local_set_xdmcp_server (priv->xdmcp_x_server, xdmcp_manager);
         gint port = seat_get_integer_property (seat, "xdmcp-port");
         if (port > 0)
-            x_server_local_set_xdmcp_port (s->priv->xdmcp_x_server, port);
+            x_server_local_set_xdmcp_port (priv->xdmcp_x_server, port);
         const gchar *key_name = seat_get_string_property (seat, "xdmcp-key");
         if (key_name)
         {
@@ -113,12 +95,12 @@ seat_local_start (Seat *seat)
                     l_debug (seat, "Key %s not defined", key_name);
 
                 if (key)
-                    x_server_local_set_xdmcp_key (s->priv->xdmcp_x_server, key);
+                    x_server_local_set_xdmcp_key (priv->xdmcp_x_server, key);
             }
         }
 
-        g_signal_connect (s->priv->xdmcp_x_server, DISPLAY_SERVER_SIGNAL_STOPPED, G_CALLBACK (xdmcp_x_server_stopped_cb), seat);
-        return display_server_start (DISPLAY_SERVER (s->priv->xdmcp_x_server));
+        g_signal_connect (priv->xdmcp_x_server, DISPLAY_SERVER_SIGNAL_STOPPED, G_CALLBACK (xdmcp_x_server_stopped_cb), seat);
+        return display_server_start (DISPLAY_SERVER (priv->xdmcp_x_server));
     }
 
     return SEAT_CLASS (seat_local_parent_class)->start (seat);
@@ -170,75 +152,28 @@ get_vt (SeatLocal *seat, DisplayServer *
     return vt;
 }
 
-static UnitySystemCompositor *
-get_unity_system_compositor (SeatLocal *seat)
-{
-    if (seat->priv->compositor)
-        return seat->priv->compositor;
-
-    seat->priv->compositor = unity_system_compositor_new ();
-
-    const gchar *command = seat_get_string_property (SEAT (seat), "unity-compositor-command");
-    if (command)
-        unity_system_compositor_set_command (seat->priv->compositor, command);
-
-    gint timeout = seat_get_integer_property (SEAT (seat), "unity-compositor-timeout");
-    if (timeout <= 0)
-        timeout = 60;
-    unity_system_compositor_set_timeout (seat->priv->compositor, timeout);
-
-    gint vt = get_vt (seat, DISPLAY_SERVER (seat->priv->compositor));
-    if (vt >= 0)
-        unity_system_compositor_set_vt (seat->priv->compositor, vt);
-
-    seat->priv->next_xmir_id = 0;
-    g_signal_connect (seat->priv->compositor, DISPLAY_SERVER_SIGNAL_STOPPED, G_CALLBACK (compositor_stopped_cb), seat);
-
-    return seat->priv->compositor;
-}
-
 static XServerLocal *
 create_x_server (SeatLocal *seat)
 {
-    g_autoptr(XServerLocal) x_server = NULL;
+    g_autoptr(XServerLocal) x_server = x_server_local_new ();
 
-    const gchar *x_server_backend = seat_get_string_property (SEAT (seat), "xserver-backend");
-    if (g_strcmp0 (x_server_backend, "mir") == 0)
-    {
-        UnitySystemCompositor *compositor = get_unity_system_compositor (SEAT_LOCAL (seat));
-        x_server = X_SERVER_LOCAL (x_server_xmir_new (compositor));
+    gint vt = get_vt (seat, DISPLAY_SERVER (x_server));
+    if (vt >= 0)
+        x_server_local_set_vt (x_server, vt);
 
-        const gchar *command = seat_get_string_property (SEAT (seat), "xmir-command");
-        if (command)
-            x_server_local_set_command (x_server, command);
-
-        g_autofree gchar *id = g_strdup_printf ("x-%d", seat->priv->next_xmir_id);
-        seat->priv->next_xmir_id++;
-        x_server_xmir_set_mir_id (X_SERVER_XMIR (x_server), id);
-        x_server_xmir_set_mir_socket (X_SERVER_XMIR (x_server), unity_system_compositor_get_socket (compositor));
-    }
+    if (vt > 0)
+        l_debug (seat, "Starting local X display on VT %d", vt);
     else
-    {
-        x_server = x_server_local_new ();
-
-        gint vt = get_vt (seat, DISPLAY_SERVER (x_server));
-        if (vt >= 0)
-            x_server_local_set_vt (x_server, vt);
+        l_debug (seat, "Starting local X display");
 
-        if (vt > 0)
-            l_debug (seat, "Starting local X display on VT %d", vt);
-        else
-            l_debug (seat, "Starting local X display");
-
-        /* If running inside an X server use Xephyr instead */
-        const gchar *command = NULL;
-        if (g_getenv ("DISPLAY"))
-            command = "Xephyr";
-        if (!command)
-            command = seat_get_string_property (SEAT (seat), "xserver-command");
-        if (command)
-            x_server_local_set_command (x_server, command);
-    }
+    /* If running inside an X server use Xephyr instead */
+    const gchar *command = NULL;
+    if (g_getenv ("DISPLAY"))
+        command = "Xephyr";
+    if (!command)
+        command = seat_get_string_property (SEAT (seat), "xserver-command");
+    if (command)
+        x_server_local_set_command (x_server, command);
 
     g_autofree gchar *number = g_strdup_printf ("%d", x_server_get_display_number (X_SERVER (x_server)));
     g_autoptr(XAuthority) cookie = x_authority_new_local_cookie (number);
@@ -280,8 +215,6 @@ seat_local_create_display_server (Seat *
     const gchar *session_type = session_get_session_type (session);
     if (strcmp (session_type, "x") == 0)
         return DISPLAY_SERVER (create_x_server (seat));
-    else if (strcmp (session_type, "mir") == 0)
-        return g_object_ref (DISPLAY_SERVER (get_unity_system_compositor (seat)));
     else if (strcmp (session_type, "wayland") == 0)
         return create_wayland_session (seat);
     else
@@ -294,9 +227,6 @@ seat_local_create_display_server (Seat *
 static gboolean
 seat_local_display_server_is_used (Seat *seat, DisplayServer *display_server)
 {
-    if (display_server == DISPLAY_SERVER (SEAT_LOCAL (seat)->priv->compositor))
-        return TRUE;
-
     return SEAT_CLASS (seat_local_parent_class)->display_server_is_used (seat, display_server);
 }
 
@@ -319,46 +249,26 @@ seat_local_create_session (Seat *seat)
 }
 
 static void
-seat_local_set_active_session (Seat *s, Session *session)
+seat_local_set_active_session (Seat *seat, Session *session)
 {
-    SeatLocal *seat = SEAT_LOCAL (s);
-
     DisplayServer *display_server = session_get_display_server (session);
 
     gint vt = display_server_get_vt (display_server);
     if (vt >= 0)
         vt_set_active (vt);
 
-    g_clear_object (&seat->priv->active_compositor_session);
-    if (IS_UNITY_SYSTEM_COMPOSITOR (display_server))
-    {
-        unity_system_compositor_set_active_session (UNITY_SYSTEM_COMPOSITOR (display_server), session_get_env (session, "MIR_SERVER_NAME"));
-        seat->priv->active_compositor_session = g_object_ref (session);
-    }
-    if (IS_X_SERVER_XMIR (display_server))
-    {
-        unity_system_compositor_set_active_session (seat->priv->compositor, x_server_xmir_get_mir_id (X_SERVER_XMIR (display_server)));
-        seat->priv->active_compositor_session = g_object_ref (session);
-    }
-
-    SEAT_CLASS (seat_local_parent_class)->set_active_session (s, session);
+    SEAT_CLASS (seat_local_parent_class)->set_active_session (seat, session);
 }
 
 static Session *
-seat_local_get_active_session (Seat *s)
+seat_local_get_active_session (Seat *seat)
 {
-    SeatLocal *seat = SEAT_LOCAL (s);
-
     gint vt = vt_get_active ();
     if (vt < 0)
         return NULL;
 
-    /* If the compositor is active return the session it is displaying */
-    if (seat->priv->compositor && display_server_get_vt (DISPLAY_SERVER (seat->priv->compositor)) == vt)
-        return seat->priv->active_compositor_session;
-
-    /* Otherwise find out which session is on this VT */
-    for (GList *link = seat_get_sessions (s); link; link = link->next)
+    /* Find out which session is on this VT */
+    for (GList *link = seat_get_sessions (seat); link; link = link->next)
     {
         Session *session = link->data;
         DisplayServer *display_server;
@@ -372,29 +282,6 @@ seat_local_get_active_session (Seat *s)
 }
 
 static void
-seat_local_set_next_session (Seat *seat, Session *session)
-{
-    if (!session)
-        return;
-
-    DisplayServer *display_server = session_get_display_server (session);
-
-    const gchar *id = NULL;
-    if (IS_X_SERVER_XMIR (display_server))
-        id = x_server_xmir_get_mir_id (X_SERVER_XMIR (display_server));
-    else
-        id = session_get_env (session, "MIR_SERVER_NAME");
-
-    if (id)
-    {
-        l_debug (seat, "Marking Mir session %s as the next session", id);
-        unity_system_compositor_set_next_session (SEAT_LOCAL (seat)->priv->compositor, id);
-    }
-
-    SEAT_CLASS (seat_local_parent_class)->set_next_session (seat, session);
-}
-
-static void
 seat_local_run_script (Seat *seat, DisplayServer *display_server, Process *script)
 {
     if (IS_X_SERVER_LOCAL (display_server))
@@ -408,37 +295,31 @@ seat_local_run_script (Seat *seat, Displ
 }
 
 static void
-seat_local_stop (Seat *s)
+seat_local_stop (Seat *seat)
 {
-    SeatLocal *seat = SEAT_LOCAL (s);
-
-    /* Stop the compositor */
-    if (seat->priv->compositor)
-        display_server_stop (DISPLAY_SERVER (seat->priv->compositor));
+    SeatLocalPrivate *priv = seat_local_get_instance_private (SEAT_LOCAL (seat));
 
     /* Stop the XDMCP X server */
-    if (seat->priv->xdmcp_x_server)
-        display_server_stop (DISPLAY_SERVER (seat->priv->xdmcp_x_server));
+    if (priv->xdmcp_x_server)
+        display_server_stop (DISPLAY_SERVER (priv->xdmcp_x_server));
 
-    check_stopped (seat);
+    check_stopped (SEAT_LOCAL (seat));
 }
 
 static void
 seat_local_init (SeatLocal *seat)
 {
-    seat->priv = G_TYPE_INSTANCE_GET_PRIVATE (seat, SEAT_LOCAL_TYPE, SeatLocalPrivate);
 }
 
 static void
 seat_local_finalize (GObject *object)
 {
     SeatLocal *seat = SEAT_LOCAL (object);
+    SeatLocalPrivate *priv = seat_local_get_instance_private (seat);
 
-    g_clear_object (&seat->priv->compositor);
-    g_clear_object (&seat->priv->active_compositor_session);
-    if (seat->priv->xdmcp_x_server)
-        g_signal_handlers_disconnect_matched (seat->priv->xdmcp_x_server, G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, seat);
-    g_clear_object (&seat->priv->xdmcp_x_server);
+    if (priv->xdmcp_x_server)
+        g_signal_handlers_disconnect_matched (priv->xdmcp_x_server, G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, seat);
+    g_clear_object (&priv->xdmcp_x_server);
 
     G_OBJECT_CLASS (seat_local_parent_class)->finalize (object);
 }
@@ -459,9 +340,6 @@ seat_local_class_init (SeatLocalClass *k
     seat_class->create_session = seat_local_create_session;
     seat_class->set_active_session = seat_local_set_active_session;
     seat_class->get_active_session = seat_local_get_active_session;
-    seat_class->set_next_session = seat_local_set_next_session;
     seat_class->run_script = seat_local_run_script;
     seat_class->stop = seat_local_stop;
-
-    g_type_class_add_private (klass, sizeof (SeatLocalPrivate));
 }
diff -pruN 1.26.0-8/src/seat-local.h 1.30.0-0ubuntu8/src/seat-local.h
--- 1.26.0-8/src/seat-local.h	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/src/seat-local.h	2018-09-05 01:33:31.000000000 +0000
@@ -20,12 +20,9 @@ G_BEGIN_DECLS
 #define SEAT_LOCAL_TYPE (seat_local_get_type())
 #define SEAT_LOCAL(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SEAT_LOCAL_TYPE, SeatLocal))
 
-typedef struct SeatLocalPrivate SeatLocalPrivate;
-
 typedef struct
 {
-    Seat              parent_instance;
-    SeatLocalPrivate *priv;
+    Seat parent_instance;
 } SeatLocal;
 
 typedef struct
diff -pruN 1.26.0-8/src/seat-unity.c 1.30.0-0ubuntu8/src/seat-unity.c
--- 1.26.0-8/src/seat-unity.c	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/src/seat-unity.c	1970-01-01 00:00:00.000000000 +0000
@@ -1,400 +0,0 @@
-/*
- * Copyright (C) 2012-2013 Robert Ancell.
- * Author: Robert Ancell <robert.ancell@canonical.com>
- *
- * This program is free software: you can redistribute it and/or modify it under
- * the terms of the GNU General Public License as published by the Free Software
- * Foundation, either version 3 of the License, or (at your option) any later
- * version. See http://www.gnu.org/copyleft/gpl.html the full text of the
- * license.
- */
-
-#include <string.h>
-#include <fcntl.h>
-#include <errno.h>
-#include <glib/gstdio.h>
-
-#include "seat-unity.h"
-#include "configuration.h"
-#include "unity-system-compositor.h"
-#include "x-server-xmir.h"
-#include "vt.h"
-#include "plymouth.h"
-
-struct SeatUnityPrivate
-{
-    /* System compositor */
-    UnitySystemCompositor *compositor;
-
-    /* X server being used for XDMCP */
-    XServerXmir *xdmcp_x_server;
-
-    /* Next Mir ID to use for a Xmir servers */
-    gint next_x_server_id;
-
-    /* The currently visible session */
-    Session *active_session;
-    DisplayServer *active_display_server;
-};
-
-G_DEFINE_TYPE (SeatUnity, seat_unity, SEAT_TYPE)
-
-static XServerXmir *create_x_server (Seat *seat);
-
-static void
-seat_unity_setup (Seat *seat)
-{
-    seat_set_supports_multi_session (seat, TRUE);
-    SEAT_CLASS (seat_unity_parent_class)->setup (seat);
-}
-
-static void
-check_stopped (SeatUnity *seat)
-{
-    if (!seat->priv->compositor && !seat->priv->xdmcp_x_server)
-        SEAT_CLASS (seat_unity_parent_class)->stop (SEAT (seat));
-}
-
-static void
-xdmcp_x_server_stopped_cb (DisplayServer *display_server, Seat *seat)
-{
-    l_debug (seat, "XDMCP X server stopped");
-
-    g_signal_handlers_disconnect_matched (SEAT_UNITY (seat)->priv->xdmcp_x_server, G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, seat);
-    SEAT_UNITY (seat)->priv->xdmcp_x_server = NULL;
-
-    g_object_unref (display_server);
-
-    if (seat_get_is_stopping (seat))
-        check_stopped (SEAT_UNITY (seat));
-    else
-        seat_stop (seat);
-}
-
-static void
-compositor_ready_cb (UnitySystemCompositor *compositor, SeatUnity *seat)
-{
-    l_debug (seat, "Compositor ready");
-
-    /* If running as an XDMCP client then just start an X server */
-    const gchar *xdmcp_manager = seat_get_string_property (SEAT (seat), "xdmcp-manager");
-    if (xdmcp_manager)
-    {
-        seat->priv->xdmcp_x_server = create_x_server (SEAT (seat));
-        x_server_local_set_xdmcp_server (X_SERVER_LOCAL (seat->priv->xdmcp_x_server), xdmcp_manager);
-        gint port = seat_get_integer_property (SEAT (seat), "xdmcp-port");
-        if (port > 0)
-            x_server_local_set_xdmcp_port (X_SERVER_LOCAL (seat->priv->xdmcp_x_server), port);
-        const gchar *key_name = seat_get_string_property (SEAT (seat), "xdmcp-key");
-        if (key_name)
-        {
-            g_autofree gchar *path = g_build_filename (config_get_directory (config_get_instance ()), "keys.conf", NULL);
-
-            g_autoptr(GKeyFile) keys = g_key_file_new ();
-            g_autoptr(GError) error = NULL;
-            gboolean result = g_key_file_load_from_file (keys, path, G_KEY_FILE_NONE, &error);
-            if (error)
-                l_debug (seat, "Error getting key %s", error->message);
-
-            if (result)
-            {
-                if (g_key_file_has_key (keys, "keyring", key_name, NULL))
-                {
-                    g_autofree gchar *key = g_key_file_get_string (keys, "keyring", key_name, NULL);
-                    if (key)
-                        x_server_local_set_xdmcp_key (X_SERVER_LOCAL (seat->priv->xdmcp_x_server), key);
-                }
-                else
-                    l_debug (seat, "Key %s not defined", key_name);
-            }
-        }
-
-        g_signal_connect (seat->priv->xdmcp_x_server, DISPLAY_SERVER_SIGNAL_STOPPED, G_CALLBACK (xdmcp_x_server_stopped_cb), seat);
-        if (!display_server_start (DISPLAY_SERVER (seat->priv->xdmcp_x_server)))
-            seat_stop (SEAT (seat));
-    }
-
-    SEAT_CLASS (seat_unity_parent_class)->start (SEAT (seat));
-}
-
-static void
-compositor_stopped_cb (UnitySystemCompositor *compositor, SeatUnity *seat)
-{
-    l_debug (seat, "Compositor stopped");
-
-    g_clear_object (&seat->priv->compositor);
-
-    if (seat_get_is_stopping (SEAT (seat)))
-        check_stopped (seat);
-    else
-        seat_stop (SEAT (seat));
-}
-
-static gboolean
-seat_unity_start (Seat *seat)
-{
-    /* Replace Plymouth if it is running */
-    gint vt = -1;
-    if (plymouth_get_is_active () && plymouth_has_active_vt ())
-    {
-        gint active_vt = vt_get_active ();
-        if (active_vt >= vt_get_min ())
-        {
-            vt = active_vt;
-            plymouth_quit (TRUE);
-        }
-        else
-            l_debug (seat, "Plymouth is running on VT %d, but this is less than the configured minimum of %d so not replacing it", active_vt, vt_get_min ());
-    }
-    if (plymouth_get_is_active ())
-        plymouth_quit (FALSE);
-    if (vt < 0)
-        vt = vt_can_multi_seat () ? vt_get_unused () : 0;
-    if (vt < 0)
-    {
-        l_debug (seat, "Failed to get a VT to run on");
-        return FALSE;
-    }
-
-    int timeout = seat_get_integer_property (SEAT (seat), "unity-compositor-timeout");
-    if (timeout <= 0)
-        timeout = 60;
-
-    SEAT_UNITY (seat)->priv->compositor = unity_system_compositor_new ();
-    g_signal_connect (SEAT_UNITY (seat)->priv->compositor, DISPLAY_SERVER_SIGNAL_READY, G_CALLBACK (compositor_ready_cb), seat);
-    g_signal_connect (SEAT_UNITY (seat)->priv->compositor, DISPLAY_SERVER_SIGNAL_STOPPED, G_CALLBACK (compositor_stopped_cb), seat);
-    unity_system_compositor_set_command (SEAT_UNITY (seat)->priv->compositor, seat_get_string_property (SEAT (seat), "unity-compositor-command"));
-    unity_system_compositor_set_vt (SEAT_UNITY (seat)->priv->compositor, vt);
-    unity_system_compositor_set_timeout (SEAT_UNITY (seat)->priv->compositor, timeout);
-
-    return display_server_start (DISPLAY_SERVER (SEAT_UNITY (seat)->priv->compositor));
-}
-
-static XServerXmir *
-create_x_server (Seat *seat)
-{
-    l_debug (seat, "Starting X server on Unity compositor");
-
-    g_autoptr(XServerXmir) x_server = x_server_xmir_new (SEAT_UNITY (seat)->priv->compositor);
-
-    const gchar *command = seat_get_string_property (seat, "xmir-command");
-    x_server_local_set_command (X_SERVER_LOCAL (x_server), command);
-
-    g_autofree gchar *id = g_strdup_printf ("x-%d", SEAT_UNITY (seat)->priv->next_x_server_id);
-    SEAT_UNITY (seat)->priv->next_x_server_id++;
-    x_server_xmir_set_mir_id (x_server, id);
-    x_server_xmir_set_mir_socket (x_server, unity_system_compositor_get_socket (SEAT_UNITY (seat)->priv->compositor));
-
-    g_autofree gchar *number = g_strdup_printf ("%d", x_server_get_display_number (X_SERVER (x_server)));
-    g_autoptr(XAuthority) cookie = x_authority_new_local_cookie (number);
-    x_server_set_authority (X_SERVER (x_server), cookie);
-
-    const gchar *layout = seat_get_string_property (seat, "xserver-layout");
-    if (layout)
-        x_server_local_set_layout (X_SERVER_LOCAL (x_server), layout);
-
-    x_server_local_set_xdg_seat (X_SERVER_LOCAL (x_server), seat_get_name (seat));
-
-    const gchar *config_file = seat_get_string_property (seat, "xserver-config");
-    if (config_file)
-        x_server_local_set_config (X_SERVER_LOCAL (x_server), config_file);
-
-    gboolean allow_tcp = seat_get_boolean_property (seat, "xserver-allow-tcp");
-    x_server_local_set_allow_tcp (X_SERVER_LOCAL (x_server), allow_tcp);
-
-    return g_steal_pointer (&x_server);
-}
-
-static DisplayServer *
-seat_unity_create_display_server (Seat *seat, Session *session)
-{
-    const gchar *session_type = session_get_session_type (session);
-    if (strcmp (session_type, "x") == 0)
-        return DISPLAY_SERVER (create_x_server (seat));
-    else if (strcmp (session_type, "mir") == 0)
-        return g_object_ref (DISPLAY_SERVER (SEAT_UNITY (seat)->priv->compositor));
-    else
-    {
-        l_warning (seat, "Can't create unsupported display server '%s'", session_type);
-        return NULL;
-    }
-}
-
-static gboolean
-seat_unity_display_server_is_used (Seat *seat, DisplayServer *display_server)
-{
-    if (display_server == DISPLAY_SERVER (SEAT_UNITY (seat)->priv->compositor))
-        return TRUE;
-
-    return SEAT_CLASS (seat_unity_parent_class)->display_server_is_used (seat, display_server);
-}
-
-static GreeterSession *
-seat_unity_create_greeter_session (Seat *seat)
-{
-    GreeterSession *greeter_session = SEAT_CLASS (seat_unity_parent_class)->create_greeter_session (seat);
-    session_set_env (SESSION (greeter_session), "XDG_SEAT", seat_get_name (seat));
-
-    gint vt = display_server_get_vt (DISPLAY_SERVER (SEAT_UNITY (seat)->priv->compositor));
-    if (vt >= 0)
-    {
-        g_autofree gchar *value = g_strdup_printf ("%d", vt);
-        session_set_env (SESSION (greeter_session), "XDG_VTNR", value);
-    }
-
-    return greeter_session;
-}
-
-static Session *
-seat_unity_create_session (Seat *seat)
-{
-    Session *session = SEAT_CLASS (seat_unity_parent_class)->create_session (seat);
-    session_set_env (session, "XDG_SEAT", seat_get_name (seat));
-
-    gint vt = display_server_get_vt (DISPLAY_SERVER (SEAT_UNITY (seat)->priv->compositor));
-    if (vt >= 0)
-    {
-        g_autofree gchar *value = g_strdup_printf ("%d", vt);
-        session_set_env (SESSION (session), "XDG_VTNR", value);
-    }
-
-    return session;
-}
-
-static const gchar *
-get_mir_id (Session *session)
-{
-    if (!session)
-        return NULL;
-
-    DisplayServer *display_server = session_get_display_server (session);
-    if (IS_UNITY_SYSTEM_COMPOSITOR (display_server))
-        return session_get_env (session, "MIR_SERVER_NAME");
-    if (IS_X_SERVER_XMIR (display_server))
-        return x_server_xmir_get_mir_id (X_SERVER_XMIR (display_server));
-
-    return NULL;
-}
-
-static void
-seat_unity_set_active_session (Seat *s, Session *session)
-{
-    SeatUnity *seat = SEAT_UNITY (s);
-
-    const gchar *old_id = get_mir_id (seat->priv->active_session);
-    const gchar *new_id = get_mir_id (session);
-
-    g_clear_object (&seat->priv->active_session);
-    seat->priv->active_session = g_object_ref (session);
-
-    if (g_strcmp0 (old_id, new_id) != 0)
-        unity_system_compositor_set_active_session (seat->priv->compositor, new_id);
-
-    SEAT_CLASS (seat_unity_parent_class)->set_active_session (s, session);
-}
-
-static Session *
-seat_unity_get_active_session (Seat *seat)
-{
-    return SEAT_UNITY (seat)->priv->active_session;
-}
-
-static void
-seat_unity_set_next_session (Seat *seat, Session *session)
-{
-    if (!session)
-        return;
-
-    DisplayServer *display_server = session_get_display_server (session);
-
-    const gchar *id = NULL;
-    if (IS_X_SERVER_LOCAL (display_server))
-        id = x_server_xmir_get_mir_id (X_SERVER_XMIR (display_server));
-    else
-        id = session_get_env (session, "MIR_SERVER_NAME");
-
-    if (id)
-    {
-        l_debug (seat, "Marking Mir session %s as the next session", id);
-        unity_system_compositor_set_next_session (SEAT_UNITY (seat)->priv->compositor, id);
-    }
-    else
-    {
-        l_debug (seat, "Failed to work out session ID to mark");
-    }
-
-    SEAT_CLASS (seat_unity_parent_class)->set_next_session (seat, session);
-}
-
-static void
-seat_unity_run_script (Seat *seat, DisplayServer *display_server, Process *script)
-{
-    if (IS_X_SERVER_XMIR (display_server))
-    {
-        XServerXmir *x_server = X_SERVER_XMIR (display_server);
-        const gchar *path = x_server_local_get_authority_file_path (X_SERVER_LOCAL (x_server));
-        process_set_env (script, "DISPLAY", x_server_get_address (X_SERVER (x_server)));
-        process_set_env (script, "XAUTHORITY", path);
-    }
-
-    SEAT_CLASS (seat_unity_parent_class)->run_script (seat, display_server, script);
-}
-
-static void
-seat_unity_stop (Seat *seat)
-{
-    /* Stop the compositor first */
-    if (SEAT_UNITY (seat)->priv->compositor)
-        display_server_stop (DISPLAY_SERVER (SEAT_UNITY (seat)->priv->compositor));
-
-    /* Stop the XDMCP X server first */
-    if (SEAT_UNITY (seat)->priv->xdmcp_x_server)
-        display_server_stop (DISPLAY_SERVER (SEAT_UNITY (seat)->priv->xdmcp_x_server));
-
-    check_stopped (SEAT_UNITY (seat));
-}
-
-static void
-seat_unity_init (SeatUnity *seat)
-{
-    seat->priv = G_TYPE_INSTANCE_GET_PRIVATE (seat, SEAT_UNITY_TYPE, SeatUnityPrivate);
-}
-
-static void
-seat_unity_finalize (GObject *object)
-{
-    SeatUnity *seat = SEAT_UNITY (object);
-
-    g_clear_object (&seat->priv->compositor);
-    if (seat->priv->xdmcp_x_server)
-    {
-        g_signal_handlers_disconnect_matched (seat->priv->xdmcp_x_server, G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, seat);
-        g_object_unref (seat->priv->xdmcp_x_server);
-    }
-    g_clear_object (&seat->priv->active_session);
-    g_clear_object (&seat->priv->active_display_server);
-
-    G_OBJECT_CLASS (seat_unity_parent_class)->finalize (object);
-}
-
-static void
-seat_unity_class_init (SeatUnityClass *klass)
-{
-    GObjectClass *object_class = G_OBJECT_CLASS (klass);
-    SeatClass *seat_class = SEAT_CLASS (klass);
-
-    object_class->finalize = seat_unity_finalize;
-    seat_class->setup = seat_unity_setup;
-    seat_class->start = seat_unity_start;
-    seat_class->create_display_server = seat_unity_create_display_server;
-    seat_class->display_server_is_used = seat_unity_display_server_is_used;
-    seat_class->create_greeter_session = seat_unity_create_greeter_session;
-    seat_class->create_session = seat_unity_create_session;
-    seat_class->set_active_session = seat_unity_set_active_session;
-    seat_class->get_active_session = seat_unity_get_active_session;
-    seat_class->set_next_session = seat_unity_set_next_session;
-    seat_class->run_script = seat_unity_run_script;
-    seat_class->stop = seat_unity_stop;
-
-    g_type_class_add_private (klass, sizeof (SeatUnityPrivate));
-}
diff -pruN 1.26.0-8/src/seat-unity.h 1.30.0-0ubuntu8/src/seat-unity.h
--- 1.26.0-8/src/seat-unity.h	2017-10-05 22:20:29.000000000 +0000
+++ 1.30.0-0ubuntu8/src/seat-unity.h	1970-01-01 00:00:00.000000000 +0000
@@ -1,40 +0,0 @@
-/*
- * Copyright (C) 2012-2013 Robert Ancell.
- * Author: Robert Ancell <robert.ancell@canonical.com>
- *
- * This program is free software: you can redistribute it and/or modify it under
- * the terms of the GNU General Public License as published by the Free Software
- * Foundation, either version 3 of the License, or (at your option) any later
- * version. See http://www.gnu.org/copyleft/gpl.html the full text of the
- * license.
- */
-
-#ifndef _SEAT_UNITY_H_
-#define _SEAT_UNITY_H_
-
-#include <glib-object.h>
-#include "seat.h"
-
-G_BEGIN_DECLS
-
-#define SEAT_UNITY_TYPE (seat_unity_get_type())
-#define SEAT_UNITY(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SEAT_UNITY_TYPE, SeatUnity))
-
-typedef struct SeatUnityPrivate SeatUnityPrivate;
-
-typedef struct
-{
-    Seat              parent_instance;
-    SeatUnityPrivate *priv;
-} SeatUnity;
-
-typedef struct
-{
-    SeatClass parent_class;
-} SeatUnityClass;
-
-GType seat_unity_get_type (void);
-
-G_END_DECLS
-
-#endif /* _SEAT_UNITY_H_ */
diff -pruN 1.26.0-8/src/seat-xdmcp-session.c 1.30.0-0ubuntu8/src/seat-xdmcp-session.c
--- 1.26.0-8/src/seat-xdmcp-session.c	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/src/seat-xdmcp-session.c	2018-09-05 01:33:31.000000000 +0000
@@ -14,22 +14,24 @@
 #include "seat-xdmcp-session.h"
 #include "x-server-remote.h"
 
-struct SeatXDMCPSessionPrivate
+typedef struct
 {
     /* Session being serviced */
     XDMCPSession *session;
 
     /* X server using XDMCP connection */
     XServerRemote *x_server;
-};
+} SeatXDMCPSessionPrivate;
 
-G_DEFINE_TYPE (SeatXDMCPSession, seat_xdmcp_session, SEAT_TYPE)
+G_DEFINE_TYPE_WITH_PRIVATE (SeatXDMCPSession, seat_xdmcp_session, SEAT_TYPE)
 
 SeatXDMCPSession *
 seat_xdmcp_session_new (XDMCPSession *session)
 {
     SeatXDMCPSession *seat = g_object_new (SEAT_XDMCP_SESSION_TYPE, NULL);
-    seat->priv->session = g_object_ref (session);
+    SeatXDMCPSessionPrivate *priv = seat_xdmcp_session_get_instance_private (seat);
+
+    priv->session = g_object_ref (session);
 
     return seat;
 }
@@ -37,34 +39,36 @@ seat_xdmcp_session_new (XDMCPSession *se
 static DisplayServer *
 seat_xdmcp_session_create_display_server (Seat *seat, Session *session)
 {
+    SeatXDMCPSessionPrivate *priv = seat_xdmcp_session_get_instance_private (SEAT_XDMCP_SESSION (seat));
+
     if (strcmp (session_get_session_type (session), "x") != 0)
         return NULL;
 
     /* Only create one server for the lifetime of this seat (XDMCP clients reconnect on logout) */
-    if (SEAT_XDMCP_SESSION (seat)->priv->x_server)
+    if (priv->x_server)
         return NULL;
 
-    XAuthority *authority = xdmcp_session_get_authority (SEAT_XDMCP_SESSION (seat)->priv->session);
-    g_autofree gchar *host = g_inet_address_to_string (xdmcp_session_get_address (SEAT_XDMCP_SESSION (seat)->priv->session));
+    XAuthority *authority = xdmcp_session_get_authority (priv->session);
+    g_autofree gchar *host = g_inet_address_to_string (xdmcp_session_get_address (priv->session));
 
-    SEAT_XDMCP_SESSION (seat)->priv->x_server = x_server_remote_new (host, xdmcp_session_get_display_number (SEAT_XDMCP_SESSION (seat)->priv->session), authority);
+    priv->x_server = x_server_remote_new (host, xdmcp_session_get_display_number (priv->session), authority);
 
-    return g_object_ref (DISPLAY_SERVER (SEAT_XDMCP_SESSION (seat)->priv->x_server));
+    return g_object_ref (DISPLAY_SERVER (priv->x_server));
 }
 
 static void
 seat_xdmcp_session_init (SeatXDMCPSession *seat)
 {
-    seat->priv = G_TYPE_INSTANCE_GET_PRIVATE (seat, SEAT_XDMCP_SESSION_TYPE, SeatXDMCPSessionPrivate);
 }
 
 static void
 seat_xdmcp_session_finalize (GObject *object)
 {
     SeatXDMCPSession *self = SEAT_XDMCP_SESSION (object);
+    SeatXDMCPSessionPrivate *priv = seat_xdmcp_session_get_instance_private (self);
 
-    g_clear_object (&self->priv->session);
-    g_clear_object (&self->priv->x_server);
+    g_clear_object (&priv->session);
+    g_clear_object (&priv->x_server);
 
     G_OBJECT_CLASS (seat_xdmcp_session_parent_class)->finalize (object);
 }
@@ -77,6 +81,4 @@ seat_xdmcp_session_class_init (SeatXDMCP
 
     seat_class->create_display_server = seat_xdmcp_session_create_display_server;
     object_class->finalize = seat_xdmcp_session_finalize;
-
-    g_type_class_add_private (klass, sizeof (SeatXDMCPSessionPrivate));
 }
diff -pruN 1.26.0-8/src/seat-xdmcp-session.h 1.30.0-0ubuntu8/src/seat-xdmcp-session.h
--- 1.26.0-8/src/seat-xdmcp-session.h	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/src/seat-xdmcp-session.h	2018-09-05 01:33:31.000000000 +0000
@@ -20,12 +20,9 @@ G_BEGIN_DECLS
 #define SEAT_XDMCP_SESSION_TYPE (seat_xdmcp_session_get_type())
 #define SEAT_XDMCP_SESSION(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SEAT_XDMCP_SESSION_TYPE, SeatXDMCPSession))
 
-typedef struct SeatXDMCPSessionPrivate SeatXDMCPSessionPrivate;
-
 typedef struct
 {
-    Seat                     parent_instance;
-    SeatXDMCPSessionPrivate *priv;
+    Seat parent_instance;
 } SeatXDMCPSession;
 
 typedef struct
diff -pruN 1.26.0-8/src/seat-xremote.h 1.30.0-0ubuntu8/src/seat-xremote.h
--- 1.26.0-8/src/seat-xremote.h	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/src/seat-xremote.h	2018-09-05 01:33:31.000000000 +0000
@@ -22,7 +22,7 @@ G_BEGIN_DECLS
 
 typedef struct
 {
-    Seat               parent_instance;
+    Seat parent_instance;
 } SeatXRemote;
 
 typedef struct
diff -pruN 1.26.0-8/src/seat-xvnc.c 1.30.0-0ubuntu8/src/seat-xvnc.c
--- 1.26.0-8/src/seat-xvnc.c	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/src/seat-xvnc.c	2018-09-05 01:33:31.000000000 +0000
@@ -15,21 +15,23 @@
 #include "x-server-xvnc.h"
 #include "configuration.h"
 
-G_DEFINE_TYPE (SeatXVNC, seat_xvnc, SEAT_TYPE)
-
-struct SeatXVNCPrivate
+typedef struct
 {
     /* VNC connection */
     GSocket *connection;
 
     /* X server using VNC connection */
     XServerXVNC *x_server;
-};
+} SeatXVNCPrivate;
+
+G_DEFINE_TYPE_WITH_PRIVATE (SeatXVNC, seat_xvnc, SEAT_TYPE)
 
 SeatXVNC *seat_xvnc_new (GSocket *connection)
 {
     SeatXVNC *seat = g_object_new (SEAT_XVNC_TYPE, NULL);
-    seat->priv->connection = g_object_ref (connection);
+    SeatXVNCPrivate *priv = seat_xvnc_get_instance_private (seat);
+
+    priv->connection = g_object_ref (connection);
 
     return seat;
 }
@@ -44,19 +46,21 @@ seat_xvnc_setup (Seat *seat)
 static DisplayServer *
 seat_xvnc_create_display_server (Seat *seat, Session *session)
 {
+    SeatXVNCPrivate *priv = seat_xvnc_get_instance_private (SEAT_XVNC (seat));
+
     if (strcmp (session_get_session_type (session), "x") != 0)
         return NULL;
 
     /* Can only create one server for the lifetime of this seat (can't re-use VNC connection) */
-    if (SEAT_XVNC (seat)->priv->x_server)
+    if (priv->x_server)
         return NULL;
 
     g_autoptr(XServerXVNC) x_server = x_server_xvnc_new ();
-    SEAT_XVNC (seat)->priv->x_server = g_object_ref (x_server);
+    priv->x_server = g_object_ref (x_server);
     g_autofree gchar *number = g_strdup_printf ("%d", x_server_get_display_number (X_SERVER (x_server)));
     g_autoptr(XAuthority) cookie = x_authority_new_local_cookie (number);
     x_server_set_authority (X_SERVER (x_server), cookie);
-    x_server_xvnc_set_socket (x_server, g_socket_get_fd (SEAT_XVNC (seat)->priv->connection));
+    x_server_xvnc_set_socket (x_server, g_socket_get_fd (priv->connection));
 
     const gchar *command = config_get_string (config_get_instance (), "VNCServer", "command");
     if (command)
@@ -85,9 +89,10 @@ seat_xvnc_create_display_server (Seat *s
 static void
 seat_xvnc_run_script (Seat *seat, DisplayServer *display_server, Process *script)
 {
+    SeatXVNCPrivate *priv = seat_xvnc_get_instance_private (SEAT_XVNC (seat));
     XServerXVNC *x_server = X_SERVER_XVNC (display_server);
 
-    GInetSocketAddress *address = G_INET_SOCKET_ADDRESS (g_socket_get_remote_address (SEAT_XVNC (seat)->priv->connection, NULL));
+    GInetSocketAddress *address = G_INET_SOCKET_ADDRESS (g_socket_get_remote_address (priv->connection, NULL));
     g_autofree gchar *hostname = g_inet_address_to_string (g_inet_socket_address_get_address (address));
     const gchar *path = x_server_local_get_authority_file_path (X_SERVER_LOCAL (x_server));
 
@@ -101,16 +106,16 @@ seat_xvnc_run_script (Seat *seat, Displa
 static void
 seat_xvnc_init (SeatXVNC *seat)
 {
-    seat->priv = G_TYPE_INSTANCE_GET_PRIVATE (seat, SEAT_XVNC_TYPE, SeatXVNCPrivate);
 }
 
 static void
 seat_xvnc_session_finalize (GObject *object)
 {
     SeatXVNC *self = SEAT_XVNC (object);
+    SeatXVNCPrivate *priv = seat_xvnc_get_instance_private (self);
 
-    g_clear_object (&self->priv->connection);
-    g_clear_object (&self->priv->x_server);
+    g_clear_object (&priv->connection);
+    g_clear_object (&priv->x_server);
 
     G_OBJECT_CLASS (seat_xvnc_parent_class)->finalize (object);
 }
@@ -125,6 +130,4 @@ seat_xvnc_class_init (SeatXVNCClass *kla
     seat_class->create_display_server = seat_xvnc_create_display_server;
     seat_class->run_script = seat_xvnc_run_script;
     object_class->finalize = seat_xvnc_session_finalize;
-
-    g_type_class_add_private (klass, sizeof (SeatXVNCPrivate));
 }
diff -pruN 1.26.0-8/src/seat-xvnc.h 1.30.0-0ubuntu8/src/seat-xvnc.h
--- 1.26.0-8/src/seat-xvnc.h	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/src/seat-xvnc.h	2018-09-05 01:33:31.000000000 +0000
@@ -20,12 +20,9 @@ G_BEGIN_DECLS
 #define SEAT_XVNC_TYPE (seat_xvnc_get_type())
 #define SEAT_XVNC(obj) (G_TYPE_CHECK_INSTANCE_CAST ((obj), SEAT_XVNC_TYPE, SeatXVNC))
 
-typedef struct SeatXVNCPrivate SeatXVNCPrivate;
-
 typedef struct
 {
-    Seat               parent_instance;
-    SeatXVNCPrivate *priv;
+    Seat parent_instance;
 } SeatXVNC;
 
 typedef struct
diff -pruN 1.26.0-8/src/seat.c 1.30.0-0ubuntu8/src/seat.c
--- 1.26.0-8/src/seat.c	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/src/seat.c	2019-05-17 04:41:32.000000000 +0000
@@ -28,7 +28,7 @@ enum {
 };
 static guint signals[LAST_SIGNAL] = { 0 };
 
-struct SeatPrivate
+typedef struct
 {
     /* XDG name for this seat */
     gchar *name;
@@ -68,11 +68,12 @@ struct SeatPrivate
 
     /* The greeter to be started to replace the current one */
     GreeterSession *replacement_greeter;
-};
+} SeatPrivate;
 
 static void seat_logger_iface_init (LoggerInterface *iface);
 
 G_DEFINE_TYPE_WITH_CODE (Seat, seat, G_TYPE_OBJECT,
+                         G_ADD_PRIVATE (Seat)
                          G_IMPLEMENT_INTERFACE (
                              LOGGER_TYPE, seat_logger_iface_init))
 
@@ -128,30 +129,35 @@ seat_new (const gchar *module_name)
 void
 seat_set_name (Seat *seat, const gchar *name)
 {
+    SeatPrivate *priv = seat_get_instance_private (seat);
+
     g_return_if_fail (seat != NULL);
-    g_free (seat->priv->name);
-    seat->priv->name = g_strdup (name);
+    g_free (priv->name);
+    priv->name = g_strdup (name);
 }
 
 void
 seat_set_property (Seat *seat, const gchar *name, const gchar *value)
 {
+    SeatPrivate *priv = seat_get_instance_private (seat);
     g_return_if_fail (seat != NULL);
-    g_hash_table_insert (seat->priv->properties, g_strdup (name), g_strdup (value));
+    g_hash_table_insert (priv->properties, g_strdup (name), g_strdup (value));
 }
 
 const gchar *
 seat_get_string_property (Seat *seat, const gchar *name)
 {
+    SeatPrivate *priv = seat_get_instance_private (seat);
     g_return_val_if_fail (seat != NULL, NULL);
-    return g_hash_table_lookup (seat->priv->properties, name);
+    return g_hash_table_lookup (priv->properties, name);
 }
 
 gchar **
 seat_get_string_list_property (Seat *seat, const gchar *name)
 {
+    SeatPrivate *priv = seat_get_instance_private (seat);
     g_return_val_if_fail (seat != NULL, NULL);
-    return g_strsplit (g_hash_table_lookup (seat->priv->properties, name), ";", 0);
+    return g_strsplit (g_hash_table_lookup (priv->properties, name), ";", 0);
 }
 
 gboolean
@@ -180,41 +186,48 @@ seat_get_integer_property (Seat *seat, c
 const gchar *
 seat_get_name (Seat *seat)
 {
-    return seat->priv->name;
+    SeatPrivate *priv = seat_get_instance_private (seat);
+    g_return_val_if_fail (seat != NULL, NULL);
+    return priv->name;
 }
 
 void
 seat_set_supports_multi_session (Seat *seat, gboolean supports_multi_session)
 {
+    SeatPrivate *priv = seat_get_instance_private (seat);
     g_return_if_fail (seat != NULL);
-    seat->priv->supports_multi_session = supports_multi_session;
+    priv->supports_multi_session = supports_multi_session;
 }
 
 void
 seat_set_share_display_server (Seat *seat, gboolean share_display_server)
 {
+    SeatPrivate *priv = seat_get_instance_private (seat);
     g_return_if_fail (seat != NULL);
-    seat->priv->share_display_server = share_display_server;
+    priv->share_display_server = share_display_server;
 }
 
 gboolean
 seat_start (Seat *seat)
 {
+    SeatPrivate *priv = seat_get_instance_private (seat);
+
     g_return_val_if_fail (seat != NULL, FALSE);
 
     l_debug (seat, "Starting");
 
     SEAT_GET_CLASS (seat)->setup (seat);
-    seat->priv->started = SEAT_GET_CLASS (seat)->start (seat);
+    priv->started = SEAT_GET_CLASS (seat)->start (seat);
 
-    return seat->priv->started;
+    return priv->started;
 }
 
 GList *
 seat_get_sessions (Seat *seat)
 {
+    SeatPrivate *priv = seat_get_instance_private (seat);
     g_return_val_if_fail (seat != NULL, NULL);
-    return seat->priv->sessions;
+    return priv->sessions;
 }
 
 static gboolean
@@ -227,12 +240,14 @@ set_greeter_idle (gpointer greeter)
 void
 seat_set_active_session (Seat *seat, Session *session)
 {
+    SeatPrivate *priv = seat_get_instance_private (seat);
+
     g_return_if_fail (seat != NULL);
 
     SEAT_GET_CLASS (seat)->set_active_session (seat, session);
 
     /* Stop any greeters */
-    for (GList *link = seat->priv->sessions; link; link = link->next)
+    for (GList *link = priv->sessions; link; link = link->next)
     {
         Session *s = link->data;
 
@@ -244,7 +259,7 @@ seat_set_active_session (Seat *seat, Ses
             Greeter *greeter = greeter_session_get_greeter (GREETER_SESSION (s));
             if (greeter_get_resettable (greeter))
             {
-                if (seat->priv->active_session == s)
+                if (priv->active_session == s)
                 {
                     l_debug (seat, "Idling greeter");
                     /* Do this in an idle callback, because we might very well
@@ -263,12 +278,12 @@ seat_set_active_session (Seat *seat, Ses
     }
 
     /* Lock previous sessions */
-    if (seat->priv->active_session && session != seat->priv->active_session && !IS_GREETER_SESSION (seat->priv->active_session))
-        session_lock (seat->priv->active_session);
+    if (priv->active_session && session != priv->active_session && !IS_GREETER_SESSION (priv->active_session))
+        session_lock (priv->active_session);
 
     session_activate (session);
-    g_clear_object (&seat->priv->active_session);
-    seat->priv->active_session = g_object_ref (session);
+    g_clear_object (&priv->active_session);
+    priv->active_session = g_object_ref (session);
 }
 
 Session *
@@ -281,8 +296,9 @@ seat_get_active_session (Seat *seat)
 Session *
 seat_get_next_session (Seat *seat)
 {
+    SeatPrivate *priv = seat_get_instance_private (seat);
     g_return_val_if_fail (seat != NULL, NULL);
-    return seat->priv->next_session;
+    return priv->next_session;
 }
 
 /**
@@ -297,8 +313,9 @@ seat_get_next_session (Seat *seat)
 Session *
 seat_get_expected_active_session (Seat *seat)
 {
+    SeatPrivate *priv = seat_get_instance_private (seat);
     g_return_val_if_fail (seat != NULL, NULL);
-    return seat->priv->active_session;
+    return priv->active_session;
 }
 
 /**
@@ -312,15 +329,18 @@ seat_get_expected_active_session (Seat *
 void
 seat_set_externally_activated_session (Seat *seat, Session *session)
 {
+    SeatPrivate *priv = seat_get_instance_private (seat);
     g_return_if_fail (seat != NULL);
-    g_clear_object (&seat->priv->active_session);
-    seat->priv->active_session = g_object_ref (session);
+    g_clear_object (&priv->active_session);
+    priv->active_session = g_object_ref (session);
 }
 
 Session *
 seat_find_session_by_login1_id (Seat *seat, const gchar *login1_session_id)
 {
-    for (GList *session_link = seat->priv->sessions; session_link; session_link = session_link->next)
+    SeatPrivate *priv = seat_get_instance_private (seat);
+
+    for (GList *session_link = priv->sessions; session_link; session_link = session_link->next)
     {
         Session *session = session_link->data;
         if (g_strcmp0 (login1_session_id, session_get_login1_session_id (session)) == 0)
@@ -333,8 +353,9 @@ seat_find_session_by_login1_id (Seat *se
 gboolean
 seat_get_can_switch (Seat *seat)
 {
+    SeatPrivate *priv = seat_get_instance_private (seat);
     g_return_val_if_fail (seat != NULL, FALSE);
-    return seat_get_boolean_property (seat, "allow-user-switching") && seat->priv->supports_multi_session;
+    return seat_get_boolean_property (seat, "allow-user-switching") && priv->supports_multi_session;
 }
 
 gboolean
@@ -366,6 +387,8 @@ run_script (Seat *seat, DisplayServer *d
     if (g_getenv ("LIGHTDM_TEST_ROOT"))
         process_set_env (script, "LIGHTDM_TEST_ROOT", g_getenv ("LIGHTDM_TEST_ROOT"));
 
+    process_set_env (script, "XDG_SEAT", seat_get_name (seat));
+
     if (user)
     {
         process_set_env (script, "USER", user_get_name (user));
@@ -412,12 +435,14 @@ emit_upstart_signal (const gchar *signal
 static void
 check_stopped (Seat *seat)
 {
-    if (seat->priv->stopping &&
-        !seat->priv->stopped &&
-        g_list_length (seat->priv->display_servers) == 0 &&
-        g_list_length (seat->priv->sessions) == 0)
+    SeatPrivate *priv = seat_get_instance_private (seat);
+
+    if (priv->stopping &&
+        !priv->stopped &&
+        g_list_length (priv->display_servers) == 0 &&
+        g_list_length (priv->sessions) == 0)
     {
-        seat->priv->stopped = TRUE;
+        priv->stopped = TRUE;
         l_debug (seat, "Stopped");
         g_signal_emit (seat, signals[STOPPED], 0);
     }
@@ -426,6 +451,8 @@ check_stopped (Seat *seat)
 static void
 display_server_stopped_cb (DisplayServer *display_server, Seat *seat)
 {
+    SeatPrivate *priv = seat_get_instance_private (seat);
+
     l_debug (seat, "Display server stopped");
 
     /* Run a script right after stopping the display server */
@@ -434,9 +461,9 @@ display_server_stopped_cb (DisplayServer
         run_script (seat, NULL, script, NULL);
 
     g_signal_handlers_disconnect_matched (display_server, G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, seat);
-    seat->priv->display_servers = g_list_remove (seat->priv->display_servers, display_server);
+    priv->display_servers = g_list_remove (priv->display_servers, display_server);
 
-    if (seat->priv->stopping || !seat->priv->started)
+    if (priv->stopping || !priv->started)
     {
         check_stopped (seat);
         g_object_unref (display_server);
@@ -444,7 +471,7 @@ display_server_stopped_cb (DisplayServer
     }
 
     /* Stop all sessions on this display server */
-    GList *list = g_list_copy (seat->priv->sessions);
+    GList *list = g_list_copy (priv->sessions);
     for (GList *link = list; link; link = link->next)
         g_object_ref (link->data);
     for (GList *link = list; link; link = link->next)
@@ -461,7 +488,7 @@ display_server_stopped_cb (DisplayServer
 
         /* Stop seat if this is the only display server and it failed to start a greeter */
         if (is_failed_greeter &&
-            g_list_length (seat->priv->display_servers) == 0)
+            g_list_length (priv->display_servers) == 0)
         {
             l_debug (seat, "Stopping; greeter display server failed to start");
             seat_stop (seat);
@@ -469,7 +496,7 @@ display_server_stopped_cb (DisplayServer
     }
     g_list_free_full (list, g_object_unref);
 
-    if (!seat->priv->stopping)
+    if (!priv->stopping)
     {
         /* If we were the active session, switch to a greeter */
         Session *active_session = seat_get_active_session (seat);
@@ -490,13 +517,16 @@ display_server_stopped_cb (DisplayServer
 static gboolean
 can_share_display_server (Seat *seat, DisplayServer *display_server)
 {
-    return seat->priv->share_display_server && display_server_get_can_share (display_server);
+    SeatPrivate *priv = seat_get_instance_private (seat);
+    return priv->share_display_server && display_server_get_can_share (display_server);
 }
 
 static GreeterSession *
 find_greeter_session (Seat *seat)
 {
-    for (GList *link = seat->priv->sessions; link; link = link->next)
+    SeatPrivate *priv = seat_get_instance_private (seat);
+
+    for (GList *link = priv->sessions; link; link = link->next)
     {
         Session *session = link->data;
         if (!session_get_is_stopping (session) && IS_GREETER_SESSION (session))
@@ -509,7 +539,9 @@ find_greeter_session (Seat *seat)
 static GreeterSession *
 find_resettable_greeter (Seat *seat)
 {
-    for (GList *link = seat->priv->sessions; link; link = link->next)
+    SeatPrivate *priv = seat_get_instance_private (seat);
+
+    for (GList *link = priv->sessions; link; link = link->next)
     {
         Session *session = link->data;
         if (!session_get_is_stopping (session) && IS_GREETER_SESSION (session) &&
@@ -534,6 +566,8 @@ set_greeter_hints (Seat *seat, Greeter *
 static void
 switch_to_greeter_from_failed_session (Seat *seat, Session *session)
 {
+    SeatPrivate *priv = seat_get_instance_private (seat);
+
     /* Switch to greeter if one open */
     GreeterSession *greeter_session = find_resettable_greeter (seat);
     gboolean existing = FALSE;
@@ -561,8 +595,8 @@ switch_to_greeter_from_failed_session (S
     }
     else
     {
-        g_clear_object (&seat->priv->session_to_activate);
-        seat->priv->session_to_activate = g_object_ref (SESSION (greeter_session));
+        g_clear_object (&priv->session_to_activate);
+        priv->session_to_activate = g_object_ref (SESSION (greeter_session));
 
         if (can_share_display_server (seat, session_get_display_server (session)))
             session_set_display_server (SESSION (greeter_session), session_get_display_server (session));
@@ -591,7 +625,7 @@ start_session (Seat *seat, Session *sess
     if (IS_GREETER_SESSION (session))
     {
         g_autofree gchar *log_dir = config_get_string (config_get_instance (), "LightDM", "log-directory");
-        g_autofree gchar *filename = g_strdup_printf ("%s-greeter.log", seat->priv->name);
+        g_autofree gchar *filename = g_strdup_printf ("%s-greeter.log", seat_get_name (seat));
         g_autofree gchar *log_filename = g_build_filename (log_dir, filename, NULL);
         gboolean backup_logs = config_get_boolean (config_get_instance (), "LightDM", "backup-logs");
         session_set_log_file (session, log_filename, backup_logs ? LOG_MODE_BACKUP_AND_TRUNCATE : LOG_MODE_APPEND);
@@ -614,6 +648,8 @@ start_session (Seat *seat, Session *sess
 static void
 run_session (Seat *seat, Session *session)
 {
+    SeatPrivate *priv = seat_get_instance_private (seat);
+
     const gchar *script;
     if (IS_GREETER_SESSION (session))
         script = seat_get_string_property (seat, "greeter-setup-script");
@@ -636,12 +672,12 @@ run_session (Seat *seat, Session *sessio
 
     // FIXME: Wait until the session is ready
 
-    if (session == seat->priv->session_to_activate)
+    if (session == priv->session_to_activate)
     {
         seat_set_active_session (seat, session);
-        g_clear_object (&seat->priv->session_to_activate);
+        g_clear_object (&priv->session_to_activate);
     }
-    else if (seat->priv->active_session)
+    else if (priv->active_session)
     {
         /* Multiple sessions can theoretically be on the same VT (especially
            if using Mir).  If a new session appears on an existing active VT,
@@ -650,17 +686,19 @@ run_session (Seat *seat, Session *sessio
            session that we want to be active.  So let's be explicit and
            re-activate the correct session whenever a new session starts.
            There's no harm to do this in seats that enforce separate VTs. */
-        session_activate (seat->priv->active_session);
+        session_activate (priv->active_session);
     }
 }
 
 static Session *
 find_user_session (Seat *seat, const gchar *username, Session *ignore_session)
 {
+    SeatPrivate *priv = seat_get_instance_private (seat);
+
     if (!username)
         return NULL;
 
-    for (GList *link = seat->priv->sessions; link; link = link->next)
+    for (GList *link = priv->sessions; link; link = link->next)
     {
         Session *session = link->data;
 
@@ -677,10 +715,11 @@ find_user_session (Seat *seat, const gch
 static void
 greeter_active_username_changed_cb (Greeter *greeter, GParamSpec *pspec, Seat *seat)
 {
-    Session *session = find_user_session (seat, greeter_get_active_username (greeter), seat->priv->active_session);
+    SeatPrivate *priv = seat_get_instance_private (seat);
+    Session *session = find_user_session (seat, greeter_get_active_username (greeter), priv->active_session);
 
-    g_clear_object (&seat->priv->next_session);
-    seat->priv->next_session = session ? g_object_ref (session) : NULL;
+    g_clear_object (&priv->next_session);
+    priv->next_session = session ? g_object_ref (session) : NULL;
 
     SEAT_GET_CLASS (seat)->set_next_session (seat, session);
 }
@@ -718,16 +757,18 @@ session_authentication_complete_cb (Sess
 static void
 session_stopped_cb (Session *session, Seat *seat)
 {
+    SeatPrivate *priv = seat_get_instance_private (seat);
+
     l_debug (seat, "Session stopped");
 
     g_signal_handlers_disconnect_matched (session, G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, seat);
-    seat->priv->sessions = g_list_remove (seat->priv->sessions, session);
-    if (session == seat->priv->active_session)
-        g_clear_object (&seat->priv->active_session);
-    if (session == seat->priv->next_session)
-        g_clear_object (&seat->priv->next_session);
-    if (session == seat->priv->session_to_activate)
-        g_clear_object (&seat->priv->session_to_activate);
+    priv->sessions = g_list_remove (priv->sessions, session);
+    if (session == priv->active_session)
+        g_clear_object (&priv->active_session);
+    if (session == priv->next_session)
+        g_clear_object (&priv->next_session);
+    if (session == priv->session_to_activate)
+        g_clear_object (&priv->session_to_activate);
 
     DisplayServer *display_server = session_get_display_server (session);
 
@@ -741,10 +782,10 @@ session_stopped_cb (Session *session, Se
 
     /* We were waiting for this session, but it didn't start :( */
     // FIXME: Start a greeter on this?
-    if (session == seat->priv->session_to_activate)
-        g_clear_object (&seat->priv->session_to_activate);
+    if (session == priv->session_to_activate)
+        g_clear_object (&priv->session_to_activate);
 
-    if (seat->priv->stopping)
+    if (priv->stopping)
     {
         check_stopped (seat);
         g_object_unref (session);
@@ -752,10 +793,10 @@ session_stopped_cb (Session *session, Se
     }
 
     /* If there is a pending replacement greeter, start it */
-    if (IS_GREETER_SESSION (session) && seat->priv->replacement_greeter)
+    if (IS_GREETER_SESSION (session) && priv->replacement_greeter)
     {
-        GreeterSession *replacement_greeter = seat->priv->replacement_greeter;
-        seat->priv->replacement_greeter = NULL;
+        GreeterSession *replacement_greeter = priv->replacement_greeter;
+        priv->replacement_greeter = NULL;
 
         if (session_get_is_authenticated (SESSION (replacement_greeter)))
         {
@@ -775,7 +816,7 @@ session_stopped_cb (Session *session, Se
         can_share_display_server (seat, display_server) &&
         greeter_get_start_session (greeter_session_get_greeter (GREETER_SESSION (session))))
     {
-        for (GList *link = seat->priv->sessions; link; link = link->next)
+        for (GList *link = priv->sessions; link; link = link->next)
         {
             Session *s = link->data;
 
@@ -799,8 +840,8 @@ session_stopped_cb (Session *session, Se
     /* If this is the greeter and nothing else is running then stop the seat */
     else if (IS_GREETER_SESSION (session) &&
         !greeter_get_start_session (greeter_session_get_greeter (GREETER_SESSION (session))) &&
-        g_list_length (seat->priv->display_servers) == 1 &&
-        g_list_nth_data (seat->priv->display_servers, 0) == display_server)
+        g_list_length (priv->display_servers) == 1 &&
+        g_list_nth_data (priv->display_servers, 0) == display_server)
     {
         l_debug (seat, "Stopping; failed to start a greeter");
         seat_stop (seat);
@@ -857,8 +898,10 @@ set_session_env (Session *session)
 static Session *
 create_session (Seat *seat, gboolean autostart)
 {
+    SeatPrivate *priv = seat_get_instance_private (seat);
+
     Session *session = SEAT_GET_CLASS (seat)->create_session (seat);
-    seat->priv->sessions = g_list_append (seat->priv->sessions, session);
+    priv->sessions = g_list_append (priv->sessions, session);
     if (autostart)
         g_signal_connect (session, SESSION_SIGNAL_AUTHENTICATION_COMPLETE, G_CALLBACK (session_authentication_complete_cb), seat);
     g_signal_connect (session, SESSION_SIGNAL_STOPPED, G_CALLBACK (session_stopped_cb), seat);
@@ -1043,8 +1086,10 @@ create_guest_session (Seat *seat, const
 static Session *
 get_greeter_session (Seat *seat, Greeter *greeter)
 {
+    SeatPrivate *priv = seat_get_instance_private (seat);
+
     /* Stop any greeters */
-    for (GList *link = seat->priv->sessions; link; link = link->next)
+    for (GList *link = priv->sessions; link; link = link->next)
     {
         Session *session = link->data;
 
@@ -1071,6 +1116,8 @@ greeter_create_session_cb (Greeter *gree
 static gboolean
 greeter_start_session_cb (Greeter *greeter, SessionType type, const gchar *session_name, Seat *seat)
 {
+    SeatPrivate *priv = seat_get_instance_private (seat);
+
     /* Get the session to use */
     Session *session;
     if (greeter_get_guest_authenticated (greeter))
@@ -1131,8 +1178,8 @@ greeter_start_session_cb (Greeter *greet
     }
 
     /* Switch to this session when it is ready */
-    g_clear_object (&seat->priv->session_to_activate);
-    seat->priv->session_to_activate = session;
+    g_clear_object (&priv->session_to_activate);
+    priv->session_to_activate = session;
 
     /* Return to existing session if it is open */
     const gchar *username = session_get_username (session);
@@ -1183,6 +1230,8 @@ greeter_start_session_cb (Greeter *greet
 static GreeterSession *
 create_greeter_session (Seat *seat)
 {
+    SeatPrivate *priv = seat_get_instance_private (seat);
+
     l_debug (seat, "Creating greeter session");
 
     g_autofree gchar *sessions_dir = config_get_string (config_get_instance (), "LightDM", "greeters-directory");
@@ -1201,7 +1250,7 @@ create_greeter_session (Seat *seat)
     GreeterSession *greeter_session = SEAT_GET_CLASS (seat)->create_greeter_session (seat);
     Greeter *greeter = greeter_session_get_greeter (greeter_session);
     session_set_config (SESSION (greeter_session), session_config);
-    seat->priv->sessions = g_list_append (seat->priv->sessions, SESSION (greeter_session));
+    priv->sessions = g_list_append (priv->sessions, SESSION (greeter_session));
     g_signal_connect (greeter, GREETER_SIGNAL_ACTIVE_USERNAME_CHANGED, G_CALLBACK (greeter_active_username_changed_cb), seat);
     g_signal_connect (greeter_session, SESSION_SIGNAL_AUTHENTICATION_COMPLETE, G_CALLBACK (session_authentication_complete_cb), seat);
     g_signal_connect (greeter_session, SESSION_SIGNAL_STOPPED, G_CALLBACK (session_stopped_cb), seat);
@@ -1259,7 +1308,9 @@ create_greeter_session (Seat *seat)
 static Session *
 find_session_for_display_server (Seat *seat, DisplayServer *display_server)
 {
-    for (GList *link = seat->priv->sessions; link; link = link->next)
+    SeatPrivate *priv = seat_get_instance_private (seat);
+
+    for (GList *link = priv->sessions; link; link = link->next)
     {
         Session *session = link->data;
 
@@ -1311,6 +1362,8 @@ display_server_ready_cb (DisplayServer *
 static DisplayServer *
 create_display_server (Seat *seat, Session *session)
 {
+    SeatPrivate *priv = seat_get_instance_private (seat);
+
     l_debug (seat, "Creating display server of type %s", session_get_session_type (session));
 
     DisplayServer *display_server = SEAT_GET_CLASS (seat)->create_display_server (seat, session);
@@ -1318,9 +1371,9 @@ create_display_server (Seat *seat, Sessi
         return NULL;
 
     /* Remember this display server */
-    if (!g_list_find (seat->priv->display_servers, display_server))
+    if (!g_list_find (priv->display_servers, display_server))
     {
-        seat->priv->display_servers = g_list_append (seat->priv->display_servers, display_server);
+        priv->display_servers = g_list_append (priv->display_servers, display_server);
         g_signal_connect (display_server, DISPLAY_SERVER_SIGNAL_READY, G_CALLBACK (display_server_ready_cb), seat);
         g_signal_connect (display_server, DISPLAY_SERVER_SIGNAL_STOPPED, G_CALLBACK (display_server_stopped_cb), seat);
     }
@@ -1343,9 +1396,11 @@ start_display_server (Seat *seat, Displa
 gboolean
 seat_switch_to_greeter (Seat *seat)
 {
+    SeatPrivate *priv = seat_get_instance_private (seat);
+
     g_return_val_if_fail (seat != NULL, FALSE);
 
-    if (!seat_get_can_switch (seat) && seat->priv->sessions != NULL)
+    if (!seat_get_can_switch (seat) && priv->sessions != NULL)
         return FALSE;
 
     /* Switch to greeter if one open */
@@ -1361,12 +1416,12 @@ seat_switch_to_greeter (Seat *seat)
     if (!greeter_session)
         return FALSE;
 
-    g_clear_object (&seat->priv->session_to_activate);
-    seat->priv->session_to_activate = g_object_ref (SESSION (greeter_session));
+    g_clear_object (&priv->session_to_activate);
+    priv->session_to_activate = g_object_ref (SESSION (greeter_session));
 
     DisplayServer *display_server = create_display_server (seat, SESSION (greeter_session));
     if (!display_server) {
-        g_clear_object (&seat->priv->session_to_activate);
+        g_clear_object (&priv->session_to_activate);
         return FALSE;
     }
     session_set_display_server (SESSION (greeter_session), display_server);
@@ -1377,6 +1432,8 @@ seat_switch_to_greeter (Seat *seat)
 static void
 switch_authentication_complete_cb (Session *session, Seat *seat)
 {
+    SeatPrivate *priv = seat_get_instance_private (seat);
+
     /* If authenticated, then unlock existing session or start new one */
     if (session_get_is_authenticated (session))
     {
@@ -1391,8 +1448,8 @@ switch_authentication_complete_cb (Sessi
         else
         {
             l_debug (seat, "Session authenticated, starting display server");
-            g_clear_object (&seat->priv->session_to_activate);
-            seat->priv->session_to_activate = g_object_ref (session);
+            g_clear_object (&priv->session_to_activate);
+            priv->session_to_activate = g_object_ref (session);
             DisplayServer *display_server = create_display_server (seat, session);
             session_set_display_server (session, display_server);
             start_display_server (seat, display_server);
@@ -1431,8 +1488,8 @@ switch_authentication_complete_cb (Sessi
     }
     else
     {
-        g_clear_object (&seat->priv->session_to_activate);
-        seat->priv->session_to_activate = g_object_ref (SESSION (greeter_session));
+        g_clear_object (&priv->session_to_activate);
+        priv->session_to_activate = g_object_ref (SESSION (greeter_session));
 
         DisplayServer *display_server = create_display_server (seat, SESSION (greeter_session));
         session_set_display_server (SESSION (greeter_session), display_server);
@@ -1443,6 +1500,8 @@ switch_authentication_complete_cb (Sessi
 gboolean
 seat_switch_to_user (Seat *seat, const gchar *username, const gchar *session_name)
 {
+    SeatPrivate *priv = seat_get_instance_private (seat);
+
     g_return_val_if_fail (seat != NULL, FALSE);
     g_return_val_if_fail (username != NULL, FALSE);
 
@@ -1451,7 +1510,7 @@ seat_switch_to_user (Seat *seat, const g
 
     /* If we're already on this session, then ignore */
     Session *session = find_user_session (seat, username, NULL);
-    if (session && session == seat->priv->active_session)
+    if (session && session == priv->active_session)
         return TRUE;
 
     l_debug (seat, "Switching to user %s", username);
@@ -1467,7 +1526,9 @@ seat_switch_to_user (Seat *seat, const g
 static Session *
 find_guest_session (Seat *seat)
 {
-    for (GList *link = seat->priv->sessions; link; link = link->next)
+    SeatPrivate *priv = seat_get_instance_private (seat);
+
+    for (GList *link = priv->sessions; link; link = link->next)
     {
         Session *session = link->data;
         if (!session_get_is_stopping (session) && session_get_is_guest (session))
@@ -1480,6 +1541,8 @@ find_guest_session (Seat *seat)
 gboolean
 seat_switch_to_guest (Seat *seat, const gchar *session_name)
 {
+    SeatPrivate *priv = seat_get_instance_private (seat);
+
     g_return_val_if_fail (seat != NULL, FALSE);
 
     if (!seat_get_can_switch (seat) || !seat_get_allow_guest (seat))
@@ -1500,8 +1563,8 @@ seat_switch_to_guest (Seat *seat, const
 
     DisplayServer *display_server = create_display_server (seat, session);
 
-    g_clear_object (&seat->priv->session_to_activate);
-    seat->priv->session_to_activate = g_object_ref (session);
+    g_clear_object (&priv->session_to_activate);
+    priv->session_to_activate = g_object_ref (session);
     session_set_pam_service (session, seat_get_string_property (seat, "pam-autologin-service"));
     session_set_display_server (session, display_server);
 
@@ -1511,6 +1574,8 @@ seat_switch_to_guest (Seat *seat, const
 gboolean
 seat_lock (Seat *seat, const gchar *username)
 {
+    SeatPrivate *priv = seat_get_instance_private (seat);
+
     g_return_val_if_fail (seat != NULL, FALSE);
 
     if (!seat_get_can_switch (seat))
@@ -1568,13 +1633,13 @@ seat_lock (Seat *seat, const gchar *user
             display_server = create_display_server (seat, SESSION (greeter_session));
         session_set_display_server (SESSION (greeter_session), display_server);
 
-        g_clear_object (&seat->priv->session_to_activate);
-        seat->priv->session_to_activate = g_object_ref (SESSION (greeter_session));
+        g_clear_object (&priv->session_to_activate);
+        priv->session_to_activate = g_object_ref (SESSION (greeter_session));
 
         if (reuse_xserver)
         {
-            g_clear_object (&seat->priv->replacement_greeter);
-            seat->priv->replacement_greeter = g_object_ref (greeter_session);
+            g_clear_object (&priv->replacement_greeter);
+            priv->replacement_greeter = g_object_ref (greeter_session);
             return TRUE;
         }
         else
@@ -1585,21 +1650,24 @@ seat_lock (Seat *seat, const gchar *user
 void
 seat_stop (Seat *seat)
 {
+    SeatPrivate *priv = seat_get_instance_private (seat);
+
     g_return_if_fail (seat != NULL);
 
-    if (seat->priv->stopping)
+    if (priv->stopping)
         return;
 
     l_debug (seat, "Stopping");
-    seat->priv->stopping = TRUE;
+    priv->stopping = TRUE;
     SEAT_GET_CLASS (seat)->stop (seat);
 }
 
 gboolean
 seat_get_is_stopping (Seat *seat)
 {
+    SeatPrivate *priv = seat_get_instance_private (seat);
     g_return_val_if_fail (seat != NULL, FALSE);
-    return seat->priv->stopping;
+    return priv->stopping;
 }
 
 static void
@@ -1610,6 +1678,8 @@ seat_real_setup (Seat *seat)
 static gboolean
 seat_real_start (Seat *seat)
 {
+    SeatPrivate *priv = seat_get_instance_private (seat);
+
     /* Get autologin settings */
     const gchar *autologin_username = seat_get_string_property (seat, "autologin-user");
     if (g_strcmp0 (autologin_username, "") == 0)
@@ -1639,8 +1709,8 @@ seat_real_start (Seat *seat)
 
         if (session)
         {
-            g_clear_object (&seat->priv->session_to_activate);
-            seat->priv->session_to_activate = g_object_ref (session);
+            g_clear_object (&priv->session_to_activate);
+            priv->session_to_activate = g_object_ref (session);
 
             DisplayServer *display_server = create_display_server (seat, session);
             session_set_display_server (session, display_server);
@@ -1665,9 +1735,9 @@ seat_real_start (Seat *seat)
             return FALSE;
         }
 
-        g_clear_object (&seat->priv->session_to_activate);
+        g_clear_object (&priv->session_to_activate);
         session = SESSION (greeter_session);
-        seat->priv->session_to_activate = g_object_ref (session);
+        priv->session_to_activate = g_object_ref (session);
 
         DisplayServer *display_server = create_display_server (seat, session);
         session_set_display_server (session, display_server);
@@ -1709,7 +1779,9 @@ seat_real_create_display_server (Seat *s
 static gboolean
 seat_real_display_server_is_used (Seat *seat, DisplayServer *display_server)
 {
-    for (GList *link = seat->priv->sessions; link; link = link->next)
+    SeatPrivate *priv = seat_get_instance_private (seat);
+
+    for (GList *link = priv->sessions; link; link = link->next)
     {
         Session *session = link->data;
 
@@ -1782,13 +1854,15 @@ seat_real_get_active_session (Seat *seat
 static void
 seat_real_stop (Seat *seat)
 {
+    SeatPrivate *priv = seat_get_instance_private (seat);
+
     check_stopped (seat);
-    if (seat->priv->stopped)
+    if (priv->stopped)
         return;
 
     /* Stop all the display servers and sessions on the seat. Copy the list as
      * it might be modified if a display server / session stops during this loop */
-    GList *list = g_list_copy (seat->priv->display_servers);
+    GList *list = g_list_copy (priv->display_servers);
     for (GList *link = list; link; link = link->next)
         g_object_ref (link->data);
     for (GList *link = list; link; link = link->next)
@@ -1801,7 +1875,7 @@ seat_real_stop (Seat *seat)
         }
     }
     g_list_free_full (list, g_object_unref);
-    list = g_list_copy (seat->priv->sessions);
+    list = g_list_copy (priv->sessions);
     for (GList *link = list; link; link = link->next)
         g_object_ref (link->data);
     for (GList *link = list; link; link = link->next)
@@ -1819,34 +1893,36 @@ seat_real_stop (Seat *seat)
 static void
 seat_init (Seat *seat)
 {
-    seat->priv = G_TYPE_INSTANCE_GET_PRIVATE (seat, SEAT_TYPE, SeatPrivate);
-    seat->priv->properties = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, g_free);
-    seat->priv->share_display_server = TRUE;
+    SeatPrivate *priv = seat_get_instance_private (seat);
+
+    priv->properties = g_hash_table_new_full (g_str_hash, g_str_equal, g_free, g_free);
+    priv->share_display_server = TRUE;
 }
 
 static void
 seat_finalize (GObject *object)
 {
     Seat *self = SEAT (object);
+    SeatPrivate *priv = seat_get_instance_private (SEAT (self));
 
-    g_free (self->priv->name);
-    g_hash_table_unref (self->priv->properties);
-    for (GList *link = self->priv->display_servers; link; link = link->next)
+    g_free (priv->name);
+    g_hash_table_unref (priv->properties);
+    for (GList *link = priv->display_servers; link; link = link->next)
     {
         DisplayServer *display_server = link->data;
         g_signal_handlers_disconnect_matched (display_server, G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, self);
     }
-    g_list_free_full (self->priv->display_servers, g_object_unref);
-    for (GList *link = self->priv->sessions; link; link = link->next)
+    g_list_free_full (priv->display_servers, g_object_unref);
+    for (GList *link = priv->sessions; link; link = link->next)
     {
         Session *session = link->data;
         g_signal_handlers_disconnect_matched (session, G_SIGNAL_MATCH_DATA, 0, 0, NULL, NULL, self);
     }
-    g_list_free_full (self->priv->sessions, g_object_unref);
-    g_clear_object (&self->priv->active_session);
-    g_clear_object (&self->priv->next_session);
-    g_clear_object (&self->priv->session_to_activate);
-    g_clear_object (&self->priv->replacement_greeter);
+    g_list_free_full (priv->sessions, g_object_unref);
+    g_clear_object (&priv->active_session);
+    g_clear_object (&priv->next_session);
+    g_clear_object (&priv->session_to_activate);
+    g_clear_object (&priv->replacement_greeter);
 
     G_OBJECT_CLASS (seat_parent_class)->finalize (object);
 }
@@ -1870,8 +1946,6 @@ seat_class_init (SeatClass *klass)
 
     object_class->finalize = seat_finalize;
 
-    g_type_class_add_private (klass, sizeof (SeatPrivate));
-
     signals[SESSION_ADDED] =
         g_signal_new (SEAT_SIGNAL_SESSION_ADDED,
                       G_TYPE_FROM_CLASS (klass),
@@ -1909,7 +1983,7 @@ seat_class_init (SeatClass *klass)
 static gint
 seat_real_logprefix (Logger *self, gchar *buf, gulong buflen)
 {
-    return g_snprintf (buf, buflen, "Seat %s: ", SEAT (self)->priv->name);
+    return g_snprintf (buf, buflen, "Seat %s: ", seat_get_name (SEAT (self)));
 }
 
 static void
diff -pruN 1.26.0-8/src/seat.h 1.30.0-0ubuntu8/src/seat.h
--- 1.26.0-8/src/seat.h	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/src/seat.h	2018-09-05 01:33:31.000000000 +0000
@@ -31,12 +31,9 @@ G_BEGIN_DECLS
 #define SEAT_SIGNAL_SESSION_REMOVED      "session-removed"
 #define SEAT_SIGNAL_STOPPED              "stopped"
 
-typedef struct SeatPrivate SeatPrivate;
-
 typedef struct
 {
-    GObject      parent_instance;
-    SeatPrivate *priv;
+    GObject parent_instance;
 } Seat;
 
 typedef struct
diff -pruN 1.26.0-8/src/session-child.c 1.30.0-0ubuntu8/src/session-child.c
--- 1.26.0-8/src/session-child.c	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/src/session-child.c	2018-09-05 01:33:31.000000000 +0000
@@ -765,14 +765,14 @@ session_child_run (int argc, char **argv
             privileges_drop (user_get_uid (user), user_get_gid (user));
 
         g_autoptr(GError) error = NULL;
-        gboolean result = x_authority_write (x_authority, XAUTH_WRITE_MODE_REMOVE, x_authority_filename, &error);
+        x_authority_write (x_authority, XAUTH_WRITE_MODE_REMOVE, x_authority_filename, &error);
         if (drop_privileges)
             privileges_reclaim ();
 
         if (error)
             g_printerr ("Error removing X authority: %s\n", error->message);
-        if (!result)
-            _exit (EXIT_FAILURE);
+        g_clear_error (&error);
+        /* Ignore this error, don't exit, continue closing the session. */
     }
 
     /* Close the Console Kit session */
diff -pruN 1.26.0-8/src/session-config.c 1.30.0-0ubuntu8/src/session-config.c
--- 1.26.0-8/src/session-config.c	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/src/session-config.c	2018-09-05 01:33:31.000000000 +0000
@@ -11,7 +11,7 @@
 
 #include "session-config.h"
 
-struct SessionConfigPrivate
+typedef struct
 {
     /* Session type */
     gchar *session_type;
@@ -24,9 +24,9 @@ struct SessionConfigPrivate
 
     /* TRUE if can run a greeter inside the session */
     gboolean allow_greeter;
-};
+}  SessionConfigPrivate;
 
-G_DEFINE_TYPE (SessionConfig, session_config, G_TYPE_OBJECT)
+G_DEFINE_TYPE_WITH_PRIVATE (SessionConfig, session_config, G_TYPE_OBJECT)
 
 SessionConfig *
 session_config_new_from_file (const gchar *filename, const gchar *default_session_type, GError **error)
@@ -45,25 +45,26 @@ session_config_new_from_file (const gcha
     }
 
     g_autoptr(SessionConfig) config = g_object_new (SESSION_CONFIG_TYPE, NULL);
-    config->priv->command = g_steal_pointer (&command);
-    config->priv->session_type = g_key_file_get_string (desktop_file, G_KEY_FILE_DESKTOP_GROUP, "X-LightDM-Session-Type", NULL);
-    if (!config->priv->session_type)
-        config->priv->session_type = g_strdup (default_session_type);
+    SessionConfigPrivate *priv = session_config_get_instance_private (config);
+    priv->command = g_steal_pointer (&command);
+    priv->session_type = g_key_file_get_string (desktop_file, G_KEY_FILE_DESKTOP_GROUP, "X-LightDM-Session-Type", NULL);
+    if (!priv->session_type)
+        priv->session_type = g_strdup (default_session_type);
 
-    config->priv->desktop_names = g_key_file_get_string_list (desktop_file, G_KEY_FILE_DESKTOP_GROUP, "DesktopNames", NULL, NULL);
-    if (!config->priv->desktop_names)
+    priv->desktop_names = g_key_file_get_string_list (desktop_file, G_KEY_FILE_DESKTOP_GROUP, "DesktopNames", NULL, NULL);
+    if (!priv->desktop_names)
     {
         gchar *name;
 
         name = g_key_file_get_string (desktop_file, G_KEY_FILE_DESKTOP_GROUP, "X-LightDM-DesktopName", NULL);
         if (name)
         {
-            config->priv->desktop_names = g_malloc (sizeof (gchar *) * 2);
-            config->priv->desktop_names[0] = name;
-            config->priv->desktop_names[1] = NULL;
+            priv->desktop_names = g_malloc (sizeof (gchar *) * 2);
+            priv->desktop_names[0] = name;
+            priv->desktop_names[1] = NULL;
         }
     }
-    config->priv->allow_greeter = g_key_file_get_boolean (desktop_file, G_KEY_FILE_DESKTOP_GROUP, "X-LightDM-Allow-Greeter", NULL);
+    priv->allow_greeter = g_key_file_get_boolean (desktop_file, G_KEY_FILE_DESKTOP_GROUP, "X-LightDM-Allow-Greeter", NULL);
 
     return g_steal_pointer (&config);
 }
@@ -71,45 +72,49 @@ session_config_new_from_file (const gcha
 const gchar *
 session_config_get_command (SessionConfig *config)
 {
+    SessionConfigPrivate *priv = session_config_get_instance_private (config);
     g_return_val_if_fail (config != NULL, NULL);
-    return config->priv->command;
+    return priv->command;
 }
 
 const gchar *
 session_config_get_session_type (SessionConfig *config)
 {
+    SessionConfigPrivate *priv = session_config_get_instance_private (config);
     g_return_val_if_fail (config != NULL, NULL);
-    return config->priv->session_type;
+    return priv->session_type;
 }
 
 gchar **
 session_config_get_desktop_names (SessionConfig *config)
 {
+    SessionConfigPrivate *priv = session_config_get_instance_private (config);
     g_return_val_if_fail (config != NULL, NULL);
-    return config->priv->desktop_names;
+    return priv->desktop_names;
 }
 
 gboolean
 session_config_get_allow_greeter (SessionConfig *config)
 {
+    SessionConfigPrivate *priv = session_config_get_instance_private (config);
     g_return_val_if_fail (config != NULL, FALSE);
-    return config->priv->allow_greeter;
+    return priv->allow_greeter;
 }
 
 static void
 session_config_init (SessionConfig *config)
 {
-    config->priv = G_TYPE_INSTANCE_GET_PRIVATE (config, SESSION_CONFIG_TYPE, SessionConfigPrivate);
 }
 
 static void
 session_config_finalize (GObject *object)
 {
     SessionConfig *self = SESSION_CONFIG (object);
+    SessionConfigPrivate *priv = session_config_get_instance_private (self);
 
-    g_clear_pointer (&self->priv->session_type, g_free);
-    g_clear_pointer (&self->priv->desktop_names, g_strfreev);
-    g_clear_pointer (&self->priv->command, g_free);
+    g_clear_pointer (&priv->session_type, g_free);
+    g_clear_pointer (&priv->desktop_names, g_strfreev);
+    g_clear_pointer (&priv->command, g_free);
 
     G_OBJECT_CLASS (session_config_parent_class)->finalize (object);
 }
@@ -120,6 +125,4 @@ session_config_class_init (SessionConfig
     GObjectClass *object_class = G_OBJECT_CLASS (klass);
 
     object_class->finalize = session_config_finalize;
-
-    g_type_class_add_private (klass, sizeof (SessionConfigPrivate));
 }
diff -pruN 1.26.0-8/src/session-config.h 1.30.0-0ubuntu8/src/session-config.h
--- 1.26.0-8/src/session-config.h	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/src/session-config.h	2018-09-05 01:33:31.000000000 +0000
@@ -21,12 +21,9 @@ G_BEGIN_DECLS
 #define SESSION_CONFIG_CLASS(klass)   (G_TYPE_CHECK_CLASS_CAST ((klass), SESSION_CONFIG_TYPE, SessionConfigClass))
 #define SESSION_CONFIG_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), SESSION_CONFIG_TYPE, SessionConfigClass))
 
-typedef struct SessionConfigPrivate SessionConfigPrivate;
-
 typedef struct
 {
-    GObject               parent_instance;
-    SessionConfigPrivate *priv;
+    GObject parent_instance;
 } SessionConfig;
 
 typedef struct
diff -pruN 1.26.0-8/src/session.c 1.30.0-0ubuntu8/src/session.c
--- 1.26.0-8/src/session.c	2018-02-06 23:31:03.000000000 +0000
+++ 1.30.0-0ubuntu8/src/session.c	2018-09-05 01:33:31.000000000 +0000
@@ -38,7 +38,7 @@ enum {
 };
 static guint signals[LAST_SIGNAL] = { 0 };
 
-struct SessionPrivate
+typedef struct
 {
     /* Configuration for this session */
     SessionConfig *config;
@@ -119,7 +119,7 @@ struct SessionPrivate
 
     /* TRUE if stopping this session */
     gboolean stopping;
-};
+} SessionPrivate;
 
 /* Maximum length of a string to pass between daemon and session */
 #define MAX_STRING_LENGTH 65535
@@ -127,6 +127,7 @@ struct SessionPrivate
 static void session_logger_iface_init (LoggerInterface *iface);
 
 G_DEFINE_TYPE_WITH_CODE (Session, session, G_TYPE_OBJECT,
+                         G_ADD_PRIVATE (Session)
                          G_IMPLEMENT_INTERFACE (
                              LOGGER_TYPE, session_logger_iface_init))
 
@@ -139,139 +140,159 @@ session_new (void)
 void
 session_set_config (Session *session, SessionConfig *config)
 {
+    SessionPrivate *priv = session_get_instance_private (session);
+
     g_return_if_fail (session != NULL);
 
-    g_clear_object (&session->priv->config);
-    session->priv->config = g_object_ref (config);
+    g_clear_object (&priv->config);
+    priv->config = g_object_ref (config);
 }
 
 SessionConfig *
 session_get_config (Session *session)
 {
+    SessionPrivate *priv = session_get_instance_private (session);
     g_return_val_if_fail (session != NULL, NULL);
-    return session->priv->config;
+    return priv->config;
 }
 
 const gchar *
 session_get_session_type (Session *session)
 {
+    SessionPrivate *priv = session_get_instance_private (session);
     g_return_val_if_fail (session != NULL, NULL);
-    return session_config_get_session_type (session->priv->config);
+    return session_config_get_session_type (priv->config);
 }
 
 void
 session_set_pam_service (Session *session, const gchar *pam_service)
 {
+    SessionPrivate *priv = session_get_instance_private (session);
     g_return_if_fail (session != NULL);
-    g_free (session->priv->pam_service);
-    session->priv->pam_service = g_strdup (pam_service);
+    g_free (priv->pam_service);
+    priv->pam_service = g_strdup (pam_service);
 }
 
 void
 session_set_username (Session *session, const gchar *username)
 {
+    SessionPrivate *priv = session_get_instance_private (session);
     g_return_if_fail (session != NULL);
-    g_free (session->priv->username);
-    session->priv->username = g_strdup (username);
+    g_free (priv->username);
+    priv->username = g_strdup (username);
 }
 
 void
 session_set_do_authenticate (Session *session, gboolean do_authenticate)
 {
+    SessionPrivate *priv = session_get_instance_private (session);
     g_return_if_fail (session != NULL);
-    session->priv->do_authenticate = do_authenticate;
+    priv->do_authenticate = do_authenticate;
 }
 
 void
 session_set_is_interactive (Session *session, gboolean is_interactive)
 {
+    SessionPrivate *priv = session_get_instance_private (session);
     g_return_if_fail (session != NULL);
-    session->priv->is_interactive = is_interactive;
+    priv->is_interactive = is_interactive;
 }
 
 void
 session_set_is_guest (Session *session, gboolean is_guest)
 {
+    SessionPrivate *priv = session_get_instance_private (session);
     g_return_if_fail (session != NULL);
-    session->priv->is_guest = is_guest;
+    priv->is_guest = is_guest;
 }
 
 gboolean
 session_get_is_guest (Session *session)
 {
+    SessionPrivate *priv = session_get_instance_private (session);
     g_return_val_if_fail (session != NULL, FALSE);
-    return session->priv->is_guest;
+    return priv->is_guest;
 }
 
 void
 session_set_log_file (Session *session, const gchar *filename, LogMode log_mode)
 {
+    SessionPrivate *priv = session_get_instance_private (session);
     g_return_if_fail (session != NULL);
-    g_free (session->priv->log_filename);
-    session->priv->log_filename = g_strdup (filename);
-    session->priv->log_mode = log_mode;
+    g_free (priv->log_filename);
+    priv->log_filename = g_strdup (filename);
+    priv->log_mode = log_mode;
 }
 
 void
 session_set_display_server (Session *session, DisplayServer *display_server)
 {
+    SessionPrivate *priv = session_get_instance_private (session);
+
     g_return_if_fail (session != NULL);
     g_return_if_fail (display_server != NULL);
 
-    if (session->priv->display_server == display_server)
+    if (priv->display_server == display_server)
         return;
 
-    if (session->priv->display_server)
-        display_server_disconnect_session (session->priv->display_server, session);
-    g_clear_object (&session->priv->display_server);
-    session->priv->display_server = g_object_ref (display_server);
+    if (priv->display_server)
+        display_server_disconnect_session (priv->display_server, session);
+    g_clear_object (&priv->display_server);
+    priv->display_server = g_object_ref (display_server);
 }
 
 DisplayServer *
 session_get_display_server (Session *session)
 {
+    SessionPrivate *priv = session_get_instance_private (session);
     g_return_val_if_fail (session != NULL, NULL);
-    return session->priv->display_server;
+    return priv->display_server;
 }
 
 void
 session_set_tty (Session *session, const gchar *tty)
 {
+    SessionPrivate *priv = session_get_instance_private (session);
     g_return_if_fail (session != NULL);
-    g_free (session->priv->tty);
-    session->priv->tty = g_strdup (tty);
+    g_free (priv->tty);
+    priv->tty = g_strdup (tty);
 }
 
 void
 session_set_xdisplay (Session *session, const gchar *xdisplay)
 {
+    SessionPrivate *priv = session_get_instance_private (session);
     g_return_if_fail (session != NULL);
-    g_free (session->priv->xdisplay);
-    session->priv->xdisplay = g_strdup (xdisplay);
+    g_free (priv->xdisplay);
+    priv->xdisplay = g_strdup (xdisplay);
 }
 
 void
 session_set_x_authority (Session *session, XAuthority *authority, gboolean use_system_location)
 {
+    SessionPrivate *priv = session_get_instance_private (session);
     g_return_if_fail (session != NULL);
-    g_clear_object (&session->priv->x_authority);
+    g_clear_object (&priv->x_authority);
     if (authority)
-        session->priv->x_authority = g_object_ref (authority);
-    session->priv->x_authority_use_system_location = use_system_location;
+        priv->x_authority = g_object_ref (authority);
+    priv->x_authority_use_system_location = use_system_location;
 }
 
 void
 session_set_remote_host_name (Session *session, const gchar *remote_host_name)
 {
+    SessionPrivate *priv = session_get_instance_private (session);
     g_return_if_fail (session != NULL);
-    g_free (session->priv->remote_host_name);
-    session->priv->remote_host_name = g_strdup (remote_host_name);
+    g_free (priv->remote_host_name);
+    priv->remote_host_name = g_strdup (remote_host_name);
 }
 
 static GList *
 find_env_entry (Session *session, const gchar *name)
 {
-    for (GList *link = session->priv->env; link; link = link->next)
+    SessionPrivate *priv = session_get_instance_private (session);
+
+    for (GList *link = priv->env; link; link = link->next)
     {
         const gchar *entry = link->data;
 
@@ -285,6 +306,8 @@ find_env_entry (Session *session, const
 void
 session_set_env (Session *session, const gchar *name, const gchar *value)
 {
+    SessionPrivate *priv = session_get_instance_private (session);
+
     g_return_if_fail (session != NULL);
     g_return_if_fail (value != NULL);
 
@@ -297,7 +320,7 @@ session_set_env (Session *session, const
         link->data = entry;
     }
     else
-        session->priv->env = g_list_append (session->priv->env, entry);
+        priv->env = g_list_append (priv->env, entry);
 }
 
 const gchar *
@@ -315,6 +338,8 @@ session_get_env (Session *session, const
 void
 session_unset_env (Session *session, const gchar *name)
 {
+    SessionPrivate *priv = session_get_instance_private (session);
+
     g_return_if_fail (session != NULL);
 
     GList *link = find_env_entry (session, name);
@@ -322,34 +347,38 @@ session_unset_env (Session *session, con
         return;
 
     g_free (link->data);
-    session->priv->env = g_list_delete_link (session->priv->env, link);
+    priv->env = g_list_delete_link (priv->env, link);
 }
 
 void
 session_set_argv (Session *session, gchar **argv)
 {
+    SessionPrivate *priv = session_get_instance_private (session);
     g_return_if_fail (session != NULL);
-    session->priv->argv = g_strdupv (argv);
+    priv->argv = g_strdupv (argv);
 }
 
 User *
 session_get_user (Session *session)
 {
+    SessionPrivate *priv = session_get_instance_private (session);
+
     g_return_val_if_fail (session != NULL, NULL);
 
-    if (session->priv->username == NULL)
+    if (priv->username == NULL)
         return NULL;
