]> git.pld-linux.org Git - packages/nginx.git/blob - nginx.spec
- release 2 (by relup.sh)
[packages/nginx.git] / nginx.spec
1 # TODO
2 # - /etc/sysconfig/nginx file
3 # - missing perl build/install requires
4 # - mod_spdy build http://mailman.nginx.org/pipermail/nginx-devel/2012-June/002343.html patch from http://nginx.org/patches/attic/spdy/
5 #   http://nginx.org/en/docs/http/ngx_http_spdy_module.html
6 #
7 # Conditional build for nginx:
8 %bcond_without  light           # don't build light version
9 %bcond_without  mail            # don't build imap/mail proxy
10 %bcond_without  perl            # don't build with perl module
11 %bcond_without  addition        # adds module
12 %bcond_without  dav             # WebDAV
13 %bcond_without  flv             # FLV stream
14 %bcond_without  ipv6            # build without ipv6 support
15 %bcond_without  sub             # ngx_http_sub_module
16 %bcond_without  poll            # poll
17 %bcond_without  realip          # real ip (behind proxy)
18 %bcond_without  rtsig           # rtsig
19 %bcond_without  select          # select
20 %bcond_without  status          # stats module
21 %bcond_without  ssl             # ssl support
22 %bcond_with     http_browser    # header "User-agent" parser
23 %bcond_without  rtmp            # rtmp support
24 %bcond_without  auth_request    # auth_request module
25
26 %define         rtmp_version    1.1.3
27 Summary:        High perfomance HTTP and reverse proxy server
28 Summary(pl.UTF-8):      Serwer HTTP i odwrotne proxy o wysokiej wydajności
29 # nginx lines:
30 # - stable: production quality with stable API
31 # - mainline: production quality but API can change
32 Name:           nginx
33 Version:        1.7.3
34 Release:        2
35 License:        BSD-like
36 Group:          Networking/Daemons/HTTP
37 Source0:        http://nginx.org/download/%{name}-%{version}.tar.gz
38 # Source0-md5:  2b7f37f86e0af9bbb109c4dc225c6247
39 Source1:        http://nginx.net/favicon.ico
40 # Source1-md5:  2aaf2115c752cbdbfb8a2f0b3c3189ab
41 Source2:        proxy.conf
42 Source3:        %{name}.logrotate
43 Source4:        %{name}.mime
44 Source5:        %{name}-light.conf
45 Source6:        %{name}-light.monitrc
46 Source7:        %{name}-light.init
47 Source8:        %{name}-mail.conf
48 Source9:        %{name}-mail.monitrc
49 Source10:       %{name}-mail.init
50 Source11:       %{name}-perl.conf
51 Source12:       %{name}-perl.monitrc
52 Source13:       %{name}-perl.init
53 Source14:       %{name}-standard.conf
54 Source15:       %{name}-standard.monitrc
55 Source16:       %{name}-standard.init
56 Source17:       %{name}-mime.types.sh
57 Source18:       %{name}-standard.service
58 Source19:       %{name}-light.service
59 Source20:       %{name}-perl.service
60 Source21:       %{name}-mail.service
61 Source101:      https://github.com/arut/nginx-rtmp-module/archive/v%{rtmp_version}.tar.gz
62 # Source101-md5:        66ee2b74799e03a25a9e3aaadd874436
63 Patch0:         nginx-no-Werror.patch
64 URL:            http://nginx.net/
65 BuildRequires:  mailcap
66 BuildRequires:  openssl-devel
67 BuildRequires:  pcre-devel
68 %{?with_perl:BuildRequires: perl-CGI}
69 %{?with_perl:BuildRequires: perl-devel}
70 %{?with_perl:BuildRequires: python}
71 %{?with_perl:BuildRequires: rpm-perlprov}
72 BuildRequires:  rpmbuild(macros) >= 1.644
73 BuildRequires:  zlib-devel
74 BuildRoot:      %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
75
76 %define         _sysconfdir     /etc/%{name}
77 %define         _nginxdir       /home/services/%{name}
78
79 %description
80 nginx ("engine x") is a high-performance HTTP server and reverse
81 proxy, as well as an IMAP/POP3 proxy server. nginx was written by Igor
82 Sysoev for Rambler.ru, Russia's second-most visited website, where it
83 has been running in production for over two and a half years. Igor has
84 released the source code under a BSD-like license. Although still in
85 beta, nginx is known for its stability, rich feature set, simple
86 configuration, and low resource consumption.
87
88 %description -l pl.UTF-8
89 nginx ("engine x") jest wysokowydajnym serwerem HTTP, odwrotnym proxy
90 a także IMAP/POP3 proxy. nginx został napisany przez Igora Sysoeva
91 na potrzeby serwisu Rambler.ru. Jest to drugi pod względem ilości
92 odwiedzin serwis w Rosji i działa od ponad dwóch i pół roku. Igor
93 opublikował źródła na licencji BSD. Mimo, że projekt jest ciągle
94 w fazie beta, już zasłynął dzięki stabilności, bogactwu dodatków,
95 prostej konfiguracji oraz małej "zasobożerności".
96
97 %package common
98 Summary:        nginx - common files
99 Summary(pl.UTF-8):      nginx - pliki wspólne
100 Group:          Networking/Daemons/HTTP
101 Requires(postun):       /usr/sbin/groupdel
102 Requires(postun):       /usr/sbin/userdel
103 Requires(pre):  /bin/id
104 Requires(pre):  /usr/bin/getgid
105 Requires(pre):  /usr/sbin/groupadd
106 Requires(pre):  /usr/sbin/useradd
107 Requires:       openssl
108 Requires:       pcre
109 Requires:       rc-scripts >= 0.2.0
110 Requires:       systemd-units >= 38
111 Requires:       zlib
112 Provides:       group(http)
113 Provides:       group(nginx)
114 Provides:       user(nginx)
115 Provides:       webserver
116 Conflicts:      logrotate < 3.8.0
117 Obsoletes:      %{name} < 1.4.1-4.1
118
119 %description common
120 Common files for the nginx daemon.
121
122 %description common -l pl.UTF-8
123 Niezbędne pliki dla nginx.
124
125 %package light
126 Summary:        High perfomance HTTP and reverse proxy server
127 Summary(pl.UTF-8):      Serwer HTTP i odwrotne proxy o wysokiej wydajności
128 Group:          Networking/Daemons/HTTP
129 Requires(post,preun):   /sbin/chkconfig
130 Requires(post,preun,postun):    systemd-units >= 38
131 Requires:       %{name}-common = %{version}-%{release}
132 Requires:       openssl
133 Requires:       pcre
134 Requires:       zlib
135 Provides:       nginx-daemon
136 Provides:       webserver
137
138 %description light
139 nginx ("engine x") is a high-performance HTTP server and reverse
140 proxy, as well as an IMAP/POP3 proxy server. nginx was written by Igor
141 Sysoev for Rambler.ru, Russia's second-most visited website, where it
142 has been running in production for over two and a half years. Igor has
143 released the source code under a BSD-like license. Although still in
144 beta, nginx is known for its stability, rich feature set, simple
145 configuration, and low resource consumption.
146
147 The smallest, but also the fastest nginx edition. No additional
148 modules, no Perl, no DAV, no FLV, no IMAP, POP3, SMTP proxy.
149
150 %description light -l pl.UTF-8
151 nginx ("engine x") jest wysokowydajnym serwerem HTTP, odwrotnym proxy
152 a także IMAP/POP3 proxy. nginx został napisany przez Igora Sysoeva
153 na potrzeby serwisu Rambler.ru. Jest to drugi pod względem ilości
154 odwiedzin serwis w Rosji i działa od ponad dwóch i pół roku. Igor
155 opublikował źródła na licencji BSD. Mimo, że projekt jest ciągle
156 w fazie beta, już zasłynął dzięki stabilności, bogactwu dodatków,
157 prostej konfiguracji oraz małej "zasobożerności".
158
159 Najmniejsza i najszybsza wersja nginx. Bez wsparcia dla Perla, DAV,
160 FLV oraz IMAP, POP3, SMTP proxy.
161
162 %package perl
163 Summary:        High perfomance HTTP and reverse proxy server
164 Summary(pl.UTF-8):      Serwer HTTP i odwrotne proxy o wysokiej wydajności
165 Group:          Networking/Daemons/HTTP
166 Requires(post,preun):   /sbin/chkconfig
167 Requires(post,preun,postun):    systemd-units >= 38
168 Requires:       %{name}-common = %{version}-%{release}
169 Requires:       openssl
170 Provides:       nginx-daemon
171 Provides:       webserver
172
173 %description perl
174 nginx ("engine x") is a high-performance HTTP server and reverse
175 proxy, as well as an IMAP/POP3 proxy server. nginx was written by Igor
176 Sysoev for Rambler.ru, Russia's second-most visited website, where it
177 has been running in production for over two and a half years. Igor has
178 released the source code under a BSD-like license. Although still in
179 beta, nginx is known for its stability, rich feature set, simple
180 configuration, and low resource consumption.
181
182 nginx with Perl support. Mail modules not included.
183
184 %description perl -l pl.UTF-8
185 nginx ("engine x") jest wysokowydajnym serwerem HTTP, odwrotnym proxy
186 a także IMAP/POP3 proxy. nginx został napisany przez Igora Sysoeva
187 na potrzeby serwisu Rambler.ru. Jest to drugi pod względem ilości
188 odwiedzin serwis w Rosji i działa od ponad dwóch i pół roku. Igor
189 opublikował źródła na licencji BSD. Mimo, że projekt jest ciągle
190 w fazie beta, już zasłynął dzięki stabilności, bogactwu dodatków,
191 prostej konfiguracji oraz małej "zasobożerności".
192
193 nginx z obsługą Perla. Bez wsparcia dla modułów poczty.
194
195 %package mail
196 Summary:        High perfomance IMAP, POP3, SMTP proxy server
197 Summary(pl.UTF-8):      IMAP, POP3, SMTP proxy o wysokiej wydajności
198 Group:          Networking/Daemons/HTTP
199 Requires(post,preun):   /sbin/chkconfig
200 Requires(post,preun,postun):    systemd-units >= 38
201 Requires:       %{name}-common = %{version}-%{release}
202 Requires:       openssl
203 Requires:       pcre
204 Requires:       zlib
205 Provides:       nginx-daemon
206
207 %description mail
208 nginx ("engine x") is a high-performance HTTP server and reverse
209 proxy, as well as an IMAP/POP3 proxy server. nginx was written by Igor
210 Sysoev for Rambler.ru, Russia's second-most visited website, where it
211 has been running in production for over two and a half years. Igor has
212 released the source code under a BSD-like license. Although still in
213 beta, nginx is known for its stability, rich feature set, simple
214 configuration, and low resource consumption.
215
216 nginx with mail support. Only mail modules included.
217
218 %description mail -l pl.UTF-8
219 nginx ("engine x") jest wysokowydajnym serwerem HTTP, odwrotnym proxy
220 a także IMAP/POP3 proxy. nginx został napisany przez Igora Sysoeva
221 na potrzeby serwisu Rambler.ru. Jest to drugi pod względem ilości
222 odwiedzin serwis w Rosji i działa od ponad dwóch i pół roku. Igor
223 opublikował źródła na licencji BSD. Mimo, że projekt jest ciągle
224 w fazie beta, już zasłynął dzięki stabilności, bogactwu dodatków,
225 prostej konfiguracji oraz małej "zasobożerności".
226
227 nginx ze wsparciem tylko dla modułów poczty.
228
229 %package standard
230 Summary:        High perfomance HTTP and reverse proxy server
231 Summary(pl.UTF-8):      Serwer HTTP i odwrotne proxy o wysokiej wydajności
232 Group:          Networking/Daemons/HTTP
233 Requires(post,preun):   /sbin/chkconfig
234 Requires(post,preun,postun):    systemd-units >= 38
235 Requires:       %{name}-common = %{version}-%{release}
236 Requires:       openssl
237 Provides:       nginx
238 Provides:       nginx-daemon
239 Conflicts:      logrotate < 3.7-4
240
241 %description standard
242 nginx ("engine x") is a high-performance HTTP server and reverse
243 proxy, as well as an IMAP/POP3 proxy server. nginx was written by Igor
244 Sysoev for Rambler.ru, Russia's second-most visited website, where it
245 has been running in production for over two and a half years. Igor has
246 released the source code under a BSD-like license. Although still in
247 beta, nginx is known for its stability, rich feature set, simple
248 configuration, and low resource consumption.
249
250 This is standard nginx version, without Perl support and IMAP, POP3,
251 SMTP proxy. 
252
253 %description standard -l pl.UTF-8
254 nginx ("engine x") jest wysokowydajnym serwerem HTTP, odwrotnym proxy
255 a także IMAP/POP3 proxy. nginx został napisany przez Igora Sysoeva
256 na potrzeby serwisu Rambler.ru. Jest to drugi pod względem ilości
257 odwiedzin serwis w Rosji i działa od ponad dwóch i pół roku. Igor
258 opublikował źródła na licencji BSD. Mimo, że projekt jest ciągle
259 w fazie beta, już zasłynął dzięki stabilności, bogactwu dodatków,
260 prostej konfiguracji oraz małej "zasobożerności".
261 ginx ("engine x") jest wysokowydajnym serwerem HTTP, odwrotnym proxy
262 a także IMAP/POP3 proxy. nginx został napisany przez Igora Sysoeva
263 na potrzeby serwisu Rambler.ru. Jest to drugi pod względem ilości
264 odwiedzin serwis w Rosji i działa od ponad dwóch i pół roku. Igor
265 opublikował źródła na licencji BSD. Mimo, że projekt jest ciągle
266 w fazie beta, już zasłynął dzięki stabilności, bogactwu dodatków,
267 prostej konfiguracji oraz małej "zasobożerności".
268
269 To jest standardowa wersja nginx, bez obsługi Perla oraz proxy dla
270 IMAP, POP3, SMTP.
271
272 %package -n monit-rc-nginx
273 Summary:        nginx support for monit
274 Summary(pl.UTF-8):      Wsparcie nginx dla monit
275 Group:          Applications/System
276 URL:            http://nginx.eu/
277 Requires:       %{name}-common = %{version}-%{release}
278 Requires:       monit
279
280 %description -n monit-rc-nginx
281 monitrc file for monitoring nginx webserver.
282
283 %description -n monit-rc-nginx -l pl.UTF-8
284 Plik monitrc do monitorowania serwera WWW nginx.
285
286 %prep
287 %setup -q %{?with_rtmp:-a101}
288 %patch0 -p0
289
290 %if %{with rtmp}
291 mv nginx-rtmp-module-%{rtmp_version} nginx-rtmp-module
292 %endif
293
294 # build mime.types.conf
295 #sh %{SOURCE17} /etc/mime.types
296
297 %build
298 # NB: not autoconf generated configure
299 cp -f configure auto/
300 #
301 %if %{with perl}
302 ./configure \
303         --prefix=%{_prefix} \
304         --sbin-path=%{_sbindir}/%{name}-perl \
305         --conf-path=%{_sysconfdir}/%{name}-perl.conf \
306         --error-log-path=%{_localstatedir}/log/%{name}/%{name}-perl_error.log \
307         --http-log-path=%{_localstatedir}/log/%{name}/%{name}-perl_access.log \
308         --pid-path=%{_localstatedir}/run/%{name}-perl.pid \
309         --lock-path=%{_localstatedir}/lock/subsys/%{name}-perl \
310         --user=nginx \
311         --group=nginx \
312         --with-http_perl_module \
313         --without-mail_pop3_module \
314         --without-mail_imap_module \
315         --without-mail_smtp_module \
316         %{?with_addition:--with-http_addition_module} \
317         %{?with_dav:--with-http_dav_module} \
318         %{?with_flv:--with-http_flv_module} \
319         %{?with_ipv6:--with-ipv6} \
320         %{?with_sub:--with-http_sub_module} \
321         %{?with_poll:--with-poll_module} \
322         %{?with_realip:--with-http_realip_module} \
323         %{?with_rtsig:--with-rtsig_module} \
324         %{?with_select:--with-select_module} \
325         %{?with_status:--with-http_stub_status_module} \
326         %{?with_ssl:--with-http_ssl_module} \
327         %{!?with_http_browser:--without-http_browser_module} \
328         %{?with_rtmp:--add-module=./nginx-rtmp-module} \
329         %{?with_auth_request:--with-http_auth_request_module} \
330         --with-http_secure_link_module \
331         --http-client-body-temp-path=%{_localstatedir}/cache/%{name}-perl/client_body_temp \
332         --http-proxy-temp-path=%{_localstatedir}/cache/%{name}-perl/proxy_temp \
333         --http-fastcgi-temp-path=%{_localstatedir}/cache/%{name}-perl/fastcgi_temp \
334         --with-cc="%{__cc}" \
335         --with-cc-opt="%{rpmcflags}" \
336         --with-ld-opt="%{rpmldflags}"
337 %{__make}
338 mv -f objs/nginx contrib/nginx-perl
339 mv -f objs/src/http/modules/perl/blib/arch/auto/nginx/nginx.so contrib/nginx.so
340 mv -f objs/src/http/modules/perl/nginx.pm contrib/nginx.pm
341 %endif
342
343 %if %{with mail}
344 ./configure \
345         --prefix=%{_prefix} \
346         --sbin-path=%{_sbindir}/%{name}-mail \
347         --conf-path=%{_sysconfdir}/%{name}-mail.conf \
348         --error-log-path=%{_localstatedir}/log/%{name}/%{name}-mail_error.log \
349         --http-log-path=%{_localstatedir}/log/%{name}/%{name}-mail_access.log \
350         --pid-path=%{_localstatedir}/run/%{name}-mail.pid \
351         --lock-path=%{_localstatedir}/lock/subsys/%{name}-mail \
352         --user=nginx \
353         --group=nginx \
354         --with-imap \
355         --with-mail \
356         --with-mail_ssl_module \
357         --without-http \
358         %{?with_ipv6:--with-ipv6} \
359         %{?with_poll:--with-poll_module} \
360         %{?with_rtsig:--with-rtsig_module} \
361         %{?with_select:--with-select_module} \
362         --http-client-body-temp-path=%{_localstatedir}/cache/%{name}-mail/client_body_temp \
363         --http-proxy-temp-path=%{_localstatedir}/cache/%{name}-mail/proxy_temp \
364         --http-fastcgi-temp-path=%{_localstatedir}/cache/%{name}-mail/fastcgi_temp \
365         --with-cc="%{__cc}" \
366         --with-cc-opt="%{rpmcflags}" \
367         --with-ld-opt="%{rpmldflags}" \
368         %{?debug:--with-debug}
369 %{__make}
370 mv -f objs/nginx contrib/nginx-mail
371 %endif
372
373 %if %{with light}
374 ./configure \
375         --prefix=%{_prefix} \
376         --sbin-path=%{_sbindir}/%{name}-light \
377         --conf-path=%{_sysconfdir}/%{name}-light.conf \
378         --error-log-path=%{_localstatedir}/log/%{name}/%{name}-light_error.log \
379         --http-log-path=%{_localstatedir}/log/%{name}/%{name}-light_access.log \
380         --pid-path=%{_localstatedir}/run/%{name}-light.pid \
381         --lock-path=%{_localstatedir}/lock/subsys/%{name}-light \
382         --user=nginx \
383         --group=nginx \
384         %{?with_ipv6:--with-ipv6} \
385         %{?with_poll:--with-poll_module} \
386         %{?with_realip:--with-http_realip_module} \
387         %{?with_rtsig:--with-rtsig_module} \
388         %{?with_select:--with-select_module} \
389         %{?with_status:--with-http_stub_status_module} \
390         %{?with_ssl:--with-http_ssl_module} \
391         %{?with_rtmp:--add-module=./nginx-rtmp-module} \
392         %{?with_auth_request:--with-http_auth_request_module} \
393         --without-http_browser_module \
394         --without-mail_pop3_module \
395         --without-mail_imap_module \
396         --without-mail_smtp_module \
397         --with-http_secure_link_module \
398         --http-client-body-temp-path=%{_localstatedir}/cache/%{name}-light/client_body_temp \
399         --http-proxy-temp-path=%{_localstatedir}/cache/%{name}-light/proxy_temp \
400         --http-fastcgi-temp-path=%{_localstatedir}/cache/%{name}-light/fastcgi_temp \
401         --with-cc="%{__cc}" \
402         --with-cc-opt="%{rpmcflags}" \
403         --with-ld-opt="%{rpmldflags}" \
404         %{?debug:--with-debug}
405 %{__make}
406 mv -f objs/nginx contrib/nginx-light
407 %endif
408
409 ./configure \
410         --prefix=%{_prefix} \
411         --sbin-path=%{_sbindir}/%{name}-standard \
412         --conf-path=%{_sysconfdir}/%{name}-standard.conf \
413         --error-log-path=%{_localstatedir}/log/%{name}/%{name}-standard_error.log \
414         --http-log-path=%{_localstatedir}/log/%{name}/%{name}-standard_access.log \
415         --pid-path=%{_localstatedir}/run/%{name}-standard.pid \
416         --lock-path=%{_localstatedir}/lock/subsys/%{name}-standard \
417         --user=nginx \
418         --group=nginx \
419         %{?with_addition:--with-http_addition_module} \
420         %{?with_dav:--with-http_dav_module} \
421         %{?with_flv:--with-http_flv_module} \
422         %{?with_ipv6:--with-ipv6} \
423         %{?with_sub:--with-http_sub_module} \
424         %{?with_poll:--with-poll_module} \
425         %{?with_realip:--with-http_realip_module} \
426         %{?with_rtsig:--with-rtsig_module} \
427         %{?with_select:--with-select_module} \
428         %{?with_status:--with-http_stub_status_module} \
429         %{?with_ssl:--with-http_ssl_module} \
430         %{!?with_http_browser:--without-http_browser_module} \
431         %{?with_rtmp:--add-module=./nginx-rtmp-module} \
432         %{?with_auth_request:--with-http_auth_request_module} \
433         --with-http_secure_link_module \
434         --http-client-body-temp-path=%{_localstatedir}/cache/%{name}-standard/client_body_temp \
435         --http-proxy-temp-path=%{_localstatedir}/cache/%{name}-standard/proxy_temp \
436         --http-fastcgi-temp-path=%{_localstatedir}/cache/%{name}-standard/fastcgi_temp \
437         --with-cc="%{__cc}" \
438         --with-cc-opt="%{rpmcflags}" \
439         --with-ld-opt="%{rpmldflags}" \
440         %{?debug:--with-debug}
441 %{__make}
442
443
444 %install
445 rm -rf $RPM_BUILD_ROOT
446 install -d $RPM_BUILD_ROOT/etc/rc.d/init.d \
447         $RPM_BUILD_ROOT%{_nginxdir}/{cgi-bin,html,errors} \
448         $RPM_BUILD_ROOT%{_localstatedir}/log/{%{name},archive/%{name}} \
449         $RPM_BUILD_ROOT%{_localstatedir}/cache/{%{name}-standard,%{name}-perl,%{name}-mail,%{name}-light} \
450         $RPM_BUILD_ROOT%{_localstatedir}/lock/subsys/{%{name}-standard,%{name}-perl,%{name}-mail,%{name}-light} \
451         $RPM_BUILD_ROOT{%{_sbindir},%{_sysconfdir}/{vhosts,webapps}.d} \
452         $RPM_BUILD_ROOT/etc/{logrotate.d,monit} \
453         $RPM_BUILD_ROOT{%{systemdunitdir},/etc/systemd/system}
454
455 install conf/fastcgi_params $RPM_BUILD_ROOT%{_sysconfdir}/fastcgi.params
456 install conf/scgi_params $RPM_BUILD_ROOT%{_sysconfdir}/scgi.params
457 install conf/uwsgi_params $RPM_BUILD_ROOT%{_sysconfdir}/uwsgi.params
458 install conf/koi-utf $RPM_BUILD_ROOT%{_sysconfdir}/koi-utf
459 install conf/koi-win $RPM_BUILD_ROOT%{_sysconfdir}/koi-win
460 install conf/win-utf $RPM_BUILD_ROOT%{_sysconfdir}/win-utf
461 install html/index.html $RPM_BUILD_ROOT%{_nginxdir}/html
462 install html/50x.html $RPM_BUILD_ROOT%{_nginxdir}/errors
463 install %{SOURCE1} $RPM_BUILD_ROOT%{_nginxdir}/html/favicon.ico
464 install %{SOURCE2} $RPM_BUILD_ROOT%{_sysconfdir}/proxy.conf
465 install %{SOURCE3} $RPM_BUILD_ROOT/etc/logrotate.d/%{name}
466 install %{SOURCE4} $RPM_BUILD_ROOT%{_sysconfdir}/mime.types
467 install %{SOURCE14} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}-standard.conf
468 install %{SOURCE15} $RPM_BUILD_ROOT/etc/monit/%{name}-standard.monitrc
469 install %{SOURCE16} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}-standard
470 install %{SOURCE18} $RPM_BUILD_ROOT%{systemdunitdir}/%{name}-standard.service
471 install objs/%{name} $RPM_BUILD_ROOT%{_sbindir}/%{name}-standard
472 ln -sf %{systemdunitdir}/%{name}-standard.service $RPM_BUILD_ROOT/etc/systemd/system/nginx.service
473
474 %if %{with light}
475 install %{SOURCE5} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}-light.conf
476 install %{SOURCE6} $RPM_BUILD_ROOT/etc/monit/%{name}-light.monitrc
477 install %{SOURCE7} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}-light
478 install %{SOURCE19} $RPM_BUILD_ROOT%{systemdunitdir}/%{name}-light.service
479 install contrib/nginx-light $RPM_BUILD_ROOT%{_sbindir}/%{name}-light
480 %endif
481
482 %if %{with mail}
483 install %{SOURCE8} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}-mail.conf
484 install %{SOURCE9} $RPM_BUILD_ROOT/etc/monit/%{name}-mail.monitrc
485 install %{SOURCE10} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}-mail
486 install %{SOURCE21} $RPM_BUILD_ROOT%{systemdunitdir}/%{name}-mail.service
487 install contrib/nginx-mail $RPM_BUILD_ROOT%{_sbindir}/%{name}-mail
488 %endif
489
490 %if %{with perl}
491 install -d $RPM_BUILD_ROOT{%{perl_vendorarch},%{perl_vendorarch}/auto/%{name}}
492 install %{SOURCE11} $RPM_BUILD_ROOT%{_sysconfdir}/%{name}-perl.conf
493 install %{SOURCE12} $RPM_BUILD_ROOT/etc/monit/%{name}-perl.monitrc
494 install %{SOURCE13} $RPM_BUILD_ROOT/etc/rc.d/init.d/%{name}-perl
495 install %{SOURCE20} $RPM_BUILD_ROOT%{systemdunitdir}/%{name}-perl.service
496 install contrib/nginx.pm $RPM_BUILD_ROOT%{perl_vendorarch}/%{name}.pm
497 install contrib/nginx.so $RPM_BUILD_ROOT%{perl_vendorarch}/auto/%{name}/%{name}.so
498 install contrib/nginx-perl $RPM_BUILD_ROOT%{_sbindir}/%{name}-perl
499 %endif
500
501 rm -f $RPM_BUILD_ROOT%{_sysconfdir}/*.default
502 rm -rf $RPM_BUILD_ROOT%{_prefix}/html
503
504 %clean
505 rm -rf $RPM_BUILD_ROOT
506
507 %pre common
508 %groupadd -r -g 213 %{name}
509 %groupadd -g 51 http
510 %useradd -r -u 213 -d /usr/share/empty -s /bin/false -c "Nginx HTTP User" -g %{name} %{name}
511 %addusertogroup %{name} http
512
513 %post standard
514 for a in access.log error.log; do
515         if [ ! -f /var/log/%{name}/nginx-standard_$a ]; then
516                 umask 022
517                 touch /var/log/%{name}/nginx-standard_$a
518                 chown nginx:nginx /var/log/%{name}/nginx-standard_$a
519                 chmod 644 /var/log/%{name}/nginx-standard_$a
520         fi
521 done
522 /sbin/chkconfig --add %{name}-standard
523 %systemd_post %{name}-standard.service
524 %service %{name}-standard restart
525 echo 'NOTE: this nginx daemon is using "/etc/nginx/nginx-standard.conf" as config.'
526 if ! [ -L /etc/systemd/system/nginx.service ] ; then
527         ln -s %{systemdunitdir}/%{name}-standard.service /etc/systemd/system/nginx.service || :
528 fi
529
530 %post light
531 for a in access.log error.log; do
532         if [ ! -f /var/log/%{name}/nginx-light_$a ]; then
533                 umask 022
534                 touch /var/log/%{name}/nginx-light_$a
535                 chown nginx:nginx /var/log/%{name}/nginx-light_$a
536                 chmod 644 /var/log/%{name}/nginx-light_$a
537         fi
538 done
539 /sbin/chkconfig --add %{name}-light
540 %systemd_post %{name}-light.service
541 %service %{name}-light restart
542 echo 'NOTE: this nginx daemon is using "/etc/nginx/nginx-light.conf" as config'
543
544 %post perl
545 for a in access.log error.log; do
546         if [ ! -f /var/log/%{name}/nginx-perl_$a ]; then
547                 umask 022
548                 touch /var/log/%{name}/nginx-perl_$a
549                 chown nginx:nginx /var/log/%{name}/nginx-perl_$a
550                 chmod 644 /var/log/%{name}/nginx-perl_$a
551         fi
552 done
553 /sbin/chkconfig --add %{name}-perl
554 %systemd_post %{name}-perl.service
555 %service %{name}-perl restart
556 echo 'NOTE: this nginx daemon is using "/etc/nginx/nginx-perl.conf" as config'
557
558 %post mail
559 for a in access.log error.log; do
560         if [ ! -f /var/log/%{name}/nginx-mail_$a ]; then
561                 umask 022
562                 touch /var/log/%{name}/nginx-mail_$a
563                 chown nginx:nginx /var/log/%{name}/nginx-mail_$a
564                 chmod 644 /var/log/%{name}/nginx-mail_$a
565         fi
566 done
567 /sbin/chkconfig --add %{name}-mail
568 %systemd_post %{name}-mail.service
569 %service %{name}-mail restart
570 echo 'NOTE: this nginx daemon is using "/etc/nginx/nginx-mail.conf" as config'
571
572 %preun standard
573 if [ "$1" = "0" ];then
574         %service %{name}-standard stop
575         /sbin/chkconfig --del %{name}-standard
576 fi
577 %systemd_preun %{name}-standard.service
578
579 %preun light
580 if [ "$1" = "0" ]; then
581         %service %{name}-light stop
582         /sbin/chkconfig --del %{name}-light
583 fi
584 %systemd_preun %{name}-light.service
585
586 %preun perl
587 if [ "$1" = "0" ]; then
588         %service %{name}-perl stop
589         /sbin/chkconfig --del %{name}-perl
590 fi
591 %systemd_preun %{name}-perl.service
592
593 %preun mail
594 if [ "$1" = "0" ]; then
595         %service %{name}-mail stop
596         /sbin/chkconfig --del %{name}-mail
597 fi
598 %systemd_preun %{name}-mail.service
599
600 %postun common
601 if [ "$1" = "0" ]; then
602         %userremove %{name}
603         %groupremove %{name}
604 fi
605
606 %postun standard
607 %systemd_reload
608
609 %postun light
610 %systemd_reload
611
612 %postun perl
613 %systemd_reload
614
615 %postun mail
616 %systemd_reload
617
618 %triggerpostun -- %{name}-standard < 1.4.1-4
619 %systemd_trigger %{name}-standard.service
620
621 %triggerpostun -- %{name}-light < 1.4.1-4
622 %systemd_trigger %{name}-light.service
623
624 %triggerpostun -- %{name}-perl < 1.4.1-4
625 %systemd_trigger %{name}-perl.service
626
627 %triggerpostun -- %{name}-mail < 1.4.1-4
628 %systemd_trigger %{name}-mail.service
629
630 %files common
631 %defattr(644,root,root,755)
632 %doc CHANGES LICENSE README html/index.html conf/nginx.conf
633 %doc %lang(ru) CHANGES.ru
634 %dir %attr(754,root,root) %{_sysconfdir}
635 %dir %{_nginxdir}
636 %dir %{_nginxdir}/cgi-bin
637 %dir %{_nginxdir}/html
638 %dir %{_nginxdir}/errors
639 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/%{name}
640 # XXX: duplicates, don't use such glob here
641 #%attr(640,root,root) %{_sysconfdir}/*[_-]*
642 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/proxy.conf
643 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/fastcgi.params
644 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/scgi.params
645 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/uwsgi.params
646 %attr(640,root,root) %{_sysconfdir}/mime.types
647 %attr(640,root,root) %{_sysconfdir}/koi-utf
648 %attr(640,root,root) %{_sysconfdir}/koi-win
649 %attr(640,root,root) %{_sysconfdir}/win-utf
650 %dir %{_sysconfdir}/webapps.d
651 %dir %{_sysconfdir}/vhosts.d
652 %attr(750,nginx,logs) %dir /var/log/archive/%{name}
653 %attr(750,nginx,logs) /var/log/%{name}
654 %config(noreplace,missingok) %verify(not md5 mtime size) %{_nginxdir}/html/*
655 %config(noreplace,missingok) %verify(not md5 mtime size) %{_nginxdir}/errors/*
656 %ghost /etc/systemd/system/nginx.service
657
658 %files standard
659 %defattr(644,root,root,755)
660 %attr(755,root,root) %{_sbindir}/%{name}-standard
661 %attr(770,root,%{name}) /var/cache/%{name}-standard
662 %attr(754,root,root) /etc/rc.d/init.d/%{name}-standard
663 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}-standard.conf
664 %{systemdunitdir}/%{name}-standard.service
665
666 %if %{with mail}
667 %files mail
668 %defattr(644,root,root,755)
669 %attr(755,root,root) %{_sbindir}/%{name}-mail
670 %attr(770,root,%{name}) /var/cache/%{name}-mail
671 %attr(754,root,root) /etc/rc.d/init.d/%{name}-mail
672 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}-mail.conf
673 %{systemdunitdir}/%{name}-mail.service
674 %endif
675
676 %if %{with light}
677 %files light
678 %defattr(644,root,root,755)
679 %attr(755,root,root) %{_sbindir}/%{name}-light
680 %attr(770,root,%{name}) /var/cache/%{name}-light
681 %attr(754,root,root) /etc/rc.d/init.d/%{name}-light
682 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}-light.conf
683 %{systemdunitdir}/%{name}-light.service
684 %endif
685
686 %if %{with perl}
687 %files perl
688 %defattr(644,root,root,755)
689 %attr(755,root,root) %{_sbindir}/%{name}-perl
690 %attr(754,root,root) /etc/rc.d/init.d/%{name}-perl
691 %attr(770,root,%{name}) /var/cache/%{name}-perl
692 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/%{name}-perl.conf
693 %dir %{perl_vendorarch}/auto/%{name}
694 %attr(755,root,root) %{perl_vendorarch}/auto/%{name}/%{name}.so
695 %{perl_vendorarch}/%{name}.pm
696 %{systemdunitdir}/%{name}-perl.service
697 %endif
698
699 %files -n monit-rc-nginx
700 %defattr(644,root,root,755)
701 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/monit/%{name}-standard.monitrc
702 %if %{with perl}
703 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/monit/%{name}-perl.monitrc
704 %endif
705 %if %{with light}
706 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/monit/%{name}-light.monitrc
707 %endif
708 %if %{with mail}
709 %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/monit/%{name}-mail.monitrc
710 %endif
This page took 2.128133 seconds and 4 git commands to generate.