[75144] trunk/dports/www/privoxy/Portfile

jmr at macports.org jmr at macports.org
Sat Jan 15 21:57:27 PST 2011


Revision: 75144
          http://trac.macports.org/changeset/75144
Author:   jmr at macports.org
Date:     2011-01-15 21:57:19 -0800 (Sat, 15 Jan 2011)
Log Message:
-----------
privoxy: handle interaction of user/group creation, archive mode, and non-root installs better

Modified Paths:
--------------
    trunk/dports/www/privoxy/Portfile

Modified: trunk/dports/www/privoxy/Portfile
===================================================================
--- trunk/dports/www/privoxy/Portfile	2011-01-16 05:51:02 UTC (rev 75143)
+++ trunk/dports/www/privoxy/Portfile	2011-01-16 05:57:19 UTC (rev 75144)
@@ -32,21 +32,26 @@
 set privoxyGroup	privoxy
 set privoxyUser		privoxy
 
+if {[tbool portarchivemode]} {
+    pre-unarchive {
+        addgroup	${privoxyGroup}
+        adduser		${privoxyUser} gid=[existsgroup ${privoxyGroup}]
+    }
+}
 pre-configure {
-	addgroup	${privoxyGroup}
-	adduser		${privoxyUser} gid=[existsgroup ${privoxyGroup}]
-
-	system "cd ${worksrcpath} && autoheader"
+    if {![tbool portarchivemode]} {
+        addgroup	${privoxyGroup}
+        adduser		${privoxyUser} gid=[existsgroup ${privoxyGroup}]
+    }
+    if {[existsuser ${privoxyUser}] != 0 && [existsgroup ${privoxyGroup}] != 0} {
+        configure.args-append --with-user=${privoxyUser} \
+					          --with-group=${privoxyGroup}
+    }
+    system "cd ${worksrcpath} && autoheader"
 }
-pre-install {
-	addgroup	${privoxyGroup}
-	adduser		${privoxyUser} gid=[existsgroup ${privoxyGroup}]
-}
 
 use_autoconf		yes
-configure.args		--with-user=${privoxyUser} \
-					--with-group=${privoxyGroup} \
-					--sysconfdir=${prefix}/etc/${name} \
+configure.args		--sysconfdir=${prefix}/etc/${name} \
 					--mandir=${prefix}/share/man \
 					--enable-dynamic-pcre \
 					--enable-zlib
@@ -65,8 +70,13 @@
 		system "cd ${destroot}${prefix}/etc/rc.d && patch -p0 < ${filespath}/patch-privoxy.sh.diff"
 		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
+		if {[existsuser ${privoxyUser}] != 0} {
+            reinplace "s|@@PRIVOXY_USER@@|${privoxyUser}|g" \
+                ${destroot}${prefix}/etc/rc.d/privoxy.sh
+		} else {
+            reinplace "s|@@PRIVOXY_USER@@|$env(USER)|g" \
+                ${destroot}${prefix}/etc/rc.d/privoxy.sh
+		}
 	}
 	# Rename these so local modifications are not removed on uninstall.
 	# NOTE: Always overwrite default.action and default.filter.
@@ -87,18 +97,22 @@
 	# 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}
+	if {[existsuser ${privoxyUser}] != 0 && [existsgroup ${privoxyGroup}] != 0} {
+        # 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} {
 		touch ${prefix}/var/log/privoxy/${privoxyLog}
-		file attributes ${prefix}/var/log/privoxy/${privoxyLog} \
-			-group ${privoxyGroup} -owner ${privoxyUser} \
-			-permissions 0660
+		if {[existsuser ${privoxyUser}] != 0 && [existsgroup ${privoxyGroup}] != 0} {
+            file attributes ${prefix}/var/log/privoxy/${privoxyLog} \
+                -group ${privoxyGroup} -owner ${privoxyUser} \
+                -permissions 0660
+		}
 	}
 	foreach privoxyConf {config match-all.action trust user.action user.filter} {
 		if ![file exists ${prefix}/etc/privoxy/${privoxyConf}] {
@@ -110,9 +124,11 @@
 			    file copy ${prefix}/etc/privoxy/${privoxyConf}.new \
 				    ${prefix}/etc/privoxy/${privoxyConf}
 			}
-			file attributes ${prefix}/etc/privoxy/${privoxyConf} \
-				-group ${privoxyGroup} -owner ${privoxyUser} \
-				-permissions 0660
+			if {[existsuser ${privoxyUser}] != 0 && [existsgroup ${privoxyGroup}] != 0} {
+                file attributes ${prefix}/etc/privoxy/${privoxyConf} \
+                    -group ${privoxyGroup} -owner ${privoxyUser} \
+                    -permissions 0660
+			}
 		}
 	}
 }
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20110115/575f4984/attachment.html>


More information about the macports-changes mailing list