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