%{!?python_sitelib: %define python_sitelib %(python -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")} %global kolab_user kolab %global kolab_user_id 412 %global kolab_group kolab %global kolab_group_id 412 %global kolabn_user kolab-n %global kolabn_user_id 413 %global kolabn_group kolab-n %global kolabn_group_id 413 %global kolabr_user kolab-r %global kolabr_user_id 414 %global kolabr_group kolab-r %global kolabr_group_id 414 Summary: Kolab Groupware Solution Name: pykolab Version: @VERSION@ Release: @RELEASE@%{?dist} License: GPLv3+ Group: Applications/System URL: http://kolab.org/ Source0: http://files.kolab.org/releases/%{name}-%{version}.tar.gz BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root BuildArch: noarch Requires: kolab-cli = %{version}-%{release} Requires: python-ldap >= 2.4 Requires(pre): /usr/sbin/useradd Requires(pre): /usr/sbin/usermod Requires(pre): /usr/sbin/groupadd %description Kolab enables you to easily build a groupware server as part of a collaborative environment. ## ## Kolab Telemetry Logging ## %package telemetry Summary: Kolab Telemetry Logging Capabilities Group: Applications/System Requires: kolab-cli = %{version}-%{release} %description telemetry Cyrus IMAP Telemetry logging handling capabilities for Kolab Groupware ## ## Kolab CLI ## %package -n kolab-cli Summary: Kolab CLI components Group: Applications/System BuildRequires: intltool, gettext, python %description -n kolab-cli Kolab CLI utilities ## ## Kolab SASL Authentication Daemon ## %package -n kolab-saslauthd Summary: Kolab SASL Authentication Daemon Group: Applications/System BuildRequires: intltool, gettext, python Requires: pykolab = %{version}-%{release} %description -n kolab-saslauthd Kolab SASL Authentication Daemon for multi-domain, multi-authn database deployments ## ## Kolab Server implemented in Python ## %package -n kolab-server Summary: Kolab Server implemented in Python Group: Applications/System BuildRequires: intltool, gettext, python Requires: pykolab = %{version}-%{release} %description -n kolab-server Kolab Server implemented in Python ## ## Kolab SMTP Access Policy for Postfix ## %package -n postfix-kolab Summary: Kolab SMTP Access Policy for Postfix Group: Applications/System BuildRequires: intltool, gettext, python Requires: postfix Requires: pykolab = %{version}-%{release} Requires: python-sqlalchemy Requires: MySQL-python %description -n postfix-kolab Kolab SMTP Access Policy for Postfix %prep %setup -q %build %configure %install rm -rf %{buildroot} make install DESTDIR=%{buildroot} mkdir -p \ %{buildroot}/%{_initddir} \ %{buildroot}/%{_sysconfdir}/sysconfig %{__install} -p -m 644 saslauthd/kolab-saslauthd.sysconfig %{buildroot}/%{_sysconfdir}/sysconfig/kolab-saslauthd %{__install} -p -m 755 saslauthd/kolab-saslauthd.sysvinit %{buildroot}/%{_initddir}/kolab-saslauthd %{__install} -p -m 644 kolabd/kolabd.sysconfig %{buildroot}/%{_sysconfdir}/sysconfig/kolabd %{__install} -p -m 755 kolabd/kolabd.sysvinit %{buildroot}/%{_initddir}/kolabd %find_lang pykolab %pre # Add the kolab user and group accounts getent group %{kolab_group} &>/dev/null || groupadd -r %{kolab_group} -g %{kolab_group_id} &>/dev/null getent passwd %{kolab_user} &>/dev/null || \ useradd -r -u %{kolab_user_id} -g %{kolab_group} -d %{_localstatedir}/lib/%{kolab_user} -s /sbin/nologin \ -c "Kolab System Account" %{kolab_user} &>/dev/null || : getent group %{kolabn_group} &>/dev/null || groupadd -r %{kolabn_group} -g %{kolabn_group_id} &>/dev/null getent passwd %{kolabn_user} &>/dev/null || \ useradd -r -u %{kolabn_user_id} -g %{kolabn_group} -d %{_localstatedir}/lib/%{kolabn_user} -s /sbin/nologin \ -c "Kolab System Account (N)" %{kolabn_user} &>/dev/null || : gpasswd -a %{kolabn_user} %{kolab_group} &>/dev/null || : getent group %{kolabr_group} &>/dev/null || groupadd -r %{kolabr_group} -g %{kolabr_group_id} &>/dev/null getent passwd %{kolabr_user} &>/dev/null || \ useradd -r -u %{kolabr_user_id} -g %{kolabr_group} -d %{_localstatedir}/lib/%{kolabr_user} -s /sbin/nologin \ -c "Kolab System Account (R)" %{kolabr_user} &>/dev/null || : # Make sure the kolab user and group is added getent passwd %{cyrus_admin} &>/dev/null || \ useradd -r -d %{_localstatedir}/lib/%{cyrus_admin} -s /sbin/nologin \ -c "Kolab Cyrus Administrator Account" %{cyrus_admin} &>/dev/null || : # Make sure our user has the correct home directory if [ $1 -gt 1 ] ; then usermod -d %{_localstatedir}/lib/%{kolab_user} %{kolab_user} &>/dev/null || : usermod -d %{_localstatedir}/lib/%{kolab_user} %{kolabn_user} &>/dev/null || : usermod -d %{_localstatedir}/lib/%{kolab_user} %{kolabr_user} &>/dev/null || : fi %post -n kolab-saslauthd if [ $1 -eq 1 ] ; then chkconfig --add kolab-saslauthd else /sbin/service kolab-saslauthd condrestart fi %preun -n kolab-saslauthd if [ $1 = 0 ]; then /sbin/service kolab-saslauthd stop > /dev/null 2>&1 /sbin/chkconfig --del kolab-saslauthd fi %post -n kolab-server if [ $1 -eq 1 ] ; then chkconfig --add kolabd else /sbin/service kolabd condrestart fi %preun -n kolab-server if [ $1 = 0 ]; then /sbin/service kolabd stop > /dev/null 2>&1 /sbin/chkconfig --del kolabd fi %clean rm -rf %{buildroot} %files -f pykolab.lang %defattr(-,root,root,-) %doc AUTHORS ChangeLog COPYING README README.tests %attr(0640,root,kolab) %config(noreplace) %{_sysconfdir}/kolab/kolab.conf %dir %{python_sitelib}/pykolab/ %exclude %{python_sitelib}/pykolab/telemetry.* %{python_sitelib}/pykolab/*.py %{python_sitelib}/pykolab/*.pyc %{python_sitelib}/pykolab/*.pyo %{python_sitelib}/pykolab/auth/ %dir %{python_sitelib}/pykolab/cli/ %{python_sitelib}/pykolab/cli/*.py %{python_sitelib}/pykolab/cli/*.pyc %{python_sitelib}/pykolab/cli/*.pyo %{python_sitelib}/pykolab/conf/ %{python_sitelib}/pykolab/imap/ %dir %{python_sitelib}/pykolab/plugins/ %{python_sitelib}/pykolab/plugins/*.py %{python_sitelib}/pykolab/plugins/*.pyc %{python_sitelib}/pykolab/plugins/*.pyo %{python_sitelib}/pykolab/plugins/defaultfolders %{python_sitelib}/pykolab/plugins/dynamicquota %{python_sitelib}/pykolab/plugins/recipientpolicy %exclude %{python_sitelib}/pykolab/setup/ %exclude %{python_sitelib}/pykolab/tests/ %{python_sitelib}/kolab/ %{python_sitelib}/cyruslib.py %{python_sitelib}/cyruslib.pyc %{python_sitelib}/cyruslib.pyo %dir %{_localstatedir}/lib/kolab/ %dir %{_localstatedir}/log/kolab/ %files telemetry %defattr(-,root,root,-) %doc AUTHORS ChangeLog COPYING %{_sbindir}/kolab_parse_telemetry #%{python_sitelib}/pykolab/cli/commandgroups/telemetry.py %{python_sitelib}/pykolab/telemetry.* %{python_sitelib}/pykolab/cli/telemetry/ %files -n kolab-cli %defattr(-,root,root,-) %{_bindir}/* %{_sbindir}/kolab %{_sbindir}/kolab-conf %files -n kolab-saslauthd %defattr(-,root,root,-) %doc AUTHORS ChangeLog COPYING %{_initddir}/kolab-saslauthd %config(noreplace) %{_sysconfdir}/sysconfig/kolab-saslauthd %{_sbindir}/kolab-saslauthd %{python_sitelib}/saslauthd/ %dir %{_localstatedir}/run/kolab-saslauthd %dir %{_localstatedir}/run/saslauthd %files -n kolab-server %defattr(-,root,root,-) %doc AUTHORS ChangeLog COPYING %{_initddir}/kolabd %config(noreplace) %{_sysconfdir}/sysconfig/kolabd %{_sbindir}/kolabd %{python_sitelib}/kolabd/ %dir %{_localstatedir}/run/kolabd %files -n postfix-kolab %defattr(-,root,root,-) %doc AUTHORS ChangeLog COPYING %{_libexecdir}/postfix/kolab_smtp_access_policy %changelog * @DATESTAMP@ Jeroen van Meeuwen (Kolab Systems) @VERSION@-@RELEASE@ - Initial package of new upstream version