Skip to content

Commit

Permalink
net-misc/dhcpcd: 7.0.7 bump
Browse files Browse the repository at this point in the history
Package-Manager: Portage-2.3.40, Repoman-2.3.9
williamh committed Jul 24, 2018

Verified

This commit was created on GitHub.com and signed with GitHub’s verified signature.
1 parent 5aa04cf commit 9beb27e
Showing 2 changed files with 150 additions and 0 deletions.
1 change: 1 addition & 0 deletions net-misc/dhcpcd/Manifest
Original file line number Diff line number Diff line change
@@ -8,3 +8,4 @@ DIST dhcpcd-7.0.4.tar.xz 209860 BLAKE2B 12c9524d6cd012665479a91f2966ae8123cc38bd
DIST dhcpcd-7.0.5.tar.xz 210088 BLAKE2B bd10e09eb160e09067a3cf0472417a191f05216dbae5e5b65255a6e212fdff099b178a331dc44cf420830d1aaa581629d669f491d4acb099d646a5969d621dee SHA512 b9d5a1c9306ff86544f0a74a0e61f9a78a643087da8cbee2bf09155a745c6815a2078be7f7a400f31f760355eae2177c5760ce4ca55e83cee615a343671d9b41
DIST dhcpcd-7.0.5b.tar.xz 210024 BLAKE2B 38073a761d93b0cc1ece2f5a87791b50d40740796794852dfdba10a7e8e4264e77fa554c1a2e1192430dee791be7856b707889406bdb1e1d508c56187eb61348 SHA512 f2d9a6930a31e169ae63356c06ed7b6d642d03f13c555512a8cbac4e95430a8fdc7e5eecb2fffb795947e4f6a6e7a9db239fa85f12801833e553000a732879f6
DIST dhcpcd-7.0.6.tar.xz 210392 BLAKE2B c343ebfd42cfd0c76d3524cab799d05e3ec0c1735fde1703613a60cd4e3a656d4a1428ed8a84f7d66ef4d39ffb519ab7eabf4d7c765e6dec93386ccf7d84f363 SHA512 5885739e60d6eb4fded117cb87f59a073ae6e8da8454dee56d8e7c5d33778e413e121d28a22163ebf31e4508a21d3a21c1d17ee6d4551081db2ee8e5384d44c9
DIST dhcpcd-7.0.7.tar.xz 210572 BLAKE2B 4ba70c32fe012930928a8c3363c8fe3f655943883ff521fcfb3b5b75950be2e7432ca79e52298a119fc70c1dd8095a28f59d4cabe62da3ad8179c0dc73af0aac SHA512 04c316f7b180bbbf48aa58273d3a28d659824e474d1ce48325f610ed2c5d2a01117f5b65b4a9697f3e8e1b85d4bdcc0b8ab75a928a8cd5723a865d8c0a065269
149 changes: 149 additions & 0 deletions net-misc/dhcpcd/dhcpcd-7.0.7.ebuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,149 @@
# Copyright 1999-2018 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2

EAPI=6

if [[ ${PV} == "9999" ]]; then
EGIT_REPO_URI="https://roy.marples.name/git/dhcpcd.git"
inherit git-r3
else
MY_P="${P/_alpha/-alpha}"
MY_P="${MY_P/_beta/-beta}"
MY_P="${MY_P/_rc/-rc}"
SRC_URI="https://roy.marples.name/downloads/${PN}/${MY_P}.tar.xz"
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux"
S="${WORKDIR}/${MY_P}"
fi

inherit eutils systemd toolchain-funcs

DESCRIPTION="A fully featured, yet light weight RFC2131 compliant DHCP client"
HOMEPAGE="https://roy.marples.name/projects/dhcpcd"
LICENSE="BSD-2"
SLOT="0"
IUSE="elibc_glibc +embedded ipv6 kernel_linux +udev"

COMMON_DEPEND="udev? ( virtual/udev )"
DEPEND="${COMMON_DEPEND}"
RDEPEND="${COMMON_DEPEND}"

