Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 23 Jun 2016 23:16:03 +0000 (UTC)
From:      Dmitry Marakasov <amdmi3@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r417404 - in head: . databases databases/tile38 databases/tile38/files
Message-ID:  <201606232316.u5NNG36W094001@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: amdmi3
Date: Thu Jun 23 23:16:03 2016
New Revision: 417404
URL: https://svnweb.freebsd.org/changeset/ports/417404

Log:
  - Add databases/tile38
  
  Tile38 is an open source (MIT licensed), in-memory geolocation data store,
  spatial index, and realtime geofence. It supports a variety of object types
  including lat/lon points, bounding boxes, XYZ tiles, Geohashes, and GeoJSON.
  
  Features:
  
      Spatial index with search methods such as NEARBY, WITHIN, and INTERSECTS.
      Realtime geofencing through persistent sockets or webhooks.
      Object types of lat/lon, bbox, Geohash, GeoJSON, QuadKey, and XYZ tile.
      Support for lots of Clients Libraries written in many different langauges.
      Variety of client protocols, including http (curl), websockets, telnet,
          and the Redis RESP.
      Server responses are RESP or JSON.
      Full command line interface.
      Leader / follower replication.
      In-memory database that persists on disk.
  
  WWW: http://tile38.com/
  
  PR:		210147
  Submitted by:	olevole@olevole.ru

Added:
  head/databases/tile38/
  head/databases/tile38/Makefile   (contents, props changed)
  head/databases/tile38/distinfo   (contents, props changed)
  head/databases/tile38/files/
  head/databases/tile38/files/tile38.in   (contents, props changed)
  head/databases/tile38/pkg-descr   (contents, props changed)
  head/databases/tile38/pkg-plist   (contents, props changed)
Modified:
  head/GIDs
  head/UIDs
  head/databases/Makefile

Modified: head/GIDs
==============================================================================
--- head/GIDs	Thu Jun 23 22:51:07 2016	(r417403)
+++ head/GIDs	Thu Jun 23 23:16:03 2016	(r417404)
@@ -98,6 +98,7 @@ barman:*:157:
 pootle:*:158:
 nocat:*:159:
 _ypldap:*:160:
+tile38:*:170:
 sfs:*:171:
 agk:*:172:
 polipo:*:173:

Modified: head/UIDs
==============================================================================
--- head/UIDs	Thu Jun 23 22:51:07 2016	(r417403)
+++ head/UIDs	Thu Jun 23 23:16:03 2016	(r417404)
@@ -104,6 +104,7 @@ barman:*:157:157::0:0:Barman user:/var/b
 pootle:*:158:158::0:0:Pootle User:/var/db/pootle:/usr/sbin/nologin
 nocat:*:159:159::0:0:NoCat Daemon:/libexec/nocat:/sbin/nologin
 _ypldap:*:160:160::0:0:YP Ldap unprivileged user:/var/empty:/usr/sbin/nologin
+tile38:*:170:170::0:0:Tile38 User:/var/db/tile38:/usr/sbin/nologin
 sfs:*:171:171::0:0:Self-Certifying File System:/nonexistent:/usr/sbin/nologin
 agk:*:172:172::0:0:AquaGateKeeper:/nonexistent:/nonexistent
 polipo:*:173:173::0:0:polipo web cache:/nonexistent:/usr/sbin/nologin

Modified: head/databases/Makefile
==============================================================================
--- head/databases/Makefile	Thu Jun 23 22:51:07 2016	(r417403)
+++ head/databases/Makefile	Thu Jun 23 23:16:03 2016	(r417404)
@@ -719,7 +719,6 @@
     SUBDIR += pxlib
     SUBDIR += pxtools
     SUBDIR += py-Elixir
-    SUBDIR += py-mysqlclient
     SUBDIR += py-MySQLdb
     SUBDIR += py-MySQLdb55
     SUBDIR += py-MySQLdb56
@@ -754,6 +753,7 @@
     SUBDIR += py-mysql-connector-python
     SUBDIR += py-mysql-connector-python2
     SUBDIR += py-mysql2pgsql
+    SUBDIR += py-mysqlclient
     SUBDIR += py-odbc
     SUBDIR += py-oops
     SUBDIR += py-oursql
@@ -973,6 +973,7 @@
     SUBDIR += tcl-sqlite3
     SUBDIR += tdb
     SUBDIR += tdbc
+    SUBDIR += tile38
     SUBDIR += tinycdb
     SUBDIR += tokyocabinet
     SUBDIR += tokyotyrant

