]> git.pld-linux.org Git - packages/gdm2.20.git/blobdiff - gdm.spec
- Obsoletes: slim
[packages/gdm2.20.git] / gdm.spec
index 81c49c57a8372d036130e817147d3c1f4b156a7b..160ecbcbbafb7a2332be6e3cce4d45bf8beb9a60 100644 (file)
--- a/gdm.spec
+++ b/gdm.spec
@@ -1,51 +1,85 @@
+#
+# TODO:
+# s=/dev/null=/home/services/xdm= in %%trigger for graceful upgrade from xdm/kdm/gdm 2.2
+# check /etc/pam.d/gdm-autologin
+#
+# Conditiional build:
+%bcond_without selinux # without selinux
+#
 Summary:       GNOME Display Manager
 Summary(es):   Administrador de Entrada del GNOME
-Summary(pl):   gdm
+Summary(ja):   GNOME ¥Ç¥£¥¹¥×¥ì¥¤¥Þ¥Í¡¼¥¸¥ã
+Summary(pl):   gdm - zarz±dca ekranów GNOME
 Summary(pt_BR):        Gerenciador de Entrada do GNOME
+Summary(ru):   äÉÓÐÌÅÊÎÙÊ ÍÅÎÅÄÖÅÒ GNOME
+Summary(uk):   äÉÓÐÌÅÊÎÉÊ ÍÅÎÅÄÖÅÒ GNOME
 Name:          gdm
-Version:       2.2.5.4
-Release:       6
+Version:       2.16.2
+Release:       2
 Epoch:         1
-License:       LGPL/GPL
+License:       GPL/LGPL
 Group:         X11/Applications
-Source0:       ftp://ftp.gnome.org/pub/GNOME/stable/sources/%{name}/%{name}-%{version}.tar.bz2
+Source0:       http://ftp.gnome.org/pub/GNOME/sources/gdm/2.16/%{name}-%{version}.tar.bz2
+# Source0-md5: 3a5d77c6cc59fb1eecf898abcbb7eb25
 Source1:       %{name}.pamd
 Source2:       %{name}.init
-Source3:       %{name}.conf
-Source4:       %{name}-pld-logo.png
+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
 Patch0:                %{name}-xdmcp.patch
-Patch1:                %{name}-am_fixes.patch
-Patch2:                %{name}-permissions.patch
+Patch1:                %{name}-conf.patch
+Patch2:                %{name}-xsession.patch
+Patch3:                %{name}-logdir.patch
+Patch4:                %{name}-desktop.patch
+Patch5:                %{name}-xorg.patch
+Patch6:                %{name}-sessreg.patch
+URL:           http://www.jirka.org/gdm.html
+BuildRequires: attr-devel
 BuildRequires: autoconf
 BuildRequires: automake
-BuildRequires: esound-devel
-BuildRequires: gdk-pixbuf-devel
 BuildRequires: gettext-devel
-BuildRequires: gnome-libs-devel
-BuildRequires: gtk+-devel
-BuildRequires: libglade-devel
+BuildRequires: gtk+2-devel >= 2:2.10.6
+BuildRequires: intltool >= 0.35.0
+BuildRequires: libglade2-devel >= 1:2.6.0
+BuildRequires: libgnomeui-devel >= 2.16.1
+BuildRequires: libgsf-devel >= 1.14.2
+BuildRequires: librsvg-devel >= 1:2.16.0
+%{?with_selinux:BuildRequires: libselinux-devel}
 BuildRequires: libtool
-BuildRequires: libxml-devel
+BuildRequires: libxml2-devel >= 1:2.6.26
+BuildRequires: pam-devel
 BuildRequires: perl-modules
-BuildRequires: scrollkeeper
-BuildRequires: intltool >= 0.14
-Requires:      gnome-libs >= 1.0.0
+BuildRequires: rpmbuild(macros) >= 1.268
+BuildRequires: xorg-lib-libXdmcp-devel
+BuildRequires: xorg-lib-libXi-devel
+BuildRequires: xorg-lib-libXinerama-devel
+BuildRequires: xorg-lib-libdmx-devel
+Requires(post,postun): gtk+2 >= 2:2.10.6
+Requires(post,postun): hicolor-icon-theme
+Requires(post,postun): /usr/bin/scrollkeeper-update
+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.16.1
+Requires:      pam >= 0.79.0
 Requires:      which
