commit ebfd15db8852fd7f5103d756b7ea4d811a1c4b3f parent 54fa897347249d5311029309b49eff2c828692e5 Author: Damian Myrda <damian@prime8.dev> Date: Thu, 12 Feb 2026 19:59:43 -0600 fix tuned profile to copy files and add nm dispatcher for wifi powersave Diffstat:
| M | link.sh | | | 12 | ++++++------ |
| M | programs/tuned/network-optimized/disable-wifi-powersave.sh | | | 22 | +++++++++++++++++++++- |
2 files changed, 27 insertions(+), 7 deletions(-)
diff --git a/link.sh b/link.sh @@ -67,21 +67,21 @@ link_config "$PROGRAMS_DIR/toshy/toshy_config.py" "$CONFIG_DIR/toshy/toshy_confi # Tuned profiles if [ -d "$PROGRAMS_DIR/tuned" ]; then - echo "→ Linking tuned profiles..." + echo "→ Installing tuned profiles..." for profile_dir in "$PROGRAMS_DIR/tuned"/*; do [ -d "$profile_dir" ] || continue profile_name=$(basename "$profile_dir") dest_dir="/etc/tuned/profiles/$profile_name" - echo " → Linking tuned profile: $profile_name" + echo " → Installing tuned profile: $profile_name" if [ -L "$dest_dir" ] || [ -d "$dest_dir" ]; then sudo rm -rf "$dest_dir" elif [ -e "$dest_dir" ]; then sudo mv "$dest_dir" "$dest_dir.bak" fi - sudo mkdir -p "$(dirname "$dest_dir")" - sudo ln -s "$profile_dir" "$dest_dir" - find "$profile_dir" -name "*.sh" -exec sudo chmod +x {} \; - echo " ✅ Linked $dest_dir" + sudo mkdir -p "$dest_dir" + sudo cp -r "$profile_dir"/* "$dest_dir/" + find "$dest_dir" -name "*.sh" -exec sudo chmod +x {} \; + echo " ✅ Installed $dest_dir" done fi diff --git a/programs/tuned/network-optimized/disable-wifi-powersave.sh b/programs/tuned/network-optimized/disable-wifi-powersave.sh @@ -1,6 +1,26 @@ #!/bin/bash -# Disable WiFi power management for low latency networking +# Disable WiFi power save immediately and install NetworkManager dispatcher +# 1. Disable power save right now (if WiFi is already up) for iface in $(iw dev 2>/dev/null | grep Interface | awk '{print $2}'); do iw dev "$iface" set power_save off 2>/dev/null && echo "Disabled power save on $iface" done + +# 2. Install dispatcher for persistent handling across reconnections +DISPATCHER_FILE="/etc/NetworkManager/dispatcher.d/99-disable-wifi-powersave" + +if [ ! -f "$DISPATCHER_FILE" ]; then + mkdir -p /etc/NetworkManager/dispatcher.d + cat >"$DISPATCHER_FILE" <<'EOF' +#!/bin/bash +# Disable WiFi power save when connection goes up + +if [ "$2" = "up" ] || [ "$2" = "connectivity-change" ]; then + for iface in $(iw dev 2>/dev/null | grep Interface | awk '{print $2}'); do + iw dev "$iface" set power_save off 2>/dev/null + done +fi +EOF + chmod +x "$DISPATCHER_FILE" + echo "Installed NetworkManager dispatcher: $DISPATCHER_FILE" +fi