;=====================================================
;     Modules
;=====================================================

;;;;;;;;;;;;;;;
;;   Jgmenu  ;;
;;;;;;;;;;;;;;;
[module/jgmenu]
type = custom/script
label = %output%
label-padding = 2
interval = 10
exec = echo ""
click-left = "jgmenu_run >/dev/null 2>&1 &"
click-right = exo-open $HOME/.config/jgmenu/jgmenurc


;;;;;;;;;;;;;;;;;;;;;;;;
;; Openbox Workspaces ;;
;;;;;;;;;;;;;;;;;;;;;;;;
[module/workspaces]
type = internal/xworkspaces
pin-workspaces = false
enable-click = true
enable-scroll = true
format-padding = 0
icon-0 = 1;
icon-1 = 2;
icon-2 = 3;
icon-3 = 4;
icon-4 = 5;
icon-5 = 6;
icon-6 = 7;
icon-7 = 8;
icon-8 = 9;
icon-9 = 10;
icon-default =
format = <label-state>
label-active = %icon% %name%
label-occupied = %icon% %name%
label-urgent = %icon% %name%
label-empty = %icon% %name%
label-occupied-padding = 1
label-empty-padding = 1
label-urgent-padding = 1
label-active-padding = 1
label-active-foreground = ${colors.blue}
label-active-underline = ${colors.blue}
label-occupied-underline = ${colors.moderate}
label-urgent-foreground = ${colors.urgent}
label-urgent-underline = ${colors.urgent}
label-empty-foreground = ${colors.foreground}


;;;;;;;;;;;;;;;;;;;
;; i3 Workspaces ;;
;;;;;;;;;;;;;;;;;;;
[module/i3]
type = internal/i3
pin-workspaces = true
strip-wsnumbers = true
index-sort = true
enable-click = true
fuzzy-match = true
ws-icon-default = 
format = <label-state><label-mode>
label-mode = %mode%
label-mode-padding = 2
label-focused = %index% %name%
label-focused-padding = 2
label-unfocused = %index% %name%
label-unfocused-padding = 2
label-visible = %index% %name%
label-visible-padding = 2
label-urgent = %index% %name%
label-urgent-padding = 2
label-mode-underline = ${colors.urgent}
label-focused-underline = ${colors.blue}
label-visible-underline = ${colors.purple}
label-urgent-underline = ${colors.urgent}


;;;;;;;;;;;;;;;;;;;;
;;Bspwm Workspaces;;
;;;;;;;;;;;;;;;;;;;;
[module/bspwm]
type = internal/bspwm
pin-workspaces = true
inline-mode = false
enable-click = true
enable-scroll = false
reverse-scroll = false
fuzzy-match = false
; ws-icon-[0-9]+ = label;icon
; Note that the label needs to correspond with the bspwm workspace name
ws-icon-0 = I;
ws-icon-1 = II;
ws-icon-2 = III;
ws-icon-3 = IV;
ws-icon-4 = V;
ws-icon-5 = VI;
ws-icon-6 = VII;
ws-icon-7 = VIII;
ws-icon-8 = IX;
ws-icon-9 = X;
;ws-icon-default = ♟
format = <label-state> <label-mode>
label-monitor = %name%
label-mode-padding = 1
label-focused = %icon% %name%
label-focused-padding = 1
label-occupied = %icon% %name%
label-occupied-padding = 1
label-urgent = %icon% %name%
label-urgent-padding = 1
label-empty = %icon% %name%
label-empty-padding = 1
label-dimmed-foreground = ${colors.purple}
label-dimmed-underline = ${colors.purple}
label-dimmed-focused-background = ${colors.purple}
label-focused-foreground = ${colors.blue}
label-focused-underline = ${colors.blue}
label-occupied-underline = ${colors.purple}
label-urgent-foreground = ${colors.urgent}
label-urgent-underline = ${colors.urgent}
; The following labels will be used to indicate the layout/mode
; for the focused workspace. Requires <label-mode>
label-monocle = 
label-tiled = 
label-fullscreen = 
label-floating = 
label-pseudotiled = P
label-locked = 
label-sticky = 
label-private = 
label-sticky-foreground = ${colors.purple}
label-locked-foreground = ${colors.moderate}
label-private-foreground = ${colors.urgent}


;;;;;;;;;;;;;
;; Network ;;
;;;;;;;;;;;;;
[module/network]
type = custom/script
exec = check-network
click-left = networkmanager_dmenu &
click-right = networkmanager_dmenu &
label-padding = 1
tail = true


;;;;;;;;;;;;;;;;;;;
;; Window Switch ;;
;;;;;;;;;;;;;;;;;;;
[module/window_switch]
type = custom/script
interval = 5
label = %output%
click-left = skippy-xd
click-right = skippy-xd
exec = echo "  "
format = <label>


