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