]> git.pld-linux.org Git - packages/eventum.git/blobdiff - eventum.spec
up to 3.0.8-187-gacd7038
[packages/eventum.git] / eventum.spec
index 4adeee456a7741fbde67b32dd3f187d52a04476c..5ae2c87eaeb2a682c6995641eca86d6709b28492 100644 (file)
@@ -2,28 +2,27 @@
 # Conditional build:
 %bcond_with    order   # with experimental order patch
 
-%define                rel             1.9
-%define                subver  276
-%define                githash a7233c3
-%define                php_min_version 5.3.3
+%define                rel             1.4
+%define                subver  187
+%define                githash acd7038
+%define                php_min_version 5.3.7
 %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:       3.0.3
+Version:       3.0.8
 Release:       %{?subver:1.%{subver}.%{?githash:g%{githash}.}}%{rel}
-License:       GPL v2
+License:       GPL v2+
 Group:         Applications/WWW
 #Source0:      https://github.com/eventum/eventum/releases/download/v%{version}/%{name}-%{version}.tar.gz
 Source0:       %{name}-%{version}-%{subver}-g%{githash}.tar.gz
-# Source0-md5: e97361f1429ba03bbd917719b6daec2b
+# Source0-md5: ae49292484aa2271c82dea1262aead96
 Source1:       %{name}-apache.conf
 Source2:       %{name}-mail-queue.cron
 Source3:       %{name}-mail-download.cron
 Source4:       %{name}-reminder.cron
 Source5:       %{name}-monitor.cron
 Source6:       %{name}-cvs.php
-Source7:       %{name}-irc.php
 Source8:       %{name}-irc.init
 Source9:       %{name}-irc.sysconfig
 Source10:      sphinx.crontab
@@ -50,7 +49,12 @@ BuildRequires:       php(core) >= %{php_min_version}
 BuildRequires: rpm-php-pearprov >= 4.0.2-98
 BuildRequires: rpmbuild(macros) >= 1.654
 BuildRequires: sed >= 4.0
-Requires:      %{name}-base = %{version}-%{release}
+Requires(postun):      /usr/sbin/groupdel
+Requires(postun):      /usr/sbin/userdel
+Requires(pre): /bin/id
+Requires(pre): /usr/bin/getgid
+Requires(pre): /usr/sbin/groupadd
+Requires(pre): /usr/sbin/useradd
 Requires:      fonts-TTF-RedHat-liberation
 Requires:      php(core) >= %{php_min_version}
 Requires:      php(filter)
@@ -63,6 +67,8 @@ Requires:     php(pcre)
 Requires:      php(session)
 Requires:      php-Smarty >= 3.1
 Requires:      php-Smarty-plugin-gettext
+Requires:      php-ZendFramework-Config >= 2.4
+Requires:      php-monolog >= 1.17.2
 Requires:      php-pear-DB
 Requires:      php-pear-Mail
 Requires:      php-pear-Mail_Mime
@@ -76,6 +82,8 @@ Requires:     php-pear-Net_UserAgent_Detect
 Requires:      php-pear-PEAR-core
 Requires:      php-pear-Text_Diff
 Requires:      php-pear-XML_RPC
+Requires:      php-psr-Log >= 1.0.0-2
+Requires:      php-symfony2-HttpFoundation >= 2.7.7
 Requires:      phplot >= 5.8.0
 Requires:      webapps
 Requires:      webserver(access)
@@ -84,6 +92,13 @@ Requires:    webserver(indexfile)
 Requires:      webserver(php) >= 4.2.0
 Suggests:      localedb
 Suggests:      php-pear-Net_LDAP2
+Suggests:      webserver(setenv)
+Provides:      group(eventum)
+Provides:      user(eventum)
+Obsoletes:     eventum-base < 3.0.3-1.305
+Obsoletes:     eventum-route-drafts < 3.0.8-1.1
+Obsoletes:     eventum-route-emails < 3.0.8-1.1
+Obsoletes:     eventum-route-notes < 3.0.8-1.1
 Conflicts:     logrotate < 3.8.0
 BuildArch:     noarch
 BuildRoot:     %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
