diff options
author | davidovski <david@davidovski.xyz> | 2022-03-30 17:54:09 +0100 |
---|---|---|
committer | davidovski <david@davidovski.xyz> | 2022-03-30 17:54:09 +0100 |
commit | de16da348671bd797500ab144ae56d23e88c7463 (patch) | |
tree | 728ec7d354049c977b34d9693109cd5683992a30 /extra/wpa_supplicant | |
parent | 9ae31d6c582fbb636625a87d0921fd914f33c05e (diff) |
fixed initd files
Diffstat (limited to 'extra/wpa_supplicant')
-rw-r--r-- | extra/wpa_supplicant/wpa_cli.confd | 1 | ||||
-rw-r--r-- | extra/wpa_supplicant/wpa_cli.initd | 22 | ||||
-rw-r--r-- | extra/wpa_supplicant/wpa_supplicant.confd | 10 | ||||
-rw-r--r-- | extra/wpa_supplicant/wpa_supplicant.initd | 79 |
4 files changed, 112 insertions, 0 deletions
diff --git a/extra/wpa_supplicant/wpa_cli.confd b/extra/wpa_supplicant/wpa_cli.confd new file mode 100644 index 0000000..aa481ac --- /dev/null +++ b/extra/wpa_supplicant/wpa_cli.confd @@ -0,0 +1 @@ +WPACLI_OPTS="-a /etc/wpa_supplicant/wpa_cli.sh" diff --git a/extra/wpa_supplicant/wpa_cli.initd b/extra/wpa_supplicant/wpa_cli.initd new file mode 100644 index 0000000..2bf7c0d --- /dev/null +++ b/extra/wpa_supplicant/wpa_cli.initd @@ -0,0 +1,22 @@ +#!/sbin/openrc-run + +supervisor=supervise-daemon + +# The wpa_cli services depends on wpa_supplicant. If wpa_supplicant is +# restarted, so is wpa_cli. Unfortunately, wpa_supplicant creates the +# socket, used for communication with wpa_cli, rather late thereby +# causing wpa_cli to be restarted before it is created and thus fail. +# By default supervise-daemon will restart wpa_cli immediately, often +# resulting in all restart attempts to be exhausted before the socket is +# created. To work around this issue, add a respawn-delay to wpa_cli. +supervise_daemon_args="--respawn-delay 3" + +name="WPA Command Line Client" +description="Text-based frontend for interacting with WPA Supplicant" + +command=/sbin/wpa_cli +command_args="${WPACLI_OPTS} >/dev/null" + +depend() { + need wpa_supplicant +} diff --git a/extra/wpa_supplicant/wpa_supplicant.confd b/extra/wpa_supplicant/wpa_supplicant.confd new file mode 100644 index 0000000..56a6c11 --- /dev/null +++ b/extra/wpa_supplicant/wpa_supplicant.confd @@ -0,0 +1,10 @@ +# conf.d file for wpa_supplicant +# +# Please check man 8 wpa_supplicant for more information about the options +# wpa_supplicant accepts. +wpa_supplicant_args="" + +# The dbus interface will be enabled by default if wpa_supplicant.conf is +# missing. use wpa_supplicant_dbus to explicitly enable/disable dbus interface + +#wpa_supplicant_dbus=no diff --git a/extra/wpa_supplicant/wpa_supplicant.initd b/extra/wpa_supplicant/wpa_supplicant.initd new file mode 100644 index 0000000..c1a4834 --- /dev/null +++ b/extra/wpa_supplicant/wpa_supplicant.initd @@ -0,0 +1,79 @@ +#!/sbin/openrc-run +# Copyright (c) 2009 Roy Marples <roy@marples.name> +# All rights reserved. Released under the 2-clause BSD license. +supervisor=supervise-daemon + +name="WPA Supplicant" +description="Wi-Fi Protected Access client and IEEE 802.1X supplicant" + +command=/sbin/wpa_supplicant +wpa_supplicant_if=${wpa_supplicant_if:+-i}$wpa_supplicant_if +command_args="$wpa_supplicant_args $wpa_supplicant_if" + +default_conf=/etc/wpa_supplicant/wpa_supplicant.conf + +depend() { + need localmount + use logger dbus + after bootmisc modules entropy udev-settle + before dns dhcpcd net + keyword -shutdown +} + +find_wireless() { + local iface= + for iface in /sys/class/net/*; do + if [ -e "$iface"/wireless -o -e "$iface"/phy80211 ]; then + echo "${iface##*/}" + return 0 + fi + done + + return 1 +} + +append_wireless() { + local iface= i= + + iface=$(find_wireless) + if [ -n "$iface" ]; then + for i in $iface; do + command_args="$command_args -i$i" + done + else + eerror "Could not find a wireless interface" + fi +} + +start_pre() { + case " $command_args" in + *" -i"*) ;; + *) append_wireless;; + esac + + # set default conf if dbus is explicitly disabled + if [ -n "${wpa_supplicant_dbus}" ] && ! yesno "${wpa_supplicant_dbus}"; then + : ${wpa_supplicant_conf:=${default_conf}} + fi + + # use default conf if it exists + if [ -f "${default_conf}" ]; then + : ${wpa_supplicant_conf:=${default_conf}} + fi + + # enable default dbus if we still dont have a config + if [ -z "${wpa_supplicant_conf}" ]; then + : ${wpa_supplicant_dbus:=yes} + else + command_args="${command_args} -c$wpa_supplicant_conf" + fi + case " ${command_args}" in + *" -u"*);; + *) if yesno "{wpa_supplicant_dbus}"; then + command_args="-u ${command_args}" + fi + ;; + esac + + checkpath -d -m 0755 -o root:root /var/run/wpa_supplicant +} |