all repos — quickshell @ a3116179c30884d900f13e47038371e94d6ebe72

A desert-witch desktop shell

0
trickyni trickyniv56@gmail.com
Fri, 26 Sep 2025 07:49:00 +0300
commit

a3116179c30884d900f13e47038371e94d6ebe72

parent

2c41db04ac8f33742220a434eb5ba98b8083d1ac

3 files changed, 33 insertions(+), 23 deletions(-)

jump to
M bar/modules/Network.qmlbar/modules/Network.qml

@@ -7,44 +7,32 @@ import "../../"

import "../classes" as Class Class.RightRowLayout { + property var wifi_strength Class.TopbarText { - id: network_name + id: network Process { - id: network_name_script - command: ["iwgetid","-r"] + id: network_script + command: ["bar/scripts/network.sh"] workingDirectory: Quickshell.shellDir running: true stdout: StdioCollector { - onStreamFinished: network_name.text = this.text.trim() + onStreamFinished: { + network.text = this.text.trim().split("+")[1] + wifi_strength.wifi_strength_data = this.text.trim().split("+")[0] + } } } - Timer { interval: 1000 running: true repeat: true - onTriggered: network_name_script.running = true + onTriggered: network_script.running = true } } Class.TopbarIcon { id: wifi_strength + property var wifi_strength_data font.pixelSize: 9 - Process { - id: wifi_strength_script - command: ["bar/scripts/wifi_strength.sh"] - workingDirectory: Quickshell.shellDir - running: true - stdout: StdioCollector { - // onStreamFinished: wifi_strength.text = Icons.network.bar0 - onStreamFinished: wifi_strength.text = Icons.network.bar[this.text] - } - } - - Timer { - interval: 1000 - running: true - repeat: true - onTriggered: wifi_strength_script.running = true - } + text: Icons.network.bar[wifi_strength_data] } }
A bar/scripts/network.sh

@@ -0,0 +1,20 @@

+#!/usr/bin/env bash + +# Find the first wireless interface +connection_type=$(iw dev | awk '$1=="Interface"{print $2; exit}') #gets network type (wired/wifi) +if [ -n "$connection_type" ]; then + network_name=$(iw dev wlp13s0 link | awk -F': ' '/^\s*SSID:/ {print $2}') + signal_strength=$(iw dev wlp13s0 link | awk '/signal:/ {print $2}') + if (( sig >= -50 )); then + bars=4 + elif (( sig >= -60 )); then + bars=3 + elif (( sig >= -70 )); then + bars=2 + elif (( sig >= -80 )); then + bars=1 + else + bars=0 + fi + echo "$bars"+"$network_name" +fi
A bar/scripts/wifi_name.sh

@@ -0,0 +1,2 @@

+#!/usr/bin/env bash +iw dev wlp13s0 link | grep 'SSID' | awk '{print $2}'