ports/150682: Update Port: databases/couchdb

Ashish SHUKLA ashish at FreeBSD.org
Fri Sep 17 20:40:07 UTC 2010


>Number:         150682
>Category:       ports
>Synopsis:       Update Port: databases/couchdb
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    freebsd-ports-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          update
>Submitter-Id:   current-users
>Arrival-Date:   Fri Sep 17 20:40:05 UTC 2010
>Closed-Date:
>Last-Modified:
>Originator:     Ashish SHUKLA
>Release:        FreeBSD 8.1-RELEASE amd64
>Organization:
The FreeBSD Project
>Environment:
System: FreeBSD chateau.d.if 8.1-RELEASE FreeBSD 8.1-RELEASE #9: Sun Sep 5 09:11:44 IST 2010 root at chateau.d.if:/usr/obj/usr/src/sys/CHATEAU amd64

>Description:
As per the homepage of CouchDB[1], the version of CouchDB in ports tree has a nasty bug. This diff updates the port to 1.0.1, as well as fixes issues with the current port which includes not execution of post-installation tasks when installed via packages.

Also there is a problem with the current port, that it depends on lang/erlang-lite port and when lang/erlang is installed, it passes the dependency check but doesn't depend on 'erlang' package at the end of installation. I'm not sure about a fix for this problem. If I found anything I'll post it here.

References:
[1] - http://couchdb.apache.org/notice/1.0.1.html

>How-To-Repeat:
>Fix:
diff --git a/databases/couchdb/Makefile b/databases/couchdb/Makefile
index c170aab..77cd09f 100644
--- a/databases/couchdb/Makefile
+++ b/databases/couchdb/Makefile
@@ -6,7 +6,7 @@
 #
 
 PORTNAME=	couchdb
-PORTVERSION=	1.0.0
+PORTVERSION=	1.0.1
 PORTEPOCH=	1
 CATEGORIES=	databases
 MASTER_SITES=	${MASTER_SITE_APACHE}
@@ -22,11 +22,8 @@ LIB_DEPENDS=	icudata:${PORTSDIR}/devel/icu \
 BUILD_DEPENDS=	${LOCALBASE}/lib/erlang/usr/include/erl_driver.h:${PORTSDIR}/lang/erlang-lite
 RUN_DEPENDS=	${BUILD_DEPENDS}
 
-COUCH_VARDIR?=	/var
-COUCH_DBDIR?=	${COUCH_VARDIR}/db/couchdb
-COUCH_LOGDIR?=	${COUCH_VARDIR}/log/couchdb
-COUCH_LIBDIR?=	${COUCH_VARDIR}/lib/couchdb
-COUCH_USER?=	couchdb
+USERS=		couchdb
+GROUPS=		couchdb
 
 USE_RC_SUBR=	couchdb
 USE_GMAKE=	yes
@@ -53,14 +50,13 @@ post-patch:
 	@${REINPLACE_CMD} -e 's/install-data-am$$//' ${WRKSRC}/Makefile.in
 .endif
 
-pre-install:
-	@${SH} ${PKGINSTALL} ${PORTNAME} PRE-INSTALL
-
 post-install:
+.ifndef PACKAGE_BUILDING
+	@PKG_PREFIX=${PREFIX} ${SH} ${PKGINSTALL} ${PKGNAME} POST-INSTALL
+.endif
 	@${CAT} ${PKGMESSAGE}
-	${MKDIR} ${COUCH_DBDIR}
-	${CHOWN} ${COUCH_USER} ${COUCH_DBDIR}
-	${CHOWN} ${COUCH_USER} ${COUCH_LOGDIR}
-	${CHOWN} ${COUCH_USER} ${COUCH_LIBDIR}
+
+post-deinstall:
+	@PKG_PREFIX=${PREFIX} ${SH} ${PKGDEINSTALL} ${PKGNAME} POST-DEINSTALL
 
 .include <bsd.port.mk>
