summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'net-misc/rabbitmq-server/rabbitmq-server-2.8.6.ebuild')
-rw-r--r--net-misc/rabbitmq-server/rabbitmq-server-2.8.6.ebuild96
1 files changed, 96 insertions, 0 deletions
diff --git a/net-misc/rabbitmq-server/rabbitmq-server-2.8.6.ebuild b/net-misc/rabbitmq-server/rabbitmq-server-2.8.6.ebuild
new file mode 100644
index 000000000000..e1a724555301
--- /dev/null
+++ b/net-misc/rabbitmq-server/rabbitmq-server-2.8.6.ebuild
@@ -0,0 +1,96 @@
+# Copyright 1999-2012 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/net-misc/rabbitmq-server/rabbitmq-server-2.8.6.ebuild,v 1.1 2012/09/03 16:00:40 ultrabug Exp $
+
+EAPI="4"
+PYTHON_DEPEND="2"
+
+inherit eutils python systemd
+
+DESCRIPTION="RabbitMQ is a high-performance AMQP-compliant message broker written in Erlang."
+HOMEPAGE="http://www.rabbitmq.com/"
+SRC_URI="http://www.rabbitmq.com/releases/rabbitmq-server/v${PV}/rabbitmq-server-${PV}.tar.gz"
+
+LICENSE="GPL-2 MPL-1.1"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE=""
+
+RDEPEND="dev-lang/erlang"
+DEPEND="${RDEPEND}
+ app-arch/zip
+ app-arch/unzip
+ app-text/docbook-xml-dtd:4.5
+ app-text/xmlto
+ dev-libs/libxslt
+ dev-python/simplejson
+"
+
+pkg_setup() {
+ enewgroup rabbitmq
+ enewuser rabbitmq -1 -1 /var/lib/rabbitmq rabbitmq
+ python_set_active_version 2
+ python_pkg_setup
+}
+
+src_prepare() {
+ # do not refetch plugins from their vcs
+ for f in $(find plugins-src/*-wrapper ${plugin} -type d -maxdepth 1); do
+ touch ${f}/.done
+ done
+}
+
+src_compile() {
+ emake all docs_all
+ gunzip docs/*.gz
+}
+
+src_install() {
+ # erlang module
+ local targetdir="/usr/$(get_libdir)/rabbitmq"
+
+ einfo "Setting correct RABBITMQ_HOME in scripts"
+ sed -e "s:^RABBITMQ_HOME=.*:RABBITMQ_HOME=\"${targetdir}\":g" \
+ -i scripts/rabbitmq-env
+
+ einfo "Installing Erlang modules to ${targetdir}"
+ insinto "${targetdir}"
+ doins -r ebin include plugins
+
+ einfo "Installing server scripts to /usr/sbin"
+ for script in rabbitmq-env rabbitmq-server rabbitmqctl rabbitmq-defaults rabbitmq-plugins; do
+ exeinto /usr/libexec/rabbitmq
+ doexe scripts/${script}
+ newsbin "${FILESDIR}"/rabbitmq-script-wrapper ${script}
+ done
+
+ # create the directory where our log file will go.
+ diropts -m 0770 -o rabbitmq -g rabbitmq
+ keepdir /var/log/rabbitmq /etc/rabbitmq
+
+ # create the mnesia directory
+ diropts -m 0770 -o rabbitmq -g rabbitmq
+ dodir /var/lib/rabbitmq{,/mnesia}
+
+ # install the init script
+ newinitd "${FILESDIR}"/rabbitmq-server.init-r3 rabbitmq
+ systemd_dounit "${FILESDIR}/rabbitmq.service"
+
+ # install documentation
+ doman docs/*.[15]
+ dodoc README
+}
+
+pkg_preinst() {
+ if has_version "<=net-misc/rabbitmq-server-1.8.0"; then
+ elog "IMPORTANT UPGRADE NOTICE:"
+ elog
+ elog "RabbitMQ is now running as an unprivileged user instead of root."
+ elog "Therefore you need to fix the permissions for RabbitMQs Mnesia database."
+ elog "Please run the following commands as root:"
+ elog
+ elog " usermod -d /var/lib/rabbitmq rabbitmq"
+ elog " chown rabbitmq:rabbitmq -R /var/lib/rabbitmq"
+ elog
+ fi
+}