-# $Id: privoxy-rh.spec,v 1.24 2002/04/11 10:09:20 oes Exp $
+# $Id: privoxy-rh.spec,v 1.35 2002/05/28 03:56:59 hal9 Exp $
#
# Written by and Copyright (C) 2001 the SourceForge
# Privoxy team. http://www.privoxy.org/
%define veryoldname junkbust
%define oldname junkbuster
%define privoxyconf %{_sysconfdir}/%{name}
+%define privoxy_uid 73
+%define privoxy_gid 73
Name: privoxy
# ATTENTION
# Version and release should be updated acordingly on configure.in and
# configure. Otherwise, the package can be build with the wrong value
-Version: 2.9.14
-Release: 1
+Version: 2.9.15
+Release: 2
Summary: Privoxy - privacy enhancing proxy
License: GPL
-Vendor: http://www.privoxy.org
+Vendor: Privoxy.Org
Source0: http://www.waldherr.org/%{name}/%{name}-%{version}.tar.gz
BuildRoot: %{_tmppath}/%{name}-%{version}-root
Group: Networking/Utilities
%setup -q -c
%build
+
+# We check to see if versions match
+VERSION_MAJOR=2
+VERSION_MINOR=9
+VERSION_POINT=15
+
+CONFIG_VERSION=`cat configure.in | sed -n -e 's/^VERSION_MAJOR=\([0-9]*\)/\1./p' -e 's/^VERSION_MINOR=\([0-9]*\)/\1./p' -e 's/^VERSION_POINT=\([0-9]*\)/\1/p' | awk '{printf $1}'`
+if [ "%{version}" != "${CONFIG_VERSION}" ]; then
+ echo "The version declared on the specfile does not match the version"
+ echo "declared on configure.in. This should not happen. The build will"
+ echo "be interrupted now, so you can fix it."
+ exit 1
+fi
autoheader
autoconf
%configure --disable-dynamic-pcre
## Gziping the documentation files is not recomended - morcego
#gzip README AUTHORS ChangeLog %{name}.1 || /bin/true
+# Using sed to "convert" from DOS format to UNIX
+
install -s -m 744 %{name} %{buildroot}%{_sbindir}/%{name}
cp -f %{name}.1 %{buildroot}%{_mandir}/man1/%{name}.1
-cp -f *.action %{buildroot}%{privoxyconf}/
-cp -f default.filter %{buildroot}%{privoxyconf}/default.filter
-cp -f trust %{buildroot}%{privoxyconf}/trust
-cp -f templates/* %{buildroot}%{privoxyconf}/templates/
+for i in `ls *.action`
+do
+ cat $i | sed -e 's/\r$//' > %{buildroot}%{privoxyconf}/$i
+done
+cat default.filter | sed -e 's/\r$//' > %{buildroot}%{privoxyconf}/default.filter
+cat trust | sed -e 's/\r$//' > %{buildroot}%{privoxyconf}/trust
+(
+cd templates
+for i in `ls`
+do
+cat $i | sed -e 's/\r$//' > buildroot}%{privoxyconf}/templates/$i
+done
+)
cp -f %{name}.logrotate %{buildroot}%{_sysconfdir}/logrotate.d/%{name}
install -m 755 %{name}.init %{buildroot}%{_sysconfdir}/rc.d/init.d/%{name}
install -m 711 -d %{buildroot}%{_localstatedir}/log/%{name}
# sed 's/^jarfile.*/jarfile \%{_localstatedir}\/log\/%{name}\/jarfile/g' | \
# sed 's/^forward.*/forward \/etc\/%{name}\/forward/g' | \
# sed 's/^aclfile.*/aclfile \/etc\/%{name}\/aclfile/g' > \
- sed 's@^logdir.*@logdir %{_localstatedir}/log/%{name}@g' > \
+ sed 's@^logdir.*@logdir %{_localstatedir}/log/%{name}@g' | \
+ sed -e 's/\r$//' > \
%{buildroot}%{privoxyconf}/config
perl -pe 's/{-no-cookies}/{-no-cookies}\n\.redhat.com/' default.action >\
%{buildroot}%{privoxyconf}/default.action
# Doing it by brute force. Much cleaner (no more Mr. Nice Guy) -- morcego
# Change the group name. Remove anything left behind.
-groupmod -n %{name} %{oldname} > /dev/null 2>&1 ||:
-groupmod -n %{name} %{veryoldname} > /dev/null 2>&1 ||:
+groupmod -g %{privoxy_gid} -n %{name} %{oldname} > /dev/null 2>&1 ||:
+groupmod -g %{privoxy_gid} -n %{name} %{veryoldname} > /dev/null 2>&1 ||:
groupdel %{oldname} > /dev/null 2>&1 ||:
groupdel %{veryoldname} > /dev/null 2>&1 ||:
# Same for username
-usermod -l %{name} -d %{_sysconfdir}/%{name} -s "" %{oldname} > /dev/null 2>&1 || :
-usermod -l %{name} -d %{_sysconfdir}/%{name} -s "" %{veryoldname} > /dev/null 2>&1 || :
+usermod -u %{privoxy_uid} -g %{privoxy_gid} -l %{name} -d %{_sysconfdir}/%{name} -s "" %{oldname} > /dev/null 2>&1 || :
+usermod -u %{privoxy_uid} -g %{privoxy_gid} -l %{name} -d %{_sysconfdir}/%{name} -s "" %{veryoldname} > /dev/null 2>&1 || :
userdel %{oldname} > /dev/null 2>&1 ||:
userdel %{veryoldname} > /dev/null 2>&1 ||:
+# Doublecheck to see if the group exist, and that it has the correct gid
+/bin/grep -E '^%{name}:' /etc/group > /dev/null 2>&1
+if [ $? -eq 1 ]; then
+ # Looks like it does not exist. Create it
+ groupadd -g %{privoxy_gid} %{name} > /dev/null 2>&1
+else
+ /bin/grep -E '^%{name}:[^:]*:%{privoxy_gid}:' /etc/group > /dev/null 2>&1
+ if [ $? -eq 1 ]; then
+ # The group exists, but does not have the correct gid
+ groupmod -g %{privoxy_gid} %{name} > /dev/null 2>&1
+ fi
+fi
+
# Check to see if everything is okey. Create user if it still does not
# exist
id %{name} > /dev/null 2>&1
if [ $? -eq 1 ]; then
- /usr/sbin/useradd -d %{_sysconfdir}/%{name} -r -s "" %{name} > /dev/null 2>&1
+ /usr/sbin/useradd -u %{privoxy_uid} -g %{privoxy_gid} -d %{_sysconfdir}/%{name} -r -s "" %{name} > /dev/null 2>&1
+fi
+
+# Double check that the group has the correct uid
+P_UID=`id -u %{name} 2>/dev/null`
+if [ $P_UID -ne %{privoxy_uid} ]; then
+ /usr/sbin/usermod -u %{privoxy_uid} %{name}
+fi
+
+# The same for the gid
+P_GID=`id -g %{name} 2>/dev/null`
+if [ $P_GID -ne %{privoxy_gid} ]; then
+ /usr/sbin/usermod -g %{privoxy_gid} %{name}
fi
%post
#fi
# We only remove it we this is not an upgrade
if [ "$1" = "0" ]; then
+ /bin/grep -E '^%{name}:' /etc/group > /dev/null && /usr/sbin/groupdel %{name} || /bin/true
id privoxy > /dev/null 2>&1 && /usr/sbin/userdel privoxy || /bin/true
fi
%doc doc/webserver/developer-manual
%doc doc/webserver/user-manual
%doc doc/webserver/faq
-%doc doc/webserver/p_doc.css doc/webserver/p_web.css doc/webserver/index.html
+%doc doc/webserver/p_doc.css doc/webserver/p_web.css doc/webserver/privoxy-index.html
+%doc doc/webserver/images
+%doc doc/webserver/man-page
%dir %{privoxyconf}
%dir %{privoxyconf}/templates
# We should not use wildchars here. This could mask missing files problems
# -- morcego
# WARNING ! WARNING ! WARNING ! WARNING ! WARNING ! WARNING ! WARNING !
-%config %{privoxyconf}/config
-%config %{privoxyconf}/advanced.action
-%config %{privoxyconf}/basic.action
-%config %{privoxyconf}/intermediate.action
+%config(noreplace) %{privoxyconf}/config
+%config %{privoxyconf}/standard.action
+%config(noreplace) %{privoxyconf}/user.action
%config %{privoxyconf}/default.action
%config %{privoxyconf}/default.filter
%config %{privoxyconf}/trust
-%config %{privoxyconf}/templates/untrusted
-%config %{privoxyconf}/templates/toggle-mini
-%config %{privoxyconf}/templates/default
-%config %{privoxyconf}/templates/connect-failed
-%config %{privoxyconf}/templates/show-status-file
+# Please keep these alphabetized so its easier to find one that
+# is not included.
+%config %{privoxyconf}/templates/blocked
+%config %{privoxyconf}/templates/cgi-error-404
%config %{privoxyconf}/templates/cgi-error-bad-param
-%config %{privoxyconf}/templates/show-version
+%config %{privoxyconf}/templates/cgi-error-disabled
%config %{privoxyconf}/templates/cgi-error-file
-%config %{privoxyconf}/templates/cgi-error-404
+%config %{privoxyconf}/templates/cgi-error-file-read-only
+%config %{privoxyconf}/templates/cgi-error-modified
%config %{privoxyconf}/templates/cgi-error-parse
-%config %{privoxyconf}/templates/edit-actions-url-form
-%config %{privoxyconf}/templates/no-such-domain
-%config %{privoxyconf}/templates/edit-actions-add-url-form
%config %{privoxyconf}/templates/cgi-style.css
+%config %{privoxyconf}/templates/connect-failed
+%config %{privoxyconf}/templates/default
+%config %{privoxyconf}/templates/edit-actions-add-url-form
+%config %{privoxyconf}/templates/edit-actions-for-url
%config %{privoxyconf}/templates/edit-actions-for-url-filter
-%config %{privoxyconf}/templates/cgi-error-disabled
-%config %{privoxyconf}/templates/edit-actions-remove-url-form
-%config %{privoxyconf}/templates/show-request
-%config %{privoxyconf}/templates/cgi-error-modified
-%config %{privoxyconf}/templates/mod-unstable-warning
%config %{privoxyconf}/templates/edit-actions-list
-%config %{privoxyconf}/templates/toggle
+%config %{privoxyconf}/templates/edit-actions-list-button
%config %{privoxyconf}/templates/edit-actions-list-section
-%config %{privoxyconf}/templates/mod-title
%config %{privoxyconf}/templates/edit-actions-list-url
-%config %{privoxyconf}/templates/show-status
-%config %{privoxyconf}/templates/blocked
-%config %{privoxyconf}/templates/mod-support-and-service
+%config %{privoxyconf}/templates/edit-actions-remove-url-form
+%config %{privoxyconf}/templates/edit-actions-url-form
%config %{privoxyconf}/templates/mod-local-help
+%config %{privoxyconf}/templates/mod-support-and-service
+%config %{privoxyconf}/templates/mod-title
+%config %{privoxyconf}/templates/mod-unstable-warning
+%config %{privoxyconf}/templates/no-such-domain
+%config %{privoxyconf}/templates/show-request
+%config %{privoxyconf}/templates/show-status
+%config %{privoxyconf}/templates/show-status-file
%config %{privoxyconf}/templates/show-url-info
-%config %{privoxyconf}/templates/edit-actions-for-url
+%config %{privoxyconf}/templates/show-version
+%config %{privoxyconf}/templates/toggle
+%config %{privoxyconf}/templates/toggle-mini
+%config %{privoxyconf}/templates/untrusted
%config %{_sysconfdir}/logrotate.d/%{name}
%config %attr(0744,root,root) %{_sysconfdir}/rc.d/init.d/%{name}
%{_mandir}/man1/%{name}.*
%changelog
+* Thu May 30 2002 Rodrigo Barbosa <rodrigob@tisbrasil.com.br>
++ privoxy-2.9.15-2
+- Using sed to convert files from DOS to UNIX format (BUG: #562174)
+
+* Mon May 27 2002 Hal Burgiss <hal@foobox.net>
++ privoxy-2.9.15-1
+- Index.html is now privoxy-index.html.
+
+* Fri May 24 2002 Hal Burgiss <hal@foobox.net>
++ privoxy-2.9.15-1
+- Add another template and alphabetize these for easier tracking.
+- Add doc/images directory.
+
+* Wed May 15 2002 Hal Burgiss <hal@foobox.net>
++ privoxy-2.9.15-1
+- Add templates/edit-actions-list-button
+
+* Fri May 03 2002 Rodrigo Barbosa <rodrigob@tisbrasil.com.br>
++ privoxy-2.9.15-1
+- Version bump
+- Adding noreplace for %%{privoxyconf}/config
+- Included a method to verify if the versions declared on the specfile and
+ configure.in match. Interrupt the build if they don't.
+
+* Fri Apr 26 2002 Rodrigo Barbosa <rodrigob@tisbrasil.com.br>
++ privoxy-2.9.14-3
+- Changing Vendor to Privoxy.Org
+
+* Tue Apr 23 2002 Hal Burgiss <hal@foobox.net>
++ privoxy-2.9.14-2
+- Adjust for new *actions files.
+
+* Mon Apr 22 2002 Rodrigo Barbosa <rodrigob@tisbrasil.com.br>
++ privoxy-2.9.14-2
+- Removed the redhat hack that prevented the user and group from
+ being dealocated. That was a misundestanding of my part regarding
+ redhat policy.
+
+* Mon Apr 22 2002 Rodrigo Barbosa <rodrigob@tisbrasil.com.br>
++ privoxy-2.9.14-2
+- Using macros to define uid and gid values
+- Bumping release
+
+* Mon Apr 22 2002 Rodrigo Barbosa <rodrigob@tisbrasil.com.br>
++ privoxy-2.9.14-1
+- Changes to fixate the uid and gid values as (both) 73. This is a
+ value we hope to standarize for all distributions. RedHat already
+ uses it, and Conectiva should start as soon as I find where the heck
+ I left my cluebat :-)
+- Only remove the user and group on uninstall if this is not redhat, once
+ redhat likes to have the values allocated even if the package is not
+ installed
+
* Tue Apr 16 2002 Hal Burgiss <hal@foobox.net>
+ privoxy-2.9.13-6
- Add --disable-dynamic-pcre to configure.
additional "-r @" flag.
# $Log: privoxy-rh.spec,v $
+# Revision 1.35 2002/05/28 03:56:59 hal9
+# Index.html re-vamped as privoxy-index.html for docs.
+#
+# Revision 1.34 2002/05/25 22:09:58 hal9
+# Add html man page to keep index.html from breaking (untested).
+#
+# Revision 1.33 2002/05/25 02:08:23 hal9
+# Add doc/images directory.
+# Redhat: alphabetized list of templates (and I think added one in the process)
+#
+# Revision 1.32 2002/05/16 01:37:29 hal9
+# Add new template file so CGI stuff works :)
+#
+# Revision 1.31 2002/05/03 17:14:35 morcego
+# *.spec: Version bump to 2.9.15
+# -rh.spec: noreplace for %%{privoxyconf}/config
+# Will interrupt the build if versions from configure.in and
+# specfile do not match
+#
+# Revision 1.30 2002/04/26 15:51:05 morcego
+# Changing Vendor value to Privoxy.Org
+#
+# Revision 1.29 2002/04/24 03:13:51 hal9
+# New actions files changes.
+#
+# Revision 1.28 2002/04/22 18:51:33 morcego
+# user and group now get removed on rh too.
+#
+# Revision 1.27 2002/04/22 16:32:31 morcego
+# configure.in, *.spec: Bumping release to 2 (2.9.14-2)
+# -rh.spec: uid and gid are now macros
+# -suse.spec: Changing the header Copyright to License (Copyright is
+# deprecable)
+#
+# Revision 1.26 2002/04/22 16:24:36 morcego
+# - Changes to fixate the uid and gid values as (both) 73. This is a
+# value we hope to standarize for all distributions. RedHat already
+# uses it, and Conectiva should start as soon as I find where the heck
+# I left my cluebat :-)
+# - Only remove the user and group on uninstall if this is not redhat, once
+# redhat likes to have the values allocated even if the package is not
+# installed
+#
+# Revision 1.25 2002/04/17 01:59:12 hal9
+# Add --disable-dynamic-pcre.
+#
# Revision 1.24 2002/04/11 10:09:20 oes
# Version 2.9.14
#