-Requires:      /usr/X11R6/bin/sessreg
-PreReq:                scrollkeeper
-PreReq:                shadow
-PreReq:                /sbin/chkconfig
+Requires:      xorg-app-sessreg
+Provides:      group(xdm)
+Provides:      user(xdm)
+Obsoletes:     X11-xdm
+Obsoletes:     entrance
+Obsoletes:     kdm
+Obsoletes:     slim
+Obsoletes:     wdm
+Obsoletes:     xdm
+Conflicts:     gdkxft
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
-Obsoletes:     xdm kdm wdm
 
-%define                _prefix         /usr/X11R6
-%define                _bindir         %{_prefix}/bin
-%define                _datadir        %{_prefix}/share
-%define                _sbindir        %{_prefix}/sbin
-%define                _mandir         %{_prefix}/man
 %define                _localstatedir  /var/lib
-%define                _sysconfdir     /etc/X11
-%define                _omf_dest_dir   %(scrollkeeper-config --omfdir)
 
 %description
 Gdm (the GNOME Display Manager) is a highly configurable
@@ -56,20 +90,38 @@ several different X sessions on your local machine at the same time.
 %description -l es
 Administrador de Entrada del GNOME.
 
+%description -l ja
+Gdm (the GNOME Display Manager) ¤Ï¡¢¹âÅÙ¤ËÀßÄê²Äǽ¤Ê xdm X Display
+Manager ¤ÎºÆ¼ÂÁõÈǤǤ¹¡£ Gdm ¤ò»È¤¦¤È¡¢ X Window System
+¤¬Æ°¤¤¤Æ¤¤¤ë¤¢¤Ê¤¿¤Î
+¥·¥¹¥Æ¥à¤Ë¤¤¤í¤¤¤í¤Ê¥»¥Ã¥·¥ç¥ó¤òÁªÂò¤·¤Æ¥í¥°¥¤¥ó¤¹¤ë¤³¤È¤¬¤Ç¤­¤Þ¤¹¡£
+
+¤³¤Î¥Ð¡¼¥¸¥ç¥ó¤Î Gdm ¤Ç¤Ï¡¢³Æ¼ï¸À¸ì¤ä¡¢XIM ¤òÁªÂò¤¹¤ë¤³¤È¤â²Äǽ¤Ç¤¹¡£
+
 %description -l pl
 Gdm jest wysokokonfigurowaln± reimplementacj± xdma. Gdm pozwala
 logowaæ siê do systemu z poziomu X11 i wspiera jednoczesn± pracê kilku
-ró¿nych Xsesji na lokalnej maszynie.
+ró¿nych sesji X na lokalnej maszynie.
 
 %description -l pt_BR
 Gerenciador de Entrada do GNOME.
 
+%description -l ru
+GDM (GNOME Display Manager) - ÜÔÏ ÒÅÉÍÐÌÅÍÅÎÔÁÃÉÑ xdm (X Display
+Manager). GDM ÐÏÚ×ÏÌÑÅÔ ×ÁÍ ×ÈÏÄÉÔØ × ÓÉÓÔÅÍÕ, ÎÁ ËÏÔÏÒÏÊ ÚÁÐÕÝÅÎÏ X
+Window É ÐÏÄÄÅÒÖÉ×ÁÅÔ ÒÁÂÏÔÕ ÎÅÓËÏÌØÕÉÈ ÒÁÚÎÙÈ X ÓÅÁÎÓÏ× ÏÄÎÏ×ÒÅÍÅÎÎÏ.
+
+%description -l uk
+GDM (GNOME Display Manager) - ÃÅ ÒŦÍÐÌÅÍÅÎÔÁæѠxdm (X Display
+Manager). GDM ÄÏÚ×ÏÌѤ ×ÁÍ ×ÈÏÄÉÔÉ × ÓÉÓÔÅÍÕ, ÎÁ Ñ˦ʠÚÁÐÕÝÅÎÏ X
+Window ÔÁ Ð¦ÄÔÒÉÍÕ¤ ÒÏÂÏÔՠ˦ÌØËÏÈ Ò¦ÚÎÉÈ X ÓÅÁÎӦנÏÄÎÏÞÁÓÎÏ.
+
 %package Xnest
 Summary:       Xnest (ie embedded X) server for GDM
 Summary(pl):   Serwer Xnest dla GDM
 Group:         X11/Applications
