Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 20 Dec 2009 12:08:31 GMT
From:      Matthew Seaman <m.seaman@infracaninophile.co.uk>
To:        FreeBSD-gnats-submit@FreeBSD.org
Subject:   ports/141804: [maintainer] net/phpldapadmin098 -- use bsd.options.mk etc.
Message-ID:  <200912201208.nBKC8VTR024939@happy-idiot-talk.infracaninophile.co.uk>
Resent-Message-ID: <200912201210.nBKCA6ge042670@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         141804
>Category:       ports
>Synopsis:       [maintainer] net/phpldapadmin098 -- use bsd.options.mk etc.
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          maintainer-update
>Submitter-Id:   current-users
>Arrival-Date:   Sun Dec 20 12:10:06 UTC 2009
>Closed-Date:
>Last-Modified:
>Originator:     Matthew Seaman
>Release:        FreeBSD 8.0-STABLE i386
>Organization:
Infracaninophile
>Environment:
System: FreeBSD happy-idiot-talk.infracaninophile.co.uk 8.0-STABLE FreeBSD 8.0-STABLE #14: Mon Dec 14 09:19:08 GMT 2009 root@:/usr/obj/usr/src/sys/HAPPY-IDIOT-TALK i386


	
>Description:
	

Simplify the port and make better use of the general facilities provided
by the ports system:

   * Switch to using bsd.ports.options.mk -- this means that we can apply
     OPTIONS processing for suPHP support, which otherwise needs to occur
     too early.

   * Use USERS and GROUPS functionality, instead of supplying pkg-install
     scripts to create userids.

   * Drop some warnings about changes that happened a long time ago now.


>How-To-Repeat:
	
>Fix:

	

--- phpldapadmin098.diff begins here ---
diff -Nur /usr/ports/net/phpldapadmin098/Makefile phpldapadmin098/Makefile
--- /usr/ports/net/phpldapadmin098/Makefile	2009-08-22 01:31:37.000000000 +0100
+++ phpldapadmin098/Makefile	2009-12-20 10:32:57.000000000 +0000
@@ -19,6 +19,10 @@
 USE_PHP=	gettext ldap openssl pcre session
 DEFAULT_PHP_VER=	4
 
+OPTIONS=	SUPHP	"suPHP support"	off
+
+.include <bsd.port.options.mk>
+
 .if defined(WITH_SUPHP) && !defined(WITHOUT_SUPHP)
 
 PKGNAMESUFFIX+=	-suphp
@@ -31,30 +35,20 @@
 
 .endif
 
-# PLA_USR is only used WITH_SUPHP
-PLA_GRP?=	${WWWGRP}
-PLA_GID?=	${_PLA_GID}
+# USERS is only used WITH_SUPHP
+GROUPS?=	${WWWGRP}
 CFGDIR=		config
 CFGFILE=	config.php
 
 PLIST=		${WRKDIR}/plist
-PLIST_SUB+=	PLA_GRP=${PLA_GRP}
+PLIST_SUB+=	PLA_GRP=${GROUPS}
 
 .if defined(WITH_SUPHP) && !defined(WITHOUT_SUPHP)
 
-PLA_USR?=	_pla
-PLA_UID?=	636
-PLA_GCOS?=	"phpLDAPAdmin Owner"
-PLA_HOME?=	/nonexistent
-PLA_SHELL?=	/usr/sbin/nologin
-
-SUB_LIST+=	PLA_USR=${PLA_USR}    \
-		PLA_UID=${PLA_UID}    \
-		PLA_GRP=${PLA_GRP}    \
-		PLA_GID=${PLA_GID}    \
-		PLA_GCOS=${PLA_GCOS}  \
-		PLA_HOME=${PLA_HOME}  \
-		PLA_SHELL=${PLA_SHELL}
+USERS?=		_pla
+
+SUB_LIST+=	PLA_USR=${USERS}  \
+		PLA_GRP=${GROUPS}
 SUB_FILES+=	pkg-install pkg-deinstall
 
 .endif
@@ -62,68 +56,45 @@
 SUB_LIST+=	PKGNAME=${PKGNAME}
 SUB_FILES+=	pkg-message
 
-.include <bsd.port.pre.mk>
-_PLA_GID!=	${PW} group show -n ${PLA_GRP} | ${CUT} -d : -f 3
-.if empty(_PLA_GID)
-_PLA_GID=	80
-.endif
-
 .SILENT:
 
 pre-everything::
 	${ECHO_MSG} ""
-	${ECHO_MSG} "You may use the following build options:"
-	${ECHO_MSG} ""
-	${ECHO_MSG} "    WITH_SUPHP=yes   Install appropriately for use with"
-	${ECHO_MSG} "                     the www/suphp port [default: no]"
-	${ECHO_MSG} ""
 	${ECHO_MSG} "This port will operate with either PHP4 or PHP5."
 	${ECHO_MSG} "However, for best results with PHP5 please use the"
 	${ECHO_MSG} "net/phpldapadmin port instead."
 	${ECHO_MSG} ""
-.if defined(WITH_SUPHP) && !defined(WITHOUT_SUPHP)
-	@if ${PW} show -n pldapadm >/dev/null 2>&1 ; then	              \
-	    ${ECHO_MSG} "===> WARNING ******************************" ;	      \
-	    ${ECHO_MSG} "The default username used by ${PKNAME} has changed"; \
-	    ${ECHO_MSG} "to ${PLA_USR} -- you should delete the old user:" ;  \
-	    ${ECHO_MSG} "  # ${PW} user del -n pldapadm" ;	              \
-	    ${ECHO_MSG} "" ;						      \
-	fi
-.endif
 
 post-patch:
 	cd ${WRKSRC} ;							    \
-	${FIND} . ! -type d ! -name ${CFGFILE}.example ! -name .cvsignore | \
-	    ${SORT} | ${SED} -e "s!^\.!%%WWWDIR%%!"		>${PLIST} ; \
+	${FIND} . ! -type d ! -name ${CFGFILE}.example ! -name .cvsignore   \
+	    ! -name .gitignore | ${SORT} | ${SED} -e "s!^\.!%%WWWDIR%%!"    \
+								>${PLIST} ; \
 	${CAT} ${PKGDIR}/pkg-plist-chunk		       >>${PLIST} ; \
 	${FIND} . -type d | ${SORT} -r | ${SED}				    \
 	    -e 's!^\./${CFGDIR}$$!@dirrmtry %%WWWDIR%%/${CFGDIR}!'	    \
 	    -e 's!^\.$$!@dirrmtry %%WWWDIR%%!'				    \
 	    -e 's!^\.!@dirrm %%WWWDIR%%!'		       >>${PLIST}
 
-pre-install:
-.if defined(WITH_SUPHP)
-	${SETENV} ${SCRIPTS_ENV} ${SH} ${PKGINSTALL} ${PKGNAME} PRE-INSTALL
-.endif
-
 do-install: install-app install-conf
 
 install-app:
