public inbox for buildroot@busybox.net
 help / color / mirror / Atom feed
* [Buildroot] [PATCH v1 0/1] package/python-ncclient: new package
@ 2026-01-07 18:01 Vincent Jardin via buildroot
  2026-01-07 18:01 ` [Buildroot] [PATCH v1 1/1] " Vincent Jardin via buildroot
  0 siblings, 1 reply; 3+ messages in thread
From: Vincent Jardin via buildroot @ 2026-01-07 18:01 UTC (permalink / raw)
  To: buildroot; +Cc: vjardin

This patch adds python-ncclient, a Python library for NETCONF clients.

CI build verification:
https://gitlab.com/vjardin/buildroot/-/pipelines/2248870132

Vincent Jardin (1):
  package/python-ncclient: new package

 DEVELOPERS                                |  1 +
 package/Config.in                         |  1 +
 package/python-ncclient/Config.in         | 18 ++++++++++++++++++
 package/python-ncclient/python-ncclient.hash |  3 +++
 package/python-ncclient/python-ncclient.mk   | 12 ++++++++++++
 5 files changed, 35 insertions(+)

-- 
2.43.0

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 3+ messages in thread

* [Buildroot] [PATCH v1 1/1] package/python-ncclient: new package
  2026-01-07 18:01 [Buildroot] [PATCH v1 0/1] package/python-ncclient: new package Vincent Jardin via buildroot
@ 2026-01-07 18:01 ` Vincent Jardin via buildroot
  2026-01-07 22:47   ` Thomas Petazzoni via buildroot
  0 siblings, 1 reply; 3+ messages in thread
From: Vincent Jardin via buildroot @ 2026-01-07 18:01 UTC (permalink / raw)
  To: buildroot; +Cc: vjardin

This package provides Python bindings for NETCONF clients. It
facilitates client-side scripting and application development
around NETCONF protocol for network device configuration.

Signed-off-by: Vincent Jardin <vjardin@free.fr>
---
 DEVELOPERS                                   |  1 +
 package/Config.in                            |  1 +
 package/python-ncclient/Config.in            | 16 +++++++++++++++
 package/python-ncclient/python-ncclient.hash |  5 +++++
 package/python-ncclient/python-ncclient.mk   | 21 ++++++++++++++++++++
 5 files changed, 44 insertions(+)
 create mode 100644 package/python-ncclient/Config.in
 create mode 100644 package/python-ncclient/python-ncclient.hash
 create mode 100644 package/python-ncclient/python-ncclient.mk

diff --git a/DEVELOPERS b/DEVELOPERS
index f982e3123a..4185cbb57c 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -3359,6 +3359,7 @@ F:	package/bfscripts/
 F:	package/dpdk/
 F:	package/libecoli/
 F:	package/libyang-cpp/
+F:	package/python-ncclient/
 F:	package/sysrepo-cpp/
 
 N:	Vincent Prince <vincent.prince.fr@gmail.com>
diff --git a/package/Config.in b/package/Config.in
index def3db0e50..141e0e07d8 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -1247,6 +1247,7 @@ menu "External python modules"
 	source "package/python-mwscrape2slob/Config.in"
 	source "package/python-mypy/Config.in"
 	source "package/python-mypy-extensions/Config.in"
+	source "package/python-ncclient/Config.in"
 	source "package/python-nested-dict/Config.in"
 	source "package/python-netaddr/Config.in"
 	source "package/python-netifaces/Config.in"
diff --git a/package/python-ncclient/Config.in b/package/python-ncclient/Config.in
new file mode 100644
index 0000000000..2be69efb2b
--- /dev/null
+++ b/package/python-ncclient/Config.in
@@ -0,0 +1,16 @@
+config BR2_PACKAGE_PYTHON_NCCLIENT
+	bool "python-ncclient"
+	depends on BR2_PACKAGE_PYTHON3
+	depends on BR2_PACKAGE_HOST_RUSTC_TARGET_ARCH_SUPPORTS # python-paramiko
+	select BR2_PACKAGE_PYTHON_LXML
+	select BR2_PACKAGE_PYTHON_PARAMIKO
+	select BR2_PACKAGE_PYTHON_SIX
+	help
+	  ncclient is a Python library for NETCONF clients. It
+	  facilitates client-side scripting and application
+	  development around NETCONF.
+
+	  https://github.com/ncclient/ncclient
+
+comment "python-ncclient needs python3 and host Rust (for paramiko)"
+	depends on !BR2_PACKAGE_PYTHON3 || !BR2_PACKAGE_HOST_RUSTC_TARGET_ARCH_SUPPORTS
diff --git a/package/python-ncclient/python-ncclient.hash b/package/python-ncclient/python-ncclient.hash
new file mode 100644
index 0000000000..e3a46c8175
--- /dev/null
+++ b/package/python-ncclient/python-ncclient.hash
@@ -0,0 +1,5 @@
+# From https://pypi.org/pypi/ncclient/0.7.0/json
+sha256  318e8e3e72b1d2a766f3665cabef33436fd25b607da5f15657a199c648a68435  ncclient-0.7.0.tar.gz
+
+# Locally computed
+sha256  cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30  LICENSE
diff --git a/package/python-ncclient/python-ncclient.mk b/package/python-ncclient/python-ncclient.mk
new file mode 100644
index 0000000000..ca1b23e441
--- /dev/null
+++ b/package/python-ncclient/python-ncclient.mk
@@ -0,0 +1,21 @@
+################################################################################
+#
+# python-ncclient
+#
+################################################################################
+
+PYTHON_NCCLIENT_VERSION = 0.7.0
+PYTHON_NCCLIENT_SOURCE = ncclient-$(PYTHON_NCCLIENT_VERSION).tar.gz
+PYTHON_NCCLIENT_SITE = https://files.pythonhosted.org/packages/source/n/ncclient
+
+PYTHON_NCCLIENT_LICENSE = Apache-2.0
+PYTHON_NCCLIENT_LICENSE_FILES = LICENSE
+
+PYTHON_NCCLIENT_SETUP_TYPE = setuptools
+
+PYTHON_NCCLIENT_DEPENDENCIES = \
+	python-lxml \
+	python-paramiko \
+	python-six
+
+$(eval $(python-package))
-- 
2.43.0

_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [Buildroot] [PATCH v1 1/1] package/python-ncclient: new package
  2026-01-07 18:01 ` [Buildroot] [PATCH v1 1/1] " Vincent Jardin via buildroot
