diff options
author | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 13:49:04 -0700 |
---|---|---|
committer | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 17:38:18 -0700 |
commit | 56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch) | |
tree | 3f91093cdb475e565ae857f1c5a7fd339e2d781e /net-irc/znc/znc-9999.ebuild | |
download | gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.xz |
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-irc/znc/znc-9999.ebuild')
-rw-r--r-- | net-irc/znc/znc-9999.ebuild | 167 |
1 files changed, 167 insertions, 0 deletions
diff --git a/net-irc/znc/znc-9999.ebuild b/net-irc/znc/znc-9999.ebuild new file mode 100644 index 00000000000..57071fa620e --- /dev/null +++ b/net-irc/znc/znc-9999.ebuild @@ -0,0 +1,167 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=5 + +PYTHON_COMPAT=( python{3_3,3_4} ) +inherit base python-single-r1 user + +MY_PV=${PV/_/-} +DESCRIPTION="An advanced IRC Bouncer" + +if [[ ${PV} == *9999* ]]; then + inherit git-2 + EGIT_REPO_URI=${EGIT_REPO_URI:-"git://github.com/znc/znc.git"} + SRC_URI="" + KEYWORDS="" +else + SRC_URI="http://znc.in/releases/${PN}-${MY_PV}.tar.gz" + KEYWORDS="~amd64 ~arm ~x86" +fi + +HOMEPAGE="http://znc.in" +LICENSE="GPL-2" +SLOT="0" +IUSE="daemon debug ipv6 perl python ssl sasl tcl" + +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +RDEPEND=" + perl? ( >=dev-lang/perl-5.10 ) + python? ( ${PYTHON_DEPS} ) + sasl? ( >=dev-libs/cyrus-sasl-2 ) + ssl? ( >=dev-libs/openssl-0.9.7d:0 ) + tcl? ( dev-lang/tcl:0= ) +" +DEPEND=" + virtual/pkgconfig + perl? ( + >=dev-lang/swig-2.0.12 + ) + python? ( + >=dev-lang/swig-2.0.12 + ) + ${RDEPEND} +" + +S=${WORKDIR}/${PN}-${MY_PV} + +PATCHES=( + "${FILESDIR}/${PN}-1.0-systemwideconfig.patch" +) + +CONFDIR="/var/lib/znc" + +pkg_setup() { + if use python; then + python-single-r1_pkg_setup + fi + if use daemon; then + enewgroup ${PN} + enewuser ${PN} -1 -1 /dev/null ${PN} + fi +} + +src_prepare() { + if [[ ${PV} == *9999* ]]; then + ./autogen.sh + fi + + base_src_prepare +} + +src_configure() { + econf \ + $(use_enable debug) \ + $(use_enable ipv6) \ + $(use_enable perl) \ + $(use python && echo "--enable-python=python3") \ + $(use_enable sasl cyrus) \ + $(use_enable ssl openssl) \ + $(use_enable tcl tcl) +} + +src_install() { + emake install DESTDIR="${D}" + dodoc NOTICE README.md + if use daemon; then + newinitd "${FILESDIR}"/znc.initd znc + newconfd "${FILESDIR}"/znc.confd znc + fi +} + +pkg_postinst() { + if use !daemon; then + elog + elog "Run 'znc --makeconf' as the user you want to run ZNC as" + elog "to make a configuration file" + elog + else + elog + elog "An init-script was installed in /etc/init.d" + elog "A config file was installed in /etc/conf.d" + if [[ ! -d "${EROOT}${CONFDIR}" ]]; then + elog + elog "Run 'emerge --config znc' to configure ZNC" + elog "as a system-wide daemon." + elog + elog "To generate a new SSL certificate, run:" + elog " znc --system-wide-config-as znc --makepem -d ${CONFDIR}" + elog "as root" + elog + elog "If migrating from a user-based install" + elog "you can use your existing config files:" + elog " mkdir ${CONFDIR}" + elog " mv /home/\$USER/.znc/* ${CONFDIR}" + elog " rm -rf /home/\$USER/.znc" + elog " chown -R znc:znc ${CONFDIR}" + elog + elog "If you already have znc set up and want take advantage of the" + elog "init script but skip of all the above, you can also edit" + elog " /etc/conf.d/znc" + elog "and adjust the variables to your current znc user and config" + elog "location." + if [[ -d "${EROOT}"/etc/znc ]]; then + elog + ewarn "/etc/znc exists on your system." + ewarn "Due to the nature of the contents of that folder," + ewarn "we have changed the default configuration to use" + ewarn " /var/lib/znc" + ewarn "please move /etc/znc to /var/lib/znc" + ewarn "or adjust /etc/conf.d/znc" + fi + else + elog "Existing config detected in ${CONFDIR}" + elog "You're good to go :)" + fi + elog + fi +} + +pkg_config() { + if use daemon && ! [[ -d "${EROOT}${CONFDIR}" ]]; then + einfo "Press ENTER to interactively create a new configuration file for znc." + einfo "To abort, press Control-C" + read + mkdir -p "${EROOT}${CONFDIR}" || die + chown -R ${PN}:${PN} "${EROOT}${CONFDIR}" || + die "Setting permissions failed" + "${EROOT}"/usr/bin/znc --system-wide-config-as znc -c -r -d "${EROOT}${CONFDIR}" || + die "Config failed" + echo + einfo "To start znc, run '/etc/init.d/znc start'" + einfo "or add znc to a runlevel:" + einfo " rc-update add znc default" + else + if use daemon; then + ewarn "${CONFDIR} already exists, aborting to avoid damaging" + ewarn "any existing configuration. If you are sure you want" + ewarn "to generate a new configuration, remove the folder" + ewarn "and try again." + else + ewarn "To configure znc as a system-wide daemon you have to" + ewarn "enable the 'daemon' use flag." + fi + fi +} |