Решил . Написал простенький скрипт который выводит иконку в трее с помощью Yad и при наведении на иконку курсора мыши , показывает во всплывающей подсказке уровень мощности сигнала wi-fi
Код:
#!/bin/bash
# Определяем путь к изображению
icon="/home/live/DEV/wire-wireles/wi2.png"
while true; do
# Получаем уровень сигнала Wi-Fi
signal_strength="$(/sbin/iwconfig wlp2s0 | grep -Po 'Signal level=\K-?\d+')"
# Отображаем картинку в трее с всплывающей подсказкой
yad --notification --image="$icon" --text="Уровень Wi-Fi сигнала: $signal_strength" --timeout=0 --no-buttons &
# Ждем завершения процесса yad
wait
done
поправте путь до иконки на свой , в моём скрипте он icon="/home/live/DEV/wire-wireles/wi2.png" .
upd: скрипт простой и требует доработки, из недостатков, не измеряет динамически а показывает значение мощности wifi, на момент запуска картинки чтоб обновить значение необходимо кликнуть на картинку.
upd2: Проанализировал и оптимизировал код.
upd:3 написал вариант с динамической перерисовкой иконки в трее и перезагрузкой значения сигнала, но при перерисовке иконка пропадает на секунду, потом опять появляется в трее таким образом мерцает, и раздражает этим. потому поднял паузу до 20 чтоб реже мерцало, вот код
#!/bin/bash
set -x
# Определяем путь к изображению
icon="/home/live/DEV/wire-wireles/wi2.png"
# Переменная для хранения идентификатора процесса yad
yad_pid=""
while true; do
echo "met"
kill "$yad_pid"
# Получаем уровень сигнала Wi-Fi
signal_strength="$(/sbin/iwconfig wlp2s0 | grep -Po 'Signal level=\K-?\d+')"
# Завершаем предыдущий процесс yad, если он существует
#if [[ -n "$yad_pid" ]]; then
#kill "$yad_pid"
#fi
# Отображаем картинку в трее с всплывающей подсказкой
yad --notification --image="$icon" --text="Уровень Wi-Fi сигнала: $signal_strength" --timeout=0 --no-buttons &
# Получаем идентификатор процесса yad
yad_pid=$!
# Ждем завершения процесса yad
sleep 20
done