Bug 195451 - [NEW PORT] databases/arangodb - ArangoDB is a multi-purpose, open-source database
Summary: [NEW PORT] databases/arangodb - ArangoDB is a multi-purpose, open-source data...
Status: Closed Feedback Timeout
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: freebsd-ports-bugs (Nobody)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2014-11-27 14:49 UTC by Vincent
Modified: 2015-02-06 17:41 UTC (History)
1 user (show)

See Also:


Attachments
port diff relative to svn root (174.35 KB, patch)
2014-11-27 14:49 UTC, Vincent
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Vincent 2014-11-27 14:49:26 UTC
Created attachment 149940 [details]
port diff relative to svn root

Dear ports team,

I have created the port and changed the UIDs and GIDs. If there is a merge conflict when merging the UIDs and GIDs, feel free to change the actual ids. I only depend on the name.

I had to patch stuff in arranged 2.3.0 to make it compile. Those fixes are already in the next version of the db. (https://github.com/triAGENS/ArangoDB/pull/1124, https://github.com/triAGENS/ArangoDB/pull/1125)

The external v8 patch is required, because the lib is compiled a little bit different in FreeBSD, than with their standalone/"everything build in" default configuration.

On the portlint warning: gettext is not an optional requirement for ArangoDB

Little summary about ArangoDB:

ArangoDB is a multi-purpose, open-source database with flexible data models for documents, graphs, and key-values. Build high performance applications using a convenient SQL-like query language or JavaScript extensions. Use ACID transactions if you require them. Scale horizontally and vertically with a few mouse clicks. 
https://www.arangodb.com

Kind Regards,

  threez
Comment 1 Pawel Pekala freebsd_committer freebsd_triage 2014-12-30 19:48:03 UTC
For future reference: new ports should be submitted in shar format and
changes for UIDs, GIDs files as a svn diff patch.

Few ideas for improvements:

+COMMENT=	ArangoDB the multi-purpose NoSQL DB

Please don't use port name in COMMENT, this "recursive" style does not
look good later in pkg(8) outputs.

+BUILD_DEPENDS=	${LOCALBASE}/bin/python:${PORTSDIR}/lang/python \

This is declared later in USES=python:2, no need for it here.
From Uses/python.mk:

# If build and run are omitted, Python will be added as BUILD_DEPENDS and
# RUN_DEPENDS.

+HAS_CONFIGURE=	yes

Port uses autotools generated configure so GNU_CONFIGURE=yes here.

+post-install:
+	${MV} ${STAGEDIR}${PREFIX}/etc/arangodb/arango-dfdb.conf \
+	      ${STAGEDIR}${PREFIX}/etc/arangodb/arango-dfdb.conf.sample
+	${MV} ${STAGEDIR}${PREFIX}/etc/arangodb/arangob.conf \
+	      ${STAGEDIR}${PREFIX}/etc/arangodb/arangob.conf.sample
+	${MV} ${STAGEDIR}${PREFIX}/etc/arangodb/arangod.conf \
+	      ${STAGEDIR}${PREFIX}/etc/arangodb/arangod.conf.sample
+	${MV} ${STAGEDIR}${PREFIX}/etc/arangodb/arangodump.conf \
+	      ${STAGEDIR}${PREFIX}/etc/arangodb/arangodump.conf.sample
+	${MV} ${STAGEDIR}${PREFIX}/etc/arangodb/arangoimp.conf \
+	      ${STAGEDIR}${PREFIX}/etc/arangodb/arangoimp.conf.sample
+	${MV} ${STAGEDIR}${PREFIX}/etc/arangodb/arangoirb.conf \
+	      ${STAGEDIR}${PREFIX}/etc/arangodb/arangoirb.conf.sample
+	${MV} ${STAGEDIR}${PREFIX}/etc/arangodb/arangorestore.conf \
+	      ${STAGEDIR}${PREFIX}/etc/arangodb/arangorestore.conf.sample
+	${MV} ${STAGEDIR}${PREFIX}/etc/arangodb/arangosh.conf \
+	      ${STAGEDIR}${PREFIX}/etc/arangodb/arangosh.conf.sample
+	${MV} ${STAGEDIR}${PREFIX}/etc/arangodb/foxx-manager.conf \
+	      ${STAGEDIR}${PREFIX}/etc/arangodb/foxx-manager.conf.sample

This is way too complicated, preferably this should be fixed by patching or
using REINPLACE_CMD to install with proper names. If not possible this 
should be at least converted to loop, bonus points for using ETCDIR var.

rc.d script needs to be checked against:

https://www.freebsd.org/doc/en_US.ISO8859-1/books/porters-handbook/rc-scripts.html

+@mode 755
+@dir /var/db/arangodb
+@dir /var/db/arangodb/lib
+@dir /var/db/arangodb/log

Can be converted to: @dir(,,755) ${dir}

+@owner arangodb
+@group arangodb
+@dir /var/db/arangodb/lib/arangodb
+@dir /var/db/arangodb/lib/arangodb-apps
+@dir /var/db/arangodb/log/arangodb

Can be converted to: @dir(arangodb,arangodb,755) ${dir}

Also fails make check-plist:

====> Checking for pkg-plist issues (check-plist)
===> Parsing plist
===> Checking for items in STAGEDIR missing from pkg-plist
Error: Orphaned: share/man/man1/arangob.1
Error: Orphaned: share/man/man1/arangodump.1
Error: Orphaned: share/man/man1/arangoimp.1
Error: Orphaned: share/man/man1/arangorestore.1
Error: Orphaned: share/man/man1/arangosh.1
Error: Orphaned: share/man/man8/arango-dfdb.8
Error: Orphaned: share/man/man8/arangod.8
Error: Orphaned: share/man/man8/foxx-manager.8
Error: Orphaned: share/man/man8/rcarangod.8
===> Checking for items in pkg-plist which are not in STAGEDIR
===> Error: Plist issues found.
*** Error code 1
Comment 2 John Marino freebsd_committer freebsd_triage 2015-02-06 17:41:55 UTC
no response in several weeks -- I'm closing the PR based on lack of feedback.

Should the submitter wish to pursue this by following pawel's advice, then they can reopen the PR when the new submission is ready and attached.