@@ -118,25 +133,6 @@ szybkiej organizacji zadań i błędów. Eventum jest używany przez zespół
 Technical Support MySQL AB i umożliwił im znacząco poprawić czasy
 reakcji.
 
-%package base
-Summary:       Eventum base package
-Summary(pl.UTF-8):     Podstawowy pakiet Eventum
-Group:         Applications/WWW
-Requires(postun):      /usr/sbin/groupdel
-Requires(postun):      /usr/sbin/userdel
-Requires(pre): /bin/id
-Requires(pre): /usr/bin/getgid
-Requires(pre): /usr/sbin/groupadd
-Requires(pre): /usr/sbin/useradd
-Provides:      group(eventum)
-Provides:      user(eventum)
-
-%description base
-This package contains base directory structure for Eventum.
-
-%description base -l pl.UTF-8
-Ten pakiet zawiera podstawową strukturę katalogów dla Eventum.
-
 %package setup
 Summary:       Eventum setup package
 Summary(pl.UTF-8):     Pakiet do wstępnej konfiguracji Eventum
@@ -264,79 +260,6 @@ testów uprawnień i plików w Monitor::checkConfiguration().
 
 Ten pakiet zawiera zadanie dla crona.
 
-%package route-drafts
-Summary:       Eventum Draft Routing
-Summary(pl.UTF-8):     Przekazywanie szkiców dla Eventum
-Group:         Applications/WWW
-Requires:      %{name} = %{version}-%{release}
-Requires:      eventum(router)
-
-%description route-drafts
-The draft routing feature is used to automatically associate a thread
-of drafts into an Eventum issue. By setting up Postfix to deliver
-emails sent to a specific address (usually draft-<number>@<domain>) to
-the above script, users are able to send drafts written in their mail
-client to be stored in Eventum. These drafts will NOT broadcasted to
-the notification list.
-
-%description route-drafts -l pl.UTF-8
-Przekazywanie szkiców służy do automatycznego wiązania wątku szkiców z
-problemem w Eventum. Ustawiając Postfiksa, aby dostarczał pocztę
-wysłaną na podany adres (zwykle draft-<liczba>@<domena>) do tego
-skryptu umożliwia się użytkownikom wysyłanie szkiców napisanych w ich
-kliencie pocztowym do zapisania w Eventum. Szkice te NIE będą wysyłane
-na listę powiadomień.
-
-%package route-emails
-Summary:       Eventum Email Routing
-Summary(pl.UTF-8):     Przekazywanie poczty dla Eventum
-Group:         Applications/WWW
-Requires:      %{name} = %{version}-%{release}
-Requires:      eventum(router)
-
-%description route-emails
-The email routing feature is used to automatically associate a thread
-of emails into an Eventum issue. By setting up Postfix to deliver
-emails sent to a specific address (usually issue-<number>@<domain>) to
-the above script, users are able to use their email clients to reply
-to emails coming from Eventum, and those replies will be automatically
-associated with the issue and broadcasted to the entire notification
-list.
-
-%description route-emails -l pl.UTF-8
-Funkcjonalność przekazywania poczty służy do automatycznego wiązania
-wątku listów ze sprawą w Eventum. Po ustawieniu czy nawet Postfiksa,
-aby dostarczał listy wysyłane na pewien adres (zwykle
-issue-<numer>@<domena>) na powyższy skrypt, użytkownicy będą mogli
-używać klientów pocztowych do odpowiadania na listy przychodzące z
-Eventum, a odpowiedzi te będą automatycznie wiązane ze sprawą i
-rozprowadzane do całej listy ogłoszeniowej.
-
-%package route-notes
-Summary:       Eventum Note Routing
-Summary(pl.UTF-8):     Przekazywanie notatek dla Eventum
-Group:         Applications/WWW
-Requires:      %{name} = %{version}-%{release}
-Requires:      eventum(router)
-
-%description route-notes
-The note routing feature is used to automatically associate a thread
-of notes into an Eventum issue. By setting up Postfix to deliver
-emails sent to a specific address (usually note-<number>@<domain>) to
-the above script, users are able to use their email clients to reply
-to internal notes coming from Eventum, and those replies will be
-automatically associated with the issue and broadcasted to the
-notification list staff members.
-
-%description route-notes -l pl.UTF-8
-Funkcjonalność przekazywania notatek służy do automatycznego wiązania
-wątku notatek ze sprawą w Eventum. Po ustawieniu Postfiksa, aby
-dostarczał listy wysyłane na pewien adres (zwykle
-note-<numer>@<domena>) na powyższy skrypt, użytkownicy będą mogli
-używać klientów pocztowych do odpowiadania na wewnętrzne notatki
-pochodzące od Eventu, a odpowiedzi te będą automatycznie wiązane ze
-sprawą i rozprowadzane do członków personelu listy ogłoszeniowej.
-
 %package router-postfix
 Summary:       Eventum Mail Routing - Postfix
 Summary(pl.UTF-8):     Przekazywanie poczty Eventum - Postfix
