summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobin H. Johnson <robbat2@gentoo.org>2015-08-08 13:49:04 -0700
committerRobin H. Johnson <robbat2@gentoo.org>2015-08-08 17:38:18 -0700
commit56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch)
tree3f91093cdb475e565ae857f1c5a7fd339e2d781e /net-misc/rabbitmq-server
downloadgentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2
gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip
proj/gentoo: Initial commit
This commit represents a new era for Gentoo: Storing the gentoo-x86 tree in Git, as converted from CVS. This commit is the start of the NEW history. Any historical data is intended to be grafted onto this point. Creation process: 1. Take final CVS checkout snapshot 2. Remove ALL ChangeLog* files 3. Transform all Manifests to thin 4. Remove empty Manifests 5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$ 5.1. Do not touch files with -kb/-ko keyword flags. Signed-off-by: Robin H. Johnson <robbat2@gentoo.org> X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'net-misc/rabbitmq-server')
-rw-r--r--net-misc/rabbitmq-server/Manifest4
-rw-r--r--net-misc/rabbitmq-server/files/rabbitmq-script-wrapper54
-rwxr-xr-xnet-misc/rabbitmq-server/files/rabbitmq-server.init-r323
-rw-r--r--net-misc/rabbitmq-server/files/rabbitmq.service16
-rw-r--r--net-misc/rabbitmq-server/metadata.xml9
-rw-r--r--net-misc/rabbitmq-server/rabbitmq-server-3.2.4.ebuild95
-rw-r--r--net-misc/rabbitmq-server/rabbitmq-server-3.3.4.ebuild101
-rw-r--r--net-misc/rabbitmq-server/rabbitmq-server-3.5.1.ebuild101
-rw-r--r--net-misc/rabbitmq-server/rabbitmq-server-3.5.3.ebuild101
9 files changed, 504 insertions, 0 deletions
diff --git a/net-misc/rabbitmq-server/Manifest b/net-misc/rabbitmq-server/Manifest
new file mode 100644
index 000000000000..adee75b02ca5
--- /dev/null
+++ b/net-misc/rabbitmq-server/Manifest
@@ -0,0 +1,4 @@
+DIST rabbitmq-server-3.2.4.tar.gz 3588097 SHA256 a930f92b362df2f292ec5f0281aa2011eb0c668faf6e24c4653a9fc53ec43b9f SHA512 573fc9fa2956061f91dc093664d98b569157e4f6cfb0d772731d1de6b1f84dd713169b515e28ede3383ac3baabfb912679cd7f021786316d487afc8305cb3457 WHIRLPOOL abecf0a7aaf3ab6d39475ec7f032a4ddbb078f98bf68c5996816fe1bc4bb40fa2052396e782ea8d450b1268b0f1187c5638dcd71aa859b6578025a930a2cca73
+DIST rabbitmq-server-3.3.4.tar.gz 3499481 SHA256 741005b566178de0c0bb9782f6bbc5aa115cfb652b994538fa95904586d5d68e SHA512 c0b76b239fd4e1a80a2646c1d222f6155480a40bb04eaf1b78c1367a5953a36ec626e300399e2ab9478167dab464b1826ec5490167f2cbc14767fccdc4002015 WHIRLPOOL 18793c2dee1a82ba142bddac44d3c9b744d8faccd60c129730e1ec6dfa59b793a76b6508ee63073b89e7904ca74b0130a04e1778d96f373aa7d7a0d290278901
+DIST rabbitmq-server-3.5.1.tar.gz 3723354 SHA256 bda603b37ba933eab2b7fd9cdb9b138b793ad030cd5cb7824bc794754b76ca0d SHA512 866a6b6cb379ccbb958f758316d5c6b5139078bb061a3397b9ba29b9f306a795b158b0b8421d5c05d51add2188af9b5d8459b6218de4d44289d720b0c8bd28e2 WHIRLPOOL 826086270215dd284996b6cc65e6d756455809881a4e3c761fcd4dcad963b3bd0236062e8d10d34cad97daf249e9d7262f462d75e5a484ffee7dcd60f63e5f0c
+DIST rabbitmq-server-3.5.3.tar.gz 3727143 SHA256 45c797ac4f7a9d2ece54eafa537da05dc3e66e43d45b4825509fe47113844363 SHA512 fa6c92256286753eba5d0ad07d70eb99d416b8626f07e832972c61cc02066aa3856f7242f83c37bea20726e339e1cb859a88084bf246bb1e0e468e8e76c543e2 WHIRLPOOL 5bb2762bd1ad7ed2e241911b8f85c009e7b851ea4f678c3e644542c6af14243526d6fb0d8b0b00242cf89599de7c5a64a824a98556aaf651bd77b5cf1abddef3
diff --git a/net-misc/rabbitmq-server/files/rabbitmq-script-wrapper b/net-misc/rabbitmq-server/files/rabbitmq-script-wrapper
new file mode 100644
index 000000000000..23f3d75a42cf
--- /dev/null
+++ b/net-misc/rabbitmq-server/files/rabbitmq-script-wrapper
@@ -0,0 +1,54 @@
+#!/bin/sh
+## The contents of this file are subject to the Mozilla Public License
+## Version 1.1 (the "License"); you may not use this file except in
+## compliance with the License. You may obtain a copy of the License at
+## http://www.mozilla.org/MPL/
+##
+## Software distributed under the License is distributed on an "AS IS"
+## basis, WITHOUT WARRANTY OF ANY KIND, either express or implied. See the
+## License for the specific language governing rights and limitations
+## under the License.
+##
+## The Original Code is RabbitMQ.
+##
+## The Initial Developers of the Original Code are LShift Ltd,
+## Cohesive Financial Technologies LLC, and Rabbit Technologies Ltd.
+##
+## Portions created before 22-Nov-2008 00:00:00 GMT by LShift Ltd,
+## Cohesive Financial Technologies LLC, or Rabbit Technologies Ltd
+## are Copyright (C) 2007-2008 LShift Ltd, Cohesive Financial
+## Technologies LLC, and Rabbit Technologies Ltd.
+##
+## Portions created by LShift Ltd are Copyright (C) 2007-2009 LShift
+## Ltd. Portions created by Cohesive Financial Technologies LLC are
+## Copyright (C) 2007-2009 Cohesive Financial Technologies
+## LLC. Portions created by Rabbit Technologies Ltd are Copyright
+## (C) 2007-2009 Rabbit Technologies Ltd.
+##
+## All Rights Reserved.
+##
+## Contributor(s): ______________________________________.
+##
+
+# Escape spaces and quotes, because shell is revolting.
+CMDLINE=""
+for arg in "$@" ; do
+ # Escape quotes in parameters, so that they're passed through cleanly.
+ arg=$(sed -e 's/"/\\"/g' <<-END
+ $arg
+ END
+ )
+ CMDLINE="${CMDLINE} \"${arg}\""
+done
+
+cd /var/lib/rabbitmq
+
+SCRIPT=`basename $0`
+
+if [ `id -u` = 0 ] ; then
+ su rabbitmq -s /bin/sh -c "/usr/libexec/rabbitmq/${SCRIPT} ${CMDLINE}"
+else
+ /usr/libexec/rabbitmq/${SCRIPT}
+ echo -e "\nOnly root should run ${SCRIPT}\n"
+ exit 1
+fi
diff --git a/net-misc/rabbitmq-server/files/rabbitmq-server.init-r3 b/net-misc/rabbitmq-server/files/rabbitmq-server.init-r3
new file mode 100755
index 000000000000..9e8c1c4873c2
--- /dev/null
+++ b/net-misc/rabbitmq-server/files/rabbitmq-server.init-r3
@@ -0,0 +1,23 @@
+#!/sbin/runscript
+# Copyright 1999-2013 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+depend() {
+ need net
+ use dns epmd
+}
+
+start() {
+ ebegin "Starting RabbitMQ"
+ /usr/sbin/rabbitmq-server -detached >> /var/log/rabbitmq/startup.log 2>> /var/log/rabbitmq/startup.err
+ /usr/sbin/rabbitmqctl status | sed -n 's/[^p]*pid,\([0-9]*\)[^0-9]*/\1/p' > /var/run/rabbitmq.pid
+ /usr/sbin/rabbitmqctl -q wait /var/run/rabbitmq.pid
+ eend $?
+}
+
+stop() {
+ ebegin "Stopping RabbitMQ"
+ /usr/sbin/rabbitmqctl stop /var/run/rabbitmq.pid >> /var/log/rabbitmq/shutdown.log 2>> /var/log/rabbitmq/shutdown.err
+ eend $?
+}
diff --git a/net-misc/rabbitmq-server/files/rabbitmq.service b/net-misc/rabbitmq-server/files/rabbitmq.service
new file mode 100644
index 000000000000..9264b406713f
--- /dev/null
+++ b/net-misc/rabbitmq-server/files/rabbitmq.service
@@ -0,0 +1,16 @@
+[Unit]
+Description=RabbitMQ daemon
+
+[Service]
+Type=simple
+ExecStart=/usr/libexec/rabbitmq/rabbitmq-server
+ExecStop=/usr/libexec/rabbitmq/rabbitmqctl stop
+WorkingDirectory=/var/lib/rabbitmq
+User=rabbitmq
+Group=rabbitmq
+StandardOutput=syslog
+StandardError=syslog
+Restart=always
+
+[Install]
+WantedBy=multi-user.target
diff --git a/net-misc/rabbitmq-server/metadata.xml b/net-misc/rabbitmq-server/metadata.xml
new file mode 100644
index 000000000000..323870c05113
--- /dev/null
+++ b/net-misc/rabbitmq-server/metadata.xml
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer>
+ <email>ultrabug@gentoo.org</email>
+ <name>Ultrabug</name>
+ </maintainer>
+</pkgmetadata>
+
diff --git a/net-misc/rabbitmq-server/rabbitmq-server-3.2.4.ebuild b/net-misc/rabbitmq-server/rabbitmq-server-3.2.4.ebuild
new file mode 100644
index 000000000000..965a8ce4bbf2
--- /dev/null
+++ b/net-misc/rabbitmq-server/rabbitmq-server-3.2.4.ebuild
@@ -0,0 +1,95 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit eutils python-single-r1 systemd user
+
+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-single-r1_pkg_setup
+}
+
+src_compile() {
+ emake all docs_all
+ gunzip docs/*.gz
+}
+
+src_install() {
+ # erlang module
+ local targetdir="/usr/$(get_libdir)/erlang/lib/rabbitmq_server-${PV}"
+
+ 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
+
+ # install the init script
+ newinitd "${FILESDIR}"/rabbitmq-server.init-r3 rabbitmq
+ systemd_dounit "${FILESDIR}/rabbitmq.service"
+
+ # install documentation
+ doman docs/*.[15]
+ dodoc README
+
+ # 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}
+}
+
+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
+ elif has_version "<net-misc/rabbitmq-server-2.1.1"; then
+ elog "IMPORTANT UPGRADE NOTICE:"
+ elog
+ elog "Please read release notes before upgrading:"
+ elog
+ elog "http://www.rabbitmq.com/release-notes/README-3.0.0.txt"
+ fi
+}
diff --git a/net-misc/rabbitmq-server/rabbitmq-server-3.3.4.ebuild b/net-misc/rabbitmq-server/rabbitmq-server-3.3.4.ebuild
new file mode 100644
index 000000000000..c44133415f7d
--- /dev/null
+++ b/net-misc/rabbitmq-server/rabbitmq-server-3.3.4.ebuild
@@ -0,0 +1,101 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit eutils python-any-r1 systemd user
+
+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
+ $(python_gen_any_dep 'dev-python/simplejson[${PYTHON_USEDEP}]')
+"
+
+pkg_setup() {
+ enewgroup rabbitmq
+ enewuser rabbitmq -1 -1 /var/lib/rabbitmq rabbitmq
+ python-any-r1_pkg_setup
+}
+
+src_compile() {
+ emake all docs_all
+ gunzip docs/*.gz
+}
+
+src_install() {
+ # erlang module
+ local targetdir="/usr/$(get_libdir)/erlang/lib/rabbitmq_server-${PV}"
+
+ einfo "Setting correct RABBITMQ_HOME in scripts"
+ sed -e "s:^RABBITMQ_HOME=.*:RABBITMQ_HOME=\"${targetdir}\":g" \
+ -i scripts/rabbitmq-env || die
+
+ 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
+
+ # install the init script
+ newinitd "${FILESDIR}"/rabbitmq-server.init-r3 rabbitmq
+ systemd_dounit "${FILESDIR}/rabbitmq.service"
+
+ # install documentation
+ doman docs/*.[15]
+ dodoc README
+
+ # 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}
+}
+
+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
+ elif has_version "<net-misc/rabbitmq-server-2.1.1"; then
+ elog "IMPORTANT UPGRADE NOTICE:"
+ elog
+ elog "Please read release notes before upgrading:"
+ elog
+ elog "http://www.rabbitmq.com/release-notes/README-3.0.0.txt"
+ fi
+ if has_version "<net-misc/rabbitmq-server-3.3.0"; then
+ elog
+ elog "This release changes the behaviour of the default guest user:"
+ elog
+ elog "http://www.rabbitmq.com/access-control.html"
+ fi
+}
diff --git a/net-misc/rabbitmq-server/rabbitmq-server-3.5.1.ebuild b/net-misc/rabbitmq-server/rabbitmq-server-3.5.1.ebuild
new file mode 100644
index 000000000000..c44133415f7d
--- /dev/null
+++ b/net-misc/rabbitmq-server/rabbitmq-server-3.5.1.ebuild
@@ -0,0 +1,101 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit eutils python-any-r1 systemd user
+
+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
+ $(python_gen_any_dep 'dev-python/simplejson[${PYTHON_USEDEP}]')
+"
+
+pkg_setup() {
+ enewgroup rabbitmq
+ enewuser rabbitmq -1 -1 /var/lib/rabbitmq rabbitmq
+ python-any-r1_pkg_setup
+}
+
+src_compile() {
+ emake all docs_all
+ gunzip docs/*.gz
+}
+
+src_install() {
+ # erlang module
+ local targetdir="/usr/$(get_libdir)/erlang/lib/rabbitmq_server-${PV}"
+
+ einfo "Setting correct RABBITMQ_HOME in scripts"
+ sed -e "s:^RABBITMQ_HOME=.*:RABBITMQ_HOME=\"${targetdir}\":g" \
+ -i scripts/rabbitmq-env || die
+
+ 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
+
+ # install the init script
+ newinitd "${FILESDIR}"/rabbitmq-server.init-r3 rabbitmq
+ systemd_dounit "${FILESDIR}/rabbitmq.service"
+
+ # install documentation
+ doman docs/*.[15]
+ dodoc README
+
+ # 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}
+}
+
+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
+ elif has_version "<net-misc/rabbitmq-server-2.1.1"; then
+ elog "IMPORTANT UPGRADE NOTICE:"
+ elog
+ elog "Please read release notes before upgrading:"
+ elog
+ elog "http://www.rabbitmq.com/release-notes/README-3.0.0.txt"
+ fi
+ if has_version "<net-misc/rabbitmq-server-3.3.0"; then
+ elog
+ elog "This release changes the behaviour of the default guest user:"
+ elog
+ elog "http://www.rabbitmq.com/access-control.html"
+ fi
+}
diff --git a/net-misc/rabbitmq-server/rabbitmq-server-3.5.3.ebuild b/net-misc/rabbitmq-server/rabbitmq-server-3.5.3.ebuild
new file mode 100644
index 000000000000..c44133415f7d
--- /dev/null
+++ b/net-misc/rabbitmq-server/rabbitmq-server-3.5.3.ebuild
@@ -0,0 +1,101 @@
+# Copyright 1999-2015 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Id$
+
+EAPI="5"
+
+PYTHON_COMPAT=( python2_7 )
+
+inherit eutils python-any-r1 systemd user
+
+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
+ $(python_gen_any_dep 'dev-python/simplejson[${PYTHON_USEDEP}]')
+"
+
+pkg_setup() {
+ enewgroup rabbitmq
+ enewuser rabbitmq -1 -1 /var/lib/rabbitmq rabbitmq
+ python-any-r1_pkg_setup
+}
+
+src_compile() {
+ emake all docs_all
+ gunzip docs/*.gz
+}
+
+src_install() {
+ # erlang module
+ local targetdir="/usr/$(get_libdir)/erlang/lib/rabbitmq_server-${PV}"
+
+ einfo "Setting correct RABBITMQ_HOME in scripts"
+ sed -e "s:^RABBITMQ_HOME=.*:RABBITMQ_HOME=\"${targetdir}\":g" \
+ -i scripts/rabbitmq-env || die
+
+ 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
+
+ # install the init script
+ newinitd "${FILESDIR}"/rabbitmq-server.init-r3 rabbitmq
+ systemd_dounit "${FILESDIR}/rabbitmq.service"
+
+ # install documentation
+ doman docs/*.[15]
+ dodoc README
+
+ # 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}
+}
+
+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
+ elif has_version "<net-misc/rabbitmq-server-2.1.1"; then
+ elog "IMPORTANT UPGRADE NOTICE:"
+ elog
+ elog "Please read release notes before upgrading:"
+ elog
+ elog "http://www.rabbitmq.com/release-notes/README-3.0.0.txt"
+ fi
+ if has_version "<net-misc/rabbitmq-server-3.3.0"; then
+ elog
+ elog "This release changes the behaviour of the default guest user:"
+ elog
+ elog "http://www.rabbitmq.com/access-control.html"
+ fi
+}