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

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

>Number:         141803
>Category:       ports
>Synopsis:       [maintainer] net/phpldapadmin -- 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:

	

--- phpldapadmin.diff begins here ---
diff -Nur /usr/ports/net/phpldapadmin/Makefile phpldapadmin/Makefile
--- /usr/ports/net/phpldapadmin/Makefile	2009-11-27 21:42:11.000000000 +0000
+++ phpldapadmin/Makefile	2009-12-20 10:27:55.000000000 +0000
@@ -21,6 +21,10 @@
 DEFAULT_PHP_VER=	5
 IGNORE_WITH_PHP=	4
 
+OPTIONS=	SUPHP	"suPHP support" off
+
+.include <bsd.port.options.mk>
+
 .if defined(WITH_SUPHP) && !defined(WITHOUT_SUPHP)
 
 PKGNAMESUFFIX+=	-suphp
@@ -33,30 +37,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
@@ -64,67 +58,44 @@
 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 is PHP5 specific. If you need PHP4 support,"
 	${ECHO_MSG} "please use the net/phpldapadmin098 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
 
@@ -134,4 +105,4 @@
 .endif
 	${CAT} ${PKGMESSAGE}
 
-.include <bsd.port.post.mk>
+.include <bsd.port.mk>
diff -Nur /usr/ports/net/phpldapadmin/files/pkg-deinstall.in phpldapadmin/files/pkg-deinstall.in
--- /usr/ports/net/phpldapadmin/files/pkg-deinstall.in	2008-03-09 04:45:38.000000000 +0000
+++ phpldapadmin/files/pkg-deinstall.in	2009-12-20 09:20:11.000000000 +0000
@@ -8,7 +8,7 @@
     cat <<EOMSG
 The phpldapadmin-suphp port has been deleted.
 If you are not upgrading and don't intend to use
-phpLDAPadmin any more then you may wish to delete
+phpldapadmin any more then you may wish to delete
 the %%PLA_USR%% account, which can be done with
 the following command:
 
diff -Nur /usr/ports/net/phpldapadmin/files/pkg-install.in phpldapadmin/files/pkg-install.in
--- /usr/ports/net/phpldapadmin/files/pkg-install.in	2008-03-09 04:45:38.000000000 +0000
+++ phpldapadmin/files/pkg-install.in	2009-12-20 08:55:19.000000000 +0000
@@ -7,98 +7,13 @@
 
 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 phpldapadmin directory
 
         echo "===> Adjusting file ownership in $pla_dir"
         chown -R $pla_usr:$pla_grp $pla_dir || exit 1
--- phpldapadmin.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.nBKC8Lo1024886>