# - A few other small javascript libraries
#
# Conditional build:
-%bcond_without order # with experimental order patch
+%bcond_with order # with experimental order patch
-%define php_min_version 5.1.2
+%define subver pre1
+%define rel 0.5
+%define php_min_version 5.3.3
%include /usr/lib/rpm/macros.php
Summary: Eventum Issue / Bug tracking system
Summary(pl.UTF-8): Eventum - system śledzenia spraw/błędów
Name: eventum
-Version: 2.3.4
-Release: 2
+Version: 3.0.0
+Release: 0.%{subver}.%{rel}
License: GPL v2
Group: Applications/WWW
-Source0: https://launchpad.net/eventum/trunk/%{version}/+download/%{name}-%{version}.tar.gz
-# Source0-md5: f64a6cd054356513f6ff701be765600e
+Source0: https://github.com/eventum/eventum/releases/download/v%{version}-pre1/%{name}-%{version}-pre1.tar.gz
+# Source0-md5: 786930171e278f03baa7b174f52e43d0
Source1: %{name}-apache.conf
Source2: %{name}-mail-queue.cron
Source3: %{name}-mail-download.cron
Source16: http://www.isocra.com/images/updown2.gif
# Source16-md5: deb6eeb2552ba757d3a949ed10c4107d
Source17: %{name}.tmpfiles
-Patch0: %{name}-lf.patch
+#Patch0: %{name}-lf.patch
Patch2: %{name}-order.patch
-Patch3: group-users.patch
-Patch4: https://github.com/glensc/eventum/compare/cf_escape.patch
-# Patch4-md5: 17688773ec035fb162b6a8ad2c7cfa76
+#Patch3: group-users.patch
+#Patch4: https://github.com/glensc/eventum/compare/cf_escape.patch
# packaging patches that probably never go upstream
Patch100: %{name}-paths.patch
Patch101: %{name}-cvs-config.patch
Patch200: %{name}-fixed-nav.patch
URL: http://eventum.mysql.org/
BuildRequires: /usr/bin/php
-BuildRequires: gettext-devel
+BuildRequires: gettext-tools
+BuildRequires: php(core) >= %{php_min_version}
BuildRequires: rpm-php-pearprov >= 4.0.2-98
BuildRequires: rpmbuild(macros) >= 1.654
BuildRequires: sed >= 4.0
BuildArch: noarch
BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
-%define _noautoreq_pear ../init.php init.php /usr/share/eventum/init.php /etc/webapps/.* %{_appdir}/.* jpgraph_dir.php .*Smarty.class.php Services/JSON.php class.date_helper.php sphinxapi.php Net/LDAP2.php
+%define _noautoreq_pear ../init.php ../../init.php init.php /usr/share/eventum/init.php /etc/webapps/.* %{_appdir}/.* jpgraph_dir.php .*Smarty.class.php Services/JSON.php class.date_helper.php sphinxapi.php Net/LDAP2.* Auth/SASL.* Util.php smarty_internal.*
# exclude optional php dependencies
%define _noautophp php-gnupg php-hash php-pecl-http php-tk
Group: Applications/WWW
Requires: %{name}-base = %{version}-%{release}
Requires: php(core) >= %{php_min_version}
+Requires: php(phar)
Requires: php-pear-XML_RPC
%description cli
This package contains the cron job.
%prep
-%setup -q
+%setup -qn %{name}-%{version}%{?subver:-%{subver}}
# GPL v2
rm docs/COPYING
-rm -r upgrade/*v1.[123]* # too old to support in PLD Linux
-rm -r upgrade/v{1.,2.0,2.1_}* # no longer supported in PLD Linux
-rm upgrade/flush_compiled_templates.php
-rm -r upgrade/{*/,}index.html # not needed in PLD Linux
-
# bug fixes / features
-%patch0 -p1
+#%patch0 -p1
%{?with_order:%patch2 -p1}
-%patch3 -p0
-%patch4 -p1
+#%patch3 -p0
+#%patch4 -p1
-cp -p %{SOURCE16} htdocs/images
+%{?with_order:cp -p %{SOURCE16} htdocs/images}
#%patch200 -p1
# produce default sphinx config
# must be run before paths.patch
+%if 0
cat <<'EOF' > config/config.php
<?php
define('APP_SQL_DBTYPE', 'mysql');
EOF
php config/sphinx.conf.php > config/sphinx.conf
rm -f config/config.php
+%endif
# packaging
%patch100 -p1
-%patch101 -p1
+#%patch101 -p1
%patch105 -p1
%patch107 -p1
%{__make} install-eventum install-cli install-irc install-scm install-jpgraph install-localization \
sysconfdir=%{_webappdir} \
+ localedir=%{_localedir} \
DESTDIR=$RPM_BUILD_ROOT
%{?with_order:cp -a htdocs/ajax $RPM_BUILD_ROOT%{_appdir}/htdocs}
+cp -a vendor $RPM_BUILD_ROOT%{_appdir}
+
touch $RPM_BUILD_ROOT%{_webappdir}/htpasswd
cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_webappdir}/apache.conf
cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_webappdir}/httpd.conf
cp -p %{SOURCE15} $RPM_BUILD_ROOT%{_webappdir}/lighttpd.conf
install -d $RPM_BUILD_ROOT/etc/sphinx
-cp -p config/sphinx.conf $RPM_BUILD_ROOT/etc/sphinx/%{name}.conf
+#cp -p config/sphinx.conf $RPM_BUILD_ROOT/etc/sphinx/%{name}.conf
cp -p config/sphinx.conf.php $RPM_BUILD_ROOT%{_webappdir}
cp -p %{SOURCE2} $RPM_BUILD_ROOT/etc/cron.d/%{name}-mail-queue
cp -p %{SOURCE17} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/%{name}.conf
-%{__rm} -r $RPM_BUILD_ROOT%{_localedir}/ht
-
%find_lang %{name}
# scm
-install -p %{SOURCE6} $RPM_BUILD_ROOT%{_sysconfdir}/scm.php
-
-# old compat
-ln -s %{_sbindir}/eventum-cvs-hook $RPM_BUILD_ROOT%{_libdir}/process_cvs_commits
-ln -s %{_sbindir}/eventum-svn-hook $RPM_BUILD_ROOT%{_libdir}/process_svn_commits
-
-# skip pear for cli
-rm -rf $RPM_BUILD_ROOT%{_datadir}/%{name}/cli
-cp -a cli/lib/eventum $RPM_BUILD_ROOT%{_datadir}/%{name}/cli
+cp -p %{SOURCE6} $RPM_BUILD_ROOT%{_sysconfdir}/scm.php
%clean
rm -rf $RPM_BUILD_ROOT
%triggerun -- lighttpd
%webapp_unregister lighttpd %{_webapp}
-%triggerpostun -- %{name} < 2.2-2.57
-# switching eventum->http user
-chgrp http %{_webappdir}/config.php
-chgrp http %{_webappdir}/private_key.php
-chgrp http %{_webappdir}/setup.php
-chgrp http /var/log/%{name}/*
-# update crontab user
-for a in /etc/cron.d/eventum-*; do
- [ -f "$a" ] || continue
- awk '!/#/ && NR > 6 && $6 =="eventum" {sub("eventum", "http", $6)}{print}' $a > $a.rpmtmp && cat $a.rpmtmp > $a
- rm -f $a.rpmtmp
-
- # crontabs moved to crons subdir
+%triggerpostun -- %{name} < 3.0.0-0.2
+for f in /etc/cron.d/eventum-*; do
+ # crontabs moved to bin
%{__sed} -i -e '
- s,/usr/share/eventum/process_mail_queue.php,/usr/share/eventum/crons/process_mail_queue.php,
- s,/usr/share/eventum/download_emails.php,/usr/share/eventum/crons/download_emails.php,
- s,/usr/share/eventum/check_reminders.php,/usr/share/eventum/crons/check_reminders.php,
- s,/usr/share/eventum/monitor.php,/usr/share/eventum/crons/monitor.php,
- ' $a
+ s,/usr/share/eventum/crons/process_mail_queue.php,%{_appdir}/bin/process_mail_queue.php,
+ s,/usr/share/eventum/crons/download_emails.php,%{_appdir}/bin/download_emails.php,
+ s,/usr/share/eventum/crons/check_reminders.php,%{_appdir}/bin/check_reminders.php,
+ s,/usr/share/eventum/crons/monitor.php,%{_appdir}/bin/monitor.php,
+ ' $f
done
%files -f %{name}.lang
%defattr(644,root,root,755)
-%doc docs/* htdocs/setup/schema.sql
+%doc docs/*
%attr(751,root,root) %dir %{_webappdir}
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_webappdir}/apache.conf
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_webappdir}/httpd.conf
%dir %attr(750,root,root) /var/log/archive/%{name}
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/%{name}
-%dir %{_appdir}/crons
+%dir %{_appdir}/bin
+%attr(755,root,root) %{_appdir}/bin/process_all_emails.php
+
%{_appdir}/init.php
%dir %{_appdir}/htdocs
%{_appdir}/htdocs/*.php
%{_appdir}/htdocs/*.ico
+%{_appdir}/htdocs/ajax
%{_appdir}/htdocs/css
%{_appdir}/htdocs/customer
%{_appdir}/htdocs/images
%{_appdir}/htdocs/js
%{_appdir}/htdocs/manage
+%{_appdir}/htdocs/misc
%{_appdir}/htdocs/reports
%{_appdir}/htdocs/rpc
-%{_appdir}/htdocs/misc
-%if %{with order}
-%{_appdir}/htdocs/ajax
-%endif
+%{_appdir}/htdocs/components
%{_appdir}/templates
%dir %{_appdir}/upgrade
-%{_appdir}/upgrade/init.php
+%{_appdir}/upgrade/flush_compiled_templates.php
+%{_appdir}/upgrade/*.sql
%attr(755,root,root) %{_appdir}/upgrade/update-database.php
%attr(755,root,root) %{_appdir}/upgrade/ldap_import.php
-%dir %{_appdir}/upgrade/v*
-%attr(755,root,root) %{_appdir}/upgrade/v*/*.php
+%attr(755,root,root) %{_appdir}/upgrade/ldap_update_users.php
+%attr(755,root,root) %{_appdir}/upgrade/scm_trac_import.php
%{_appdir}/upgrade/patches
%dir %{_appdir}/lib
%{_appdir}/lib/eventum
%{_appdir}/lib/jpgraph
%exclude %{_appdir}/lib/eventum/class.monitor.php
+
+%{_appdir}/vendor
+
%{systemdtmpfilesdir}/%{name}.conf
%dir %attr(730,root,http) /var/run/%{name}
%dir %attr(730,root,http) /var/cache/%{name}
%files mail-queue
%defattr(644,root,root,755)
-%attr(755,root,root) %{_appdir}/crons/process_mail_queue.php
+%attr(755,root,root) %{_appdir}/bin/process_mail_queue.php
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/cron.d/%{name}-mail-queue
%files mail-download
%defattr(644,root,root,755)
-%attr(755,root,root) %{_appdir}/crons/download_emails.php
+%attr(755,root,root) %{_appdir}/bin/download_emails.php
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/cron.d/%{name}-mail-download
%files reminder
%defattr(644,root,root,755)
-%attr(755,root,root) %{_appdir}/crons/check_reminders.php
+%attr(755,root,root) %{_appdir}/bin/check_reminders.php
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/cron.d/%{name}-reminder
%files monitor
%defattr(644,root,root,755)
%{_appdir}/lib/eventum/class.monitor.php
-%attr(755,root,root) %{_appdir}/crons/monitor.php
+%attr(755,root,root) %{_appdir}/bin/monitor.php
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/cron.d/%{name}-monitor
%files route-drafts
%defattr(644,root,root,755)
-%attr(755,root,root) %{_appdir}/route_drafts.php
+%attr(755,root,root) %{_appdir}/bin/route_drafts.php
%files route-emails
%defattr(644,root,root,755)
-%attr(755,root,root) %{_appdir}/route_emails.php
+%attr(755,root,root) %{_appdir}/bin/route_emails.php
%files route-notes
%defattr(644,root,root,755)
-%attr(755,root,root) %{_appdir}/route_notes.php
+%attr(755,root,root) %{_appdir}/bin/route_notes.php
%files router-postfix
%defattr(644,root,root,755)
%defattr(644,root,root,755)
%doc cli/eventumrc
%attr(755,root,root) %{_bindir}/%{name}
-%{_appdir}/cli
%files scm
%defattr(644,root,root,755)
%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/scm.php
-%attr(755,root,root) %{_libdir}/process_cvs_commits
-%attr(755,root,root) %{_libdir}/process_svn_commits
%attr(755,root,root) %{_sbindir}/eventum-cvs-hook
%attr(755,root,root) %{_sbindir}/eventum-svn-hook
%files sphinx
%defattr(644,root,root,755)
%{_webappdir}/sphinx.conf.php
-%attr(750,root,http) %config(noreplace) %verify(not md5 mtime size) /etc/sphinx/%{name}.conf
+#%attr(750,root,http) %config(noreplace) %verify(not md5 mtime size) /etc/sphinx/%{name}.conf
%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/cron.d/%{name}-sphinx