* [Buildroot] [PATCH v4 1/2] package/iwd: add basic configuration file
@ 2020-06-16 6:34 Peter Seiderer
2020-06-16 6:34 ` [Buildroot] [PATCH v4 2/2] package/iwd: add sysv init script Peter Seiderer
2020-06-17 19:59 ` [Buildroot] [PATCH v4 1/2] package/iwd: add basic configuration file Thomas Petazzoni
0 siblings, 2 replies; 4+ messages in thread
From: Peter Seiderer @ 2020-06-16 6:34 UTC (permalink / raw)
To: buildroot
Add basic /etc/iwd/main.conf configuration file to enable
network configuration (use built-in dhcp client).
For the non systemd-resolved case select the openresolv package
to fulfill the iwd resolvconf requirement (and adjust the
configuration file accordingly).
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
---
Changes v1 -> v2:
- use printf insteadof echo (Yann E. MORIN)
Changes v2 -> v3:
- select openresolv in all cases but systemd-resloved is enabled
- enable NameResolvingService=systemd in the configuration file only in
case of systemd-resloved is enabled, enable NameResolvingService=resolvconf
in the configuration file otherwise
Changes v3 -> v4:
- cleanup echo/print vs. printf mess (Baruch Siach)
---
package/iwd/Config.in | 1 +
package/iwd/iwd.mk | 21 +++++++++++++++++++++
package/iwd/main.conf | 3 +++
3 files changed, 25 insertions(+)
create mode 100644 package/iwd/main.conf
diff --git a/package/iwd/Config.in b/package/iwd/Config.in
index ec53d13047..4e85fb4fd7 100644
--- a/package/iwd/Config.in
+++ b/package/iwd/Config.in
@@ -8,6 +8,7 @@ config BR2_PACKAGE_IWD
depends on BR2_USE_WCHAR # ell
select BR2_PACKAGE_DBUS # runtime
select BR2_PACKAGE_ELL
+ select BR2_PACKAGE_OPENRESOLV if !BR2_PACKAGE_SYSTEMD_RESOLVED
help
iNet Wireless daemon (iwd)
diff --git a/package/iwd/iwd.mk b/package/iwd/iwd.mk
index 32ff175933..6e4044379d 100644
--- a/package/iwd/iwd.mk
+++ b/package/iwd/iwd.mk
@@ -46,4 +46,25 @@ else
IWD_CONF_OPTS += --disable-systemd-service
endif
+define IWD_INSTALL_CONFIG_FILE
+ mkdir -p $(TARGET_DIR)/etc/iwd
+ $(INSTALL) -m 644 package/iwd/main.conf $(TARGET_DIR)/etc/iwd/main.conf
+endef
+
+ifeq ($(BR2_PACKAGE_SYSTEMD_RESOLVED),y)
+define IWD_CONFIG_FILE_NAME_RESOLV_SERVICE
+ printf "[Network]\nNameResolvingService=systemd\n" \
+ >> $(TARGET_DIR)/etc/iwd/main.conf
+endef
+else
+define IWD_CONFIG_FILE_NAME_RESOLV_SERVICE
+ printf "[Network]\nNameResolvingService=resolvconf\n" \
+ >> $(TARGET_DIR)/etc/iwd/main.conf
+endef
+endif
+
+IWD_POST_INSTALL_TARGET_HOOKS += \
+ IWD_INSTALL_CONFIG_FILE \
+ IWD_CONFIG_FILE_NAME_RESOLV_SERVICE
+
$(eval $(autotools-package))
diff --git a/package/iwd/main.conf b/package/iwd/main.conf
new file mode 100644
index 0000000000..c26a50d302
--- /dev/null
+++ b/package/iwd/main.conf
@@ -0,0 +1,3 @@
+# use built-in dhcp client
+[General]
+EnableNetworkConfiguration=true
--
2.27.0
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [Buildroot] [PATCH v4 2/2] package/iwd: add sysv init script
2020-06-16 6:34 [Buildroot] [PATCH v4 1/2] package/iwd: add basic configuration file Peter Seiderer
@ 2020-06-16 6:34 ` Peter Seiderer
2020-06-17 19:59 ` Thomas Petazzoni
2020-06-17 19:59 ` [Buildroot] [PATCH v4 1/2] package/iwd: add basic configuration file Thomas Petazzoni
1 sibling, 1 reply; 4+ messages in thread
From: Peter Seiderer @ 2020-06-16 6:34 UTC (permalink / raw)
To: buildroot
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
---
Changes v1 -> v2:
- use start-stop-daemon (Yann E. MORIN)
Changes v2 -> v3:
- no changes
Changes v3 -> v4:
- no changes
---
package/iwd/S40iwd | 42 ++++++++++++++++++++++++++++++++++++++++++
package/iwd/iwd.mk | 7 +++++++
2 files changed, 49 insertions(+)
create mode 100644 package/iwd/S40iwd
diff --git a/package/iwd/S40iwd b/package/iwd/S40iwd
new file mode 100644
index 0000000000..6714ca9956
--- /dev/null
+++ b/package/iwd/S40iwd
@@ -0,0 +1,42 @@
+#!/bin/sh
+
+DAEMON="/usr/libexec/iwd"
+PIDFILE="/var/run/iwd.pid"
+
+IWD_ARGS=""
+
+[ -r "/etc/default/iwd" ] && . "/etc/default/iwd"
+
+start() {
+ printf "Starting iwd:"
+ mkdir -p /tmp/iwd/hotspot
+ start-stop-daemon -b -m -S -q -p "$PIDFILE" -x "$DAEMON" \
+ -- $IWD_ARGS
+ status=$?
+ if [ "$status" -eq 0 ]; then
+ echo "OK"
+ else
+ echo "FAIL"
+ fi
+ return "$status"
+}
+
+stop() {
+ printf "Stopping iwd:"
+ start-stop-daemon -K -q -p "$PIDFILE"
+ status=$?
+ if [ "$status" -eq 0 ]; then
+ echo "OK"
+ else
+ echo "FAIL"
+ fi
+ return "$status"
+}
+
+case "$1" in
+ start|stop)
+ "$1";;
+ *)
+ echo "Usage: $0 {start|stop}"
+ exit 1
+esac
diff --git a/package/iwd/iwd.mk b/package/iwd/iwd.mk
index 6e4044379d..6b917870ef 100644
--- a/package/iwd/iwd.mk
+++ b/package/iwd/iwd.mk
@@ -67,4 +67,11 @@ IWD_POST_INSTALL_TARGET_HOOKS += \
IWD_INSTALL_CONFIG_FILE \
IWD_CONFIG_FILE_NAME_RESOLV_SERVICE
+define IWD_INSTALL_INIT_SYSV
+ $(INSTALL) -m 0755 -D package/iwd/S40iwd \
+ $(TARGET_DIR)/etc/init.d/S40iwd
+ mkdir -p $(TARGET_DIR)/var/lib/iwd
+ ln -sf /tmp/iwd/hotspot $(TARGET_DIR)/var/lib/iwd/hotspot
+endef
+
$(eval $(autotools-package))
--
2.27.0
^ permalink raw reply related [flat|nested] 4+ messages in thread
* [Buildroot] [PATCH v4 1/2] package/iwd: add basic configuration file
2020-06-16 6:34 [Buildroot] [PATCH v4 1/2] package/iwd: add basic configuration file Peter Seiderer
2020-06-16 6:34 ` [Buildroot] [PATCH v4 2/2] package/iwd: add sysv init script Peter Seiderer
@ 2020-06-17 19:59 ` Thomas Petazzoni
1 sibling, 0 replies; 4+ messages in thread
From: Thomas Petazzoni @ 2020-06-17 19:59 UTC (permalink / raw)
To: buildroot
On Tue, 16 Jun 2020 08:34:30 +0200
Peter Seiderer <ps.report@gmx.net> wrote:
> Add basic /etc/iwd/main.conf configuration file to enable
> network configuration (use built-in dhcp client).
>
> For the non systemd-resolved case select the openresolv package
> to fulfill the iwd resolvconf requirement (and adjust the
> configuration file accordingly).
>
> Signed-off-by: Peter Seiderer <ps.report@gmx.net>
I've applied, but I found things a bit too complicated, so I did some
simplifications.
> +define IWD_INSTALL_CONFIG_FILE
> + mkdir -p $(TARGET_DIR)/etc/iwd
This is not needed if you use the -D option in $(INSTALL)
> + $(INSTALL) -m 644 package/iwd/main.conf $(TARGET_DIR)/etc/iwd/main.conf
> +endef
> +
> +ifeq ($(BR2_PACKAGE_SYSTEMD_RESOLVED),y)
> +define IWD_CONFIG_FILE_NAME_RESOLV_SERVICE
> + printf "[Network]\nNameResolvingService=systemd\n" \
> + >> $(TARGET_DIR)/etc/iwd/main.conf
> +endef
> +else
> +define IWD_CONFIG_FILE_NAME_RESOLV_SERVICE
> + printf "[Network]\nNameResolvingService=resolvconf\n" \
> + >> $(TARGET_DIR)/etc/iwd/main.conf
> +endef
> +endif
> +
> +IWD_POST_INSTALL_TARGET_HOOKS += \
> + IWD_INSTALL_CONFIG_FILE \
> + IWD_CONFIG_FILE_NAME_RESOLV_SERVICE
This felt too complicated. I simplified like this:
ifeq ($(BR2_PACKAGE_SYSTEMD_RESOLVED),y)
IWD_RESOLV_SERVICE = systemd
else
IWD_RESOLV_SERVICE = resolvconf
endif
define IWD_INSTALL_CONFIG_FILE
$(INSTALL) -D -m 644 package/iwd/main.conf $(TARGET_DIR)/etc/iwd/main.conf
$(SED) 's,__RESOLV_SERVICE__,$(IWD_RESOLV_SERVICE),' $(TARGET_DIR)/etc/iwd/main.conf
endef
IWD_POST_INSTALL_TARGET_HOOKS += IWD_INSTALL_CONFIG_FILE
with of course main.conf containing:
# use built-in dhcp client
[General]
EnableNetworkConfiguration=true
[Network]
NameResolvingService=__RESOLV_SERVICE__
Applied with those changes. Thanks!
Thomas
--
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
^ permalink raw reply [flat|nested] 4+ messages in thread
* [Buildroot] [PATCH v4 2/2] package/iwd: add sysv init script
2020-06-16 6:34 ` [Buildroot] [PATCH v4 2/2] package/iwd: add sysv init script Peter Seiderer
@ 2020-06-17 19:59 ` Thomas Petazzoni
0 siblings, 0 replies; 4+ messages in thread
From: Thomas Petazzoni @ 2020-06-17 19:59 UTC (permalink / raw)
To: buildroot
On Tue, 16 Jun 2020 08:34:31 +0200
Peter Seiderer <ps.report@gmx.net> wrote:
> Signed-off-by: Peter Seiderer <ps.report@gmx.net>
> ---
> Changes v1 -> v2:
> - use start-stop-daemon (Yann E. MORIN)
Applied to master, thanks.
Thomas
--
Thomas Petazzoni, CTO, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2020-06-17 19:59 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-06-16 6:34 [Buildroot] [PATCH v4 1/2] package/iwd: add basic configuration file Peter Seiderer
2020-06-16 6:34 ` [Buildroot] [PATCH v4 2/2] package/iwd: add sysv init script Peter Seiderer
2020-06-17 19:59 ` Thomas Petazzoni
2020-06-17 19:59 ` [Buildroot] [PATCH v4 1/2] package/iwd: add basic configuration file Thomas Petazzoni
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.