diff --git a/databases/couchdb/distinfo b/databases/couchdb/distinfo
index 0b5618b..21275aa 100644
--- a/databases/couchdb/distinfo
+++ b/databases/couchdb/distinfo
@@ -1,3 +1,3 @@
-MD5 (apache-couchdb-1.0.0.tar.gz) = 71e89c4b21c62417f2f413d74a38f079
-SHA256 (apache-couchdb-1.0.0.tar.gz) = ca38de6823a51dbfa521f65089683b5ff3aa405e78c807aaf1e1ad24b83c2f57
-SIZE (apache-couchdb-1.0.0.tar.gz) = 951979
+MD5 (apache-couchdb-1.0.1.tar.gz) = 001cf286b72492617e9ffba271702a00
+SHA256 (apache-couchdb-1.0.1.tar.gz) = b74a5bfe13e3457798107509cb533d0e7df276adad526ccd5a381c1271108b1f
+SIZE (apache-couchdb-1.0.1.tar.gz) = 986352
diff --git a/databases/couchdb/pkg-deinstall b/databases/couchdb/pkg-deinstall
new file mode 100644
index 0000000..d5ba72d
--- /dev/null
+++ b/databases/couchdb/pkg-deinstall
@@ -0,0 +1,15 @@
+#!/bin/sh
+
+RMDIR=/bin/rmdir
+
+COUCH_DBDIR=/var/db/couchdb
+COUCH_LOGDIR=/var/log/couchdb
+COUCH_LIBDIR=/var/lib/couchdb
+
+if [ "$2" = "POST-DEINSTALL" ]; then
+	for i in ${COUCH_LIBDIR} ${COUCH_DBDIR} ${COUCH_LOGDIR}; do
+		${RMDIR} ${i} 2>/dev/null
+	done
+fi
+
+exit 0
diff --git a/databases/couchdb/pkg-install b/databases/couchdb/pkg-install
index 7fe4328..5152f6f 100644
--- a/databases/couchdb/pkg-install
+++ b/databases/couchdb/pkg-install
@@ -1,32 +1,20 @@
 #!/bin/sh
 
-PATH=/bin:/usr/sbin
+COUCH_USER=couchdb
+COUCH_GROUP=couchdb
 
-USER=couchdb
-GROUP=couchdb
-UID=919
-GID=919
+CHOWN=/usr/sbin/chown
+MKDIR="/bin/mkdir -p"
 
-case $2 in
-  PRE-INSTALL)
-  if pw user show "${USER}" 2>/dev/null; then
-    echo "You already have a user \"${USER}\", so I will use it."
-  else
-    if pw groupadd ${GROUP} -g ${GID}
-    then
-      echo "Added group \"${GROUP}\"."
-    else
-      echo "Adding group \"${GROUP}\" failed..."
-      exit 1
-    fi
-    if pw useradd ${USER} -u ${UID} -g ${GROUP} -h - \
-      -s /usr/sbin/nologin -L daemon -d /var/empty -c "CouchDB Account"
-    then
-      echo "Added user \"${USER}\"."
-    else
-      echo "Adding user \"${USER}\" failed..."
-      exit 1
-    fi
-  fi
-  ;;
-esac
+COUCH_DBDIR=/var/db/couchdb
+COUCH_LOGDIR=/var/log/couchdb
+COUCH_LIBDIR=/var/lib/couchdb
+
+if [ "$2" = "POST-INSTALL" ]; then
+	${MKDIR} ${COUCH_DBDIR} ${COUCH_LOGDIR} ${COUCH_LIBDIR}
+	${CHOWN} ${COUCH_USER}:${COUCH_GROUP} ${COUCH_DBDIR}
+	${CHOWN} ${COUCH_USER}:${COUCH_GROUP} ${COUCH_LOGDIR}
+	${CHOWN} ${COUCH_USER}:${COUCH_GROUP} ${COUCH_LIBDIR}
+fi
+
+exit 0
diff --git a/databases/couchdb/pkg-plist b/databases/couchdb/pkg-plist
index 865ccf5..49b1f33 100644
--- a/databases/couchdb/pkg-plist
+++ b/databases/couchdb/pkg-plist
@@ -122,12 +122,14 @@ lib/couchdb/erlang/lib/mochiweb-r113/ebin/reloader.beam
 %%DATADIR%%/www/dialog/_admin_party.html
 %%DATADIR%%/www/dialog/_compact_cleanup.html
 %%DATADIR%%/www/dialog/_create_admin.html
