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