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