]> git.pld-linux.org Git - packages/eventum.git/blame - eventum.spec
up to 3.0.8-187-gacd7038
[packages/eventum.git] / eventum.spec
CommitLineData
a659c698
JB
1#
2# Conditional build:
7bc9b641 3%bcond_with order # with experimental order patch
cddf3011 4
60c51158
ER
5%define rel 1.4
6%define subver 187
7%define githash acd7038
9d207070 8%define php_min_version 5.3.7
b3857e8b 9%include /usr/lib/rpm/macros.php
c96aabf5 10Summary: Eventum Issue / Bug tracking system
9f49cf47 11Summary(pl.UTF-8): Eventum - system śledzenia spraw/błędów
bb01d732 12Name: eventum
ecf7fd9a 13Version: 3.0.8
7665f424 14Release: %{?subver:1.%{subver}.%{?githash:g%{githash}.}}%{rel}
0bd66721 15License: GPL v2+
6850abd9 16Group: Applications/WWW
17e94df5
ER
17#Source0: https://github.com/eventum/eventum/releases/download/v%{version}/%{name}-%{version}.tar.gz
18Source0: %{name}-%{version}-%{subver}-g%{githash}.tar.gz
60c51158 19# Source0-md5: ae49292484aa2271c82dea1262aead96
82121306 20Source1: %{name}-apache.conf
cd719538
ER
21Source2: %{name}-mail-queue.cron
22Source3: %{name}-mail-download.cron
23Source4: %{name}-reminder.cron
24Source5: %{name}-monitor.cron
25Source6: %{name}-cvs.php
cd719538 26Source8: %{name}-irc.init
73f6a3e6 27Source9: %{name}-irc.sysconfig
1cce3e61 28Source10: sphinx.crontab
cfcdd0a9
ER
29Source13: %{name}-router-postfix.sh
30Source14: %{name}.logrotate
31Source15: %{name}-lighttpd.conf
d0dabd47
ER
32Source16: http://www.isocra.com/images/updown2.gif
33# Source16-md5: deb6eeb2552ba757d3a949ed10c4107d
cc613bc9 34Source17: %{name}.tmpfiles
4f627938 35Patch2: %{name}-order.patch
7a906e31
ER
36#Patch3: group-users.patch
37#Patch4: https://github.com/glensc/eventum/compare/cf_escape.patch
14ff3418 38# packaging patches that probably never go upstream
ac27ba92
ER
39Patch100: %{name}-paths.patch
40Patch101: %{name}-cvs-config.patch
cfcdd0a9 41Patch107: %{name}-gettext.patch
3ca19d87 42Patch108: autoload.patch
a6016bab
ER
43# some tests
44Patch200: %{name}-fixed-nav.patch
3cf7d1aa 45URL: http://eventum.mysql.org/
447ff246 46BuildRequires: /usr/bin/php
4b01e826 47BuildRequires: gettext-devel
7a906e31 48BuildRequires: php(core) >= %{php_min_version}
b3857e8b 49BuildRequires: rpm-php-pearprov >= 4.0.2-98
5500a61e 50BuildRequires: rpmbuild(macros) >= 1.654
4068cb73 51BuildRequires: sed >= 4.0
5132bae6
ER
52Requires(postun): /usr/sbin/groupdel
53Requires(postun): /usr/sbin/userdel
54Requires(pre): /bin/id
55Requires(pre): /usr/bin/getgid
56Requires(pre): /usr/sbin/groupadd
57Requires(pre): /usr/sbin/useradd
0b88d857 58Requires: fonts-TTF-RedHat-liberation
01d8dfff 59Requires: php(core) >= %{php_min_version}
2f331c68 60Requires: php(filter)
2f331c68
ER
61Requires: php(iconv)
62Requires: php(imap)
63Requires: php(json)
64Requires: php(mbstring)
8c038b49 65Requires: php(mysqli)
2f331c68
ER
66Requires: php(pcre)
67Requires: php(session)
5dbd4bf5
ER
68Requires: php-Smarty >= 3.1
69Requires: php-Smarty-plugin-gettext
9d207070 70Requires: php-ZendFramework-Config >= 2.4
19d84727 71Requires: php-monolog >= 1.17.2
71b01fde 72Requires: php-pear-DB
71b01fde 73Requires: php-pear-Mail
723da18a 74Requires: php-pear-Mail_Mime
fb0b2f83 75Requires: php-pear-Mail_mimeDecode
71b01fde
ER
76Requires: php-pear-Math_Stats
77Requires: php-pear-Net_DIME
71b01fde 78Requires: php-pear-Net_SMTP
71b01fde
ER
79Requires: php-pear-Net_Socket
80Requires: php-pear-Net_URL
81Requires: php-pear-Net_UserAgent_Detect
3223fb64 82Requires: php-pear-PEAR-core
71b01fde
ER
83Requires: php-pear-Text_Diff
84Requires: php-pear-XML_RPC
19d84727
ER
85Requires: php-psr-Log >= 1.0.0-2
86Requires: php-symfony2-HttpFoundation >= 2.7.7
0b88d857 87Requires: phplot >= 5.8.0
bdf85dc8 88Requires: webapps
f399f1c0
ER
89Requires: webserver(access)
90Requires: webserver(alias)
897bdb2c 91Requires: webserver(indexfile)
61351540 92Requires: webserver(php) >= 4.2.0
462ee1a6 93Suggests: localedb
73de38a1 94Suggests: php-pear-Net_LDAP2
06ddb94b 95Suggests: webserver(setenv)
5132bae6
ER
96Provides: group(eventum)
97Provides: user(eventum)
98Obsoletes: eventum-base < 3.0.3-1.305
4e2cf70d
ER
99Obsoletes: eventum-route-drafts < 3.0.8-1.1
100Obsoletes: eventum-route-emails < 3.0.8-1.1
101Obsoletes: eventum-route-notes < 3.0.8-1.1
bd70ea88 102Conflicts: logrotate < 3.8.0
35fa3cf8 103BuildArch: noarch
bb01d732
ER
104BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
105
4b01e826 106%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.*
03410d49
ER
107
108# exclude optional php dependencies
899100ff 109%define _noautophp php-gnupg php-hash php-pecl-http php-tk
03410d49 110
5500a61e 111%define _noautoreq %{_noautophp}
3223fb64 112
1d760108 113%define _libdir %{_prefix}/lib/%{name}
71f56750 114%define _appdir %{_datadir}/%{name}
d1c44829 115%define _smartydir %{php_data_dir}/Smarty
bdf85dc8
ER
116%define _webapps /etc/webapps
117%define _webapp %{name}
8a37ad9d
ER
118%define _webappdir %{_webapps}/%{_webapp}
119%define _sysconfdir /etc/%{name}
bb01d732
ER
120
121%description
122Eventum is a user-friendly and flexible issue tracking system that can
123be used by a support department to track incoming technical support
124requests, or by a software development team to quickly organize tasks
125and bugs. Eventum is used by the MySQL AB Technical Support team, and
126has allowed us to dramatically improve our response times.
127
d8cfa9f0
JR
128%description -l pl.UTF-8
129Eventum to przyjazny dla użytkownika system śledzenia spraw, który
130może być używany przez dział obsługi do śledzenia przychodzących żądań
131obsługi technicznej albo przez zespół tworzący oprogramowanie do
132szybkiej organizacji zadań i błędów. Eventum jest używany przez zespół
133Technical Support MySQL AB i umożliwił im znacząco poprawić czasy
4068cb73
JB
134reakcji.
135
ab983aaa 136%package setup
4068cb73 137Summary: Eventum setup package
9f49cf47 138Summary(pl.UTF-8): Pakiet do wstępnej konfiguracji Eventum
ab983aaa 139Group: Applications/WWW
5b165428 140Requires: %{name} = %{version}-%{release}
ab983aaa
ER
141
142%description setup
143Install this package to configure initial Eventum installation. You
144should uninstall this package when you're done, as it considered
145insecure to keep the setup files in place.
146
d8cfa9f0
JR
147%description setup -l pl.UTF-8
148Ten pakiet należy zainstalować w celu wstępnej konfiguracji Eventum po
149pierwszej instalacji. Potem należy go odinstalować, jako że
150pozostawienie plików instalacyjnych mogłoby być niebezpieczne.
4068cb73 151
d4a553ea
ER
152%package doc
153Summary: Eventum documentation and Wiki
154Group: Documentation
155
156%description doc
157Eventum documentation and copy of Wiki.
158
0da8e1f2 159%package mail-queue
30689148 160Summary: Eventum mail queue process
9f49cf47 161Summary(pl.UTF-8): Przetwarzanie kolejki poczty Eventum
0da8e1f2 162Group: Applications/WWW
5b165428 163Requires: %{name} = %{version}-%{release}
0da8e1f2
ER
164Requires: crondaemon
165
166%description mail-queue
167Beginning with the first release of Eventum, emails are not directly
168sent out from the various scripts, but rather added to a mail queue
169table that is processed by a cron job. If an email cannot be sent, it
170will be marked as such in the mail queue log, and the cron job script
171will re-try to send it again the next time it runs.
172
173This package contains the cron job.
174
d8cfa9f0
JR
175%description mail-queue -l pl.UTF-8
176Od pierwszego wydania Eventum poczta nie jest wysyłana bezpośrednio z
177różnych skryptów, lecz dodawana do kolejki przetwarzanej z crona.
178Jeśli poczta nie może być wysłana, będzie odpowiednio oznaczona w logu
179kolejki poczty, a skrypt z crona będzie próbował wysłać ją ponownie
180następnym razem.
0181746f 181
30689148 182Ten pakiet zawiera zadanie dla crona.
183
ea084bcb 184%package mail-download
30689148 185Summary: Eventum email download
9f49cf47 186Summary(pl.UTF-8): Ściąganie poczty Eventum
ea084bcb 187Group: Applications/WWW
5b165428 188Requires: %{name} = %{version}-%{release}
ea084bcb
ER
189Requires: crondaemon
190
191%description mail-download
192In order for Eventum's email integration feature to work, you need to
193setup a cron job to run the script every so often.
194
195This package contains the cron job.
196
d8cfa9f0
JR
197%description mail-download -l pl.UTF-8
198Aby integracja poczty elektronicznej w Eventum działała, trzeba
199ustawić zadanie crona, aby uruchamiał odpowiedni skrypt wystarczająco
200często.
0181746f
JB
201
202Ten pakiet zawiera zadanie dla crona.
203
cd719538
ER
204%package reminder
205Summary: Eventum Reminder System
9f49cf47 206Summary(pl.UTF-8): System przypominania dla Eventum
cd719538 207Group: Applications/WWW
5b165428 208Requires: %{name} = %{version}-%{release}
cd719538
ER
209Requires: crondaemon
210
211%description reminder
212The reminder system was designed with the objective as serving as a
213safe net for issues that need attention. Depending on what
214configuration you create, you may have several reminders (or alerts)
215be sent out whenever an issue needs attention, for whatever parameter
216you may deem necessary.
217
218This package contains the cron job.
219
d8cfa9f0
JR
220%description reminder -l pl.UTF-8
221System przypominania został zaprojektowany tak, aby służył jako
222bezpieczna sieć dla spraw wymagających uwagi. W zależności od
223konfiguracji można ustawić różne przypominajki (lub alarmy) wysyłane
224przy każdej sprawie wymagającej uwagi lub przy parametrze, który można
225uważać za potrzebny.
6341f096
JB
226
227Ten pakiet zawiera zadanie dla crona.
228
cd719538
ER
229%package monitor
230Summary: Eventum Heartbeat Monitor
9f49cf47 231Summary(pl.UTF-8): Monitor życia dla Eventum
cd719538 232Group: Applications/WWW
5b165428 233Requires: %{name} = %{version}-%{release}
cd719538 234Requires: crondaemon
2f331c68 235Requires: php(posix)
cd719538
ER
236
237%description monitor
238The heartbeat monitor is a feature designed for the administrator that
239wants to be alerted whenever a common problem in Eventum is detected,
240like the database server not being available anymore, or maybe when
241the recommended permissions for certain configuration files are
242changed.
243
244Please note that before running the heartbeat monitor, you may need to
245customize some of the checks to be appropriate for your own system,
246particularly the permission and file checks on
247Monitor::checkConfiguration().
248
249This package contains the cron job.
250
d8cfa9f0
JR
251%description monitor -l pl.UTF-8
252Monitor życia to funkcjonalność zaprojektowana dla administratora
253chcącego być alarmowanym przy każdym wykryciu popularnego problemu z
254Eventum, jak nie działanie serwera bazy danych albo zmiana uprawnień
255do plików konfiguracyjnych.
6341f096 256
d8cfa9f0
JR
257Należy zauważyć, że przed uruchomieniem tego monitora może być
258konieczne dostosowanie niektórych testów do systemu, w szczególności
259testów uprawnień i plików w Monitor::checkConfiguration().
6341f096
JB
260
261Ten pakiet zawiera zadanie dla crona.
262
a6d2ad69
ER
263%package router-postfix
264Summary: Eventum Mail Routing - Postfix
9f49cf47 265Summary(pl.UTF-8): Przekazywanie poczty Eventum - Postfix
a6d2ad69 266Group: Applications/Mail
5b165428 267Requires: %{name} = %{version}-%{release}
a6d2ad69 268Requires: postfix
8bc4bcd1
ER
269Provides: eventum(router)
270Obsoletes: eventum(router)
a6d2ad69
ER
271
272%description router-postfix
273This package provides way of routing notes and emails back to Eventum
274via Postfix.
275
e1bb3563
ER
276The Postfix configuration instructions you can find from
277<http://eventum.mysql.org/wiki/index.php/Setting_up_email_routing_with_postfix>.
278
d8cfa9f0
JR
279%description router-postfix -l pl.UTF-8
280Ten pakiet udostępnia metodę przekazywania notatek i listów do Eventum
995fa554
JB
281przez Postfiksa.
282
d8cfa9f0 283Opis konfiguracji Postfiksa można znaleźć pod adresem
a659c698
JB
284<http://eventum.mysql.org/wiki/index.php/Setting_up_email_routing_with_postfix>.
285
cd719538
ER
286%package irc
287Summary: Eventum IRC Notification Bot
9f49cf47 288Summary(pl.UTF-8): IRC-owy bot powiadamiający dla Eventum
cd719538 289Group: Applications/WWW
b79fc4aa 290Requires(post,preun): /sbin/chkconfig
5b165428 291Requires: %{name} = %{version}-%{release}
7c68bc62 292Requires: php(pcntl)
2f331c68 293Requires: php(sockets)
f8f981f8 294Requires: php-pear-Net_SmartIRC >= 1.1.9
e1c0f343 295Requires: rc-scripts >= 0.4.0.18
cd719538
ER
296
297%description irc
298The IRC notification bot is a nice feature for remote teams that want
299to handle issues and want to have a quick and easy way to get simple
300notifications. Right now the bot notifies of the following actions:
301- New Issues
302- Blocked emails
303- Issues that got their assignment list changed
304
305NOTE: You will need to manually edit the bot.php script to set your
306appropriate preferences, like IRC server and channel that the bot
307should join.
308
d8cfa9f0
JR
309%description irc -l pl.UTF-8
310IRC-owy bot powiadamiający to miła funkcjonalność dla zdalnych
311zespołów chcących obsługiwać sprawy i mieć szybki i łatwy sposób na
312uzyskiwanie prostych powiadomień. Aktualnie bot powiadamia o
313następujących zdarzeniach:
6341f096
JB
314- nowych sprawach
315- zablokowanych listach
d8cfa9f0 316- sprawach, dla których zmieniła się lista powiązań
6341f096 317
d8cfa9f0
JR
318UWAGA: w celu wprowadzenia własnych ustawień, takich jak serwer IRC i
319kanał używany przez bota, trzeba ręcznie zmodyfikować skrypt bot.php .
6341f096 320
abd490e4
ER
321%package cli
322Summary: Eventum command-line interface
9f49cf47 323Summary(pl.UTF-8): Interfejs linii poleceń dla Eventum
abd490e4 324Group: Applications/WWW
01d8dfff 325Requires: php(core) >= %{php_min_version}
4a74b463 326Requires: php(phar)
71b01fde 327Requires: php-pear-XML_RPC
abd490e4
ER
328
329%description cli
330The Eventum command-line interface allows you to access most of the
331features of the web interface straight from your command shell.
abd490e4 332
d8cfa9f0
JR
333%description cli -l pl.UTF-8
334Interfejs linii poleceń Eventum pozwala na dostęp do większości
335funkcji interfejsu WWW prosto z linii poleceń powłoki.
958cd5a0 336
5cb2e61d 337%package scm
30689148 338Summary: Eventum SCM integration
9f49cf47 339Summary(pl.UTF-8): Integracja SCM dla Eventum
5cb2e61d 340Group: Applications/WWW
01d8dfff 341Requires: php(core) >= %{php_min_version}
d710a6df 342Requires: php(json)
2f331c68 343Requires: php(pcre)
f2151907
ER
344Requires: php(spl)
345Suggests: cvs
346Suggests: git-core
c28270d0 347Suggests: php(openssl)
f2151907 348Suggests: subversion
5cb2e61d
ER
349
350%description scm
351This feature allows your software development teams to integrate your
352Source Control Management system with your Issue Tracking System.
353
354The integration is implemented in such a way that it will be forward
355compatible with pretty much any SCM system, such as CVS.
356
0181746f 357For installation see
a392a259 358</eventum/help.php?topic=scm_integration_installation>.
0181746f 359
d8cfa9f0
JR
360%description scm -l pl.UTF-8
361Ten pakiet pozwala zespołom programistów na integrację systemu
362zarządzania źródłami (SCM - Source Control Management) z systemem
363śledzenia spraw.
0181746f 364
d8cfa9f0
JR
365Integracja jest zaimplementowana tak, aby być kompatybilna w przód z
366prawie każdym systemem SCM, jak np. CVS.
0181746f 367
d8cfa9f0 368Szczegóły na temat instalacji można przeczytać pod
a392a259 369</eventum/help.php?topic=scm_integration_installation>.
5cb2e61d 370
1cce3e61
ER
371%package sphinx
372Summary: Eventum Sphinx Search
373Group: Applications/WWW
374Requires: %{name} = %{version}-%{release}
375Requires: crondaemon
376Requires: sphinx
377
378%description sphinx
379Sphinx search integration for Eventum.
380
381This package contains the cron job.
382
bb01d732 383%prep
4b01e826 384%setup -q -n %{name}-%{version}%{?githash:-%{subver}-g%{githash}}
5b165428 385
fa6167ba
ER
386mv docs/examples .
387
9487d524 388# bug fixes / features
4f627938 389%{?with_order:%patch2 -p1}
7a906e31
ER
390#%patch3 -p0
391#%patch4 -p1
57e65e62 392
7a906e31 393%{?with_order:cp -p %{SOURCE16} htdocs/images}
422dcc8e 394
a6016bab 395#%patch200 -p1
ac27ba92 396
1cce3e61
ER
397# produce default sphinx config
398# must be run before paths.patch
7a906e31 399%if 0
1cce3e61
ER
400cat <<'EOF' > config/config.php
401<?php
402define('APP_SQL_DBTYPE', 'mysql');
403define('APP_SQL_DBHOST', 'localhost:/var/lib/mysql/mysql.sock');
404define('APP_SQL_DBPORT', 3306);
405define('APP_SQL_DBNAME', 'eventum');
406define('APP_SQL_DBUSER', 'mysql');
407define('APP_SQL_DBPASS', '');
408define('APP_TABLE_PREFIX', 'eventum_');
409EOF
410php config/sphinx.conf.php > config/sphinx.conf
54b9a2df 411rm config/config.php
7a906e31 412%endif
1cce3e61 413
ac27ba92
ER
414# packaging
415%patch100 -p1
c28270d0 416%patch101 -p1
ac27ba92 417%patch107 -p1
3ca19d87 418%patch108 -p1
0b3b58dd 419
54b9a2df 420rm htdocs/.htaccess.dist
4e2cf70d
ER
421# deprecated in favour of process_all_emails.php
422rm bin/route_*.php
54b9a2df 423
bcb86d50
ER
424# cleanup vendor. keep only needed libraries.
425# (the rest are packaged with system packages)
426mv vendor vendor.dist
427vendor() {
428 local path dir
429 for path; do
430 dir=$(dirname $path)
431 test -d vendor/$dir || mkdir -p vendor/$dir
432 mv vendor.dist/$path vendor/$path
433 done
434}
435vendor autoload.php
436vendor composer/autoload_{classmap,files,namespaces,real,psr4}.php
437vendor composer/ClassLoader.php
438vendor ircmaxell/{password-compat,random-lib,security-lib}
60c51158 439vendor defuse/php-encryption
c3fd3767 440
5b165428 441# remove backups from patching as we use globs to package files to buildroot
73c437a6 442find '(' -name '*~' -o -name '*.orig' ')' | xargs -r rm -v
085e39c0 443
465c3ab7 444%build
ae3e48e6 445%{__make} -C localization
465c3ab7 446
bb01d732
ER
447%install
448rm -rf $RPM_BUILD_ROOT
cfc3bce6 449install -d \
6e3be5a3 450 $RPM_BUILD_ROOT{%{_webappdir}/{custom_field,templates,workflow},%{_sysconfdir},%{_bindir},%{_sbindir},%{_libdir}} \
2b135b34 451 $RPM_BUILD_ROOT/etc/{rc.d/init.d,cron.d,logrotate.d,sysconfig} \
c1e74aa1 452 $RPM_BUILD_ROOT/var/{run,cache,lib}/%{name} \
685fc383 453 $RPM_BUILD_ROOT/var/log/{archive/,}%{name} \
89522a33 454 $RPM_BUILD_ROOT/var/lib/%{name}/routed_{emails,drafts,notes} \
73de38a1 455 $RPM_BUILD_ROOT%{systemdtmpfilesdir}
cfc3bce6 456
35bb76a6 457%{__make} install-eventum install-cli install-scm install-localization \
ae3e48e6 458 sysconfdir=%{_webappdir} \
7a906e31 459 localedir=%{_localedir} \
ae3e48e6 460 DESTDIR=$RPM_BUILD_ROOT
da8d6134 461
dd5b687f 462ln -s %{_webappdir} $RPM_BUILD_ROOT%{_appdir}/config
37f06e5c 463
bcb86d50 464cp -a vendor $RPM_BUILD_ROOT%{_appdir}
3ca19d87 465
29e8ea7c
ER
466# unsupported locale
467%{__rm} -r $RPM_BUILD_ROOT%{_localedir}/ht
468
fa6167ba
ER
469install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
470cp -a examples/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
471
ae3e48e6 472%{?with_order:cp -a htdocs/ajax $RPM_BUILD_ROOT%{_appdir}/htdocs}
9cdc5027 473
f399f1c0 474touch $RPM_BUILD_ROOT%{_webappdir}/htpasswd
1b5aae0f 475cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_webappdir}/apache.conf
87ca28ca 476cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_webappdir}/httpd.conf
1b5aae0f 477cp -p %{SOURCE15} $RPM_BUILD_ROOT%{_webappdir}/lighttpd.conf
1cce3e61
ER
478
479install -d $RPM_BUILD_ROOT/etc/sphinx
7a906e31 480#cp -p config/sphinx.conf $RPM_BUILD_ROOT/etc/sphinx/%{name}.conf
858c6f2a 481cp -p config/sphinx.conf.php $RPM_BUILD_ROOT%{_webappdir}
ae3e48e6 482
1b5aae0f
ER
483cp -p %{SOURCE2} $RPM_BUILD_ROOT/etc/cron.d/%{name}-mail-queue
484cp -p %{SOURCE3} $RPM_BUILD_ROOT/etc/cron.d/%{name}-mail-download
485cp -p %{SOURCE4} $RPM_BUILD_ROOT/etc/cron.d/%{name}-reminder
486cp -p %{SOURCE5} $RPM_BUILD_ROOT/etc/cron.d/%{name}-monitor
1cce3e61 487cp -p %{SOURCE10} $RPM_BUILD_ROOT/etc/cron.d/%{name}-sphinx
ae3e48e6 488
22a41ac0 489cp -p config/irc_config.dist.php $RPM_BUILD_ROOT%{_webappdir}/irc_config.php
ae3e48e6 490
2b135b34 491install -p %{SOURCE8} $RPM_BUILD_ROOT/etc/rc.d/init.d/eventum-irc
1b5aae0f 492cp -p %{SOURCE9} $RPM_BUILD_ROOT/etc/sysconfig/eventum-irc
31dabce6 493
1b5aae0f 494cp -p %{SOURCE14} $RPM_BUILD_ROOT/etc/logrotate.d/%{name}
2b135b34 495
410d72c7 496# postfix router
858c6f2a 497install -p %{SOURCE13} $RPM_BUILD_ROOT%{_libdir}/router-postfix
a6d2ad69 498
92bc2f5d 499cp -p %{SOURCE17} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/%{name}.conf
cc613bc9 500
600d96a0 501%find_lang %{name}
c1e74aa1 502
ae3e48e6 503# scm
7a906e31 504cp -p %{SOURCE6} $RPM_BUILD_ROOT%{_sysconfdir}/scm.php
ae3e48e6 505
bb01d732
ER
506%clean
507rm -rf $RPM_BUILD_ROOT
508
01b84746 509%pre
5132bae6
ER
510%groupadd -g 146 %{name}
511%useradd -u 146 -d /var/lib/%{name} -g %{name} -c "Eventum User" %{name}
01b84746
ER
512%addusertogroup http %{name}
513
82121306 514%post
686306de
ER
515# create empty ghost files
516# these permissions ensure the logs are write only
517for a in \
518 errors.log login_attempts.log \
2df0528f 519 eventum.log \
686306de
ER
520 cli.log \
521 irc_bot_error.log irc_bot_smartirc.log \
522; do
523 test -f /var/log/%{name}/$a && continue
524 install -m 0620 -o root -g http /dev/null /var/log/%{name}/$a
08196fe2
ER
525done
526
00358bba
ER
527# run database update if configured
528test -s %{_webappdir}/config.php && \
6453eaf6 529%{_appdir}/bin/upgrade.php || :
847270fe 530
da8d6134
ER
531# nuke Smarty templates cache after upgrade
532rm -f /var/cache/eventum/*.php
533
4a751c1a
ER
534# Restart webserver on upgrade to get .mo translations reloaded.
535# actually php engines "php-fcgi" and "php-fpm" needed only, apache is restarted anyway via webapp trigger.
114241d7
ER
536%php_webserver_restart
537
82121306
ER
538%preun
539if [ "$1" = "0" ]; then
dfe0f6d6
ER
540 # nuke cache
541 rm -f /var/cache/eventum/*.php 2>/dev/null || :
542fi
cfc3bce6 543
5132bae6 544%postun
01b84746 545if [ "$1" = "0" ]; then
a6d2ad69 546 %userremove %{name}
1f52d1fe 547 %groupremove %{name}
a6d2ad69
ER
548fi
549
94bd779f 550%post setup
8a37ad9d 551chmod 660 %{_webappdir}/{config,private_key}.php
253ca53d 552chown root:http %{_webappdir}/{config,private_key}.php
94bd779f
ER
553
554%postun setup
b4fe195b 555if [ "$1" = "0" ] && [ -f %{_webappdir}/config.php ]; then
8a37ad9d 556 chmod 640 %{_webappdir}/{config,private_key}.php
253ca53d 557 chown root:http %{_webappdir}/{config,private_key}.php
94bd779f
ER
558fi
559
e1c0f343
ER
560%post irc
561/sbin/chkconfig --add eventum-irc
99bbe3cb 562%service eventum-irc restart "Eventum IRC Bot"
e1c0f343 563
add0e245
ER
564%preun irc
565if [ "$1" = 0 ]; then
566 %service eventum-irc stop
567 /sbin/chkconfig --del eventum-irc
568fi
569
09f58a75 570%triggerin -- apache1 < 1.3.37-3, apache1-base
bdf85dc8 571%webapp_register apache %{_webapp}
1d760108 572
09f58a75 573%triggerun -- apache1 < 1.3.37-3, apache1-base
bdf85dc8 574%webapp_unregister apache %{_webapp}
1d760108 575
87ca28ca 576%triggerin -- apache < 2.2.0, apache-base
bdf85dc8 577%webapp_register httpd %{_webapp}
1d760108 578
87ca28ca 579%triggerun -- apache < 2.2.0, apache-base
bdf85dc8 580%webapp_unregister httpd %{_webapp}
1d760108 581
f399f1c0
ER
582%triggerin -- lighttpd
583%webapp_register lighttpd %{_webapp}
584
585%triggerun -- lighttpd
586%webapp_unregister lighttpd %{_webapp}
587
24cfc386
ER
588%triggerpostun -- %{name} < 3.0.0-0.2
589for f in /etc/cron.d/eventum-*; do
590 # crontabs moved to bin
0ffd10e7 591 %{__sed} -i -e '
24cfc386
ER
592 s,/usr/share/eventum/crons/process_mail_queue.php,%{_appdir}/bin/process_mail_queue.php,
593 s,/usr/share/eventum/crons/download_emails.php,%{_appdir}/bin/download_emails.php,
594 s,/usr/share/eventum/crons/check_reminders.php,%{_appdir}/bin/check_reminders.php,
595 s,/usr/share/eventum/crons/monitor.php,%{_appdir}/bin/monitor.php,
596 ' $f
0ffd10e7 597done
f1269a43 598
600d96a0 599%files -f %{name}.lang
bb01d732 600%defattr(644,root,root,755)
8a37ad9d 601%attr(751,root,root) %dir %{_webappdir}
6e3be5a3
ER
602%attr(751,root,root) %dir %{_webappdir}/custom_field
603%attr(751,root,root) %dir %{_webappdir}/templates
604%attr(751,root,root) %dir %{_webappdir}/workflow
8a37ad9d
ER
605%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_webappdir}/apache.conf
606%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_webappdir}/httpd.conf
f399f1c0 607%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_webappdir}/lighttpd.conf
e570944f
ER
608%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_webappdir}/config.php
609%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_webappdir}/private_key.php
610%attr(660,root,http) %config(noreplace) %verify(not md5 mtime size) %{_webappdir}/setup.php
f399f1c0 611%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_webappdir}/htpasswd
d2e501e8 612
686306de 613%dir %attr(711,root,http) /var/log/%{name}
e570944f 614%attr(620,root,http) %ghost /var/log/%{name}/*
3c6aa7a9 615%dir %attr(750,root,root) /var/log/archive/%{name}
8fd047ac 616%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/%{name}
35f9d6a3 617
5132bae6 618%dir %{_appdir}
37f06e5c
ER
619%{_appdir}/config
620
7a906e31 621%dir %{_appdir}/bin
7a906e31 622%attr(755,root,root) %{_appdir}/bin/process_all_emails.php
6453eaf6 623%attr(755,root,root) %{_appdir}/bin/upgrade.php
7a906e31 624
4b01e826 625%{_appdir}/autoload.php
ae3e48e6 626%{_appdir}/init.php
cfc3bce6
ER
627%dir %{_appdir}/htdocs
628%{_appdir}/htdocs/*.php
da8d6134 629%{_appdir}/htdocs/*.ico
7bc9b641 630%{_appdir}/htdocs/ajax
cfc3bce6
ER
631%{_appdir}/htdocs/css
632%{_appdir}/htdocs/customer
633%{_appdir}/htdocs/images
634%{_appdir}/htdocs/js
635%{_appdir}/htdocs/manage
636%{_appdir}/htdocs/reports
637%{_appdir}/htdocs/rpc
7a906e31 638%{_appdir}/htdocs/components
9748a8c3 639%{_appdir}/templates
847270fe 640
c9165420 641%dir %{_appdir}/upgrade
7a906e31
ER
642%{_appdir}/upgrade/flush_compiled_templates.php
643%{_appdir}/upgrade/*.sql
60c51158 644%attr(755,root,root) %{_appdir}/upgrade/change_usr_id.php
73de38a1 645%attr(755,root,root) %{_appdir}/upgrade/ldap_import.php
7a906e31
ER
646%attr(755,root,root) %{_appdir}/upgrade/ldap_update_users.php
647%attr(755,root,root) %{_appdir}/upgrade/scm_trac_import.php
847270fe
ER
648%{_appdir}/upgrade/patches
649
bcb86d50 650%{_appdir}/vendor
e8b7cc70 651%{_appdir}/src
ae3e48e6
ER
652%dir %{_appdir}/lib
653%{_appdir}/lib/eventum
ae3e48e6 654%exclude %{_appdir}/lib/eventum/class.monitor.php
00e339ff 655
5132bae6
ER
656%dir %{_libdir}
657
73de38a1 658%{systemdtmpfilesdir}/%{name}.conf
5132bae6
ER
659
660%dir /var/lib/%{name}
e570944f
ER
661%dir %attr(730,root,http) /var/run/%{name}
662%dir %attr(730,root,http) /var/cache/%{name}
ab983aaa 663
89522a33 664# saved mail copies
e570944f
ER
665%attr(770,root,http) %dir /var/lib/%{name}/routed_emails
666%attr(770,root,http) %dir /var/lib/%{name}/routed_drafts
667%attr(770,root,http) %dir /var/lib/%{name}/routed_notes
d2e501e8 668
ab983aaa
ER
669%files setup
670%defattr(644,root,root,755)
cfc3bce6 671%{_appdir}/htdocs/setup
0da8e1f2 672
d4a553ea 673%files doc
06ddb94b 674%defattr(644,root,root,755)
d4a553ea
ER
675%doc docs/*
676%{_examplesdir}/%{name}-%{version}
677
0da8e1f2
ER
678%files mail-queue
679%defattr(644,root,root,755)
7a906e31 680%attr(755,root,root) %{_appdir}/bin/process_mail_queue.php
f56655e1 681%attr(755,root,root) %{_appdir}/bin/truncate_mail_queue.php
ea084bcb
ER
682%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/cron.d/%{name}-mail-queue
683
684%files mail-download
685%defattr(644,root,root,755)
7a906e31 686%attr(755,root,root) %{_appdir}/bin/download_emails.php
ea084bcb 687%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/cron.d/%{name}-mail-download
5cb2e61d 688
cd719538
ER
689%files reminder
690%defattr(644,root,root,755)
7a906e31 691%attr(755,root,root) %{_appdir}/bin/check_reminders.php
cd719538
ER
692%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/cron.d/%{name}-reminder
693
694%files monitor
695%defattr(644,root,root,755)
ae3e48e6 696%{_appdir}/lib/eventum/class.monitor.php
7a906e31 697%attr(755,root,root) %{_appdir}/bin/monitor.php
cd719538
ER
698%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/cron.d/%{name}-monitor
699
a6d2ad69
ER
700%files router-postfix
701%defattr(644,root,root,755)
410d72c7 702%attr(755,root,root) %{_libdir}/router-postfix
a6d2ad69 703
cd719538
ER
704%files irc
705%defattr(644,root,root,755)
77b3db3b 706%attr(640,root,eventum) %config(noreplace) %verify(not md5 mtime size) %{_webappdir}/irc_config.php
01b84746 707%attr(640,root,eventum) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/eventum-irc
35bb76a6 708%attr(755,root,root) %{_appdir}/bin/irc-bot.php
cd719538
ER
709%attr(754,root,root) /etc/rc.d/init.d/%{name}-irc
710
abd490e4
ER
711%files cli
712%defattr(644,root,root,755)
ae3e48e6 713%doc cli/eventumrc
4a74b463 714%attr(755,root,root) %{_bindir}/%{name}
abd490e4 715
5cb2e61d
ER
716%files scm
717%defattr(644,root,root,755)
c28270d0 718%attr(751,root,root) %dir %{_sysconfdir}
ca6b8520 719%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/scm.php
ae3e48e6 720%attr(755,root,root) %{_sbindir}/eventum-cvs-hook
f2151907 721%attr(755,root,root) %{_sbindir}/eventum-git-hook
ae3e48e6 722%attr(755,root,root) %{_sbindir}/eventum-svn-hook
c28270d0 723%attr(755,root,root) %{_sbindir}/helpers.php
1cce3e61
ER
724
725%files sphinx
726%defattr(644,root,root,755)
727%{_webappdir}/sphinx.conf.php
7a906e31 728#%attr(750,root,http) %config(noreplace) %verify(not md5 mtime size) /etc/sphinx/%{name}.conf
1cce3e61 729%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/cron.d/%{name}-sphinx
This page took 0.371157 seconds and 4 git commands to generate.