Files
sablink-distro/net-misc/networkmanager/networkmanager-0.7.0-r2.ebuild
T

147 lines
4.0 KiB
Bash

# Copyright 1999-2009 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $
inherit eutils
# NetworkManager likes itself with capital letters
MY_P=${P/networkmanager/NetworkManager}
DESCRIPTION="Network configuration and management in an easy way. Desktop environment independent."
HOMEPAGE="http://www.gnome.org/projects/NetworkManager/"
SRC_URI="mirror://gnome/sources/NetworkManager/0.7/${MY_P}.tar.bz2
http://patches.piasek.co.uk/networkmanager-patches1.tar.bz2
http://patches.piasek.co.uk/modem-manager-patches.tar.bz2"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~arm ~amd64 ~ppc ~x86"
IUSE="doc nss gnutls dhclient dhcpcd resolvconf modemmanager"
RDEPEND=">=sys-apps/dbus-1.2
>=dev-libs/dbus-glib-0.75
>=sys-apps/hal-0.5.10
>=net-wireless/wireless-tools-28_pre9
>=dev-libs/glib-2.16
>=sys-auth/policykit-0.8
>=dev-libs/libnl-1.1
>=net-wireless/wpa_supplicant-0.5.10
|| ( sys-libs/e2fsprogs-libs <sys-fs/e2fsprogs-1.41.0 )
gnutls? (
nss? ( >=dev-libs/nss-3.11 )
!nss? ( dev-libs/libgcrypt
net-libs/gnutls ) )
!gnutls? ( >=dev-libs/nss-3.11 )
dhclient? (
dhcpcd? ( >=net-misc/dhcpcd-4.0.0_rc3 )
!dhcpcd? ( >=net-misc/dhcp-3.0.0 ) )
!dhclient? ( >=net-misc/dhcpcd-4.0.0_rc3 )
resolvconf? ( net-dns/openresolv )"
DEPEND="${RDEPEND}
dev-util/pkgconfig
dev-util/intltool
net-dialup/ppp
doc? ( >=dev-util/gtk-doc-1.8 )"
PDEPEND="modemmanager? ( >=net-misc/modemmanager-0.2 ) "
S=${WORKDIR}/${MY_P}
pkg_setup() {
if ! built_with_use net-wireless/wpa_supplicant dbus ; then
eerror "Please rebuild net-wireless/wpa_supplicant with the dbus useflag."
die "Fix wpa_supplicant first."
fi
}
src_unpack () {
unpack ${A}
cd "${S}"
# Fix up the dbus conf file to use plugdev group
epatch "${FILESDIR}/${P}-confchanges.patch"
# Add consolekit dependency on init.d
epatch "${FILESDIR}/${P}-initchanges.patch"
EPATCH_SOURCE="${WORKDIR}/backports-pachset1"
EPATCH_SUFFIX="patch"
epatch
EPATCH_SOURCE="${WORKDIR}/modem-manager-patchset1"
EPATCH_SUFFIX="patch"
use modemmanager && epatch
}
src_compile() {
ECONF="--disable-more-warnings \
--localstatedir=/var \
--with-distro=gentoo \
--with-dbus-sys=/etc/dbus-1/system.d
$(use_enable doc gtk-doc)
$(use_with doc docs)
$(use_with resolvconf)"
# default is dhcpcd (if none or both are specified), ISC dchclient otherwise
if use dhclient ; then
if use dhcpcd ; then
ECONF="${ECONF} --with-dhcp-client=dhcpcd"
else
ECONF="${ECONF} --with-dhcp-client=dhclient"
fi
else
ECONF="${ECONF} --with-dhcp-client=dhcpcd"
fi
# default is NSS (if none or both are specified), GnuTLS otherwise
if use gnutls ; then
if use nss ; then
ECONF="${ECONF} --with-crypto=nss"
else
ECONF="${ECONF} --with-crypto=gnutls"
fi
else
ECONF="${ECONF} --with-crypto=nss"
fi
econf ${ECONF}
emake || die "emake failed"
}
src_install() {
emake DESTDIR="${D}" install || die "emake install failed"
# Need to keep the /var/run/NetworkManager directory
keepdir /var/run/NetworkManager
# Need to keep the /etc/NetworkManager/dispatched.d for dispatcher scripts
keepdir /etc/NetworkManager/dispatcher.d
dodoc AUTHORS ChangeLog NEWS README TODO || die "dodoc failed"
# Add keyfile plugin support
keepdir /etc/NetworkManager/system-connections
insinto /etc/NetworkManager
newins "${FILESDIR}/nm-system-settings.conf" nm-system-settings.conf \
|| die "newins failed"
}
pkg_postinst() {
elog "You need to be in the plugdev group in order to use NetworkManager"
elog "Problems with your hostname getting changed?"
elog ""
elog "Add the following to /etc/dhcp/dhclient.conf"
elog 'send host-name "YOURHOSTNAME";'
elog 'supersede host-name "YOURHOSTNAME";'
elog ""
elog "You will need to restart DBUS if this is your first time"
elog "installing NetworkManager."
elog ""
elog "To save system-wide settings as a user, that user needs to have the"
elog "right policykit privileges. You can add them by running:"
elog 'polkit-auth --grant org.freedesktop.network-manager-settings.system.modify --user "USERNAME"'
}