summaryrefslogtreecommitdiff
path: root/repo/util/iwd
diff options
context:
space:
mode:
Diffstat (limited to 'repo/util/iwd')
-rw-r--r--repo/util/iwd/iwd.confd24
-rw-r--r--repo/util/iwd/iwd.initd25
-rw-r--r--repo/util/iwd/iwd.xibuild35
-rw-r--r--repo/util/iwd/main.conf7
4 files changed, 91 insertions, 0 deletions
diff --git a/repo/util/iwd/iwd.confd b/repo/util/iwd/iwd.confd
new file mode 100644
index 0000000..9fed1e0
--- /dev/null
+++ b/repo/util/iwd/iwd.confd
@@ -0,0 +1,24 @@
+# Configuration for /etc/init.d/iwd
+
+# A comma-separated list of patterns specifying the network interfaces that
+# iwd is allowed to manage. Defaults to any wireless interfaces.
+#allowed_interfaces=
+
+# A comma-separated list of patterns specifying the network interfaces that
+# iwd should ignore.
+#ignored_interfaces=
+
+# Extra options for iwd(8).
+#command_args=
+
+# Log messages are redirected to syslog. Set to empty string to disable.
+#error_logger="logger -t iwd -p daemon.info"
+
+# Number of milliseconds to wait after starting and check that daemon is
+# still running. Set to empty string to disable.
+# NOTE: If you use iwd together with ConnMan and ConnMan crashes when started
+# right after iwd, increase this period to e.g. 200 ms.
+#start_wait=50
+
+# Uncomment to use process supervisor.
+#supervisor="supervise-daemon"
diff --git a/repo/util/iwd/iwd.initd b/repo/util/iwd/iwd.initd
new file mode 100644
index 0000000..df5cfb5
--- /dev/null
+++ b/repo/util/iwd/iwd.initd
@@ -0,0 +1,25 @@
+#!/sbin/openrc-run
+
+description="iNet wireless daemon"
+
+: ${error_logger="logger -t iwd -p daemon.info"}
+: ${start_wait=50} # milliseconds
+
+command="/usr/libexec/iwd"
+command_background="yes"
+command_args="
+ ${allowed_interfaces:+"--interfaces \"$allowed_interfaces\""}
+ ${ignored_interfaces:+"--nointerfaces \"$ignored_interfaces\""}
+ ${command_args:-}
+ "
+start_stop_daemon_args="
+ ${start_wait:+--wait $start_wait}
+ ${start_stop_daemon_args:-}
+ "
+pidfile="/run/$RC_SVCNAME.pid"
+
+depend() {
+ need dbus
+ before net
+ keyword -shutdown
+}
diff --git a/repo/util/iwd/iwd.xibuild b/repo/util/iwd/iwd.xibuild
new file mode 100644
index 0000000..05e10ee
--- /dev/null
+++ b/repo/util/iwd/iwd.xibuild
@@ -0,0 +1,35 @@
+#!/bin/sh
+
+NAME="iwd"
+DESC="Internet Wireless Daemon"
+
+MAKEDEPS="make "
+DEPS="dbus musl readline "
+
+PKG_VER=1.27
+SOURCE="https://mirrors.edge.kernel.org/pub/linux/network/wireless/iwd-$PKG_VER.tar.gz"
+ADDITIONAL="iwd.initd iwd.confd main.conf"
+
+build () {
+ ./configure \
+ --prefix=/usr \
+ --bindir=/usr/bin \
+ --sysconfdir=/etc \
+ --disable-static \
+ --disable-systemd-service \
+ --enable-wired \
+ --enable-tools
+
+ make
+}
+
+package () {
+ make DESTDIR=$PKG_DEST install
+ install -m750 -d "$PKG_DEST"/var/lib/iwd
+
+ install -m644 -D main.conf "$PKG_DEST"/etc/iwd/main.conf
+
+ install -m755 -D iwd.initd "$PKG_DEST"/etc/init.d/iwd
+ install -m644 -D iwd.confd "$PKG_DEST"/etc/conf.d/iwd
+
+}
diff --git a/repo/util/iwd/main.conf b/repo/util/iwd/main.conf
new file mode 100644
index 0000000..69670ec
--- /dev/null
+++ b/repo/util/iwd/main.conf
@@ -0,0 +1,7 @@
+[General]
+EnableNetworkConfiguration=true
+
+[Network]
+EnableIPv6=true
+NameResolvingService=resolvconf
+