-Requires:      %{name} = %{version}
-Requires:      XFree86-Xnest
+Requires:      %{name} = %{epoch}:%{version}-%{release}
+Requires:      xorg-xserver-Xnest
 
 %description Xnest
 This package add support for Xnest server in gdm.
@@ -77,119 +129,170 @@ This package add support for Xnest server in gdm.
 %description Xnest -l pl
 Ten pakiet dodaje do gdm wsparcie dla Xnest.
 
+%package init
+Summary:       Init script for GDM
+Summary(pl):   Skrypt init dla GDM-a
+Group:         X11/Applications
+Requires(post,preun):  /sbin/chkconfig
+Requires:      %{name} = %{epoch}:%{version}-%{release}
+Requires:      open
+
+%description init
+Init script for GDM.
+
+%description init -l pl
+Skrypt init dla GDM-a.
+
 %prep
-%setup -q
+%setup -q -a4
 %patch0 -p1
 %patch1 -p1
 %patch2 -p1
+%patch3 -p1
+%patch4 -p1
+%patch5 -p1
+%patch6 -p1
 
 %build
-rm -f missing
-libtoolize --copy --force
-gettextize --copy --force
-aclocal -I %{_aclocaldir}/gnome
-autoconf
-automake -a -c -f
+%{__libtoolize}
+%{__glib_gettextize}
+%{__intltoolize}
+%{__aclocal}
+%{__autoconf}
+%{__automake}
 %configure \
-       --with-xinerama=yes \
-       --with-xdmcp=yes \
+       --disable-console-helper \
+       --disable-scrollkeeper \
+       --enable-authentication-scheme=pam \
+       --with-pam-prefix=/etc \
        --with-tcp-wrappers=yes \
-       --disable-console-helper
+       --with%{!?with_selinux:out}-selinux \
+       --with-xdmcp=yes \
+       --with-xinerama=yes
 
 %{__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} \
+       $RPM_BUILD_ROOT{/home/services/xdm,/var/log/gdm} \
+       $RPM_BUILD_ROOT%{_datadir}/gdm/themes/storky
 
 %{__make} install \
        DESTDIR=$RPM_BUILD_ROOT \
-       Settingsdir=%{_applnkdir}/Settings/GNOME \
-       Systemdir=%{_applnkdir}/System \
-       omf_dest_dir=%{_omf_dest_dir}/omf/%{name}
+       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%{_sysconfdir}/%{name}/gdm.conf
-install %{SOURCE4} $RPM_BUILD_ROOT/usr/X11R6/share/pixmaps
-touch $RPM_BUILD_ROOT/etc/security/blacklist.gdm
 