src_configure()
{
local dev hooks rundir
use udev || dev="--without-dev --without-udev"
hooks="--with-hook=ntp.conf"
use elibc_glibc && hooks="${hooks} --with-hook=yp.conf"
use kernel_linux && rundir="--rundir=${EPREFIX}/run"
econf \
--prefix="${EPREFIX}" \
--libexecdir="${EPREFIX}/lib/dhcpcd" \
--dbdir="${EPREFIX}/var/lib/dhcpcd" \
--localstatedir="${EPREFIX}/var" \
${rundir} \
$(use_enable embedded) \
$(use_enable ipv6) \
${dev} \
CC="$(tc-getCC)" \
${hooks}
}

src_install()
{
default
keepdir /var/lib/dhcpcd
newinitd "${FILESDIR}"/${PN}.initd ${PN}
systemd_dounit "${FILESDIR}"/${PN}.service
}

pkg_postinst()
{
local dbdir="${EROOT%/}"/var/lib/dhcpcd old_files=

local old_old_duid="${EROOT%/}"/var/lib/dhcpcd/dhcpcd.duid
local old_duid="${EROOT%/}"/etc/dhcpcd.duid
local new_duid="${dbdir}"/duid
if [ -e "${old_old_duid}" ]; then
# Upgrade the duid file to the new format if needed
if ! grep -q '..:..:..:..:..:..' "${old_old_duid}"; then
sed -i -e 's/\(..\)/\1:/g; s/:$//g' "${old_old_duid}"
fi

# Move the duid to /etc, a more sensible location
if [ ! -e "${old_duid}" ]; then
cp -p "${old_old_duid}" "${new_duid}"
fi
old_files="${old_files} ${old_old_duid}"
fi

# dhcpcd-7 moves the files out of /etc
if [ -e "${old_duid}" ]; then
if [ ! -e "${new_duid}" ]; then
cp -p "${old_duid}" "${new_duid}"
fi
old_files="${old_files} ${old_duid}"
fi
local old_secret="${EROOT%/}"/etc/dhcpcd.secret
local new_secret="${dbdir}"/secret
if [ -e "${old_secret}" ]; then
if [ ! -e "${new_secret}" ]; then
cp -p "${old_secret}" "${new_secret}"
fi
old_files="${old_files} ${old_secret}"
fi

# dhcpcd-7 renames some files in /var/lib/dhcpcd
local old_rdm="${dbdir}"/dhcpcd-rdm.monotonic
local new_rdm="${dbdir}"/rdm_monotonic
if [ -e "${old_rdm}" ]; then
if [ ! -e "${new_rdm}" ]; then
cp -p "${old_rdm}" "${new_rdm}"
fi
old_files="${old_files} ${old_rdm}"
fi
local lease=
for lease in "${dbdir}"/dhcpcd-*.lease*; do
[ -f "$lease" ] || continue
old_files="${old_files} ${lease}"
local new_lease=$(basename "$lease" | sed -e "s/dhcpcd-//")
[ -e "${dbdir}/${new_lease}" ] && continue
cp "${lease}" "${dbdir}/${new_lease}"
done

# Warn about removing stale files
if [ -n "${old_files}" ]; then
elog
elog "dhcpcd-7 has copied dhcpcd.duid and dhcpcd.secret from"
elog "${EROOT%/}/etc to ${dbdir}"
elog "and copied leases in ${dbdir} to new files with the dhcpcd-"
elog "prefix dropped."
elog
elog "You should remove these files if you don't plan on reverting"
elog "to an older version:"
local old_file=
for old_file in ${old_files}; do
elog " ${old_file}"
done
fi

if [ -z "$REPLACING_VERSIONS" ]; then
elog
elog "dhcpcd has zeroconf support active by default."
elog "This means it will always obtain an IP address even if no"
elog "DHCP server can be contacted, which will break any existing"
elog "failover support you may have configured in your net configuration."
elog "This behaviour can be controlled with the noipv4ll configuration"
elog "file option or the -L command line switch."
elog "See the dhcpcd and dhcpcd.conf man pages for more details."

elog
elog "Dhcpcd has duid enabled by default, and this may cause issues"
elog "with some dhcp servers. For more information, see"
elog "https://bugs.gentoo.org/show_bug.cgi?id=477356"
fi

if ! has_version net-dns/bind-tools; then
elog
elog "If you activate the lookup-hostname hook to look up your hostname"
elog "using the dns, you need to install net-dns/bind-tools."
fi
}

0 comments on commit 9beb27e

Please sign in to comment.