summaryrefslogblamecommitdiff
path: root/.config/i3blocks/config
blob: 095031feacc3939c6464bf10cc6ba18563d597de (plain) (tree)
1
2
3
4
5
6
7
8
9





                                                          


                                                                               







                        

             
                                                                                                                                                                                       
 
      
             
         
                                                                                                                                             
 
      
             
         
                                                                                                                                                        
 
         

             
                                                                                                              

         
            
                  


           
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 



             
                                                           



             
                                                                                                            

      
           
                                                                    

        
           
                                                                   

      
           
                                                                                                                                                                                                                                                       

      
           
                                                                                                                                                                              

         
           
                                                                                                                                                                          


           
                                                         
# i3blocks configuration file
#
# The i3blocks man page describes the usage of the binary,
# and its website describes the configuration:
#
#     https://vivien.github.io/i3blocks
#
# Note: on FreeBSD, the signals listed here are used by running `pkill -[signal
# + 65]`. So for example, if a block signal is 10, you would use `pkill -75`
#test=󰣠
markup=pango

# Global properties
separator=true
separator_block_width=15

[packages]
interval=once
signal=14
command=count=$(pkg upgrade -n | sed -n 's/^Number of packages to be upgraded:\(.*\)/\1/p') ; [ -n "$count" ] && [ "$count" -gt 0 ] && printf "󰏖 %s" $count && return 33 || return 0

[mail]
interval=once
signal=12
command=unread=$(ls ~/.mail/gmail/Inbox/new/ | wc -l | cut -w -f2) ; [ $unread -gt 0 ] && printf "󰶋 %s\n" $unread && return 33 || return 0

[news]
interval=once
signal=13
command=unread=$(newsboat -x print-unread|cut -w -f1) && [ "$unread" != 0 ] && [ "$unread" != Authentication ] && printf "󰎕 %s\n" $unread || return 0

[updates]
interval=once
signal=15
command=doas freebsd-update updatesready > /dev/null ; [ $? -ne 2 ] && printf "󰣠 Updates ready" || return 0

[weather]
interval=300
command=weather.sh

[net]
interval=10
command=[ "$BLOCK_BUTTON" = 3 ] && doas service netif restart || inet=$(ifconfig lagg0 | grep inet\ | cut -w -f3 | tr '\n' ' ') ; [ "$(ifconfig em0|grep status|cut -d\: -f2)" = " active" ] && printf "󰈁 %s\n" "$inet" || [ "$(ifconfig wlan0|grep status|cut -d\: -f2)" = " associated" ] && ssid=$(ifconfig wlan0|sed -n 's/^.*ssid \(.*\) channel.*$/\1/p') && [ -n "$ssid" ] && printf "󰖩 %s %s\n" "$ssid" "$inet" && return 0 || printf "󰈂 Offline\n" && return 33

[screencast]
interval=once
signal=11
command=[ -f /tmp/cast.mkv ] && printf "󰻂\n" || return 0

[audio]
interval=once
signal=10
command=vol=$(mixer vol|cut -d':' -f2) ; printf "󰕾 %.2d\n" $vol ; [ $vol -eq 0 ] && return 33 || return 0

[disk]
interval=60
command=printf "󰋊 %s\n" $(df -hk /usr/home | cut -w -f5 | sed 1d)

[memory]
interval=10
command=printf "󰑮 %s 󱎔 %s\n" $(top -n|grep Mem:|cut -w -f2,8)

[load]
interval=10
command=cpu_count=$(sysctl -n hw.ncpu) ; avg_load=$(sysctl vm.loadavg|cut -w -f3) ; percent=$(echo "result = $avg_load / $cpu_count * 100; scale=0; result / 1"|bc -l) ; printf "󰻠 %.2d%%\n" $percent ; [ $percent -ge 70 ] && return 33 || return 0

[temp]
interval=10
command=celcius=$(sysctl -n dev.cpu.0.temperature|cut -d'.' -f1) ; printf "󰔏 %.3d℉\n" $(echo "$celcius * 9 / 5 + 32" | bc) ; [ $celcius -ge 80 ] && return 33 || return 0

[battery]
interval=60
command=status=$(apm -b) ; level=$(apm -l) ; [ $status -eq 3 ] && printf "󰂄 %.2d%%" $level || printf "󰂁 %.2d%%" $level && [ $status -eq 2 ] && return 33 || return 0

[date]
interval=59
command=printf "󰃰 %s\n" "$(date '+%a %b %e %l:%M %p')"