]> git.pld-linux.org Git - packages/eventum.git/blob - eventum.spec
- can it go even better?
[packages/eventum.git] / eventum.spec
1 # TODO
2 # - php5 is not tested, but not placing hard conflict on it, as it prevents php4 & php coinstallation
3 # - discard bundled packages (from INSTALL):
4 #  - JpGraph 1.5.3 (last GPL version)
5 #  - Smarty 2.3.0 (http://smarty.php.net)
6 #  - PEAR packages
7 #  - dTree 2.0.5 (http://www.destroydrop.com/javascript/tree/)
8 #  - dynCalendar.js (http://www.phpguru.org/dyncalendar.html)
9 #  - overLIB 3.5.1 (http://www.bosrup.com/web/overlib/)
10 #  - A few other small javascript libraries
11 # - Mail Queue Process, cron or separate package (misc/process_mail_queue.php)
12 # - Email Download (misc/download_emails.php)
13 # - Reminder System (misc/check_reminders.php)
14 # - Heartbeat Monitor (misc/monitor.php)
15 # - Email Routing Script (misc/route_emails.php)
16 # - Note Routing Script (misc/route_notes.php)
17 # - IRC Notification Bot (misc/irc/bot.php)
18 # - Command-line Interface (misc/cli/eventum)
19
20 # snapshot: DATE
21 #define _snap 20050114
22
23 %if 0%{?_snap}
24 %define _source http://downloads.mysql.com/snapshots/%{name}/%{name}-nightly-%{_snap}.tar.gz
25 %else
26 %define _source http://mysql.wildyou.net/Downloads/%{name}/%{name}-%{version}.tar.gz
27 %endif
28
29 %define _rel 1.33
30
31 Summary:        Eventum Issue / Bug Tracking System
32 Name:           eventum
33 Version:        1.4
34 Release:        %{?_snap:0.%{_snap}.}%{_rel}
35 License:        GPL
36 Group:          Applications/WWW
37 Source0:        %{_source}
38 # Source0-md5:  361c1355e46a6bbfa54e420964ec92cf
39 Source1:        %{name}-apache.conf
40 Patch0:         %{name}-rpm.patch
41 Patch1:         %{name}-clock-status.patch
42 URL:            http://dev.mysql.com/downloads/other/eventum/index.html
43 BuildRequires:  sed >= 4.0
44 BuildRequires:  rpmbuild(macros) >= 1.177
45 Requires:       php >= 4.1.0
46 Requires:       php-pcre
47 Requires:       php-mysql
48 Requires:       php-gd
49 Requires:       php-imap
50 #Requires:      apache-mod_dir
51 # conflict with non-confdir apache
52 Conflicts:      apache1 < 1.3.33-1.1
53 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
54
55 %define         _sysconfdir     /etc/%{name}
56 %define         _appdir %{_datadir}/%{name}
57
58 %define         _apache1dir     /etc/apache
59 %define         _apache2dir     /etc/httpd
60
61 %description
62 Eventum is a user-friendly and flexible issue tracking system that can
63 be used by a support department to track incoming technical support
64 requests, or by a software development team to quickly organize tasks
65 and bugs. Eventum is used by the MySQL AB Technical Support team, and
66 has allowed us to dramatically improve our response times.
67
68 %package setup
69 Summary:        Eventum setup package.
70 Group:          Applications/WWW
71 PreReq:         %{name}
72 Requires:       %{name} = %{epoch}:%{version}-%{release}
73
74 %description setup
75 Install this package to configure initial Eventum installation. You
76 should uninstall this package when you're done, as it considered
77 insecure to keep the setup files in place.
78
79 %prep
80 %setup -q %{?_snap:-n %{name}-%{_snap}}
81 %patch0 -p1
82 %patch1 -p1
83
84 %build
85
86 %install
87 rm -rf $RPM_BUILD_ROOT
88
89 install -d $RPM_BUILD_ROOT{%{_sysconfdir},%{_appdir}/{locks,templates_c}}
90
91 cp -a . $RPM_BUILD_ROOT%{_appdir}
92
93 > $RPM_BUILD_ROOT%{_appdir}/setup.conf.php
94
95 sed -i -e 's,/usr/local/bin/php,/usr/bin/php4,' $RPM_BUILD_ROOT%{_appdir}/misc/cli/eventum
96
97 install %{SOURCE1} $RPM_BUILD_ROOT%{_sysconfdir}/apache.conf
98
99 # in doc
100 rm -f $RPM_BUILD_ROOT%{_appdir}/{COPYING,ChangeLog,FAQ,INSTALL,README,UPGRADE}
101 rm -rf $RPM_BUILD_ROOT%{_appdir}/misc/upgrade
102
103 %clean
104 rm -rf $RPM_BUILD_ROOT
105
106 %post
107 # apache1
108 if [ -f %{_apache1dir}/apache.conf ]; then
109         ln -sf %{_sysconfdir}/apache.conf %{_apache1dir}/conf.d/99_%{name}.conf
110         if [ -f /var/lock/subsys/apache ]; then
111                 /etc/rc.d/init.d/apache restart 1>&2
112         fi
113 fi
114 # apache2
115 if [ -d %{_apache2dir}/httpd.conf ]; then
116         ln -sf %{_sysconfdir}/apache.conf %{_apache2dir}/httpd.conf/99_%{name}.conf
117         if [ -f /var/lock/subsys/httpd ]; then
118                 /etc/rc.d/init.d/httpd restart 1>&2
119         fi
120 fi
121
122 # check if the package is configured.
123 if grep -q 'header("Location: setup/")' %{_appdir}/config.inc.php; then
124 %banner %{name} -e <<EOF
125
126 You haven't yet configured Eventum!
127
128 Install %{name}-setup and open up http://yourserver/eventum/
129 -- that will help you setup initial config.
130
131 when have configured Eventum, please uninstall the setup package,
132 so that %{name}-setup is able to secure your Eventum installation.
133
134 EOF
135 #' vim stupidity.
136 else
137         if [ -d %{_appdir}/setup ]; then
138 %banner %{name} -e <<EOF
139
140 If you have have configured Eventum, please uninstall the setup package,
141 so that %{name}-setup is able to secure your Eventum installation.
142
143 EOF
144         fi
145 fi
146
147 %preun
148 if [ "$1" = "0" ]; then
149         # apache1
150         if [ -f %{_apache1dir}/apache.conf ]; then
151                 rm -f %{_apache1dir}/conf.d/99_%{name}.conf
152                 if [ -f /var/lock/subsys/apache ]; then
153                         /etc/rc.d/init.d/apache restart 1>&2
154                 fi
155         fi
156         # apache2
157         if [ -d %{_apache2dir}/httpd.conf ]; then
158                 rm -f %{_apache1dir}/httpd.conf/99_%{name}.conf
159                 if [ -f /var/lock/subsys/httpd ]; then
160                         /etc/rc.d/init.d/httpd restart 1>&2
161                 fi
162         fi
163 fi
164
165 %post setup
166 # RACE possible? chmod just in case
167 chmod 640 %{_appdir}/{config.inc,setup.conf}.php
168 chown http:root %{_appdir}/{config.inc,setup.conf}.php
169
170 %postun setup
171 if [ "$1" = "0" ]; then
172         # RACE condition possible?
173         chmod 640 %{_appdir}/{config.inc,setup.conf}.php
174         chown root:http %{_appdir}/{config.inc,setup.conf}.php
175 fi
176
177 %files
178 %defattr(644,root,root,755)
179 %doc ChangeLog FAQ INSTALL README UPGRADE misc/upgrade
180 %dir %{_sysconfdir}
181 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/apache.conf
182
183 %dir %{_appdir}
184 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_appdir}/config.inc.php
185 %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_appdir}/setup.conf.php
186 %{_appdir}/*[!cf].php
187
188 %{_appdir}/css
189 %{_appdir}/customer
190 %{_appdir}/docs
191 %{_appdir}/images
192 %{_appdir}/js
193 %{_appdir}/manage
194 %{_appdir}/misc
195 %{_appdir}/reports
196 %{_appdir}/rpc
197 %{_appdir}/templates
198
199 %dir %attr(750,http,root) %{_appdir}/locks
200
201 %dir %{_appdir}/include
202 %{_appdir}/include/customer
203 %{_appdir}/include/jpgraph
204 %{_appdir}/include/pear
205 %{_appdir}/include/Smarty
206 %{_appdir}/include/workflow
207 %{_appdir}/include/class.*
208 %{_appdir}/include/db_access.php
209 %{_appdir}/include/jsrsServer.inc.php
210 %attr(640,http,root) %{_appdir}/include/private_key.php
211
212 %dir %attr(731,root,http) %{_appdir}/logs
213 %attr(640,http,root) %config(noreplace) %verify(not md5 mtime size) %{_appdir}/logs/*
214
215 %dir %attr(750,http,root) %{_appdir}/templates_c
216
217 %files setup
218 %defattr(644,root,root,755)
219 %{_appdir}/setup
This page took 0.080818 seconds and 4 git commands to generate.