==========================================================
;
;
;   ██████╗  ██████╗ ██╗  ██╗   ██╗██████╗  █████╗ ██████╗
;   ██╔══██╗██╔═══██╗██║  ╚██╗ ██╔╝██╔══██╗██╔══██╗██╔══██╗
;   ██████╔╝██║   ██║██║   ╚████╔╝ ██████╔╝███████║██████╔╝
;   ██╔═══╝ ██║   ██║██║    ╚██╔╝  ██╔══██╗██╔══██║██╔══██╗
;   ██║     ╚██████╔╝███████╗██║   ██████╔╝██║  ██║██║  ██║
;   ╚═╝      ╚═════╝ ╚══════╝╚═╝   ╚═════╝ ╚═╝  ╚═╝╚═╝  ╚═╝
;
;
;   To learn more about how to configure Polybar
;   go to https://github.com/polybar/polybar
;
;   The README contains a lot of information
;
;==========================================================

[colors]

background = ${xrdb:background:#252839}
;background = ${colors.bg}
color1 = ${xrdb:color1:#FFFFFF}
color2 = ${xrdb:color4:#ff5555}
color3 = ${xrdb:color7:#ff5555}
;; Active Colors
bg = #252F35
fg = #1C1E20
fg-alt = #C4C7C5
mf = #C4C7C5
ac = #B4BC67
 
;; Bars
bn = #308634
bm = #E57C46
bd = #E24C49

trans = #00000000
white = #FFFFFF
black = #000000

;; Colors

red = #FB2116
pink = #EC6798
purple = #BE78D1
blue = #75A4CD
cyan = #00C7DF
teal = #00B19F
green = #61C766
lime = #B9C244
yellow = #EBD369
amber = #EDB83F
orange = #E57C46
brown = #AC8476
grey = #8C8C8C
indigo = #6C77BB
blue-gray = #6D8895
maroon =  #D71655
limou = #99CC99
flame = #EC0101

;  _                    
; | |__   __ _ _ __ ___ 
; | '_ \ / _` | '__/ __|
; | |_) | (_| | |  \__ \
; |_.__/ \__,_|_|  |___/

[bar/bar]
enable-ipc=true
height = 20
width = 100%
bottom = true

background = ${colors.background}
;background = ${colors.primary}
foreground = ${colors.color1}

line-size = 2

font-0=Iosevka Nerd Font:style=medium:size=9;3
font-1=Font Awesome 5 Free Solid:size=8;3
font-2=Font Awesome 5 Free Regular:size=8;3
font-3=Font Awesome 5 Brands:size=8;3
font-4=font\-logos:size=9;3
font-5=IPAGothic:size=8:antialias=true;3

modules-left = i3 mpd
; Spotify (scripts at github.com/dietervanhoof/polybar-spotify-controls)
;modules-center = previous playpause next spotify
; Mpd
modules-center = 
modules-right = temperature cpu memory wlan pulseaudio time

scroll-up = i3wm-wsnext
scroll-down = i3wm-wsprev

wm-restack = i3
override-redirect = false

[bar/main]
;##########################################
;#               TRAY                     #
;##########################################
tray-detached = true
tray-position = right
tray-maxsize = 10
tray-background = ${color.indigo}
tray-offset-x = 0
tray-offset-y = 0
tray-padding = 0
tray-scale = 1.0

;                      _       _           
;  _ __ ___   ___   __| |_   _| | ___  ___ 
; | '_ ` _ \ / _ \ / _` | | | | |/ _ \/ __|
; | | | | | | (_) | (_| | |_| | |  __/\__ \
; |_| |_| |_|\___/ \__,_|\__,_|_|\___||___/
                                         
[module/launcher]
type=custom/text
content = 
content-font=5
content-foreground=${colors.color1}
content-padding=2
click-left=launcher
;The script above is to be found here : https://github.com/ngynLk/scripts

[module/xwindow]
type = internal/xwindow
label = %title:0:40:...%
label-color1 = ${colors.color1} 
label-background = ${colors.background} 
label-padding = 2

[module/i3]
type = internal/i3
format = <label-state> <label-mode>
format-foreground = ${colors.color3}
format-background = ${colors.bg}
;format-padding = 1 
index-sort = true

enable-click = true
reverse-scroll = false

;label-focused = %index%
;label-focused-overline = ${colors.white}
;label-focused-underline = ${colors.fg-alt}
label-focused-padding = 1
label-focused-foreground = ${colors.bg}
label-focused-background = ${colors.indigo}

;label-unfocused = %index%
;label-unfocused-overline = ${colors.color3}
label-unfocused-background = ${colors.background}
label-unfocused-foreground = ${colors.white}
label-unfocused-padding = 1

label-urgent = 
label-urgent-padding = 2
label-urgent-foreground = ${colors.background}
label-urgent-background = ${colors.color1}
label-urgent-overline = ${colors.background}
label-urgent-font = 2

;ws-icon-0 = 1;
;ws-icon-1 = 2;
;ws-icon-2 = 3;
;ws-icon-9 = 10;
;ws-icon-default = 

[module/power]
type = custom/text
content = 
content-foreground = ${colors.color3}
click-left = powermenu
;The script above is to be found here : https://github.com/ngynLk/scripts
content-padding = 2

[module/mpd]
type = internal/mpd
host = 127.0.0.1
port = 6600
;format-online = <icon-prev> <toggle> <icon-next> <label-song>
format-online =  <label-song>
format-online-padding = 3
format-online-foreground = ${colors.maroon}
format-online-background = ${colors.background}
label-song-foreground = ${colors.white}
label-song-background = ${colors.background}
label-song-padding = 1
label-time-foreground = ${colors.maroon}
label-time-background = ${colors.background}
label-time-padding = 1
icon-music-foreground = ${colors.white}

format-offline = <label-offline>
label-offline =  offline
format-offline-padding = 1
format-offline-foreground = ${colors.color2}
format-offline-background = ${colors.background}

bar-progress-width = 35
bar-progress-indicator = |
bar-progress-fill = ─
bar-progress-empty = ─

icon-song = 
icon-prev = 
icon-stop = 
icon-play = 
icon-pause = 
icon-next = 
;icon-prev = 
;icon-stop = 
;icon-play = 
;icon-pause = 
;icon-next = 

label-song-maxlen = 75
label-song-ellipsis = true

[module/cpu]
type = internal/cpu
interval = 2
format-prefix = " "
format-prefix-foreground = ${colors.pink}
format-padding = 2
format-foreground = ${colors.white}
;format-background = ${colors.yellow}
label = %percentage%%

[module/memory]
type = internal/memory
interval = 2
format-padding = 2
format-prefix = " " 
format-prefix-foreground = ${colors.blue}
format-foreground = ${colors.white}
;format-background = ${colors.white}
label = %percentage_used%%

[module/wlan]
type = internal/network
interface = wlp2s0
interval = 1.0

format-connected = <ramp-signal> <label-connected>
format-connected-padding = 1
label-connected = %essid%
;label-connected-color2 = ${colors.color2}
label-connected-foreground = ${colors.white}
;label-connected-padding = 2

;format-disconnected =
format-disconnected = <label-disconnected>
label-disconnected =  disconnected
;label-disconnected-background = ${colors.color1}

ramp-signal-0 = " "
ramp-signal-1 = " "
ramp-signal-2 = " "
ramp-signal-3 = " "
ramp-signal-4 = " "
ramp-signal-foreground = ${colors.purple}

[module/eth]
type = internal/network
interface = eno1
interval = 3.0

format-connected-prefix = " "
format-connected-prefix-color1 = ${colors.color3-alt}
label-connected = %local_ip%

format-disconnected =
;format-disconnected = <label-disconnected>
;format-disconnected-underline = ${self.format-connected-underline}
;label-disconnected = %ifname% disconnected
;label-disconnected-color1 = ${colors.color1-alt}

[module/time]
type = internal/date
interval = 10
format-margin = 1

time = "%H:%M"
date = "%d %b"

label =  %date%,%time%
label-foreground = ${colors.yellow}
label-background = ${colors.background}
label-padding = 1


[module/pulseaudio]
type = internal/pulseaudio

format-margin = 1
format-volume = <ramp-volume><label-volume>
label-volume = %percentage:3:3%%
label-volume-foreground = ${colors.white}
;format-volume-foreground = ${colors.limou}
format-volume-background = ${colors.background}
format-volume-padding = 2
use-ui-max = false
interval = 5

;ramp-volume-0 =""
;ramp-volume-1 =""
;ramp-volume-2 =""

ramp-volume-0 =""
ramp-volume-1 =""
ramp-volume-2 =""
ramp-volume-foreground = ${colors.limou}

label-muted = ""   
label-muted-background = ${colors.background}
label-muted-foreground = ${colors.green}
label-muted-padding = 2

[module/temperature]
type = internal/temperature
thermal-zone = 0
warn-temperature = 65

format = <ramp><label>
format-padding = 1
format-warn =<label-warn>

label = %temperature-c%
label-foreground = ${colors.white}
label-warn =  %temperature-c%
label-warn-foreground = ${colors.flame}
label-padding = 1 
label-warn-padding = 2

ramp-0 = ""
ramp-1 = ""
ramp-2 = ""
ramp-foreground = ${colors.orange}

[module/powermenu]
type = custom/menu

expand-right = true

format-spacing = 1
format-margin = 0
format-background = ${colors.background}
format-foreground = ${colors.color3}
format-padding = 1

label-open = 
label-close = 
label-separator = |

; reboot
menu-0-1 = 
menu-0-1-exec = menu-open-2
; poweroff
menu-0-2 = 
menu-0-2-exec = menu-open-3
; logout
menu-0-0 = 
menu-0-0-exec = menu-open-1

menu-2-0 = 
menu-2-0-exec = reboot

menu-3-0 = 
menu-3-0-exec = poweroff

menu-1-0 = 
menu-1-0-exec = i3-msg exit || openbox --exit

;Spotify modules

[module/previous]
type = custom/script
format-font = 2
format-padding = 2
format-foreground = ${colors.color2}
exec = echo ""
exec-if = "pgrep spotify"
click-left = "dbus-send --print-reply --dest=org.mpris.MediaPlayer2.spotify /org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.Previous"


[module/next]
type = custom/script
format-font = 2
format-padding = 1
format-foreground = ${colors.color2}
exec = echo ""
exec-if = "pgrep spotify"
click-left = "dbus-send --print-reply --dest=org.mpris.MediaPlayer2.spotify /org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.Next"

[module/playpause]
type = custom/ipc
format-font = 2
format-padding = 0
format-foreground = ${colors.color2}
; Default
hook-0 = echo ""
; Playing
hook-1 = echo ""
; Paused
hook-2 = echo ""
initial = 2
click-left = "dbus-send --print-reply --dest=org.mpris.MediaPlayer2.spotify /org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.PlayPause"


[module/spotify]
type = custom/ipc
format-foreground = ${colors.color2}
; Default
hook-0 = echo ""
; Playing/paused show song name and artist
hook-1 = python3 ~/.scripts/spotify/spotify_status.py
initial = 2
click-left = i3-msg '[class="Spotify"] focus'

[settings]
screenchange-reload = true
;compositing-background = xor
;compositing-background = screen
;compositing-foreground = source
;compositing-border = over
;pseudo-transparency = true

[global/wm]
margin-top = 0
margin-bottom = 0

; vim:ft=dosini
                      
