summaryrefslogtreecommitdiff
blob: 623e5fdd6820c409da0b8ccc6cfbc4a79b29ad5d (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
# Copyright 1999-2006 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/net-dns/resolvconf-gentoo/resolvconf-gentoo-1.2.ebuild,v 1.1 2006/11/28 13:43:46 uberlord Exp $

inherit eutils

DESCRIPTION="A framework for managing DNS information"
HOMEPAGE="http://www.gentoo.org"
SRC_URI="http://dev.gentoo.org/~uberlord/${PN}/${P}.tar.bz2"

LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~m68k ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~sparc-fbsd ~x86 ~x86-fbsd"
IUSE=""

DEPEND=""
RDEPEND="app-shells/bash"

pkg_setup() {
	if ! grep -q "^uniqify()" "${ROOT}"/etc/init.d/functions.sh ; then
		eerror "/etc/init.d/functions.sh does not supply the uniqify function"
		eerror "Please upgrade to a baselayout that support it"
		eerror "(baselayout-1.12.0_pre17 and later versions do)"
		die "function uniqify does not exist"
	fi
}

src_install() {
	make ROOT="${D}" install || die "Failed to install"
}

pkg_postinst() {
	if [[ ! -"L ${ROOT}/etc/resolv.conf" ]] \
		|| [[ $(readlink "${ROOT}/etc/resolv.conf") != \
		"resolvconf/run/resolv.conf" ]] ; then
		ewarn "resolvconf requires ${ROOT}/etc/resolv.conf to be a symbolic"
		ewarn "to resolvconf/run/resolv.conf"
		einfo "To set this up automatically type"
		einfo "   emerge --config =${PF}"
	fi
}

pkg_config() {
	cd "${ROOT}/etc"
	if [[ -L resolv.conf && $(readlink resolv.conf) == \
		"resolvconf/run/resolv.conf" ]] ; then
		einfo "${ROOT}/etc/resolv.conf is already configured for ${PN}"
	else
		if [[ -e resolv.conf ]] ; then
			einfo "Your existing resolv.conf is will be mapped to an"
			einfo "interface called \"dummy\" in resolvconf. This will"
			einfo "disappear when you reboot."
			cp resolv.conf resolvconf/run/resolv.conf
			[[ ! -d resolvconf/run/interfaces ]] \
				&& mkdir resolvconf/run/interfaces
			cp resolv.conf resolvconf/run/interfaces/dummy
			echo "dummy" > resolvconf/run/add_order
		fi
		rm -f resolv.conf
		ln -snf resolvconf/run/resolv.conf .
		einfo "${ROOT}/etc/resolv.conf is now correctly configured for ${PN}"
	fi
}