-	cd ${WRKSRC} ; \
-	for src in $$( ${FIND} . ! -name .cvsignore  ) ; do \
-	    dst=${WWWDIR}$${src#.} ; \
-	    if ${TEST} -d $$src ; then \
-		${MKDIR} $$dst ; \
-	    else \
-		${INSTALL_DATA} $$src $$dst ; \
-	    fi \
+	cd ${WRKSRC} ;				    \
+	for src in $$( ${FIND} . ! -name .cvsignore \
+			! -name .gitignore ) ; do   \
+	    dst=${WWWDIR}$${src#.} ;		    \
+	    if ${TEST} -d $$src ; then		    \
+		${MKDIR} $$dst ;		    \
+	    else				    \
+		${INSTALL_DATA} $$src $$dst ;	    \
+	    fi					    \
 	done
 
 install-conf:
-	cd ${WWWDIR}/${CFGDIR} ; \
-	${CHMOD} 0640 ${CFGFILE}.example ; \
-	${CHGRP} ${PLA_GRP} ${CFGFILE}.example ; \
-	if ${TEST} ! -f ${CFGFILE} ; then \
+	cd ${WWWDIR}/${CFGDIR} ;		     \
+	${CHMOD} 0640 ${CFGFILE}.example ;	     \
+	${CHGRP} ${GROUPS} ${CFGFILE}.example ;	     \
+	if ${TEST} ! -f ${CFGFILE} ; then	     \
 	    ${CP} -p ${CFGFILE}.example ${CFGFILE} ; \
 	fi
 
@@ -133,4 +104,4 @@
 .endif
 	${CAT} ${PKGMESSAGE}
 
-.include <bsd.port.post.mk>
+.include <bsd.port.mk>
diff -Nur /usr/ports/net/phpldapadmin098/files/pkg-install.in phpldapadmin098/files/pkg-install.in
--- /usr/ports/net/phpldapadmin098/files/pkg-install.in	2008-03-09 04:45:39.000000000 +0000
+++ phpldapadmin098/files/pkg-install.in	2009-12-20 10:26:50.000000000 +0000
@@ -7,98 +7,12 @@
 
 pla_dir=%%WWWDIR%%
 pla_usr=%%PLA_USR%%
-pla_uid=%%PLA_UID%%
 pla_grp=%%PLA_GRP%%
-pla_gid=%%PLA_GID%%
-
-pla_gcos="%%PLA_GCOS%%"
-pla_home=%%PLA_HOME%%
-pla_shell=%%PLA_SHELL%%
-
-create_group() {
-    local user uid group gid gcos home shell
-
-    user=$1
-    uid=$2
-    group=$3
-    gid=$4
-    gcos=$5
-    home=$6
-    shell=$7
-
-
-    if pw group show -n $group >/dev/null 2>&1 ; then
-	echo "===> Using pre-existing group $group"
-    else
-	if pw groupadd -n $group -g $gid ; then
-	    echo "===> Group $group created"
-	else
-	    cat <<-EOERRORMSG
- 		*** Failed to create the $group group.
-
-		Please add the $user user and $group group
-		manually with the commands:
-
-		    pw groupadd -n $group -g $gid
-		    pw useradd -n $user -u $uid -g $group -c "$gcos" \\
-		        -d $home -s $shell -h -
-
-		and retry installing this package.
-		EOERRORMSG
-	    exit 1
-	fi
-    fi
-
-}
-
-
-create_user() {
-    local user uid group gid gcos home shell
-
-    user=$1
-    uid=$2
-    group=$3
-    gid=$4
-    gcos=$5
-    home=$6
-    shell=$7
-
-    if pw user show -n $user >/dev/null 2>&1 ; then
-	echo "===> Using pre-existing user $user"
-    else
-	if pw useradd -n $user -u $uid -g $group -c "$gcos" \
-	    -d $home -s $shell -h - ; then
-	    echo "===> Created $user user"
-	else
-	    cat <<-EOERRORMSG
-		*** Failed to create the $user user.
-
-		Please add the $user user manually with the command:
-
-		    pw useradd -n $user -u $uid -g $group -c "$gcos" \\
-		       -d $home -s $shell -h -
-
-		and retry installing this package.
-		EOERRORMSG
-	    exit 1
-	fi
-    fi
-}
-
 
 case $2 in
-    PRE-INSTALL)
-
-        # Create the pla user and group if they do not already exist
-	create_group $pla_usr $pla_uid $pla_grp $pla_gid \
-                     "$pla_gcos" $pla_home $pla_shell
-	create_user  $pla_usr $pla_uid $pla_grp $pla_gid \
-                     "$pla_gcos" $pla_home $pla_shell
-	;;
-
     POST-INSTALL)
 
-    	# Change ownership of the phpMyAdm directory
+    	# Change ownership of the phpldapadm directory
 
         echo "===> Adjusting file ownership in $pla_dir"
         chown -R $pla_usr:$pla_grp $pla_dir || exit 1
diff -Nur /usr/ports/net/phpldapadmin098/files/pkg-message.in phpldapadmin098/files/pkg-message.in
--- /usr/ports/net/phpldapadmin098/files/pkg-message.in	2008-09-07 22:31:21.000000000 +0100
+++ phpldapadmin098/files/pkg-message.in	2009-12-20 10:37:49.000000000 +0000
@@ -19,15 +19,3 @@
         Allow from 127.0.0.1 .example.com
     </Directory>
 
-Please note: if you are upgrading from version 0.9.7 or earlier, the
-layout of the %%PKGNAME%% files has been completely reworked. You will
-need to modify your apache configuration and merge the settings from
-your original configuration file:
-
-    %%WWWDIR%%/config.php
-
- to
-
-    %%WWWDIR%%/config/config.php
-
-
--- phpldapadmin098.diff ends here ---


>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200912201208.nBKC8VTR024939>