diff options
author | Christoph Brill <egore911@egore911.de> | 2012-06-03 21:50:46 +0200 |
---|---|---|
committer | Christoph Brill <egore911@egore911.de> | 2012-06-03 21:51:57 +0200 |
commit | 63f0598fc9624d48717e7d0abdbc37b3ef0964eb (patch) | |
tree | af822aab0a65b113c66e52c0e04249a2c5032ec2 | |
parent | bdbd05802ceec6266d7aa5db16753ed4bc88e0c8 (diff) |
+openstreetmap-postgis-db-setup-1.ebuild, +files/install-postgis-osm-db.sh, +files/install-postgis-osm-user.sh
Initial ebuild. Copied over from ubuntu, but this is really horrible
and needs to be rewritten completely.
6 files changed, 155 insertions, 0 deletions
diff --git a/sci-geosciences/openstreetmap-postgis-db-setup/ChangeLog b/sci-geosciences/openstreetmap-postgis-db-setup/ChangeLog new file mode 100644 index 0000000..d1ca551 --- /dev/null +++ b/sci-geosciences/openstreetmap-postgis-db-setup/ChangeLog @@ -0,0 +1,13 @@ +# ChangeLog for sci-geosciences/openstreetmap-postgis-db-setup +# Copyright 1999-2012 Gentoo Foundation; Distributed under the GPL v2 +# $Header: $ + +*openstreetmap-postgis-db-setup-1 (03 Jun 2012) + + 03 Jun 2012; Christoph Brill <cbrill@gentoo.org> + +openstreetmap-postgis-db-setup-1.ebuild, +files/install-postgis-osm-db.sh, + +files/install-postgis-osm-user.sh, +metadata.xml: + Initial ebuild. Copied over from ubuntu, but this is really horrible and + needs + to be rewritten completely. + diff --git a/sci-geosciences/openstreetmap-postgis-db-setup/Manifest b/sci-geosciences/openstreetmap-postgis-db-setup/Manifest new file mode 100644 index 0000000..42dbbc8 --- /dev/null +++ b/sci-geosciences/openstreetmap-postgis-db-setup/Manifest @@ -0,0 +1,5 @@ +AUX install-postgis-osm-db.sh 1922 RMD160 395f33405874342d62149250e7778ad4aeb92e18 SHA1 d70fbfdc3b8d929874d3ea1391bceb9d9a12424a SHA256 d110c9d6e0a770caac84b508c34d7af7936030456ce6b44b65d33dc7a42fe54d +AUX install-postgis-osm-user.sh 1284 RMD160 d736c5f7f574fa8b18dac8ee380f39fc9918e946 SHA1 3c37606c88196841d4e143c7de880c82d7d5c59c SHA256 e5e940331e906bf8549e724724f4e79e2a21082b33da2196fc1056e7a562dae6 +EBUILD openstreetmap-postgis-db-setup-1.ebuild 370 RMD160 46ccb8e705a1c0d756cb271b154ec64ce0b28bc3 SHA1 e4a53f487e227b4a7fabea41b6519514f1b167ab SHA256 8b8e28ca7784da52564f17e8c7beb90010d67bb6bec2dfd3ee131995a39d9d3e +MISC ChangeLog 492 RMD160 940f8bb9bf7b987dada71e0bd4cc26574653084c SHA1 41bb75b9a8357311139b4d74c765d3fcbf70968b SHA256 9a0dacf5ef14eb3a14edb39f9ca603000bd6f920743a80ea3a82c67309b9bfcc +MISC metadata.xml 204 RMD160 19671a561cc119505a06464a35a5096b484471c2 SHA1 b00abe788b4847cd2bfcdb6e4e207ed38949d475 SHA256 e808030aad62dfe3e81350c1c879870c3d406c50e908ddc3f521480aec65e8d5 diff --git a/sci-geosciences/openstreetmap-postgis-db-setup/files/install-postgis-osm-db.sh b/sci-geosciences/openstreetmap-postgis-db-setup/files/install-postgis-osm-db.sh new file mode 100755 index 0000000..7efffd0 --- /dev/null +++ b/sci-geosciences/openstreetmap-postgis-db-setup/files/install-postgis-osm-db.sh @@ -0,0 +1,64 @@ +#!/bin/sh +set -e + +if [ -z $DBOWNER ]; then + DBOWNER=gis +fi +if [ -z $DBNAME ]; then + DBNAME=gis +fi + +# echo "Removing Old Database" +# sudo -u postgres dropdb $DBNAME >/dev/null 2>&1 || true + + echo "Create user $DBOWNER" + sudo -u postgres createuser --no-superuser --no-createdb --no-createrole "$DBOWNER" || true + + echo "Creating Database" + sudo -u postgres createdb -EUTF8 -O $DBOWNER $DBNAME + + echo "Initializing Database" + + sudo -u postgres createlang plpgsql $DBNAME || true + + echo "Initializing Spatial Extentions for postgresql 9.1" + file_postgis=/usr/share/postgresql/contrib/postgis-2.0/postgis.sql + file_spatial_ref=/usr/share/postgresql/contrib/postgis-2.0/spatial_ref_sys.sql + + sudo -u postgres psql $DBNAME <$file_postgis >/dev/null 2>&1 + sudo -u postgres psql $DBNAME <$file_spatial_ref >/dev/null 2>&1 + echo "Spatial Extentions initialized" + + echo "Initializing hstore" + echo "CREATE EXTENSION hstore;" | sudo -u postgres psql $DBNAME + + echo "Setting ownership to user $DBOWNER" + + echo 'ALTER TABLE geometry_columns OWNER TO ' $DBOWNER '; ALTER TABLE spatial_ref_sys OWNER TO ' $DBOWNER ';' | sudo -u postgres psql $DBNAME + + + +if [ -n "$GRANT_USER" ] ; then + + if [ "$GRANT_USER" = "*" ] ; then + echo "GRANT Rights to every USER" + GRANT_USER='' + for user in `users` ; do + GRANT_USER="$GRANT_USER $user" + done + fi + + for user in $GRANT_USER; do + sudo -u postgres createuser --no-superuser --no-createdb --no-createrole "$user" || true + echo "Granting rights to user '$user'" + ( + echo "GRANT ALL on geometry_columns TO \"$user\";" + echo "GRANT ALL ON SCHEMA PUBLIC TO \"$user\";" + echo "GRANT ALL on spatial_ref_sys TO \"$user\";" + )| sudo -u postgres psql -U postgres $DBNAME + done +else + echo "No extra user for postgress Database created. Please do so yourself" +fi + +exit 0 diff --git a/sci-geosciences/openstreetmap-postgis-db-setup/files/install-postgis-osm-user.sh b/sci-geosciences/openstreetmap-postgis-db-setup/files/install-postgis-osm-user.sh new file mode 100755 index 0000000..91c1da5 --- /dev/null +++ b/sci-geosciences/openstreetmap-postgis-db-setup/files/install-postgis-osm-user.sh @@ -0,0 +1,43 @@ +#!/bin/sh +set -e + +if [ $# -ne 2 ] ; then + echo "Usage: install-postgis-osm-user.sh DBNAME USERNAME" + exit +fi + +DBNAME=$1 +GRANT_USER=$2 + + +if [ -n "$GRANT_USER" ] ; then + + if [ "$GRANT_USER" = "*" ] ; then + echo "GRANT Rights to every USER" + GRANT_USER='' + for user in `users` ; do + GRANT_USER="$GRANT_USER $user" + done + fi + + for user in $GRANT_USER; do + sudo -u postgres createuser --no-superuser --no-createdb --no-createrole "$user" || true + echo "Granting rights to user '$user'" + ( + echo "GRANT ALL on geometry_columns TO \"$user\";" + echo "GRANT ALL ON SCHEMA PUBLIC TO \"$user\";" + echo "GRANT ALL on spatial_ref_sys TO \"$user\";" + echo "GRANT ALL on planet_osm_line TO \"$user\";" + echo "GRANT ALL on planet_osm_nodes TO \"$user\";" + echo "GRANT ALL on planet_osm_point TO \"$user\";" + echo "GRANT ALL on planet_osm_rels TO \"$user\";" + echo "GRANT ALL on planet_osm_roads TO \"$user\";" + echo "GRANT ALL on planet_osm_ways TO \"$user\";" + echo "GRANT ALL on planet_osm_polygon TO \"$user\";" + )| sudo -u postgres psql -Upostgres $DBNAME + done +else + echo "No extra user for postgress Database created. Please do so yourself" +fi + +exit 0
\ No newline at end of file diff --git a/sci-geosciences/openstreetmap-postgis-db-setup/metadata.xml b/sci-geosciences/openstreetmap-postgis-db-setup/metadata.xml new file mode 100644 index 0000000..1188c23 --- /dev/null +++ b/sci-geosciences/openstreetmap-postgis-db-setup/metadata.xml @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> +<maintainer> + <email>egore911@egore911.de</email> +</maintainer> +</pkgmetadata> diff --git a/sci-geosciences/openstreetmap-postgis-db-setup/openstreetmap-postgis-db-setup-1.ebuild b/sci-geosciences/openstreetmap-postgis-db-setup/openstreetmap-postgis-db-setup-1.ebuild new file mode 100644 index 0000000..16e8f60 --- /dev/null +++ b/sci-geosciences/openstreetmap-postgis-db-setup/openstreetmap-postgis-db-setup-1.ebuild @@ -0,0 +1,23 @@ +# Copyright 1999-2012 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Header: $ + +EAPI=4 + +DESCRIPTION="" +HOMEPAGE="" +SRC_URI="" + +LICENSE="" +SLOT="0" +KEYWORDS="~amd64" +IUSE="" + +DEPEND="dev-db/postgis" + +S="${WORKDIR}" + +src_install() { + dobin "${FILESDIR}"/install-postgis-osm-db.sh + dobin "${FILESDIR}"/install-postgis-osm-user.sh +} |