diff options
author | root <root@rshg054.dnsready.net> | 2012-07-24 00:01:46 +0000 |
---|---|---|
committer | root <root@rshg054.dnsready.net> | 2012-07-24 00:01:46 +0000 |
commit | 56913dc8679143308408596f2872f3894b3ab9d0 (patch) | |
tree | 6a8108f4290a1841aacb64924af58ad547790aa5 /community-staging/couchdb | |
parent | a65eb6fe2ea0ffa22c65de34506c88aeeb3c88ee (diff) |
Tue Jul 24 00:01:46 UTC 2012
Diffstat (limited to 'community-staging/couchdb')
-rw-r--r-- | community-staging/couchdb/PKGBUILD | 45 | ||||
-rw-r--r-- | community-staging/couchdb/couchdb.install | 22 | ||||
-rw-r--r-- | community-staging/couchdb/rc-script.patch | 57 |
3 files changed, 124 insertions, 0 deletions
diff --git a/community-staging/couchdb/PKGBUILD b/community-staging/couchdb/PKGBUILD new file mode 100644 index 000000000..abd01c86d --- /dev/null +++ b/community-staging/couchdb/PKGBUILD @@ -0,0 +1,45 @@ +# $Id: PKGBUILD 74205 2012-07-22 21:09:13Z spupykin $ +# Maintainer: Sergej Pupykin <pupykin.s+arch@gmail.com> +# Contributor: Vitaliy Berdinskikh ur6lad[at]i.ua +# Contributor: Michael Fellinger <m.fellinger@gmail.com> + +pkgname=couchdb +pkgver=1.2.0 +pkgrel=4 +pkgdesc="A document-oriented database that can be queried and indexed in a MapReduce fashion using JSON" +arch=('i686' 'x86_64') +url="http://couchdb.apache.org" +license=('APACHE') +depends=('icu' 'erlang' 'js' 'openssl' 'curl') +install=couchdb.install +options=('!libtool') +backup=('etc/couchdb/local.ini' + 'etc/conf.d/couchdb' + 'etc/logrotate.d/couchdb') +source=("http://www.apache.org/dist/couchdb/releases/${pkgver}/apache-${pkgname}-${pkgver}.tar.gz"{,.asc} + "rc-script.patch") +md5sums=('a5cbbcaac288831b3d8a08b725657f10' + '890a85b22219ea113a4901a289c442f8' + '8a3b1a1ff98a6411827ad991db7a355b') + +build() { + cd "$srcdir/apache-$pkgname-$pkgver" + + ./configure --prefix=/usr \ + --sysconfdir=/etc \ + --localstatedir=/var + make + + patch -R etc/init/couchdb <$srcdir/rc-script.patch +} + +package() { + cd "$srcdir/apache-$pkgname-$pkgver" + make DESTDIR="$pkgdir" install + + install -Dm644 etc/default/couchdb $pkgdir/etc/conf.d/couchdb + sed -i 's|\(CONFIGURATION_FILE=/etc/\)default\(/couchdb\)|\1conf.d\2|' $pkgdir/etc/rc.d/couchdb + sed -i 's|\(COUCHDB_OPTIONS=\)|\1"-p /var/run/couchdb/couchdb.pid"|' $pkgdir/etc/conf.d/couchdb + + rm -rf $pkgdir/etc/default/ $pkgdir/var/run +} diff --git a/community-staging/couchdb/couchdb.install b/community-staging/couchdb/couchdb.install new file mode 100644 index 000000000..5eff459c7 --- /dev/null +++ b/community-staging/couchdb/couchdb.install @@ -0,0 +1,22 @@ +post_install() { + id couchdb &>/dev/null || \ + useradd -r -c "CouchDB daemon" -g daemon -d /var/lib/couchdb -s /bin/false couchdb + mkdir -p /var/run/couchdb + chown -R couchdb.daemon /etc/couchdb + chown -R couchdb.daemon /var/{lib,log,run}/couchdb +} + +pre_upgrade() { + id couchdb &>/dev/null || \ + useradd -r -c "CouchDB daemon" -g daemon -d /var/lib/couchdb -s /bin/false couchdb +} + +post_upgrade() { + mkdir -p $pkgdir/var/run/couchdb + chown -R couchdb.daemon /etc/couchdb + chown -R couchdb.daemon /var/{lib,log,run}/couchdb +} + +post_remove() { + userdel couchdb &>/dev/null +} diff --git a/community-staging/couchdb/rc-script.patch b/community-staging/couchdb/rc-script.patch new file mode 100644 index 000000000..1dd723ffc --- /dev/null +++ b/community-staging/couchdb/rc-script.patch @@ -0,0 +1,57 @@ +--- couchdb 2011-12-27 01:21:59.000000000 +0400 ++++ couchdb.my 2011-12-27 01:21:18.000000000 +0400 +@@ -1,6 +1,4 @@ +-#!/bin/bash +-. /etc/rc.conf +-. /etc/rc.d/functions ++#!/bin/sh -e + + # Licensed under the Apache License, Version 2.0 (the "License"); you may not + # use this file except in compliance with the License. You may obtain a copy of +@@ -31,7 +29,7 @@ + NAME=couchdb + SCRIPT_NAME=`basename $0` + COUCHDB=/usr/bin/couchdb +-CONFIGURATION_FILE=/etc/conf.d/couchdb ++CONFIGURATION_FILE=/etc/default/couchdb + RUN_DIR=/var/run/couchdb + LSB_LIBRARY=/lib/lsb/init-functions + +@@ -44,14 +42,16 @@ + fi + + log_daemon_msg () { +- stat_busy $@ ++ # Dummy function to be replaced by LSB library. ++ ++ echo $@ + } + + log_end_msg () { ++ # Dummy function to be replaced by LSB library. ++ + if test "$1" != "0"; then +- stat_fail +- else +- stat_done ++ echo "Error with $DESCRIPTION: $NAME" + fi + return $1 + } +@@ -66,7 +66,7 @@ + command="$command $COUCHDB_OPTIONS" + fi + if test -n "$COUCHDB_USER"; then +- if su $COUCHDB_USER -s /bin/bash -c "$command"; then ++ if su $COUCHDB_USER -c "$command"; then + return $SCRIPT_OK + else + return $SCRIPT_ERROR +@@ -84,7 +84,6 @@ + # Start Apache CouchDB as a background process. + + mkdir -p "$RUN_DIR" +- chown -R $COUCHDB_USER "$RUN_DIR" + command="$COUCHDB -b" + if test -n "$COUCHDB_STDOUT_FILE"; then + command="$command -o $COUCHDB_STDOUT_FILE" |