Github messages for voidlinux
 help / color / mirror / Atom feed
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 01:47:32 +0200	[thread overview]
Message-ID: <20210715234732.NbH2_8QvHZ2m81_macDFVmwdfBc26sy7NC3A3qN5-cU@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: 7705 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/5] 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/5] 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/5] 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/5] 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/5] 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"

  parent reply	other threads:[~2021-07-15 23:47 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 [this message]
2021-07-16 21:01 ` jirutka
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=20210715234732.NbH2_8QvHZ2m81_macDFVmwdfBc26sy7NC3A3qN5-cU@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).