]> git.pld-linux.org Git - packages/eventum.git/blame - eventum.spec
install git hook
[packages/eventum.git] / eventum.spec
CommitLineData
bb01d732
ER
1# TODO
2# - discard bundled packages (from INSTALL):
3# - JpGraph 1.5.3 (last GPL version)
a659c698
JB
4#
5# Conditional build:
7bc9b641 6%bcond_with order # with experimental order patch
cddf3011 7
dc8c226c 8%define subver pre1
f2151907 9%define rel 0.14
7a906e31 10%define php_min_version 5.3.3
b3857e8b 11%include /usr/lib/rpm/macros.php
c96aabf5 12Summary: Eventum Issue / Bug tracking system
9f49cf47 13Summary(pl.UTF-8): Eventum - system śledzenia spraw/błędów
bb01d732 14Name: eventum
7a906e31 15Version: 3.0.0
dc8c226c 16Release: 0.%{subver}.%{rel}
a881bbb0 17License: GPL v2
6850abd9 18Group: Applications/WWW
cceed9a6 19Source0: https://github.com/eventum/eventum/releases/download/v%{version}-%{subver}/%{name}-%{version}-%{subver}.tar.gz
dc8c226c 20# Source0-md5: 786930171e278f03baa7b174f52e43d0
82121306 21Source1: %{name}-apache.conf
cd719538
ER
22Source2: %{name}-mail-queue.cron
23Source3: %{name}-mail-download.cron
24Source4: %{name}-reminder.cron
25Source5: %{name}-monitor.cron
26Source6: %{name}-cvs.php
27Source7: %{name}-irc.php
28Source8: %{name}-irc.init
73f6a3e6 29Source9: %{name}-irc.sysconfig
1cce3e61 30Source10: sphinx.crontab
cfcdd0a9
ER
31Source13: %{name}-router-postfix.sh
32Source14: %{name}.logrotate
33Source15: %{name}-lighttpd.conf
d0dabd47
ER
34Source16: http://www.isocra.com/images/updown2.gif
35# Source16-md5: deb6eeb2552ba757d3a949ed10c4107d
cc613bc9 36Source17: %{name}.tmpfiles
7a906e31 37#Patch0: %{name}-lf.patch
4f627938 38Patch2: %{name}-order.patch
7a906e31
ER
39#Patch3: group-users.patch
40#Patch4: https://github.com/glensc/eventum/compare/cf_escape.patch
14ff3418 41# packaging patches that probably never go upstream
ac27ba92
ER
42Patch100: %{name}-paths.patch
43Patch101: %{name}-cvs-config.patch
4c823356 44Patch105: %{name}-bot-reconnect.patch
cfcdd0a9 45Patch107: %{name}-gettext.patch
a6016bab
ER
46# some tests
47Patch200: %{name}-fixed-nav.patch
3cf7d1aa 48URL: http://eventum.mysql.org/
447ff246 49BuildRequires: /usr/bin/php
efd26093 50BuildRequires: gettext-tools
7a906e31 51BuildRequires: php(core) >= %{php_min_version}
b3857e8b 52BuildRequires: rpm-php-pearprov >= 4.0.2-98
5500a61e 53BuildRequires: rpmbuild(macros) >= 1.654
4068cb73 54BuildRequires: sed >= 4.0
5b165428 55Requires: %{name}-base = %{version}-%{release}
01d8dfff 56Requires: php(core) >= %{php_min_version}
2f331c68
ER
57Requires: php(filter)
58Requires: php(gd)
59Requires: php(iconv)
60Requires: php(imap)
61Requires: php(json)
62Requires: php(mbstring)
63Requires: php(mysql)
64Requires: php(pcre)
65Requires: php(session)
5dbd4bf5
ER
66Requires: php-Smarty >= 3.1
67Requires: php-Smarty-plugin-gettext
71b01fde
ER
68Requires: php-pear-DB
69Requires: php-pear-Date
71b01fde 70Requires: php-pear-Mail
723da18a 71Requires: php-pear-Mail_Mime
fb0b2f83 72Requires: php-pear-Mail_mimeDecode
71b01fde
ER
73Requires: php-pear-Math_Stats
74Requires: php-pear-Net_DIME
71b01fde 75Requires: php-pear-Net_SMTP
71b01fde
ER
76Requires: php-pear-Net_Socket
77Requires: php-pear-Net_URL
78Requires: php-pear-Net_UserAgent_Detect
3223fb64 79Requires: php-pear-PEAR-core
71b01fde
ER
80Requires: php-pear-Text_Diff
81Requires: php-pear-XML_RPC
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
7f764a78 93%define _noautoreq_pear ../init.php ../../init.php init.php /usr/share/eventum/init.php /etc/webapps/.* %{_appdir}/.* jpgraph_dir.php .*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}
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
dc8c226c 455%setup -qn %{name}-%{version}%{?subver:-%{subver}}
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 \
8a37ad9d 508 $RPM_BUILD_ROOT{%{_webappdir},%{_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
4a74b463 516%{__make} install-eventum install-cli install-irc install-scm install-jpgraph install-localization \
ae3e48e6 517 sysconfdir=%{_webappdir} \
7a906e31 518 localedir=%{_localedir} \
ae3e48e6 519 DESTDIR=$RPM_BUILD_ROOT
da8d6134 520
c28270d0 521cp -p scm/helpers.php $RPM_BUILD_ROOT%{_sbindir}
f2151907 522install -p scm/eventum-git-hook.php $RPM_BUILD_ROOT%{_sbindir}/eventum-git-hook
c28270d0 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
00e339ff
ER
529cp -a vendor $RPM_BUILD_ROOT%{_appdir}
530
f399f1c0 531touch $RPM_BUILD_ROOT%{_webappdir}/htpasswd
1b5aae0f 532cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_webappdir}/apache.conf
87ca28ca 533cp -p %{SOURCE1} $RPM_BUILD_ROOT%{_webappdir}/httpd.conf
1b5aae0f 534cp -p %{SOURCE15} $RPM_BUILD_ROOT%{_webappdir}/lighttpd.conf
1cce3e61
ER
535
536install -d $RPM_BUILD_ROOT/etc/sphinx
7a906e31 537#cp -p config/sphinx.conf $RPM_BUILD_ROOT/etc/sphinx/%{name}.conf
858c6f2a 538cp -p config/sphinx.conf.php $RPM_BUILD_ROOT%{_webappdir}
ae3e48e6 539
1b5aae0f
ER
540cp -p %{SOURCE2} $RPM_BUILD_ROOT/etc/cron.d/%{name}-mail-queue
541cp -p %{SOURCE3} $RPM_BUILD_ROOT/etc/cron.d/%{name}-mail-download
542cp -p %{SOURCE4} $RPM_BUILD_ROOT/etc/cron.d/%{name}-reminder
543cp -p %{SOURCE5} $RPM_BUILD_ROOT/etc/cron.d/%{name}-monitor
1cce3e61 544cp -p %{SOURCE10} $RPM_BUILD_ROOT/etc/cron.d/%{name}-sphinx
ae3e48e6 545
1b5aae0f 546cp -p %{SOURCE7} $RPM_BUILD_ROOT%{_webappdir}/irc_config.php
ae3e48e6 547
2b135b34 548install -p %{SOURCE8} $RPM_BUILD_ROOT/etc/rc.d/init.d/eventum-irc
1b5aae0f 549cp -p %{SOURCE9} $RPM_BUILD_ROOT/etc/sysconfig/eventum-irc
31dabce6 550
1b5aae0f 551cp -p %{SOURCE14} $RPM_BUILD_ROOT/etc/logrotate.d/%{name}
2b135b34 552
410d72c7 553# postfix router
858c6f2a 554install -p %{SOURCE13} $RPM_BUILD_ROOT%{_libdir}/router-postfix
a6d2ad69 555
92bc2f5d 556cp -p %{SOURCE17} $RPM_BUILD_ROOT%{systemdtmpfilesdir}/%{name}.conf
cc613bc9 557
600d96a0 558%find_lang %{name}
c1e74aa1 559
ae3e48e6 560# scm
7a906e31 561cp -p %{SOURCE6} $RPM_BUILD_ROOT%{_sysconfdir}/scm.php
ae3e48e6 562
bb01d732
ER
563%clean
564rm -rf $RPM_BUILD_ROOT
565
01b84746
ER
566%pre
567%addusertogroup http %{name}
568
82121306 569%post
08196fe2
ER
570# greate empty ghost files
571for a in cli.log errors.log irc_bot.log login_attempts.log; do
572 if [ ! -f /var/log/%{name}/$a ]; then
2b135b34 573 install -m 0620 -o root -g eventum /dev/null /var/log/%{name}/$a
08196fe2
ER
574 fi
575done
576
00358bba
ER
577# run database update if configured
578test -s %{_webappdir}/config.php && \
847270fe
ER
579%{_appdir}/upgrade/update-database.php || :
580
da8d6134
ER
581# nuke Smarty templates cache after upgrade
582rm -f /var/cache/eventum/*.php
583
4a751c1a
ER
584# Restart webserver on upgrade to get .mo translations reloaded.
585# actually php engines "php-fcgi" and "php-fpm" needed only, apache is restarted anyway via webapp trigger.
114241d7
ER
586%php_webserver_restart
587
82121306
ER
588%preun
589if [ "$1" = "0" ]; then
dfe0f6d6
ER
590 # nuke cache
591 rm -f /var/cache/eventum/*.php 2>/dev/null || :
592fi
cfc3bce6 593
01b84746 594%pre base
1d760108
ER
595%groupadd -P %{name}-base -g 146 %{name}
596%useradd -P %{name}-base -u 146 -d /var/lib/%{name} -g %{name} -c "Eventum User" %{name}
01b84746
ER
597
598%postun base
599if [ "$1" = "0" ]; then
a6d2ad69 600 %userremove %{name}
1f52d1fe 601 %groupremove %{name}
a6d2ad69
ER
602fi
603
94bd779f 604%post setup
8a37ad9d 605chmod 660 %{_webappdir}/{config,private_key}.php
253ca53d 606chown root:http %{_webappdir}/{config,private_key}.php
94bd779f
ER
607
608%postun setup
b4fe195b 609if [ "$1" = "0" ] && [ -f %{_webappdir}/config.php ]; then
8a37ad9d 610 chmod 640 %{_webappdir}/{config,private_key}.php
253ca53d 611 chown root:http %{_webappdir}/{config,private_key}.php
94bd779f
ER
612fi
613
e1c0f343
ER
614%post irc
615/sbin/chkconfig --add eventum-irc
99bbe3cb 616%service eventum-irc restart "Eventum IRC Bot"
e1c0f343 617
add0e245
ER
618%preun irc
619if [ "$1" = 0 ]; then
620 %service eventum-irc stop
621 /sbin/chkconfig --del eventum-irc
622fi
623
09f58a75 624%triggerin -- apache1 < 1.3.37-3, apache1-base
bdf85dc8 625%webapp_register apache %{_webapp}
1d760108 626
09f58a75 627%triggerun -- apache1 < 1.3.37-3, apache1-base
bdf85dc8 628%webapp_unregister apache %{_webapp}
1d760108 629
87ca28ca 630%triggerin -- apache < 2.2.0, apache-base
bdf85dc8 631%webapp_register httpd %{_webapp}
1d760108 632
87ca28ca 633%triggerun -- apache < 2.2.0, apache-base
bdf85dc8 634%webapp_unregister httpd %{_webapp}
1d760108 635
f399f1c0
ER
636%triggerin -- lighttpd
637%webapp_register lighttpd %{_webapp}
638
639%triggerun -- lighttpd
640%webapp_unregister lighttpd %{_webapp}
641
24cfc386
ER
642%triggerpostun -- %{name} < 3.0.0-0.2
643for f in /etc/cron.d/eventum-*; do
644 # crontabs moved to bin
0ffd10e7 645 %{__sed} -i -e '
24cfc386
ER
646 s,/usr/share/eventum/crons/process_mail_queue.php,%{_appdir}/bin/process_mail_queue.php,
647 s,/usr/share/eventum/crons/download_emails.php,%{_appdir}/bin/download_emails.php,
648 s,/usr/share/eventum/crons/check_reminders.php,%{_appdir}/bin/check_reminders.php,
649 s,/usr/share/eventum/crons/monitor.php,%{_appdir}/bin/monitor.php,
650 ' $f
0ffd10e7 651done
f1269a43 652
600d96a0 653%files -f %{name}.lang
bb01d732 654%defattr(644,root,root,755)
7a906e31 655%doc docs/*
8a37ad9d
ER
656%attr(751,root,root) %dir %{_webappdir}
657%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_webappdir}/apache.conf
658%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_webappdir}/httpd.conf
f399f1c0 659%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_webappdir}/lighttpd.conf
e570944f
ER
660%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_webappdir}/config.php
661%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_webappdir}/private_key.php
662%attr(660,root,http) %config(noreplace) %verify(not md5 mtime size) %{_webappdir}/setup.php
f399f1c0 663%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_webappdir}/htpasswd
d2e501e8 664
e570944f
ER
665%dir %attr(731,root,http) /var/log/%{name}
666%attr(620,root,http) %ghost /var/log/%{name}/*
3c6aa7a9 667%dir %attr(750,root,root) /var/log/archive/%{name}
8fd047ac 668%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/%{name}
35f9d6a3 669
7a906e31 670%dir %{_appdir}/bin
7a906e31
ER
671%attr(755,root,root) %{_appdir}/bin/process_all_emails.php
672
ae3e48e6 673%{_appdir}/init.php
cfc3bce6
ER
674%dir %{_appdir}/htdocs
675%{_appdir}/htdocs/*.php
da8d6134 676%{_appdir}/htdocs/*.ico
7bc9b641 677%{_appdir}/htdocs/ajax
cfc3bce6
ER
678%{_appdir}/htdocs/css
679%{_appdir}/htdocs/customer
680%{_appdir}/htdocs/images
681%{_appdir}/htdocs/js
682%{_appdir}/htdocs/manage
7bc9b641 683%{_appdir}/htdocs/misc
cfc3bce6
ER
684%{_appdir}/htdocs/reports
685%{_appdir}/htdocs/rpc
7a906e31 686%{_appdir}/htdocs/components
9748a8c3 687%{_appdir}/templates
847270fe 688
c9165420 689%dir %{_appdir}/upgrade
7a906e31
ER
690%{_appdir}/upgrade/flush_compiled_templates.php
691%{_appdir}/upgrade/*.sql
847270fe 692%attr(755,root,root) %{_appdir}/upgrade/update-database.php
73de38a1 693%attr(755,root,root) %{_appdir}/upgrade/ldap_import.php
7a906e31
ER
694%attr(755,root,root) %{_appdir}/upgrade/ldap_update_users.php
695%attr(755,root,root) %{_appdir}/upgrade/scm_trac_import.php
847270fe
ER
696%{_appdir}/upgrade/patches
697
ae3e48e6
ER
698%dir %{_appdir}/lib
699%{_appdir}/lib/eventum
700%{_appdir}/lib/jpgraph
701%exclude %{_appdir}/lib/eventum/class.monitor.php
00e339ff
ER
702
703%{_appdir}/vendor
704
fa6167ba
ER
705%{_examplesdir}/%{name}-%{version}
706
73de38a1 707%{systemdtmpfilesdir}/%{name}.conf
e570944f
ER
708%dir %attr(730,root,http) /var/run/%{name}
709%dir %attr(730,root,http) /var/cache/%{name}
ab983aaa 710
d2e501e8
ER
711%files base
712%defattr(644,root,root,755)
713%attr(751,root,root) %dir %{_sysconfdir}
a392a259 714%dir %{_libdir}
cfc3bce6 715%dir %{_appdir}
098cbb72 716%dir /var/lib/%{name}
89522a33 717# saved mail copies
e570944f
ER
718%attr(770,root,http) %dir /var/lib/%{name}/routed_emails
719%attr(770,root,http) %dir /var/lib/%{name}/routed_drafts
720%attr(770,root,http) %dir /var/lib/%{name}/routed_notes
d2e501e8 721
ab983aaa
ER
722%files setup
723%defattr(644,root,root,755)
cfc3bce6 724%{_appdir}/htdocs/setup
0da8e1f2
ER
725
726%files mail-queue
727%defattr(644,root,root,755)
7a906e31 728%attr(755,root,root) %{_appdir}/bin/process_mail_queue.php
ea084bcb
ER
729%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/cron.d/%{name}-mail-queue
730
731%files mail-download
732%defattr(644,root,root,755)
7a906e31 733%attr(755,root,root) %{_appdir}/bin/download_emails.php
ea084bcb 734%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/cron.d/%{name}-mail-download
5cb2e61d 735
cd719538
ER
736%files reminder
737%defattr(644,root,root,755)
7a906e31 738%attr(755,root,root) %{_appdir}/bin/check_reminders.php
cd719538
ER
739%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/cron.d/%{name}-reminder
740
741%files monitor
742%defattr(644,root,root,755)
ae3e48e6 743%{_appdir}/lib/eventum/class.monitor.php
7a906e31 744%attr(755,root,root) %{_appdir}/bin/monitor.php
cd719538
ER
745%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/cron.d/%{name}-monitor
746
5b165428
ER
747%files route-drafts
748%defattr(644,root,root,755)
7a906e31 749%attr(755,root,root) %{_appdir}/bin/route_drafts.php
5b165428 750
cd719538
ER
751%files route-emails
752%defattr(644,root,root,755)
7a906e31 753%attr(755,root,root) %{_appdir}/bin/route_emails.php
cd719538
ER
754
755%files route-notes
756%defattr(644,root,root,755)
7a906e31 757%attr(755,root,root) %{_appdir}/bin/route_notes.php
cd719538 758
a6d2ad69
ER
759%files router-postfix
760%defattr(644,root,root,755)
410d72c7 761%attr(755,root,root) %{_libdir}/router-postfix
a6d2ad69 762
cd719538
ER
763%files irc
764%defattr(644,root,root,755)
77b3db3b 765%attr(640,root,eventum) %config(noreplace) %verify(not md5 mtime size) %{_webappdir}/irc_config.php
01b84746 766%attr(640,root,eventum) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/eventum-irc
ae3e48e6 767%attr(755,root,root) %{_sbindir}/%{name}-irc-bot
cd719538
ER
768%attr(754,root,root) /etc/rc.d/init.d/%{name}-irc
769
abd490e4
ER
770%files cli
771%defattr(644,root,root,755)
ae3e48e6 772%doc cli/eventumrc
4a74b463 773%attr(755,root,root) %{_bindir}/%{name}
abd490e4 774
5cb2e61d
ER
775%files scm
776%defattr(644,root,root,755)
c28270d0 777%attr(751,root,root) %dir %{_sysconfdir}
ca6b8520 778%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/scm.php
ae3e48e6 779%attr(755,root,root) %{_sbindir}/eventum-cvs-hook
f2151907 780%attr(755,root,root) %{_sbindir}/eventum-git-hook
ae3e48e6 781%attr(755,root,root) %{_sbindir}/eventum-svn-hook
c28270d0 782%attr(755,root,root) %{_sbindir}/helpers.php
1cce3e61
ER
783
784%files sphinx
785%defattr(644,root,root,755)
786%{_webappdir}/sphinx.conf.php
7a906e31 787#%attr(750,root,http) %config(noreplace) %verify(not md5 mtime size) /etc/sphinx/%{name}.conf
1cce3e61 788%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/cron.d/%{name}-sphinx
This page took 0.262974 seconds and 4 git commands to generate.