Summary: A lightweight display manager
Summary(ja): 軽量ディスプレイマネージャー
Name: lightdm
Version: 1.11.4
Release: 1%{?_dist_release}
License: GPLv3,LGPLv2,LGPLv3
Group: User Interface/X
URL: http://www.freedesktop.org/wiki/Software/LightDM/

Source0: https://launchpad.net/%{name}/1.11/%{version}/+download/%{name}-%{version}.tar.xz
Source1: lightdm-pam
Source2: lightdm-autologin-pam
Source4: lightdm.rules

Patch0: lightdm-1.11.2-no_dmrc_save.patch
Patch1: lightdm-1.11.2-nodaemon_option.patch
# for Vine Linux
Patch1000: lightdm-1.11.2-vine.patch

Requires(pre): shadow-utils
Requires: accountsservice
Requires: dbus-x11
Requires: pam
Requires: xorg-x11-xinit
Requires: %{name}-gobject = %{version}-%{release}
Requires: lightdm-greeter

BuildRequires: glib2-devel >= 2.30.0
BuildRequires: gobject-introspection-devel
BuildRequires: libXdmcp-devel
BuildRequires: libxcb-devel
BuildRequires: libxklavier-devel
BuildRequires: libX11-devel
BuildRequires: pam-devel
BuildRequires: libgcrypt-devel
BuildRequires: qt4-devel
BuildRequires: yelp-tools

Vendor:			Project Vine
Distribution:	Vine Linux
Packager:		Takemikaduchi


%description
An display manager that:
 * Has a lightweight codebase
 * Is standards compliant (PAM, ConsoleKit, etc)
 * Has a well defined interface between the server and user interface
 * Cross-desktop (greeters can be written in any toolkit)

%package		gobject
Summary:		LightDM GObject client library

%description	gobject
This package contains a GObject based library for LightDM clients to
use to interface with LightDM.


%package		gobject-devel
Summary:		Development files and headers for %{name}-gobject
Group:			Development/Libraries
Requires:		%{name}-gobject = %{version}-%{release}
Requires:		pkgconfig

%description	gobject-devel
Development files and headers for %{name}-gobject.


%package		qt
Summary:		LightDM QT client library

%description	qt
This package contains a QT based library for LightDM clients to use
to interface with LightDM.


%package		qt-devel
Summary:		Development files and headers for %{name}-qt
Group:			Development/Libraries
Requires:		%{name}-qt = %{version}-%{release}
Requires:		pkgconfig

%description	qt-devel
Development files and headers for %{name}-qt.


%prep
%setup -q
%patch0 -p1 -b .dmrc
%patch1 -p1 -b .nodaemon_option
%patch1000 -p1 -b .vine

%build
autoreconf -if
%configure \
		--enable-liblightdm-gobject \
        --enable-liblightdm-qt \
		--disable-liblightdm-qt5 \
        --enable-introspection \
        --with-greeter-user=lightdm

make %{?_smp_mflags}

%install
rm -rf $RPM_BUILD_ROOT
make install DESTDIR=$RPM_BUILD_ROOT

install -m 0644 -p -D %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/pam.d/lightdm
install -m 0644 -p -D %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/pam.d/lightdm-autologin
install -m 0644 -p -D %{SOURCE4} $RPM_BUILD_ROOT%{_datadir}/polkit-1/rules.d/lightdm.rules

mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/cache/lightdm
mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/run/lightdm
mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/lightdm
mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/lib/lightdm-data
mkdir -p $RPM_BUILD_ROOT%{_localstatedir}/log/lightdm

# remove unused files
rm -f $RPM_BUILD_ROOT%{_sysconfdir}/init/lightdm.conf
rm -f $RPM_BUILD_ROOT%{_sysconfdir}/apparmor.d/lightdm-guest-session
rm -f $RPM_BUILD_ROOT%{_sysconfdir}/apparmor.d/abstractions/lightdm

# remove unused files
rm -f $RPM_BUILD_ROOT%{_sysconfdir}/init/lightdm.conf
rm -f $RPM_BUILD_ROOT%{_sysconfdir}/apparmor.d/lightdm-guest-session
rm -f $RPM_BUILD_ROOT%{_sysconfdir}/apparmor.d/abstractions/lightdm
rm -f $RPM_BUILD_ROOT%{_sysconfdir}/apparmor.d/abstractions/lightdm_chromium-browser

find $RPM_BUILD_ROOT -name '*.a' -delete
find $RPM_BUILD_ROOT -name '*.la' -delete

%find_lang %{name} --with-gnome

%pre
getent group lightdm >/dev/null || groupadd -r lightdm
getent passwd lightdm >/dev/null || \
  /usr/sbin/useradd -g lightdm -M -d /var/lightdm -s /sbin/nologin -r lightdm
exit 0


%post gobject -p /sbin/ldconfig

%postun gobject -p /sbin/ldconfig

%post qt -p /sbin/ldconfig

%postun qt -p /sbin/ldconfig


%files -f %{name}.lang
%defattr(-, root, root, -)
%doc COPYING.GPL3 COPYING.LGPL2 COPYING.LGPL3 NEWS
%dir %{_sysconfdir}/lightdm
%config(noreplace) %{_sysconfdir}/lightdm/keys.conf
%config(noreplace) %{_sysconfdir}/lightdm/lightdm.conf
%config(noreplace) %{_sysconfdir}/lightdm/users.conf
%config %{_sysconfdir}/pam.d/lightdm
%config %{_sysconfdir}/pam.d/lightdm-autologin
%config %{_sysconfdir}/pam.d/lightdm-greeter
%{_sysconfdir}/dbus-1/system.d/org.freedesktop.DisplayManager.conf
%{_bindir}/dm-tool
%{_sbindir}/lightdm
%{_libexecdir}/lightdm-guest-session
%{_datadir}/polkit-1/rules.d/lightdm.rules
%{_mandir}/man1/dm-tool.1.gz
%{_mandir}/man1/lightdm.1.gz
%dir %{_localstatedir}/log/lightdm
%dir %{_localstatedir}/run/lightdm
%dir %attr(1770,lightdm,lightdm) %{_localstatedir}/lightdm
%dir %attr(-,lightdm,lightdm) %{_localstatedir}/cache/lightdm
%dir %attr(-,lightdm,lightdm) %{_localstatedir}/lib/lightdm-data/

%files gobject
%defattr(-, root, root, -)
%{_libdir}/liblightdm-gobject-1.so.*
%{_libdir}/girepository-1.0/LightDM-1.typelib

%files gobject-devel
%defattr(-, root, root, -)
%{_includedir}/lightdm-gobject-1
%{_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}/gtk-doc/html/lightdm-gobject-1

%files qt
%defattr(-, root, root, -)
%{_libdir}/liblightdm-qt-3.so.*

%files qt-devel
%defattr(-, root, root, -)
%{_includedir}/lightdm-qt-3
%{_libdir}/liblightdm-qt-3.so
%{_libdir}/pkgconfig/liblightdm-qt-3.pc



%changelog
* Sun Jul 06 2014 Yoji TOYODA <bsyamato@sea.plala.or.jp> 1.11.4-1
- new upstream release

* Sun Jun 01 2014 Yoji TOYODA <bsyamato@sea.plala.or.jp> 1.11.2-1
- initial build