kdesu/kdesu.spec
Fabian Vogt 3b625d6f3f - Add unset-xdg-runtime-dir.diff to unset XDG_RUNTIME_DIR in processes
run with kdesu. This fixes the problem which made most kde applications
  (like dolphin or kate) not usable when run as another user with kdesu. 
  kdesu worked to run those applications as root, but then, sockets
  were created in / . This patch also fixes the creation of those files
  which will be created on /tmp/runtime-<username>/ (boo#1009510).

OBS-URL: https://build.opensuse.org/package/show/KDE:Frameworks5/kdesu?expand=0&rev=106
2016-11-10 15:19:48 +00:00

134 lines
4.1 KiB
RPMSpec

#
# spec file for package kdesu
#
# Copyright (c) 2016 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
%define lname libKF5Su5
%define _tar_path 5.28
Name: kdesu
Version: 5.28.0
Release: 0
%define kf5_version %{version}
BuildRequires: cmake >= 2.8.12
BuildRequires: extra-cmake-modules >= %{_tar_path}
BuildRequires: fdupes
BuildRequires: kcoreaddons-devel >= %{_tar_path}
BuildRequires: kf5-filesystem
BuildRequires: ki18n-devel >= %{_tar_path}
BuildRequires: kpty-devel >= %{_tar_path}
BuildRequires: kservice-devel >= %{_tar_path}
BuildRequires: cmake(Qt5Core) >= 5.5.0
BuildRequires: pkgconfig(x11)
Summary: User interface for running shell commands with root privileges
License: LGPL-2.1+
Group: System/GUI/KDE
Url: http://www.kde.org
Source: http://download.kde.org/stable/frameworks/%{_tar_path}/%{name}-%{version}.tar.xz
Source1: baselibs.conf
# PATCH-FIX-OPENSUSE fpie.patch -- make kdesud compile/link with -(f)pie flags
Patch0: fpie.patch
# PATCH-FIX-UPSTREAM unset-xdg-runtime-dir.diff alarrosa@suse.com -- unset XDG_RUNTIME_DIR so applications run under kdesu don't try to use an inaccesible runtime dir
Patch1: unset-xdg-runtime-dir.diff
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%description
libkdesu provides functionality for building GUI front ends for
(password asking) console mode programs. For example, kdesu and
kdessh use it to interface with su and ssh respectively.
%package -n %lname
Summary: User interface for running shell commands with root privileges
Group: System/GUI/KDE
PreReq: permissions
Obsoletes: libKF5Su4
%if %{with lang}
Recommends: %lname-lang = %{version}
%endif
%description -n %lname
libkdesu provides functionality for building GUI front ends for
(password asking) console mode programs. For example, kdesu and
kdessh use it to interface with su and ssh respectively.
%package devel
Summary: User interface for running shell commands with root privileges
Group: Development/Libraries/KDE
Requires: %lname = %{version}
Requires: extra-cmake-modules
Requires: kpty-devel >= %{_tar_path}
Requires: kservice-devel >= %{_tar_path}
%description devel
libkdesu provides functionality for building GUI front ends for
(password asking) console mode programs. For example, kdesu and
kdessh use it to interface with su and ssh respectively.
Development files.
%lang_package -n %lname
%prep
%setup -q
%patch0 -p1
%patch1 -p1
%build
%cmake_kf5 -d build
%make_jobs
%install
%kf5_makeinstall -C build
%fdupes %{buildroot}
%if 0%{?suse_version} <= 1310
# we need this for older oS releases; only Factory/13.2 has the whitelist
echo "setBadness('permissions-file-setuid-bit', 0)" > $RPM_SOURCE_DIR/%name-rpmlintrc
%endif
%if %{with lang}
%find_lang kdesud5 %{name}.lang
%endif
%post -n %lname
/sbin/ldconfig
%set_permissions %{_kf5_libexecdir}/kdesud
%postun -n %lname -p /sbin/ldconfig
%verifyscript -n %lname
%verify_permissions -e %{_kf5_libexecdir}/kdesud
%if %{with lang}
%files -n %lname-lang -f %{name}.lang
%endif
%files -n %lname
%defattr(-,root,root)
%doc COPYING* README*
%{_kf5_libdir}/libKF5Su.so.*
%{_kf5_libexecdir}/kdesu_stub
%verify(not mode) %attr(2755,root,nogroup) %{_kf5_libexecdir}/kdesud
%files devel
%defattr(-,root,root)
%{_kf5_libdir}/libKF5Su.so
%{_kf5_libdir}/cmake/KF5Su/
%{_kf5_includedir}/*.h
%dir %{_kf5_includedir}/*/
%{_kf5_includedir}/*/
%{_kf5_mkspecsdir}/qt_KDESu.pri
%changelog