From: jirutka <jirutka@users.noreply.github.com>
To: ml@inbox.vuxu.org
Subject: Re: [PR PATCH] [Updated] connman: build with --enable-iwd, add build option "nftables", split openconnect plugin, remove runtime dependency on wpa_supplicant
Date: Fri, 16 Jul 2021 23:01:46 +0200 [thread overview]
Message-ID: <20210716210146.6zK9V0TC5nL_BNZoztdAR49gKlkPZYwTob65DYHRbIQ@z> (raw)
In-Reply-To: <gh-mailinglist-notifications-41a7ca26-5023-4802-975b-f1789d68868e-void-packages-31916@inbox.vuxu.org>
[-- Attachment #1: Type: text/plain, Size: 1548 bytes --]
There is an updated pull request by jirutka against master on the void-packages repository
https://github.com/jirutka/void-packages connman-iwd
https://github.com/void-linux/void-packages/pull/31916
connman: build with --enable-iwd, add build option "nftables", split openconnect plugin, remove runtime dependency on wpa_supplicant
1. Build with --enable-iwd
iwd is a better alternative to wpa_supplicant.
1. Add build option "nftables"
Allow to build with support for nftables instead of iptables.
From ./configure --help:
--with-firewall=TYPE specify which firewall type is used iptables or
nftables [default=iptables]
1. Split openconnect plugin into subpackage
OpenConnect VPN is not widely used and it adds many dependencies to the connman package. On my system, removing openconnect orphaned the following packages: openconnect trousers vpnc-scripts libpcsclite mit-krb5-libs with total size over 5 MiB.
1. Remove runtime dependency on wpa_supplicant
ConnMan can be used with iwd or even without any WiFi program, because it can be used for Ethernet devices.
1. Split openvpn and wireguard to subpackages
The main motivation to split openvpn into a subpackage is to correctly declare its dependency on "openvpn" package. Wireguard doesn't seem to depend on any other package, that's just for consistency with other VPN plugins.
A patch file from https://github.com/void-linux/void-packages/pull/31916.patch is attached
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: github-pr-connman-iwd-31916.patch --]
[-- Type: text/x-diff, Size: 9080 bytes --]
From 25575d025c54aa596d3813ae92c4fdf63ae81822 Mon Sep 17 00:00:00 2001
From: Jakub Jirutka <jakub@jirutka.cz>
Date: Mon, 12 Jul 2021 00:28:17 +0200
Subject: [PATCH 1/6] connman: build with --enable-iwd
---
srcpkgs/connman/template | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/srcpkgs/connman/template b/srcpkgs/connman/template
index f133b12d2967..e8cc6cb97afe 100644
--- a/srcpkgs/connman/template
+++ b/srcpkgs/connman/template
@@ -1,12 +1,13 @@
# Template file for 'connman'
pkgname=connman
version=1.40
-revision=1
+revision=2
build_style=gnu-configure
configure_args="--enable-polkit --enable-client --enable-pie --enable-ethernet
--enable-wifi --enable-bluetooth --enable-loopback --enable-nmcompat
--enable-openvpn --with-openvpn=/usr/bin/openvpn --enable-openconnect
- --disable-tools --disable-wispr --with-openconnect=/usr/bin/openconnect"
+ --disable-tools --disable-wispr --with-openconnect=/usr/bin/openconnect
+ --enable-iwd"
hostmakedepends="automake iptables libtool pkg-config wpa_supplicant"
makedepends="gnutls-devel iptables-devel libglib-devel libmnl-devel
openconnect-devel readline-devel"
From cce2a9321dfd9f0e85568542a7ff9cb6b409c4da Mon Sep 17 00:00:00 2001
From: Jakub Jirutka <jakub@jirutka.cz>
Date: Wed, 14 Jul 2021 15:26:52 +0200
Subject: [PATCH 2/6] connman: add build option "nftables"
Allow to build with support for nftables instead of iptables.
From ./configure --help:
--with-firewall=TYPE specify which firewall type is used iptables or
nftables [default=iptables]
---
srcpkgs/connman/template | 10 +++++++---
1 file changed, 7 insertions(+), 3 deletions(-)
diff --git a/srcpkgs/connman/template b/srcpkgs/connman/template
index e8cc6cb97afe..ac4f46833e6f 100644
--- a/srcpkgs/connman/template
+++ b/srcpkgs/connman/template
@@ -7,10 +7,10 @@ configure_args="--enable-polkit --enable-client --enable-pie --enable-ethernet
--enable-wifi --enable-bluetooth --enable-loopback --enable-nmcompat
--enable-openvpn --with-openvpn=/usr/bin/openvpn --enable-openconnect
--disable-tools --disable-wispr --with-openconnect=/usr/bin/openconnect
- --enable-iwd"
+ --enable-iwd --with-firewall=$(vopt_if nftables nftables iptables)"
hostmakedepends="automake iptables libtool pkg-config wpa_supplicant"
-makedepends="gnutls-devel iptables-devel libglib-devel libmnl-devel
- openconnect-devel readline-devel"
+makedepends="gnutls-devel libglib-devel libmnl-devel openconnect-devel
+ readline-devel $(vopt_if nftables libnftnl-devel iptables-devel)"
depends="dbus wpa_supplicant"
short_desc="Open Source CONNection MANager"
maintainer="Orphaned <orphan@voidlinux.org>"
@@ -21,6 +21,10 @@ distfiles="${KERNEL_SITE}/network/${pkgname}/${pkgname}-${version}.tar.xz"
checksum=1a57ae7ce234aa3a1744aac3be5c2121d98dce999440ef8ab9cc4edfd5edcb12
lib32disabled=yes
+# Package build options
+build_options="nftables"
+desc_option_nftables="Build with nftables instead of iptables"
+
pre_configure() {
case "$XBPS_TARGET_MACHINE" in
*-musl)
From 074159108ac06563f1adb91d903f378c7c797719 Mon Sep 17 00:00:00 2001
From: Jakub Jirutka <jakub@jirutka.cz>
Date: Thu, 15 Jul 2021 00:48:53 +0200
Subject: [PATCH 3/6] connman: split openconnect plugin into subpackage
OpenConnect VPN is not widely used and it adds many dependencies to the
connman package. On my system, removing openconnect orphaned the following
packages: openconnect trousers vpnc-scripts libpcsclite mit-krb5-libs
with total size over 5 MiB.
---
srcpkgs/connman-openconnect | 1 +
srcpkgs/connman/template | 8 ++++++++
2 files changed, 9 insertions(+)
create mode 120000 srcpkgs/connman-openconnect
diff --git a/srcpkgs/connman-openconnect b/srcpkgs/connman-openconnect
new file mode 120000
index 000000000000..b57e8c232da5
--- /dev/null
+++ b/srcpkgs/connman-openconnect
@@ -0,0 +1 @@
+connman
\ No newline at end of file
diff --git a/srcpkgs/connman/template b/srcpkgs/connman/template
index ac4f46833e6f..b7ff88c19850 100644
--- a/srcpkgs/connman/template
+++ b/srcpkgs/connman/template
@@ -43,6 +43,14 @@ post_install() {
vinstall ${FILESDIR}/connmand.conf 755 usr/share/dbus-1/system.d/
}
+connman-openconnect_package() {
+ depends="${sourcepkg}>=${version}_${revision}"
+ short_desc+=" - support for OpenConnect VPN"
+ pkg_install() {
+ vmove usr/lib/connman/plugins-vpn/openconnect.so
+ }
+}
+
connman-devel_package() {
depends="dbus-devel libglib-devel"
short_desc+=" - development files"
From ac5b61b72594b20dd01c79876e80499d86a169d4 Mon Sep 17 00:00:00 2001
From: Jakub Jirutka <jakub@jirutka.cz>
Date: Thu, 15 Jul 2021 00:53:11 +0200
Subject: [PATCH 4/6] connman: remove runtime dependency on wpa_supplicant
ConnMan can be used with iwd or even without any WiFi program,
because it can be used for Ethernet devices.
---
srcpkgs/connman/template | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/srcpkgs/connman/template b/srcpkgs/connman/template
index b7ff88c19850..076df7f1f2c1 100644
--- a/srcpkgs/connman/template
+++ b/srcpkgs/connman/template
@@ -11,7 +11,7 @@ configure_args="--enable-polkit --enable-client --enable-pie --enable-ethernet
hostmakedepends="automake iptables libtool pkg-config wpa_supplicant"
makedepends="gnutls-devel libglib-devel libmnl-devel openconnect-devel
readline-devel $(vopt_if nftables libnftnl-devel iptables-devel)"
-depends="dbus wpa_supplicant"
+depends="dbus"
short_desc="Open Source CONNection MANager"
maintainer="Orphaned <orphan@voidlinux.org>"
license="GPL-2.0-only"
From cb7a94f4a5c67d3efc7530df8c9bdfe24669cdd8 Mon Sep 17 00:00:00 2001
From: Jakub Jirutka <jakub@jirutka.cz>
Date: Fri, 16 Jul 2021 01:37:58 +0200
Subject: [PATCH 5/6] connman: split openvpn and wireguard to subpackages
The main motivation to split openvpn into a subpackage is to correctly
declare its dependency on "openvpn" package. Wireguard doesn't seem to
depend on any other package, that's just for consistency with other VPN
plugins.
---
srcpkgs/connman-openvpn | 1 +
srcpkgs/connman-wireguard | 1 +
srcpkgs/connman/template | 19 ++++++++++++++++++-
3 files changed, 20 insertions(+), 1 deletion(-)
create mode 120000 srcpkgs/connman-openvpn
create mode 120000 srcpkgs/connman-wireguard
diff --git a/srcpkgs/connman-openvpn b/srcpkgs/connman-openvpn
new file mode 120000
index 000000000000..b57e8c232da5
--- /dev/null
+++ b/srcpkgs/connman-openvpn
@@ -0,0 +1 @@
+connman
\ No newline at end of file
diff --git a/srcpkgs/connman-wireguard b/srcpkgs/connman-wireguard
new file mode 120000
index 000000000000..b57e8c232da5
--- /dev/null
+++ b/srcpkgs/connman-wireguard
@@ -0,0 +1 @@
+connman
\ No newline at end of file
diff --git a/srcpkgs/connman/template b/srcpkgs/connman/template
index 076df7f1f2c1..3136b8ca68a6 100644
--- a/srcpkgs/connman/template
+++ b/srcpkgs/connman/template
@@ -45,12 +45,29 @@ post_install() {
connman-openconnect_package() {
depends="${sourcepkg}>=${version}_${revision}"
- short_desc+=" - support for OpenConnect VPN"
+ short_desc="OpenConnect VPN plugin for ConnMan"
pkg_install() {
vmove usr/lib/connman/plugins-vpn/openconnect.so
}
}
+connman-openvpn_package() {
+ depends="${sourcepkg}>=${version}_${revision} openvpn"
+ short_desc="OpenVPN plugin for ConnMan"
+ pkg_install() {
+ vmove usr/lib/connman/plugins-vpn/openvpn.so
+ vmove usr/lib/connman/scripts/openvpn-script
+ }
+}
+
+connman-wireguard_package() {
+ depends="${sourcepkg}>=${version}_${revision}"
+ short_desc="WireGuard VPN plugin for ConnMan"
+ pkg_install() {
+ vmove usr/lib/connman/plugins-vpn/wireguard.so
+ }
+}
+
connman-devel_package() {
depends="dbus-devel libglib-devel"
short_desc+=" - development files"
From fdd5a86973b6ec99d58b3b905dcd44845566b857 Mon Sep 17 00:00:00 2001
From: Jakub Jirutka <jakub@jirutka.cz>
Date: Fri, 16 Jul 2021 22:58:00 +0200
Subject: [PATCH 6/6] connman: install main.conf and remove redundant vbin
connmanctl is installed by Makefile
---
srcpkgs/connman/template | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/srcpkgs/connman/template b/srcpkgs/connman/template
index 3136b8ca68a6..66b6634f8329 100644
--- a/srcpkgs/connman/template
+++ b/srcpkgs/connman/template
@@ -8,6 +8,7 @@ configure_args="--enable-polkit --enable-client --enable-pie --enable-ethernet
--enable-openvpn --with-openvpn=/usr/bin/openvpn --enable-openconnect
--disable-tools --disable-wispr --with-openconnect=/usr/bin/openconnect
--enable-iwd --with-firewall=$(vopt_if nftables nftables iptables)"
+conf_files="/etc/connman/*"
hostmakedepends="automake iptables libtool pkg-config wpa_supplicant"
makedepends="gnutls-devel libglib-devel libmnl-devel openconnect-devel
readline-devel $(vopt_if nftables libnftnl-devel iptables-devel)"
@@ -36,11 +37,11 @@ pre_configure() {
esac
autoreconf -fi
}
+
post_install() {
- # Install the client connmanctl.
- vbin client/connmanctl
vsv connmand
vinstall ${FILESDIR}/connmand.conf 755 usr/share/dbus-1/system.d/
+ vinstall src/main.conf 644 etc/connman
}
connman-openconnect_package() {
next prev parent reply other threads:[~2021-07-16 21:01 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-07-11 22:29 [PR PATCH] connman: build with --enable-iwd jirutka
2021-07-12 5:33 ` ericonr
2021-07-12 8:31 ` jirutka
2021-07-14 13:48 ` [PR PATCH] [Updated] " jirutka
2021-07-14 13:49 ` connman: build with --enable-iwd, add build option "nftables" ericonr
2021-07-14 13:52 ` jirutka
2021-07-14 22:59 ` [PR PATCH] [Updated] " jirutka
2021-07-15 23:45 ` [PR PATCH] [Updated] connman: build with --enable-iwd, add build option "nftables", split openconnect plugin, remove runtime dependency on wpa_supplicant jirutka
2021-07-15 23:47 ` jirutka
2021-07-16 21:01 ` jirutka [this message]
2021-07-17 3:11 ` ericonr
2021-07-17 3:25 ` ahesford
2021-07-17 3:32 ` abenson
2022-05-25 2:15 ` github-actions
2022-06-09 2:11 ` [PR PATCH] [Closed]: " github-actions
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20210716210146.6zK9V0TC5nL_BNZoztdAR49gKlkPZYwTob65DYHRbIQ@z \
--to=jirutka@users.noreply.github.com \
--cc=ml@inbox.vuxu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).