From efcd74ad754c056da5f30050195de3c31752751b Mon Sep 17 00:00:00 2001 From: koksnuss Date: Sun, 13 May 2018 23:04:33 +0200 Subject: [PATCH] fix audio, add cpu, update roadmap and config --- README.md | 4 +-- audio | 7 +++++- config | 20 ++++++++++----- cpu | 75 ++++++++++++++++--------------------------------------- 4 files changed, 44 insertions(+), 62 deletions(-) diff --git a/README.md b/README.md index b36238f..f3c84da 100644 --- a/README.md +++ b/README.md @@ -17,9 +17,9 @@ Adjust `~/.config/i3blocks/config` to control i3 status bar output. Finally relo - [x] battery - [x] same color palette - [x] audio -- [ ] fix audio not changing on mute +- [x] fix audio not changing on mute +- [x] cpu - [ ] swap -- [ ] cpu - [ ] wifi/ethernet/bluetooth - [ ] external storage mount - [ ] ethernet bandwith diff --git a/audio b/audio index 3d92fb7..b3287d1 100755 --- a/audio +++ b/audio @@ -1,9 +1,14 @@ #!/bin/bash amixer get Master | gawk ' - match($0, /\[([0-9]+)\%\]/, matches) { +match($0, /\[([0-9]+)\%\] \[(on)\]/, matches) { audio=matches[1] } END { + if (matches[2]=='off') { + printf("mute\n") + printf("\n") + exit 33 + } printf("%d%", audio) print("\n") if (audio < 75) { diff --git a/config b/config index 47e4fa0..49068e6 100644 --- a/config +++ b/config @@ -5,21 +5,29 @@ separator=false command=$HOME/.config/i3blocks/$BLOCK_NAME interval=5 -#[cpu] -[audio] -interval=1 -label=audio -[ram] -label=ram [storage] label=storage + +[ram] +label=ram + +[cpu] +interval=2 +label=cpu + [ip] label=ip interval=once + [battery] label=battery separator_block_width=5 [battery] instance=1 + +[audio] +interval=2 +label=audio + [datetime] interval=1 diff --git a/cpu b/cpu index 8c3c1f5..818d443 100755 --- a/cpu +++ b/cpu @@ -1,55 +1,24 @@ -#!/usr/bin/perl -# -# Copyright 2014 Pierre Mavro -# Copyright 2014 Vivien Didelot -# Copyright 2014 Andreas Guldstrand -# -# Licensed under the terms of the GNU GPL v3, or any later version. +#!/bin/bash -use strict; -use warnings; -use utf8; -use Getopt::Long; - -# default values -my $t_warn = 50; -my $t_crit = 80; -my $cpu_usage = -1; - -sub help { - print "Usage: cpu_usage [-w ] [-c ]\n"; - print "-w : warning threshold to become yellow\n"; - print "-c : 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 |') or die; -while () { - if (/^.*\s+(\d+\.\d+)\s+$/) { - $cpu_usage = 100 - $1; # 100% - %idle - last; +top -bn1 | gawk ' + /^\%CPU/ { + cpu=100-$8 } -} -close(MPSTAT); - -$cpu_usage eq -1 and die 'Can\'t find CPU information'; - -# Print short_text, full_text -printf "%.2f%%\n", $cpu_usage; -printf "%.2f%%\n", $cpu_usage; - -# Print color, if needed -if ($cpu_usage >= $t_crit) { - print "#FF0000\n"; - exit 33; -} elsif ($cpu_usage >= $t_warn) { - print "#FFFC00\n"; -} - -exit 0; + END { + printf("%d%", cpu) + print("\n") + if (cpu < 50) { + print("#04B431\n") + } else if (cpu < 60) { + print("#A8FF00\n") + } else if (cpu < 70) { + print("#FFF600\n") + } else if (cpu < 80) { + print("#FFAE00\n") + } else if (cpu < 90) { + print("#FF0000\n") + } else { + exit 33 + } + } +'