+%%DATADIR%%/www/dialog/_create_config.html
 %%DATADIR%%/www/dialog/_create_database.html
 %%DATADIR%%/www/dialog/_database_security.html
 %%DATADIR%%/www/dialog/_delete_database.html
 %%DATADIR%%/www/dialog/_delete_document.html
 %%DATADIR%%/www/dialog/_login.html
 %%DATADIR%%/www/dialog/_save_view_as.html
+%%DATADIR%%/www/dialog/_share_test_reports.html
 %%DATADIR%%/www/dialog/_signup.html
 %%DATADIR%%/www/dialog/_upload_attachment.html
 %%DATADIR%%/www/document.html
@@ -179,6 +181,10 @@ lib/couchdb/erlang/lib/mochiweb-r113/ebin/reloader.beam
 %%DATADIR%%/www/script/jquery.resizer.js
 %%DATADIR%%/www/script/jquery.suggest.js
 %%DATADIR%%/www/script/json2.js
+%%DATADIR%%/www/script/jspec/jspec.css
+%%DATADIR%%/www/script/jspec/jspec.jquery.js
+%%DATADIR%%/www/script/jspec/jspec.js
+%%DATADIR%%/www/script/jspec/jspec.xhr.js
 %%DATADIR%%/www/script/oauth.js
 %%DATADIR%%/www/script/sha1.js
 %%DATADIR%%/www/script/test/all_docs.js
@@ -249,6 +255,16 @@ lib/couchdb/erlang/lib/mochiweb-r113/ebin/reloader.beam
 %%DATADIR%%/www/script/test/view_sandboxing.js
 %%DATADIR%%/www/script/test/view_update_seq.js
 %%DATADIR%%/www/script/test/view_xml.js
+%%DATADIR%%/www/spec/couch_js_class_methods_spec.js
+%%DATADIR%%/www/spec/couch_js_instance_methods_1_spec.js
+%%DATADIR%%/www/spec/couch_js_instance_methods_2_spec.js
+%%DATADIR%%/www/spec/couch_js_instance_methods_3_spec.js
+%%DATADIR%%/www/spec/custom_helpers.js
+%%DATADIR%%/www/spec/jquery_couch_js_class_methods_spec.js
+%%DATADIR%%/www/spec/jquery_couch_js_instance_methods_1_spec.js
+%%DATADIR%%/www/spec/jquery_couch_js_instance_methods_2_spec.js
+%%DATADIR%%/www/spec/jquery_couch_js_instance_methods_3_spec.js
+%%DATADIR%%/www/spec/run.html
 %%DATADIR%%/www/session.html
 %%DATADIR%%/www/status.html
 %%DATADIR%%/www/style/layout.css
@@ -289,8 +305,10 @@ lib/couchdb/erlang/lib/mochiweb-r113/ebin/reloader.beam
 @dirrm etc/couchdb/local.d
 @dirrmtry etc/couchdb
 @dirrm %%DATADIR%%/www/style
+ at dirrm %%DATADIR%%/www/script/jspec
 @dirrm %%DATADIR%%/www/script/test
 @dirrm %%DATADIR%%/www/script
+ at dirrm %%DATADIR%%/www/spec
 @dirrm %%DATADIR%%/www/image
 @dirrm %%DATADIR%%/www/dialog
 @dirrm %%DATADIR%%/www
>Release-Note:
>Audit-Trail:
>Unformatted:



More information about the freebsd-ports-bugs mailing list