]> git.pld-linux.org Git - packages/eventum.git/blame - eventum.spec
up to 3.0.2
[packages/eventum.git] / eventum.spec
CommitLineData
a659c698
JB
1#
2# Conditional build:
7bc9b641 3%bcond_with order # with experimental order patch
cddf3011 4
7665f424
ER
5%define rel 1
6#define subver 207
7#define githash 0ce2ec6
7a906e31 8%define php_min_version 5.3.3
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
7665f424
ER
13Version: 3.0.2
14Release: %{?subver:1.%{subver}.%{?githash:g%{githash}.}}%{rel}
a881bbb0 15License: GPL v2
6850abd9 16Group: Applications/WWW
7665f424
ER
17Source0: https://github.com/eventum/eventum/releases/download/v%{version}/%{name}-%{version}.tar.gz
18# Source0-md5: c6a5236ddfb1ae47cb09b08babbc37df
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
25Source6: %{name}-cvs.php
26Source7: %{name}-irc.php
27Source8: %{name}-irc.init
73f6a3e6 28Source9: %{name}-irc.sysconfig
1cce3e61 29Source10: sphinx.crontab
cfcdd0a9
ER
30Source13: %{name}-router-postfix.sh
31Source14: %{name}.logrotate
32Source15: %{name}-lighttpd.conf
d0dabd47
ER
33Source16: http://www.isocra.com/images/updown2.gif
34# Source16-md5: deb6eeb2552ba757d3a949ed10c4107d
cc613bc9 35Source17: %{name}.tmpfiles
7a906e31 36#Patch0: %{name}-lf.patch
4f627938 37Patch2: %{name}-order.patch
7a906e31
ER
38#Patch3: group-users.patch
39#Patch4: https://github.com/glensc/eventum/compare/cf_escape.patch
14ff3418 40# packaging patches that probably never go upstream
ac27ba92
ER
41Patch100: %{name}-paths.patch
42Patch101: %{name}-cvs-config.patch
4c823356 43Patch105: %{name}-bot-reconnect.patch
cfcdd0a9 44Patch107: %{name}-gettext.patch
a6016bab
ER
45# some tests
46Patch200: %{name}-fixed-nav.patch
3cf7d1aa 47URL: http://eventum.mysql.org/
447ff246 48BuildRequires: /usr/bin/php
4b01e826 49BuildRequires: gettext-devel
7a906e31 50BuildRequires: php(core) >= %{php_min_version}
b3857e8b 51BuildRequires: rpm-php-pearprov >= 4.0.2-98
5500a61e 52BuildRequires: rpmbuild(macros) >= 1.654
4068cb73 53BuildRequires: sed >= 4.0
5b165428 54Requires: %{name}-base = %{version}-%{release}
0b88d857 55Requires: fonts-TTF-RedHat-liberation
01d8dfff 56Requires: php(core) >= %{php_min_version}
2f331c68 57Requires: php(filter)
2f331c68
ER
58Requires: php(iconv)
59Requires: php(imap)
60Requires: php(json)
61Requires: php(mbstring)
8c038b49 62Requires: php(mysqli)
2f331c68
ER
63Requires: php(pcre)
64Requires: php(session)
5dbd4bf5
ER
65Requires: php-Smarty >= 3.1
66Requires: php-Smarty-plugin-gettext
71b01fde 67Requires: php-pear-DB
71b01fde 68Requires: php-pear-Mail
723da18a 69Requires: php-pear-Mail_Mime
fb0b2f83 70Requires: php-pear-Mail_mimeDecode
71b01fde
ER
71Requires: php-pear-Math_Stats
72Requires: php-pear-Net_DIME
71b01fde 73Requires: php-pear-Net_SMTP
71b01fde
ER
74Requires: php-pear-Net_Socket
75Requires: php-pear-Net_URL
76Requires: php-pear-Net_UserAgent_Detect
3223fb64 77Requires: php-pear-PEAR-core
71b01fde
ER
78Requires: php-pear-Text_Diff
79Requires: php-pear-XML_RPC
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
73de38a1 87Suggests: php-pear-Net_LDAP2
bd70ea88 88Conflicts: logrotate < 3.8.0
35fa3cf8 89BuildArch: noarch
bb01d732
ER
90BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
91
4b01e826 92%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
93
94# exclude optional php dependencies
899100ff 95%define _noautophp php-gnupg php-hash php-pecl-http php-tk
03410d49 96
5500a61e 97%define _noautoreq %{_noautophp}
3223fb64 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
111and bugs. Eventum is used by the MySQL AB Technical Support team, and
112has allowed us to dramatically improve our response times.
113
d8cfa9f0
JR
114%description -l pl.UTF-8
115Eventum to przyjazny dla użytkownika system śledzenia spraw, który
116może być używany przez dział obsługi do śledzenia przychodzących żądań
117obsługi technicznej albo przez zespół tworzący oprogramowanie do
118szybkiej organizacji zadań i błędów. Eventum jest używany przez zespół
119Technical Support MySQL AB i umożliwił im znacząco poprawić czasy
4068cb73
JB
120reakcji.
121
d2e501e8
ER
122%package base
123Summary: Eventum base package
9f49cf47 124Summary(pl.UTF-8): Podstawowy pakiet Eventum
d2e501e8 125Group: Applications/WWW
3223fb64
ER
126Requires(postun): /usr/sbin/groupdel
127Requires(postun): /usr/sbin/userdel
5bbd68c9
ER
128Requires(pre): /bin/id
129Requires(pre): /usr/bin/getgid
5bbd68c9 130Requires(pre): /usr/sbin/groupadd
3223fb64 131Requires(pre): /usr/sbin/useradd
9f768793 132Provides: group(eventum)
d080edb6 133Provides: user(eventum)
d2e501e8
ER
134
135%description base
136This package contains base directory structure for Eventum.
137
d8cfa9f0
JR
138%description base -l pl.UTF-8
139Ten pakiet zawiera podstawową strukturę katalogów dla Eventum.
1bb5e749 140
ab983aaa 141%package setup
4068cb73 142Summary: Eventum setup package
9f49cf47 143Summary(pl.UTF-8): Pakiet do wstępnej konfiguracji Eventum
ab983aaa 144Group: Applications/WWW
5b165428 145Requires: %{name} = %{version}-%{release}
ab983aaa
ER
146
147%description setup
148Install this package to configure initial Eventum installation. You
149should uninstall this package when you're done, as it considered
150insecure to keep the setup files in place.
151
d8cfa9f0
JR
152%description setup -l pl.UTF-8
153Ten pakiet należy zainstalować w celu wstępnej konfiguracji Eventum po
154pierwszej instalacji. Potem należy go odinstalować, jako że
155pozostawienie plików instalacyjnych mogłoby być niebezpieczne.
4068cb73 156
0da8e1f2 157%package mail-queue
30689148 158Summary: Eventum mail queue process
9f49cf47 159Summary(pl.UTF-8): Przetwarzanie kolejki poczty Eventum
0da8e1f2 160Group: Applications/WWW
5b165428 161Requires: %{name} = %{version}-%{release}
0da8e1f2
ER
162Requires: crondaemon
163
164%description mail-queue
165Beginning with the first release of Eventum, emails are not directly
166sent out from the various scripts, but rather added to a mail queue
167table that is processed by a cron job. If an email cannot be sent, it
168will be marked as such in the mail queue log, and the cron job script
169will re-try to send it again the next time it runs.
170
171This package contains the cron job.
172
d8cfa9f0
JR
173%description mail-queue -l pl.UTF-8
174Od pierwszego wydania Eventum poczta nie jest wysyłana bezpośrednio z
175różnych skryptów, lecz dodawana do kolejki przetwarzanej z crona.
176Jeśli poczta nie może być wysłana, będzie odpowiednio oznaczona w logu
177kolejki poczty, a skrypt z crona będzie próbował wysłać ją ponownie
178następnym razem.
0181746f 179
30689148 180Ten pakiet zawiera zadanie dla crona.
181
ea084bcb 182%package mail-download
30689148 183Summary: Eventum email download
9f49cf47 184Summary(pl.UTF-8): Ściąganie poczty Eventum
ea084bcb 185Group: Applications/WWW
5b165428 186Requires: %{name} = %{version}-%{release}
ea084bcb
ER
187Requires: crondaemon
188
189%description mail-download
190In order for Eventum's email integration feature to work, you need to
191setup a cron job to run the script every so often.
192
193This package contains the cron job.
194
d8cfa9f0
JR
195%description mail-download -l pl.UTF-8
196Aby integracja poczty elektronicznej w Eventum działała, trzeba
197ustawić zadanie crona, aby uruchamiał odpowiedni skrypt wystarczająco
198często.
0181746f
JB
199
200Ten pakiet zawiera zadanie dla crona.
201
cd719538
ER
202%package reminder
203Summary: Eventum Reminder System
9f49cf47 204Summary(pl.UTF-8): System przypominania dla Eventum
cd719538 205Group: Applications/WWW
5b165428 206Requires: %{name} = %{version}-%{release}
cd719538
ER
207Requires: crondaemon
208
209%description reminder
210The reminder system was designed with the objective as serving as a
211safe net for issues that need attention. Depending on what
212configuration you create, you may have several reminders (or alerts)
213be sent out whenever an issue needs attention, for whatever parameter
214you may deem necessary.
215
216This package contains the cron job.
217
d8cfa9f0
JR
218%description reminder -l pl.UTF-8
219System przypominania został zaprojektowany tak, aby służył jako
220bezpieczna sieć dla spraw wymagających uwagi. W zależności od
221konfiguracji można ustawić różne przypominajki (lub alarmy) wysyłane
222przy każdej sprawie wymagającej uwagi lub przy parametrze, który można
223uważać za potrzebny.
6341f096
JB
224
225Ten pakiet zawiera zadanie dla crona.
226
cd719538
ER
227%package monitor
228Summary: Eventum Heartbeat Monitor
9f49cf47 229Summary(pl.UTF-8): Monitor życia dla Eventum
cd719538 230Group: Applications/WWW
5b165428 231Requires: %{name} = %{version}-%{release}
cd719538 232Requires: crondaemon
2f331c68 233Requires: php(posix)
cd719538
ER
234
235%description monitor
236The heartbeat monitor is a feature designed for the administrator that
237wants to be alerted whenever a common problem in Eventum is detected,
238like the database server not being available anymore, or maybe when
239the recommended permissions for certain configuration files are
240changed.
241
242Please note that before running the heartbeat monitor, you may need to
243customize some of the checks to be appropriate for your own system,
244particularly the permission and file checks on
245Monitor::checkConfiguration().
246
247This package contains the cron job.
248
d8cfa9f0
JR
249%description monitor -l pl.UTF-8
250Monitor życia to funkcjonalność zaprojektowana dla administratora
251chcącego być alarmowanym przy każdym wykryciu popularnego problemu z
252Eventum, jak nie działanie serwera bazy danych albo zmiana uprawnień
253do plików konfiguracyjnych.
6341f096 254
d8cfa9f0
JR
255Należy zauważyć, że przed uruchomieniem tego monitora może być
256konieczne dostosowanie niektórych testów do systemu, w szczególności
257testów uprawnień i plików w Monitor::checkConfiguration().
6341f096
JB
258
259Ten pakiet zawiera zadanie dla crona.
260
5b165428
ER
261%package route-drafts
262Summary: Eventum Draft Routing
9f49cf47 263Summary(pl.UTF-8): Przekazywanie szkiców dla Eventum
5b165428
ER
264Group: Applications/WWW
265Requires: %{name} = %{version}-%{release}
5b165428
ER
266Requires: eventum(router)
267
268%description route-drafts
71f56750 269The draft routing feature is used to automatically associate a thread
098cbb72
ER
270of drafts into an Eventum issue. By setting up Postfix to deliver
271emails sent to a specific address (usually draft-<number>@<domain>) to
272the above script, users are able to send drafts written in their mail
273client to be stored in Eventum. These drafts will NOT broadcasted to
274the notification list.
5b165428 275
d8cfa9f0
JR
276%description route-drafts -l pl.UTF-8
277Przekazywanie szkiców służy do automatycznego wiązania wątku szkiców z
098cbb72
ER
278problemem w Eventum. Ustawiając Postfiksa, aby dostarczał pocztę
279wysłaną na podany adres (zwykle draft-<liczba>@<domena>) do tego
280skryptu umożliwia się użytkownikom wysyłanie szkiców napisanych w ich
281kliencie pocztowym do zapisania w Eventum. Szkice te NIE będą wysyłane
282na listę powiadomień.
5410173f 283
cd719538
ER
284%package route-emails
285Summary: Eventum Email Routing
9f49cf47 286Summary(pl.UTF-8): Przekazywanie poczty dla Eventum
cd719538 287Group: Applications/WWW
5b165428 288Requires: %{name} = %{version}-%{release}
8bc4bcd1 289Requires: eventum(router)
cd719538
ER
290
291%description route-emails
292The email routing feature is used to automatically associate a thread
098cbb72
ER
293of emails into an Eventum issue. By setting up Postfix to deliver
294emails sent to a specific address (usually issue-<number>@<domain>) to
295the above script, users are able to use their email clients to reply
296to emails coming from Eventum, and those replies will be automatically
297associated with the issue and broadcasted to the entire notification
298list.
cd719538 299
d8cfa9f0
JR
300%description route-emails -l pl.UTF-8
301Funkcjonalność przekazywania poczty służy do automatycznego wiązania
098cbb72
ER
302wątku listów ze sprawą w Eventum. Po ustawieniu czy nawet Postfiksa,
303aby dostarczał listy wysyłane na pewien adres (zwykle
d8cfa9f0
JR
304issue-<numer>@<domena>) na powyższy skrypt, użytkownicy będą mogli
305używać klientów pocztowych do odpowiadania na listy przychodzące z
306Eventum, a odpowiedzi te będą automatycznie wiązane ze sprawą i
307rozprowadzane do całej listy ogłoszeniowej.
6341f096 308
cd719538
ER
309%package route-notes
310Summary: Eventum Note Routing
9f49cf47 311Summary(pl.UTF-8): Przekazywanie notatek dla Eventum
cd719538 312Group: Applications/WWW
5b165428 313Requires: %{name} = %{version}-%{release}
8bc4bcd1 314Requires: eventum(router)
cd719538
ER
315
316%description route-notes
317The note routing feature is used to automatically associate a thread
098cbb72
ER
318of notes into an Eventum issue. By setting up Postfix to deliver
319emails sent to a specific address (usually note-<number>@<domain>) to
320the above script, users are able to use their email clients to reply
321to internal notes coming from Eventum, and those replies will be
322automatically associated with the issue and broadcasted to the
323notification list staff members.
cd719538 324
d8cfa9f0
JR
325%description route-notes -l pl.UTF-8
326Funkcjonalność przekazywania notatek służy do automatycznego wiązania
098cbb72
ER
327wątku notatek ze sprawą w Eventum. Po ustawieniu Postfiksa, aby
328dostarczał listy wysyłane na pewien adres (zwykle
d8cfa9f0
JR
329note-<numer>@<domena>) na powyższy skrypt, użytkownicy będą mogli
330używać klientów pocztowych do odpowiadania na wewnętrzne notatki
331pochodzące od Eventu, a odpowiedzi te będą automatycznie wiązane ze
332sprawą i rozprowadzane do członków personelu listy ogłoszeniowej.
6341f096 333
a6d2ad69
ER
334%package router-postfix
335Summary: Eventum Mail Routing - Postfix
9f49cf47 336Summary(pl.UTF-8): Przekazywanie poczty Eventum - Postfix
a6d2ad69 337Group: Applications/Mail
5b165428 338Requires: %{name} = %{version}-%{release}
a6d2ad69 339Requires: postfix
8bc4bcd1
ER
340Provides: eventum(router)
341Obsoletes: eventum(router)
a6d2ad69
ER
342
343%description router-postfix
344This package provides way of routing notes and emails back to Eventum
345via Postfix.
346
e1bb3563
ER
347The Postfix configuration instructions you can find from
348<http://eventum.mysql.org/wiki/index.php/Setting_up_email_routing_with_postfix>.
349
d8cfa9f0
JR
350%description router-postfix -l pl.UTF-8
351Ten pakiet udostępnia metodę przekazywania notatek i listów do Eventum
995fa554
JB
352przez Postfiksa.
353
d8cfa9f0 354Opis konfiguracji Postfiksa można znaleźć pod adresem
a659c698
JB
355<http://eventum.mysql.org/wiki/index.php/Setting_up_email_routing_with_postfix>.
356
cd719538
ER
357%package irc
358Summary: Eventum IRC Notification Bot
9f49cf47 359Summary(pl.UTF-8): IRC-owy bot powiadamiający dla Eventum
cd719538 360Group: Applications/WWW
b79fc4aa 361Requires(post,preun): /sbin/chkconfig
5b165428 362Requires: %{name} = %{version}-%{release}
2f331c68 363Requires: php(sockets)
71f56750 364Requires: php-pear-Net_SmartIRC
e1c0f343 365Requires: rc-scripts >= 0.4.0.18
cd719538
ER
366
367%description irc
368The IRC notification bot is a nice feature for remote teams that want
369to handle issues and want to have a quick and easy way to get simple
370notifications. Right now the bot notifies of the following actions:
371- New Issues
372- Blocked emails
373- Issues that got their assignment list changed
374
375NOTE: You will need to manually edit the bot.php script to set your
376appropriate preferences, like IRC server and channel that the bot
377should join.
378
d8cfa9f0
JR
379%description irc -l pl.UTF-8
380IRC-owy bot powiadamiający to miła funkcjonalność dla zdalnych
381zespołów chcących obsługiwać sprawy i mieć szybki i łatwy sposób na
382uzyskiwanie prostych powiadomień. Aktualnie bot powiadamia o
383następujących zdarzeniach:
6341f096
JB
384- nowych sprawach
385- zablokowanych listach
d8cfa9f0 386- sprawach, dla których zmieniła się lista powiązań
6341f096 387
d8cfa9f0
JR
388UWAGA: w celu wprowadzenia własnych ustawień, takich jak serwer IRC i
389kanał używany przez bota, trzeba ręcznie zmodyfikować skrypt bot.php .
6341f096 390
abd490e4
ER
391%package cli
392Summary: Eventum command-line interface
9f49cf47 393Summary(pl.UTF-8): Interfejs linii poleceń dla Eventum
abd490e4 394Group: Applications/WWW
5b165428 395Requires: %{name}-base = %{version}-%{release}
01d8dfff 396Requires: php(core) >= %{php_min_version}
4a74b463 397Requires: php(phar)
71b01fde 398Requires: php-pear-XML_RPC
abd490e4
ER
399
400%description cli
401The Eventum command-line interface allows you to access most of the
402features of the web interface straight from your command shell.
abd490e4 403
d8cfa9f0
JR
404%description cli -l pl.UTF-8
405Interfejs linii poleceń Eventum pozwala na dostęp do większości
406funkcji interfejsu WWW prosto z linii poleceń powłoki.
958cd5a0 407
5cb2e61d 408%package scm
30689148 409Summary: Eventum SCM integration
9f49cf47 410Summary(pl.UTF-8): Integracja SCM dla Eventum
5cb2e61d 411Group: Applications/WWW
01d8dfff 412Requires: php(core) >= %{php_min_version}
d710a6df 413Requires: php(json)
2f331c68 414Requires: php(pcre)
f2151907
ER
415Requires: php(spl)
416Suggests: cvs
417Suggests: git-core
c28270d0 418Suggests: php(openssl)
f2151907 419Suggests: subversion
5cb2e61d
ER
420
421%description scm
422This feature allows your software development teams to integrate your
423Source Control Management system with your Issue Tracking System.
424
425The integration is implemented in such a way that it will be forward
426compatible with pretty much any SCM system, such as CVS.
427
0181746f 428For installation see
a392a259 429</eventum/help.php?topic=scm_integration_installation>.
0181746f 430
d8cfa9f0
JR
431%description scm -l pl.UTF-8
432Ten pakiet pozwala zespołom programistów na integrację systemu
433zarządzania źródłami (SCM - Source Control Management) z systemem
434śledzenia spraw.
0181746f 435
d8cfa9f0
JR
436Integracja jest zaimplementowana tak, aby być kompatybilna w przód z
437prawie każdym systemem SCM, jak np. CVS.
0181746f 438
d8cfa9f0 439Szczegóły na temat instalacji można przeczytać pod
a392a259 440</eventum/help.php?topic=scm_integration_installation>.
5cb2e61d 441
1cce3e61
ER
442%package sphinx
443Summary: Eventum Sphinx Search
444Group: Applications/WWW
445Requires: %{name} = %{version}-%{release}
446Requires: crondaemon
447Requires: sphinx
448
449%description sphinx
450Sphinx search integration for Eventum.
451
452This package contains the cron job.
453
bb01d732 454%prep
4b01e826 455%setup -q -n %{name}-%{version}%{?githash:-%{subver}-g%{githash}}
5b165428 456
fa6167ba
ER
457mv docs/examples .
458
f1269a43
ER
459# GPL v2
460rm docs/COPYING
461
9487d524 462# bug fixes / features
7a906e31 463#%patch0 -p1
4f627938 464%{?with_order:%patch2 -p1}
7a906e31
ER
465#%patch3 -p0
466#%patch4 -p1
57e65e62 467
7a906e31 468%{?with_order:cp -p %{SOURCE16} htdocs/images}
422dcc8e 469
a6016bab 470#%patch200 -p1
ac27ba92 471
1cce3e61
ER
472# produce default sphinx config
473# must be run before paths.patch
7a906e31 474%if 0
1cce3e61
ER
475cat <<'EOF' > config/config.php
476<?php
477define('APP_SQL_DBTYPE', 'mysql');
478define('APP_SQL_DBHOST', 'localhost:/var/lib/mysql/mysql.sock');
479define('APP_SQL_DBPORT', 3306);
480define('APP_SQL_DBNAME', 'eventum');
481define('APP_SQL_DBUSER', 'mysql');
482define('APP_SQL_DBPASS', '');
483define('APP_TABLE_PREFIX', 'eventum_');
484EOF
485php config/sphinx.conf.php > config/sphinx.conf
486rm -f config/config.php
7a906e31 487%endif
1cce3e61 488
ac27ba92
ER
489# packaging
490%patch100 -p1
c28270d0 491%patch101 -p1
ac27ba92 492%patch105 -p1
ac27ba92 493%patch107 -p1
0b3b58dd 494
25123ce7 495%{__sed} -i -e "
25123ce7 496s;define('CONFIG_PATH'.*');define('CONFIG_PATH', '%{_webappdir}');
ae3e48e6 497" upgrade/{*/,}*.php
c3fd3767 498
5b165428 499# remove backups from patching as we use globs to package files to buildroot
73c437a6 500find '(' -name '*~' -o -name '*.orig' ')' | xargs -r rm -v
085e39c0 501
465c3ab7 502%build
ae3e48e6 503%{__make} -C localization
465c3ab7 504
bb01d732
ER
505%install
506rm -rf $RPM_BUILD_ROOT
cfc3bce6 507install -d \
6e3be5a3 508 $RPM_BUILD_ROOT{%{_webappdir}/{custom_field,templates,workflow},%{_sysconfdir},%{_bindir},%{_sbindir},%{_libdir}} \
2b135b34 509 $RPM_BUILD_ROOT/etc/{rc.d/init.d,cron.d,logrotate.d,sysconfig} \
c1e74aa1 510 $RPM_BUILD_ROOT/var/{run,cache,lib}/%{name} \
685fc383 511 $RPM_BUILD_ROOT/var/log/{archive/,}%{name} \
89522a33 512 $RPM_BUILD_ROOT/var/lib/%{name}/routed_{emails,drafts,notes} \
761ae7dd 513 $RPM_BUILD_ROOT%{_appdir}/{include,htdocs/misc,upgrade} \
73de38a1 514 $RPM_BUILD_ROOT%{systemdtmpfilesdir}
cfc3bce6 515
4b01e826 516%{__make} install-eventum install-cli install-irc install-scm install-localization \
ae3e48e6 517 sysconfdir=%{_webappdir} \
7a906e31 518 localedir=%{_localedir} \
ae3e48e6 519 DESTDIR=$RPM_BUILD_ROOT
da8d6134 520
29e8ea7c
ER
521# unsupported locale
522%{__rm} -r $RPM_BUILD_ROOT%{_localedir}/ht
523
fa6167ba
ER
524install -d $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
525cp -a examples/* $RPM_BUILD_ROOT%{_examplesdir}/%{name}-%{version}
526
ae3e48e6 527%{?with_order:cp -a htdocs/ajax $RPM_BUILD_ROOT%{_appdir}/htdocs}
9cdc5027 528
f399f1c0 529touch $RPM_BUILD_ROOT%{_webappdir}/htpasswd
1b5aae0f 530cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_webappdir}/apache.conf
87ca28ca 531cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_webappdir}/httpd.conf
1b5aae0f 532cp -p %{SOURCE15} $RPM_BUILD_ROOT%{_webappdir}/lighttpd.conf
1cce3e61
ER
533
534install -d $RPM_BUILD_ROOT/etc/sphinx
7a906e31 535#cp -p config/sphinx.conf $RPM_BUILD_ROOT/etc/sphinx/%{name}.conf
858c6f2a 536cp -p config/sphinx.conf.php $RPM_BUILD_ROOT%{_webappdir}
ae3e48e6 537
1b5aae0f
ER
538cp -p %{SOURCE2} $RPM_BUILD_ROOT/etc/cron.d/%{name}-mail-queue
539cp -p %{SOURCE3} $RPM_BUILD_ROOT/etc/cron.d/%{name}-mail-download
540cp -p %{SOURCE4} $RPM_BUILD_ROOT/etc/cron.d/%{name}-reminder
541cp -p %{SOURCE5} $RPM_BUILD_ROOT/etc/cron.d/%{name}-monitor
1cce3e61 542cp -p %{SOURCE10} $RPM_BUILD_ROOT/etc/cron.d/%{name}-sphinx
ae3e48e6 543
1b5aae0f 544cp -p %{SOURCE7} $RPM_BUILD_ROOT%{_webappdir}/irc_config.php
ae3e48e6 545
2b135b34 546install -p %{SOURCE8} $RPM_BUILD_ROOT/etc/rc.d/init.d/eventum-irc
1b5aae0f 547cp -p %{SOURCE9} $RPM_BUILD_ROOT/etc/sysconfig/eventum-irc
31dabce6 548
1b5aae0f 549cp -p %{SOURCE14} $RPM_BUILD_ROOT/etc/logrotate.d/%{name}
2b135b34 550
410d72c7 551# postfix router
858c6f2a 552install -p %{SOURCE13} $RPM_BUILD_ROOT%{_libdir}/router-postfix
a6d2ad69 553
92bc2f5d 554cp -p %{SOURCE17} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/%{name}.conf
cc613bc9 555
600d96a0 556%find_lang %{name}
c1e74aa1 557
ae3e48e6 558# scm
7a906e31 559cp -p %{SOURCE6} $RPM_BUILD_ROOT%{_sysconfdir}/scm.php
ae3e48e6 560
bb01d732
ER
561%clean
562rm -rf $RPM_BUILD_ROOT
563
01b84746
ER
564%pre
565%addusertogroup http %{name}
566
82121306 567%post
08196fe2
ER
568# greate empty ghost files
569for a in cli.log errors.log irc_bot.log login_attempts.log; do
570 if [ ! -f /var/log/%{name}/$a ]; then
2b135b34 571 install -m 0620 -o root -g eventum /dev/null /var/log/%{name}/$a
08196fe2
ER
572 fi
573done
574
00358bba
ER
575# run database update if configured
576test -s %{_webappdir}/config.php && \
847270fe
ER
577%{_appdir}/upgrade/update-database.php || :
578
da8d6134
ER
579# nuke Smarty templates cache after upgrade
580rm -f /var/cache/eventum/*.php
581
4a751c1a
ER
582# Restart webserver on upgrade to get .mo translations reloaded.
583# actually php engines "php-fcgi" and "php-fpm" needed only, apache is restarted anyway via webapp trigger.
114241d7
ER
584%php_webserver_restart
585
82121306
ER
586%preun
587if [ "$1" = "0" ]; then
dfe0f6d6
ER
588 # nuke cache
589 rm -f /var/cache/eventum/*.php 2>/dev/null || :
590fi
cfc3bce6 591
01b84746 592%pre base
1d760108
ER
593%groupadd -P %{name}-base -g 146 %{name}
594%useradd -P %{name}-base -u 146 -d /var/lib/%{name} -g %{name} -c "Eventum User" %{name}
01b84746
ER
595
596%postun base
597if [ "$1" = "0" ]; then
a6d2ad69 598 %userremove %{name}
1f52d1fe 599 %groupremove %{name}
a6d2ad69
ER
600fi
601
94bd779f 602%post setup
8a37ad9d 603chmod 660 %{_webappdir}/{config,private_key}.php
253ca53d 604chown root:http %{_webappdir}/{config,private_key}.php
94bd779f
ER
605
606%postun setup
b4fe195b 607if [ "$1" = "0" ] && [ -f %{_webappdir}/config.php ]; then
8a37ad9d 608 chmod 640 %{_webappdir}/{config,private_key}.php
253ca53d 609 chown root:http %{_webappdir}/{config,private_key}.php
94bd779f
ER
610fi
611
e1c0f343
ER
612%post irc
613/sbin/chkconfig --add eventum-irc
99bbe3cb 614%service eventum-irc restart "Eventum IRC Bot"
e1c0f343 615
add0e245
ER
616%preun irc
617if [ "$1" = 0 ]; then
618 %service eventum-irc stop
619 /sbin/chkconfig --del eventum-irc
620fi
621
09f58a75 622%triggerin -- apache1 < 1.3.37-3, apache1-base
bdf85dc8 623%webapp_register apache %{_webapp}
1d760108 624
09f58a75 625%triggerun -- apache1 < 1.3.37-3, apache1-base
bdf85dc8 626%webapp_unregister apache %{_webapp}
1d760108 627
87ca28ca 628%triggerin -- apache < 2.2.0, apache-base
bdf85dc8 629%webapp_register httpd %{_webapp}
1d760108 630
87ca28ca 631%triggerun -- apache < 2.2.0, apache-base
bdf85dc8 632%webapp_unregister httpd %{_webapp}
1d760108 633
f399f1c0
ER
634%triggerin -- lighttpd
635%webapp_register lighttpd %{_webapp}
636
637%triggerun -- lighttpd
638%webapp_unregister lighttpd %{_webapp}
639
24cfc386
ER
640%triggerpostun -- %{name} < 3.0.0-0.2
641for f in /etc/cron.d/eventum-*; do
642 # crontabs moved to bin
0ffd10e7 643 %{__sed} -i -e '
24cfc386
ER
644 s,/usr/share/eventum/crons/process_mail_queue.php,%{_appdir}/bin/process_mail_queue.php,
645 s,/usr/share/eventum/crons/download_emails.php,%{_appdir}/bin/download_emails.php,
646 s,/usr/share/eventum/crons/check_reminders.php,%{_appdir}/bin/check_reminders.php,
647 s,/usr/share/eventum/crons/monitor.php,%{_appdir}/bin/monitor.php,
648 ' $f
0ffd10e7 649done
f1269a43 650
600d96a0 651%files -f %{name}.lang
bb01d732 652%defattr(644,root,root,755)
7a906e31 653%doc docs/*
8a37ad9d 654%attr(751,root,root) %dir %{_webappdir}
6e3be5a3
ER
655%attr(751,root,root) %dir %{_webappdir}/custom_field
656%attr(751,root,root) %dir %{_webappdir}/templates
657%attr(751,root,root) %dir %{_webappdir}/workflow
8a37ad9d
ER
658%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_webappdir}/apache.conf
659%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_webappdir}/httpd.conf
f399f1c0 660%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_webappdir}/lighttpd.conf
e570944f
ER
661%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_webappdir}/config.php
662%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_webappdir}/private_key.php
663%attr(660,root,http) %config(noreplace) %verify(not md5 mtime size) %{_webappdir}/setup.php
f399f1c0 664%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_webappdir}/htpasswd
d2e501e8 665
e570944f
ER
666%dir %attr(731,root,http) /var/log/%{name}
667%attr(620,root,http) %ghost /var/log/%{name}/*
3c6aa7a9 668%dir %attr(750,root,root) /var/log/archive/%{name}
8fd047ac 669%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/%{name}
35f9d6a3 670
7a906e31 671%dir %{_appdir}/bin
7a906e31
ER
672%attr(755,root,root) %{_appdir}/bin/process_all_emails.php
673
4b01e826 674%{_appdir}/autoload.php
ae3e48e6 675%{_appdir}/init.php
cfc3bce6
ER
676%dir %{_appdir}/htdocs
677%{_appdir}/htdocs/*.php
da8d6134 678%{_appdir}/htdocs/*.ico
7bc9b641 679%{_appdir}/htdocs/ajax
cfc3bce6
ER
680%{_appdir}/htdocs/css
681%{_appdir}/htdocs/customer
682%{_appdir}/htdocs/images
683%{_appdir}/htdocs/js
684%{_appdir}/htdocs/manage
7bc9b641 685%{_appdir}/htdocs/misc
cfc3bce6
ER
686%{_appdir}/htdocs/reports
687%{_appdir}/htdocs/rpc
7a906e31 688%{_appdir}/htdocs/components
9748a8c3 689%{_appdir}/templates
847270fe 690
c9165420 691%dir %{_appdir}/upgrade
7a906e31
ER
692%{_appdir}/upgrade/flush_compiled_templates.php
693%{_appdir}/upgrade/*.sql
847270fe 694%attr(755,root,root) %{_appdir}/upgrade/update-database.php
73de38a1 695%attr(755,root,root) %{_appdir}/upgrade/ldap_import.php
7a906e31
ER
696%attr(755,root,root) %{_appdir}/upgrade/ldap_update_users.php
697%attr(755,root,root) %{_appdir}/upgrade/scm_trac_import.php
847270fe
ER
698%{_appdir}/upgrade/patches
699
ae3e48e6
ER
700%dir %{_appdir}/lib
701%{_appdir}/lib/eventum
ae3e48e6 702%exclude %{_appdir}/lib/eventum/class.monitor.php
00e339ff 703
fa6167ba
ER
704%{_examplesdir}/%{name}-%{version}
705
73de38a1 706%{systemdtmpfilesdir}/%{name}.conf
e570944f
ER
707%dir %attr(730,root,http) /var/run/%{name}
708%dir %attr(730,root,http) /var/cache/%{name}
ab983aaa 709
d2e501e8
ER
710%files base
711%defattr(644,root,root,755)
712%attr(751,root,root) %dir %{_sysconfdir}
a392a259 713%dir %{_libdir}
cfc3bce6 714%dir %{_appdir}
098cbb72 715%dir /var/lib/%{name}
89522a33 716# saved mail copies
e570944f
ER
717%attr(770,root,http) %dir /var/lib/%{name}/routed_emails
718%attr(770,root,http) %dir /var/lib/%{name}/routed_drafts
719%attr(770,root,http) %dir /var/lib/%{name}/routed_notes
d2e501e8 720
ab983aaa
ER
721%files setup
722%defattr(644,root,root,755)
cfc3bce6 723%{_appdir}/htdocs/setup
0da8e1f2
ER
724
725%files mail-queue
726%defattr(644,root,root,755)
7a906e31 727%attr(755,root,root) %{_appdir}/bin/process_mail_queue.php
ea084bcb
ER
728%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/cron.d/%{name}-mail-queue
729
730%files mail-download
731%defattr(644,root,root,755)
7a906e31 732%attr(755,root,root) %{_appdir}/bin/download_emails.php
ea084bcb 733%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/cron.d/%{name}-mail-download
5cb2e61d 734
cd719538
ER
735%files reminder
736%defattr(644,root,root,755)
7a906e31 737%attr(755,root,root) %{_appdir}/bin/check_reminders.php
cd719538
ER
738%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/cron.d/%{name}-reminder
739
740%files monitor
741%defattr(644,root,root,755)
ae3e48e6 742%{_appdir}/lib/eventum/class.monitor.php
7a906e31 743%attr(755,root,root) %{_appdir}/bin/monitor.php
cd719538
ER
744%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/cron.d/%{name}-monitor
745
5b165428
ER
746%files route-drafts
747%defattr(644,root,root,755)
7a906e31 748%attr(755,root,root) %{_appdir}/bin/route_drafts.php
5b165428 749
cd719538
ER
750%files route-emails
751%defattr(644,root,root,755)
7a906e31 752%attr(755,root,root) %{_appdir}/bin/route_emails.php
cd719538
ER
753
754%files route-notes
755%defattr(644,root,root,755)
7a906e31 756%attr(755,root,root) %{_appdir}/bin/route_notes.php
cd719538 757
a6d2ad69
ER
758%files router-postfix
759%defattr(644,root,root,755)
410d72c7 760%attr(755,root,root) %{_libdir}/router-postfix
a6d2ad69 761
cd719538
ER
762%files irc
763%defattr(644,root,root,755)
77b3db3b 764%attr(640,root,eventum) %config(noreplace) %verify(not md5 mtime size) %{_webappdir}/irc_config.php
01b84746 765%attr(640,root,eventum) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/eventum-irc
ae3e48e6 766%attr(755,root,root) %{_sbindir}/%{name}-irc-bot
cd719538
ER
767%attr(754,root,root) /etc/rc.d/init.d/%{name}-irc
768
abd490e4
ER
769%files cli
770%defattr(644,root,root,755)
ae3e48e6 771%doc cli/eventumrc
4a74b463 772%attr(755,root,root) %{_bindir}/%{name}
abd490e4 773
5cb2e61d
ER
774%files scm
775%defattr(644,root,root,755)
c28270d0 776%attr(751,root,root) %dir %{_sysconfdir}
ca6b8520 777%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/scm.php
ae3e48e6 778%attr(755,root,root) %{_sbindir}/eventum-cvs-hook
f2151907 779%attr(755,root,root) %{_sbindir}/eventum-git-hook
ae3e48e6 780%attr(755,root,root) %{_sbindir}/eventum-svn-hook
c28270d0 781%attr(755,root,root) %{_sbindir}/helpers.php
1cce3e61
ER
782
783%files sphinx
784%defattr(644,root,root,755)
785%{_webappdir}/sphinx.conf.php
7a906e31 786#%attr(750,root,http) %config(noreplace) %verify(not md5 mtime size) /etc/sphinx/%{name}.conf
1cce3e61 787%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/cron.d/%{name}-sphinx
This page took 0.257756 seconds and 4 git commands to generate.