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