Fixed wifi block, wrote own CPU usage script

Closes #40. Also added file listing USB OS's and made change-sink handle
both DAC names.
This commit is contained in:
2018-12-10 02:05:58 -05:00
parent 0248ff9b6e
commit 5c8764c056
13 changed files with 142 additions and 100 deletions

View File

@@ -477,7 +477,8 @@ font pango:$sb_font 11
# }}} mod key/font #
# media keys {{{ #
bindsym $mod+d exec ~/linux-config/scripts/change-sink dac
bindsym $mod+d exec ~/linux-config/scripts/change-sink dac1
bindsym $mod+shift+d exec ~/linux-config/scripts/change-sink dac2
bindsym $mod+o exec ~/linux-config/scripts/change-sink line-out
bindsym XF86AudioRaiseVolume exec --no-startup-id amixer -c 0 sset Master 3+

View File

@@ -1,60 +1,8 @@
#!/usr/bin/perl
#
# Copyright 2014 Pierre Mavro <deimos@deimos.fr>
# Copyright 2014 Vivien Didelot <vivien@didelot.org>
# Copyright 2014 Andreas Guldstrand <andreas.guldstrand@gmail.com>
#
# Licensed under the terms of the GNU GPL v3, or any later version.
#!/bin/bash
use strict;
use warnings;
use utf8;
use Getopt::Long;
# use Env::Modify qw(:ksh source);
. "/home/kevin/.cache/wal/colors.sh"
# default values
my $t_warn = 50;
my $t_crit = 80;
my $cpu_usage = -1;
sub help {
print "Usage: cpu_usage [-w <warning>] [-c <critical>]\n";
print "-w <percent>: warning threshold to become yellow\n";
print "-c <percent>: critical threshold to become red\n";
exit 0;
}
GetOptions("help|h" => \&help,
"w=i" => \$t_warn,
"c=i" => \$t_crit);
# Get CPU usage
$ENV{LC_ALL}="en_US"; # if mpstat is not run under en_US locale, things may break, so make sure it is
open (MPSTAT, 'mpstat 1 1 -P ALL |') or die;
while (<MPSTAT>) {
if (/^.*\s+(\d+\.\d+)\s+$/) {
$cpu_usage = 100 - $1; # 100% - %idle
last;
}
}
close(MPSTAT);
$cpu_usage eq -1 and die 'Can\'t find CPU information';
# Print short_text, full_text
printf "%.0f%%\n", $cpu_usage;
printf "%.0f%%\n", $cpu_usage;
system("source \"/home/kevin/.cache/wal/colors.sh\"");
# printf "%s", $ENV{'SHELL'};
printf "%s", $ENV{'color2'};
# printf "%s", $ENV{'bg'};
# Print color, if needed
if ($cpu_usage >= $t_crit) {
print "#FF0000\n";
exit 33;
} elsif ($cpu_usage >= $t_warn) {
print "#FFFC00\n";
}
exit 0;
idle="$(mpstat 1 1 -P ALL | sed -n -e '4{p;q}' | awk '{print $NF}')"
used=$(echo 100 - "$idle" | bc)
used_rounded=$(printf %.0f "$used")
printf "%s%%\n\n%s\n" "$used_rounded" "$color7"

View File

@@ -0,0 +1,59 @@
#!/usr/bin/perl
#
# Copyright 2014 Pierre Mavro <deimos@deimos.fr>
# Copyright 2014 Vivien Didelot <vivien@didelot.org>
# Copyright 2014 Andreas Guldstrand <andreas.guldstrand@gmail.com>
#
# Licensed under the terms of the GNU GPL v3, or any later version.
use strict;
use warnings;
use utf8;
use Getopt::Long;
# use Env::Modify qw(:ksh source);
# default values
my $t_warn = 50;
my $t_crit = 80;
my $cpu_usage = -1;
sub help {
print "Usage: cpu_usage [-w <warning>] [-c <critical>]\n";
print "-w <percent>: warning threshold to become yellow\n";
print "-c <percent>: critical threshold to become red\n";
exit 0;
}
GetOptions("help|h" => \&help,
"w=i" => \$t_warn,
"c=i" => \$t_crit);
# Get CPU usage
$ENV{LC_ALL}="en_US"; # if mpstat is not run under en_US locale, things may break, so make sure it is
open (MPSTAT, 'mpstat 1 1 -P ALL |') or die;
while (<MPSTAT>) {
if (/^.*\s+(\d+\.\d+)\s+$/) {
$cpu_usage = 100 - $1; # 100% - %idle
last;
}
}
close(MPSTAT);
$cpu_usage eq -1 and die 'Can\'t find CPU information';
# Print short_text, full_text
printf "%.0f%%\n", $cpu_usage;
printf "%.0f%%\n", $cpu_usage;
system("sudo source \"/home/kevin/.cache/wal/colors.sh\" 2> /dev/null");
printf "%s\n", $ENV{'COLOR7'};
# Print color, if needed
# if ($cpu_usage >= $t_crit) {
# print "#FF0000\n";
# exit 33;
# } elsif ($cpu_usage >= $t_warn) {
# print "#FFFC00\n";
# }
exit 0;

View File

@@ -17,8 +17,6 @@
#------------------------------------------------------------------------
INTERFACE="${BLOCK_INSTANCE:-wlan0}"
echo $INTERFACE
# INTERFACE="${INSTANCE}"
#------------------------------------------------------------------------
@@ -29,23 +27,24 @@ echo $INTERFACE
#------------------------------------------------------------------------
QUALITY=$(grep $INTERFACE /proc/net/wireless | awk '{ print int($3 * 100 / 70) }')
echo $QUALITY
QUALITY=$(sudo grep $INTERFACE /proc/net/wireless | awk '{ print int($3 * 100 / 70) }')
W_inter=$(ip link | grep "[1-9]: wlp" | cut -d " " -f2 | tr -d ':')
W_name=$(nmcli d | grep "$W_inter" | awk '{print $4}')
#------------------------------------------------------------------------
# echo $QUALITY% "$W_name" # full text
echo $QUALITY% # short text
# echo $QUALITY% # short text
. "/home/kevin/.cache/wal/colors.sh"
printf "%s%%\n\n%s\n" $QUALITY $color7
# color
if [[ $QUALITY -ge 80 ]]; then
echo "#00FF00"
elif [[ $QUALITY -lt 80 ]]; then
echo "#FFF600"
elif [[ $QUALITY -lt 60 ]]; then
echo "#FFAE00"
elif [[ $QUALITY -lt 40 ]]; then
echo "#FF0000"
fi
# if [[ $QUALITY -ge 80 ]]; then
# echo "#00FF00"
# elif [[ $QUALITY -lt 80 ]]; then
# echo "#FFF600"
# elif [[ $QUALITY -lt 60 ]]; then
# echo "#FFAE00"
# elif [[ $QUALITY -lt 40 ]]; then
# echo "#FF0000"
# fi

View File

@@ -20,11 +20,6 @@ label=
interval=30
# color=#acc0cd
# [wifi]
# label=
# instance=wlp4s0
# interval=10
# unbold this?
# [load_average]
# label=
@@ -42,6 +37,11 @@ label=
# color=#3da061
interval=5
[wifi]
label=
instance=wlp4s0
interval=10
[name]
# label=🎅
label=