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