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