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