freebsd-ports/www/squid25/pkg-install
Sergei Kolobov 429f7b8550 - integrate a new patch from squid-cache.org, see
http://www.squid-cache.org/Versions/v2/2.5/bugs/#squid-2.5.STABLE4-ftp_telnet
  for details
- integrate a patch by Glen Gibb to enable ARP based ACLs and make this an
  OPTION; see also http://www.squid-cache.org/bugs/show_bug.cgi?id=909
  for his original bug report
- integrate additional vendor patches
- make --enable-underscores an OPTION
- set a tighter ACL on libexec/pinger
- use $SQUID_USER and $SQUID_GROUP in pkg-install
- wordsmith comments
- bump PORTREVISION

PR:		ports/62442
Submitted by:	maintainer

- Fix checksum for updated errorpages patch

PR:		ports/62923
Submitted by:	Michal Pasternak <dotz@irc.pl>
Approved by:	maintainer
2004-02-17 11:07:18 +00:00

105 lines
3.3 KiB
Bash

#!/bin/sh
#
# $FreeBSD$
#
PATH=/bin:/usr/bin:/usr/sbin
pkgname=$1
squid_base=${PKG_PREFIX:-/usr/local}/squid
squid_confdir=${PKG_PREFIX:-/usr/local}/etc/squid
squid_user=${SQUID_USER:=squid}
squid_group=${SQUID_GROUP:=squid}
squid_gid=3128
squid_uid=3128
case $2 in
PRE-INSTALL)
echo "===> Pre-installation configuration for ${pkgname}"
if ! pw groupshow ${squid_group} -q >/dev/null ; then
while pw groupshow -g ${squid_gid} -q >/dev/null; do
squid_gid=`expr ${squid_gid} + 1`
done
echo "There is no group '${squid_group}' on this system, so I will try to create it:"
if ! pw groupadd ${squid_group} -g ${squid_gid} -q ; then
echo "Failed to create group \"${squid_group}\"!" >&2
echo "Please create it manually." >&2
exit 1
else
echo "Group '${squid_group}' created successfully:"
fi
else
echo "I will use the existing group '${squid_group}':"
fi
pw groupshow ${squid_group}
if ! pw usershow ${squid_user} -q >/dev/null ; then
while pw usershow -u ${squid_uid} -q >/dev/null; do
squid_uid=`expr ${squid_uid} + 1`
done
echo "There is no account '${squid_user}' on this system, so I will try to create it:"
if ! pw useradd ${squid_user} -u ${squid_uid} -q \
-c "squid caching-proxy pseudo user" -g ${squid_group} \
-d "${squid_base}" -s "/sbin/nologin" -h - ; then
echo "Failed to create user '${squid_user}'!" >&2
echo "Please create it manually." >&2
exit 1
else
echo "User '${squid_user}' created successfully:"
fi
else
echo "I will use the existing user '${squid_user}':"
fi
pw usershow ${squid_user}
for dir in cache logs; do
if [ ! -d ${squid_base}/${dir} ]; then
echo "Creating ${squid_base}/${dir}..."
install -d -o ${squid_user} -g ${squid_group} \
-m 0750 ${squid_base}/${dir}
fi
done
if [ ! -d ${squid_confdir} ]; then
echo "Creating ${squid_confdir}..."
install -d -o root -g ${squid_group} \
-m 0750 ${squid_confdir}
fi
;;
POST-INSTALL)
for file in mime.conf squid.conf; do
if [ ! -f ${squid_confdir}/${file} \
-a -f ${squid_confdir}/${file}.default ]; then
echo "Creating ${file} from default..."
install -c -o root -g ${squid_group} -m 0640 \
${squid_confdir}/${file}.default ${squid_confdir}/${file}
fi
done
echo "===> Post-installation informations for ${pkgname}"
echo ""
echo " o You can find the configuration files for this package"
echo " in the directory ${squid_confdir}."
echo ""
echo " o A cache directory has been created in ${squid_base}/cache."
echo " Log files will be written to ${squid_base}/logs."
echo ""
echo " o The default configuration will deny everyone access to the"
echo " proxy service. Edit the \"http_access\" directives in"
echo " ${squid_confdir}/squid.conf to suit your needs."
echo ""
echo " o If you never ran squid on this system before, you need to"
echo " initialize the cache directory by running \"squid -z\""
echo " as 'root' or '${squid_user}' before starting squid."
echo ""
tput md
echo " *** UPDATE NOTICE ***"
echo ""
echo " Starting with version 2.5.4_6, all helper applications are"
echo " installed to ${PKG_PREFIX}/libexec/squid instead of"
echo " ${PKG_PREFIX}/libexec."
echo " Please check your squid.conf and update it if necessary."
tput me
echo ""
;;
*)
exit 64
;;
esac
exit 0