;;;;;;;;;
;; CPU ;;
;;;;;;;;;
[module/coreuse]
type = internal/cpu
interval = 3
format-padding = 1
format = <label> <ramp-coreload>
label = %{A1:st -e htop -s PERCENT_CPU & disown:} %percentage:2%% %{A}
ramp-coreload-0 = ▂
ramp-coreload-1 = ▃
ramp-coreload-2 = ▄
ramp-coreload-3 = ▅
ramp-coreload-4 = ▆
ramp-coreload-5 = ▇
ramp-coreload-0-foreground = ${colors.blue}
ramp-coreload-1-foreground = ${colors.blue}
ramp-coreload-2-foreground = ${colors.moderate}
ramp-coreload-3-foreground = ${colors.moderate}
ramp-coreload-4-foreground = ${colors.urgent}
ramp-coreload-5-foreground = ${colors.urgent}


;;;;;;;;;
;; MEM ;;
;;;;;;;;;
[module/memory]
type = internal/memory
interval = 3
format = <label>
label-padding = 1
label = %{A1:st -e htop -s PERCENT_MEM & disown:} %percentage_used%%%{A}


;;;;;;;;;
;; PKG ;;
;;;;;;;;;
[module/pkg]
type = custom/script
exec = updates.sh
exec-if = "ping -q -w 2 -c 1 176.34.135.167 > /dev/null"
label = %{A1:st -e aurman -Syyu & disown:} %{A3:st -e aurman -Syyu & disown:}%output%%{A} %{A}
tail = true


;;;;;;;;;;;
;; Clock ;;
;;;;;;;;;;;
[module/clock]
type = internal/date
format = <label>
interval = 5
time = %R
label = %{A1:gsimplecal & disown:} %{A3:gsimplecal & disown:} %time%%{A} %{A}


;;;;;;;;;;;;;;;;;
;; TEMPERATURE ;;
;;;;;;;;;;;;;;;;;
[module/temperature]
type = internal/temperature
interval = 3
thermal-zone = 0
warn-temperature = 70
format = <ramp><label>
format-padding = 1
label = %{A1:st -e watch sensors & disown:} %temperature%%{A}
ramp-0 = ""
ramp-1 = ""
ramp-2 = ""
ramp-3 = ""
ramp-4 = ""
ramp-0-foreground = ${colors.blue}
ramp-1-foreground = ${colors.blue}
ramp-2-foreground = ${colors.moderate}
ramp-3-foreground = ${colors.moderate}
ramp-4-foreground = ${colors.urgent}
format-warn = <label-warn>
label-warn = " %temperature%"
label-warn-padding = 1
label-warn-foreground = ${colors.urgent}


;;;;;;;;;;;;
;; Volume ;;
;;;;;;;;;;;;
[module/volume]
type = internal/volume
master-mixer = Master
format-volume-padding   = 1
label-volume-foreground = ${colors.foreground}
label-volume  = %{A3:pavucontrol & disown:}%percentage:2%% %{A}
format-volume = <ramp-volume> <label-volume>
label-muted   = " muted "
ramp-volume-0 = 
ramp-volume-1 = 
ramp-volume-2 = 
ramp-volume-3 = 
label-muted-foreground   = #888
ramp-volume-0-foreground = ${colors.trim}
ramp-volume-1-foreground = ${colors.blue}
ramp-volume-2-foreground = ${colors.moderate}
ramp-volume-3-foreground = ${colors.urgent}


;;;;;;;;;;;;;
;; BATTERY ;;
;;;;;;;;;;;;;
[module/battery]
type = internal/battery
; Use $ ls -1 /sys/class/power_supply/
battery = BAT0
adapter = AC
full-at = 98
poll-interval = 5
time-format = %H:%M

format-charging    = <animation-charging> <label-charging>
format-discharging = <ramp-capacity> <label-discharging>
format-full        = <ramp-capacity> <label-full>

ramp-capacity-0 = 
ramp-capacity-1 = 
ramp-capacity-2 = 
ramp-capacity-3 = 
ramp-capacity-4 = 
ramp-capacity-0-foreground = ${colors.urgent}
ramp-capacity-1-foreground = ${colors.moderate}
ramp-capacity-foreground   = ${colors.blue}

bar-capacity-width = 10
animation-charging-0 = " "
animation-charging-1 = " "
animation-charging-2 = " "
animation-charging-3 = " "
animation-charging-4 = " "
animation-charging-framerate = 750


;;;;;;;;;;
;; MENU ;;
;;;;;;;;;;
[module/menu]
type = custom/menu
format-spacing = 1
label-open = "    "
label-close = "    "
label-close-foreground = ${colors.urgent}
label-separator = " | "
# Top level
menu-0-0 = "  "
menu-0-0-exec = menu-open-1
menu-0-1 = "  "
menu-0-1-exec = menu-open-2
menu-0-2 = "    |"
menu-0-2-exec = menu-open-3
# 1
menu-1-0 = "  "
menu-1-0-exec = menu-open-0
menu-1-0-foreground = ${colors.urgent}
menu-1-1 = "  "
menu-1-1-exec = exo-open --launch WebBrowser
menu-1-2 = "  "
menu-1-2-exec = exo-open --launch TerminalEmulator
menu-1-3 = "    |"
menu-1-3-exec = exo-open --launch FileManager
# 2
menu-2-0 = "  "
menu-2-0-exec = menu-open-0
menu-2-0-foreground = ${colors.urgent}
menu-2-1 = "  "
menu-2-1-exec = xfce4-settings-manager &
menu-2-2 = "    |"
menu-2-2-exec = pavucontrol &
# 3
menu-3-0 = "  "
menu-3-0-exec = menu-open-0
menu-3-0-foreground = ${colors.urgent}
menu-3-1 = "   "
menu-3-1-exec = i3lock-fancy -p -f Ubuntu &
menu-3-2 = "   "
menu-3-2-exec = systemctl -i reboot
menu-3-3 = "      |"
menu-3-3-exec = systemctl -i poweroff


