-# $Id: privoxy-rh.spec,v 1.24 2002/04/11 10:09:20 oes Exp $
+# $Id: privoxy-rh.spec,v 1.30 2002/04/26 15:51:05 morcego 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
+Version: 2.9.15
Release: 1
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
# 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
# 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
%{_mandir}/man1/%{name}.*
%changelog
+* 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.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
#