From 56bd759df1d0c750a065b8c845e93d5dfa6b549d Mon Sep 17 00:00:00 2001 From: "Robin H. Johnson" Date: Sat, 8 Aug 2015 13:49:04 -0700 Subject: proj/gentoo: Initial commit MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 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 X-Thanks: Alec Warner - did the GSoC 2006 migration tests X-Thanks: Robin H. Johnson - infra guy, herding this project X-Thanks: Nguyen Thai Ngoc Duy - Former Gentoo developer, wrote Git features for the migration X-Thanks: Brian Harring - wrote much python to improve cvs2svn X-Thanks: Rich Freeman - validation scripts X-Thanks: Patrick Lauer - Gentoo dev, running new 2014 work in migration X-Thanks: Michał Górny - scripts, QA, nagging X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed --- mail-client/drac/Manifest | 1 + mail-client/drac/drac-1.12-r1.ebuild | 72 ++++++++++++++++++++++++++ mail-client/drac/files/drac_rotate | 99 ++++++++++++++++++++++++++++++++++++ mail-client/drac/files/dracd.rc6 | 21 ++++++++ mail-client/drac/metadata.xml | 5 ++ 5 files changed, 198 insertions(+) create mode 100644 mail-client/drac/Manifest create mode 100644 mail-client/drac/drac-1.12-r1.ebuild create mode 100644 mail-client/drac/files/drac_rotate create mode 100644 mail-client/drac/files/dracd.rc6 create mode 100644 mail-client/drac/metadata.xml (limited to 'mail-client/drac') diff --git a/mail-client/drac/Manifest b/mail-client/drac/Manifest new file mode 100644 index 00000000000..bb9d93389f5 --- /dev/null +++ b/mail-client/drac/Manifest @@ -0,0 +1 @@ +DIST drac.tar.Z 20705 SHA256 2c184de422ae4b347464de5083c38cb8d3ab4d53b6584514c7a5bd67870729db diff --git a/mail-client/drac/drac-1.12-r1.ebuild b/mail-client/drac/drac-1.12-r1.ebuild new file mode 100644 index 00000000000..ca6b3c64c6b --- /dev/null +++ b/mail-client/drac/drac-1.12-r1.ebuild @@ -0,0 +1,72 @@ +# Copyright 1999-2014 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +inherit toolchain-funcs + +DESCRIPTION="A robust implementation of POP-before-SMTP" +HOMEPAGE="http://mail.cc.umanitoba.ca/drac/" +SRC_URI="ftp://ftp.cc.umanitoba.ca/src/${PN}.tar.Z" + +LICENSE="rc" +SLOT="0" +KEYWORDS="x86 sparc ppc hppa ~amd64 ppc64" +IUSE="debug" + +DEPEND="virtual/mta + >=sys-libs/db-3.2.9 + >=sys-apps/sed-4" +RDEPEND="${DEPEND} + >=net-nds/portmap-5b-r6" + +S="${WORKDIR}" + +src_compile() { + local mysed + if use debug ; then + mysed="s:^CFLAGS.*:CFLAGS = \$(DEFS) -g ${CFLAGS}:" + else + mysed="s:^CFLAGS.*:CFLAGS = \$(DEFS) ${CFLAGS}:" + fi + + sed -e "s:^INSTALL = .*:INSTALL = /usr/bin/install:" \ + -e "s:^EBIN = .*:EBIN = /usr/sbin:" \ + -e "s:^MAN = .*:MAN = /usr/share/man/man:" \ + -e "s:^DEFS = .*:DEFS = -DSOCK_RPC -DFCNTL_LOCK -DGETHOST -DDASH_C:" \ + -e "s:^CC = .*:CC = $(tc-getCC):" \ + -e "s:^LDLIBS = .*:LDLIBS = -ldb:" \ + -e "s:^TSTLIBS = .*:TSTLIBS = -L. -ldrac:" \ + -e "s:^RPCGENFLAGS = .*:RPCGENFLAGS = -C -I:" \ + -e "s:^MANADM = .*:MANADM = 8:" \ + -e "${mysed}" \ + -i Makefile || die "sed failed" + + # Parallel build does not work. + emake -j1 || die "compile problem" +} + +src_install() { + newsbin rpc.dracd dracd + dosbin "${FILESDIR}/drac_rotate" + + dolib.a libdrac.a + + newinitd "${FILESDIR}/dracd.rc6" dracd + + dodoc Changes COPYRIGHT INSTALL PORTING README + newman rpc.dracd.1m dracd.8 + doman dracauth.3 + + keepdir /var/lib/drac + fowners mail:mail /var/lib/drac + fperms 750 /var/lib/drac +} + +pkg_postinst() { + elog "After configuring your IMAP/POP server for DRAC, and starting the" + elog "dracd server (e.g. by running /etc/init.d/dracd start) you can" + elog "set up your MTA to check for authenticated hosts in:" + elog " /var/lib/drac/drac" + elog "Please see the MTA documentation for more details." + echo +} diff --git a/mail-client/drac/files/drac_rotate b/mail-client/drac/files/drac_rotate new file mode 100644 index 00000000000..45cce3a4dc4 --- /dev/null +++ b/mail-client/drac/files/drac_rotate @@ -0,0 +1,99 @@ +#!/bin/bash + +usage="[/path/to/real_file.db [/path/to/link_file.db]] [--debug] [--verbose]" +help=" +A DRAC-enabled MTA performs better by using a seldomly, instead of +constantly changing, access database. This script creates a link +to a snapshotted database which the MTA can use. It is designed +to run every minute from cron. Here is an example cron configuration: + + * * * * * $(basename "$0") +" + +for i in $* ; do + case "${i}" in + --verbose | -verbose | -v | --debug | -debug | -d) + debug=1 + ;; + --usage | -usage | -u ) + echo "usage: $(basename "$0") ${usage}" + exit 1 + ;; + --help | -help | -h) + echo "${help}" + echo "usage: $(basename "$0") ${usage}" + echo + exit 1 + ;; + *) + args[${#args}]="${i}" + ;; + esac +done + +debug_print() { + if [ -n "${debug}" ] ; then + if [ -n "$2" ] ; then + echo -n "$1 ... " + else + echo "$1" + fi + fi +} + +check_result() { + if [ "$?" -ne 0 ] ; then + debug_print + if [ -n "$1" ] ; then + echo "$(basename "$0"): $1, exiting ..." + else + echo "$(basename "$0"): exiting ..." + fi + exit 1 + fi +} + +debug_print "finding current minute" "1" +min="$(date '+%-M')" && \ +[ -n "${min}" ] +check_result "can't determine current minute" +debug_print "success! (${min})" + +debug_print "finding drac database file" "1" +real="${args[0]:-/var/lib/drac/drac.db}" && \ +[ -n "${real}" -a -f "${real}" ] +check_result "can't find drac database file" +debug_print "success! (${real})" + +debug_print "setting drac link file" "1" +link="${args[1]:-/var/lib/drac/drac_link.db}" && \ +[ -n "${link}" -a -d "$(dirname "${link}")" ] +check_result "can't set drac link file" +debug_print "success! (${link})" + +debug_print "finding new drac database" "1" +new="${real}$(( ${min} % 3 ))" && \ +[ "${new}" != "${real}" ] +check_result "can't set new drac database" +debug_print "success! (${new})" + +debug_print "finding old drac database" "1" +old="${real}$(( (${min} + 1) % 3 ))" && \ +[ "${old}" != "${real}" -a "${old}" != "${new}" ] +check_result "can't set old drac database" +debug_print "success! (${old})" + +debug_print "creating new drac database" "1" +cp "${real}" "${new}" +check_result "can't create new drac database" +debug_print "success! ($(basename "${real}") -> $(basename "${new}"))" + +debug_print "linking new drac database" "1" +ln -sf "${new}" "${link}" +check_result "can't link new drac database" +debug_print "success! ($(basename "${new}") -> $(basename "${link}"))" + +debug_print "removing old drac database" "1" +rm -f "${old}" +check_result "can't remove old drac database" +debug_print "success! (${old})" diff --git a/mail-client/drac/files/dracd.rc6 b/mail-client/drac/files/dracd.rc6 new file mode 100644 index 00000000000..98a9de51cf1 --- /dev/null +++ b/mail-client/drac/files/dracd.rc6 @@ -0,0 +1,21 @@ +#!/sbin/runscript +# Copyright 1999-2004 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +depend() { + need net portmap +} + +start() { + ebegin "Starting dracd" + start-stop-daemon --start --quiet --exec /usr/sbin/dracd \ + -- -i -e 5 /var/lib/drac/drac.db + eend $? +} + +stop() { + ebegin "Stopping dracd" + start-stop-daemon --stop --quiet --exec /usr/sbin/dracd + eend $? +} diff --git a/mail-client/drac/metadata.xml b/mail-client/drac/metadata.xml new file mode 100644 index 00000000000..51f94e3fbe0 --- /dev/null +++ b/mail-client/drac/metadata.xml @@ -0,0 +1,5 @@ + + + +net-mail + -- cgit v1.2.1