# $Id: Portfile,v 1.8 2005/10/19 08:10:17 blb Exp $ PortSystem 1.0 name privoxy version 3.0.3-2 revision 3 categories www security net maintainers blb@opendarwin.org description Advanced filtering web proxy long_description \ Privoxy is a web proxy with advanced filtering capabilities for \ protecting privacy, modifying web page content, managing cookies, \ controlling access, and removing ads, banners, pop-ups and other \ obnoxious Internet junk. Privoxy has a very flexible configuration and \ can be customized to suit individual needs and tastes. Privoxy has \ application for both stand-alone systems and multi-user networks. platforms darwin homepage http://www.privoxy.org/ master_sites sourceforge:ijbswa distname ${name}-${version}-stable.src checksums md5 d7f6c2fcb926e6110659de6e866b21e4 worksrcdir ${name}-3.0.3-stable depends_lib lib:libpcre:pcre set privoxyGroup privoxy set privoxyUser privoxy patchfiles patch-GNUmakefile.in use_autoconf yes configure.env CPPFLAGS="-I${prefix}/include" LDFLAGS="-L${prefix}/lib" configure.args --disable-dynamic-pcrs --with-user=${privoxyUser} \ --with-group=${privoxyGroup} \ --sysconfdir=${prefix}/etc/${name} \ --mandir=${prefix}/share/man pre-configure { addgroup ${privoxyGroup} adduser ${privoxyUser} gid=[existsgroup ${privoxyGroup}] cd ${worksrcpath} system "autoheader" } destroot.keepdirs ${destroot}${prefix}/var/log/privoxy \ ${destroot}${prefix}/var/run post-destroot { xinstall -m 755 -d ${destroot}${prefix}/var/run # Install and fixup startup script (if non-Darwin) if {![variant_isset darwin]} { xinstall -m 755 -d ${destroot}${prefix}/etc/rc.d xinstall -m 755 -W ${worksrcpath} privoxy-generic.init \ ${destroot}${prefix}/etc/rc.d/privoxy.sh cd ${destroot}${prefix}/etc/rc.d system "patch -p0 < ${filespath}/patch-privoxy.sh" reinplace "s|@@PREFIX@@|${prefix}|g" \ ${destroot}${prefix}/etc/rc.d/privoxy.sh reinplace "s|@@PRIVOXY_USER@@|${privoxyUser}|g" \ ${destroot}${prefix}/etc/rc.d/privoxy.sh } # Rename these so local modifications are not removed on uninstall foreach privoxyConf {config trust user.action} { file rename ${destroot}${prefix}/etc/privoxy/${privoxyConf} \ ${destroot}${prefix}/etc/privoxy/${privoxyConf}-dist \ } # Remove the preinstalled log files as, otherwise, a rotation script # will fail when trying to rename and compress due to gzip not liking # multi-linked files (the one in ${prefix} and the one in # ${prefix}/var/db/dports/software/...) eval file delete [glob ${destroot}${prefix}/var/log/privoxy/*] # Make sure log directory owned by privoxy user/group file attributes ${destroot}${prefix}/var/log/privoxy \ -group ${privoxyGroup} -owner ${privoxyUser} } post-activate { # Make sure initial log files are present and setup correctly foreach privoxyLog {jarfile logfile} { system "touch ${prefix}/var/log/privoxy/${privoxyLog}" file attributes ${prefix}/var/log/privoxy/${privoxyLog} \ -group ${privoxyGroup} -owner ${privoxyUser} \ -permissions 0660 } foreach privoxyConf {config trust user.action} { if ![file exists ${prefix}/etc/privoxy/${privoxyConf}] { file copy ${prefix}/etc/privoxy/${privoxyConf}-dist \ ${prefix}/etc/privoxy/${privoxyConf} file attributes ${prefix}/etc/privoxy/${privoxyConf} \ -group ${privoxyGroup} -owner ${privoxyUser} \ -permissions 0660 } } } platform darwin { patchfiles-append patch-jcc.h startupitem.create yes startupitem.name Privoxy startupitem.start "\[ -f \"${prefix}/etc/privoxy/config\" \] \\" startupitem.start-append "\t&& ${prefix}/sbin/privoxy \\" startupitem.start-append "\t\t--pidfile ${prefix}/var/run/privoxy.pid \\" startupitem.start-append "\t\t--user ${privoxyUser} \\" startupitem.start-append "\t\t${prefix}/etc/privoxy/config 2>/dev/null" startupitem.stop "if \[ -f \"${prefix}/var/run/privoxy.pid\" \]; then" startupitem.stop-append "\tkill `cat ${prefix}/var/run/privoxy.pid` \\" startupitem.stop-append "\t\t&& rm -f ${prefix}/var/run/privoxy.pid" startupitem.stop-append "else" startupitem.stop-append "\t/usr/bin/killall -SIGUSR1 privoxy 2>/dev/null" startupitem.stop-append "fi" }