File i3lock.spec of Package i3lock

# vim: set sw=4 ts=4 et nu:
#
# spec file for package i3lock
#
# Copyright (c) 2014 SUSE LINUX Products GmbH, Nuernberg, Germany.
# Copyright (c) 2014 B1 Systems GmbH, Vohburg, Germany.
# Copyright (c) 2012 Pascal Bleser <pascal.bleser@opensuse.org>
#
# 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/
#


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

Name:           i3lock
Version:        2.5
Release:        0
Summary:        Screen Locker for the i3 Window Manager
License:        BSD-3-Clause
Group:          System/GUI/Other
Source:         http://i3wm.org/i3lock/i3lock-%{version}.tar.bz2
Source1:        i3lock.pam
# borrowed from gnome-icon-theme
Source2:        i3lock-icon.png
Source3:        xlock.sh
# PATCH-FEATURE-OPENSUSE i3lock-2.5-use-unix2_chkpwd.diff -- seife+obs@b1-systems.com
Patch1:         i3lock-2.5-use-unix2_chkpwd.diff
Url:            http://i3wm.org/i3lock/
BuildRoot:      %{_tmppath}/%{name}-%{version}-build
BuildRequires:  cairo-devel
BuildRequires:  gcc
BuildRequires:  glib2-devel
BuildRequires:  glibc-devel
BuildRequires:  libev-devel
%if 0%{?suse_version} > 1310
# /usr/lib64/libEGL.so.1 now requires libudev.so.1, might be a packaging error
BuildRequires:  libudev1
%endif
BuildRequires:  make
BuildRequires:  pam-devel
BuildRequires:  pkgconfig
BuildRequires:  xorg-x11-devel
Requires:       pam-modules
BuildRequires:  pam-modules
BuildRequires:  pkgconfig(xcb-image)
BuildRequires:  pkgconfig(xcb-keysyms)
BuildRequires:  pkgconfig(xkbcommon)

%description
i3lock is a simple screen locker like slock. After starting it, you will see a
white screen (you can configure the color/an image). You can return to your
screen by entering your password.

%package xlock-compat
Summary:        xlock-compatibility script which calls i3lock
Group:          System/GUI/Other
Requires:       ImageMagick
Conflicts:      xlockmore

%description xlock-compat
This package provides a script /usr/bin/xlock which calls i3lock to lock your screen.
This is handy for hard-coded screen-saver invocations e.g. in XFCE4, so you can use
i3lock instead of xlock with them.

%prep
%setup -q
%patch1 -p1

%build
export CFLAGS="%{optflags}"
make %{?_smp_mflags} \
    USE_UNIX2_CHKPWD=1 \
    PREFIX="%{_prefix}" \
    SYSCONFDIR="%{_sysconfdir}"

%install
export CFLAGS="%{optflags}"
make \
    USE_UNIX2_CHKPWD=1 \
    PREFIX="%{_prefix}" \
    SYSCONFDIR="%{_sysconfdir}" \
    DESTDIR="%{buildroot}" \
    install

rm "%{buildroot}%{_sysconfdir}/pam.d/i3lock"
install -m0644 "%{SOURCE1}" "%{buildroot}%{_sysconfdir}/pam.d/%{name}"

install -D -m0644 i3lock.1 "%{buildroot}%{_mandir}/man1/i3lock.1"

install -D -m0644 %{SOURCE2} %{buildroot}/usr/share/i3lock-xlock-compat/i3lock-icon.png
install -m0755 %{SOURCE3} %{buildroot}/%{_bindir}/xlock

%clean
%{?buildroot:%__rm -rf "%{buildroot}"}

%files xlock-compat
%defattr(-,root,root)
%{_bindir}/xlock
/usr/share/i3lock-xlock-compat

%files
%defattr(-,root,root)
%doc CHANGELOG LICENSE README
%config(noreplace) %{_sysconfdir}/pam.d/%{name}
%{_bindir}/i3lock
%doc %{_mandir}/man1/i3lock.1*

%changelog
openSUSE Build Service is sponsored by