]> git.pld-linux.org Git - packages/eventum.git/blame - eventum.spec
- up to bzr r3843
[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:
7492ce03 10%bcond_with qmail # build the router-qmail subpackage
422dcc8e 11%bcond_without order # with experimental order patch
cddf3011 12
0bb7ad7c 13#define snap 20060921
c11e5ae6
ER
14%define rev r3843
15%define rel 2.13
b8b72891 16#define _rc RC3
87d15bba 17
b3857e8b 18%include /usr/lib/rpm/macros.php
c96aabf5 19Summary: Eventum Issue / Bug tracking system
9f49cf47 20Summary(pl.UTF-8): Eventum - system śledzenia spraw/błędów
bb01d732 21Name: eventum
847270fe 22Version: 2.2
c11e5ae6 23Release: %{?_rc:%{_rc}.}%{rel}%{?snap:.%{snap}}%{?rev:.%{rev}}
6850abd9
ER
24License: GPL
25Group: Applications/WWW
0bb7ad7c 26#Source0: http://downloads.mysql.com/snapshots/eventum/%{name}-nightly-%{snap}.tar.gz
6cb55287 27#Source0: http://eventum.mysql.org/downloads/eventum-2.0.RC3.tar.gz
c2e7ae63 28#Source0: http://mysql.easynet.be/Downloads/eventum/%{name}-%{version}.tar.gz
c11e5ae6
ER
29# bzr branch lp:eventum eventum && tar -cjf eventum.tar.bz2 --exclude=.bzr --exclude=.bzrignore eventum
30Source0: %{name}-%{rev}.tar.bz2
31# Source0-md5: 394e94ebc88ad96fe9a71666e396113e
82121306 32Source1: %{name}-apache.conf
cd719538
ER
33Source2: %{name}-mail-queue.cron
34Source3: %{name}-mail-download.cron
35Source4: %{name}-reminder.cron
36Source5: %{name}-monitor.cron
37Source6: %{name}-cvs.php
38Source7: %{name}-irc.php
39Source8: %{name}-irc.init
73f6a3e6 40Source9: %{name}-irc.sysconfig
cfcdd0a9
ER
41Source10: %{name}-router-qmail.sh
42Source12: %{name}-upgrade.sh
43Source13: %{name}-router-postfix.sh
44Source14: %{name}.logrotate
45Source15: %{name}-lighttpd.conf
d0dabd47
ER
46Source16: http://www.isocra.com/images/updown2.gif
47# Source16-md5: deb6eeb2552ba757d3a949ed10c4107d
ac27ba92 48Patch0: %{name}-lf.patch
4f627938 49Patch2: %{name}-order.patch
14ff3418 50# packaging patches that probably never go upstream
ac27ba92
ER
51Patch100: %{name}-paths.patch
52Patch101: %{name}-cvs-config.patch
4c823356 53Patch102: %{name}-irc-config.patch
4c823356 54Patch105: %{name}-bot-reconnect.patch
cfcdd0a9
ER
55Patch106: %{name}-mem-limits.patch
56Patch107: %{name}-gettext.patch
a6016bab
ER
57# some tests
58Patch200: %{name}-fixed-nav.patch
3cf7d1aa 59URL: http://eventum.mysql.org/
2bbc9c41 60BuildRequires: gettext-devel
b3857e8b 61BuildRequires: rpm-php-pearprov >= 4.0.2-98
d1c44829 62BuildRequires: rpmbuild(macros) >= 1.461
4068cb73 63BuildRequires: sed >= 4.0
00e0fc89
ER
64Requires(triggerpostun): /usr/bin/php
65Requires(triggerpostun): sed >= 4.0
5b165428 66Requires: %{name}-base = %{version}-%{release}
7db4d346 67Requires: Smarty >= 2.6.10-4
cf66850b
ER
68Requires: php-common >= 4:5.0
69Requires: php-gd
70Requires: php-iconv
71Requires: php-imap
72Requires: php-mbstring
73Requires: php-mysql
74Requires: php-pcre
71b01fde
ER
75Requires: php-pear-DB
76Requires: php-pear-Date
77Requires: php-pear-HTTP_Request
78Requires: php-pear-Mail
723da18a 79Requires: php-pear-Mail_Mime
fb0b2f83 80Requires: php-pear-Mail_mimeDecode
71b01fde
ER
81Requires: php-pear-Math_Stats
82Requires: php-pear-Net_DIME
71b01fde 83Requires: php-pear-Net_SMTP
71b01fde
ER
84Requires: php-pear-Net_Socket
85Requires: php-pear-Net_URL
86Requires: php-pear-Net_UserAgent_Detect
3223fb64 87Requires: php-pear-PEAR-core
71b01fde
ER
88Requires: php-pear-Text_Diff
89Requires: php-pear-XML_RPC
465c3ab7 90Requires: smarty-gettext
bdf85dc8 91Requires: webapps
f399f1c0
ER
92Requires: webserver(access)
93Requires: webserver(alias)
897bdb2c 94Requires: webserver(indexfile)
61351540 95Requires: webserver(php) >= 4.2.0
0f8c2c4a 96Conflicts: logrotate < 3.7-4
35fa3cf8 97BuildArch: noarch
bb01d732
ER
98BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
99
c2e7ae63 100%define _noautoreq 'pear(/etc/webapps/.*)' 'pear(%{_appdir}/.*)' 'pear(jpgraph_dir.php)' 'pear(.*Smarty.class.php)'
3223fb64 101
1d760108 102%define _libdir %{_prefix}/lib/%{name}
71f56750 103%define _appdir %{_datadir}/%{name}
452347b6 104%define _smartyplugindir %{_appdir}/include/smarty
d1c44829 105%define _smartydir %{php_data_dir}/Smarty
bdf85dc8
ER
106%define _webapps /etc/webapps
107%define _webapp %{name}
8a37ad9d
ER
108%define _webappdir %{_webapps}/%{_webapp}
109%define _sysconfdir /etc/%{name}
bb01d732
ER
110
111%description
112Eventum is a user-friendly and flexible issue tracking system that can
113be used by a support department to track incoming technical support
114requests, or by a software development team to quickly organize tasks
115and bugs. Eventum is used by the MySQL AB Technical Support team, and
116has allowed us to dramatically improve our response times.
117
d8cfa9f0
JR
118%description -l pl.UTF-8
119Eventum to przyjazny dla użytkownika system śledzenia spraw, który
120może być używany przez dział obsługi do śledzenia przychodzących żądań
121obsługi technicznej albo przez zespół tworzący oprogramowanie do
122szybkiej organizacji zadań i błędów. Eventum jest używany przez zespół
123Technical Support MySQL AB i umożliwił im znacząco poprawić czasy
4068cb73
JB
124reakcji.
125
d2e501e8
ER
126%package base
127Summary: Eventum base package
9f49cf47 128Summary(pl.UTF-8): Podstawowy pakiet Eventum
d2e501e8 129Group: Applications/WWW
3223fb64
ER
130Requires(postun): /usr/sbin/groupdel
131Requires(postun): /usr/sbin/userdel
5bbd68c9
ER
132Requires(pre): /bin/id
133Requires(pre): /usr/bin/getgid
5bbd68c9 134Requires(pre): /usr/sbin/groupadd
3223fb64 135Requires(pre): /usr/sbin/useradd
9f768793 136Provides: group(eventum)
d080edb6 137Provides: user(eventum)
d2e501e8
ER
138
139%description base
140This package contains base directory structure for Eventum.
141
d8cfa9f0
JR
142%description base -l pl.UTF-8
143Ten pakiet zawiera podstawową strukturę katalogów dla Eventum.
1bb5e749 144
ab983aaa 145%package setup
4068cb73 146Summary: Eventum setup package
9f49cf47 147Summary(pl.UTF-8): Pakiet do wstępnej konfiguracji Eventum
ab983aaa 148Group: Applications/WWW
5b165428 149Requires: %{name} = %{version}-%{release}
ab983aaa
ER
150
151%description setup
152Install this package to configure initial Eventum installation. You
153should uninstall this package when you're done, as it considered
154insecure to keep the setup files in place.
155
d8cfa9f0
JR
156%description setup -l pl.UTF-8
157Ten pakiet należy zainstalować w celu wstępnej konfiguracji Eventum po
158pierwszej instalacji. Potem należy go odinstalować, jako że
159pozostawienie plików instalacyjnych mogłoby być niebezpieczne.
4068cb73 160
0da8e1f2 161%package mail-queue
30689148 162Summary: Eventum mail queue process
9f49cf47 163Summary(pl.UTF-8): Przetwarzanie kolejki poczty Eventum
0da8e1f2 164Group: Applications/WWW
5b165428 165Requires: %{name} = %{version}-%{release}
0da8e1f2
ER
166Requires: crondaemon
167
168%description mail-queue
169Beginning with the first release of Eventum, emails are not directly
170sent out from the various scripts, but rather added to a mail queue
171table that is processed by a cron job. If an email cannot be sent, it
172will be marked as such in the mail queue log, and the cron job script
173will re-try to send it again the next time it runs.
174
175This package contains the cron job.
176
d8cfa9f0
JR
177%description mail-queue -l pl.UTF-8
178Od pierwszego wydania Eventum poczta nie jest wysyłana bezpośrednio z
179różnych skryptów, lecz dodawana do kolejki przetwarzanej z crona.
180Jeśli poczta nie może być wysłana, będzie odpowiednio oznaczona w logu
181kolejki poczty, a skrypt z crona będzie próbował wysłać ją ponownie
182następnym razem.
0181746f 183
30689148 184Ten pakiet zawiera zadanie dla crona.
185
ea084bcb 186%package mail-download
30689148 187Summary: Eventum email download
9f49cf47 188Summary(pl.UTF-8): Ściąganie poczty Eventum
ea084bcb 189Group: Applications/WWW
5b165428 190Requires: %{name} = %{version}-%{release}
ea084bcb
ER
191Requires: crondaemon
192
193%description mail-download
194In order for Eventum's email integration feature to work, you need to
195setup a cron job to run the script every so often.
196
197This package contains the cron job.
198
d8cfa9f0
JR
199%description mail-download -l pl.UTF-8
200Aby integracja poczty elektronicznej w Eventum działała, trzeba
201ustawić zadanie crona, aby uruchamiał odpowiedni skrypt wystarczająco
202często.
0181746f
JB
203
204Ten pakiet zawiera zadanie dla crona.
205
cd719538
ER
206%package reminder
207Summary: Eventum Reminder System
9f49cf47 208Summary(pl.UTF-8): System przypominania dla Eventum
cd719538 209Group: Applications/WWW
5b165428 210Requires: %{name} = %{version}-%{release}
cd719538
ER
211Requires: crondaemon
212
213%description reminder
214The reminder system was designed with the objective as serving as a
215safe net for issues that need attention. Depending on what
216configuration you create, you may have several reminders (or alerts)
217be sent out whenever an issue needs attention, for whatever parameter
218you may deem necessary.
219
220This package contains the cron job.
221
d8cfa9f0
JR
222%description reminder -l pl.UTF-8
223System przypominania został zaprojektowany tak, aby służył jako
224bezpieczna sieć dla spraw wymagających uwagi. W zależności od
225konfiguracji można ustawić różne przypominajki (lub alarmy) wysyłane
226przy każdej sprawie wymagającej uwagi lub przy parametrze, który można
227uważać za potrzebny.
6341f096
JB
228
229Ten pakiet zawiera zadanie dla crona.
230
cd719538
ER
231%package monitor
232Summary: Eventum Heartbeat Monitor
9f49cf47 233Summary(pl.UTF-8): Monitor życia dla Eventum
cd719538 234Group: Applications/WWW
5b165428 235Requires: %{name} = %{version}-%{release}
cd719538 236Requires: crondaemon
61351540 237Requires: php(posix)
cd719538
ER
238
239%description monitor
240The heartbeat monitor is a feature designed for the administrator that
241wants to be alerted whenever a common problem in Eventum is detected,
242like the database server not being available anymore, or maybe when
243the recommended permissions for certain configuration files are
244changed.
245
246Please note that before running the heartbeat monitor, you may need to
247customize some of the checks to be appropriate for your own system,
248particularly the permission and file checks on
249Monitor::checkConfiguration().
250
251This package contains the cron job.
252
d8cfa9f0
JR
253%description monitor -l pl.UTF-8
254Monitor życia to funkcjonalność zaprojektowana dla administratora
255chcącego być alarmowanym przy każdym wykryciu popularnego problemu z
256Eventum, jak nie działanie serwera bazy danych albo zmiana uprawnień
257do plików konfiguracyjnych.
6341f096 258
d8cfa9f0
JR
259Należy zauważyć, że przed uruchomieniem tego monitora może być
260konieczne dostosowanie niektórych testów do systemu, w szczególności
261testów uprawnień i plików w Monitor::checkConfiguration().
6341f096
JB
262
263Ten pakiet zawiera zadanie dla crona.
264
5b165428
ER
265%package route-drafts
266Summary: Eventum Draft Routing
9f49cf47 267Summary(pl.UTF-8): Przekazywanie szkiców dla Eventum
5b165428
ER
268Group: Applications/WWW
269Requires: %{name} = %{version}-%{release}
5b165428
ER
270Requires: eventum(router)
271
272%description route-drafts
71f56750 273The draft routing feature is used to automatically associate a thread
5410173f 274of drafts into an Eventum issue. By setting up qmail (or even Postfix)
71f56750
ER
275to deliver emails sent to a specific address (usually
276draft-<number>@<domain>) to the above script, users are able to send
277drafts written in their mail client to be stored in Eventum. These
278drafts will NOT broadcasted to the notification list.
5b165428 279
d8cfa9f0
JR
280%description route-drafts -l pl.UTF-8
281Przekazywanie szkiców służy do automatycznego wiązania wątku szkiców z
282problemem w Eventum. Ustawiając qmaila (czy nawet Postfiksa), aby
283dostarczał pocztę wysłaną na podany adres (zwykle
284draft-<liczba>@<domena>) do tego skryptu umożliwia się użytkownikom
285wysyłanie szkiców napisanych w ich kliencie pocztowym do zapisania w
286Eventum. Szkice te NIE będą wysyłane na listę powiadomień.
5410173f 287
cd719538
ER
288%package route-emails
289Summary: Eventum Email Routing
9f49cf47 290Summary(pl.UTF-8): Przekazywanie poczty dla Eventum
cd719538 291Group: Applications/WWW
5b165428 292Requires: %{name} = %{version}-%{release}
8bc4bcd1 293Requires: eventum(router)
cd719538
ER
294
295%description route-emails
296The email routing feature is used to automatically associate a thread
297of emails into an Eventum issue. By setting up qmail (or even postfix)
298to deliver emails sent to a specific address (usually
299issue-<number>@<domain>) to the above script, users are able to use
300their email clients to reply to emails coming from Eventum, and those
301replies will be automatically associated with the issue and
302broadcasted to the entire notification list.
303
d8cfa9f0
JR
304%description route-emails -l pl.UTF-8
305Funkcjonalność przekazywania poczty służy do automatycznego wiązania
306wątku listów ze sprawą w Eventum. Po ustawieniu qmaila (czy nawet
307postfiksa), aby dostarczał listy wysyłane na pewien adres (zwykle
308issue-<numer>@<domena>) na powyższy skrypt, użytkownicy będą mogli
309używać klientów pocztowych do odpowiadania na listy przychodzące z
310Eventum, a odpowiedzi te będą automatycznie wiązane ze sprawą i
311rozprowadzane do całej listy ogłoszeniowej.
6341f096 312
cd719538
ER
313%package route-notes
314Summary: Eventum Note Routing
9f49cf47 315Summary(pl.UTF-8): Przekazywanie notatek dla Eventum
cd719538 316Group: Applications/WWW
5b165428 317Requires: %{name} = %{version}-%{release}
8bc4bcd1 318Requires: eventum(router)
cd719538
ER
319
320%description route-notes
321The note routing feature is used to automatically associate a thread
322of notes into an Eventum issue. By setting up qmail (or even postfix)
323to deliver emails sent to a specific address (usually
324note-<number>@<domain>) to the above script, users are able to use
325their email clients to reply to internal notes coming from Eventum,
326and those replies will be automatically associated with the issue and
327broadcasted to the notification list staff members.
328
d8cfa9f0
JR
329%description route-notes -l pl.UTF-8
330Funkcjonalność przekazywania notatek służy do automatycznego wiązania
331wątku notatek ze sprawą w Eventum. Po ustawieniu qmaila (czy nawet
332postfiksa), aby dostarczał listy wysyłane na pewien adres (zwykle
333note-<numer>@<domena>) na powyższy skrypt, użytkownicy będą mogli
334używać klientów pocztowych do odpowiadania na wewnętrzne notatki
335pochodzące od Eventu, a odpowiedzi te będą automatycznie wiązane ze
336sprawą i rozprowadzane do członków personelu listy ogłoszeniowej.
6341f096 337
a6d2ad69
ER
338%package router-qmail
339Summary: Eventum Mail Routing - qmail
9f49cf47 340Summary(pl.UTF-8): Przekazywanie poczty Eventum - qmail
a6d2ad69 341Group: Applications/Mail
9b16153c
ER
342# loose dep is intentional. qmail subpackage isn't built on PLD
343# builders and there really nothing changes.
5b165428 344Requires: %{name} >= %{version}-%{release}
a6d2ad69 345Requires: qmail >= 1.03
8bc4bcd1
ER
346Provides: eventum(router)
347Obsoletes: eventum(router)
a6d2ad69
ER
348
349%description router-qmail
350This package provides way of routing notes and emails back to Eventum
351via qmail.
352
d8cfa9f0
JR
353%description router-qmail -l pl.UTF-8
354Ten pakiet udostępnia metodę przekazywania notatek i listów do Eventum
995fa554
JB
355przez qmaila.
356
a6d2ad69
ER
357%package router-postfix
358Summary: Eventum Mail Routing - Postfix
9f49cf47 359Summary(pl.UTF-8): Przekazywanie poczty Eventum - Postfix
a6d2ad69 360Group: Applications/Mail
5b165428 361Requires: %{name} = %{version}-%{release}
a6d2ad69 362Requires: postfix
8bc4bcd1
ER
363Provides: eventum(router)
364Obsoletes: eventum(router)
a6d2ad69
ER
365
366%description router-postfix
367This package provides way of routing notes and emails back to Eventum
368via Postfix.
369
e1bb3563
ER
370The Postfix configuration instructions you can find from
371<http://eventum.mysql.org/wiki/index.php/Setting_up_email_routing_with_postfix>.
372
d8cfa9f0
JR
373%description router-postfix -l pl.UTF-8
374Ten pakiet udostępnia metodę przekazywania notatek i listów do Eventum
995fa554
JB
375przez Postfiksa.
376
d8cfa9f0 377Opis konfiguracji Postfiksa można znaleźć pod adresem
a659c698
JB
378<http://eventum.mysql.org/wiki/index.php/Setting_up_email_routing_with_postfix>.
379
cd719538
ER
380%package irc
381Summary: Eventum IRC Notification Bot
9f49cf47 382Summary(pl.UTF-8): IRC-owy bot powiadamiający dla Eventum
cd719538 383Group: Applications/WWW
b79fc4aa 384Requires(post,preun): /sbin/chkconfig
e1c0f343 385Requires(triggerpostun): sed >= 4.0
5b165428 386Requires: %{name} = %{version}-%{release}
61351540 387Requires: php(sockets)
71f56750 388Requires: php-pear-Net_SmartIRC
e1c0f343 389Requires: rc-scripts >= 0.4.0.18
cd719538
ER
390
391%description irc
392The IRC notification bot is a nice feature for remote teams that want
393to handle issues and want to have a quick and easy way to get simple
394notifications. Right now the bot notifies of the following actions:
395- New Issues
396- Blocked emails
397- Issues that got their assignment list changed
398
399NOTE: You will need to manually edit the bot.php script to set your
400appropriate preferences, like IRC server and channel that the bot
401should join.
402
d8cfa9f0
JR
403%description irc -l pl.UTF-8
404IRC-owy bot powiadamiający to miła funkcjonalność dla zdalnych
405zespołów chcących obsługiwać sprawy i mieć szybki i łatwy sposób na
406uzyskiwanie prostych powiadomień. Aktualnie bot powiadamia o
407następujących zdarzeniach:
6341f096
JB
408- nowych sprawach
409- zablokowanych listach
d8cfa9f0 410- sprawach, dla których zmieniła się lista powiązań
6341f096 411
d8cfa9f0
JR
412UWAGA: w celu wprowadzenia własnych ustawień, takich jak serwer IRC i
413kanał używany przez bota, trzeba ręcznie zmodyfikować skrypt bot.php .
6341f096 414
abd490e4
ER
415%package cli
416Summary: Eventum command-line interface
9f49cf47 417Summary(pl.UTF-8): Interfejs linii poleceń dla Eventum
abd490e4 418Group: Applications/WWW
5b165428 419Requires: %{name}-base = %{version}-%{release}
9500cdeb 420Requires: php-cli
cf66850b 421Requires: php-common >= 4:5.0
71b01fde 422Requires: php-pear-XML_RPC
abd490e4
ER
423
424%description cli
425The Eventum command-line interface allows you to access most of the
426features of the web interface straight from your command shell.
abd490e4 427
d8cfa9f0
JR
428%description cli -l pl.UTF-8
429Interfejs linii poleceń Eventum pozwala na dostęp do większości
430funkcji interfejsu WWW prosto z linii poleceń powłoki.
958cd5a0 431
5cb2e61d 432%package scm
30689148 433Summary: Eventum SCM integration
9f49cf47 434Summary(pl.UTF-8): Integracja SCM dla Eventum
5cb2e61d 435Group: Applications/WWW
5b165428 436Requires: %{name}-base = %{version}-%{release}
bdf85dc8 437Requires: php-cli
cf66850b
ER
438Requires: php-common >= 4:5.0
439Requires: php-pcre
5cb2e61d
ER
440
441%description scm
442This feature allows your software development teams to integrate your
443Source Control Management system with your Issue Tracking System.
444
445The integration is implemented in such a way that it will be forward
446compatible with pretty much any SCM system, such as CVS.
447
0181746f 448For installation see
a392a259 449</eventum/help.php?topic=scm_integration_installation>.
0181746f 450
d8cfa9f0
JR
451%description scm -l pl.UTF-8
452Ten pakiet pozwala zespołom programistów na integrację systemu
453zarządzania źródłami (SCM - Source Control Management) z systemem
454śledzenia spraw.
0181746f 455
d8cfa9f0
JR
456Integracja jest zaimplementowana tak, aby być kompatybilna w przód z
457prawie każdym systemem SCM, jak np. CVS.
0181746f 458
d8cfa9f0 459Szczegóły na temat instalacji można przeczytać pod
a392a259 460</eventum/help.php?topic=scm_integration_installation>.
5cb2e61d 461
bb01d732 462%prep
c11e5ae6 463%setup -q %{?snap:-n %{name}-%{snap}}%{?rev:-n %{name}-%{rev}}
085e39c0 464
65cb4bd7 465rm -r misc/upgrade/*v1.[123]* # too old to support in PLD Linux
847270fe 466rm -r misc/upgrade/v{1.,2.0,2.1_}* # no longer supported in PLD Linux
65cb4bd7 467rm misc/upgrade/flush_compiled_templates.php
847270fe 468rm -r misc/upgrade/{*/,}index.html # not needed in PLD Linux
5b165428 469
65cb4bd7 470rm -r include/php-gettext
5b165428 471# sample, not used in eventum
65cb4bd7 472rm rpc/xmlrpc_client.php
e1c0f343 473
9487d524 474# bug fixes / features
0b3b58dd 475%patch0 -p1
4f627938 476%{?with_order:%patch2 -p1}
57e65e62 477
422dcc8e
ER
478cp -a %{SOURCE16} images
479
a6016bab 480#%patch200 -p1
ac27ba92
ER
481
482# packaging
483%patch100 -p1
484%patch101 -p1
4c823356 485%patch102 -p1
ac27ba92 486%patch105 -p1
cfcdd0a9 487%patch106 -p1
ac27ba92 488%patch107 -p1
0b3b58dd 489
3d92cbd2
ER
490cat <<'EOF'> mysql-permissions.sql
491# use this schema if you want to grant permissions manually instead of using setup
492# this schema is extracted from setup/index.php.
493GRANT SELECT, UPDATE, DELETE, INSERT, ALTER, DROP, CREATE, INDEX ON eventum.* TO 'eventum'@'localhost' IDENTIFIED BY 'password';
494EOF
495
71f56750 496sed -e '1s,#!.*/bin/php -q,#!%{_bindir}/php,' misc/cli/eventum > %{name}-cli
71f56750 497mv misc/cli/eventumrc_example eventumrc
16902912
ER
498sed -i -e '1i#!%{_bindir}/php' misc/*.php
499chmod +x misc/*.php
5b165428 500
25123ce7
ER
501%{__sed} -i -e "
502s,require_once.*init.php.*;,require_once '%{_appdir}/htdocs/init.php';,
503s;define('CONFIG_PATH'.*');define('CONFIG_PATH', '%{_webappdir}');
504/define('INSTALL_PATH'/d
847270fe 505" misc/upgrade/{*/,}*.php
c3fd3767 506
5b165428 507# remove backups from patching as we use globs to package files to buildroot
73c437a6 508find '(' -name '*~' -o -name '*.orig' ')' | xargs -r rm -v
085e39c0 509
465c3ab7 510%build
78cfacd5 511%{__make} -C misc/localization
465c3ab7 512
bb01d732
ER
513%install
514rm -rf $RPM_BUILD_ROOT
cfc3bce6 515install -d \
8a37ad9d 516 $RPM_BUILD_ROOT{%{_webappdir},%{_sysconfdir},%{_bindir},%{_sbindir},%{_libdir}} \
cfc3bce6 517 $RPM_BUILD_ROOT/etc/{rc.d/init.d,cron.d,sysconfig} \
c1e74aa1 518 $RPM_BUILD_ROOT/var/{run,cache,lib}/%{name} \
685fc383 519 $RPM_BUILD_ROOT/var/log/{archive/,}%{name} \
89522a33 520 $RPM_BUILD_ROOT/var/lib/%{name}/routed_{emails,drafts,notes} \
761ae7dd 521 $RPM_BUILD_ROOT%{_appdir}/{include,htdocs/misc,upgrade} \
cfc3bce6 522
422dcc8e 523cp -a *.php css customer images js manage reports rpc setup %{?with_order:ajax} $RPM_BUILD_ROOT%{_appdir}/htdocs
cfc3bce6
ER
524cp -a misc/*.html $RPM_BUILD_ROOT%{_appdir}/htdocs/misc
525cp -a misc/*.php $RPM_BUILD_ROOT%{_appdir}
cfc3bce6 526cp -a templates $RPM_BUILD_ROOT%{_appdir}
00e0fc89 527cp -a include/{customer,custom_field,jpgraph,workflow} $RPM_BUILD_ROOT%{_appdir}/include
cfc3bce6 528cp -a include/*.php $RPM_BUILD_ROOT%{_appdir}/include
c11e5ae6
ER
529touch $RPM_BUILD_ROOT/var/log/%{name}/{cli.log,errors.log,irc_bot.log,login_attempts.log}
530
dd1c0942 531cp -a misc/upgrade $RPM_BUILD_ROOT%{_appdir}
bb01d732 532
1c9d2c71 533cp -a favicon.ico $RPM_BUILD_ROOT%{_appdir}/htdocs/favicon.ico
cfcdd0a9 534install %{SOURCE12} $RPM_BUILD_ROOT%{_appdir}/upgrade/upgrade.sh
da8d6134 535
cfc3bce6
ER
536# cli
537install -d $RPM_BUILD_ROOT%{_appdir}/cli
5b165428
ER
538cp -a misc/cli/include/class.{misc,command_line}.php $RPM_BUILD_ROOT%{_appdir}/cli
539cp -a misc/cli/config.inc.php $RPM_BUILD_ROOT%{_sysconfdir}/cli.php
d080edb6 540install %{name}-cli $RPM_BUILD_ROOT%{_bindir}/%{name}
77b3db3b 541install misc/irc/bot.php $RPM_BUILD_ROOT%{_sbindir}/%{name}-bot
9cdc5027 542
cfc3bce6 543# scm
da820d18
ER
544install misc/scm/process_cvs_commits.php $RPM_BUILD_ROOT%{_libdir}/process_cvs_commits
545install misc/scm/process_svn_commits.php $RPM_BUILD_ROOT%{_libdir}/process_svn_commits
bd7564e0 546install %{SOURCE6} $RPM_BUILD_ROOT%{_sysconfdir}/scm.php
82121306 547
cfc3bce6 548# private key
77b3db3b
ER
549echo '<?php
550$private_key = "DEFAULTPRIVATEKEY";' > $RPM_BUILD_ROOT%{_webappdir}/private_key.php
f399f1c0 551touch $RPM_BUILD_ROOT%{_webappdir}/htpasswd
47033007 552
31dabce6
ER
553cp -a %{SOURCE1} $RPM_BUILD_ROOT%{_webappdir}/apache.conf
554cp -a %{SOURCE1} $RPM_BUILD_ROOT%{_webappdir}/httpd.conf
cfcdd0a9 555cp -a %{SOURCE15} $RPM_BUILD_ROOT%{_webappdir}/lighttpd.conf
31dabce6
ER
556cp -a %{SOURCE2} $RPM_BUILD_ROOT/etc/cron.d/%{name}-mail-queue
557cp -a %{SOURCE3} $RPM_BUILD_ROOT/etc/cron.d/%{name}-mail-download
558cp -a %{SOURCE4} $RPM_BUILD_ROOT/etc/cron.d/%{name}-reminder
559cp -a %{SOURCE5} $RPM_BUILD_ROOT/etc/cron.d/%{name}-monitor
77b3db3b 560cp -a %{SOURCE7} $RPM_BUILD_ROOT%{_webappdir}/irc_config.php
31dabce6
ER
561cp -a %{SOURCE8} $RPM_BUILD_ROOT/etc/rc.d/init.d/eventum-irc
562cp -a %{SOURCE9} $RPM_BUILD_ROOT/etc/sysconfig/eventum-irc
563
564
565%{__sed} -i -e "/define('APP_VERSION'/ {
0bb7ad7c 566 idefine('APP_VERSION', '%{version}%{?snap:-%{snap}}%{?_rc:-%{_rc}}%{?svn:-%{svn}}');
31dabce6
ER
567 d
568
569}" $RPM_BUILD_ROOT%{_appdir}/htdocs/init.php
bb01d732 570
cfc3bce6 571# config
8a37ad9d 572> $RPM_BUILD_ROOT%{_webappdir}/setup.php
08196fe2
ER
573cat <<'EOF'> $RPM_BUILD_ROOT%{_webappdir}/config.php
574EOF
cfc3bce6 575
085e39c0
ER
576install -d $RPM_BUILD_ROOT%{_smartyplugindir}
577# These plugins are not in Smarty package (Smarty-2.6.2-3)
15502563
ER
578cp -a \
579 include/Smarty/plugins/function.{calendar,get_{display_style,innerhtml,textarea_size}}.php \
580 include/Smarty/plugins/modifier.highlight_quoted.php \
9500cdeb 581 $RPM_BUILD_ROOT%{_smartyplugindir}
085e39c0 582
a6d2ad69 583# qmail router
37996833 584%if %{with qmail}
a6d2ad69
ER
585d=$RPM_BUILD_ROOT/var/lib/%{name}
586echo 'root' > $d/.qmail
587echo 'root' > $d/.qmail-default
588echo '| %{_libdir}/router-qmail drafts' > $d/.qmail-draft-default
589echo '| %{_libdir}/router-qmail emails 1' > $d/.qmail-issue-default
590echo '| %{_libdir}/router-qmail notes' > $d/.qmail-note-default
cfcdd0a9 591install %{SOURCE10} $RPM_BUILD_ROOT%{_libdir}/router-qmail
37996833 592%endif
410d72c7 593# postfix router
cfcdd0a9 594install %{SOURCE13} $RPM_BUILD_ROOT%{_libdir}/router-postfix
a6d2ad69 595
cfcdd0a9 596install -D %{SOURCE14} $RPM_BUILD_ROOT/etc/logrotate.d/%{name}
465c3ab7
ER
597# locale
598cd misc/localization
78cfacd5
ER
599for a in */LC_MESSAGES/*.mo; do
600 d=${a%/*}
601 install -d $RPM_BUILD_ROOT%{_datadir}/locale/$d
602 cp -a $a $RPM_BUILD_ROOT%{_datadir}/locale/$d
465c3ab7
ER
603done
604cd -
605
600d96a0 606%find_lang %{name}
c1e74aa1 607
bb01d732
ER
608%clean
609rm -rf $RPM_BUILD_ROOT
610
01b84746
ER
611%pre
612%addusertogroup http %{name}
613
82121306 614%post
ec185415 615# check if the package is configured.
2bf6ebce 616if grep -q "Header('Location: setup/')" %{_webappdir}/config.php; then
ac9278b5 617if [ -f %{_appdir}/htdocs/setup/index.php ]; then
ec185415
ER
618%banner %{name} -e <<EOF
619
620You haven't yet configured Eventum!
ac9278b5
ER
621Please open in browser <http://localhost/eventum/>
622If you need access from elsewhere, you need to edit
8a37ad9d 623%{_webappdir}/apache.conf and restart apache.
ec185415 624
ac9278b5
ER
625IMPORTANT: When You have configured Eventum, please uninstall the
626setup package, so that %{name}-setup is able to secure your Eventum
627installation.
ec185415 628
ac9278b5 629EOF
5b165428 630#' vim syntax hack
ac9278b5
ER
631else
632%banner %{name} -e <<EOF
633
634You haven't yet configured Eventum!
635
636To setup eventum, please install %{name}-setup and open in browser
637<http://localhost/eventum/>.
638If you need access from elsewhere, you need to edit
2bf6ebce 639%{_webappdir}/*.conf depending on webserver and restart the webserver.
ac9278b5
ER
640
641IMPORTANT: When You have configured Eventum, please uninstall the
642setup package, so that %{name}-setup is able to secure your Eventum
643installation.
ec185415
ER
644
645EOF
5b165428 646#' vim syntax hack
ac9278b5 647fi
47033007 648
8a37ad9d 649elif grep -q 'DEFAULTPRIVATEKEY' %{_webappdir}/private_key.php; then
47033007
ER
650%banner %{name} -e <<EOF
651
652You have default private key installed!
653
654Install %{name}-setup and open up http://yourserver/eventum/setup/
655-- that will help you setup initial config.
656
657when have configured Eventum, please uninstall the setup package,
658so that %{name}-setup is able to secure your Eventum installation.
659
660EOF
661 elif [ -d %{_appdir}/setup ]; then
107fc31b
ER
662%banner %{name} -e <<EOF
663
664If you have have configured Eventum, please uninstall the setup package,
665so that %{name}-setup is able to secure your Eventum installation.
666
667EOF
ec185415 668fi
94bd779f 669
08196fe2
ER
670# greate empty ghost files
671for a in cli.log errors.log irc_bot.log login_attempts.log; do
672 if [ ! -f /var/log/%{name}/$a ]; then
673 install -m620 -oroot -geventum /dev/null /var/log/%{name}/$a
674 fi
675done
676
847270fe
ER
677# database update
678%{_appdir}/upgrade/update-database.php || :
679
da8d6134
ER
680# nuke Smarty templates cache after upgrade
681rm -f /var/cache/eventum/*.php
682
82121306
ER
683%preun
684if [ "$1" = "0" ]; then
dfe0f6d6
ER
685 # nuke cache
686 rm -f /var/cache/eventum/*.php 2>/dev/null || :
687fi
cfc3bce6 688
01b84746 689%pre base
1d760108
ER
690%groupadd -P %{name}-base -g 146 %{name}
691%useradd -P %{name}-base -u 146 -d /var/lib/%{name} -g %{name} -c "Eventum User" %{name}
01b84746
ER
692
693%postun base
694if [ "$1" = "0" ]; then
a6d2ad69 695 %userremove %{name}
1f52d1fe 696 %groupremove %{name}
a6d2ad69
ER
697fi
698
699%post router-qmail
700CF=/etc/qmail/control/virtualdomains
701if ! grep -q ':%{name}\b' $CF 2>/dev/null; then
8a37ad9d 702 FQDN=$(awk -F'"' '/define/ && $2 ~ /APP_HOSTNAME/ {print $4}' %{_webappdir}/config.php 2>/dev/null)
1f52d1fe 703 [ "$FQDN" ] || FQDN=$(hostname -f 2>/dev/null || echo localhost)
a6d2ad69
ER
704 umask 022
705 echo "#${FQDN}:%{name}" >> $CF
706
707%banner %{name}-qmail -e <<EOF
708
709Added "#${FQDN}:%{name}" to $CF,
710Please verify that it is correct and restart qmail:
711# service qmail reload
712
1f52d1fe 713Consult qmail-send(8) for more information on virtualdomains.
a6d2ad69
ER
714
715EOF
716fi
717
718%preun router-qmail
719if [ "$1" = "0" ]; then
720 sed -i -e '/:%{name}\b/d' /etc/qmail/control/virtualdomains
01b84746
ER
721fi
722
94bd779f 723%post setup
8a37ad9d
ER
724chmod 660 %{_webappdir}/{config,private_key}.php
725chown root:eventum %{_webappdir}/{config,private_key}.php
94bd779f
ER
726
727%postun setup
728if [ "$1" = "0" ]; then
8a37ad9d
ER
729 chmod 640 %{_webappdir}/{config,private_key}.php
730 chown root:eventum %{_webappdir}/{config,private_key}.php
94bd779f
ER
731fi
732
e1c0f343
ER
733%post irc
734/sbin/chkconfig --add eventum-irc
99bbe3cb 735%service eventum-irc restart "Eventum IRC Bot"
e1c0f343 736
add0e245
ER
737%preun irc
738if [ "$1" = 0 ]; then
739 %service eventum-irc stop
740 /sbin/chkconfig --del eventum-irc
741fi
742
09f58a75 743%triggerin -- apache1 < 1.3.37-3, apache1-base
bdf85dc8 744%webapp_register apache %{_webapp}
1d760108 745
09f58a75 746%triggerun -- apache1 < 1.3.37-3, apache1-base
bdf85dc8 747%webapp_unregister apache %{_webapp}
1d760108 748
00e0fc89 749%triggerin -- apache < 2.2.0, apache-base
bdf85dc8 750%webapp_register httpd %{_webapp}
1d760108 751
00e0fc89 752%triggerun -- apache < 2.2.0, apache-base
bdf85dc8 753%webapp_unregister httpd %{_webapp}
1d760108 754
f399f1c0
ER
755%triggerin -- lighttpd
756%webapp_register lighttpd %{_webapp}
757
758%triggerun -- lighttpd
759%webapp_unregister lighttpd %{_webapp}
760
847270fe 761%triggerpostun -- eventum < 2.1.1-2.13
0bb7ad7c 762%{_appdir}/upgrade/upgrade.sh %{_appdir}/upgrade/v2.1.1_to_v2.2 <<EOF
847270fe 763db_version.php Add eventum_version table
0bb7ad7c 764EOF
847270fe
ER
765# automated database update
766%{_appdir}/upgrade/update-database.php || :
fb0b2f83 767
600d96a0 768%files -f %{name}.lang
bb01d732 769%defattr(644,root,root,755)
5e8e4e5e 770%doc ChangeLog FAQ INSTALL README UPGRADE CONTRIB
3d92cbd2 771%doc docs/* setup/schema.sql mysql-permissions.sql
8a37ad9d
ER
772%attr(751,root,root) %dir %{_webappdir}
773%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_webappdir}/apache.conf
774%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_webappdir}/httpd.conf
f399f1c0 775%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_webappdir}/lighttpd.conf
8a37ad9d
ER
776%attr(640,root,eventum) %config(noreplace) %verify(not md5 mtime size) %{_webappdir}/config.php
777%attr(640,root,eventum) %config(noreplace) %verify(not md5 mtime size) %{_webappdir}/private_key.php
778%attr(660,root,eventum) %config(noreplace) %verify(not md5 mtime size) %{_webappdir}/setup.php
f399f1c0 779%attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_webappdir}/htpasswd
d2e501e8 780
01b84746
ER
781%dir %attr(731,root,eventum) /var/log/%{name}
782%attr(620,root,eventum) %ghost /var/log/%{name}/*
3c6aa7a9 783%dir %attr(750,root,root) /var/log/archive/%{name}
8fd047ac 784%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/%{name}
35f9d6a3 785
cfc3bce6
ER
786%dir %{_appdir}/htdocs
787%{_appdir}/htdocs/*.php
da8d6134 788%{_appdir}/htdocs/*.ico
cfc3bce6
ER
789%{_appdir}/htdocs/css
790%{_appdir}/htdocs/customer
791%{_appdir}/htdocs/images
792%{_appdir}/htdocs/js
793%{_appdir}/htdocs/manage
794%{_appdir}/htdocs/reports
795%{_appdir}/htdocs/rpc
796%{_appdir}/htdocs/misc
422dcc8e
ER
797%if %{with order}
798%{_appdir}/htdocs/ajax
799%endif
9748a8c3 800%{_appdir}/templates
847270fe 801
c9165420
ER
802%dir %{_appdir}/upgrade
803%attr(755,root,root) %{_appdir}/upgrade/upgrade.sh
847270fe
ER
804%attr(755,root,root) %{_appdir}/upgrade/update-database.php
805%dir %{_appdir}/upgrade/v*
806%attr(755,root,root) %{_appdir}/upgrade/v*/*.php
807%{_appdir}/upgrade/patches
808
ddcd51d0 809%{_smartyplugindir}
085e39c0 810
9748a8c3
ER
811%dir %{_appdir}/include
812%{_appdir}/include/customer
1c9d2c71 813%{_appdir}/include/custom_field
9748a8c3 814%{_appdir}/include/jpgraph
9748a8c3 815%{_appdir}/include/workflow
c11e5ae6 816%{_appdir}/include/autoload.php
847270fe 817%{_appdir}/include/class.*.php
c96aabf5 818%{_appdir}/include/db_access.php
847270fe 819%exclude %{_appdir}/include/class.monitor.php
9748a8c3 820
01b84746
ER
821%dir %attr(730,root,eventum) /var/run/%{name}
822%dir %attr(730,root,eventum) /var/cache/%{name}
ab983aaa 823
d2e501e8
ER
824%files base
825%defattr(644,root,root,755)
826%attr(751,root,root) %dir %{_sysconfdir}
a392a259 827%dir %{_libdir}
cfc3bce6 828%dir %{_appdir}
1f52d1fe
ER
829# qmail will ignore user, if it's home directory is not owned
830%attr(750,eventum,eventum) %dir /var/lib/%{name}
89522a33 831# saved mail copies
1d760108 832%attr(770,root,eventum) %dir /var/lib/%{name}/routed_emails
89522a33
ER
833%attr(770,root,eventum) %dir /var/lib/%{name}/routed_drafts
834%attr(770,root,eventum) %dir /var/lib/%{name}/routed_notes
d2e501e8 835
ab983aaa
ER
836%files setup
837%defattr(644,root,root,755)
cfc3bce6 838%{_appdir}/htdocs/setup
0da8e1f2
ER
839
840%files mail-queue
841%defattr(644,root,root,755)
16902912 842%attr(755,root,root) %{_appdir}/process_mail_queue.php
ea084bcb
ER
843%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/cron.d/%{name}-mail-queue
844
845%files mail-download
846%defattr(644,root,root,755)
790ebceb 847%attr(755,root,root) %{_appdir}/download_emails.php
ea084bcb 848%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/cron.d/%{name}-mail-download
5cb2e61d 849
cd719538
ER
850%files reminder
851%defattr(644,root,root,755)
16902912 852%attr(755,root,root) %{_appdir}/check_reminders.php
cd719538
ER
853%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/cron.d/%{name}-reminder
854
855%files monitor
856%defattr(644,root,root,755)
c96aabf5 857%{_appdir}/include/class.monitor.php
16902912 858%attr(755,root,root) %{_appdir}/monitor.php
cd719538
ER
859%attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/cron.d/%{name}-monitor
860
5b165428
ER
861%files route-drafts
862%defattr(644,root,root,755)
410d72c7 863%attr(755,root,root) %{_appdir}/route_drafts.php
5b165428 864
cd719538
ER
865%files route-emails
866%defattr(644,root,root,755)
410d72c7 867%attr(755,root,root) %{_appdir}/route_emails.php
cd719538
ER
868
869%files route-notes
870%defattr(644,root,root,755)
410d72c7 871%attr(755,root,root) %{_appdir}/route_notes.php
cd719538 872
5e76225b 873%if %{with qmail}
a6d2ad69
ER
874%files router-qmail
875%defattr(644,root,root,755)
876%attr(640,root,eventum) %config(noreplace) %verify(not md5 mtime size) /var/lib/%{name}/.qmail*
877%attr(755,root,root) %{_libdir}/router-qmail
6ee43cd6 878%endif
a6d2ad69
ER
879
880%files router-postfix
881%defattr(644,root,root,755)
410d72c7 882%attr(755,root,root) %{_libdir}/router-postfix
a6d2ad69 883
cd719538
ER
884%files irc
885%defattr(644,root,root,755)
77b3db3b 886%attr(640,root,eventum) %config(noreplace) %verify(not md5 mtime size) %{_webappdir}/irc_config.php
01b84746 887%attr(640,root,eventum) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/eventum-irc
71f56750 888%attr(755,root,root) %{_sbindir}/%{name}-bot
cd719538
ER
889%attr(754,root,root) /etc/rc.d/init.d/%{name}-irc
890
abd490e4
ER
891%files cli
892%defattr(644,root,root,755)
893%doc eventumrc
ca6b8520 894%config %verify(not md5 mtime size) %{_sysconfdir}/cli.php
d2e501e8 895%attr(755,root,root) %{_bindir}/%{name}
cfc3bce6 896%{_appdir}/cli
abd490e4 897
5cb2e61d
ER
898%files scm
899%defattr(644,root,root,755)
ca6b8520 900%config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/scm.php
bd7564e0
ER
901%attr(755,root,root) %{_libdir}/process_cvs_commits
902%attr(755,root,root) %{_libdir}/process_svn_commits
This page took 0.254183 seconds and 4 git commands to generate.