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