diff options
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.ebuild | 96 |
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 +} |