@@ -366,8 +289,9 @@ 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
+Requires:      php-pear-Net_SmartIRC >= 1.1.9
 Requires:      rc-scripts >= 0.4.0.18
 
 %description irc
@@ -398,7 +322,6 @@ kanał używany przez bota, trzeba ręcznie zmodyfikować skrypt bot.php .
 Summary:       Eventum command-line interface
 Summary(pl.UTF-8):     Interfejs linii poleceń dla Eventum
 Group:         Applications/WWW
-Requires:      %{name}-base = %{version}-%{release}
 Requires:      php(core) >= %{php_min_version}
 Requires:      php(phar)
 Requires:      php-pear-XML_RPC
@@ -462,9 +385,6 @@ This package contains the cron job.
 
 mv docs/examples .
 
-# GPL v2
-rm docs/COPYING
-
 # bug fixes / features
 %{?with_order:%patch2 -p1}
 #%patch3 -p0
@@ -488,7 +408,7 @@ define('APP_SQL_DBPASS', '');
 define('APP_TABLE_PREFIX', 'eventum_');
 EOF
 php config/sphinx.conf.php > config/sphinx.conf
-rm -f config/config.php
+rm config/config.php
 %endif
 
 # packaging
@@ -497,6 +417,10 @@ rm -f config/config.php
 %patch107 -p1
 %patch108 -p1
 
+rm htdocs/.htaccess.dist
+# deprecated in favour of process_all_emails.php
+rm bin/route_*.php
+
 # cleanup vendor. keep only needed libraries.
 # (the rest are packaged with system packages)
 mv vendor vendor.dist
@@ -512,7 +436,7 @@ vendor autoload.php
 vendor composer/autoload_{classmap,files,namespaces,real,psr4}.php
 vendor composer/ClassLoader.php
 vendor ircmaxell/{password-compat,random-lib,security-lib}
-vendor zendframework/zend-config
+vendor defuse/php-encryption
 
 # remove backups from patching as we use globs to package files to buildroot
 find '(' -name '*~' -o -name '*.orig' ')' | xargs -r rm -v
@@ -528,7 +452,6 @@ install -d \
        $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%{_appdir}/{include,htdocs/misc,upgrade} \
        $RPM_BUILD_ROOT%{systemdtmpfilesdir}
 
 %{__make} install-eventum install-cli install-scm install-localization \
@@ -563,7 +486,7 @@ 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
 
-cp -p %{SOURCE7} $RPM_BUILD_ROOT%{_webappdir}/irc_config.php
+cp -p config/irc_config.dist.php $RPM_BUILD_ROOT%{_webappdir}/irc_config.php
 
 install -p %{SOURCE8} $RPM_BUILD_ROOT/etc/rc.d/init.d/eventum-irc
 cp -p %{SOURCE9} $RPM_BUILD_ROOT/etc/sysconfig/eventum-irc
@@ -584,19 +507,26 @@ cp -p %{SOURCE6} $RPM_BUILD_ROOT%{_sysconfdir}/scm.php
 rm -rf $RPM_BUILD_ROOT
 
 %pre
+%groupadd -g 146 %{name}
+%useradd -u 146 -d /var/lib/%{name} -g %{name} -c "Eventum User" %{name}
 %addusertogroup http %{name}
 
 %post
