5d09d173c7066e9fb0eea2d58a98c08fa1a501c7
[privoxy.git] / junkbuster-rh.spec
1 # $Id: junkbuster-rh.spec,v 1.5 2001/06/09 09:14:11 swa Exp $
2 #
3 # Written by and Copyright (C) 2001 the SourceForge
4 # IJBSWA team.  http://ijbswa.sourceforge.net
5 #
6 # Based on the Internet Junkbuster originally written
7 # by and Copyright (C) 1997 Anonymous Coders and 
8 # Junkbusters Corporation.  http://www.junkbusters.com
9 #
10 # This program is free software; you can redistribute it 
11 # and/or modify it under the terms of the GNU General
12 # Public License as published by the Free Software
13 # Foundation; either version 2 of the License, or (at
14 # your option) any later version.
15 #
16 # This program is distributed in the hope that it will
17 # be useful, but WITHOUT ANY WARRANTY; without even the
18 # implied warranty of MERCHANTABILITY or FITNESS FOR A
19 # PARTICULAR PURPOSE.  See the GNU General Public
20 # License for more details.
21 #
22 # The GNU General Public License should be included with
23 # this file.  If not, you can view it at
24 # http://www.gnu.org/copyleft/gpl.html
25 # or write to the Free Software Foundation, Inc., 59
26 # Temple Place - Suite 330, Boston, MA  02111-1307, USA.
27 #
28 # $Log: junkbuster-rh.spec,v $
29 # Revision 1.5  2001/06/09 09:14:11  swa
30 # shamelessly adapted RPM stuff from the newest rpm that
31 # RedHat provided for the JB.
32 #
33 # Revision 1.4  2001/06/08 20:54:18  swa
34 # type with status file. remove forward et. al from file list.
35 #
36 # Revision 1.3  2001/06/07 17:28:10  swa
37 # cosmetics
38 #
39 # Revision 1.2  2001/06/04 18:31:58  swa
40 # files are now prefixed with either `confdir' or `logdir'.
41 # `make redhat-dist' replaces both entries confdir and logdir
42 # with redhat values
43 #
44 # Revision 1.1  2001/06/04 10:44:57  swa
45 # `make redhatr-dist' now works. Except for the paths
46 # in the config file.
47 #
48 #
49 #
50 Summary: The Internet Junkbuster
51 Vendor: http://ijbswa.sourceforge.net
52 Name: junkbuster
53 Version: 2.9.4
54 Release: 1
55 Source0: http://www.waldherr.org/junkbuster/ijbswa.tar.gz
56 Copyright: GPL
57 BuildRoot: %{_tmppath}/%{name}-root
58 Group: Networking/Utilities
59 URL: http://ijbswa.sourceforge.net/
60 Packager: Stefan Waldherr <stefan@waldherr.org>
61 Obsoletes: junkbuster-raw junkbuster-blank
62 Prereq: /usr/sbin/useradd , /sbin/chkconfig , /sbin/service 
63 Conflicts: junkbuster-raw junkbuster-blank
64
65 %description
66 The Internet Junkbuster stops your browser from displaying the
67 advertisement images that pervade many commercial web pages.  Since
68 your browser has to download fewer images, surfing the web should be
69 faster.
70
71 %define ijbconf %{_sysconfdir}/junkbuster
72
73 %prep
74 %setup -c -n %{name}-%{version}-%{release}
75 %build
76 %configure
77 make
78 strip junkbuster
79
80 %pre
81 /usr/sbin/useradd -d /etc/junkbuster -u 73 -r junkbust > /dev/null 2>&1 || /bin/true
82
83 %install
84 rm -rf $RPM_BUILD_ROOT
85 mkdir -p ${RPM_BUILD_ROOT}%{_sbindir} \
86          ${RPM_BUILD_ROOT}%{_mandir}/man8 \
87          ${RPM_BUILD_ROOT}/var/log/junkbuster \
88          ${RPM_BUILD_ROOT}%{ijbconf}/templates \
89          ${RPM_BUILD_ROOT}%{_sysconfdir}/logrotate.d \
90          ${RPM_BUILD_ROOT}%{_sysconfdir}/rc.d/init.d
91
92 install -s -m 744 junkbuster $RPM_BUILD_ROOT%{_sbindir}/junkbuster
93 cp -f junkbuster.1 $RPM_BUILD_ROOT%{_mandir}/man8/junkbuster.8
94 cp -f permissionsfile $RPM_BUILD_ROOT%{ijbconf}/permissionsfile
95 cp -f re_filterfile $RPM_BUILD_ROOT%{ijbconf}/re_filterfile
96 cp -f trust $RPM_BUILD_ROOT%{ijbconf}/trust
97 cp -f templates/default $RPM_BUILD_ROOT%{ijbconf}/templates/
98 cp -f templates/show-status  $RPM_BUILD_ROOT%{ijbconf}/templates/
99 cp -f templates/show-status-file  $RPM_BUILD_ROOT%{ijbconf}/templates/
100 cp -f junkbuster.logrotate $RPM_BUILD_ROOT/etc/logrotate.d/junkbuster
101 install -m 755 junkbuster.init $RPM_BUILD_ROOT/etc/rc.d/init.d/junkbuster
102 install -m 744 -d $RPM_BUILD_ROOT/var/log/junkbuster
103
104 # verify all file locations, etc. in the config file
105 # don't start with ^ or commented lines are not replaced
106 cat config | \
107     sed 's/^confdir.*/confdir \/etc\/junkbuster/g' | \
108 #    sed 's/^permissionsfile.*/permissionsfile \/etc\/junkbuster\/permissionsfile/g' | \
109 #    sed 's/^re_filterfile.*/re_filterfile \/etc\/junkbuster\/re_filterfile/g' | \
110 #    sed 's/^logfile.*/logfile \/var\/log\/junkbuster\/logfile/g' | \
111 #    sed 's/^jarfile.*/jarfile \/var\/log\/junkbuster\/jarfile/g' | \
112 #    sed 's/^forward.*/forward \/etc\/junkbuster\/forward/g' | \
113 #    sed 's/^aclfile.*/aclfile \/etc\/junkbuster\/aclfile/g' > \
114     sed 's/^logdir.*/logdir \/var\/log\/junkbuster/g' > \
115     $RPM_BUILD_ROOT/etc/junkbuster/config
116
117 %post
118 if {[ "$1" = "1" ]; then
119         /sbin/chkconfig --add junkbuster
120 fi
121
122 %preun
123 if [ "$1" = "0" ]; then
124         /sbin/service junkbuster stop > /dev/null 2>&1 ||:
125         /sbin/chkconfig --del junkbuster
126 fi
127
128 %postun
129 if [ "$1" -ge "1" ]; then
130         /sbin/service junkbuster condrestart > /dev/null 2>&1
131 fi
132
133 %clean
134 rm -rf $RPM_BUILD_ROOT
135
136 %files
137 %defattr(-,root,root)
138 # %doc ijbfaq.html ijbman.html README README.TOO gpl.html
139 %doc junkbuster.weekly junkbuster.monthly
140 %dir %{ijbconf}
141 %config %{ijbconf}/*
142 %attr(0744,junkbust,junkbust) %dir /var/log/junkbuster
143 %config %{_sysconfdir}/logrotate.d/junkbuster
144 %attr(0744,junkbust,junkbust)/usr/sbin/junkbuster
145 %{_mandir}/man8/*
146 %config /etc/rc.d/init.d/junkbuster
147
148
149 %changelog
150
151 * Sun Jun  3 2001 Stefan Waldherr <stefan@waldherr.org>
152 - rework of RPM
153
154 * Mon Sep 25 2000 Stefan Waldherr <stefan@waldherr.org>
155 - CLF Logging patch by davep@cyw.uklinux.net
156 - Hal DeVore <haldevore@earthling.net> fix akamaitech in blocklist
157
158 * Sun Sep 17 2000 Stefan Waldherr <stefan@waldherr.org>
159 - Steve Kemp skx@tardis.ed.ac.uk's javascript popup patch.
160 - Markus Breitenbach breitenb@rbg.informatik.tu-darmstadt.de supplied
161   numerous fixes and enhancements for Steve's patch.
162 - adamlock@netscape.com (Adam Lock) in the windows version:
163   - Taskbar activity spinner always spins even when logging is
164   turned off (which is the default) - people who don't
165   like the spinner can turn it off from a menu option.
166   - Taskbar popup menu has a options submenu - people can now
167   open the settings files for cookies, blockers etc.
168   without opening the JB window.
169   - Logging functionality works again
170   - Buffer overflow is fixed - new code uses a bigger buffer
171   and snprintf so it shouldn't overflow anymore.
172 - Fixed userid swa, group learning problem while installing.
173   root must build RPM.
174 - Added patch by Benjamin Low <ben@snrc.uow.edu.au> that prevents JB to
175   core dump when there is no log file.
176 - Tweaked SuSE startup with the help of mohataj@gmx.net and Doc.B@gmx.de.
177 - Fixed man page to include imagefile and popupfile.
178 - Sanity check for the statistics function added.
179 - "Patrick D'Cruze" <pdcruze@orac.iinet.net.au>: It seems Microsoft
180  are transitioning Hotmail from FreeBSD/Apache to Windows 2000/IIS.
181  With IIS/5, it appears to omit the trailing \r\n from http header
182  only messages.  eg, when I visit http://www.hotmail.com, IIS/5
183  responds with a HTTP 302 redirect header.  However, this header
184  message is missing the trailing \r\n.  IIS/5 then closes the
185  connection.  Junkbuster, unfortunately, discards the header becomes
186  it thinks it is incomplete - and it is.  MS have transmitted an
187  incomplete header!
188 - Added bug reports and patch submission forms in the docs.
189
190 * Mon Mar 20 2000 Stefan Waldherr <stefan@waldherr.org>
191        Andrew <anw@tirana.freewire.co.uk> extended the JB:
192        Display of statistics of the total number of requests and the number
193        of requests filtered by junkbuster, also the percentage of requests
194        filtered. Suppression of the listing of files on the proxy-args page.
195        All stuff optional and configurable.
196
197 * Sun Sep 12 1999 Stefan Waldherr <stefan@waldherr.org>
198        Jan Willamowius (jan@janhh.shnet.org) fixed a bug in the 
199        code which prevented the JB from handling URLs of the form
200        user:password@www.foo.com. Fixed.
201
202 * Mon Aug  2 1999 Stefan Waldherr <stefan@waldherr.org>
203         Blank images are no longer cached, thanks to a hint from Markus 
204         Breitenbach <breitenb@rbg.informatik.tu-darmstadt.de>. The user 
205         agent is NO longer set by the Junkbuster. Sadly, many sites depend 
206         on the correct browser version nowadays. Incorporated many 
207         suggestions from Jan "Yenya" Kasprzak <kas@fi.muni.cz> for the
208         spec file. Fixed logging problem and since runlevel 2 does not 
209         use networking, I replaced /etc/rc.d/rc2.d/S84junkbuster with
210         /etc/rc.d/rc2.d/K09junkbuster thanks to Shaw Walker 
211         <walker@netgate.net>. You should now be able to build this RPM as 
212         a non-root user (mathias@weidner.sem.lipsia.de).
213
214 * Sun Jan 31 1999 Stefan Waldherr <stefan@waldherr.org>
215         /var/log/junkbuster set to nobody. Added /etc/junkbuster/imagelist
216         to allow more sophisticated matching of blocked images. Logrotate
217         logfile. Added files for auto-updating the blocklist et al.
218
219 * Wed Dec 16 1998 Stefan Waldherr <stefan@waldherr.org>
220         Configure blank version via config file. No separate blank
221         version anymore. Added Roland's <roland@spinnaker.rhein.de>
222         patch to show a logo instead of a blank area. Added a suggestion
223         from Alex <alex@cocoa.demon.co.uk>: /var/lock/subsys/junkbuster.
224         More regexps in the blocklist. Prepared the forwardfile for
225         squid. Extended image regexp with help from gabriel 
226         <somlo@CS.ColoState.EDU>.
227
228 * Thu Nov 19 1998 Stefan Waldherr <stefan@waldherr.org>
229         All RPMs now identify themselves in the show-proxy-args page.
230         Released Windoze version. Run junkbuster as nobody instead of
231         root. 
232
233 * Fri Oct 30 1998 Stefan Waldherr <stefan@waldherr.org>
234         Newest version. First release (hence the little version number
235         mixture -- 2.0.2-0 instead of 2.0-7). This version tightens 
236         security over 2.0.1; some multi-user sites will need to change 
237         the listen-address in the configuration file. The blank version of
238         the Internet Junkbuster has a more sophisticated way of replacing
239         images. All RPMs identify themselves in the show-proxy-args page.
240
241 * Thu Sep 23 1998 Stefan Waldherr <stefan@waldherr.org>
242         Modified the blocking feature, so that only GIFs and JPEGs are
243         blocked and replaced but not HTML pages. Thanks to 
244         "Gerd Flender" <plgerd@informatik.uni-siegen.de> for this nice
245         idea. Added numerous stuff to the blocklist. Keep patches in
246         seperate files and no longer in diffs (easier to maintain).
247
248 * Tue Jun 16 1998 Stefan Waldherr <swa@cs.cmu.edu>
249         Moved config files to /etc/junkbuster directory, moved man page,
250         added BuildRoot directive (Thanks to Alexey Nogin <ayn2@cornell.edu>)
251         Made new version junkbuster-raw (which is only a stripped version of 
252         the junkuster rpm, i.e. without my blocklist, etc.)
253
254 * Tue Jun 16 1998 (2.0-1)
255         Uhm, not that much. Just a new junkbuster version that
256         fixes a couple of bugs ... and of course a bigger 
257         blocklist with the unique Now-less-ads-than-ever(SM)
258         feature.
259         Oh, one thing: I changed the default user agent to Linux -- no 
260         need anymore to support Apple.
261
262 * Tue Jun 16 1998 (2.0-0)
263         Now-less-ads-than-ever (SM)
264         compiled with gcc instead of cc
265         compiled with -O3, thus it should be a little faster
266         show-proxy-args now works
267         /etc/junkbuster.init wasn't necessary
268
269 * Tue Jun 16 1998 (1.4)
270         some more config files were put into /etc
271         The junkbuster-blank rpm returns a 1x1 pixel image, that gets 
272         displayed by Netscape instead of the blocked image.
273         Read http://www.waldherr.org/junkbuster/ for
274         further info.
275
276 * Tue Jun 16 1998 (1.3)
277         The program has been moved to /usr/sbin (from /usr/local/bin)
278         Init- and stopscripts (/etc/rc.d/rc*) have been added so
279         that the junkbuster starts automatically during bootup.
280         The /etc/blocklist file is much more sophisticated. Theoretically
281         one should e.g. browse all major US and German newspapers without
282         seeing one annoying ad.
283         junkbuster.init was modified. It now starts junkbuster with an
284         additional "-r @" flag.