-mv $RPM_BUILD_ROOT%{_applnkdir}/System/gdmconfig.desktop \
-       $RPM_BUILD_ROOT%{_applnkdir}/Settings/GNOME/
+install %{SOURCE3} $RPM_BUILD_ROOT%{_pixmapsdir}
+
+install storky/*.* $RPM_BUILD_ROOT%{_datadir}/gdm/themes/storky/
 
-gzip -9nf AUTHORS ChangeLog NEWS README TODO
+touch $RPM_BUILD_ROOT/etc/security/blacklist.gdm
 
 %find_lang %{name} --all-name --with-gnome
 
+# 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
+
 %clean
 rm -rf $RPM_BUILD_ROOT
 
 %pre
-/usr/sbin/groupadd -g 55 -r -f xdm
+%groupadd -g 55 -r -f xdm
+%useradd -u 55 -r -d /home/services/xdm -s /bin/false -c "X Display Manager" -g xdm xdm
 
-if [ -z "`id -u xdm 2>/dev/null`" ]; then
-       /usr/sbin/useradd -u 55 -r -d /dev/null -s /bin/false -c 'X Display Manager' -g xdm xdm 1>&2
+%post
+%scrollkeeper_update_post
+%update_icon_cache hicolor
+
+%postun
+%scrollkeeper_update_postun
+%update_icon_cache hicolor
+if [ "$1" = "0" ]; then
+       %userremove xdm
+       %groupremove xdm
 fi
 
-%post
+%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
+fi
+
+%post init
 /sbin/chkconfig --add gdm
 if [ -f /var/lock/subsys/gdm ]; then
-       echo "Run \"/etc/rc.d/init.d/gdm restart\" to restart gdm." >&2
+       echo "Run \"/sbin/service gdm restart\" to restart gdm." >&2
+       echo "WARNING: it will terminate all sessions opened from gdm!" >&2
 else
-       echo "Run \"/etc/rc.d/init.d/gdm start\" to start gdm." >&2
+       echo "Run \"/sbin/service gdm start\" to start gdm." >&2
 fi
-/usr/bin/scrollkeeper-update
 
-%preun
+%preun init
 if [ "$1" = "0" ]; then
-       if [ -f /var/lock/subsys/gdm ]; then
-               /etc/rc.d/init.d/gdm stop >&2
-       fi
+       %service gdm stop
        /sbin/chkconfig --del gdm
 fi
 
-%postun
-if [ "$1" = "0" ]; then
-       if [ -n "`id -u xdm 2>/dev/null`" ]; then
-               /usr/sbin/userdel xdm
-       fi
-       /usr/sbin/groupdel xdm
-fi
-/usr/bin/scrollkeeper-update
-
 %files -f %{name}.lang
 %defattr(644,root,root,755)
-%doc *.gz
-%attr(755,root,root) %{_bindir}/gdm
-%attr(755,root,root) %{_bindir}/gdmchooser
-%attr(755,root,root) %{_bindir}/gdmconfig
+%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) %{_bindir}/gdmflexiserver
-%attr(755,root,root) %{_bindir}/gdmlogin
-%attr(755,root,root) %{_bindir}/gdmmktemp
 %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}/*
+%dir %{_sysconfdir}/gdm
+%dir %{_sysconfdir}/gdm/modules
 %attr(755,root,root) %config %{_sysconfdir}/gdm/Init
 %attr(755,root,root) %config %{_sysconfdir}/gdm/PreSession
-%attr(755,root,root) %config %{_sysconfdir}/gdm/Sessions
 %attr(755,root,root) %config %{_sysconfdir}/gdm/PostSession
-%attr(755,root,root) %config %{_sysconfdir}/gdm/gnomerc
 %attr(755,root,root) %config %{_sysconfdir}/gdm/XKeepsCrashing
-%config %{_sysconfdir}/gdm/factory-gdm.conf
-%config %{_sysconfdir}/gdm/gdm.conf
+%attr(755,root,root) %config %{_sysconfdir}/gdm/Xsession
+%config %{_sysconfdir}/gdm/PostLogin/Default.sample
 %config %{_sysconfdir}/gdm/locale.alias
-%attr(755,root,root) %dir %{_sysconfdir}/gdm
-%attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/pam.d/gdm
-%attr(640,root,root) %config(noreplace) %verify(not size mtime md5) /etc/security/blacklist.gdm
-%attr(770,root,xdm) /var/lib/gdm
-%attr(754,root,root) /etc/rc.d/init.d/gdm
+%config %{_sysconfdir}/gdm/modules/*
+
+%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/gdm/
+
+%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(750,xdm,xdm) /var/lib/gdm
+%attr(750,xdm,xdm) /var/log/gdm
+%attr(750,xdm,xdm) /home/services/xdm
 %{_pixmapsdir}/*
-# these lines to devel subpackage?
-%{_applnkdir}/Settings/GNOME/*
-%{_applnkdir}/System/gdmflexiserver.desktop
+%{_desktopdir}/gdmsetup.desktop
+%{_desktopdir}/gdmflexiserver.desktop
+%{_desktopdir}/gdmphotosetup.desktop
 %{_datadir}/gdm
-%{_omf_dest_dir}/omf/%{name}
+#%%{_datadir}/xsessions  -  moved to gnome-session
+%{_datadir}/xsessions/default.desktop
+%{_iconsdir}/hicolor/*/apps/*.png
+%{_omf_dest_dir}/gdm
+%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
-%{_applnkdir}/System/gdmflexiserver-xnest.desktop
+%{_desktopdir}/gdmflexiserver-xnest.desktop
+
+%files init
+%defattr(644,root,root,755)
+%attr(754,root,root) /etc/rc.d/init.d/gdm
This page took 0.042823 seconds and 4 git commands to generate.