# Copyright 1999-2011 Gentoo Foundation # Distributed under the terms of the GNU General Public License v2 # $Header: /var/cvsroot/gentoo-x86/www-apps/shinken/shinken-0.12.2.ebuild,v 1.4 2011/03/15 21:34:31 xarthisius Exp $ EAPI=5 PYTHON_COMPAT=( python{2_6,2_7} ) RESTRICT_PYTHON_ABIS="3.* *-jython" #DISTUTILS_SINGLE_IMPL=1 inherit distutils-r1 eutils systemd user DESCRIPTION="Shinken is a new monitoring tool written in Python and compatible with Nagios." HOMEPAGE="http://shinken-monitoring.org/" SRC_URI="https://github.com/naparuba/shinken/archive/${PV}.tar.gz -> ${P}.tar.gz" LICENSE="AGPLv3" SLOT="0" IUSE="livestat +arbiter broker poller reactionner receiver scheduler systemd" KEYWORDS="~amd64 ~x86" RDEPEND=" dev-python/pyro:4 dev-python/cherrypy livestat? ( dev-python/simplejson ) poller? ( net-analyzer/nagios-plugins ) " DEPEND="${RDEPEND} !net-analyzer/nagios" SHINKENMODULES="arbiter broker poller reactionner receiver scheduler" #src_unpack() { # unpack ${A} # mv ${P}-RC ${P} # cd ${S} #} python_prepare_all() { find . -name '.gitignore' -exec rm -f {} \; find . -name '*void_for_git*' -exec rm -f {} \; find . -name '__for_git' -exec rm -f {} \; # remove unneded doubletts rm bin/*.py # fixing path #sed -i \ # -e "s:^\(# \?\)\?certs_dir=\(.\+\):\1certs_dir=/etc/${PN}/certs:" \ # -e "s:^\(# \?\)\?ca_cert=\(.\+\):\1ca_cert=/etc/${PN}/certs/ca.pem:" \ # -e "s:^\(# \?\)\?server_cert=\(.\+\):\1server_cert=/etc/${PN}/certs/server.pem:" \ # etc/*d.ini etc/nagios.cfg || die #sed -i \ # -e "s:^\(# \?\)\?local_log=\(%(workdir)s/\)\?\(.\+\):local_log=/var/log/${PN}/\3:" \ # -e "s:^\(# \?\)\?workdir=\(.\+\):workdir=/var/lib/${PN}:" \ # -e "s:^\(# \?\)\?pidfile=\(%(workdir)s/\)\?\(.\+\):pidfile=/var/run/${PN}/\3:" \ # -e "s:^\(# \?\)\?user=\([^ ]\+\)\(.\+\)\?:user=\2:" \ # -e "s:^\(# \?\)\?group=\([^ ]\+\)\(.\+\)\?:group=\2:" \ # etc/*d.ini || die #sed -i \ # -e "s:^\(# \?\)\?lock_file=\(.\+\):workdir=/var/lib/${PN}\npidfile=/var/run/${PN}/\2:" \ # etc/nagios.cfg || die #sed -i \ # -e "s:^\(# \?\)\?log_file=\(.\+\):log_file=/var/log/${PN}/discover.log:" \ # -e "s:^\(# \?\)\?lock_file=\(.\+\):lock_file=/var/run/${PN}/\2:" \ # etc/discovery.cfg || die distutils-r1_python_prepare_all } src_configure() { local -i modnum=0 for mod in ${SHINKENMODULES}; do if use $mod; then let modnum++ fi done if [[ "${modnum}" -lt 1 ]]; then eerror eerror "No shinken module selected, aborting...." ewarn "Supported modules are ${SHINKENMODULES}" eerror fi #distutils-r1_src_configure } python_install() { distutils-r1_python_install keepdir /var/lib/${PN} fowners shinken:nagios "/var/lib/${PN}" fperms 750 "/var/lib/${PN}" doman manpages/manpages/shinken.8 for mod in ${SHINKENMODULES}; do if use $mod; then doman manpages/manpages/shinken-${mod}.8 fi done insinto /etc/shinken for subdir in etc/*; do if [[ ${subdir} != 'etc/sample' && ${subdir} != 'etc/sample.cfg' ]]; then doins -r ${subdir} fi done docinto examples dodoc etc/sample.cfg dodoc -r etc/sample # Don't install to /var/run (/var/run/shinken) rm -rf ${D}/var/run if use systemd; then # Distributed service files point to /usr/sbin/, installation is to /usr/bin/! sed -i -e 's|sbin|bin|' for_fedora/systemd/*.service systemd_dounit for_fedora/systemd/*.service systemd_dotmpfilesd ${FILESDIR}/${PN}.conf fi python_fix_shebang ${ED} } pkg_setup() { enewgroup shinken enewuser shinken -1 -1 -1 shinken }