summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortocaro <tocaro@thocar.org>2013-05-17 21:54:52 +0200
committertocaro <tocaro@thocar.org>2013-05-17 21:54:52 +0200
commit49a96eafbe5dcc28a95d1809b97c095ce84d3698 (patch)
tree084f6785432b8d25cd2c71839ef7bb314034a90b
parentok (diff)
downloadtocaro-49a96eafbe5dcc28a95d1809b97c095ce84d3698.tar.gz
tocaro-49a96eafbe5dcc28a95d1809b97c095ce84d3698.tar.bz2
tocaro-49a96eafbe5dcc28a95d1809b97c095ce84d3698.zip
ok
-rw-r--r--dev-db/couchbase-server-community/Manifest4
-rw-r--r--dev-db/couchbase-server-community/couchbase-server-community-2.0.1.ebuild56
-rwxr-xr-xdev-db/couchbase-server-community/files/2.0.1/couchbase-server140
3 files changed, 200 insertions, 0 deletions
diff --git a/dev-db/couchbase-server-community/Manifest b/dev-db/couchbase-server-community/Manifest
new file mode 100644
index 0000000..dffb6ca
--- /dev/null
+++ b/dev-db/couchbase-server-community/Manifest
@@ -0,0 +1,4 @@
+AUX 2.0.1/couchbase-server 3956 SHA256 df2d03152bc183591a57f78ce3b50590fe0d91f8e6e36f66a45e9fc67faab0cc SHA512 01b2f1a0ca3e4c2f93ff37271979f434e7010b272bcfca1fa8b8e40c1115ae5750a3ec0d5efc13edb93e21b09a35cde71bfb6fb48465329c83528ead975d3f8c WHIRLPOOL 1f5293c7e5f64eaa3ee618d07b1911963f7187d00eec78c205e93341625f2917e466b074f85bd582584e6144cd42f57caa6d4852f115c1288a2c1e51ab132f07
+DIST couchbase-server-community_x86_2.0.1.deb 18874699 SHA256 6a66c24bf22bcb4b0e7ccf1e1f9ec803209ba93d2f93c734cea04dc7da72090f SHA512 8340ca7c5d53f7170a8eb9538e565c871d78ffdf72cacb67eb82b95a9cc428421eb8b8336776633554d1e4a74ba64112cbc9b8bcb4fe8ed25ad009d123be44bf WHIRLPOOL bc325f4b13cda9a15d42747e765020452eff986ea17c1c170cf885055d5f1b6567d85dfb6484e55e98e13ee99e16402ef6faf4f53718c7dc3941a6add352eef8
+DIST couchbase-server-community_x86_64_2.0.1.deb 120654626 SHA256 7bb4efb8df1ae0ecdbdc9e01194ac7f8cfe777e1bf84a3bd1ded37f903268508 SHA512 b3051abc2250a0798ec2b4b7706e6a3c71073f31dcd40f3f37e2b391f989e1f09bf4ddb96e3d93fa2afc040f463ab25373150d916de5cea25a79c420aaef821b WHIRLPOOL 7304ebad4e59e32ab94ca1d04ae7bd75ba6aa5710488ef8db5c53302d7184c259e402f8c499c4b5c64f0418f40d92c1e49e532fe3309757ab4e60e92d54e4ec4
+EBUILD couchbase-server-community-2.0.1.ebuild 1511 SHA256 e9ed24b6d5042d0cf0e14c2c60cfa54457d1f39e83133001768d63e952dddfee SHA512 be933e307fdaa0a7858329c788ddbae90c4621840c42e5a2da817ffc76905193e5b50aa60a4efb61c67ca3e62f090c1ea9bb107e000951f4cdc68c88502cb149 WHIRLPOOL 8dc95af59fc5fa00512c2a631bf37abc7f0bd7d9885a3355453657b488ae321b454c996db329317e80fdd5d675e95862b0cd6eaa05fb7d3f7f961e13671192db
diff --git a/dev-db/couchbase-server-community/couchbase-server-community-2.0.1.ebuild b/dev-db/couchbase-server-community/couchbase-server-community-2.0.1.ebuild
new file mode 100644
index 0000000..76b6df8
--- /dev/null
+++ b/dev-db/couchbase-server-community/couchbase-server-community-2.0.1.ebuild
@@ -0,0 +1,56 @@
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header$
+
+EAPI=2
+inherit eutils
+
+DESCRIPTION="Distributed key-value database management system"
+HOMEPAGE="http://www.couchbase.com"
+SRC_URI="x86? ( http://packages.couchbase.com/releases/${PV}/${PN}_x86_${PV}.deb )
+ amd64? ( http://packages.couchbase.com/releases/${PV}/${PN}_x86_64_${PV}.deb )"
+
+#RESTRICT="fetch"
+
+LICENSE="COUCHBASE INC. COMMUNITY EDITION"
+SLOT="0"
+KEYWORDS="~x86 ~amd64"
+IUSE=""
+
+RDEPEND=">=sys-libs/ncurses-5
+ >=dev-libs/libevent-1.4.13
+ >=dev-libs/cyrus-sasl-2
+ >=dev-libs/openssl-0.9.8e"
+# !net-misc/memcached"
+DEPEND=""
+
+
+pkg_setup() {
+ enewuser couchbase -1 -1 /opt/couchbase daemon
+ enewgroup couchbase
+}
+
+src_unpack() {
+ ar x "${DISTDIR}"/${A}
+ cd ${WORKDIR}
+ tar xzf data.tar.gz
+}
+
+src_install() {
+ cp -pPR "${WORKDIR}"/opt "${D}"
+ rm -f "${D}"/opt/couchbase/${PV}/data
+ rm -f "${D}"/opt/couchbase/${PV}/tmp
+
+ sed -i "s/\/opt\/couchbase\/var\/lib\/couchbase\/couchbase-server.pid/\/var\/run\/couchbase-server.pid/" "${D}/opt/couchbase/bin/couchbase-server" || die "Install failed!"
+
+ dodir "/opt/couchbase/var/lib/couchbase/data"
+ keepdir "/opt/couchbase/var/lib/couchbase/data"
+
+ dodir "/opt/couchbase/var/lib/couchbase/logs"
+ dodir "/opt/couchbase/var/lib/couchbase/mnesia"
+ dodir "/opt/couchbase/var/lib/couchbase/tmp"
+
+ chown -R couchbase:daemon "${D}/opt/couchbase" || die "Install failed!"
+
+ newinitd "${FILESDIR}/${PV}/couchbase-server" couchbase-server
+}
diff --git a/dev-db/couchbase-server-community/files/2.0.1/couchbase-server b/dev-db/couchbase-server-community/files/2.0.1/couchbase-server
new file mode 100755
index 0000000..2c3eb50
--- /dev/null
+++ b/dev-db/couchbase-server-community/files/2.0.1/couchbase-server
@@ -0,0 +1,140 @@
+#!/sbin/runscript
+# Copyright 1999-2010 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+COUCHBASE_USER="couchbase"
+COUCHBASE_PATH=/opt/couchbase
+PIDFILE=/var/run/couchbase-server.pid
+
+DEFAULT_CONFIG_DIR="/opt/couchbase/etc/couchdb/default.d"
+DEFAULT_CONFIG_FILE="/opt/couchbase/etc/couchdb/default.ini"
+LOCAL_CONFIG_DIR="/opt/couchbase/etc/couchdb/local.d"
+LOCAL_CONFIG_FILE="/opt/couchbase/etc/couchdb/local.ini"
+
+couch_start_arguments=""
+
+_add_config_file () {
+ couch_start_arguments="$couch_start_arguments $1"
+}
+
+_add_config_dir () {
+ for file in "$1"/*.ini; do
+ if [ -r "$file" ]; then
+ _add_config_file "$file"
+ fi
+ done
+}
+
+_load_config () {
+ _add_config_file "$DEFAULT_CONFIG_FILE"
+ _add_config_dir "$DEFAULT_CONFIG_DIR"
+ _add_config_file "$LOCAL_CONFIG_FILE"
+ _add_config_dir "$LOCAL_CONFIG_DIR"
+ if [ "$COUCHDB_ADDITIONAL_CONFIG_FILE" != '' ]
+ then
+ _add_config_file "$COUCHDB_ADDITIONAL_CONFIG_FILE"
+ fi
+}
+
+start() {
+ ebegin "Starting couchbase server"
+
+ touch $PIDFILE
+ chown $COUCHBASE_USER:daemon $PIDFILE
+
+ # pam-limits (/etc/security/limits.d and limits.conf) aren't working with start-stop-daemon
+ ulimit -n 10240
+ ulimit -c unlimited
+
+ PATH="/opt/couchbase/bin":$PATH
+ export PATH
+
+ if [ `ulimit -n` -lt 10240 ]
+ then
+cat <<EOF
+The maximum number of open files for the couchbase user is set too low.
+It must be at least 10240. Normally this can be increased by adding
+the following lines to /etc/security/limits.conf:
+
+couchbase soft nofile <value>
+couchbase hard nofile <value>
+
+Where <value> is greater than 10240.
+EOF
+ fi
+
+ datadir="/opt/couchbase/var/lib/couchbase"
+
+ test -d "$datadir" || mkdir -p "$datadir"
+ cd "$datadir"
+
+ # Initialize distributed erlang on the system (i.e. epmd)
+ erl -noshell -setcookie nocookie -sname init -run init stop 2>&1 > /dev/null
+ if [ $? -ne 0 ]
+ then
+ exit 1
+ fi
+
+ ERL_LIBS="/opt/couchbase/lib/ns_server/erlang/lib:/opt/couchbase/lib/couchdb/erlang/lib:/opt/couchbase/lib/couchdb/plugins"
+ export ERL_LIBS
+
+ LD_LIBRARY_PATH="/opt/couchbase/lib":"/opt/couchbase/lib/memcached":$LD_LIBRARY_PATH
+ export LD_LIBRARY_PATH
+
+ ERL_CRASH_DUMP=erl_crash.dump.$(date +%m-%d-%Y-%H:%M:%S).$$
+ export ERL_CRASH_DUMP
+
+ ERL_FULLSWEEP_AFTER=512
+ export ERL_FULLSWEEP_AFTER
+
+ _load_config
+
+ # Set an ENV variable to force C++ STL and string classes to not use its
+ # default memory pooling allocator.
+ # For GCC 3.2.2 and later
+ GLIBCPP_FORCE_NEW=1
+ export GLIBCPP_FORCE_NEW
+ # For GCC 3.4 and later
+ GLIBCXX_FORCE_NEW=1
+ export GLIBCXX_FORCE_NEW
+
+ start-stop-daemon --start -m --pidfile ${PIDFILE} --background \
+ --chdir $COUCHBASE_PATH/bin -u "$COUCHBASE_USER" --name beam \
+ --exec erl -- \
+ +A 16 \
+ +c \
+ +S 16:16 \
+ -smp auto \
+ +sbt u \
+ +P 327680 \
+ +K true \
+ -noinput \
+ -setcookie nocookie \
+ -kernel inet_dist_listen_min 21100 inet_dist_listen_max 21299 \
+ error_logger false \
+ -sasl sasl_error_logger false \
+ -run ns_bootstrap -- \
+ -couch_ini $couch_start_arguments \
+ -ns_server config_path "\"/opt/couchbase/etc/couchbase/static_config\"" \
+ -ns_server pidfile "\"/opt/couchbase/var/lib/couchbase/couchbase-server.pid\"" \
+ -ns_server nodefile "\"/opt/couchbase/var/lib/couchbase/couchbase-server.node\"" \
+ -ns_server cookiefile "\"/opt/couchbase/var/lib/couchbase/couchbase-server.cookie\"" 2>&1 > /dev/null
+
+ local i=0
+ local timeout=5
+ while [ ! -f ${PIDFILE} ] && [ $i -le $timeout ]; do
+ sleep 1
+ i=$(($i + 1))
+ done
+
+ [ $timeout -gt $i ]
+ eend $?
+
+}
+
+stop() {
+ ebegin "Stopping couchbase server"
+ start-stop-daemon --stop --pidfile ${PIDFILE} --name beam
+ rm -f ${PIDFILE}
+}