diff --git a/.gitignore b/.gitignore index c66923e..32a4dce 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -/lightdm-1.10.6.tar.xz +/lightdm-1.18.3.tar.xz diff --git a/50-backup-logs.conf b/50-backup-logs.conf new file mode 100644 index 0000000..41b3a22 --- /dev/null +++ b/50-backup-logs.conf @@ -0,0 +1,3 @@ +[LightDM] +## Disable log backup - if you choose to use logrotate instead +#backup-logs=false diff --git a/50-minimum-vt.conf b/50-minimum-vt.conf new file mode 100644 index 0000000..3898370 --- /dev/null +++ b/50-minimum-vt.conf @@ -0,0 +1,2 @@ +[LightDM] +minimum-vt=1 diff --git a/50-session-wrapper.conf b/50-session-wrapper.conf new file mode 100644 index 0000000..36a66ef --- /dev/null +++ b/50-session-wrapper.conf @@ -0,0 +1,2 @@ +[Seat:*] +session-wrapper=/etc/X11/xinit/Xsession diff --git a/50-user-authority-in-system-dir.conf b/50-user-authority-in-system-dir.conf new file mode 100644 index 0000000..9ed89a1 --- /dev/null +++ b/50-user-authority-in-system-dir.conf @@ -0,0 +1,2 @@ +[LightDM] +user-authority-in-system-dir=true diff --git a/50-xserver-command.conf b/50-xserver-command.conf new file mode 100644 index 0000000..5dbb726 --- /dev/null +++ b/50-xserver-command.conf @@ -0,0 +1,2 @@ +[Seat:*] +xserver-command=X -background none diff --git a/lightdm-1.10.6-fedora_config.patch b/lightdm-1.10.6-fedora_config.patch deleted file mode 100644 index ec7602d..0000000 --- a/lightdm-1.10.6-fedora_config.patch +++ /dev/null @@ -1,53 +0,0 @@ -diff -up lightdm-1.10.6/data/lightdm.conf.fedora_config lightdm-1.10.6/data/lightdm.conf ---- lightdm-1.10.6/data/lightdm.conf.fedora_config 2015-10-27 22:30:50.000000000 -0500 -+++ lightdm-1.10.6/data/lightdm.conf 2015-11-20 07:51:36.852243441 -0600 -@@ -22,9 +22,9 @@ - #start-default-seat=true - #greeter-user=lightdm - #minimum-display-number=0 --#minimum-vt=7 -+minimum-vt=1 - #lock-memory=true --#user-authority-in-system-dir=false -+user-authority-in-system-dir=true - #guest-account-script=guest-account - #logind-load-seats=false - #logind-check-graphical=false -@@ -87,7 +87,7 @@ - #pam-service=lightdm - #pam-autologin-service=lightdm-autologin - #pam-greeter-service=lightdm-greeter --#xserver-command=X -+xserver-command=X -background none - #xmir-command=Xmir - #xserver-layout= - #xserver-config= -@@ -100,7 +100,7 @@ - #xdmcp-key= - #unity-compositor-command=unity-system-compositor - #unity-compositor-timeout=60 --#greeter-session=example-gtk-gnome -+greeter-session=lightdm-greeter - #greeter-hide-users=false - #greeter-allow-guest=true - #greeter-show-manual-login=false -@@ -109,7 +109,7 @@ - #allow-user-switching=true - #allow-guest=true - #guest-session= --#session-wrapper=lightdm-session -+session-wrapper=/etc/X11/xinit/Xsession - #greeter-wrapper= - #guest-wrapper= - #display-setup-script= -diff -up lightdm-1.10.6/data/users.conf.fedora_config lightdm-1.10.6/data/users.conf ---- lightdm-1.10.6/data/users.conf.fedora_config 2014-05-19 15:11:31.000000000 -0500 -+++ lightdm-1.10.6/data/users.conf 2015-11-20 07:50:40.104978136 -0600 -@@ -9,6 +9,6 @@ - # hidden-shells = Shells that indicate a user cannot login - # - [UserList] --minimum-uid=500 -+minimum-uid=1000 - hidden-users=nobody nobody4 noaccess - hidden-shells=/bin/false /usr/sbin/nologin diff --git a/lightdm-1.10.6-qtchooser.patch b/lightdm-1.10.6-qtchooser.patch deleted file mode 100644 index e8c20f0..0000000 --- a/lightdm-1.10.6-qtchooser.patch +++ /dev/null @@ -1,54 +0,0 @@ -diff -up lightdm-1.10.6/configure.ac.qtchooser lightdm-1.10.6/configure.ac ---- lightdm-1.10.6/configure.ac.qtchooser 2015-11-19 21:07:45.000000000 -0600 -+++ lightdm-1.10.6/configure.ac 2015-11-25 10:15:58.362197081 -0600 -@@ -107,7 +107,7 @@ if test x"$enable_liblightdm_qt4" = "xye - [compile_liblightdm_qt4=yes - AC_CHECK_TOOLS(MOC4, [moc-qt4 moc]) - if test x"$(readlink $(which $MOC4))" = xqtchooser; then -- MOC4="$MOC4 --qt=qt4" -+ MOC4="$MOC4 --qt=4" - fi - if test "x$compile_liblightdm_gobject" != xyes; then - AC_MSG_FAILURE( -@@ -134,9 +134,9 @@ if test x"$enable_liblightdm_qt5" != "xn - Qt5Gui - ], - [compile_liblightdm_qt5=yes -- AC_CHECK_TOOLS(MOC5, [moc]) -+ AC_CHECK_TOOLS(MOC5, [moc-qt5 moc]) - if test x"$(readlink $(which $MOC5))" = xqtchooser; then -- MOC5="$MOC5 --qt=qt5" -+ MOC5="$MOC5 --qt=5" - fi - ], - [if test "x$enable_liblightdm_qt5" != xauto; then -diff -up lightdm-1.10.6/configure.qtchooser lightdm-1.10.6/configure ---- lightdm-1.10.6/configure.qtchooser 2015-11-19 21:26:56.000000000 -0600 -+++ lightdm-1.10.6/configure 2015-11-25 10:15:58.378197158 -0600 -@@ -16938,7 +16938,7 @@ esac - fi - - if test x"$(readlink $(which $MOC4))" = xqtchooser; then -- MOC4="$MOC4 --qt=qt4" -+ MOC4="$MOC4 --qt=4" - fi - if test "x$compile_liblightdm_gobject" != xyes; then - { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 -@@ -17126,7 +17126,7 @@ fi - fi - if test -z "$MOC5"; then - ac_ct_MOC5=$MOC5 -- for ac_prog in moc -+ for ac_prog in moc-qt5 moc - do - # Extract the first word of "$ac_prog", so it can be a program name with args. - set dummy $ac_prog; ac_word=$2 -@@ -17182,7 +17182,7 @@ esac - fi - - if test x"$(readlink $(which $MOC5))" = xqtchooser; then -- MOC5="$MOC5 --qt=qt5" -+ MOC5="$MOC5 --qt=5" - fi - - fi diff --git a/lightdm-1.18-fedora_config.patch b/lightdm-1.18-fedora_config.patch new file mode 100644 index 0000000..82c2660 --- /dev/null +++ b/lightdm-1.18-fedora_config.patch @@ -0,0 +1,79 @@ +diff -up lightdm-1.18.0/data/lightdm.conf.fedora_config lightdm-1.18.0/data/lightdm.conf +--- lightdm-1.18.0/data/lightdm.conf.fedora_config 2015-11-02 21:26:23.000000000 -0600 ++++ lightdm-1.18.0/data/lightdm.conf 2016-04-02 11:09:21.477204293 -0500 +@@ -21,9 +21,9 @@ + #start-default-seat=true + #greeter-user=lightdm + #minimum-display-number=0 +-#minimum-vt=7 ++#minimum-vt=1 + #lock-memory=true +-#user-authority-in-system-dir=false ++#user-authority-in-system-dir=true + #guest-account-script=guest-account + #logind-check-graphical=false + #log-directory=/var/log/lightdm +@@ -88,7 +88,7 @@ + #pam-service=lightdm + #pam-autologin-service=lightdm-autologin + #pam-greeter-service=lightdm-greeter +-#xserver-command=X ++#xserver-command=X -background none + #xmir-command=Xmir + #xserver-config= + #xserver-layout= +@@ -110,7 +110,7 @@ + #allow-user-switching=true + #allow-guest=true + #guest-session= +-#session-wrapper=lightdm-session ++#session-wrapper=/etc/X11/xinit/Xsession + #greeter-wrapper= + #guest-wrapper= + #display-setup-script= +diff -up lightdm-1.18.0/data/users.conf.fedora_config lightdm-1.18.0/data/users.conf +--- lightdm-1.18.0/data/users.conf.fedora_config 2015-08-09 18:30:00.000000000 -0500 ++++ lightdm-1.18.0/data/users.conf 2016-04-02 11:09:21.477204293 -0500 +@@ -9,6 +9,6 @@ + # hidden-shells = Shells that indicate a user cannot login + # + [UserList] +-minimum-uid=500 ++minimum-uid=1000 + hidden-users=nobody nobody4 noaccess + hidden-shells=/bin/false /usr/sbin/nologin +diff -up lightdm-1.18.0/src/lightdm.c.fedora_config lightdm-1.18.0/src/lightdm.c +--- lightdm-1.18.0/src/lightdm.c.fedora_config 2015-11-18 17:15:37.000000000 -0600 ++++ lightdm-1.18.0/src/lightdm.c 2016-04-02 11:09:21.478204320 -0500 +@@ -1372,10 +1372,12 @@ main (int argc, char **argv) + g_free (config_path); + + /* Set default values */ ++ if (!config_has_key (config_get_instance (), "LightDM", "user-authority-in-system-dir")) ++ config_set_boolean (config_get_instance (), "LightDM", "user-authority-in-system-dir", TRUE); + if (!config_has_key (config_get_instance (), "LightDM", "start-default-seat")) + config_set_boolean (config_get_instance (), "LightDM", "start-default-seat", TRUE); + if (!config_has_key (config_get_instance (), "LightDM", "minimum-vt")) +- config_set_integer (config_get_instance (), "LightDM", "minimum-vt", 7); ++ config_set_integer (config_get_instance (), "LightDM", "minimum-vt", 1); + if (!config_has_key (config_get_instance (), "LightDM", "guest-account-script")) + config_set_string (config_get_instance (), "LightDM", "guest-account-script", "guest-account"); + if (!config_has_key (config_get_instance (), "LightDM", "greeter-user")) +@@ -1393,7 +1395,7 @@ main (int argc, char **argv) + if (!config_has_key (config_get_instance (), "Seat:*", "pam-greeter-service")) + config_set_string (config_get_instance (), "Seat:*", "pam-greeter-service", "lightdm-greeter"); + if (!config_has_key (config_get_instance (), "Seat:*", "xserver-command")) +- config_set_string (config_get_instance (), "Seat:*", "xserver-command", "X"); ++ config_set_string (config_get_instance (), "Seat:*", "xserver-command", "X -background none"); + if (!config_has_key (config_get_instance (), "Seat:*", "xmir-command")) + config_set_string (config_get_instance (), "Seat:*", "xmir-command", "Xmir"); + if (!config_has_key (config_get_instance (), "Seat:*", "xserver-share")) +@@ -1415,7 +1417,7 @@ main (int argc, char **argv) + if (!config_has_key (config_get_instance (), "Seat:*", "user-session")) + config_set_string (config_get_instance (), "Seat:*", "user-session", USER_SESSION); + if (!config_has_key (config_get_instance (), "Seat:*", "session-wrapper")) +- config_set_string (config_get_instance (), "Seat:*", "session-wrapper", "lightdm-session"); ++ config_set_string (config_get_instance (), "Seat:*", "session-wrapper", "/etc/X11/xinit/Xsession"); + if (!config_has_key (config_get_instance (), "LightDM", "log-directory")) + config_set_string (config_get_instance (), "LightDM", "log-directory", default_log_dir); + g_free (default_log_dir); diff --git a/lightdm-1.18-qtchooser.patch b/lightdm-1.18-qtchooser.patch new file mode 100644 index 0000000..756d157 --- /dev/null +++ b/lightdm-1.18-qtchooser.patch @@ -0,0 +1,45 @@ +diff -up lightdm-1.18.0/configure.ac.qtchooser lightdm-1.18.0/configure.ac +--- lightdm-1.18.0/configure.ac.qtchooser 2016-03-22 21:12:54.000000000 -0500 ++++ lightdm-1.18.0/configure.ac 2016-04-02 15:23:04.781774155 -0500 +@@ -116,9 +116,9 @@ if test x"$enable_liblightdm_qt5" != "xn + Qt5Gui + ], + [compile_liblightdm_qt5=yes +- AC_CHECK_TOOLS(MOC5, [moc]) ++ AC_CHECK_TOOLS(MOC5, [moc-qt5 moc]) + if test x"$(readlink $(which $MOC5))" = xqtchooser; then +- MOC5="$MOC5 --qt=qt5" ++ MOC5="$MOC5 --qt=5" + fi + ], + [if test "x$enable_liblightdm_qt5" != xauto; then +diff -up lightdm-1.18.0/configure.qtchooser lightdm-1.18.0/configure +--- lightdm-1.18.0/configure.qtchooser 2016-03-22 21:28:47.000000000 -0500 ++++ lightdm-1.18.0/configure 2016-04-02 15:24:31.062312669 -0500 +@@ -17693,7 +17693,7 @@ esac + fi + + if test x"$(readlink $(which $MOC4))" = xqtchooser; then +- MOC4="$MOC4 --qt=qt4" ++ MOC4="$MOC4 --qt=4" + fi + + fi +@@ -17875,7 +17875,7 @@ fi + fi + if test -z "$MOC5"; then + ac_ct_MOC5=$MOC5 +- for ac_prog in moc ++ for ac_prog in moc-qt5 moc + do + # Extract the first word of "$ac_prog", so it can be a program name with args. + set dummy $ac_prog; ac_word=$2 +@@ -17931,7 +17931,7 @@ esac + fi + + if test x"$(readlink $(which $MOC5))" = xqtchooser; then +- MOC5="$MOC5 --qt=qt5" ++ MOC5="$MOC5 --qt=5" + fi + + fi diff --git a/lightdm.logrotate b/lightdm.logrotate new file mode 100644 index 0000000..b33d2aa --- /dev/null +++ b/lightdm.logrotate @@ -0,0 +1,8 @@ +#/var/log/lightdm/*.log { +# copytruncate +# create 0660 lightdm lightdm +# maxsize 10M +# missingok +# notifempty +# weekly +#} diff --git a/lightdm.spec b/lightdm.spec index 1fa8248..0139e7c 100644 --- a/lightdm.spec +++ b/lightdm.spec @@ -1,30 +1,33 @@ -# Disable hardening, crashes https://bugzilla.redhat.com/956868 -# seems to be ok on f23+ so, allow there at least -- rex -%if 0%{?fedora} < 23 -%undefine _hardened_build -%endif # FIXME: most tests currently fail #define tests 1 Name: lightdm Summary: A cross-desktop Display Manager -Version: 1.10.6 -Release: 4%{?dist} +Version: 1.18.3 +Release: 3%{?dist} # library/bindings are LGPLv2 or LGPLv3, the rest GPLv3+ License: (LGPLv2 or LGPLv3) and GPLv3+ -URL: https://launchpad.net/lightdm/1.10 -Source0: https://launchpad.net/lightdm/1.10/%{version}/+download/lightdm-%{version}.tar.xz +URL: https://launchpad.net/lightdm/1.18 +Source0: https://launchpad.net/lightdm/1.18/%{version}/+download/lightdm-%{version}.tar.xz Source1: lightdm.pam Source2: lightdm-autologin.pam Source3: lightdm-tmpfiles.conf Source4: lightdm.service +Source5: lightdm.logrotate Source6: lightdm.rules +## .conf snippets +# use logrotate? +Source10: 50-backup-logs.conf +Source11: 50-minimum-vt.conf +Source12: 50-session-wrapper.conf +Source13: 50-user-authority-in-system-dir.conf +Source14: 50-xserver-command.conf + ## Downstream patches: -Patch10: lightdm-1.10.6-fedora_config.patch # hack in support for --nodaemon option Patch11: lightdm-1.10.2-nodaemon_option.patch # disable saving to ~/.dmrc (runs afoul of selinux, http://bugzilla.redhat.com/963238 ) @@ -32,7 +35,7 @@ Patch12: lightdm-1.9.8-no_dmrc_save.patch ## upstreamable patches # search for moc-qt5, use -qt=5|4 (instead of --qt=qt4|qt5) -Patch51: lightdm-1.10.6-qtchooser.patch +Patch51: lightdm-1.18-qtchooser.patch ## upstream patches # https://bugs.launchpad.net/lightdm/+bug/1575200 @@ -61,7 +64,7 @@ BuildRequires: pkgconfig(x11) BuildRequires: pkgconfig(xcb) BuildRequires: pkgconfig(xdmcp) BuildRequires: systemd -BuildRequires: vala +BuildRequires: vala vala-tools Requires: %{name}-gobject%{?_isa} = %{version}-%{release} Requires: accountsservice @@ -139,10 +142,6 @@ Requires: %{name}-qt5%{?_isa} = %{version}-%{release} %prep %setup -q - -%patch1 -p0 -b .ipv6 - -%patch10 -p1 -b .fedora_config %patch11 -p1 -b .nodaemon_option %patch12 -p1 -b .no_dmrc_save @@ -156,10 +155,12 @@ sed -i -e 's|"/lib /usr/lib|"/%{_lib} %{_libdir}|' configure %configure \ --disable-static \ --enable-gtk-doc \ + --enable-libaudit \ --enable-liblightdm-qt \ --enable-liblightdm-qt5 \ --enable-introspection \ %{?tests:--enable-tests}%{!?tests:--disable-tests} \ + --enable-vala \ --with-greeter-user=lightdm \ --with-greeter-session=lightdm-greeter @@ -187,6 +188,7 @@ install -Dpm 644 %{SOURCE3} %{buildroot}%{_prefix}/lib/tmpfiles.d/lightdm.conf mkdir -p %{buildroot}%{_sysconfdir}/lightdm/lightdm.conf.d/ mkdir -p %{buildroot}%{_datadir}/lightdm/lightdm.conf.d/ mkdir -p %{buildroot}%{_datadir}/lightdm/remote-sessions/ +mkdir -p %{buildroot}%{_datadir}/xgreeters/ mkdir -p %{buildroot}%{_localstatedir}/cache/lightdm/ mkdir -p %{buildroot}%{_localstatedir}/run/lightdm/ mkdir -p %{buildroot}%{_localstatedir}/log/lightdm/ @@ -196,7 +198,10 @@ mkdir -p %{buildroot}%{_localstatedir}/lib/lightdm-data/ %find_lang %{name} --with-gnome install -m644 -p -D %{SOURCE4} %{buildroot}%{_unitdir}/lightdm.service +install -m644 -p -D %{SOURCE5} %{buildroot}%{_sysconfdir}/logrotate.d/lightdm install -m644 -p -D %{SOURCE6} %{buildroot}%{_datadir}/polkit-1/rules.d/lightdm.rules +install -m644 -p %{SOURCE10} %{SOURCE11} %{SOURCE12} %{SOURCE13} %{SOURCE14} \ + %{buildroot}%{_datadir}/lightdm/lightdm.conf.d/ %check # FIXME: most of these currently fail :( -- rex @@ -221,7 +226,7 @@ exit 0 %{?systemd_postun} %files -f %{name}.lang -%doc COPYING.GPL3 +%license COPYING.GPL3 %doc NEWS %config(noreplace) %{_sysconfdir}/dbus-1/system.d/org.freedesktop.DisplayManager.conf %config(noreplace) %{_sysconfdir}/pam.d/lightdm* @@ -230,6 +235,8 @@ exit 0 %config(noreplace) %{_sysconfdir}/lightdm/keys.conf %config(noreplace) %{_sysconfdir}/lightdm/lightdm.conf %config(noreplace) %{_sysconfdir}/lightdm/users.conf +%dir %{_sysconfdir}/logrotate.d/ +%{_sysconfdir}/logrotate.d/lightdm %{_bindir}/dm-tool %{_sbindir}/lightdm %{_libexecdir}/lightdm-guest-session @@ -240,6 +247,11 @@ exit 0 %dir %attr(-,lightdm,lightdm) %{_localstatedir}/cache/lightdm/ %{_unitdir}/lightdm.service %{_datadir}/polkit-1/rules.d/lightdm.rules +%dir %{_datadir}/bash-completion/ +%dir %{_datadir}/bash-completion/completions/ +%{_datadir}/bash-completion/completions/dm-tool +%{_datadir}/bash-completion/completions/lightdm +%dir %{_datadir}/xgreeters/ # because of systemd %{_prefix}/lib/tmpfiles.d/lightdm.conf @@ -253,7 +265,7 @@ exit 0 %postun gobject -p /sbin/ldconfig %files gobject -%doc COPYING.LGPL2 COPYING.LGPL3 +%license COPYING.LGPL2 COPYING.LGPL3 %{_libdir}/liblightdm-gobject-1.so.0* %files gobject-devel @@ -262,13 +274,13 @@ exit 0 %{_libdir}/liblightdm-gobject-1.so %{_libdir}/pkgconfig/liblightdm-gobject-1.pc %{_datadir}/gir-1.0/LightDM-1.gir -%{_datadir}/vala/vapi/liblightdm-gobject-1.vapi +%{_datadir}/vala/vapi/liblightdm-gobject-1.* %post qt -p /sbin/ldconfig %postun qt -p /sbin/ldconfig %files qt -%doc COPYING.LGPL2 COPYING.LGPL3 +%license COPYING.LGPL2 COPYING.LGPL3 %{_libdir}/liblightdm-qt-3.so.0* %files qt-devel @@ -280,7 +292,7 @@ exit 0 %postun qt5 -p /sbin/ldconfig %files qt5 -%doc COPYING.LGPL2 COPYING.LGPL3 +%license COPYING.LGPL2 COPYING.LGPL3 %{_libdir}/liblightdm-qt5-3.so.0* %files qt5-devel @@ -290,6 +302,25 @@ exit 0 %changelog +* Sat Apr 08 2017 Rex Dieter - 1.18.3-3 +- own %%{_datadir}/xgreeters + +* Fri Feb 10 2017 Fedora Release Engineering - 1.18.3-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Tue Jan 03 2017 Rex Dieter - 1.18.3-1 +- lightdm-1.18.3 + +* Thu Jul 07 2016 Rex Dieter 1.18.2-1 +- lightdm-1.18.2 + +* Mon Apr 04 2016 Rex Dieter - 1.18.1-1 +- lightdm-1.18.1 + +* Sat Apr 02 2016 Rex Dieter - 1.18.0-1 +- lightdm-1.18.0 (#1321032) +- use lightdm.conf.d/ snippets for default configuration (instead of patching) (#1096216) + * Mon May 02 2016 Rex Dieter 1.10.6-4 - Error connecting to XServer via ipv6 (1322775) diff --git a/sources b/sources index 2899699..319994b 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -90e9f81b6edb9a68d4021df6154ee387 lightdm-1.10.6.tar.xz +SHA512 (lightdm-1.18.3.tar.xz) = dde34e4969d2f04e6729eb1b30d38bac9a89ff42c46f8a21e94b76beadbde450ffaa377201bd3a56e0d8d95d0640eb312ed11ecf94efb9a5a66777b944d4f234