# # spec file for package sssd (Version 1.0.5) # # Copyright (c) 2010 SUSE LINUX Products 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/ # Name: sssd Version: 1.1.0 Release: 0 Group: System/Daemons Summary: System Security Services Daemon License: GPLv3+ and LGPLv3+ URL: https://fedorahosted.org/sssd/ Source0: %{name}-%{version}.tar.gz Source1: baselibs.conf Patch1: 0001-Added-option-to-use-libcrypto-instead-of-NSS.patch Patch2: 0002-Improvements-for-LDAP-Password-Policy-support.patch Patch3: 0003-ldap-provider-ld-flags.patch Patch4: 0004-init-script-dependencies.patch BuildRoot: %{_tmppath}/%{name}-%{version}-build %define dhash_version 0.4.0 %define path_utils_version 0.2.0 %define collection_version 0.4.0 %define ini_config_version 0.4.0 %define refarray_version 0.1.0 ### Dependencies ### %define servicename sssd %define sssdstatedir %{_localstatedir}/lib/sss %define dbpath %{sssdstatedir}/db %define pipepath %{sssdstatedir}/pipes ### Build Dependencies ### BuildRequires: autoconf BuildRequires: automake BuildRequires: libtool BuildRequires: m4 BuildRequires: popt-devel BuildRequires: libtalloc-devel BuildRequires: libtevent-devel BuildRequires: libtdb-devel BuildRequires: libldb-devel BuildRequires: dbus-1-devel BuildRequires: openldap2-devel BuildRequires: pam-devel BuildRequires: pkg-config BuildRequires: pcre-devel BuildRequires: libxslt BuildRequires: libxml2 BuildRequires: docbook-xsl-stylesheets BuildRequires: krb5-devel BuildRequires: libcares-devel BuildRequires: python-devel %description Provides a set of daemons to manage access to remote directories and authentication mechanisms. It provides an NSS and PAM interface toward the system and a pluggable backend system to connect to multiple different account sources. It is also the basis to provide client auditing and policy services for projects like FreeIPA. %package ipa-provider License: GPLv3+ and LGPLv3+ Summary: FreeIPA provider plugin for sssd Group: System/Daemons Requires: sssd = %{version} %description ipa-provider This package provide the FreeIPA provider plugin for the System Security Services Daemon (sssd). %package tools License: GPLv3+ and LGPLv3+ Summary: Commandline tools for sssd Group: System/Management Requires: sssd = %{version} %description tools The packages contains commandline tools for managing users and groups using the "local" id provider of the System Security Services Daemon (sssd). %package -n python-sssd-config License: GPLv3+ and LGPLv3+ Summary: Python API for configuring sssd Group: Development/Libraries/Python %{py_requires} %description -n python-sssd-config Provide python module to access and manage configuration of the System Security Services Daemon (sssd). %package -n libdhash1 Summary: Dynamic hash table Group: Development/Libraries/C and C++ Version: %{dhash_version} License: LGPLv3+ %description -n libdhash1 A hash table which will dynamically resize to achieve optimal storage & access time properties %package -n libdhash-devel Summary: Development files for libdhash Group: Development/Libraries/C and C++ Version: %{dhash_version} Requires: libdhash1 = %{dhash_version} License: LGPLv3+ %description -n libdhash-devel A hash table which will dynamically resize to achieve optimal storage & access time properties %package -n libcollection1 Summary: Collection data-type for C Group: Development/Libraries/C and C++ Version: %{collection_version} License: LGPLv3+ %description -n libcollection1 A data-type to collect data in a heirarchical structure for easy iteration and serialization %package -n libcollection-devel Summary: Development files for libcollection Group: Development/Libraries/C and C++ Version: %{collection_version} Requires: libcollection1 = %{collection_version} License: LGPLv3+ %description -n libcollection-devel A data-type to collect data in a heirarchical structure for easy iteration and serialization %package -n libini_config1 Summary: INI file parser for C Group: Development/Libraries/C and C++ Version: %{ini_config_version} License: LGPLv3+ %description -n libini_config1 Library to process config files in INI format into a libcollection data structure %package -n libini_config-devel Summary: Development files for libini_config Group: Development/Libraries/C and C++ Version: %{ini_config_version} Requires: libini_config1 = %{ini_config_version} License: LGPLv3+ %description -n libini_config-devel Library to process config files in INI format into a libcollection data structure %prep %setup -q %patch1 -p1 %patch2 -p1 %patch3 -p1 %patch4 -p1 %build autoreconf export LDB_LIBS="-lldb" export LDB_CFLAGS="-I/usr/include" %configure \ --without-tests \ --with-db-path=%{dbpath} \ --with-pipe-path=%{pipepath} \ --with-init-dir=%{_initrddir} \ --enable-nsslibdir=/%{_lib} \ --enable-cryptp=yes \ --with-ldb-lib-dir=%{_libdir}/ldb \ --with-selinux=no #make %{?_smp_mflags} make %install rm -rf $RPM_BUILD_ROOT make install DESTDIR=$RPM_BUILD_ROOT # Copy default sssd.conf file install -d $RPM_BUILD_ROOT/%{_sysconfdir}/sssd install -m600 src/examples/sssd.conf $RPM_BUILD_ROOT%{_sysconfdir}/sssd/sssd.conf install src/sysv/SUSE/sssd $RPM_BUILD_ROOT%{_sysconfdir}/init.d/sssd ln -sf ../../etc/init.d/sssd $RPM_BUILD_ROOT/usr/sbin/rcsssd # Remove .la files created by libtool rm -f \ $RPM_BUILD_ROOT/%{_lib}/libnss_sss.la \ $RPM_BUILD_ROOT/%{_lib}/security/pam_sss.la \ $RPM_BUILD_ROOT/%{_libdir}/*.la \ $RPM_BUILD_ROOT/%{_libdir}/ldb/memberof.la \ $RPM_BUILD_ROOT/%{_libdir}/python2.6/site-packages/pysss.la \ $RPM_BUILD_ROOT/%{_libdir}/sssd/libsss_ldap.la \ $RPM_BUILD_ROOT/%{_libdir}/sssd/libsss_proxy.la \ $RPM_BUILD_ROOT/%{_libdir}/sssd/libsss_krb5.la \ $RPM_BUILD_ROOT/%{_libdir}/sssd/libsss_ipa.la \ $RPM_BUILD_ROOT/%{_libdir}/sssd/libsss_simple.la \ $RPM_BUILD_ROOT/%{_libdir}/krb5/plugins/libkrb5/sssd_krb5_locator_plugin.la rm $RPM_BUILD_ROOT/%{_libdir}/*.a %find_lang sss_daemon #%find_lang sss_client #cat sss_client.lang >> sss_daemon.lang install -d $RPM_BUILD_ROOT/%{_docdir}/dhash mv $RPM_BUILD_ROOT/%{_datarootdir}/doc/dhash/* $RPM_BUILD_ROOT/%{_docdir}/dhash # remove currently unused libraries rm -f \ $RPM_BUILD_ROOT/%{_libdir}/libref_array.* \ $RPM_BUILD_ROOT/%{_libdir}/pkgconfig/ref_array.pc \ $RPM_BUILD_ROOT/%{_prefix}/include/ref_array*.h \ $RPM_BUILD_ROOT/%{_libdir}/libpath_utils.* \ $RPM_BUILD_ROOT/%{_libdir}/pkgconfig/path_utils.pc \ $RPM_BUILD_ROOT/%{_prefix}/include/path_utils.h %clean rm -rf $RPM_BUILD_ROOT %post -p /sbin/ldconfig %preun %stop_on_removal sssd %postun /sbin/ldconfig %restart_on_update sssd %insserv_cleanup %post -n libdhash1 -p /sbin/ldconfig %postun -n libdhash1 -p /sbin/ldconfig %post -n libcollection1 -p /sbin/ldconfig %postun -n libcollection1 -p /sbin/ldconfig %post -n libini_config1 -p /sbin/ldconfig %postun -n libini_config1 -p /sbin/ldconfig %files -f sss_daemon.lang %defattr(-,root,root,-) %doc COPYING %{_initrddir}/%{name} %{_sbindir}/sssd %{_sbindir}/rcsssd %dir %{_libdir}/%{name} %dir %{_libexecdir}/%{name} %{_libexecdir}/%{name}/sss* %{_libexecdir}/%{name}/*_child %{_libexecdir}/%{name}/upgrade_config.py %{_libdir}/%{name}/libsss_krb5* %{_libdir}/%{name}/libsss_ldap* %{_libdir}/%{name}/libsss_proxy* %{_libdir}/%{name}/libsss_simple* %{_libdir}/ldb/memberof.so %{_libdir}/krb5/plugins/libkrb5/* %dir %{sssdstatedir} %attr(700,root,root) %dir %{dbpath} %attr(755,root,root) %dir %{pipepath} %attr(700,root,root) %dir %{pipepath}/private %attr(750,root,root) %dir %{_var}/log/%{name} %dir %{_sysconfdir}/sssd %config(noreplace) %{_sysconfdir}/sssd/sssd.conf %config %{_sysconfdir}/sssd/sssd.api.conf %attr(700,root,root) %dir %{_sysconfdir}/sssd/sssd.api.d %config %{_sysconfdir}/sssd/sssd.api.d/sssd-krb5.conf %config %{_sysconfdir}/sssd/sssd.api.d/sssd-ldap.conf %config %{_sysconfdir}/sssd/sssd.api.d/sssd-local.conf %config %{_sysconfdir}/sssd/sssd.api.d/sssd-proxy.conf %config %{_sysconfdir}/sssd/sssd.api.d/sssd-simple.conf /%{_lib}/libnss_sss.so.2 /%{_lib}/security/pam_sss.so %{_mandir}/man5/sssd-krb5.* %{_mandir}/man5/sssd-ldap.* %{_mandir}/man5/sssd-simple.* %{_mandir}/man5/sssd.conf.* %files tools %defattr(-,root,root,-) %{_mandir}/man8/* %{_sbindir}/sss_useradd %{_sbindir}/sss_userdel %{_sbindir}/sss_usermod %{_sbindir}/sss_groupadd %{_sbindir}/sss_groupdel %{_sbindir}/sss_groupmod %{_sbindir}/sss_groupshow %files ipa-provider %defattr(-,root,root,-) %config %{_sysconfdir}/sssd/sssd.api.d/sssd-ipa.conf %{_libdir}/sssd/libsss_ipa* %{_mandir}/man5/sssd-ipa.* %files -n python-sssd-config %defattr(-,root,root,-) %{python_sitearch}/pysss.so %{python_sitelib}/*.py* %{python_sitelib}/*.egg-info %files -n libdhash1 %defattr(-,root,root,-) %{_libdir}/libdhash.so.* %files -n libdhash-devel %defattr(-,root,root,-) %{_libdir}/libdhash.so %{_libdir}/pkgconfig/dhash.pc %{_prefix}/include/dhash.h %doc %{_docdir}/dhash %files -n libini_config1 %defattr(-,root,root,-) %{_libdir}/libini_config.so.* %files -n libini_config-devel %defattr(-,root,root,-) %{_libdir}/libini_config.so %{_libdir}/pkgconfig/ini_config.pc %{_prefix}/include/ini_config.h %files -n libcollection1 %defattr(-,root,root,-) %{_libdir}/libcollection.so.* %files -n libcollection-devel %defattr(-,root,root,-) %{_libdir}/libcollection.so %{_libdir}/pkgconfig/collection.pc %{_prefix}/include/collection*.h %changelog