blob: 6a860bcaa913fa39ed5ff90db4834af49b47e200 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
|
# Copyright 1999-2007 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/net-irc/ptlink-ircd/ptlink-ircd-6.19.6.ebuild,v 1.3 2007/12/09 01:04:05 cla Exp $
inherit eutils ssl-cert
MY_P="PTlink${PV}"
DESCRIPTION="PTlink IRCd is a secure IRC daemon with many advanced features."
HOMEPAGE="http://www.ptlink.net/"
SRC_URI="ftp://ftp.sunsite.dk/projects/ptlink/ircd/${MY_P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~ppc ~sparc ~x86"
IUSE="ssl"
DEPEND="sys-libs/zlib
ssl? ( dev-libs/openssl )"
S=${WORKDIR}/${MY_P}
src_unpack() {
unpack ${A}
find "${S}" -type d -name CVS -print0 2>/dev/null | xargs -0r rm -rf
}
src_compile() {
econf \
--disable-ipv6 \
$(use_with ssl ssl openssl) \
|| die "econf failed"
emake CFLAGS="${CFLAGS}" || die "emake failed"
}
src_install() {
newbin src/ircd ptlink-ircd || die "newbin failed"
newbin tools/fixklines ptlink-ircd-fixklines || die "newbin failed"
newbin tools/mkpasswd ptlink-ircd-mkpasswd || die "newbin failed"
insinto /etc/ptlink-ircd
fperms 700 /etc/ptlink-ircd || die "fperms failed"
doins samples/{kline.conf,{opers,ptlink}.motd,help.{admin,oper,user}} || die "newins failed"
newins samples/example.conf.short ircd.conf || die "newins failed"
newins samples/example.conf.trillian ircd.conf.trillian || die "newins failed"
newins samples/main.dconf.sample main.dconf || die "newins failed"
newins samples/network.dconf.sample network.dconf || die "newins failed"
insinto /usr/share/ptlink-ircd/codepage
doins src/codepage/*.enc || die "doins failed"
dosym /usr/share/ptlink-ircd/codepage /etc/ptlink-ircd/codepage || die "dosym failed"
rm -rf doc/old
dodoc doc/* doc_hybrid6/* ircdcron/* CHANGES README || die "dodoc failed"
keepdir /var/log/ptlink-ircd /var/lib/ptlink-ircd || die "keepdir failed"
dosym /var/log/ptlink-ircd /var/lib/ptlink-ircd/log || die "dosym failed"
newinitd "${FILESDIR}/ptlink-ircd.initd" ptlink-ircd || die "newinitd failed"
newconfd "${FILESDIR}/ptlink-ircd.confd" ptlink-ircd || die "newconfd failed"
}
pkg_postinst() {
# Move docert from src_install() to install_cert for bug #201678
use ssl && (
if [[ ! -f "${ROOT}"/etc/ptlink-ircd/server.key.pem ]]; then
install_cert /etc/ptlink-ircd/server || die "install_cert failed"
mv "${ROOT}"/etc/ptlink-ircd/server.crt "${ROOT}"/etc/ptlink-ircd/server.cert.pem
mv "${ROOT}"/etc/ptlink-ircd/server.csr "${ROOT}"/etc/ptlink-ircd/server.req.pem
mv "${ROOT}"/etc/ptlink-ircd/server.key "${ROOT}"/etc/ptlink-ircd/server.key.pem
fi
)
enewuser ptlink-ircd
chown ptlink-ircd \
"${ROOT}"/{etc,var/{log,lib}}/ptlink-ircd \
"${ROOT}"/etc/ptlink-ircd/server.key.pem
elog
elog "PTlink IRCd will run without configuration, although this is strongly"
elog "advised against."
elog
elog "You can find example cron scripts here:"
elog " /usr/share/doc/${PF}/ircd.cron.gz"
elog
elog "You can also use /etc/init.d/ptlink-ircd to start at boot"
elog
}
|