-# greate empty ghost files
-for a in cli.log errors.log irc_bot.log login_attempts.log; do
-       if [ ! -f /var/log/%{name}/$a ]; then
-               install -m 0620 -o root -g eventum /dev/null /var/log/%{name}/$a
-       fi
+# create empty ghost files
+# these permissions ensure the logs are write only
+for a in \
+       errors.log login_attempts.log \
+       eventum.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
 done
 
 # run database update if configured
 test -s %{_webappdir}/config.php && \
-%{_appdir}/upgrade/update-database.php || :
+%{_appdir}/bin/upgrade.php || :
 
 # nuke Smarty templates cache after upgrade
 rm -f /var/cache/eventum/*.php
@@ -611,11 +541,7 @@ if [ "$1" = "0" ]; then
        rm -f /var/cache/eventum/*.php 2>/dev/null || :
 fi
 
-%pre base
-%groupadd -P %{name}-base -g 146 %{name}
-%useradd -P %{name}-base -u 146 -d /var/lib/%{name} -g %{name} -c "Eventum User" %{name}
-
-%postun base
+%postun
 if [ "$1" = "0" ]; then
        %userremove %{name}
        %groupremove %{name}
@@ -684,15 +610,17 @@ done
 %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}
+%dir %attr(711,root,http) /var/log/%{name}
 %attr(620,root,http) %ghost /var/log/%{name}/*
 %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}
 %{_appdir}/config
 
 %dir %{_appdir}/bin
 %attr(755,root,root) %{_appdir}/bin/process_all_emails.php
+%attr(755,root,root) %{_appdir}/bin/upgrade.php
 
 %{_appdir}/autoload.php
 %{_appdir}/init.php
@@ -705,7 +633,6 @@ done
 %{_appdir}/htdocs/images
 %{_appdir}/htdocs/js
 %{_appdir}/htdocs/manage
-%{_appdir}/htdocs/misc
 %{_appdir}/htdocs/reports
 %{_appdir}/htdocs/rpc
 %{_appdir}/htdocs/components
@@ -714,28 +641,26 @@ done
 %dir %{_appdir}/upgrade
 %{_appdir}/upgrade/flush_compiled_templates.php
 %{_appdir}/upgrade/*.sql
-%attr(755,root,root) %{_appdir}/upgrade/update-database.php
+%attr(755,root,root) %{_appdir}/upgrade/change_usr_id.php
 %attr(755,root,root) %{_appdir}/upgrade/ldap_import.php
 %attr(755,root,root) %{_appdir}/upgrade/ldap_update_users.php
 %attr(755,root,root) %{_appdir}/upgrade/scm_trac_import.php
 %{_appdir}/upgrade/patches
 
 %{_appdir}/vendor
-
+%{_appdir}/src
 %dir %{_appdir}/lib
 %{_appdir}/lib/eventum
 %exclude %{_appdir}/lib/eventum/class.monitor.php
 
+%dir %{_libdir}
+
 %{systemdtmpfilesdir}/%{name}.conf
+
+%dir /var/lib/%{name}
 %dir %attr(730,root,http) /var/run/%{name}
 %dir %attr(730,root,http) /var/cache/%{name}
 
-%files base
-%defattr(644,root,root,755)
-%attr(751,root,root) %dir %{_sysconfdir}
-%dir %{_libdir}
-%dir %{_appdir}
-%dir /var/lib/%{name}
 # saved mail copies
 %attr(770,root,http) %dir /var/lib/%{name}/routed_emails
 %attr(770,root,http) %dir /var/lib/%{name}/routed_drafts
@@ -746,6 +671,7 @@ done
 %{_appdir}/htdocs/setup
 
 %files doc
+%defattr(644,root,root,755)
 %doc docs/*
 %{_examplesdir}/%{name}-%{version}
 
@@ -771,18 +697,6 @@ done
 %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}/bin/route_drafts.php
-
-%files route-emails
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_appdir}/bin/route_emails.php
-
-%files route-notes
-%defattr(644,root,root,755)
-%attr(755,root,root) %{_appdir}/bin/route_notes.php
-
 %files router-postfix
 %defattr(644,root,root,755)
 %attr(755,root,root) %{_libdir}/router-postfix
This page took 0.047619 seconds and 4 git commands to generate.