X-Git-Url: http://git.pld-linux.org/gitweb.cgi?a=blobdiff_plain;f=gdm.spec;h=b1a22ca6fca9d1a4d16b391689a5df21c6a3b719;hb=76ae213a691685b9bd65acc234f841d46e0baf23;hp=2136f71442f235e641524e0f8d36073ee6659c51;hpb=1a7fda3b8f47ff4a357416d9a3175b477041509b;p=packages%2Fgdm.git diff --git a/gdm.spec b/gdm.spec index 2136f71..b1a22ca 100644 --- a/gdm.spec +++ b/gdm.spec @@ -2,10 +2,11 @@ # TODO: # - s=/dev/null=/home/services/xdm= in %%trigger for graceful upgrade from xdm/kdm/gdm 2.2 # - check /etc/pam.d/gdm-autologin +# - upstart package # # Conditiional build: %bcond_without selinux # without selinux -# + Summary: GNOME Display Manager Summary(es.UTF-8): Administrador de Entrada del GNOME Summary(ja.UTF-8): GNOME ディスプレイマネージャ @@ -14,76 +15,95 @@ Summary(pt_BR.UTF-8): Gerenciador de Entrada do GNOME Summary(ru.UTF-8): Дисплейный менеджер GNOME Summary(uk.UTF-8): Дисплейний менеджер GNOME Name: gdm -Version: 2.20.8 +Version: 3.0.4 Release: 2 Epoch: 2 License: GPL/LGPL Group: X11/Applications -Source0: http://ftp.gnome.org/pub/GNOME/sources/gdm/2.20/%{name}-%{version}.tar.bz2 -# Source0-md5: c183b017280e6ef25ad38d618aac2271 +Source0: http://ftp.gnome.org/pub/GNOME/sources/gdm/3.0/%{name}-%{version}.tar.xz +# Source0-md5: fd90c847b3988c685cb62f775787672b Source1: %{name}.pamd Source2: %{name}.init Source3: %{name}-pld-logo.png -# http://cvs.pld-linux.org/cgi-bin/cvsweb/pld-artwork/gdm/storky/ -Source4: %{name}-storky.tar.gz -# Source4-md5: e293fbe4a60004056f6894463b874ae8 -Source5: %{name}-autologin.pamd +Source4: %{name}-autologin.pamd +Source5: %{name}-custom.desktop +Source6: %{name}-default.desktop +Source7: gdm.upstart Patch0: %{name}-xdmcp.patch -Patch1: %{name}-conf.patch +Patch1: %{name}-polkit.patch Patch2: %{name}-xsession.patch -Patch3: %{name}-desktop.patch -Patch4: %{name}-defaults.patch +Patch3: %{name}-defaults.patch URL: http://www.gnome.org/projects/gdm/ -BuildRequires: ConsoleKit-devel +BuildRequires: GConf2-devel >= 2.32.0 +BuildRequires: accountsservice-devel >= 0.6.12 BuildRequires: attr-devel -BuildRequires: autoconf >= 2.52 -BuildRequires: automake -BuildRequires: dbus-glib-devel >= 0.73 +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.28.0 BuildRequires: gnome-doc-utils -BuildRequires: gtk+2-devel >= 2:2.12.0 -BuildRequires: intltool >= 0.36.1 -BuildRequires: libart_lgpl-devel >= 2.3.19 -BuildRequires: libglade2-devel >= 1:2.6.2 -BuildRequires: libgnomeui-devel >= 2.20.0 -BuildRequires: libgsf-devel >= 1.14.6 -BuildRequires: librsvg-devel >= 1:2.18.1 +BuildRequires: gnome-panel-devel >= 2.0.0 +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: libtool -BuildRequires: libxml2-devel >= 1:2.6.29 +BuildRequires: libwrap-devel +BuildRequires: libxklavier-devel >= 4.0-2 BuildRequires: pam-devel +BuildRequires: pango-devel >= 1.3.0 BuildRequires: perl-modules +BuildRequires: pkgconfig BuildRequires: rpmbuild(find_lang) >= 1.23 -BuildRequires: rpmbuild(macros) >= 1.311 -BuildRequires: scrollkeeper -BuildRequires: sed >= 4.0 +BuildRequires: rpmbuild(macros) >= 1.450 +BuildRequires: scrollkeeper >= 0.1.4 +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-libXft-devel BuildRequires: xorg-lib-libXi-devel BuildRequires: xorg-lib-libXinerama-devel -BuildRequires: xorg-lib-libdmx-devel -Requires(post,postun): gtk+2 -Requires(post,postun): hicolor-icon-theme +BuildRequires: xorg-lib-libXrandr-devel +BuildRequires: xz Requires(post,postun): /usr/bin/scrollkeeper-update +Requires(post,postun): gtk-update-icon-cache +Requires(post,preun): GConf2 Requires(postun): /usr/sbin/groupdel Requires(postun): /usr/sbin/userdel Requires(pre): /bin/id Requires(pre): /usr/sbin/groupadd Requires(pre): /usr/sbin/useradd -Requires: libgnomeui >= 2.20.0 +Requires: /usr/bin/X +Requires: ConsoleKit >= 0.4.1 +Requires: accountsservice >= 0.6.12 +Requires: gnome-session >= 2.91.91.1 +Requires: gnome-settings-daemon >= 2.91.91 +Requires: hicolor-icon-theme Requires: pam >= 0.99.7.1 +Requires: polkit-gnome >= 0.93 Requires: which -Requires: xorg-app-xmodmap Requires: xorg-app-sessreg +Requires: xorg-app-xmodmap +Suggests: zenity Provides: XDM Provides: group(xdm) Provides: user(xdm) +Obsoletes: gdm-Xnest +Obsoletes: gdm-user-switch-applet +Obsoletes: gnome-applet-fast-user-switch Conflicts: gdkxft # sr@Latn vs. sr@latin Conflicts: glibc-misc < 6:2.7 BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) -%define _localstatedir /var/lib - %description Gdm (the GNOME Display Manager) is a highly configurable reimplementation of xdm, the X Display Manager. Gdm allows you to log @@ -94,9 +114,8 @@ several different X sessions on your local machine at the same time. Administrador de Entrada del GNOME. %description -l ja.UTF-8 -Gdm (the GNOME Display Manager) は、高度に設定可能な xdm X Display -Manager の再実装版です。 Gdm を使うと、 X Window System -が動いているあなたの +Gdm (the GNOME Display Manager) は、高度に設定可能な xdm X Display Manager +の再実装版です。 Gdm を使うと、 X Window System が動いているあなたの システムにいろいろなセッションを選択してログインすることができます。 このバージョンの Gdm では、各種言語や、XIM を選択することも可能です。 @@ -119,19 +138,6 @@ GDM (GNOME Display Manager) - це реімплементація xdm (X Display Manager). GDM дозволяє вам входити в систему, на якій запущено X Window та підтримує роботу кількох різних X сеансів одночасно. -%package Xnest -Summary: Xnest (ie embedded X) server for GDM -Summary(pl.UTF-8): Serwer Xnest dla GDM -Group: X11/Applications -Requires: %{name} = %{epoch}:%{version}-%{release} -Requires: xorg-xserver-Xnest - -%description Xnest -This package add support for Xnest server in gdm. - -%description Xnest -l pl.UTF-8 -Ten pakiet dodaje do gdm wsparcie dla Xnest. - %package init Summary: Init script for GDM Summary(pl.UTF-8): Skrypt init dla GDM-a @@ -139,6 +145,7 @@ Group: X11/Applications Requires(post,preun): /sbin/chkconfig Requires: %{name} = %{epoch}:%{version}-%{release} Requires: open +Requires: rc-scripts >= 0.4.3.0 %description init Init script for GDM. @@ -147,66 +154,59 @@ Init script for GDM. Skrypt init dla GDM-a. %prep -%setup -q -a4 +%setup -q %patch0 -p1 %patch1 -p1 %patch2 -p1 %patch3 -p1 -%patch4 -p1 - -sed -i -e 's#sr@Latn#sr@latin#' po/LINGUAS -mv po/sr@{Latn,latin}.po %build +touch data/gdm.schemas.in.in %{__libtoolize} %{__glib_gettextize} %{__intltoolize} %{__aclocal} +%{__autoheader} %{__autoconf} %{__automake} %configure \ --disable-console-helper \ --disable-scrollkeeper \ + --disable-silent-rules \ --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-xinerama=yes \ + --with-user=xdm \ + --with-group=xdm %{__make} %install rm -rf $RPM_BUILD_ROOT -install -d $RPM_BUILD_ROOT/etc/{rc.d/init.d,pam.d,security} \ +install -d $RPM_BUILD_ROOT/etc/{rc.d/init.d,pam.d,security,init} \ $RPM_BUILD_ROOT{/home/services/xdm,/var/log/gdm} \ - $RPM_BUILD_ROOT%{_datadir}/gdm/themes/storky + $RPM_BUILD_ROOT%{_datadir}/xsessions %{__make} install \ DESTDIR=$RPM_BUILD_ROOT \ PAM_PREFIX=/etc -mv $RPM_BUILD_ROOT%{_datadir}/gdm/BuiltInSessions/default.desktop \ - $RPM_BUILD_ROOT%{_datadir}/xsessions - -install %{SOURCE1} $RPM_BUILD_ROOT/etc/pam.d/gdm -install %{SOURCE5} $RPM_BUILD_ROOT/etc/pam.d/gdm-autologin -install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/gdm - -install %{SOURCE3} $RPM_BUILD_ROOT%{_pixmapsdir} - -install storky/*.* $RPM_BUILD_ROOT%{_datadir}/gdm/themes/storky/ - +cp -p %{SOURCE1} $RPM_BUILD_ROOT/etc/pam.d/gdm +cp -p %{SOURCE4} $RPM_BUILD_ROOT/etc/pam.d/gdm-autologin +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} touch $RPM_BUILD_ROOT/etc/security/blacklist.gdm %find_lang %{name} --with-gnome --with-omf --all-name -# Remove useless files -rm -f $RPM_BUILD_ROOT%{_libdir}/gtk-2.0/modules/*.{la,a} - -# moved to gnome-session -rm -f $RPM_BUILD_ROOT%{_datadir}/xsessions/gnome.desktop +# allow executing ~/.Xclients and ~/.xsession +cp -p %{SOURCE5} $RPM_BUILD_ROOT%{_datadir}/xsessions/custom.desktop +cp -p %{SOURCE6} $RPM_BUILD_ROOT%{_datadir}/xsessions/default.desktop %clean rm -rf $RPM_BUILD_ROOT @@ -216,9 +216,13 @@ rm -rf $RPM_BUILD_ROOT %useradd -u 55 -r -d /home/services/xdm -s /bin/false -c "X Display Manager" -g xdm xdm %post +%gconf_schema_install gdm-simple-greeter.schemas %scrollkeeper_update_post %update_icon_cache hicolor +%preun +%gconf_schema_uninstall gdm-simple-greeter.schemas + %postun %scrollkeeper_update_postun %update_icon_cache hicolor @@ -230,17 +234,13 @@ fi %triggerpostun -- %{name} < 1:2.13.0.8-1 if [ -f /etc/X11/gdm/gdm.conf-custom.rpmsave ]; then - mv /etc/X11/gdm/gdm.conf-custom.rpmsave /etc/gdm/custom.conf + mv /etc/X11/gdm/gdm.conf-custom.rpmsave /etc/gdm/custom.conf fi %post init /sbin/chkconfig --add gdm -if [ -f /var/lock/subsys/gdm ]; then - echo "Run \"/sbin/service gdm restart\" to restart gdm." >&2 - echo "WARNING: it will terminate all sessions opened from gdm!" >&2 -else - echo "Run \"/sbin/service gdm start\" to start gdm." >&2 -fi +# -n skips restarting as it would otherise terminate all sessions opened from gdm! +%service -n gdm restart %preun init if [ "$1" = "0" ]; then @@ -251,50 +251,56 @@ fi %files -f %{name}.lang %defattr(644,root,root,755) %doc AUTHORS ChangeLog NEWS README TODO -%attr(755,root,root) %{_bindir}/gdm-dmx-reconnect-proxy -%attr(755,root,root) %{_bindir}/gdmdynamic +%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 -%attr(755,root,root) %{_bindir}/gdmphotosetup -%attr(755,root,root) %{_bindir}/gdmthemetester -%attr(755,root,root) %{_libdir}/gdmaskpass -%attr(755,root,root) %{_libdir}/gdmopen -%attr(755,root,root) %{_libdir}/gdmtranslate -%attr(755,root,root) %{_libdir}/gdmchooser -%attr(755,root,root) %{_libdir}/gdmgreeter -%attr(755,root,root) %{_libdir}/gdmlogin -%attr(755,root,root) %{_sbindir}/* +%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 %dir %{_sysconfdir}/gdm -%dir %{_sysconfdir}/gdm/modules -%attr(755,root,root) %config %{_sysconfdir}/gdm/Init +%dir %{_sysconfdir}/gdm/Init +%attr(755,root,root) %config %{_sysconfdir}/gdm/Init/Default %attr(755,root,root) %config %{_sysconfdir}/gdm/PreSession %attr(755,root,root) %config %{_sysconfdir}/gdm/PostSession -%attr(755,root,root) %config %{_sysconfdir}/gdm/XKeepsCrashing %attr(755,root,root) %config %{_sysconfdir}/gdm/Xsession +%dir %{_sysconfdir}/gdm/PostLogin %config %{_sysconfdir}/gdm/PostLogin/Default.sample -%config %{_sysconfdir}/gdm/locale.alias -%config %{_sysconfdir}/gdm/modules/* - -%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/gdm/ - +%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/gdm/custom.conf +%{_sysconfdir}/gconf/schemas/gdm-simple-greeter.schemas +%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 -%attr(1750,root,xdm) /var/lib/gdm -%attr(750,xdm,xdm) /var/log/gdm +%{_sysconfdir}/dconf/db/gdm +%{_sysconfdir}/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(1750,root,xdm) %dir /var/lib/gdm/.gconf.mandatory +%attr(1640,root,xdm) /var/lib/gdm/.gconf.mandatory/*.xml +%attr(644,root,xdm) /var/lib/gdm/.gconf.path +%attr(755,xdm,xdm) /var/lib/gdm/.local +%attr(750,xdm,xdm) %dir /var/log/gdm +%attr(711,root,xdm) %dir /var/run/gdm +%attr(755,xdm,xdm) %dir /var/run/gdm/greeter %attr(750,xdm,xdm) /home/services/xdm %{_pixmapsdir}/* %{_datadir}/gdm -#%%{_datadir}/xsessions - moved to gnome-session +%{_datadir}/polkit-1/actions/gdm.policy +%{_datadir}/gnome-session/sessions/gdm.session +%{_datadir}/xsessions/custom.desktop %{_datadir}/xsessions/default.desktop %{_iconsdir}/hicolor/*/apps/*.png -%{_iconsdir}/hicolor/*/apps/*.svg -%attr(755,root,root) %{_libdir}/gtk-2.0/modules/lib*.so -%{_mandir}/man1/gdm* - -%files Xnest -%defattr(644,root,root,755) -%attr(755,root,root) %{_bindir}/gdmXnest -%attr(755,root,root) %{_bindir}/gdmXnestchooser %files init %defattr(644,root,root,755) %attr(754,root,root) /etc/rc.d/init.d/gdm +%config(noreplace) %verify(not md5 mtime size) /etc/init/%{name}.conf