]> git.pld-linux.org Git - packages/eventum.git/blobdiff - eventum.spec
up to 3.6.4
[packages/eventum.git] / eventum.spec
index b2be8dffa6a33d5155643cb93013841a127f9598..b13e748ec2f8e815a02413024bb1d1672bf3b3c3 100644 (file)
@@ -2,28 +2,25 @@
 # Conditional build:
 %bcond_with    order   # with experimental order patch
 
-%define                rel             0.3
-%define                subver  346
-%define                githash 8b147f6c
-%define                php_min_version 5.5.0
-%include       /usr/lib/rpm/macros.php
+%define                rel             1
+#define                subver  37
+#define                githash a8d4c81db
+%define                php_min_version 7.1.3
 Summary:       Eventum Issue / Bug tracking system
 Summary(pl.UTF-8):     Eventum - system śledzenia spraw/błędów
 Name:          eventum
-Version:       3.1.10
+Version:       3.6.4
 Release:       %{?subver:1.%{subver}.%{?githash:g%{githash}.}}%{rel}
 License:       GPL v2+
 Group:         Applications/WWW
-#Source0:      https://github.com/eventum/eventum/releases/download/v%{version}/%{name}-%{version}.tar.gz
-Source0:       https://github.com/eventum/eventum/releases/download/snapshot/%{name}-%{version}-%{subver}-g%{githash}.tar.gz
-# Source0-md5: e161cee555ffb0ff6ad9994efeaa10cc
+Source0:       https://github.com/eventum/eventum/releases/download/v%{version}/%{name}-%{version}.tar.xz
+# Source0-md5: 68bef5cfe7c0d6aadc16e49473892907
+#Source0:      https://github.com/eventum/eventum/releases/download/snapshot/%{name}-%{version}-%{subver}-g%{githash}.tar.xz
 Source1:       %{name}-apache.conf
 Source2:       %{name}-mail-queue.cron
 Source3:       %{name}-mail-download.cron
 Source4:       %{name}-reminder.cron
 Source5:       %{name}-monitor.cron
-Source8:       %{name}-irc.init
-Source9:       %{name}-irc.sysconfig
 Source10:      sphinx.crontab
 Source13:      %{name}-router-postfix.sh
 Source14:      %{name}.logrotate
@@ -42,9 +39,11 @@ Patch108:    autoload.patch
 Patch200:      %{name}-fixed-nav.patch
 URL:           https://wiki.github.com/eventum/eventum/
 BuildRequires: gettext-tools
-BuildRequires: rpm-php-pearprov >= 4.0.2-98
 BuildRequires: rpmbuild(macros) >= 1.654
 BuildRequires: sed >= 4.0
+BuildRequires: tar >= 1:1.22
+BuildRequires: xz
+Requires(post):        sudo
 Requires(postun):      /usr/sbin/groupdel
 Requires(postun):      /usr/sbin/userdel
 Requires(pre): /bin/id
@@ -53,6 +52,7 @@ Requires(pre):        /usr/sbin/groupadd
 Requires(pre): /usr/sbin/useradd
 Requires:      fonts-TTF-RedHat-liberation
 Requires:      php(core) >= %{php_min_version}
+Requires:      php(ds)
 Requires:      php(filter)
 Requires:      php(iconv)
 Requires:      php(imap)
@@ -65,27 +65,12 @@ Requires:   php-Smarty >= 3.1
 Requires:      php-Smarty-plugin-gettext
 Requires:      php-ZendFramework-Config >= 2.4
 Requires:      php-ZendFramework-Loader >= 2.4
-Requires:      php-ZendFramework-Mail >= 2.4.9-2
+Requires:      php-ZendFramework-Mail >= 2.4.13-2
 Requires:      php-ZendFramework-Mime >= 2.4
 Requires:      php-ZendFramework-ServiceManager >= 2.4
 Requires:      php-ZendFramework-Validator >= 2.4
 Requires:      php-monolog >= 1.17.2
-Requires:      php-pear-Mail_Mime
-Requires:      php-pear-Mail_mimeDecode
-Requires:      php-pear-Math_Stats
-Requires:      php-pear-Net_SMTP
-Requires:      php-pear-Net_Socket
-Requires:      php-pear-Net_URL
-Requires:      php-pear-PEAR-core
-Requires:      php-pear-Text_Diff
 Requires:      php-psr-Log >= 1.0.0-2
