File lightdm-gtk-greeter.spec of Package lightdm-gtk-greeter

#
# spec file for package lightdm-gtk-greeter
#
# Copyright (c) 2015 SUSE LINUX GmbH, Nuernberg, Germany.
# Copyright (c) 2012 Guido Berhoerster.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.

# Please submit bugfixes or comments via http://bugs.opensuse.org/
#


# ATTENTION: Please do not update to releases > 1.3.1 for now -- gber@opensuse.org

Name:           lightdm-gtk-greeter
Version:        1.3.1
Release:        0
Summary:        GTK-based Greeter for LightDM
License:        GPL-3.0+
Group:          System/X11/Displaymanagers
Url:            https://launchpad.net/lightdm-gtk-greeter
Source0:        %{name}-%{version}.tar.gz
# PATCH-FIX-UPSTREAM lightdm-gtk-greeter-use-new-autologin-api.patch gber@opensuse.org -- Use the new autologin API in liblightdm-gobject-1 >= 1.3.5 (backported from upstream git)
Patch0:         lightdm-gtk-greeter-use-new-autologin-api.patch
# PATCH-FIX-UPSTREAM lightdm-gtk-greeter-fix-cursor.patch lp#1024482 gber@opensuse.org -- Fix the cursor theme by setting the cursor after selecting a GTK theme
Patch1:         lightdm-gtk-greeter-fix-cursor.patch
# PATCH-FIX-UPSTREAM lightdm-gtk-greeter-fix-background.patch lp#1086199 gber@opensuse.org -- Fix the background image not being displayed when the pixmap does not have an alpha channel
Patch2:         lightdm-gtk-greeter-fix-background.patch
# PATCH-FEATURE-UPSTREAM lightdm-gtk-greeter-improve-background-scaling.patch gber@opensuse.org -- Scale the background pixmap while preserving the aspect until width and height are at least as big as the screen width and height, then clip as needed
Patch3:         lightdm-gtk-greeter-improve-background-scaling.patch
# PATCH-FEATURE-UPSTREAM lightdm-gtk-greeter-fix-ui.patch gber@opensuse.org -- Various usability fixes, in particular switch back to a tree view inside a scrolled window in order make it usable with a lot of users
Patch4:         lightdm-gtk-greeter-fix-ui.patch
# PATCH-FIX-UPSTREAM lightdm-gtk-greeter-fix-login.patch gber@opensuse.org -- Fix login/unlock detection
Patch5:         lightdm-gtk-greeter-fix-login.patch
# PATCH-FIX-OPENSUSE lightdm-gtk-greeter-invalid-last_session.patch lp#1161883 rmilasan@suse.com -- Fix segfault when last_session is invalid (last_session points to a non-exsting/deleted session)
Patch6:         lightdm-gtk-greeter-invalid-last_session.patch
# PATCH-FIX-UPSTREAM lightdm-gtk-greeter-handle-invalid-user.patch bnc#857303 gber@opensuse.org -- Fix NULL pointer dereference after authentication of an invalid username failed
Patch7:         lightdm-gtk-greeter-handle-invalid-user.patch
BuildRequires:  gnome-common
BuildRequires:  gobject-introspection
BuildRequires:  intltool
BuildRequires:  update-alternatives
BuildRequires:  pkgconfig(gmodule-export-2.0)
BuildRequires:  pkgconfig(gtk+-3.0)
BuildRequires:  pkgconfig(liblightdm-gobject-1)
BuildRequires:  pkgconfig(x11)
BuildRoot:      %{_tmppath}/%{name}-%{version}-build
Provides:       lightdm-greeter
Requires:       %{name}-branding = %{version}
Requires:       lightdm
Recommends:     %{name}-lang = %{version}
Recommends:     gnome-themes-accessibility
Requires(post): update-alternatives
Requires(postun):   update-alternatives
BuildRoot:      %{_tmppath}/%{name}-%{version}-build

%description
This is the reference implementation of a LightDM greeter based on the GTK
toolkit.

%package branding-upstream
Summary:        Upstream branding of %{name}-gtk-greeter
Group:          System/X11/Displaymanagers
Requires:       %{name} = %{version}
Provides:       %{name}-branding = %{version}
Conflicts:      otherproviders(%{name}-branding)
Supplements:    packageand(%{name}:branding-upstream)
BuildArch:      noarch
#BRAND: /etc/lightdm/lightdm-gtk-greeter.conf: Determines a number of greeter
#BRAND: settings, in particular the background image.

%description branding-upstream
This package provides the upstream look and feel for lightdm-gtk-greeter.

%lang_package

%prep
%setup -q
%patch0 -p1
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
%patch6 -p1
%patch7 -p1

%build
autoreconf -fi
%configure
make %{?_smp_mflags} V=1

%install
%make_install

%if 0%{?suse_version} >= 1320
install -d -m 755 %{buildroot}%{_sysconfdir}/alternatives/
touch %{buildroot}%{_sysconfdir}/alternatives/lightdm-default-greeter.desktop
ln -s %{_sysconfdir}/alternatives/lightdm-default-greeter.desktop \
    %{buildroot}%{_datadir}/xgreeters/lightdm-default-greeter.desktop
%endif

%find_lang %{name} %{?no_lang_C}

%clean
rm -rf %{buildroot}

%post
%{_sbindir}/update-alternatives --install \
    %{_datadir}/xgreeters/lightdm-default-greeter.desktop \
    lightdm-default-greeter.desktop \
    %{_datadir}/xgreeters/lightdm-gtk-greeter.desktop \
    20

%postun
if [ $1 -eq 0 ]; then
    %{_sbindir}/update-alternatives --remove lightdm-default-greeter.desktop \
        %{_datadir}/xgreeters/lightdm-gtk-greeter.desktop
fi

%files
%defattr(-,root,root,-)
%doc AUTHORS COPYING ChangeLog NEWS README
%{_sbindir}/lightdm-gtk-greeter
%{_datadir}/lightdm-gtk-greeter
%dir %{_datadir}/xgreeters/
%{_datadir}/xgreeters/lightdm-gtk-greeter.desktop
%if 0%{?suse_version} >= 1320
%{_datadir}/xgreeters/lightdm-default-greeter.desktop
%else
%ghost %attr(644,root,root) %{_datadir}/xgreeters/lightdm-default-greeter.desktop
%endif
%ghost %attr(644,root,root) %{_sysconfdir}/alternatives/lightdm-default-greeter.desktop

%files branding-upstream
%defattr(-,root,root,-)
%dir %{_sysconfdir}/lightdm/
%config(noreplace) %{_sysconfdir}/lightdm/lightdm-gtk-greeter.conf

%files lang -f %{name}.lang

%changelog
openSUSE Build Service is sponsored by