diff --git a/.gitignore b/.gitignore index 24b6e51..c09d867 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,4 @@ /lightdm-1.22.0.tar.xz /lightdm-1.24.0.tar.xz /lightdm-1.25.0.tar.gz +/lightdm-1.25.1.tar.gz diff --git a/lightdm-1.25.0-Automake_ACLOCAL_AMFLAGS.patch b/lightdm-1.25.0-Automake_ACLOCAL_AMFLAGS.patch deleted file mode 100644 index 3de3b07..0000000 --- a/lightdm-1.25.0-Automake_ACLOCAL_AMFLAGS.patch +++ /dev/null @@ -1,9 +0,0 @@ -Index: lightdm-1.25.0/Makefile.am -=================================================================== ---- lightdm-1.25.0.orig/Makefile.am -+++ lightdm-1.25.0/Makefile.am -@@ -1,3 +1,4 @@ -+ACLOCAL_AMFLAGS = -I m4 - SUBDIRS = common liblightdm-gobject liblightdm-qt - if COMPILE_TESTS - SUBDIRS += tests diff --git a/lightdm-1.25.0-no_dmrc_save.patch b/lightdm-1.25.0-no_dmrc_save.patch deleted file mode 100644 index 33cf61f..0000000 --- a/lightdm-1.25.0-no_dmrc_save.patch +++ /dev/null @@ -1,20 +0,0 @@ -Index: lightdm-1.25.0/common/dmrc.c -=================================================================== ---- lightdm-1.25.0.orig/common/dmrc.c -+++ lightdm-1.25.0/common/dmrc.c -@@ -70,6 +70,7 @@ dmrc_save (GKeyFile *dmrc_file, CommonUs - - data = g_key_file_to_data (dmrc_file, &length, NULL); - -+#if 0 - /* Update the users .dmrc */ - path = g_build_filename (common_user_get_home_directory (user), ".dmrc", NULL); - -@@ -81,6 +82,7 @@ dmrc_save (GKeyFile *dmrc_file, CommonUs - g_file_set_contents (path, data, length, NULL); - if (drop_privileges) - privileges_reclaim (); -+#endif - - /* Update the .dmrc cache */ - cache_dir = config_get_string (config_get_instance (), "LightDM", "cache-directory"); diff --git a/lightdm-1.25.0-nodaemon_option.patch b/lightdm-1.25.0-nodaemon_option.patch deleted file mode 100644 index f3a39e9..0000000 --- a/lightdm-1.25.0-nodaemon_option.patch +++ /dev/null @@ -1,13 +0,0 @@ -Index: lightdm-1.25.0/src/lightdm.c -=================================================================== ---- lightdm-1.25.0.orig/src/lightdm.c -+++ lightdm-1.25.0/src/lightdm.c -@@ -659,7 +659,7 @@ main (int argc, char **argv) - g_printerr (/* Text printed out when an unknown command-line argument provided */ - _("Run '%s --help' to see a full list of available command line options."), argv[0]); - g_printerr ("\n"); -- return EXIT_FAILURE; -+ /* return EXIT_FAILURE; */ - } - - /* Show combined configuration if user requested it */ diff --git a/lightdm-1.25.0-qtchooser.patch b/lightdm-1.25.0-qtchooser.patch deleted file mode 100644 index cedc2ac..0000000 --- a/lightdm-1.25.0-qtchooser.patch +++ /dev/null @@ -1,22 +0,0 @@ -Index: lightdm-1.25.0/configure.ac -=================================================================== ---- lightdm-1.25.0.orig/configure.ac -+++ lightdm-1.25.0/configure.ac -@@ -107,7 +107,7 @@ if test x"$enable_liblightdm_qt4" != "xn - fi - if test x"$MOC4" = xmoc; then - if test x"$(readlink $(which $MOC4))" = xqtchooser; then -- MOC4="$MOC4 --qt=qt4" -+ MOC4="$MOC4 --qt=4" - fi - fi - fi -@@ -141,7 +141,7 @@ if test x"$enable_liblightdm_qt5" != "xn - fi - if test x"$MOC5" = xmoc; then - if test x"$(readlink $(which $MOC5))" = xqtchooser; then -- MOC5="$MOC5 --qt=qt5" -+ MOC5="$MOC5 --qt=5" - fi - fi - fi diff --git a/lightdm-1.25.0-stop_plymouth_on_greeter.patch b/lightdm-1.25.0-stop_plymouth_on_greeter.patch deleted file mode 100644 index c4a85d6..0000000 --- a/lightdm-1.25.0-stop_plymouth_on_greeter.patch +++ /dev/null @@ -1,26 +0,0 @@ -Index: lightdm-1.25.0/src/seat-local.c -=================================================================== ---- lightdm-1.25.0.orig/src/seat-local.c -+++ lightdm-1.25.0/src/seat-local.c -@@ -169,6 +169,8 @@ get_vt (SeatLocal *seat, DisplayServer * - 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_transition_plymouth_cb), seat); - plymouth_deactivate (); -+ -+ return vt; - } - 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 ()); -Index: lightdm-1.25.0/src/x-server-local.c -=================================================================== ---- lightdm-1.25.0.orig/src/x-server-local.c -+++ lightdm-1.25.0/src/x-server-local.c -@@ -511,6 +511,9 @@ x_server_local_start (DisplayServer *dis - if (server->priv->vt >= 0) - g_string_append_printf (command, " vt%d -novtswitch", server->priv->vt); - -+ if (!server->priv->background) -+ x_server_local_set_background (server, "none"); -+ - if (server->priv->background) - g_string_append_printf (command, " -background %s", server->priv->background); diff --git a/lightdm-1.25.1-disable_dmrc.patch b/lightdm-1.25.1-disable_dmrc.patch new file mode 100644 index 0000000..5be7ede --- /dev/null +++ b/lightdm-1.25.1-disable_dmrc.patch @@ -0,0 +1,76 @@ +From 15722c7b2cb41dbe612d6b4c51c3dba11f5fe4c4 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Bj=C3=B6rn=20Esser?= +Date: Thu, 18 Jan 2018 17:40:50 +0100 +Subject: [PATCH 1/2] configure: Add option to disable writing dmrc files + +--- + configure.ac | 11 +++++++++++ + 1 file changed, 11 insertions(+) + +diff --git a/configure.ac b/configure.ac +index 711db441..3a20c84f 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -170,8 +170,18 @@ AC_MSG_CHECKING(whether to build tests) + AC_ARG_ENABLE(tests, + AS_HELP_STRING([--disable-tests], [Disable tests building]), + [], [enable_tests="yes"]) ++AC_MSG_RESULT([$enable_tests]) + AM_CONDITIONAL(COMPILE_TESTS, test x"$enable_tests" != "xno") + ++AC_MSG_CHECKING(whether to enable writing dmrc files) ++AC_ARG_ENABLE(dmrc, ++ AS_HELP_STRING([--disable-dmrc], [Disable writing .dmrc in user home]), ++ [], [enable_dmrc="yes"]) ++AC_MSG_RESULT([$enable_dmrc]) ++if test x"$enable_dmrc" != "xno"; then ++ AC_DEFINE([WRITE_DMRC], [1], [Enable writing .dmrc in user home]) ++fi ++ + dnl ########################################################################### + dnl Configurable values + dnl ########################################################################### +@@ -264,4 +274,5 @@ echo " + liblightdm-qt5: $compile_liblightdm_qt5 + libaudit support: $use_libaudit + Enable tests: $enable_tests ++ Write .dmrc files: $enable_dmrc + " + +From 1072c1b0fe917358c4bdb9ee8bb23fd3c19e349c Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Bj=C3=B6rn=20Esser?= +Date: Thu, 18 Jan 2018 17:41:30 +0100 +Subject: [PATCH 2/2] dmrc: Implement new configuration option + +--- + common/dmrc.c | 3 +++ + 1 file changed, 3 insertions(+) + +diff --git a/common/dmrc.c b/common/dmrc.c +index 9b92a52b..795ec2aa 100644 +--- a/common/dmrc.c ++++ b/common/dmrc.c +@@ -13,6 +13,7 @@ + #include + #include + ++#include "config.h" + #include "dmrc.h" + #include "configuration.h" + #include "privileges.h" +@@ -54,6 +55,7 @@ dmrc_save (GKeyFile *dmrc_file, CommonUser *user) + gsize length; + g_autofree gchar *data = g_key_file_to_data (dmrc_file, &length, NULL); + ++#ifdef WRITE_DMRC + /* Update the users .dmrc */ + g_autofree gchar *path = g_build_filename (common_user_get_home_directory (user), ".dmrc", NULL); + +@@ -65,6 +67,7 @@ dmrc_save (GKeyFile *dmrc_file, CommonUser *user) + g_file_set_contents (path, data, length, NULL); + if (drop_privileges) + privileges_reclaim (); ++#endif + + /* Update the .dmrc cache */ + g_autofree gchar *cache_dir = config_get_string (config_get_instance (), "LightDM", "cache-directory"); diff --git a/lightdm-1.25.1-fix_Autotools.patch b/lightdm-1.25.1-fix_Autotools.patch new file mode 100644 index 0000000..6123114 --- /dev/null +++ b/lightdm-1.25.1-fix_Autotools.patch @@ -0,0 +1,72 @@ +From 63f6f9826f0ef6c32568725afa41b142dfd45ccb Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Bj=C3=B6rn=20Esser?= +Date: Thu, 18 Jan 2018 16:44:53 +0100 +Subject: [PATCH 1/3] configure: Fix arguments passed to qtchooser + +--- + configure.ac | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 711db441..f836a842 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -107,7 +107,7 @@ if test x"$enable_liblightdm_qt4" != "xno" ; then + fi + if test x"$MOC4" = xmoc; then + if test x"$(readlink $(which $MOC4))" = xqtchooser; then +- MOC4="$MOC4 --qt=qt4" ++ MOC4="$MOC4 --qt=4" + fi + fi + fi +@@ -141,7 +141,7 @@ if test x"$enable_liblightdm_qt5" != "xno"; then + fi + if test x"$MOC5" = xmoc; then + if test x"$(readlink $(which $MOC5))" = xqtchooser; then +- MOC5="$MOC5 --qt=qt5" ++ MOC5="$MOC5 --qt=5" + fi + fi + fi + +From 216c5c7bdc3f7fc321da3e576814768df5e25ad0 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Bj=C3=B6rn=20Esser?= +Date: Thu, 18 Jan 2018 16:46:19 +0100 +Subject: [PATCH 2/3] Makefile: Add ACLOCAL_AMFLAGS properly + +--- + Makefile.am | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/Makefile.am b/Makefile.am +index 9706d600..fd252aa8 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -1,3 +1,4 @@ ++ACLOCAL_AMFLAGS = -I m4 + SUBDIRS = common liblightdm-gobject liblightdm-qt + if COMPILE_TESTS + SUBDIRS += tests + +From 301023e08790cc0ace49ef15159e3dd4746b9238 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Bj=C3=B6rn=20Esser?= +Date: Thu, 18 Jan 2018 18:11:16 +0100 +Subject: [PATCH 3/3] configure: Activate needed C99 mode of compiler + +--- + configure.ac | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/configure.ac b/configure.ac +index f836a842..29d84327 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -6,6 +6,7 @@ AC_CONFIG_HEADER(config.h) + AM_INIT_AUTOMAKE([1.11 no-dist-gzip dist-xz foreign]) + AM_SILENT_RULES(yes) + LT_INIT ++AC_PROG_CC_STDC + AM_PROG_CC_C_O + AC_PROG_CXX + AC_PROG_LIBTOOL diff --git a/lightdm-1.25.1-fix_transition_plymouth.patch b/lightdm-1.25.1-fix_transition_plymouth.patch new file mode 100644 index 0000000..0e9a7d7 --- /dev/null +++ b/lightdm-1.25.1-fix_transition_plymouth.patch @@ -0,0 +1,49 @@ +From f2069f4f9cd2e4e8ebf91eed65ea12c2e4055acd Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Bj=C3=B6rn=20Esser?= +Date: Thu, 18 Jan 2018 16:40:30 +0100 +Subject: [PATCH 1/2] x-server-local: Set background to none if not set + +--- + src/x-server-local.c | 6 ++++-- + 1 file changed, 4 insertions(+), 2 deletions(-) + +diff --git a/src/x-server-local.c b/src/x-server-local.c +index 80e0ab0d..bb09a329 100644 +--- a/src/x-server-local.c ++++ b/src/x-server-local.c +@@ -481,8 +481,10 @@ x_server_local_start (DisplayServer *display_server) + if (server->priv->vt >= 0) + g_string_append_printf (command, " vt%d -novtswitch", server->priv->vt); + +- if (server->priv->background) +- g_string_append_printf (command, " -background %s", server->priv->background); ++ if (!server->priv->background) ++ x_server_local_set_background (server, "none"); ++ ++ g_string_append_printf (command, " -background %s", server->priv->background); + + /* Allow sub-classes to add arguments */ + if (X_SERVER_LOCAL_GET_CLASS (server)->add_args) + +From 49ddf36823438bac09f55fec3cdc4fc7288a0d96 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Bj=C3=B6rn=20Esser?= +Date: Thu, 18 Jan 2018 16:42:37 +0100 +Subject: [PATCH 2/2] seat-local: Return active VT if Plymouth gets deactivated + +--- + src/seat-local.c | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/src/seat-local.c b/src/seat-local.c +index 9d83ca97..a5d313eb 100644 +--- a/src/seat-local.c ++++ b/src/seat-local.c +@@ -158,6 +158,8 @@ get_vt (SeatLocal *seat, DisplayServer *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_transition_plymouth_cb), seat); + plymouth_deactivate (); ++ ++ return vt; + } + 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 ()); diff --git a/lightdm-1.25.1-remove_incorrect_use_of_const.patch b/lightdm-1.25.1-remove_incorrect_use_of_const.patch new file mode 100644 index 0000000..dc9388d --- /dev/null +++ b/lightdm-1.25.1-remove_incorrect_use_of_const.patch @@ -0,0 +1,22 @@ +From 30b3c147c041fef799b1323efb038515db1417ec Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Bj=C3=B6rn=20Esser?= +Date: Thu, 18 Jan 2018 18:20:41 +0100 +Subject: [PATCH] x-authority: Remove incorrect use of const + +--- + src/x-authority.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/x-authority.c b/src/x-authority.c +index 705bb511..a9a4089f 100644 +--- a/src/x-authority.c ++++ b/src/x-authority.c +@@ -104,7 +104,7 @@ x_authority_get_address (XAuthority *auth) + return auth->priv->address; + } + +-const gsize ++gsize + x_authority_get_address_length (XAuthority *auth) + { + g_return_val_if_fail (auth != NULL, 0); diff --git a/lightdm.spec b/lightdm.spec index 9749dfc..540d08a 100644 --- a/lightdm.spec +++ b/lightdm.spec @@ -1,12 +1,12 @@ # FIXME: most tests currently fail %bcond_with tests -%global glib2_version %(pkg-config --modversion glib-2.0 2>/dev/null || echo "2.10") +%global glib2_version %(pkg-config --modversion glib-2.0 2>/dev/null || echo "2.44") %global giturl https://github.com/CanonicalLtd/%{name} Name: lightdm Summary: A cross-desktop Display Manager -Version: 1.25.0 +Version: 1.25.1 Release: 1%{?dist} # library/bindings are LGPLv2 or LGPLv3, the rest GPLv3+ @@ -21,7 +21,7 @@ Source13: %{name}.service Source14: %{name}.logrotate Source15: %{name}.rules -## .conf snippets +# .conf snippets Source20: 50-backup-logs.conf Source21: 50-minimum-vt.conf Source22: 50-session-wrapper.conf @@ -29,19 +29,11 @@ Source23: 50-user-authority-in-system-dir.conf Source24: 50-xserver-command.conf Source25: 50-disable-guest.conf -## Downstream patches: -# hack in support for --nodaemon option -Patch0: %{name}-1.25.0-nodaemon_option.patch -# disable saving to ~/.dmrc (runs afoul of selinux, http://bugzilla.redhat.com/963238 ) -Patch1: %{name}-1.25.0-no_dmrc_save.patch - -## upstreamable patches -# use -qt=5|4 (instead of --qt=qt4|qt5) -Patch2: %{name}-1.25.0-qtchooser.patch -# add ACLOCAL_AMFLAGS to Makefile.am -Patch3: %{name}-1.25.0-Automake_ACLOCAL_AMFLAGS.patch -# stop plymouth when the greeter is ready -Patch4: %{name}-1.25.0-stop_plymouth_on_greeter.patch +# Upstreamed: +Patch0: %{giturl}/pull/3.patch#/%{name}-1.25.1-fix_transition_plymouth.patch +Patch1: %{giturl}/pull/4.patch#/%{name}-1.25.1-fix_Autotools.patch +Patch2: %{giturl}/pull/5.patch#/%{name}-1.25.1-disable_dmrc.patch +Patch3: %{giturl}/pull/6.patch#/%{name}-1.25.1-remove_incorrect_use_of_const.patch BuildRequires: gettext BuildRequires: gnome-common @@ -159,6 +151,7 @@ NOCONFIGURE=1 ./autogen.sh %build %configure \ + --disable-dmrc \ --disable-silent-rules \ --disable-static \ --enable-gtk-doc \ @@ -284,7 +277,9 @@ exit 0 %{_mandir}/man1/dm-tool.1* %{_mandir}/man1/%{name}* %{_unitdir}/%{name}.service +%{_datadir}/accountsservice/interfaces/org.freedesktop.DisplayManager.AccountsService.xml %{_datadir}/polkit-1/rules.d/%{name}.rules +%{_datadir}/polkit-1/actions/org.freedesktop.DisplayManager.AccountsService.policy %{_datadir}/bash-completion/completions/dm-tool %{_datadir}/bash-completion/completions/%{name} %{_prefix}/lib/tmpfiles.d/%{name}.conf @@ -327,6 +322,9 @@ exit 0 %changelog +* Thu Jan 18 2018 Björn Esser - 1.25.1-1 +- lightdm-1.25.1 (rhbz#1535730) + * Mon Nov 27 2017 Björn Esser - 1.25.0-1 - lightdm-1.25.0 - Enable smooth transition from plymouth to the greeter diff --git a/sources b/sources index fd5ff2a..86d078f 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (lightdm-1.25.0.tar.gz) = 06db68d60c7973b0eb1d57bb4d57ce63a9c398443873bcbc0725da5b5884a75e6a935aa867c676c87d2c49e95bf0dd53220565d0f362f957f376c49daceadc28 +SHA512 (lightdm-1.25.1.tar.gz) = 34dfa27e1e88756bdac617b5990005d2c6ee209e8c5d72de4378d94b3f00475a7afee678f0758e463fa4e5bc59d1c516b2889b08d4b09567e2452b81dffed1fc