-Requires:      php-symfony2-Config >= 2.7.7
-Requires:      php-symfony2-Console >= 2.7.7
-Requires:      php-symfony2-Filesystem >= 2.7.7
-Requires:      php-symfony2-HttpFoundation >= 2.7.7
-Requires:      php-symfony2-OptionsResolver >= 2.7.7
-Requires:      php-symfony2-Serializer >= 2.7.7
-Requires:      php-symfony2-Yaml >= 2.7.7
 Requires:      phplot >= 5.8.0
 Requires:      webapps
 Requires:      webserver(access)
@@ -95,8 +80,6 @@ Requires:     webserver(php) >= 4.2.0
 Suggests:      localedb
 Suggests:      php(mcrypt)
 Suggests:      php(openssl)
-Suggests:      php-pear-Net_LDAP2
-Suggests:      php-pear-Net_POP3
 Suggests:      webserver(setenv)
 Provides:      group(eventum)
 Provides:      user(eventum)
@@ -108,13 +91,6 @@ Conflicts:  logrotate < 3.8.0
 BuildArch:     noarch
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
 
-%define                _noautoreq_pear ../init.php ../../init.php init.php /usr/share/eventum/init.php /etc/webapps/.* %{_appdir}/.* .*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
-
-%define                _noautoreq      %{_noautophp}
-
 %define                _libdir         %{_prefix}/lib/%{name}
 %define                _appdir         %{_datadir}/%{name}
 %define                _smartydir      %{php_data_dir}/Smarty
@@ -285,56 +261,6 @@ przez Postfiksa.
 Opis konfiguracji Postfiksa można znaleźć pod adresem
 <https://github.com/eventum/eventum/wiki/System-Admin:-Setting-up-email-routing-with-postfix>
 
-%package irc
-Summary:       Eventum IRC Notification Bot
-Summary(pl.UTF-8):     IRC-owy bot powiadamiający dla Eventum
-Group:         Applications/WWW
-Requires(post,preun):  /sbin/chkconfig
-Requires:      %{name} = %{version}-%{release}
-Requires:      php(pcntl)
-Requires:      php(sockets)
-Requires:      php-pear-Net_SmartIRC >= 1.1.9
-Requires:      rc-scripts >= 0.4.0.18
-
-%description irc
-The IRC notification bot is a nice feature for remote teams that want
-to handle issues and want to have a quick and easy way to get simple
-notifications. Right now the bot notifies of the following actions:
-- New Issues
-- Blocked emails
-- Issues that got their assignment list changed
-
-NOTE: You will need to manually edit the bot.php script to set your
-appropriate preferences, like IRC server and channel that the bot
-should join.
-
-%description irc -l pl.UTF-8
-IRC-owy bot powiadamiający to miła funkcjonalność dla zdalnych
-zespołów chcących obsługiwać sprawy i mieć szybki i łatwy sposób na
-uzyskiwanie prostych powiadomień. Aktualnie bot powiadamia o
-następujących zdarzeniach:
-- nowych sprawach
-- zablokowanych listach
-- sprawach, dla których zmieniła się lista powiązań
-
-UWAGA: w celu wprowadzenia własnych ustawień, takich jak serwer IRC i
-kanał używany przez bota, trzeba ręcznie zmodyfikować skrypt bot.php .
-
-%package cli
-Summary:       Eventum command-line interface
-Summary(pl.UTF-8):     Interfejs linii poleceń dla Eventum
-Group:         Applications/WWW
-Requires:      php(core) >= %{php_min_version}
-Requires:      php(phar)
-
-%description cli
-The Eventum command-line interface allows you to access most of the
-features of the web interface straight from your command shell.
-
-%description cli -l pl.UTF-8
-Interfejs linii poleceń Eventum pozwala na dostęp do większości
-funkcji interfejsu WWW prosto z linii poleceń powłoki.
-
 %package sphinx
 Summary:       Eventum Sphinx Search
 Group:         Applications/WWW
@@ -356,9 +282,7 @@ mv docs/examples .
 %{?with_order:%patch2 -p1}
 #%patch3 -p0
 #%patch4 -p1
-
 %{?with_order:cp -p %{SOURCE16} htdocs/images}
-
 #%patch200 -p1
 
 # produce default sphinx config
@@ -384,31 +308,24 @@ rm config/config.php
 %patch108 -p1
 
 rm htdocs/.htaccess.dist
-
-mv config/irc_config{.dist.php,.php}
 rm config/config.dist.php
 
