diff options
-rw-r--r-- | GIDs | 1 | ||||
-rw-r--r-- | UIDs | 1 | ||||
-rw-r--r-- | databases/Makefile | 3 | ||||
-rw-r--r-- | databases/tile38/Makefile | 54 | ||||
-rw-r--r-- | databases/tile38/distinfo | 3 | ||||
-rw-r--r-- | databases/tile38/files/tile38.in | 45 | ||||
-rw-r--r-- | databases/tile38/pkg-descr | 18 | ||||
-rw-r--r-- | databases/tile38/pkg-plist | 4 |
8 files changed, 128 insertions, 1 deletions
@@ -98,6 +98,7 @@ barman:*:157: pootle:*:158: nocat:*:159: _ypldap:*:160: +tile38:*:170: sfs:*:171: agk:*:172: polipo:*:173: @@ -104,6 +104,7 @@ barman:*:157:157::0:0:Barman user:/var/barman:/bin/sh 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 diff --git a/databases/Makefile b/databases/Makefile index 9da6c9fc5f9c..1c2f4e5cf415 100644 --- a/databases/Makefile +++ b/databases/Makefile @@ -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 diff --git a/databases/tile38/Makefile b/databases/tile38/Makefile new file mode 100644 index 000000000000..eda1f98ccf29 --- /dev/null +++ b/databases/tile38/Makefile @@ -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> diff --git a/databases/tile38/distinfo b/databases/tile38/distinfo new file mode 100644 index 000000000000..f3ce9e38ae5c --- /dev/null +++ b/databases/tile38/distinfo @@ -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 diff --git a/databases/tile38/files/tile38.in b/databases/tile38/files/tile38.in new file mode 100644 index 000000000000..9507886b0f18 --- /dev/null +++ b/databases/tile38/files/tile38.in @@ -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" diff --git a/databases/tile38/pkg-descr b/databases/tile38/pkg-descr new file mode 100644 index 000000000000..d5f3ce8f523e --- /dev/null +++ b/databases/tile38/pkg-descr @@ -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/ diff --git a/databases/tile38/pkg-plist b/databases/tile38/pkg-plist new file mode 100644 index 000000000000..475a56950dd3 --- /dev/null +++ b/databases/tile38/pkg-plist @@ -0,0 +1,4 @@ +bin/tile38-server +bin/tile38-cli +@dir(%%TILE38_USER%%,%%TILE38_GROUP%%,) %%TILE38_DBDIR%% +@dir(%%TILE38_USER%%,%%TILE38_GROUP%%,) %%TILE38_RUNDIR%% |