From f2cb36b4e7de99d816fb4cb5b5a968e9d28a691f Mon Sep 17 00:00:00 2001 From: zador-blood-stained Date: Fri, 6 Jan 2017 16:58:38 +0300 Subject: [PATCH] Update h3consumption for new Wi-Fi PM settings --- scripts/h3consumption | 41 ++++++++++++++++++++++++++++++++++------- 1 file changed, 34 insertions(+), 7 deletions(-) diff --git a/scripts/h3consumption b/scripts/h3consumption index b3f7304ee..c8a9d7ecd 100755 --- a/scripts/h3consumption +++ b/scripts/h3consumption @@ -240,15 +240,42 @@ ChangeSettings() { "") : ;; on) - chmod 644 /etc/NetworkManager/dispatcher.d/99disable-power-management - sed 's/power\ off\ /power on /' /etc/NetworkManager/dispatcher.d/99enable-power-management - chmod 755 /etc/NetworkManager/dispatcher.d/99enable-power-management + rm -f /etc/NetworkManager/dispatcher.d/99enable-power-management \ + /etc/NetworkManager/dispatcher.d/99disable-power-management \ + /etc/NetworkManager/conf.d/zz-override-wifi-powersave-off.conf + ;; off) - chmod 755 /etc/NetworkManager/dispatcher.d/99disable-power-management - [[ -f /etc/NetworkManager/dispatcher.d/99enable-power-management ]] && - chmod 644 /etc/NetworkManager/dispatcher.d/99enable-power-management + rm -f /etc/NetworkManager/dispatcher.d/99enable-power-management \ + /etc/NetworkManager/dispatcher.d/99disable-power-management \ + /etc/NetworkManager/conf.d/zz-override-wifi-powersave-off.conf + + echo "Note: This action applies only to NetworkManager based connections" + + case "$(lsb_release -sc)" in + jessie) + mkdir -p /etc/NetworkManager/dispatcher.d/ + cat <<-'EOF' > /etc/NetworkManager/dispatcher.d/99disable-power-management + #!/bin/sh + case "$2" in + up) /sbin/iwconfig $1 power off || true ;; + down) /sbin/iwconfig $1 power on || true ;; + esac + EOF + chmod 755 /etc/NetworkManager/dispatcher.d/99disable-power-management + ;; + xenial) + mkdir -p /etc/NetworkManager/conf.d/ + cat <<-EOF > /etc/NetworkManager/conf.d/zz-override-wifi-powersave-off.conf + [connection] + wifi.powersave = 2 + EOF + ;; + *) + echo "This action is supported only in Jessie and Xenial based releases. Exiting" >&2 + exit 1 + ;; + esac ;; *) echo "Parameter error: -w requires either on or off. Exiting" >&2