* [Buildroot] [PATCH v5] package/networkd-dispatcher: new package
@ 2022-01-10 18:51 Michael Nosthoff via buildroot
2022-01-12 20:24 ` Arnout Vandecappelle
0 siblings, 1 reply; 2+ messages in thread
From: Michael Nosthoff via buildroot @ 2022-01-10 18:51 UTC (permalink / raw)
To: buildroot; +Cc: Michael Nosthoff via buildroot, Thomas Petazzoni
From: Michael Nosthoff via buildroot <buildroot@busybox.net>
Networkd-dispatcher is a dispatcher daemon for systemd-networkd
connection status changes. This daemon is similar to
NetworkManager-dispatcher, but is much more limited in the types of
events it supports due to the limited nature of systemd-networkd.
Signed-off-by: Michael Nosthoff <buildroot@heine.tech>
---
Changes v1 -> v2
- add .hash file
- use tabs for DEVELOPERS indentation
v2 -> v3
- bump version to 2.1 (fixes an issue with systemd 246)
- resolve merge conflict in DEVELOPERS
v3 -> v4
- adjust to changed dependencies of python-gobject
- removed dependencies already covered by depends on BR2_PACKAGE_DBUS
- sorted dependencies
- resolve merge conflict in DEVELOPERS
v4 -> v5
- update dependencies of gobject-introspection
---
DEVELOPERS | 1 +
package/Config.in | 1 +
package/networkd-dispatcher/Config.in | 21 ++++++++++++++++
.../networkd-dispatcher.hash | 3 +++
.../networkd-dispatcher.mk | 25 +++++++++++++++++++
5 files changed, 51 insertions(+)
create mode 100644 package/networkd-dispatcher/Config.in
create mode 100644 package/networkd-dispatcher/networkd-dispatcher.hash
create mode 100644 package/networkd-dispatcher/networkd-dispatcher.mk
diff --git a/DEVELOPERS b/DEVELOPERS
index 12777e8d61..4b65d219c9 100644
--- a/DEVELOPERS
+++ b/DEVELOPERS
@@ -1991,6 +1991,7 @@ N: Michael Nosthoff <buildroot@heine.tech>
F: package/grpc/
F: package/gtest/
F: package/libabseil-cpp/
+F: package/networkd-dispatcher/
F: package/protobuf/
F: package/re2/
diff --git a/package/Config.in b/package/Config.in
index 3a2ad30df9..23264afd9d 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -2294,6 +2294,7 @@ endif
source "package/netstat-nat/Config.in"
source "package/network-manager/Config.in"
source "package/network-manager-openvpn/Config.in"
+ source "package/networkd-dispatcher/Config.in"
source "package/nfacct/Config.in"
source "package/nftables/Config.in"
source "package/nginx/Config.in"
diff --git a/package/networkd-dispatcher/Config.in b/package/networkd-dispatcher/Config.in
new file mode 100644
index 0000000000..1dfa12ba45
--- /dev/null
+++ b/package/networkd-dispatcher/Config.in
@@ -0,0 +1,21 @@
+config BR2_PACKAGE_NETWORKD_DISPATCHER
+ bool "networkd-dispatcher"
+ depends on BR2_USE_WCHAR # dbus-python -> glib2
+ depends on BR2_PACKAGE_GOBJECT_INTROSPECTION_ARCH_SUPPORTS # python-gobject -> gobject-introspection
+ depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # python-gobject -> gobject-introspection
+ depends on BR2_TOOLCHAIN_HAS_THREADS # dbus-python -> glib2
+ depends on BR2_HOST_GCC_AT_LEAST_8 # python-gobject -> gobject-introspection -> host-qemu
+ depends on BR2_TOOLCHAIN_USES_GLIBC # python-gobject -> gobject-introspection
+ depends on BR2_PACKAGE_DBUS # dbus-python
+ depends on BR2_PACKAGE_PYTHON3 # runtime, python-gobject
+ depends on BR2_PACKAGE_SYSTEMD_NETWORKD # runtime
+ select BR2_PACKAGE_DBUS_PYTHON
+ select BR2_PACKAGE_PYTHON_GOBJECT
+ help
+ Networkd-dispatcher is a dispatcher daemon for
+ systemd-networkd connection status changes.
+ This daemon is similar to NetworkManager-dispatcher,
+ but is much more limited in the types of events it
+ supports due to the limited nature of systemd-networkd.
+
+ https://gitlab.com/craftyguy/networkd-dispatcher
diff --git a/package/networkd-dispatcher/networkd-dispatcher.hash b/package/networkd-dispatcher/networkd-dispatcher.hash
new file mode 100644
index 0000000000..ca7c300783
--- /dev/null
+++ b/package/networkd-dispatcher/networkd-dispatcher.hash
@@ -0,0 +1,3 @@
+# locally computed
+sha256 1682c0106d9d2879087612e76aebb87672ebf339c43f229a3ee27dadb428575b networkd-dispatcher-2.1.tar.bz2
+sha256 589ed823e9a84c56feb95ac58e7cf384626b9cbf4fda2a907bc36e103de1bad2 LICENSE
diff --git a/package/networkd-dispatcher/networkd-dispatcher.mk b/package/networkd-dispatcher/networkd-dispatcher.mk
new file mode 100644
index 0000000000..4f609db73a
--- /dev/null
+++ b/package/networkd-dispatcher/networkd-dispatcher.mk
@@ -0,0 +1,25 @@
+################################################################################
+#
+# networkd-dispatcher
+#
+################################################################################
+
+NETWORKD_DISPATCHER_VERSION = 2.1
+NETWORKD_DISPATCHER_SOURCE = networkd-dispatcher-$(NETWORKD_DISPATCHER_VERSION).tar.bz2
+NETWORKD_DISPATCHER_SITE = https://gitlab.com/craftyguy/networkd-dispatcher/-/archive/$(NETWORKD_DISPATCHER_VERSION)
+NETWORKD_DISPATCHER_LICENSE = GPL-3.0
+NETWORKD_DISPATCHER_LICENSE_FILES = LICENSE
+
+define NETWORKD_DISPATCHER_INSTALL_TARGET_CMDS
+ $(INSTALL) -D -m 0755 $(@D)/networkd-dispatcher $(TARGET_DIR)/usr/bin/networkd-dispatcher
+ mkdir -p $(TARGET_DIR)/etc/networkd-dispatcher/{routable,dormant,no-carrier,off,carrier,degraded,configuring,configured}.d
+endef
+
+define NETWORKD_DISPATCHER_INSTALL_INIT_SYSTEMD
+ $(INSTALL) -D -m 0644 $(@D)/networkd-dispatcher.service \
+ $(TARGET_DIR)/usr/lib/systemd/system/networkd-dispatcher.service
+ $(INSTALL) -D -m 0644 $(@D)/networkd-dispatcher.conf \
+ $(TARGET_DIR)/etc/conf.d/networkd-dispatcher.conf
+endef
+
+$(eval $(generic-package))
--
2.25.1
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply related [flat|nested] 2+ messages in thread
* Re: [Buildroot] [PATCH v5] package/networkd-dispatcher: new package
2022-01-10 18:51 [Buildroot] [PATCH v5] package/networkd-dispatcher: new package Michael Nosthoff via buildroot
@ 2022-01-12 20:24 ` Arnout Vandecappelle
0 siblings, 0 replies; 2+ messages in thread
From: Arnout Vandecappelle @ 2022-01-12 20:24 UTC (permalink / raw)
To: Michael Nosthoff, buildroot
Cc: Michael Nosthoff via buildroot, Thomas Petazzoni
On 10/01/2022 19:51, Michael Nosthoff via buildroot wrote:
> From: Michael Nosthoff via buildroot <buildroot@busybox.net>
>
> Networkd-dispatcher is a dispatcher daemon for systemd-networkd
> connection status changes. This daemon is similar to
> NetworkManager-dispatcher, but is much more limited in the types of
> events it supports due to the limited nature of systemd-networkd.
>
> Signed-off-by: Michael Nosthoff <buildroot@heine.tech>
Applied to master, thanks.
I reworked the Config.in quite a lot, it's a complicated one!
[snip]
> diff --git a/package/networkd-dispatcher/Config.in b/package/networkd-dispatcher/Config.in
> new file mode 100644
> index 0000000000..1dfa12ba45
> --- /dev/null
> +++ b/package/networkd-dispatcher/Config.in
> @@ -0,0 +1,21 @@
> +config BR2_PACKAGE_NETWORKD_DISPATCHER
> + bool "networkd-dispatcher"
> + depends on BR2_USE_WCHAR # dbus-python -> glib2
> + depends on BR2_PACKAGE_GOBJECT_INTROSPECTION_ARCH_SUPPORTS # python-gobject -> gobject-introspection
> + depends on BR2_TOOLCHAIN_GCC_AT_LEAST_4_9 # python-gobject -> gobject-introspection
> + depends on BR2_TOOLCHAIN_HAS_THREADS # dbus-python -> glib2
> + depends on BR2_HOST_GCC_AT_LEAST_8 # python-gobject -> gobject-introspection -> host-qemu
> + depends on BR2_TOOLCHAIN_USES_GLIBC # python-gobject -> gobject-introspection
> + depends on BR2_PACKAGE_DBUS # dbus-python
dbus-python depends on dbus instead of selecting it because it's a suboption
of dbus (though actually implemented in a separate package, which is not really
relevant for the user). So here we should instead select dbus.
> + depends on BR2_PACKAGE_PYTHON3 # runtime, python-gobject
Since this is not a python package, but just a tool that happens to be
implemented in python, python3 should be selected instead of depended upon.
> + depends on BR2_PACKAGE_SYSTEMD_NETWORKD # runtime
> + select BR2_PACKAGE_DBUS_PYTHON
> + select BR2_PACKAGE_PYTHON_GOBJECT
> + help
> + Networkd-dispatcher is a dispatcher daemon for
> + systemd-networkd connection status changes.
> + This daemon is similar to NetworkManager-dispatcher,
> + but is much more limited in the types of events it
> + supports due to the limited nature of systemd-networkd.
> +
> + https://gitlab.com/craftyguy/networkd-dispatcher
There should be a comment for the dependencies. Because it become quite
complicated, I removed all the dependencies that are implicit from glibc.
Regards,
Arnout
> diff --git a/package/networkd-dispatcher/networkd-dispatcher.hash b/package/networkd-dispatcher/networkd-dispatcher.hash
> new file mode 100644
> index 0000000000..ca7c300783
> --- /dev/null
> +++ b/package/networkd-dispatcher/networkd-dispatcher.hash
> @@ -0,0 +1,3 @@
> +# locally computed
> +sha256 1682c0106d9d2879087612e76aebb87672ebf339c43f229a3ee27dadb428575b networkd-dispatcher-2.1.tar.bz2
> +sha256 589ed823e9a84c56feb95ac58e7cf384626b9cbf4fda2a907bc36e103de1bad2 LICENSE
> diff --git a/package/networkd-dispatcher/networkd-dispatcher.mk b/package/networkd-dispatcher/networkd-dispatcher.mk
> new file mode 100644
> index 0000000000..4f609db73a
> --- /dev/null
> +++ b/package/networkd-dispatcher/networkd-dispatcher.mk
> @@ -0,0 +1,25 @@
> +################################################################################
> +#
> +# networkd-dispatcher
> +#
> +################################################################################
> +
> +NETWORKD_DISPATCHER_VERSION = 2.1
> +NETWORKD_DISPATCHER_SOURCE = networkd-dispatcher-$(NETWORKD_DISPATCHER_VERSION).tar.bz2
> +NETWORKD_DISPATCHER_SITE = https://gitlab.com/craftyguy/networkd-dispatcher/-/archive/$(NETWORKD_DISPATCHER_VERSION)
> +NETWORKD_DISPATCHER_LICENSE = GPL-3.0
> +NETWORKD_DISPATCHER_LICENSE_FILES = LICENSE
> +
> +define NETWORKD_DISPATCHER_INSTALL_TARGET_CMDS
> + $(INSTALL) -D -m 0755 $(@D)/networkd-dispatcher $(TARGET_DIR)/usr/bin/networkd-dispatcher
> + mkdir -p $(TARGET_DIR)/etc/networkd-dispatcher/{routable,dormant,no-carrier,off,carrier,degraded,configuring,configured}.d
> +endef
> +
> +define NETWORKD_DISPATCHER_INSTALL_INIT_SYSTEMD
> + $(INSTALL) -D -m 0644 $(@D)/networkd-dispatcher.service \
> + $(TARGET_DIR)/usr/lib/systemd/system/networkd-dispatcher.service
> + $(INSTALL) -D -m 0644 $(@D)/networkd-dispatcher.conf \
> + $(TARGET_DIR)/etc/conf.d/networkd-dispatcher.conf
> +endef
> +
> +$(eval $(generic-package))
>
_______________________________________________
buildroot mailing list
buildroot@buildroot.org
https://lists.buildroot.org/mailman/listinfo/buildroot
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2022-01-12 20:24 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-01-10 18:51 [Buildroot] [PATCH v5] package/networkd-dispatcher: new package Michael Nosthoff via buildroot
2022-01-12 20:24 ` Arnout Vandecappelle
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox