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