Skip to content

Commit

Permalink
net-misc/connman: add 1.43
Browse files Browse the repository at this point in the history
Signed-off-by: Ben Kohler <[email protected]>
  • Loading branch information
benkohler committed Sep 4, 2024
1 parent b2df300 commit f7e5b9c
Show file tree
Hide file tree
Showing 2 changed files with 133 additions and 0 deletions.
1 change: 1 addition & 0 deletions net-misc/connman/Manifest
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
DIST connman-1.42.tar.gz 743965 BLAKE2B 1d9eeb4c917978df502de684128a3464bbc7f3960878842a3ac27295dc5d049641cd5218a9542055b5d9ab2b6114fb773fc8a173f54dca3afe37109ab58bde35 SHA512 98ede28854e5948c8b67c5ba03b156ed9966e9fcda2d39168062873b194a192d12af885c63d9a2cb0b7b5b882b69fdbb0e09c4eb0c6772a76db06de7b9e363d7
DIST connman-1.43.tar.gz 800363 BLAKE2B f7d906df55e89ffe58fe4c684577be94468d24e6934f82f6461c93969743c44c227cc1caa1dc5123ffb8e521385a08bc7e59c733619c39beae34a2e8ca0b495f SHA512 60fef8fb5ac0679068794c84af7eefbc051c4fff12c86a02574d3225e5729ae9ff38d4223f72f03621db9b05624843165fee5692dc12d493676d987b9433174a
132 changes: 132 additions & 0 deletions net-misc/connman/connman-1.43.ebuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,132 @@
# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI="8"
inherit autotools systemd tmpfiles

if [[ ${PV} == *9999* ]]; then
inherit git-r3
EGIT_REPO_URI="https://git.kernel.org/pub/scm/network/connman/connman.git"
else
SRC_URI="https://git.kernel.org/pub/scm/network/connman/connman.git/snapshot/${P}.tar.gz"
KEYWORDS="~amd64 ~arm ~arm64 ~loong ~ppc ~ppc64 ~riscv ~x86"
fi

DESCRIPTION="Provides a daemon for managing internet connections"
HOMEPAGE="https://git.kernel.org/pub/scm/network/connman/connman.git/"

LICENSE="GPL-2"
SLOT="0"

IUSE="bluetooth debug doc +ethernet examples iptables iwd l2tp networkmanager
+nftables ofono openconnect openvpn policykit pptp tools vpnc +wifi wireguard
wispr"

REQUIRED_USE="^^ ( iptables nftables )"
BDEPEND="virtual/pkgconfig"
COMMON_DEPEND=">=dev-libs/glib-2.16
net-libs/gnutls
>=sys-apps/dbus-1.2.24
sys-libs/readline:0=
nftables? (
>=net-libs/libnftnl-1.0.4:0=
>=net-libs/libmnl-1.0.0:0=
)
openconnect? ( net-vpn/openconnect )
openvpn? ( net-vpn/openvpn )
pptp? ( net-dialup/pptpclient )
vpnc? ( net-vpn/vpnc )
wireguard? ( >=net-libs/libmnl-1.0.0:0= )"
RDEPEND="${COMMON_DEPEND}
bluetooth? ( net-wireless/bluez )
iptables? ( >=net-firewall/iptables-1.4.8 )
l2tp? ( net-dialup/xl2tpd )
ofono? ( net-misc/ofono )
policykit? ( sys-auth/polkit )
wifi? (
!iwd? ( >=net-wireless/wpa_supplicant-0.7.3-r3[dbus] )
iwd? ( net-wireless/iwd )
)"
DEPEND="${COMMON_DEPEND}
>=sys-kernel/linux-headers-2.6.39"

PATCHES=( "${FILESDIR}/libresolv-musl-fix.patch" )

if [ ! -z ${COMMIT} ]; then
S=${WORKDIR}/${PN}-${COMMIT}
fi

src_prepare() {
default
eautoreconf

cp "${FILESDIR}"/connman.initd2 "${T}"
if use iwd; then
sed -i \
-e "s/need dbus/need dbus iwd/" \
-e '/start-stop-daemon --start/ s/ -- / -- --wifi=iwd_agent /' \
"${T}"/connman.initd2 || die
sed -i \
-e "/^ExecStart/ s/$/ --wifi=iwd_agent/" \
src/connman.service.in || die
fi
}

src_configure() {
local myeconfargs=(
--localstatedir=/var \
--runstatedir=/run \
--with-systemdunitdir=$(systemd_get_systemunitdir) \
--with-tmpfilesdir="${EPREFIX}"/usr/lib/tmpfiles.d \
--enable-client \
--enable-datafiles \
--enable-loopback=builtin \
$(use_enable bluetooth bluetooth builtin) \
$(use_enable debug) \
$(use_enable ethernet ethernet builtin) \
$(use_enable examples test) \
$(use_enable l2tp l2tp builtin) \
$(use_enable networkmanager nmcompat) \
$(use_enable ofono ofono builtin) \
$(use_enable openconnect openconnect builtin) \
$(use_enable openvpn openvpn builtin) \
$(use_enable policykit polkit builtin) \
$(use_enable pptp pptp builtin) \
$(use_enable tools) \
$(use_enable vpnc vpnc builtin) \
$(use_enable wireguard) \
$(use_enable wispr wispr builtin) \
--with-firewall=$(usex iptables "iptables" "nftables" ) \
--disable-iospm \
--disable-hh2serial-gps
)
# wifi USE logic to match networkmanager ebuild behavior
if use wifi; then
if use iwd; then
myeconfargs+=( --enable-iwd --disable-wifi )
else
myeconfargs+=( --disable-iwd --enable-wifi=builtin )
fi
else
myeconfargs+=( --disable-iwd --disable-wifi )
fi

econf "${myeconfargs[@]}"
}

src_install() {
default
dobin client/connmanctl

if use doc; then
dodoc doc/*.txt
fi
keepdir /usr/lib/${PN}/scripts
keepdir /var/lib/${PN}
newinitd "${T}"/${PN}.initd2 ${PN}
newconfd "${FILESDIR}"/${PN}.confd ${PN}
}

pkg_postinst() {
tmpfiles_process connman_resolvconf.conf
}

0 comments on commit f7e5b9c

Please sign in to comment.