;;;;;;;;;;;;;;;;;;;;
;; Compton Toggle ;;
;;;;;;;;;;;;;;;;;;;;
[module/compton_toggle]
type = custom/script
tail = true
label = %output%
click-left = toggle.sh -c -t &
exec = toggle.sh -c
format = <label>


;;;;;;;;;;;;;;;
;; KEYBOARD ;;
;;;;;;;;;;;;;;;
[module/keyboard]
type           = internal/xkeyboard
blacklist-0    = scroll lock
format         = <label-layout> <label-indicator>
format-spacing = 0
label-layout   =  %layout%
label-indicator = %name%
label-indicator-padding = 2
label-indicator-background = ${colors.purple}


;;;;;;;;;;;;;;
;; ETHERNET ;;
;;;;;;;;;;;;;;
[module/wired-network]
type = internal/network
interface =
format-connected = <label-connected>
format-disconnected = <label-disconnected>
label-connected =  %local_ip%
format-connected-foreground = ${colors.purple}


;;;;;;;;;;;;;;
;; REDSHIFT ;;
;;;;;;;;;;;;;;
[module/redshift]
type = custom/script
tail = true
exec = toggle.sh -r
label = %output%
click-left = toggle.sh -r -t &


;;;;;;;;;;;;;;;;
;; FILESYSTEM ;;
;;;;;;;;;;;;;;;;
[module/filesystem]
type = internal/fs
format-mounted = <label-mounted>
label-mounted = %mountpoint% : %percentage_free%%
mount-0 = /
interval = 1200
fixed-values = false
spacing = 2
label-mounted-foreground = ${colors.moderate}


;;;;;;;;;
;; MPD ;;
;;;;;;;;;
[module/mpd]
type = internal/mpd
format-online = <bar-progress>  <icon-prev> <icon-stop> <toggle> <icon-next>  <label-song>
format-offline = <label-offline>
bar-progress-format = %{+o +u}%fill%%{-o -u}%indicator%%{+o +u}%empty%%{-u -o}
label-offline = mpd is off
format-online-prefix = " "
icon-play = 
icon-pause = 
icon-stop = 
icon-prev = 
icon-next = 
icon-random = 
icon-repeat = 
toggle-on-foreground =
toggle-off-foreground = #55
bar-progress-width = 35
bar-progress-indicator = █
bar-progress-fill = █
bar-progress-empty = ▒
bar-progress-empty-font = 2
bar-progress-indicator-font = 2
bar-progress-fill-font = 2
bar-progress-fill-foreground = #bb
bar-progress-empty-foreground = #44
bar-progress-indicator-foreground = #A85659


;;;;;;;;;;
;; WIFI ;;
;;;;;;;;;;
[module/wireless-network]
type = internal/network
interface =

format-connected = <ramp-signal>  <label-connected>
format-packetloss = <animation-packetloss>
label-connected = %local_ip%
ramp-signal-0 = 
ramp-signal-1 = 
ramp-signal-2 = 
ramp-signal-3 = 
ramp-signal-4 = 
ramp-signal-5 = 
ramp-signal-0-foreground = ${colors.urgent}
ramp-signal-1-foreground = ${colors.purple}
ramp-signal-2-foreground = ${colors.moderate}
ramp-signal-3-foreground = ${colors.moderate}
ramp-signal-4-foreground = ${colors.blue}
ramp-signal-5-foreground = ${colors.blue}
animation-packetloss-0 = ⚠
animation-packetloss-1 = !
animation-packetloss-0-foreground = ${colors.moderate}
animation-packetloss-1-foreground = ${colors.urgent}
animation-packetloss-framerate = 500


;;;;;;;;;;;;;;;;
;; VOLUME BAR ;;
;;;;;;;;;;;;;;;;
[module/volume-bar]
type = internal/volume
bar-volume-font = 2
bar-volume-width = 20
format-volume = <label-volume><bar-volume>
label-volume = "  "
label-muted = "   mute"
label-volume-foreground = #B6C2E7
format-muted-foreground = #E76BB4
bar-volume-foreground-0 = #92A3F7
bar-volume-foreground-1 = #92A3F7
bar-volume-foreground-2 = #6BB3E7
bar-volume-foreground-3 = #6BB3E7
bar-volume-foreground-4 = #6BB3E7
bar-volume-foreground-5 = #6BE7D8
bar-volume-foreground-6 = #6BE7D8
bar-volume-gradient = true
bar-volume-indicator = |
bar-volume-fill = •
bar-volume-empty = ·
bar-volume-empty-foreground = #666666
