X-Git-Url: http://git.pld-linux.org/gitweb.cgi?p=packages%2Fgdm.git;a=blobdiff_plain;f=gdm.spec;h=1e60635f733d7ada872caba876eec09980273c2a;hp=6b2ac6a1f69ca9c01b41039052b1ca29f81c0e73;hb=787341bb0d552aea6a9944ec80f3fd73a5d7d71e;hpb=7c166dd1a54bbe8a9b3f058e1f3db4d8797257c4 diff --git a/gdm.spec b/gdm.spec index 6b2ac6a..1e60635 100644 --- a/gdm.spec +++ b/gdm.spec @@ -1,12 +1,13 @@ # # TODO: # - s=/dev/null=/home/services/xdm= in %%trigger for graceful upgrade from xdm/kdm/gdm 2.2 -# - check /etc/pam.d/gdm-autologin +# - check all /etc/pam.d/gdm-* to be pldized: +# gdm-autologin[4] gdm-fingerprint[10] gdm-password[1] gdm-smartcard gdm-launch-environment[11] # # Conditional build: -%bcond_without selinux # without selinux %bcond_without systemd # by default use systemd for session tracking instead of ConsoleKit (fallback to ConsoleKit on runtime) +%define glib2_version 1:2.36.0 Summary: GNOME Display Manager Summary(es.UTF-8): Administrador de Entrada del GNOME Summary(ja.UTF-8): GNOME ディスプレイマネージャ @@ -15,13 +16,13 @@ Summary(pt_BR.UTF-8): Gerenciador de Entrada do GNOME Summary(ru.UTF-8): Дисплейный менеджер GNOME Summary(uk.UTF-8): Дисплейний менеджер GNOME Name: gdm -Version: 3.4.1 -Release: 2 +Version: 3.16.1.1 +Release: 1 Epoch: 2 License: GPL/LGPL Group: X11/Applications -Source0: http://ftp.gnome.org/pub/GNOME/sources/gdm/3.4/%{name}-%{version}.tar.xz -# Source0-md5: fda0470340f9c0bc2f8daccb280af520 +Source0: http://ftp.gnome.org/pub/GNOME/sources/gdm/3.16/%{name}-%{version}.tar.xz +# Source0-md5: 0b315af5fe0ee66055edb6f301510820 Source1: %{name}.pamd Source2: %{name}.init Source3: %{name}-pld-logo.png @@ -30,52 +31,46 @@ Source5: %{name}-custom.desktop Source6: %{name}-default.desktop Source7: %{name}.upstart Source9: %{name}.tmpfiles +Source10: %{name}-fingerprint.pamd +Source11: %{name}-launch-environment.pamd Patch0: %{name}-xdmcp.patch -Patch1: %{name}-polkit.patch -Patch2: %{name}-xsession.patch -Patch3: %{name}-defaults.patch -Patch4: shell-check.patch +Patch1: %{name}-xsession.patch +Patch2: %{name}-defaults.patch +Patch3: shell-check.patch URL: http://www.gnome.org/projects/gdm/ BuildRequires: accountsservice-devel >= 0.6.12 -BuildRequires: attr-devel BuildRequires: audit-libs-devel BuildRequires: autoconf >= 2.60 BuildRequires: automake >= 1:1.11 -BuildRequires: check >= 0.9.4 -BuildRequires: dbus-glib-devel >= 0.74 -BuildRequires: docbook-dtd412-xml -BuildRequires: fontconfig-devel >= 2.5.0 -BuildRequires: gettext-devel -BuildRequires: glib2-devel >= 1:2.30.0 -BuildRequires: gnome-doc-utils +BuildRequires: check-devel >= 0.9.4 +BuildRequires: gettext-tools >= 0.17 +BuildRequires: glib2-devel >= %{glib2_version} +BuildRequires: gobject-introspection-devel >= 0.9.12 BuildRequires: gtk+3-devel >= 3.0.0 BuildRequires: intltool >= 0.40.0 BuildRequires: iso-codes BuildRequires: libcanberra-gtk3-devel >= 0.4 -%{?with_selinux:BuildRequires: libselinux-devel} +BuildRequires: libselinux-devel BuildRequires: libtool BuildRequires: libwrap-devel -BuildRequires: libxklavier-devel >= 4.0-2 -BuildRequires: nss-devel >= 3.11.1 BuildRequires: pam-devel -BuildRequires: pango-devel >= 1.3.0 -BuildRequires: perl-modules BuildRequires: pkgconfig -BuildRequires: polkit-devel >= 0.93 +BuildRequires: plymouth-devel BuildRequires: rpmbuild(find_lang) >= 1.23 BuildRequires: rpmbuild(macros) >= 1.627 -%{?with_systemd:BuildRequires: systemd-devel} +%{?with_systemd:BuildRequires: systemd-devel >= 186} BuildRequires: tar >= 1:1.22 -BuildRequires: upower-devel >= 0.9.0 BuildRequires: xorg-lib-libX11-devel BuildRequires: xorg-lib-libXau-devel BuildRequires: xorg-lib-libXdmcp-devel +BuildRequires: xorg-lib-libXext-devel BuildRequires: xorg-lib-libXft-devel BuildRequires: xorg-lib-libXi-devel BuildRequires: xorg-lib-libXinerama-devel -BuildRequires: xorg-lib-libXrandr-devel +BuildRequires: xorg-xserver-Xephyr BuildRequires: xz -Requires(post,postun): glib2 >= 1:2.26.0 +BuildRequires: yelp-tools +Requires(post,postun): glib2 >= %{glib2_version} Requires(post,postun): gtk-update-icon-cache Requires(postun): /usr/sbin/groupdel Requires(postun): /usr/sbin/userdel @@ -83,24 +78,24 @@ Requires(pre): /bin/id Requires(pre): /usr/sbin/groupadd Requires(pre): /usr/sbin/useradd Requires(posttrans): dconf -Requires(post,preun,postun): systemd-units >= 38 Requires: %{name}-libs = %{epoch}:%{version}-%{release} Requires: /usr/bin/X Requires: accountsservice >= 0.6.12 Requires: dbus-x11 Requires: gdm-wm >= 3.2.1 +Requires: glib2 >= %{glib2_version} Requires: gnome-session >= 3.0.0 Requires: gnome-settings-daemon >= 3.0.0 Requires: hicolor-icon-theme Requires: pam >= 0.99.7.1 Requires: polkit-gnome >= 0.93 -Requires: systemd-units >= 38 Requires: which Requires: xinitrc-ng >= 1.0 Requires: xorg-app-sessreg Requires: xorg-app-xmodmap Suggests: ConsoleKit-x11 >= 0.4.1 Suggests: pam-pam_gnome_keyring +Suggests: xorg-xserver-Xephyr Suggests: zenity Provides: XDM Provides: group(xdm) @@ -112,6 +107,7 @@ Obsoletes: gnome-applet-fast-user-switch Conflicts: gdkxft # sr@Latn vs. sr@latin Conflicts: glibc-misc < 6:2.7 +Conflicts: systemd < 186 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) %description @@ -190,9 +186,11 @@ Summary: Init script for GDM Summary(pl.UTF-8): Skrypt init dla GDM-a Group: X11/Applications Requires(post,preun): /sbin/chkconfig +Requires(post,preun,postun): systemd-units >= 38 Requires: %{name} = %{epoch}:%{version}-%{release} Requires: open Requires: rc-scripts >= 0.4.3.0 +Requires: systemd-units >= 38 %description init Init script for GDM. @@ -218,8 +216,7 @@ Opis zadania Upstart dla GDM. %patch0 -p1 %patch1 -p1 %patch2 -p1 -%patch3 -p1 -%patch4 -p1 +#patch3 -p1 %build touch data/gdm.schemas.in.in @@ -231,21 +228,22 @@ touch data/gdm.schemas.in.in %{__autoconf} %{__automake} %configure \ + SYSTEMD_X_SERVER=/lib/systemd/systemd-multi-seat-x \ + %{?debug:--enable-debug} \ --disable-console-helper \ - --disable-scrollkeeper \ --disable-silent-rules \ %{__with_without systemd systemd} \ --with-console-kit \ --enable-authentication-scheme=pam \ --with-pam-prefix=/etc \ --with-tcp-wrappers=yes \ - --with%{!?with_selinux:out}-selinux \ --with-xdmcp=yes \ --with-xinerama=yes \ --with-user=xdm \ - --with-group=xdm + --with-group=xdm \ + --enable-ipv6 -%{__make} +%{__make} -j1 %install rm -rf $RPM_BUILD_ROOT @@ -258,14 +256,15 @@ install -d $RPM_BUILD_ROOT/etc/{rc.d/init.d,pam.d,security,init} \ DESTDIR=$RPM_BUILD_ROOT \ PAM_PREFIX=%{_sysconfdir} -cp -p %{SOURCE1} $RPM_BUILD_ROOT/etc/pam.d/gdm cp -p %{SOURCE1} $RPM_BUILD_ROOT/etc/pam.d/gdm-password +cp -p %{SOURCE10} $RPM_BUILD_ROOT/etc/pam.d/gdm-fingerprint cp -p %{SOURCE4} $RPM_BUILD_ROOT/etc/pam.d/gdm-autologin +cp -p %{SOURCE11} $RPM_BUILD_ROOT/etc/pam.d/gdm-launch-environment install -p %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/gdm cp -p %{SOURCE7} $RPM_BUILD_ROOT/etc/init/%{name}.conf cp -p %{SOURCE3} $RPM_BUILD_ROOT%{_pixmapsdir} ln -s /dev/null $RPM_BUILD_ROOT%{systemdunitdir}/gdm.service -install %{SOURCE9} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/%{name}.conf +cp -p %{SOURCE9} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/%{name}.conf touch $RPM_BUILD_ROOT/etc/security/blacklist.gdm @@ -275,8 +274,7 @@ touch $RPM_BUILD_ROOT/etc/security/blacklist.gdm cp -p %{SOURCE5} $RPM_BUILD_ROOT%{_datadir}/xsessions/custom.desktop cp -p %{SOURCE6} $RPM_BUILD_ROOT%{_datadir}/xsessions/default.desktop -%{__rm} $RPM_BUILD_ROOT%{_libdir}/gdm/simple-greeter/extensions/*.{a,la} \ - $RPM_BUILD_ROOT%{_libdir}/*.la +%{__rm} $RPM_BUILD_ROOT%{_libdir}/*.la %clean rm -rf $RPM_BUILD_ROOT @@ -290,16 +288,11 @@ umask 022 %useradd -u 55 -r -d /home/services/xdm -s /bin/false -c "X Display Manager" -g xdm xdm %post -%glib_compile_schemas %update_icon_cache hicolor -%systemd_reload %postun %update_icon_cache hicolor -%systemd_reload - if [ "$1" = "0" ]; then - %glib_compile_schemas %userremove xdm %groupremove xdm fi @@ -313,6 +306,10 @@ fi /sbin/chkconfig --add gdm # -n skips restarting as it would otherise terminate all sessions opened from gdm! %service -n gdm restart +%systemd_reload + +%postun init +%systemd_reload %preun init if [ "$1" = "0" ]; then @@ -320,32 +317,27 @@ if [ "$1" = "0" ]; then /sbin/chkconfig --del gdm fi -%post libs -p /sbin/ldconfig -%postun libs -p /sbin/ldconfig +%post libs +/sbin/ldconfig +%glib_compile_schemas + +%postun libs +/sbin/ldconfig +if [ "$1" = "0" ]; then + %glib_compile_schemas +fi %files -f %{name}.lang %defattr(644,root,root,755) %doc AUTHORS ChangeLog NEWS README TODO %attr(755,root,root) %{_sbindir}/gdm -%attr(755,root,root) %{_sbindir}/gdm-binary %attr(755,root,root) %{_bindir}/gdm-screenshot %attr(755,root,root) %{_bindir}/gdmflexiserver -%dir %{_libdir}/gdm -%dir %{_libdir}/gdm/simple-greeter -%dir %{_libdir}/gdm/simple-greeter/extensions -%attr(755,root,root) %{_libdir}/gdm/simple-greeter/extensions/libfingerprint.so -%attr(755,root,root) %{_libdir}/gdm/simple-greeter/extensions/libpassword.so -%attr(755,root,root) %{_libdir}/gdm/simple-greeter/extensions/libsmartcard.so -%attr(755,root,root) %{_libexecdir}/gdm-crash-logger -%attr(755,root,root) %{_libexecdir}/gdm-factory-slave %attr(755,root,root) %{_libexecdir}/gdm-host-chooser -%attr(755,root,root) %{_libexecdir}/gdm-product-slave %attr(755,root,root) %{_libexecdir}/gdm-session-worker %attr(755,root,root) %{_libexecdir}/gdm-simple-chooser -%attr(755,root,root) %{_libexecdir}/gdm-simple-greeter -%attr(755,root,root) %{_libexecdir}/gdm-simple-slave -%attr(755,root,root) %{_libexecdir}/gdm-xdmcp-chooser-slave -%attr(755,root,root) %{_libexecdir}/gdm-smartcard-worker +%attr(755,root,root) %{_libdir}/gdm-wayland-session +%attr(755,root,root) %{_libdir}/gdm-x-session %dir %{_sysconfdir}/gdm %dir %{_sysconfdir}/gdm/Init %attr(755,root,root) %config %{_sysconfdir}/gdm/Init/Default @@ -358,13 +350,9 @@ fi %config(noreplace) %verify(not md5 mtime size) /etc/dbus-1/system.d/* %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/pam.d/gdm* %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/security/blacklist.gdm -%{_sysconfdir}/dconf/db/gdm.d -%{_sysconfdir}/dconf/profile/gdm +%{_datadir}/dconf/profile/gdm %attr(1755,root,xdm) %dir /var/cache/gdm -%attr(1770,root,xdm) %dir /var/gdm %attr(1770,root,xdm) %dir /var/lib/gdm -%dir /var/lib/gdm/.config -%attr(755,xdm,xdm) %dir /var/lib/gdm/.config/dconf %attr(755,xdm,xdm) /var/lib/gdm/.local %attr(750,xdm,xdm) %dir /var/log/gdm %attr(711,root,xdm) %dir /var/run/gdm @@ -373,40 +361,31 @@ fi %{systemdtmpfilesdir}/%{name}.conf %{_pixmapsdir}/* %{_datadir}/gdm -%{_datadir}/polkit-1/actions/gdm.policy -%{_datadir}/gnome-session/sessions/gdm-fallback.session -%{_datadir}/gnome-session/sessions/gdm-shell.session %{_datadir}/xsessions/custom.desktop %{_datadir}/xsessions/default.desktop %{_iconsdir}/hicolor/*/apps/*.png -%{_datadir}/glib-2.0/schemas/org.gnome.login-screen.gschema.xml %files libs %defattr(644,root,root,755) -%attr(755,root,root) %{_libdir}/libgdmgreeter.so.1.0.0 -%attr(755,root,root) %ghost %{_libdir}/libgdmgreeter.so.1 -%attr(755,root,root) %{_libdir}/libgdmsimplegreeter.so.1.0.0 -%attr(755,root,root) %ghost %{_libdir}/libgdmsimplegreeter.so.1 -%{_libdir}/girepository-1.0/GdmGreeter-1.0.typelib +%attr(755,root,root) %{_libdir}/libgdm.so.1.0.0 +%attr(755,root,root) %ghost %{_libdir}/libgdm.so.1 +%{_libdir}/girepository-1.0/Gdm-1.0.typelib +%{_datadir}/glib-2.0/schemas/org.gnome.login-screen.gschema.xml %files devel %defattr(644,root,root,755) %dir %{_includedir}/gdm -%dir %{_includedir}/gdm/greeter -%{_includedir}/gdm/greeter/gdm-greeter-client.h -%{_includedir}/gdm/greeter/gdm-greeter-sessions.h -%dir %{_includedir}/gdm/simple-greeter -%{_includedir}/gdm/simple-greeter/gdm-login-extension.h -%{_pkgconfigdir}/gdmgreeter.pc -%{_pkgconfigdir}/gdmsimplegreeter.pc -%{_libdir}/libgdmgreeter.so -%{_libdir}/libgdmsimplegreeter.so -%{_datadir}/gir-1.0/GdmGreeter-1.0.gir +%{_includedir}/gdm/gdm-client-glue.h +%{_includedir}/gdm/gdm-client.h +%{_includedir}/gdm/gdm-sessions.h +%{_includedir}/gdm/gdm-user-switching.h +%{_pkgconfigdir}/gdm.pc +%{_libdir}/libgdm.so +%{_datadir}/gir-1.0/Gdm-1.0.gir %files static %defattr(644,root,root,755) -%{_libdir}/libgdmgreeter.a -%{_libdir}/libgdmsimplegreeter.a +%{_libdir}/libgdm.a %files init %defattr(644,root,root,755)