Added: head/databases/tile38/Makefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/databases/tile38/Makefile	Thu Jun 23 23:16:03 2016	(r417404)
@@ -0,0 +1,54 @@
+# Created by: olevole@olevole.ru
+# $FreeBSD$
+
+PORTNAME=	tile38
+PORTVERSION=	1.2.0
+CATEGORIES=	databases
+
+MAINTAINER=	olevole@olevole.ru
+COMMENT=	In-memory geolocation data store, spatial index, and realtime geofence
+
+LICENSE=	MIT
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+BUILD_DEPENDS=	go>=1.4:lang/go \
+		bash:shells/bash
+RUN_DEPENDS=	go>=1.4:lang/go \
+		bash:shells/bash
+
+USE_GITHUB=	yes
+GH_ACCOUNT=	tidwall
+
+USES=		shebangfix
+SHEBANG_FILES=	build.sh
+
+USE_RC_SUBR=	tile38
+
+USERS=		${PORTNAME}
+GROUPS=		${PORTNAME}
+
+TILE38_DBDIR?=	/var/db/tile38
+TILE38_RUNDIR?=	/var/run/tile38
+
+SUB_LIST=	PORTNAME=${PORTNAME} \
+		TILE38_USER=${USERS} \
+		TILE38_DBDIR=${TILE38_DBDIR} \
+		TILE38_RUNDIR=${TILE38_RUNDIR}
+
+PLIST_SUB=	TILE38_USER=${USERS} \
+		TILE38_GROUP=${GROUPS} \
+		TILE38_DBDIR=${TILE38_DBDIR} \
+		TILE38_RUNDIR=${TILE38_RUNDIR}
+
+do-build:
+	@cd ${WRKSRC} && ./build.sh
+
+do-install:
+	@${MKDIR} ${STAGEDIR}${TILE38_DBDIR} ${STAGEDIR}${TILE38_RUNDIR}
+	${INSTALL_PROGRAM} ${WRKSRC}/tile38-cli ${STAGEDIR}${PREFIX}/bin/
+	${INSTALL_PROGRAM} ${WRKSRC}/tile38-server ${STAGEDIR}${PREFIX}/bin/
+
+do-test:
+	@cd ${WRKSRC} && ./build.sh test
+
+.include <bsd.port.mk>

Added: head/databases/tile38/distinfo
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/databases/tile38/distinfo	Thu Jun 23 23:16:03 2016	(r417404)
@@ -0,0 +1,3 @@
+TIMESTAMP = 1465389710
+SHA256 (tidwall-tile38-1.2.0_GH0.tar.gz) = 8797cfe8ad0f787cc00c26a863329090a929257d9f5c5d8d20c17f05234cb2a5
+SIZE (tidwall-tile38-1.2.0_GH0.tar.gz) = 1701880

Added: head/databases/tile38/files/tile38.in
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/databases/tile38/files/tile38.in	Thu Jun 23 23:16:03 2016	(r417404)
@@ -0,0 +1,45 @@
+#!/bin/sh
+#
+# $FreeBSD: $
+#
+
+# PROVIDE: tile38
+# REQUIRE: LOGIN
+# BEFORE:  securelevel
+# KEYWORD: shutdown
+
+# Add the following line to /etc/rc.conf to enable `tile38':
+#
+# tile38_enable="YES"
+#
+# optional:
+#
+# tile38_flags (flags):      Set extra flags here. More options in tile38(1)
+#                               Default is empty "".
+# tile38_user (user):        Set user to run tile38.
+#                               Default is "%%TILE38_USER%%".
+# tile38_data (data):        Set data directory path
+#                               Default is "%%TILE38_DBDIR%%".
+
+. /etc/rc.subr
+
+name="tile38"
+rcvar="${name}_enable"
+
+start_cmd="tile38_start"
+
+command="%%PREFIX%%/bin/tile38-server"
+pidfile="%%TILE38_RUNDIR%%/$name.pid"
+
+# read configuration and set defaults
+load_rc_config "$name"
+: ${tile38_enable="NO"}
+: ${tile38_user="%%TILE38_USER%%"}
+: ${tile38_data="%%TILE38_DBDIR%%"}
+
+tile38_start()
+{
+	/usr/sbin/daemon -f -p ${pidfile} -u ${tile38_user} ${command} -d ${tile38_data} ${tile38_flags} ${rc_arg}
+}
+
+run_rc_command "$1"

Added: head/databases/tile38/pkg-descr
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/databases/tile38/pkg-descr	Thu Jun 23 23:16:03 2016	(r417404)
@@ -0,0 +1,18 @@
+Tile38 is an open source (MIT licensed), in-memory geolocation data store,
+spatial index, and realtime geofence. It supports a variety of object types
+including lat/lon points, bounding boxes, XYZ tiles, Geohashes, and GeoJSON.
+
+Features:
+
+    Spatial index with search methods such as NEARBY, WITHIN, and INTERSECTS.
+    Realtime geofencing through persistent sockets or webhooks.
+    Object types of lat/lon, bbox, Geohash, GeoJSON, QuadKey, and XYZ tile.
+    Support for lots of Clients Libraries written in many different langauges.
+    Variety of client protocols, including http (curl), websockets, telnet,
+        and the Redis RESP.
+    Server responses are RESP or JSON.
+    Full command line interface.
+    Leader / follower replication.
+    In-memory database that persists on disk.
+
+WWW: http://tile38.com/

Added: head/databases/tile38/pkg-plist
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/databases/tile38/pkg-plist	Thu Jun 23 23:16:03 2016	(r417404)
@@ -0,0 +1,4 @@
+bin/tile38-server
+bin/tile38-cli
+@dir(%%TILE38_USER%%,%%TILE38_GROUP%%,) %%TILE38_DBDIR%%
+@dir(%%TILE38_USER%%,%%TILE38_GROUP%%,) %%TILE38_RUNDIR%%



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