@ 2026-01-07 22:47   ` Thomas Petazzoni via buildroot
  0 siblings, 0 replies; 3+ messages in thread
From: Thomas Petazzoni via buildroot @ 2026-01-07 22:47 UTC (permalink / raw)
  To: Vincent Jardin via buildroot; +Cc: Vincent Jardin

Hello Vincent,

On Wed,  7 Jan 2026 19:01:08 +0100
Vincent Jardin via buildroot <buildroot@buildroot.org> wrote:

> diff --git a/package/python-ncclient/Config.in b/package/python-ncclient/Config.in
> new file mode 100644
> index 0000000000..2be69efb2b
> --- /dev/null
> +++ b/package/python-ncclient/Config.in
> @@ -0,0 +1,16 @@
> +config BR2_PACKAGE_PYTHON_NCCLIENT
> +	bool "python-ncclient"
> +	depends on BR2_PACKAGE_PYTHON3

Not needed.

> +	depends on BR2_PACKAGE_HOST_RUSTC_TARGET_ARCH_SUPPORTS # python-paramiko
> +	select BR2_PACKAGE_PYTHON_LXML
> +	select BR2_PACKAGE_PYTHON_PARAMIKO
> +	select BR2_PACKAGE_PYTHON_SIX
> +	help
> +	  ncclient is a Python library for NETCONF clients. It
> +	  facilitates client-side scripting and application
> +	  development around NETCONF.
> +
> +	  https://github.com/ncclient/ncclient
> +
> +comment "python-ncclient needs python3 and host Rust (for paramiko)"
> +	depends on !BR2_PACKAGE_PYTHON3 || !BR2_PACKAGE_HOST_RUSTC_TARGET_ARCH_SUPPORTS

Not needed. BR2_PACKAGE_HOST_RUSTC_TARGET_ARCH_SUPPORTS is an
architecture dependency, so we don't write a comment about it, since
there's nothing the user can do about it.

> diff --git a/package/python-ncclient/python-ncclient.mk b/package/python-ncclient/python-ncclient.mk
> new file mode 100644
> index 0000000000..ca1b23e441
> --- /dev/null
> +++ b/package/python-ncclient/python-ncclient.mk
> @@ -0,0 +1,21 @@
> +################################################################################
> +#
> +# python-ncclient
> +#
> +################################################################################
> +
> +PYTHON_NCCLIENT_VERSION = 0.7.0
> +PYTHON_NCCLIENT_SOURCE = ncclient-$(PYTHON_NCCLIENT_VERSION).tar.gz
> +PYTHON_NCCLIENT_SITE = https://files.pythonhosted.org/packages/source/n/ncclient
> +
> +PYTHON_NCCLIENT_LICENSE = Apache-2.0
> +PYTHON_NCCLIENT_LICENSE_FILES = LICENSE
> +
> +PYTHON_NCCLIENT_SETUP_TYPE = setuptools
> +
> +PYTHON_NCCLIENT_DEPENDENCIES = \
> +	python-lxml \
> +	python-paramiko \
> +	python-six

Are you sure these are build-time dependencies? Most of the time Python
modules are only run-time dependencies.

And as asked for some other patches, a test case in support/testing/
would be nice.

Thanks!

Thomas
-- 
Thomas Petazzoni, co-owner and CEO, Bootlin
Embedded Linux and Kernel engineering and training
https://bootlin.com
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2026-01-07 22:47 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-01-07 18:01 [Buildroot] [PATCH v1 0/1] package/python-ncclient: new package Vincent Jardin via buildroot
2026-01-07 18:01 ` [Buildroot] [PATCH v1 1/1] " Vincent Jardin via buildroot
2026-01-07 22:47   ` Thomas Petazzoni via buildroot

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox