Browse Source

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.
red-hat-laptop
Kevin Mok 5 years ago
parent
commit
5c8764c056
Signed by: Kevin-Mok GPG Key ID: AEA75288DC135CF5
  1. 4
      aliases/zsh_aliases
  2. 3
      configs/i3/config
  3. 64
      configs/i3blocks-scripts/cpu_usage
  4. 59
      configs/i3blocks-scripts/cpu_usage_old
  5. 27
      configs/i3blocks-scripts/wifi
  6. 10
      configs/i3blocks/i3blocks.conf
  7. 10
      dotfiles/.vimrc
  8. 11
      dotfiles/.zshrc
  9. 9
      scripts/backup.sh
  10. 6
      scripts/burn-iso.sh
  11. 22
      scripts/change-sink
  12. 3
      txt/key_dirs.txt
  13. 14
      txt/usbs.md

4
aliases/zsh_aliases

@ -48,8 +48,11 @@ alias mkpk="makepkg -sri"
alias mkex="chmod 777"
alias ctl="systemctl"
alias ctle="systemctl enable"
alias ctld="systemctl disable"
alias ctls="systemctl start"
alias wm="sudo wifi-menu"
# mounting {{{ #
alias udm="udisksctl mount -b"
@ -85,6 +88,7 @@ function mvd() { mv $1 ~/Downloads ; }
alias lhd="sudo fdisk -l"
alias ds="df -h | grep sd"
alias chownw="sudo chown -R kevin:wheel"
alias chwnm="sudo chown -R kevin:wheel /run/media/kevin"
alias nbu="f /run/media/kevin/pc-backup/backups/nzxt && ll | grep gz"
# }}} directory-related #

3
configs/i3/config

@ -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+

64
configs/i3blocks-scripts/cpu_usage

@ -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"

59
configs/i3blocks-scripts/cpu_usage_old

@ -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;

27
configs/i3blocks-scripts/wifi

@ -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

10
configs/i3blocks/i3blocks.conf

@ -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=

10
dotfiles/.vimrc

@ -171,6 +171,7 @@ map <F4> :xa<CR>
map <F5> :q!<CR>
" map <F6> :make -C ~/Documents/resume cv<CR>
" map <F7> :AutoSaveToggle<CR>
map <F8> :!clear && shellcheck %<CR>
map <F9> :VimtexCompile<CR>:VimtexView<CR>
" map <F9> :VimtexCompile<CR>
nnoremap <F10> :set paste<CR>"+p:set nopaste<CR>
@ -236,10 +237,12 @@ vnoremap <leader>r q:is///g<ESC>3ha
nnoremap <leader>rv :source $MYVIMRC<CR>
" replace in entire file
nnoremap <leader>R q:i%s///g<ESC>2F/i
" run current file in shell
nnoremap <leader>sh :!%:p<CR>
" sort lines
nnoremap <leader>so q:i.,.+sort<ESC>Fsi
" set syntax to shell (for dotfiles)
nnoremap <leader>sh :set syn=sh<CR>
nnoremap <leader>sys :set syn=sh<CR>
" open vimrc in vertical split
nnoremap <leader>vv :vsp ~/.vimrc<CR>
" format current line
@ -247,8 +250,9 @@ nnoremap <leader>ww Vgq
" format this and next line
nnoremap <leader>www Vjgq
" copy next thing to system clipboard
nnoremap <leader>y "+
nnoremap <leader>Y "+Y
" nnoremap <leader>y "+
" nnoremap <leader>Y "+Y
nnoremap <leader>y y$
" yank entire buffer
nnoremap <leader>yg ggyG
" toggle fold

11
dotfiles/.zshrc

@ -122,6 +122,7 @@ fi
export PATH="${PATH}:${HOME}/.local/bin/:${HOME}/linux-config/scripts:/opt/pycharm-2018.3.1/bin"
(cat ~/.cache/wal/sequences &)
source ~/.cache/wal/colors.sh
export COLOR7="${color7}"
xset r rate 200 60
@ -171,13 +172,3 @@ source /home/kevin/coding/spotify-lib-vis/src/api-keys.sh
export GPG_TTY=$(tty)
export PASSWORD_STORE_CLIP_TIME=120
# # perl {{{ #
# PATH="/home/kevin/perl5/bin${PATH:+:${PATH}}"; export PATH;
# PERL5LIB="/home/kevin/perl5/lib/perl5${PERL5LIB:+:${PERL5LIB}}"; export PERL5LIB;
# PERL_LOCAL_LIB_ROOT="/home/kevin/perl5${PERL_LOCAL_LIB_ROOT:+:${PERL_LOCAL_LIB_ROOT}}"; export PERL_LOCAL_LIB_ROOT;
# PERL_MB_OPT="--install_base \"/home/kevin/perl5\""; export PERL_MB_OPT;
# PERL_MM_OPT="INSTALL_BASE=/home/kevin/perl5"; export PERL_MM_OPT;
# # }}} perl #

9
scripts/backup.sh

@ -1,7 +1,14 @@
#!/bin/bash
# Backup destination
backup_dest="/run/media/kevin/pc-backup/backups/nzxt"
case $1 in
nzxt )
backup_dest="/run/media/kevin/nzxt-backup/"
;;
x1 )
backup_dest="/run/media/kevin/laptop-backup"
;;
esac
exclude_dirs_list="/home/kevin/linux-config/txt/exlude-dirs-backup.txt"
# Labels for backup name

6
scripts/burn-iso.sh

@ -1,6 +1,8 @@
#!/bin/bash
usb=/dev/sdc
iso=/run/media/kevin/pc-backup/isos/w10.iso
usb_letter="c"
usb="/dev/sd$usb_letter"
iso=""
sudo dd bs=4M if=$iso of=$usb conv=fdatasync status=progress
# sudo dd bs=4M if=$usb of=$iso conv=fdatasync status=progress

22
scripts/change-sink

@ -1,12 +1,24 @@
#!/bin/bash
#Device name variable
if [ "$1" = "dac" ]; then
devicename="alsa_output.usb-1852_DigiHug_USB_Audio-01.analog-stereo"
case $1 in
dac )
devicename="alsa_output.usb-FiiO_DigiHug_USB_Audio-01.analog-stereo"
;;
dac2 )
devicename="alsa_output.usb-1852_DigiHug_USB_Audio-01.analog-stereo"
;;
line-out )
devicename="alsa_output.pci-0000_00_14.2.analog-stereo"
;;
esac
# if [ "$1" = "dac" ]; then
# devicename="alsa_output.usb-FiiO_DigiHug_USB_Audio-01.analog-stereo"
elif [ "$1" = "line-out" ]; then
devicename="alsa_output.pci-0000_00_14.2.analog-stereo"
fi
# elif [ "$1" = "dac2" ]; then
# devicename="alsa_output.usb-1852_DigiHug_USB_Audio-01.analog-stereo"
# elif [ "$1" = "line-out" ]; then
# devicename="alsa_output.pci-0000_00_14.2.analog-stereo"
# fi
echo "$devicename"
#change the default sink

3
txt/key_dirs.txt

@ -7,7 +7,7 @@ d /home/kevin/Downloads
D /home/kevin/Documents
k /home/kevin/
lc /home/kevin/linux-config/
m /run/media
m /run/media/kevin
o /
p /home/kevin/.password-store
@ -20,6 +20,7 @@ ib /home/kevin/linux-config/configs/i3blocks-scripts
j /home/kevin/Documents/journal
lh /home/kevin/Documents/listening-history
ra /home/kevin/linux-config/configs/ranger
sr /home/kevin/linux-config/scripts
snp /home/kevin/.vim/plugged/vim-snippets/UltiSnips
sv /home/kevin/coding/spotify-lib-vis/src
swa /home/kevin/.local/share/nvim/swap

14
txt/usbs.md

@ -0,0 +1,14 @@
# 3.0
## Kingston
- rubber (32) = Manjaro
- push-out 1 (32) = backups
- push-out 2 (32) = Windows
- HP (1TB) = files/backups
# 2.0
- Adata (16) = Antergos
- Lexar (32) =
- Kingston (16) = Ubuntu
- Kingston (yellow, 8) = Manjaro
- Kingston (purple, 4) = Arch
Loading…
Cancel
Save