-# cleanup vendor. keep only needed libraries.
-# (the rest are packaged with system packages)
-mv vendor vendor.dist
-vendor() {
-       local path dir
-       for path; do
-               dir=$(dirname $path)
-               test -d vendor/$dir || mkdir -p vendor/$dir
-               mv vendor.dist/$path vendor/$path
-       done
-}
-vendor autoload.php
-vendor composer/autoload_{classmap,files,namespaces,real,psr4}.php
-vendor composer/ClassLoader.php
-vendor ircmaxell/{random-lib,security-lib}
-vendor defuse/php-encryption
-vendor willdurand/email-reply-parser
-vendor theorchard/monolog-cascade
-vendor malkusch/lock
-vendor phpxmlrpc/phpxmlrpc
-vendor robmorgan/phinx
+# cleanup libs taken from system, everything else gets bundled
+rm -r vendor/fonts/liberation
+rm -r vendor/monolog/monolog
+rm -r vendor/php-gettext/php-gettext
+rm -r vendor/phplot/phplot
+rm -r vendor/psr/log
+rm -r vendor/smarty-gettext/smarty-gettext
+rm -r vendor/smarty/smarty
+rm -r vendor/sphinx/php-sphinxapi
+rm -r vendor/zendframework/zend-config
+rm -r vendor/zendframework/zend-loader
+rm -r vendor/zendframework/zend-mail
+rm -r vendor/zendframework/zend-mime
+rm -r vendor/zendframework/zend-servicemanager
+rm -r vendor/zendframework/zend-stdlib
+rm -r vendor/zendframework/zend-validator
 
 # remove backups from patching as we use globs to package files to buildroot
 find '(' -name '*~' -o -name '*.orig' ')' | xargs -r rm -v
@@ -423,10 +340,10 @@ install -d \
        $RPM_BUILD_ROOT/etc/{rc.d/init.d,cron.d,logrotate.d,sysconfig} \
        $RPM_BUILD_ROOT/var/{run,cache,lib}/%{name} \
        $RPM_BUILD_ROOT/var/log/{archive/,}%{name} \
-       $RPM_BUILD_ROOT/var/lib/%{name}/routed_{emails,drafts,notes} \
+       $RPM_BUILD_ROOT/var/lib/%{name}/{routed_{emails,drafts,notes},storage} \
        $RPM_BUILD_ROOT%{systemdtmpfilesdir}
 
-%{__make} install-eventum install-cli install-localization \
+%{__make} install-eventum install-localization \
        sysconfdir=%{_webappdir} \
        localedir=%{_localedir} \
        DESTDIR=$RPM_BUILD_ROOT
@@ -458,9 +375,6 @@ cp -p %{SOURCE4} $RPM_BUILD_ROOT/etc/cron.d/%{name}-reminder
 cp -p %{SOURCE5} $RPM_BUILD_ROOT/etc/cron.d/%{name}-monitor
 cp -p %{SOURCE10} $RPM_BUILD_ROOT/etc/cron.d/%{name}-sphinx
 
-install -p %{SOURCE8} $RPM_BUILD_ROOT/etc/rc.d/init.d/eventum-irc
-cp -p %{SOURCE9} $RPM_BUILD_ROOT/etc/sysconfig/eventum-irc
-
 cp -p %{SOURCE14} $RPM_BUILD_ROOT/etc/logrotate.d/%{name}
 
 # postfix router
@@ -485,7 +399,6 @@ for a in \
        errors.log login_attempts.log \
        eventum.log \
        auth.log cli.log \
-       irc_bot_error.log irc_bot_smartirc.log \
 ; do
        test -f /var/log/%{name}/$a && continue
        install -m 0620 -o root -g http /dev/null /var/log/%{name}/$a
@@ -493,7 +406,7 @@ done
 
 # run database update if configured
 test -s %{_webappdir}/config.php && \
