]>
Commit | Line | Data |
---|---|---|
1 | # TODO | |
2 | # - REVIEW patches and configuration | |
3 | # - ZPH TOS - | |
4 | # For this to work correctly, you will need to patch your linux | |
5 | # kernel with the TOS preserving ZPH patch. | |
6 | # The kernel patch can be downloaded from http://zph.bratcheda.org | |
7 | # - Installed (but unpackaged) file(s) found: | |
8 | # /usr/share/squid/errors/templates/ERR_ACCESS_DENIED | |
9 | # /usr/share/squid/errors/templates/ERR_ZERO_SIZE_OBJECT | |
10 | # | |
11 | # Conditional build: | |
12 | %bcond_with combined_log # enables apache-like combined log format | |
13 | # | |
14 | Summary: SQUID Internet Object Cache | |
15 | Summary(es.UTF-8): proxy/cache para WWW/FTP/gopher | |
16 | Summary(pl.UTF-8): Uniwersalny serwer proxy-cache | |
17 | Summary(pt_BR.UTF-8): Cache Squid de objetos Internet | |
18 | Summary(ru.UTF-8): Squid - кэш объектов Internet | |
19 | Summary(uk.UTF-8): Squid - кеш об'єктів Internet | |
20 | Summary(zh_CN.UTF-8): SQUID 高速缓冲代理服务器 | |
21 | Name: squid | |
22 | Version: 3.0.STABLE13 | |
23 | # review patches before stable release | |
24 | Release: 0.1 | |
25 | Epoch: 7 | |
26 | License: GPL v2 | |
27 | Group: Networking/Daemons | |
28 | Source0: http://www.squid-cache.org/Versions/v3/3.0/%{name}-%{version}.tar.bz2 | |
29 | # Source0-md5: 37c89c97743a81e5178fbd5d5888b7e2 | |
30 | # http://www.squid-cache.org/Doc/FAQ/FAQ.tar.gz | |
31 | Source1: %{name}-FAQ.tar.gz | |
32 | # Source1-md5: cb9a955f8cda9cc166e086fccd412a43 | |
33 | Source2: %{name}.init | |
34 | Source3: %{name}.sysconfig | |
35 | # http://squid-docs.sourceforge.net/latest/zip-files/book-full-html.zip | |
36 | Source4: http://squid-docs.sourceforge.net/latest/zip-files/book-full-html.zip | |
37 | # Source4-md5: 4f3b6dab1de9cbb847df89d8b417378a | |
38 | Source5: %{name}.conf.patch | |
39 | Source6: %{name}.logrotate | |
40 | Source7: %{name}.pamd | |
41 | # Bug fixes from Squid home page, please include URL | |
42 | # lets have fun - there is no patches... yet:) | |
43 | # Other patches: | |
44 | # http://zph.bratcheda.org/ | |
45 | Source8: %{name}-cachemgr-apache.conf | |
46 | Patch0: %{name}_hit_miss_mark.patch | |
47 | Patch1: %{name}-fhs.patch | |
48 | Patch2: %{name}-location.patch | |
49 | Patch4: %{name}-libnsl_fixes.patch | |
50 | Patch5: %{name}-crash-on-ENOSPC.patch | |
51 | Patch7: %{name}-empty-referer.patch | |
52 | Patch8: %{name}-2.5.STABLE4-apache-like-combined-log.patch | |
53 | Patch9: %{name}-auth_on_acceleration.patch | |
54 | Patch10: %{name}-ppc-m32.patch | |
55 | Patch11: %{name}-cachemgr-webapp.patch | |
56 | URL: http://www.squid-cache.org/ | |
57 | BuildRequires: autoconf | |
58 | BuildRequires: automake | |
59 | BuildRequires: cyrus-sasl-devel >= 2.1.0 | |
60 | BuildRequires: db-devel | |
61 | BuildRequires: libltdl-devel | |
62 | BuildRequires: openldap-devel >= 2.3.0 | |
63 | BuildRequires: openssl-devel >= 0.9.7d | |
64 | BuildRequires: pam-devel | |
65 | BuildRequires: perl-base | |
66 | BuildRequires: rpmbuild(macros) >= 1.268 | |
67 | BuildRequires: sed >= 4.0 | |
68 | BuildRequires: unzip | |
69 | Requires(post): /bin/hostname | |
70 | Requires(post): fileutils | |
71 | Requires(post): findutils | |
72 | Requires(post): grep | |
73 | Requires(post,preun): /sbin/chkconfig | |
74 | Requires(postun): /usr/sbin/groupdel | |
75 | Requires(postun): /usr/sbin/userdel | |
76 | Requires(pre): /bin/id | |
77 | Requires(pre): /usr/bin/getgid | |
78 | Requires(pre): /usr/lib/rpm/user_group.sh | |
79 | Requires(pre): /usr/sbin/groupadd | |
80 | Requires(pre): /usr/sbin/useradd | |
81 | Requires: rc-scripts >= 0.2.0 | |
82 | Requires: setup >= 2.4.6 | |
83 | Provides: group(squid) | |
84 | # epoll enabled by default: | |
85 | Requires: uname(release) >= 2.6 | |
86 | Provides: user(squid) | |
87 | Conflicts: logrotate < 3.7-4 | |
88 | BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n) | |
89 | ||
90 | %define _webapps /etc/webapps | |
91 | %define _webapp cachemgr | |
92 | %define _libexecdir %{_libdir}/%{name} | |
93 | %define _sysconfdir /etc/%{name} | |
94 | %define _cgidir %{_prefix}/lib/cgi-bin/%{_webapp} | |
95 | ||
96 | %description | |
97 | Squid is a high-performance proxy caching server for web clients, | |
98 | supporting FTP, gopher, and HTTP data objects. Unlike traditional | |
99 | caching software, Squid handles all requests in a single, | |
100 | non-blocking, I/O-driven process. Squid keeps meta data and especially | |
101 | hot objects cached in RAM, caches DNS lookups, supports non-blocking | |
102 | DNS lookups, and implements negative caching of failed requests. If | |
103 | you are tight on memory, check out the NOVM version of this package. | |
104 | Squid supports SSL, extensive access controls, and full request | |
105 | logging. By using the lightweight Internet Cache Protocol, Squid | |
106 | caches can be arranged in a hierarchy or mesh for additional bandwidth | |
107 | savings. Squid consists of a main server program squid, a Domain Name | |
108 | System lookup program dnsserver, a program for retrieving FTP data | |
109 | ftpget, and some management and client tools. When squid starts up, it | |
110 | spawns a configurable number of dnsserver processes, each of which can | |
111 | perform a single, blocking Domain Name System (DNS) lookup. This | |
112 | reduces the amount of time the cache waits for DNS lookups. Squid is | |
113 | derived from the ARPA-funded Harvest project. | |
114 | ||
115 | %description -l es.UTF-8 | |
116 | Squid es un servidor proxy con caché de alto desempeño para clientes | |
117 | web, soportando FTP, gopher y HTTP. Diferentemente de softwares | |
118 | tradicionales de caché squid manipula todas las requisiciones en un | |
119 | único proceso sin bloqueos, direccionado a E/S. Mantienen metadatos y | |
120 | objetos frecuentemente pedidos en uno caché en memoria RAM. Hace caché | |
121 | de resoluciones DNS, soporta resoluciones DNS sin bloqueo y implementa | |
122 | un caché negativo de requisiciones que fallen. Si tiene poca memoria | |
123 | da un vistazo en la versión NOVM de este paquete. También soporta SSL, | |
124 | controles extensivos de acceso y registro (log) completo de las | |
125 | requisiciones. Usando el ligero Protocolo de Caches Internet (ICP) | |
126 | puede ser usado en una jerarquía de servidores para mayor ahorro de la | |
127 | banda de comunicación. Está compuesto del programa squid (servidor | |
128 | principal), del programa dnsserver (para resolución DNS), del programa | |
129 | ftpget (para transmisiones ftp) y otras herramientas clientes y para | |
130 | administración. Cuando squid se inicia, dispara un número configurable | |
131 | de procesos dnsserver, cada uno pudiendo ejecutar solamente una | |
132 | resolución DNS con poder de bloquear. Esto reduce el tiempo que el | |
133 | caché espera por resoluciones DNS. Fue derivado del proyecto Harvest, | |
134 | financiado por la ARPA. | |
135 | ||
136 | %description -l pl.UTF-8 | |
137 | Squid jest wysoce wydajnym serwerem proxy-cache dla przeglądarek WWW, | |
138 | klientów FTP i gopher. Squid przechowuje najczęściej pobierane dane w | |
139 | pamięci RAM i zapamiętuje odwołania do DNS. Squid oferuje wsparcie dla | |
140 | SSL, rozbudowaną kontrolę dostępu oraz pełne rejestrowanie pobieranych | |
141 | danych. Dzięki użyciu protokołu ICP (Internet Cache Protocol), serwer | |
142 | squid można łączyć w hierarchię, zwiększając ich efektywność. Pakiet | |
143 | squid obejmuje: główny program serwera squid, program dostarczający | |
144 | informacji z DNS dnsserver, program odbierający dane FTP ftpget, oraz | |
145 | pomocnicze programy do zarządzania. Squid wywodzi się ze | |
146 | sponsorowanego przez ARPA projektu Harvest. | |
147 | ||
148 | %description -l pt_BR.UTF-8 | |
149 | O Squid é um servidor proxy com cache de alta performance para | |
150 | clientes web, suportando FTP, gopher e HTTP. Diferentemente de | |
151 | softwares tradicionais de cache o squid manipula todas as requisições | |
152 | em um único processo sem bloqueios, direcionado a E/S. | |
153 | ||
154 | Mantém meta dados e objetos freqüentemente pedidos num cache em | |
155 | memória RAM. Faz cache de resoluções DNS, suporta resoluções DNS sem | |
156 | bloqueio e implementa um cache negativo de requisições que falharem. | |
157 | Se você tem pouca memória dê uma olhada na versão NOVM deste pacote. | |
158 | ||
159 | Também suporta SSL, controles extensivos de acesso e registro (log) | |
160 | completo das requisições. Usando o leve Protocolo de Caches Internet | |
161 | (ICP) ele pode ser usado em uma hierarquia de servidores para maior | |
162 | economia de banda de comunicação. | |
163 | ||
164 | Ele consiste do programa squid (servidor principal), do programa | |
165 | dnsserver (para resolução DNS), do programa ftpget (para transmissões | |
166 | ftp) e outras ferramentas clientes e para gerenciamento. Quando o | |
167 | squid é inicializado ele dispara um número configurável de processos | |
168 | dnsserver, cada um podendo executar somente uma resolução DNS | |
169 | bloqueante. Isto reduz o tempo que o cache espera por resoluções DNS. | |
170 | ||
171 | Foi derivado do projeto Harvest, financiado pela ARPA. | |
172 | ||
173 | %description -l ru.UTF-8 | |
174 | Squid - это высокопроизводительный кэширующий прокси-сервер для | |
175 | клиентов web, поддерживающий объекты данных типа FTP, gopher и HTTP. В | |
176 | отличие от традиционных кэширующих программ, Squid обрабатывает все | |
177 | запросы при помощи одного неблокирующегося, управляемого | |
178 | вводом-выводом процесса. | |
179 | ||
180 | Этот пакет имеет встроенную поддержку базы данных сетевых ICMP-проб | |
181 | (Netdb). | |
182 | ||
183 | %description -l uk.UTF-8 | |
184 | Squid - це кешуючий проксі-сервер для web-клієнтів, що підтримує | |
185 | об'єкти даних типу FTP, gopher та HTTP. На відміну від традиційних | |
186 | кешуючих програм, Squid обробляє всі запити за допомогою одного | |
187 | неблокуючого, керованого вводом-виводом процесу. | |
188 | ||
189 | Цей пакет має вбудовану підтримку бази даних мережевих ICMP-проб | |
190 | (Netdb). | |
191 | ||
192 | %package cachemgr | |
193 | Summary: CGI script for Squid management | |
194 | Summary(pl.UTF-8): Skrypt CGI do zarządzania Squidem przez WWW | |
195 | Group: Applications/WWW | |
196 | # does not require squid locally | |
197 | Requires: group(http) | |
198 | Requires: webapps | |
199 | Requires: webserver | |
200 | Requires: webserver(access) | |
201 | Requires: webserver(alias) | |
202 | Requires: webserver(cgi) | |
203 | ||
204 | %description cachemgr | |
205 | Cachemgr.cgi is a CGI script that allows administrator to check | |
206 | various informations about Squid via WWW. | |
207 | ||
208 | %description cachemgr -l pl.UTF-8 | |
209 | Cachemgr.cgi jest skryptem CGI, który pozwala administratorowi | |
210 | zapoznać się z informacjami o pracy Squida poprzez WWW. | |
211 | ||
212 | %package ldap_auth | |
213 | Summary: LDAP authentication helper for Squid | |
214 | Summary(pl.UTF-8): Obsługa uwierzytelniania LDAP dla squida | |
215 | Group: Networking/Admin | |
216 | Requires: %{name} = %{epoch}:%{version}-%{release} | |
217 | ||
218 | %description ldap_auth | |
219 | This Squid helper allows authentication against LDAP directories using | |
220 | the "simple authentication" (plain-text). | |
221 | ||
222 | %description ldap_auth -l pl.UTF-8 | |
223 | Pakiet ten pozwala na uwierzytelnianie przez LDAP za pomocą prostego | |
224 | uwierzytelniania (otwartym tekstem). | |
225 | ||
226 | %package pam_auth | |
227 | Summary: PAM authentication helper for Squid | |
228 | Summary(pl.UTF-8): Obsługa uwierzytelniania PAM dla squida | |
229 | Group: Networking/Admin | |
230 | Requires: %{name} = %{epoch}:%{version}-%{release} | |
231 | Requires: pam >= 0.77.3 | |
232 | ||
233 | %description pam_auth | |
234 | This program authenticates users against a PAM configured | |
235 | authentication service "squid". This allows you to authenticate Squid | |
236 | users to any authentication source for which you have a PAM module. | |
237 | ||
238 | %description pam_auth -l pl.UTF-8 | |
239 | Program ten pozwala na uwierzytelnianie użytkowników squida w dowolnym | |
240 | źródle posiadającym moduł PAM. | |
241 | ||
242 | %package smb_auth | |
243 | Summary: SMB authentication helper for Squid | |
244 | Summary(pl.UTF-8): Obsługa uwierzytelniania SMB dla squida | |
245 | Group: Networking/Admin | |
246 | Requires: %{name} = %{epoch}:%{version}-%{release} | |
247 | ||
248 | %description smb_auth | |
249 | This is a proxy authentication module. With smb_auth you can | |
250 | authenticate proxy users against an SMB server like Windows NT or | |
251 | Samba. | |
252 | ||
253 | %description smb_auth -l pl.UTF-8 | |
254 | To jest moduł uwierzytelniania proxy. Przy pomocy smb_auth można | |
255 | uwierzytelniać użytkowników proxy na serwerach SMB, jak Windows NT czy | |
256 | Samba. | |
257 | ||
258 | %package msnt_auth | |
259 | Summary: MSNT domain authentication helper for Squid | |
260 | Summary(pl.UTF-8): Obsługa uwierzytelniania w domenie MSNT dla squida | |
261 | Group: Networking/Admin | |
262 | Requires: %{name} = %{epoch}:%{version}-%{release} | |
263 | ||
264 | %description msnt_auth | |
265 | This is an authentication module for the Squid proxy server to | |
266 | authenticate users on an NT domain. | |
267 | ||
268 | %description msnt_auth -l pl.UTF-8 | |
269 | Jest to moduł uwierzytelniania proxy, który pozwala na | |
270 | uwierzytelnianie użytkowników proxy w domenie NT. | |
271 | ||
272 | %package yp_auth | |
273 | Summary: YP authentication helper for Squid | |
274 | Summary(pl.UTF-8): Obsługa uwierzytelniania YP dla squida | |
275 | Group: Networking/Admin | |
276 | Requires: %{name} = %{epoch}:%{version}-%{release} | |
277 | ||
278 | %description yp_auth | |
279 | This is an authentication module for the Squid proxy server to | |
280 | authenticate users on YP. | |
281 | ||
282 | %description yp_auth -l pl.UTF-8 | |
283 | Jest to moduł uwierzytelniania proxy, który pozwala na | |
284 | uwierzytelnianie użytkowników proxy poprzez YP. | |
285 | ||
286 | %package ncsa_auth | |
287 | Summary: NCSA httpd style authentication helper for Squid | |
288 | Summary(pl.UTF-8): Obsługa uwierzytelniania NCSA httpd dla squida | |
289 | Group: Networking/Admin | |
290 | Requires: %{name} = %{epoch}:%{version}-%{release} | |
291 | ||
292 | %description ncsa_auth | |
293 | This module uses a NCSA httpd style password file for authentication. | |
294 | ||
295 | %description ncsa_auth -l pl.UTF-8 | |
296 | Moduł uwierzytelniania proxy używający pliku haseł jak w NCSA httpd. | |
297 | ||
298 | %package sasl_auth | |
299 | Summary: SASL authentication helper for Squid | |
300 | Summary(pl.UTF-8): Obsługa uwierzytelniania SASL dla squida | |
301 | Group: Networking/Admin | |
302 | Requires: %{name} = %{epoch}:%{version}-%{release} | |
303 | ||
304 | %description sasl_auth | |
305 | This is an authentication module for the Squid proxy server to | |
306 | authenticate users via SASL. | |
307 | ||
308 | %description sasl_auth -l pl.UTF-8 | |
309 | Jest to moduł uwierzytelniania proxy, który pozwala na | |
310 | uwierzytelnianie użytkowników proxy poprzez SASL. | |
311 | ||
312 | %package getpwname_auth | |
313 | Summary: getpwname authentication helper for Squid | |
314 | Summary(pl.UTF-8): Obsługa uwierzytelniania getpwname dla squida | |
315 | Group: Networking/Admin | |
316 | Requires: %{name} = %{epoch}:%{version}-%{release} | |
317 | ||
318 | %description getpwname_auth | |
319 | This is an authentication module for the Squid proxy server to | |
320 | authenticate users using getpwname. | |
321 | ||
322 | %description getpwname_auth -l pl.UTF-8 | |
323 | Jest to moduł uwierzytelniania proxy, który pozwala na | |
324 | uwierzytelnianie użytkowników proxy poprzez getpwname. | |
325 | ||
326 | %package passwd_auth | |
327 | Summary: passwd authentication helper for Squid | |
328 | Summary(pl.UTF-8): Obsługa uwierzytelniania passwd dla squida | |
329 | Group: Networking/Admin | |
330 | Requires: %{name} = %{epoch}:%{version}-%{release} | |
331 | ||
332 | %description passwd_auth | |
333 | This is an authentication module for the Squid proxy server to | |
334 | authenticate users with separate passwd file. | |
335 | ||
336 | %description passwd_auth -l pl.UTF-8 | |
337 | Jest to moduł uwierzytelniania proxy, który pozwala na | |
338 | uwierzytelnianie użytkowników proxy poprzez oddzielny plik passwd. | |
339 | ||
340 | %package ntlm_auth | |
341 | Summary: NTLM authentication helper for Squid | |
342 | Summary(pl.UTF-8): Obsługa uwierzytelniania NTLM dla squida | |
343 | Group: Networking/Admin | |
344 | Requires: %{name} = %{epoch}:%{version}-%{release} | |
345 | ||
346 | %description ntlm_auth | |
347 | This is an authentication module for the Squid proxy server to | |
348 | authenticate users on NTLM. | |
349 | ||
350 | %description ntlm_auth -l pl.UTF-8 | |
351 | Jest to moduł uwierzytelniania proxy, który pozwala na | |
352 | uwierzytelnianie użytkowników proxy poprzez NTLM. | |
353 | ||
354 | %package digest_ldap_auth | |
355 | Summary: LDAP authentication helper for Squid | |
356 | Summary(pl.UTF-8): Obsługa uwierzytelniania LDAP dla squida | |
357 | Group: Networking/Admin | |
358 | Requires: %{name} = %{epoch}:%{version}-%{release} | |
359 | ||
360 | %description digest_ldap_auth | |
361 | This is an authentication module for the Squid proxy server to | |
362 | authenticate users on LDAP. | |
363 | ||
364 | %description digest_ldap_auth -l pl.UTF-8 | |
365 | Jest to moduł uwierzytelniania proxy, który pozwala na | |
366 | uwierzytelnianie użytkowników proxy poprzez LDAP. | |
367 | ||
368 | %package ip_acl | |
369 | Summary: IP external ACL helper for Squid | |
370 | Summary(pl.UTF-8): Wsparcie kontroli dostępu przez IP dla squida | |
371 | Group: Networking/Admin | |
372 | Requires: %{name} = %{epoch}:%{version}-%{release} | |
373 | ||
374 | %description ip_acl | |
375 | This is an external ACL module for the Squid proxy server to limit | |
376 | access for users based on IP address. | |
377 | ||
378 | %description ip_acl -l pl.UTF-8 | |
379 | Jest to moduł kontroli dostępu (ACL) do proxy, który pozwala na | |
380 | ograniczenie dostępu użytkowników proxy na podstawie ich adresu IP. | |
381 | ||
382 | %package ldap_acl | |
383 | Summary: LDAP group external ACL helper for Squid | |
384 | Summary(pl.UTF-8): Wsparcie kontroli dostępu przez grupy LDAP dla squida | |
385 | Group: Networking/Admin | |
386 | Requires: %{name} = %{epoch}:%{version}-%{release} | |
387 | ||
388 | %description ldap_acl | |
389 | This is an external ACL module for the Squid proxy server to limit | |
390 | access for users based on LDAP group membership. | |
391 | ||
392 | %description ldap_acl -l pl.UTF-8 | |
393 | Jest to moduł kontroli dostępu (ACL) do proxy, który pozwala na | |
394 | ograniczenie dostępu użytkowników proxy na podstawie ich | |
395 | przynależności do grup LDAP. | |
396 | ||
397 | %package unix_acl | |
398 | Summary: UNIX group external ACL helper for Squid | |
399 | Summary(pl.UTF-8): Wsparcie kontroli dostępu przez grupy UNIX dla squida | |
400 | Group: Networking/Admin | |
401 | Requires: %{name} = %{epoch}:%{version}-%{release} | |
402 | ||
403 | %description unix_acl | |
404 | This is an external ACL module for the Squid proxy server to limit | |
405 | access for users based on UNIX group membership. | |
406 | ||
407 | %description unix_acl -l pl.UTF-8 | |
408 | Jest to moduł kontroli dostępu (ACL) do proxy, który pozwala na | |
409 | ograniczenie dostępu użytkowników proxy na podstawie ich | |
410 | przynależności do grup UNIX. | |
411 | ||
412 | %package wbinfo_acl | |
413 | Summary: NT domain group external ACL helper for Squid | |
414 | Summary(pl.UTF-8): Wsparcie kontroli dostępu przez grupy w domenie NT dla squida | |
415 | Group: Networking/Admin | |
416 | Requires: %{name} = %{epoch}:%{version}-%{release} | |
417 | ||
418 | %description wbinfo_acl | |
419 | This is an external ACL module for the Squid proxy server to limit | |
420 | access for users based on NT domain group membership using wbinfo. | |
421 | ||
422 | %description wbinfo_acl -l pl.UTF-8 | |
423 | Jest to moduł kontroli dostępu (ACL) do proxy, który pozwala na | |
424 | ograniczenie dostępu użytkowników proxy na podstawie ich | |
425 | przynależności do grup w domenie NT przy użyciu wbinfo. | |
426 | ||
427 | %package session_acl | |
428 | Summary: Squid session tracking external acl group helper | |
429 | Group: Networking/Admin | |
430 | Requires: %{name} = %{epoch}:%{version}-%{release} | |
431 | ||
432 | %description session_acl | |
433 | This helper maintains a concept of sessions by monitoring requests and | |
434 | timing out sessions if no requests have been seen for the idle timeout | |
435 | timer. | |
436 | ||
437 | %package scripts | |
438 | Summary: Perl scripts for Squid | |
439 | Summary(pl.UTF-8): Skrypty perlowe dla Squida | |
440 | Group: Networking/Admin | |
441 | Requires: %{name} = %{epoch}:%{version}-%{release} | |
442 | ||
443 | %description scripts | |
444 | This package contains Perl scripts and contributed programs for Squid. | |
445 | ||
446 | %description scripts -l pl.UTF-8 | |
447 | Ten pakiet zawiera skrypty perlowe i dodatkowe programy dla Squida. | |
448 | ||
449 | %prep | |
450 | %setup -q -a1 -a4 | |
451 | # Bug fixes from Squid home page: | |
452 | ||
453 | # Other patches: | |
454 | %patch0 -p1 | |
455 | %patch1 -p1 | |
456 | %patch2 -p1 | |
457 | %patch4 -p1 | |
458 | %patch5 -p1 | |
459 | #%patch7 -p1 | |
460 | %{?with_combined_log:%patch8 -p1} | |
461 | %patch9 -p1 | |
462 | %ifarch ppc | |
463 | %patch10 -p1 | |
464 | %endif | |
465 | %patch11 -p1 | |
466 | ||
467 | %{__sed} -i -e '1s#!.*bin/perl#!%{__perl}#' {contrib,scripts,helpers/*/*}/*.pl | |
468 | ||
469 | %build | |
470 | %{__libtoolize} | |
471 | %{__aclocal} | |
472 | %{__autoconf} | |
473 | %{__autoheader} | |
474 | %{__automake} | |
475 | %configure \ | |
476 | --datadir=%{_datadir}/squid \ | |
477 | --enable-arp-acl \ | |
478 | --enable-auth="basic,digest,negotiate,ntlm" \ | |
479 | --enable-basic-auth-helpers="LDAP,MSNT,NCSA,PAM,SASL,SMB,YP,getpwnam,multi-domain-NTLM" \ | |
480 | --enable-cache-digests \ | |
481 | --enable-coss-aio-ops \ | |
482 | --enable-delay-pools \ | |
483 | --enable-digest-auth-helpers="ldap,password" \ | |
484 | --enable-err-language=English \ | |
485 | --enable-esi \ | |
486 | --enable-external-acl-helpers="ip_user,ldap_group,session,unix_group,wbinfo_group" \ | |
487 | --enable-follow-x-forwarded-for \ | |
488 | --enable-forward-log \ | |
489 | --enable-forw-via-db \ | |
490 | --enable-htcp \ | |
491 | --enable-icap-client \ | |
492 | --enable-icmp \ | |
493 | --enable-kill-parent-hack \ | |
494 | --enable-large-cache-files \ | |
495 | --enable-linux-netfilter \ | |
496 | --enable-linux-tproxy \ | |
497 | --enable-multicast-miss \ | |
498 | --enable-ntlm-auth-helpers="SMB,fakeauth,no_check" \ | |
499 | --enable-ntlm-fail-open \ | |
500 | --enable-referer-log \ | |
501 | --enable-removal-policies="heap,lru" \ | |
502 | --enable-snmp \ | |
503 | --enable-ssl \ | |
504 | --enable-storeio="aufs,diskd,null,ufs" \ | |
505 | --enable-useragent-log \ | |
506 | --enable-x-accelerator-vary \ | |
507 | --localstatedir=/var \ | |
508 | --sysconfdir=%{_sysconfdir} \ | |
509 | --with-auth-on-acceleration \ | |
510 | --with-large-files \ | |
511 | --with-maxfd=32768 \ | |
512 | --with-pthreads \ | |
513 | --enable-zph-qos | |
514 | ||
515 | %{__make} | |
516 | ||
517 | %install | |
518 | rm -rf $RPM_BUILD_ROOT | |
519 | install -d $RPM_BUILD_ROOT{%{_cgidir},%{_webapps}/%{_webapp}} \ | |
520 | $RPM_BUILD_ROOT/etc/{pam.d,rc.d/init.d,security,sysconfig,logrotate.d} \ | |
521 | $RPM_BUILD_ROOT{%{_sbindir},%{_bindir},%{_libexecdir}/contrib} \ | |
522 | $RPM_BUILD_ROOT%{_mandir}/man8 \ | |
523 | $RPM_BUILD_ROOT%{_datadir}/squid \ | |
524 | $RPM_BUILD_ROOT/var/{cache,log{,/archive}}/squid | |
525 | ||
526 | %{__make} install \ | |
527 | DESTDIR=$RPM_BUILD_ROOT | |
528 | ||
529 | cp -a contrib/*.pl $RPM_BUILD_ROOT%{_libexecdir}/contrib | |
530 | install scripts/*.pl $RPM_BUILD_ROOT%{_libexecdir} | |
531 | ||
532 | install %{SOURCE7} $RPM_BUILD_ROOT/etc/pam.d/squid | |
533 | touch $RPM_BUILD_ROOT/etc/security/blacklist.squid | |
534 | ||
535 | mv -f $RPM_BUILD_ROOT%{_libdir}/squid/cachemgr.cgi $RPM_BUILD_ROOT%{_cgidir} | |
536 | cp -a %{SOURCE8} $RPM_BUILD_ROOT%{_webapps}/%{_webapp}/apache.conf | |
537 | cp -a %{SOURCE8} $RPM_BUILD_ROOT%{_webapps}/%{_webapp}/httpd.conf | |
538 | rm -f $RPM_BUILD_ROOT%{_webapps}/%{_webapp}/cachemgr.conf.default | |
539 | ||
540 | cd $RPM_BUILD_ROOT/etc/squid | |
541 | %{__patch} -p0 < %{SOURCE5} | |
542 | rm -f *~ *.orig mime.conf.default squid.conf.default | |
543 | cd - | |
544 | ||
545 | install %{SOURCE2} $RPM_BUILD_ROOT/etc/rc.d/init.d/squid | |
546 | install %{SOURCE3} $RPM_BUILD_ROOT/etc/sysconfig/squid | |
547 | install %{SOURCE6} $RPM_BUILD_ROOT/etc/logrotate.d/squid | |
548 | ||
549 | touch $RPM_BUILD_ROOT/var/log/squid/{access,cache,store}.log | |
550 | ||
551 | # These two files start squid. They are replaced by /etc/rc.d/init.d script. | |
552 | rm -f $RPM_BUILD_ROOT%{_bindir}/R* | |
553 | ||
554 | # cp, to have re-entrant install | |
555 | rm -rf docs | |
556 | cp -a doc docs | |
557 | # dunno why, but manual is not installed | |
558 | mv docs/squid.8 $RPM_BUILD_ROOT%{_mandir}/man8 | |
559 | # We don't want Makefiles as docs... | |
560 | rm -f docs/Makefile* | |
561 | ||
562 | # We don't like message: rpm found unpackaged files ... | |
563 | rm -f $RPM_BUILD_ROOT/etc/squid/msntauth.conf.default \ | |
564 | $RPM_BUILD_ROOT/etc/squid/squid.conf.orig | |
565 | ||
566 | > $RPM_BUILD_ROOT/var/cache/squid/netdb_state | |
567 | > $RPM_BUILD_ROOT/var/cache/squid/swap.state | |
568 | > $RPM_BUILD_ROOT/var/cache/squid/swap.state.clean | |
569 | > $RPM_BUILD_ROOT/var/cache/squid/swap.state.last-clean | |
570 | ||
571 | %clean | |
572 | rm -rf $RPM_BUILD_ROOT | |
573 | ||
574 | %pre | |
575 | %groupadd -g 91 squid | |
576 | %useradd -o -u 91 -s /bin/false -g squid -c "SQUID http caching daemon" -d /var/cache/squid squid | |
577 | %addusertogroup stats squid | |
578 | ||
579 | [ -L %{_datadir}/squid/errors ] && rm -f %{_datadir}/squid/errors || : | |
580 | ||
581 | %post | |
582 | if ! grep -q "^visible_hostname" /etc/squid/squid.conf; then | |
583 | hostname=`/bin/hostname -f 2>/dev/null` || hostname='localhost' | |
584 | echo visible_hostname $hostname >> /etc/squid/squid.conf | |
585 | fi | |
586 | ||
587 | /sbin/chkconfig --add squid | |
588 | if [ "$1" = "1" ]; then | |
589 | /sbin/service squid init >&2 | |
590 | fi | |
591 | %service squid restart | |
592 | ||
593 | %preun | |
594 | if [ "$1" = "0" ]; then | |
595 | /sbin/chkconfig --del squid | |
596 | %service squid stop | |
597 | ||
598 | # nuke squid cache if uninstalling | |
599 | rm -rf /var/cache/squid/?? | |
600 | fi | |
601 | ||
602 | %postun | |
603 | if [ "$1" = "0" ]; then | |
604 | %userremove squid | |
605 | %groupremove squid | |
606 | fi | |
607 | ||
608 | %triggerpostun -- squid < 7:2.5.STABLE7-5 | |
609 | %addusertogroup stats squid | |
610 | ||
611 | %triggerin cachemgr -- apache1 < 1.3.37-3, apache1-base | |
612 | %webapp_register apache %{_webapp} | |
613 | ||
614 | %triggerun cachemgr -- apache1 < 1.3.37-3, apache1-base | |
615 | %webapp_unregister apache %{_webapp} | |
616 | ||
617 | %triggerin cachemgr -- apache < 2.2.0, apache-base | |
618 | %webapp_register httpd %{_webapp} | |
619 | ||
620 | %triggerun cachemgr -- apache < 2.2.0, apache-base | |
621 | %webapp_unregister httpd %{_webapp} | |
622 | ||
623 | %triggerpostun -- cachemgr < 7:3.0.STABLE10-0.2 | |
624 | if [ -f %{_sysconfdir}/cachemgr.conf.rpmsave ]; then | |
625 | cp -f %{_webapps}/%{_webapp}/cachemgr.conf{,.rpmsave} | |
626 | mv -f %{_sysconfdir}/cachemgr.conf.rpmsave %{_webapps}/%{_webapp}/cachemgr.conf | |
627 | fi | |
628 | ||
629 | %files | |
630 | %defattr(644,root,root,755) | |
631 | %doc CONTRIBUTORS COPYRIGHT CREDITS README ChangeLog QUICKSTART RELEASENOTES.html SPONSORS | |
632 | %doc docs/* src/mib.txt FAQ*.html book-full.html src/squid.conf.default src/mime.conf.default | |
633 | %attr(755,root,root) %{_bindir}/squidclient | |
634 | %attr(755,root,root) %{_libexecdir}/diskd | |
635 | # YES, it has to be suid root, it sends ICMP packets. | |
636 | %attr(4754,root,squid) %{_libexecdir}/pinger | |
637 | %attr(755,root,root) %{_libexecdir}/unlinkd | |
638 | %attr(755,root,root) %{_libexecdir}/fakeauth_auth | |
639 | %attr(755,root,root) %{_sbindir}/* | |
640 | ||
641 | %attr(754,root,root) /etc/rc.d/init.d/squid | |
642 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/logrotate.d/squid | |
643 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) /etc/sysconfig/squid | |
644 | ||
645 | %dir %{_sysconfdir} | |
646 | %attr(640,root,squid) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/squid.conf | |
647 | %attr(640,root,squid) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/mime.conf | |
648 | ||
649 | %dir %{_datadir}/squid | |
650 | %dir %{_datadir}/squid/errors | |
651 | %{_datadir}/squid/icons | |
652 | %{_datadir}/squid/mib.txt | |
653 | %lang(am) %{_datadir}/squid/errors/Armenian | |
654 | %lang(az) %{_datadir}/squid/errors/Azerbaijani | |
655 | %lang(bg) %{_datadir}/squid/errors/Bulgarian | |
656 | %lang(ca) %{_datadir}/squid/errors/Catalan | |
657 | %lang(cs) %{_datadir}/squid/errors/Czech | |
658 | %lang(da) %{_datadir}/squid/errors/Danish | |
659 | %lang(nl) %{_datadir}/squid/errors/Dutch | |
660 | %{_datadir}/squid/errors/English | |
661 | %lang(et) %{_datadir}/squid/errors/Estonian | |
662 | %lang(fi) %{_datadir}/squid/errors/Finnish | |
663 | %lang(fr) %{_datadir}/squid/errors/French | |
664 | %lang(de) %{_datadir}/squid/errors/German | |
665 | %lang(el) %{_datadir}/squid/errors/Greek | |
666 | %lang(he) %{_datadir}/squid/errors/Hebrew | |
667 | %lang(hu) %{_datadir}/squid/errors/Hungarian | |
668 | %lang(it) %{_datadir}/squid/errors/Italian | |
669 | %lang(ja) %{_datadir}/squid/errors/Japanese | |
670 | %lang(ko) %{_datadir}/squid/errors/Korean | |
671 | %lang(lt) %{_datadir}/squid/errors/Lithuanian | |
672 | %lang(pl) %{_datadir}/squid/errors/Polish | |
673 | %lang(pt) %{_datadir}/squid/errors/Portuguese | |
674 | %lang(ro) %{_datadir}/squid/errors/Romanian | |
675 | %lang(ru) %{_datadir}/squid/errors/Russian-1251 | |
676 | %lang(ru) %{_datadir}/squid/errors/Russian-koi8-r | |
677 | %lang(zh_CN) %{_datadir}/squid/errors/Simplify_Chinese | |
678 | %lang(sk) %{_datadir}/squid/errors/Slovak | |
679 | %lang(es) %{_datadir}/squid/errors/Spanish | |
680 | %lang(sr) %{_datadir}/squid/errors/Serbian | |
681 | %lang(sv) %{_datadir}/squid/errors/Swedish | |
682 | %lang(zh_TW) %{_datadir}/squid/errors/Traditional_Chinese | |
683 | %lang(tr) %{_datadir}/squid/errors/Turkish | |
684 | %lang(uk) %{_datadir}/squid/errors/Ukrainian* | |
685 | %dir %{_libexecdir} | |
686 | ||
687 | %attr(770,root,squid) %dir /var/log/archive/squid | |
688 | %attr(770,root,squid) %dir /var/log/squid | |
689 | %attr(660,root,squid) %ghost /var/log/squid/* | |
690 | ||
691 | %attr(770,root,squid) %dir /var/cache/squid | |
692 | %ghost /var/cache/squid/netdb_state | |
693 | %ghost /var/cache/squid/swap.state | |
694 | %ghost /var/cache/squid/swap.state.clean | |
695 | %ghost /var/cache/squid/swap.state.last-clean | |
696 | %{_mandir}/man8/squid.8* | |
697 | ||
698 | %files cachemgr | |
699 | %defattr(644,root,root,755) | |
700 | %dir %attr(750,root,http) %{_webapps}/%{_webapp} | |
701 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_webapps}/%{_webapp}/apache.conf | |
702 | %attr(640,root,root) %config(noreplace) %verify(not md5 mtime size) %{_webapps}/%{_webapp}/httpd.conf | |
703 | %attr(640,root,http) %config(noreplace) %verify(not md5 mtime size) %{_webapps}/%{_webapp}/cachemgr.conf | |
704 | %attr(755,root,root) %{_cgidir}/cachemgr.cgi | |
705 | %{_mandir}/man8/cachemgr.cgi.8* | |
706 | ||
707 | %files ldap_auth | |
708 | %defattr(644,root,root,755) | |
709 | %doc helpers/basic_auth/LDAP/README | |
710 | %attr(755,root,root) %{_libexecdir}/%{name}_ldap_auth | |
711 | %{_mandir}/man8/%{name}_ldap_auth.* | |
712 | ||
713 | %files pam_auth | |
714 | %defattr(644,root,root,755) | |
715 | %doc helpers/basic_auth/PAM/pam_auth.c | |
716 | %config(noreplace) /etc/pam.d/squid | |
717 | %config(noreplace) /etc/security/blacklist.squid | |
718 | %attr(755,root,root) %{_libexecdir}/pam_auth | |
719 | %{_mandir}/man8/pam_auth.8* | |
720 | ||
721 | %files smb_auth | |
722 | %defattr(644,root,root,755) | |
723 | %doc helpers/basic_auth/SMB/{README,ChangeLog,smb_auth.sh} | |
724 | %doc helpers/basic_auth/multi-domain-NTLM/* | |
725 | %attr(755,root,root) %{_libexecdir}/smb_auth* | |
726 | ||
727 | %files msnt_auth | |
728 | %defattr(644,root,root,755) | |
729 | %doc helpers/basic_auth/MSNT/README* | |
730 | %attr(755,root,root) %{_libexecdir}/msnt_auth | |
731 | %attr(640,root,squid) %config(noreplace) %verify(not md5 mtime size) %{_sysconfdir}/msntauth.conf | |
732 | ||
733 | %files yp_auth | |
734 | %defattr(644,root,root,755) | |
735 | %attr(755,root,root) %{_libexecdir}/yp_auth | |
736 | ||
737 | %files ncsa_auth | |
738 | %defattr(644,root,root,755) | |
739 | %attr(755,root,root) %{_libexecdir}/ncsa_auth | |
740 | %{_mandir}/man8/ncsa_auth.8* | |
741 | ||
742 | %files sasl_auth | |
743 | %defattr(644,root,root,755) | |
744 | %doc helpers/basic_auth/SASL/{README,squid_sasl*} | |
745 | %attr(755,root,root) %{_libexecdir}/sasl_auth | |
746 | ||
747 | %files getpwname_auth | |
748 | %defattr(644,root,root,755) | |
749 | %attr(755,root,root) %{_libexecdir}/getpwname_auth | |
750 | ||
751 | %files passwd_auth | |
752 | %defattr(644,root,root,755) | |
753 | %attr(755,root,root) %{_libexecdir}/digest_pw_auth | |
754 | ||
755 | %files ntlm_auth | |
756 | %defattr(644,root,root,755) | |
757 | %doc helpers/ntlm_auth/no_check/{README*,no_check.pl} | |
758 | %attr(755,root,root) %{_libexecdir}/ntlm_auth | |
759 | ||
760 | %files digest_ldap_auth | |
761 | %defattr(644,root,root,755) | |
762 | %attr(755,root,root) %{_libexecdir}/digest_ldap_auth | |
763 | ||
764 | %files ip_acl | |
765 | %defattr(644,root,root,755) | |
766 | %doc helpers/external_acl/ip_user/{README,example*} | |
767 | %attr(755,root,root) %{_libexecdir}/ip_user_check | |
768 | ||
769 | %files ldap_acl | |
770 | %defattr(644,root,root,755) | |
771 | %attr(755,root,root) %{_libexecdir}/squid_ldap_group | |
772 | %{_mandir}/man8/%{name}_ldap_group.* | |
773 | ||
774 | %files unix_acl | |
775 | %defattr(644,root,root,755) | |
776 | %doc helpers/external_acl/unix_group/README | |
777 | %attr(755,root,root) %{_libexecdir}/squid_unix_group | |
778 | %{_mandir}/man8/%{name}_unix_group.* | |
779 | ||
780 | %files wbinfo_acl | |
781 | %defattr(644,root,root,755) | |
782 | %attr(755,root,root) %{_libexecdir}/wbinfo_group.pl | |
783 | ||
784 | %files session_acl | |
785 | %defattr(644,root,root,755) | |
786 | %attr(755,root,root) %{_libexecdir}/squid_session | |
787 | %{_mandir}/man8/%{name}_session.8* | |
788 | ||
789 | %files scripts | |
790 | %defattr(644,root,root,755) | |
791 | %attr(755,root,root) %{_libexecdir}/*.pl | |
792 | %attr(755,root,root) %{_libexecdir}/contrib |