# # spec file for package kscreenlocker # # Copyright (c) 2017 SUSE LINUX GmbH, Nuernberg, Germany. # # 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/ # %bcond_without lang Name: kscreenlocker Version: 5.10.5 Release: 0 Summary: Library and components for secure lock screen architecture License: GPL-2.0+ Group: System/GUI/KDE Url: https://projects.kde.org/kscreenlocker Source: http://download.kde.org/stable/plasma/%{version}/kscreenlocker-%{version}.tar.xz # PATCH-FIX-OPENSUSE fix-wayland-version-requirement.diff -- Changes wayland requirement from 1.3 to 1.2.1 Patch0: fix-wayland-version-requirement.diff # PATCH-FIX-UPSTREAM 0001-Don-t-dissallow-open-with-write-flag-syscall-on-NVID.patch Patch1: 0001-Don-t-dissallow-open-with-write-flag-syscall-on-NVID.patch BuildRequires: cmake >= 2.8.12 BuildRequires: extra-cmake-modules >= 1.8.0 BuildRequires: kf5-filesystem BuildRequires: pam-config BuildRequires: pam-devel BuildRequires: cmake(KF5Crash) >= 5.15.0 BuildRequires: cmake(KF5Declarative) >= 5.15.0 BuildRequires: cmake(KF5GlobalAccel) >= 5.15.0 BuildRequires: cmake(KF5I18n) >= 5.15.0 BuildRequires: cmake(KF5IdleTime) >= 5.15.0 BuildRequires: cmake(KF5KCMUtils) >= 5.15.0 BuildRequires: cmake(KF5Notifications) >= 5.15.0 BuildRequires: cmake(KF5Solid) >= 5.15.0 BuildRequires: cmake(KF5TextWidgets) >= 5.15.0 BuildRequires: cmake(KF5Wayland) BuildRequires: cmake(KF5WindowSystem) >= 5.15.0 BuildRequires: cmake(KF5XmlGui) >= 5.15.0 BuildRequires: cmake(Qt5Quick) >= 5.5.0 BuildRequires: cmake(Qt5QuickWidgets) >= 5.5.0 BuildRequires: cmake(Qt5Test) >= 5.5.0 BuildRequires: cmake(Qt5Widgets) >= 5.5.0 BuildRequires: cmake(Qt5X11Extras) >= 5.5.0 BuildRequires: pkgconfig(libseccomp) BuildRequires: pkgconfig(wayland-client) BuildRequires: pkgconfig(wayland-server) BuildRequires: pkgconfig(x11) BuildRequires: pkgconfig(xcb) BuildRequires: pkgconfig(xcb-keysyms) BuildRequires: pkgconfig(xcursor) BuildRequires: pkgconfig(xi) Requires(post): pam-config Requires(post): /usr/bin/killall Recommends: %{name}-lang BuildRoot: %{_tmppath}/%{name}-%{version}-build %description Library and components for secure lock screen architecture. %package -n libKScreenLocker5 Summary: Library and components for secure lock screen architecture Group: System/GUI/KDE %description -n libKScreenLocker5 Library and components for secure lock screen architecture. %package devel Summary: Library and components for secure lock screen architecture - development files Group: Development/Libraries/C and C++ Requires: libKScreenLocker5 = %{version} Requires: cmake(Qt5Core) >= 5.5.0 Requires: cmake(Qt5X11Extras) >= 5.5.0 %description devel Development files for Library and components for secure lock screen architecture. %lang_package %prep %setup -q -n %{name}-%{version} %if 0%{?suse_version} == 1315 && !0%{?is_opensuse} # SLE12 has a patched 1.2.1 wayland with all features KDE needs from up to 1.7.0 %patch0 -p1 %endif %patch1 -p1 %build %cmake_kf5 -d build -- -DKDE4_COMMON_PAM_SERVICE=xdm -DCMAKE_INSTALL_LOCALEDIR=%{_kf5_localedir} %make_jobs %install %kf5_makeinstall -C build %if %{with lang} %kf5_find_lang %endif %pre # TODO: Add a check for kscreenlocker_greet version, once available. # Upstream told that that would not be possible, but upstream is unreasonable. if [ $1 = 2 ]; then touch /run/kscreenlocker_restart fi exit 0 %post # boo#931296 /usr/sbin/pam-config -d --unix2 || : /usr/sbin/pam-config -a --unix || : /sbin/ldconfig if [ $1 = 2 ] && [ -f /run/kscreenlocker_restart ]; then /usr/bin/killall -TERM kscreenlocker_greet || : rm /run/kscreenlocker_restart fi exit 0 %post -n libKScreenLocker5 -p /sbin/ldconfig %postun -n libKScreenLocker5 -p /sbin/ldconfig %if %{with lang} %files lang -f %{name}.lang %doc COPYING* %endif %files %defattr(-,root,root) %doc COPYING* %{_kf5_libdir}/libexec/kcheckpass %{_kf5_libdir}/libexec/kscreenlocker_greet %{_kf5_servicesdir}/ %{_kf5_sharedir}/kconf_update/ %{_kf5_plugindir}/ %{_kf5_notifydir}/ %{_kf5_sharedir}/ksmserver/ %files -n libKScreenLocker5 %defattr(-,root,root) %doc COPYING* %{_kf5_libdir}/libKScreenLocker.so.* %files devel %defattr(-,root,root) %doc COPYING* %{_kf5_libdir}/libKScreenLocker.so %{_kf5_prefix}/include/KScreenLocker/ %{_kf5_libdir}/cmake/ScreenSaverDBusInterface/ %{_kf5_libdir}/cmake/KScreenLocker/ %{_kf5_sharedir}/dbus-1/interfaces/ %changelog