-%{_appdir}/bin/upgrade.php || :
+sudo -H -u http -- %{_appdir}/bin/upgrade.php || :
 
 # nuke Smarty templates cache after upgrade
 rm -f /var/cache/eventum/*.php
@@ -524,16 +437,6 @@ if [ "$1" = "0" ] && [ -f %{_webappdir}/config.php ]; then
        chown root:http %{_webappdir}/{config,private_key,secret_key}.php
 fi
 
-%post irc
-/sbin/chkconfig --add eventum-irc
-%service eventum-irc restart "Eventum IRC Bot"
-
-%preun irc
-if [ "$1" = 0 ]; then
-       %service eventum-irc stop
-       /sbin/chkconfig --del eventum-irc
-fi
-
 %triggerin -- apache1 < 1.3.37-3, apache1-base
 %webapp_register apache %{_webapp}
 
@@ -552,33 +455,22 @@ fi
 %triggerun -- lighttpd
 %webapp_unregister lighttpd %{_webapp}
 
-%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/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)
-%attr(751,root,root) %dir %{_webappdir}
+%attr(771,root,http) %dir %{_webappdir}
 %attr(751,root,http) %dir %{_webappdir}/crm
 %attr(751,root,http) %dir %{_webappdir}/custom_field
 %attr(751,root,http) %dir %{_webappdir}/partner
 %attr(751,root,http) %dir %{_webappdir}/templates
 %attr(751,root,http) %dir %{_webappdir}/workflow
-%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
-%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_webappdir}/lighttpd.conf
 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_webappdir}/config.php
+%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_webappdir}/htpasswd
 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_webappdir}/private_key.php
 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_webappdir}/secret_key.php
+%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
+%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_webappdir}/lighttpd.conf
 %attr(660,root,http) %config(noreplace) %verify(not md5 mtime size) %{_webappdir}/setup.php
-%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_webappdir}/htpasswd
 
 %dir %attr(731,root,http) /var/log/%{name}
 %attr(620,root,http) %ghost /var/log/%{name}/*
@@ -589,6 +481,9 @@ done
 %{_appdir}/config
 
 %dir %{_appdir}/bin
+%attr(755,root,root) %{_appdir}/bin/extension.php
+%attr(755,root,root) %{_appdir}/bin/ldapsync.php
+%attr(755,root,root) %{_appdir}/bin/migrate_storage_adapter.php
 %attr(755,root,root) %{_appdir}/bin/process_all_emails.php
 %attr(755,root,root) %{_appdir}/bin/upgrade.php
 
@@ -610,9 +505,6 @@ done
 %{_appdir}/htdocs/components
 %{_appdir}/templates
 
-%dir %{_appdir}/upgrade
-%{_appdir}/upgrade/*.sql
-%{_appdir}/upgrade/patches
 %dir %{_appdir}/db
 %dir %{_appdir}/db/migrations
 %{_appdir}/db/migrations/*.php
@@ -622,7 +514,11 @@ done
 %{_appdir}/vendor
 %dir %{_appdir}/lib
 %{_appdir}/lib/eventum
-%exclude %{_appdir}/lib/eventum/class.monitor.php
+%exclude %{_appdir}/src/Console/Command/MailDownloadCommand.php
+%exclude %{_appdir}/src/Console/Command/MailQueueProcessCommand.php
+%exclude %{_appdir}/src/Console/Command/MailQueueTruncateCommand.php
+%exclude %{_appdir}/src/Console/Command/MonitorCommand.php
+%exclude %{_appdir}/src/Console/Command/ReminderCheckCommand.php
 
 %dir %{_libdir}
 
@@ -636,6 +532,8 @@ done
 %attr(770,root,http) %dir /var/lib/%{name}/routed_emails
 %attr(770,root,http) %dir /var/lib/%{name}/routed_drafts
 %attr(770,root,http) %dir /var/lib/%{name}/routed_notes
+# attachment storage
+%attr(770,root,http) %dir /var/lib/%{name}/storage
 
 %files setup
 %defattr(644,root,root,755)
@@ -648,23 +546,27 @@ done
 
 %files mail-queue
 %defattr(644,root,root,755)
+%{_appdir}/src/Console/Command/MailQueueProcessCommand.php
+%{_appdir}/src/Console/Command/MailQueueTruncateCommand.php
 %attr(755,root,root) %{_appdir}/bin/process_mail_queue.php
 %attr(755,root,root) %{_appdir}/bin/truncate_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)
+%{_appdir}/src/Console/Command/MailDownloadCommand.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)
+%{_appdir}/src/Console/Command/ReminderCheckCommand.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
+%{_appdir}/src/Console/Command/MonitorCommand.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
 
@@ -672,18 +574,6 @@ done
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/router-postfix
 
-%files irc
-%defattr(644,root,root,755)
-%attr(640,root,eventum) %config(noreplace) %verify(not md5 mtime size) %{_webappdir}/irc_config.php
-%attr(640,root,eventum) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/eventum-irc
-%attr(755,root,root) %{_appdir}/bin/irc-bot.php
-%attr(754,root,root) /etc/rc.d/init.d/%{name}-irc
-
-%files cli
-%defattr(644,root,root,755)
-%doc cli/eventumrc
-%attr(755,root,root) %{_bindir}/%{name}
-
 %files sphinx
 %defattr(644,root,root,755)
 %{_webappdir}/sphinx.conf.php
This page took 0.04723 seconds and 4 git commands to generate.