2019-01-31 09:41:03 +01:00
|
|
|
#+TITLE: Polybar Configuration
|
|
|
|
#+PROPERTY: header-args+ :comments both
|
|
|
|
#+PROPERTY: header-args+ :mkdirp yes
|
|
|
|
#+PROPERTY: header-args+ :tangle ~/.config/polybar/config
|
|
|
|
|
|
|
|
* Colors
|
|
|
|
#+begin_src conf
|
|
|
|
[colors]
|
|
|
|
base00 = ${xrdb:color0:#000000}
|
|
|
|
base01 = ${xrdb:color10:#000000}
|
|
|
|
base02 = ${xrdb:color11:#000000}
|
|
|
|
base03 = ${xrdb:color8:#000000}
|
|
|
|
base04 = ${xrdb:color12:#000000}
|
|
|
|
base05 = ${xrdb:color7:#000000}
|
|
|
|
base06 = ${xrdb:color13:#000000}
|
|
|
|
base07 = ${xrdb:color15:#000000}
|
|
|
|
base08 = ${xrdb:color1:#000000}
|
|
|
|
base09 = ${xrdb:color9:#000000}
|
|
|
|
base0A = ${xrdb:color3:#000000}
|
|
|
|
base0B = ${xrdb:color2:#000000}
|
|
|
|
base0C = ${xrdb:color6:#000000}
|
|
|
|
base0D = ${xrdb:color4:#000000}
|
|
|
|
base0E = ${xrdb:color5:#000000}
|
|
|
|
base0F = ${xrdb:color14:#000000}
|
|
|
|
|
|
|
|
; based on http://chriskempson.com/projects/base16/
|
|
|
|
background = ${colors.base00}
|
|
|
|
background-light = ${colors.base01}
|
|
|
|
background-selection = ${colors.base02}
|
|
|
|
comments = ${colors.base03}
|
|
|
|
foreground-dark = ${colors.base04}
|
|
|
|
foreground = ${colors.base05}
|
|
|
|
foreground-light = ${colors.base06}
|
|
|
|
foreground-light-bis = ${colors.base07}
|
|
|
|
red = ${colors.base08}
|
|
|
|
orange = ${colors.base09}
|
|
|
|
brown = ${colors.base0A}
|
|
|
|
green = ${colors.base0B}
|
|
|
|
turquoise = ${colors.base0C}
|
|
|
|
blue = ${colors.base0D}
|
|
|
|
purple = ${colors.base0E}
|
|
|
|
magenta = ${colors.base0F}
|
|
|
|
black = ${#000000}
|
|
|
|
#+end_src
|
|
|
|
|
|
|
|
* VM
|
|
|
|
#+begin_src conf
|
|
|
|
[global/wm]
|
|
|
|
margin-top = 5
|
|
|
|
margin-bottom = 5
|
|
|
|
#+end_src
|
|
|
|
|
|
|
|
* Top Bar
|
|
|
|
#+BEGIN_SRC conf
|
|
|
|
[bar/top]
|
|
|
|
# monitor = ${env:MONITOR:eDP1}
|
|
|
|
enable-ipc = true
|
|
|
|
override-redirect = false
|
|
|
|
bottom = false
|
|
|
|
fixed-center = true
|
|
|
|
|
|
|
|
width = 100%
|
|
|
|
height = 27
|
|
|
|
radius = 0.0
|
|
|
|
|
|
|
|
background = ${colors.background}
|
|
|
|
foreground = ${colors.foreground}
|
|
|
|
|
|
|
|
line-size = 3
|
|
|
|
|
|
|
|
border-size = 0
|
|
|
|
|
|
|
|
padding-left = 2
|
|
|
|
padding-right = 2
|
|
|
|
|
|
|
|
module-margin-left = 1
|
|
|
|
module-margin-right = 1
|
|
|
|
|
|
|
|
font-0 = SauceCodePro Nerd Font:style=Medium,Regular:pixelsize=10;1
|
|
|
|
font-1 = unifont:fontformat=truetype:size=8:antialias=false;0
|
|
|
|
font-2 = Weather Icons:size=10;1
|
|
|
|
# font-3 = siji:pixelsize=10;1
|
|
|
|
|
|
|
|
# modules-left = mpd pulseaudio
|
|
|
|
# modules-center = i3 xwindow
|
|
|
|
modules-left = i3
|
|
|
|
modules-center = xwindow
|
|
|
|
modules-right = nordvpn unread_mail cpu battery temperature date
|
|
|
|
|
|
|
|
tray-position = right
|
|
|
|
tray-padding = 2
|
|
|
|
#tray-transparent = true
|
|
|
|
#tray-background = #0063ff
|
|
|
|
|
|
|
|
#cursor-click = pointer
|
|
|
|
#cursor-scroll = ns-resize
|
|
|
|
#+END_SRC
|
|
|
|
|
|
|
|
* Bottom Bar
|
|
|
|
#+BEGIN_SRC conf
|
|
|
|
[bar/bottom]
|
|
|
|
# monitor = ${env:MONITOR:eDP1}
|
|
|
|
enable-ipc = true
|
|
|
|
override-redirect = false
|
|
|
|
bottom = true
|
|
|
|
fixed-center = true
|
|
|
|
|
|
|
|
width = 100%
|
|
|
|
height = 27
|
|
|
|
radius = 0.0
|
|
|
|
|
|
|
|
background = ${colors.background}
|
|
|
|
foreground = ${colors.foreground}
|
|
|
|
|
|
|
|
line-size = 3
|
|
|
|
|
|
|
|
border-size = 0
|
|
|
|
|
|
|
|
padding-left = 2
|
|
|
|
padding-right = 2
|
|
|
|
|
|
|
|
module-margin-left = 1
|
|
|
|
module-margin-right = 1
|
|
|
|
|
|
|
|
font-0 = SauceCodePro Nerd Font:style=Medium,Regular:pixelsize=10;1
|
|
|
|
font-1 = unifont:fontformat=truetype:size=8:antialias=false;0
|
|
|
|
font-2 = Weather Icons:size=10;1
|
|
|
|
# font-3 = siji:pixelsize=10;1
|
|
|
|
|
|
|
|
modules-left = mpd pulseaudio
|
|
|
|
# modules-center = xwindow
|
|
|
|
modules-right = screenshot weather emacs caffeine redshift
|
|
|
|
|
|
|
|
# tray-position = right
|
|
|
|
# tray-padding = 2
|
|
|
|
#tray-transparent = true
|
|
|
|
#tray-background = #0063ff
|
|
|
|
|
|
|
|
#cursor-click = pointer
|
|
|
|
#cursor-scroll = ns-resize
|
|
|
|
#+END_SRC
|
|
|
|
|
|
|
|
* Show Windows Title
|
|
|
|
#+BEGIN_SRC conf
|
|
|
|
[module/xwindow]
|
|
|
|
type = internal/xwindow
|
|
|
|
label = %title:0:30:...%
|
|
|
|
#+END_SRC
|
|
|
|
|
|
|
|
* Current Layour of the Keyboard
|
|
|
|
#+BEGIN_SRC conf
|
|
|
|
[module/xkeyboard]
|
|
|
|
type = internal/xkeyboard
|
|
|
|
|
|
|
|
# List of indicators to ignore
|
|
|
|
blacklist-0 = num lock
|
|
|
|
|
|
|
|
|
|
|
|
format = <label-layout>
|
|
|
|
format-prefix = " "
|
|
|
|
format-prefix-foreground = ${colors.foreground}
|
|
|
|
format-prefix-underline = ${colors.background}
|
|
|
|
|
|
|
|
label-layout = %layout%
|
|
|
|
label-layout-underline = ${colors.background}
|
|
|
|
#+END_SRC
|
|
|
|
|
|
|
|
* Mount filesystem and show available space
|
|
|
|
#+BEGIN_SRC conf
|
|
|
|
[module/filesystem]
|
|
|
|
type = internal/fs
|
|
|
|
|
|
|
|
interval = 25
|
|
|
|
|
|
|
|
# List of mountpoints to display
|
|
|
|
mount-0 = /
|
|
|
|
|
|
|
|
label-mounted = %{F#0a81f5}%mountpoint%%{F-}: %percentage_used%%
|
|
|
|
label-unmounted = %mountpoint%
|
|
|
|
label-unmounted-foreground = ${colors.comments}
|
|
|
|
#+END_SRC
|
|
|
|
|
|
|
|
* I3 - Information about workspaces and active one
|
|
|
|
#+BEGIN_SRC conf
|
|
|
|
[module/i3]
|
|
|
|
type = internal/i3
|
|
|
|
|
|
|
|
enable-scroll = false
|
|
|
|
wrapping-scroll = false
|
|
|
|
#+END_SRC
|
|
|
|
|
|
|
|
** TODO - Choose some nice icons
|
|
|
|
#+BEGIN_SRC conf
|
|
|
|
ws-icon-0 = 1;
|
|
|
|
ws-icon-1 = 2;
|
|
|
|
ws-icon-2 = 3;
|
|
|
|
ws-icon-3 = 4;
|
|
|
|
ws-icon-4 = 5;
|
|
|
|
ws-icon-default =
|
|
|
|
#+END_SRC
|
|
|
|
|
|
|
|
#+BEGIN_SRC conf
|
|
|
|
format = <label-state> <label-mode>
|
|
|
|
index-sort = true
|
|
|
|
#+END_SRC
|
|
|
|
|
|
|
|
** Colors
|
|
|
|
#+BEGIN_SRC conf
|
|
|
|
label-mode-foreground = ${colors.foreground}
|
|
|
|
label-mode-background = ${colors.turquoise}
|
|
|
|
label-mode-padding = 1
|
|
|
|
|
|
|
|
# focused = Active workspace on focused monitor
|
|
|
|
label-focused = %icon% %index%
|
|
|
|
label-focused-foreground = ${colors.foreground}
|
|
|
|
label-focused-background = ${colors.background}
|
|
|
|
label-focused-underline = ${colors.turquoise}
|
|
|
|
label-focused-padding = 1
|
|
|
|
|
|
|
|
# unfocused = Inactive workspace on any monitor
|
|
|
|
label-unfocused = %icon% %index%
|
|
|
|
label-unfocused-foreground = ${colors.foreground}
|
|
|
|
label-unfocused-background = ${colors.background}
|
|
|
|
label-unfocused-underline = ${colors.background}
|
|
|
|
label-unfocused-padding = 1
|
|
|
|
|
|
|
|
# visible = Active workspace on unfocused monitor
|
|
|
|
label-visible = %icon% %index%
|
|
|
|
label-visible-background = ${colors.background}
|
|
|
|
label-visible-underline = ${colors.turquoise}
|
|
|
|
label-visible-padding = 1
|
|
|
|
|
|
|
|
# urgent = Workspace with urgency hint set
|
|
|
|
label-urgent = %icon% %index%
|
|
|
|
label-urgent-background = ${colors.red}
|
|
|
|
label-urgent-padding = 1
|
|
|
|
|
|
|
|
# Separator in between workspaces
|
|
|
|
#label-separator = |
|
|
|
|
#+END_SRC
|
|
|
|
|
|
|
|
* Music using MPD
|
|
|
|
#+BEGIN_SRC conf
|
|
|
|
[module/mpd]
|
|
|
|
type = internal/mpd
|
|
|
|
format-online = <icon-prev> <toggle> <icon-next> <icon-repeat> <icon-random> <bar-progress> %{A1:termite -e "ncmpcpp" &:}<label-song>%{A}
|
|
|
|
|
|
|
|
format-online-spacing = 0
|
|
|
|
format-online-padding = 0
|
|
|
|
|
|
|
|
label-offline = mpd is offline
|
|
|
|
format-offline = <label-offline>
|
|
|
|
format-offline-foreground = #777
|
|
|
|
|
|
|
|
label-song = %artist% - %title%
|
|
|
|
label-song-maxlen = 30
|
|
|
|
label-song-ellipsis = true
|
|
|
|
|
|
|
|
icon-prev = 寧
|
|
|
|
icon-stop = 栗
|
|
|
|
icon-play = 契
|
|
|
|
icon-pause =
|
|
|
|
icon-next = 嶺
|
|
|
|
icon-random = 咽
|
|
|
|
icon-repeat = 凌
|
|
|
|
|
|
|
|
# Used to display the state of random/repeat/repeatone/single
|
|
|
|
# Only applies if <icon-[random|repeat|repeatone|single]> is used
|
|
|
|
toggle-on-foreground = ${colors.foreground-light}
|
|
|
|
toggle-off-foreground = ${colors.comments}
|
|
|
|
|
|
|
|
bar-progress-width = 15
|
|
|
|
bar-progress-indicator = |
|
|
|
|
bar-progress-fill = ─
|
|
|
|
bar-progress-empty = ─
|
|
|
|
#+END_SRC
|
|
|
|
|
|
|
|
* Backlight level
|
|
|
|
#+BEGIN_SRC conf
|
|
|
|
[module/xbacklight]
|
|
|
|
type = internal/xbacklight
|
|
|
|
|
|
|
|
format = <ramp>
|
|
|
|
ramp-0 =
|
|
|
|
ramp-1 =
|
|
|
|
ramp-2 =
|
|
|
|
ramp-3 =
|
|
|
|
ramp-4 =
|
|
|
|
ramp-5 =
|
|
|
|
ramp-6 =
|
|
|
|
ramp-7 =
|
|
|
|
ramp-8 =
|
|
|
|
ramp-9 =
|
|
|
|
ramp-10 =
|
|
|
|
ramp-11 =
|
|
|
|
#+END_SRC
|
|
|
|
|
|
|
|
* CPU Usage
|
|
|
|
#+BEGIN_SRC conf
|
|
|
|
[module/cpu]
|
|
|
|
type = internal/cpu
|
|
|
|
interval = 2
|
|
|
|
|
|
|
|
format-prefix-foreground = ${colors.foreground}
|
|
|
|
|
|
|
|
format-underline = ${colors.background}
|
|
|
|
|
|
|
|
label = %{A1:termite -e "htop" &:} %percentage:2%% %{A}
|
|
|
|
#+END_SRC
|
|
|
|
|
|
|
|
* Available Memory
|
|
|
|
#+BEGIN_SRC conf
|
|
|
|
[module/memory]
|
|
|
|
type = internal/memory
|
|
|
|
|
|
|
|
interval = 2
|
|
|
|
|
|
|
|
format-prefix = " "
|
|
|
|
|
|
|
|
format-prefix-foreground = ${colors.foreground-dark}
|
|
|
|
format-underline = #4bffdc
|
|
|
|
|
|
|
|
label = %percentage_used%%
|
|
|
|
#+END_SRC
|
|
|
|
|
|
|
|
* Date
|
|
|
|
#+BEGIN_SRC conf
|
|
|
|
[module/date]
|
|
|
|
type = internal/date
|
|
|
|
interval = 1
|
|
|
|
|
|
|
|
# Open google calendar on left right
|
|
|
|
date = %{A1:qutebrowser https\://calendar.google.com/ &:} %d-%m%{A}
|
|
|
|
date-alt = "%{A1:qutebrowser https\://calendar.google.com/ &:} %d-%m-%Y%{A}"
|
|
|
|
|
|
|
|
time = %H:%M
|
|
|
|
time-alt = %H:%M:%S
|
|
|
|
|
|
|
|
label = %date% %time%
|
|
|
|
#+END_SRC
|
|
|
|
|
|
|
|
* Sound Volume
|
|
|
|
#+BEGIN_SRC conf
|
|
|
|
[module/pulseaudio]
|
|
|
|
type = internal/pulseaudio
|
|
|
|
|
|
|
|
# Open pavucontrol on left right
|
|
|
|
format-volume =%{A1:pavucontrol &:}<label-volume> <bar-volume>%{A}
|
|
|
|
|
|
|
|
label-volume = %percentage%%
|
|
|
|
label-volume-foreground = ${root.foreground}
|
|
|
|
|
|
|
|
label-muted = ﱝ muted
|
|
|
|
|
|
|
|
bar-volume-width = 10
|
|
|
|
bar-volume-foreground-0 = ${colors.green}
|
|
|
|
bar-volume-foreground-1 = ${colors.green}
|
|
|
|
bar-volume-foreground-2 = ${colors.blue}
|
|
|
|
bar-volume-foreground-3 = ${colors.blue}
|
|
|
|
bar-volume-foreground-4 = ${colors.red}
|
|
|
|
bar-volume-foreground-5 = ${colors.red}
|
|
|
|
bar-volume-foreground-6 = ${colors.red}
|
|
|
|
bar-volume-gradient = false
|
|
|
|
bar-volume-indicator = |
|
|
|
|
bar-volume-indicator-font = 2
|
|
|
|
bar-volume-fill = ─
|
|
|
|
bar-volume-fill-font = 2
|
|
|
|
bar-volume-empty = ─
|
|
|
|
bar-volume-empty-font = 2
|
|
|
|
bar-volume-empty-foreground = ${colors.foreground}
|
|
|
|
#+END_SRC
|
|
|
|
|
|
|
|
* Battery
|
|
|
|
#+BEGIN_SRC conf
|
|
|
|
# TODO - open battery manager on click
|
|
|
|
[module/battery]
|
|
|
|
type = internal/battery
|
|
|
|
|
|
|
|
battery = BAT0
|
|
|
|
adapter = ADP1
|
|
|
|
full-at = 95
|
|
|
|
|
|
|
|
format-charging = <ramp-capacity> <label-charging>
|
|
|
|
format-charging-underline = ${colors.blue}
|
|
|
|
|
|
|
|
format-discharging = <ramp-capacity> <label-discharging>
|
|
|
|
format-discharging-underline = ${colors.red}
|
|
|
|
|
|
|
|
format-full-prefix = " "
|
|
|
|
format-full-prefix-foreground = ${colors.foreground}
|
|
|
|
format-full-underline = ${colors.background}
|
|
|
|
|
|
|
|
ramp-capacity-0 =
|
|
|
|
ramp-capacity-1 =
|
|
|
|
ramp-capacity-2 =
|
|
|
|
ramp-capacity-3 =
|
|
|
|
ramp-capacity-4 =
|
|
|
|
ramp-capacity-foreground = ${colors.foreground}
|
|
|
|
|
|
|
|
animation-charging-0 =
|
|
|
|
animation-charging-1 =
|
|
|
|
animation-charging-2 =
|
|
|
|
animation-charging-3 =
|
|
|
|
animation-charging-4 =
|
|
|
|
animation-charging-foreground = ${colors.foreground}
|
|
|
|
animation-charging-framerate = 750
|
|
|
|
|
|
|
|
animation-discharging-0 =
|
|
|
|
animation-discharging-1 =
|
|
|
|
animation-discharging-2 =
|
|
|
|
animation-discharging-3 =
|
|
|
|
animation-discharging-4 =
|
|
|
|
animation-discharging-foreground = ${colors.foreground}
|
|
|
|
animation-discharging-framerate = 750
|
|
|
|
#+END_SRC
|
|
|
|
|
|
|
|
* TODO Temperature
|
|
|
|
- [ ] Open temperature manager on click
|
|
|
|
|
|
|
|
#+BEGIN_SRC conf
|
|
|
|
[module/temperature]
|
|
|
|
type = internal/temperature
|
|
|
|
|
|
|
|
interval = 5
|
|
|
|
thermal-zone = 0
|
|
|
|
warn-temperature = 70
|
|
|
|
;; Temperature off one cpu core
|
|
|
|
hwmon-path = /sys/devices/platform/coretemp.0/hwmon/hwmon1/temp2_input
|
|
|
|
|
|
|
|
format = <ramp> <label>
|
|
|
|
format-underline = ${colors.background}
|
|
|
|
format-warn = <ramp> <label-warn>
|
|
|
|
format-warn-underline = ${colors.red}
|
|
|
|
|
|
|
|
label = %temperature-c%
|
|
|
|
label-warn = %temperature-c%
|
|
|
|
label-warn-foreground = ${colors.red}
|
|
|
|
|
|
|
|
ramp-0 =
|
|
|
|
ramp-1 =
|
|
|
|
ramp-2 =
|
|
|
|
ramp-3 =
|
|
|
|
ramp-4 =
|
|
|
|
ramp-foreground = ${colors.foreground}
|
|
|
|
#+END_SRC
|
|
|
|
|
|
|
|
* Power Menu
|
|
|
|
#+BEGIN_SRC conf
|
|
|
|
[module/powermenu]
|
|
|
|
type = custom/menu
|
|
|
|
|
|
|
|
expand-right = true
|
|
|
|
|
|
|
|
format-spacing = 1
|
|
|
|
label-open =
|
|
|
|
label-open-foreground = ${colors.blue}
|
|
|
|
label-close = cancel
|
|
|
|
label-close-foreground = ${colors.blue}
|
|
|
|
label-separator = |
|
|
|
|
label-separator-foreground = ${colors.foreground}
|
|
|
|
|
|
|
|
menu-0-0 = reboot
|
|
|
|
menu-0-0-exec = menu-open-1
|
|
|
|
menu-0-1 = power off
|
|
|
|
menu-0-1-exec = menu-open-2
|
|
|
|
|
|
|
|
menu-1-0 = cancel
|
|
|
|
menu-1-0-exec = menu-open-0
|
|
|
|
menu-1-1 = reboot
|
|
|
|
menu-1-1-exec = sudo reboot
|
|
|
|
|
|
|
|
menu-2-0 = power off
|
|
|
|
menu-2-0-exec = sudo poweroff
|
|
|
|
menu-2-1 = cancel
|
|
|
|
menu-2-1-exec = menu-open-0
|
|
|
|
#+END_SRC
|
|
|
|
|
|
|
|
* Settings
|
|
|
|
#+BEGIN_SRC conf
|
|
|
|
[settings]
|
|
|
|
screenchange-reload = true
|
|
|
|
#compositing-background = xor
|
|
|
|
#compositing-background = screen
|
|
|
|
#compositing-foreground = source
|
|
|
|
#compositing-border = over
|
|
|
|
#+END_SRC
|
|
|
|
|
|
|
|
* TODO Unread Mails
|
|
|
|
- [ ] Add custom color when having new email
|
|
|
|
|
|
|
|
#+BEGIN_SRC conf
|
|
|
|
[module/unread_mail]
|
|
|
|
type = custom/script
|
|
|
|
|
|
|
|
label-font = 2
|
|
|
|
format-underline = ${colors.background}
|
|
|
|
click-left = termite -e "tmuxinator start neomutt" &
|
|
|
|
format = <label>
|
|
|
|
exec = ~/.config/polybar/scripts/unread_mails.sh
|
|
|
|
interval = 1
|
|
|
|
#+END_SRC
|
|
|
|
|
|
|
|
* Redshift
|
|
|
|
#+BEGIN_SRC conf
|
|
|
|
[module/redshift]
|
|
|
|
type = custom/script
|
|
|
|
|
|
|
|
label-font = 2
|
|
|
|
format-underline = ${colors.background}
|
|
|
|
click-left = ~/.config/polybar/scripts/redshift.sh toggle
|
|
|
|
format = <label>
|
|
|
|
exec = ~/.config/polybar/scripts/redshift.sh
|
|
|
|
interval = 1
|
|
|
|
#+END_SRC
|
|
|
|
|
|
|
|
* TODO Calendar
|
|
|
|
#+begin_src conf
|
|
|
|
[module/popup-calendar]
|
|
|
|
type = custom/script
|
|
|
|
exec = ~/scripts/popup-calendar.sh
|
|
|
|
interval = 5
|
|
|
|
click-left = ~/scripts/popup-calendar.sh --popup
|
|
|
|
#+end_src
|
|
|
|
* TODO Emacs Server
|
|
|
|
#+begin_src conf
|
|
|
|
[module/emacs]
|
|
|
|
type = custom/script
|
|
|
|
|
|
|
|
label-font = 2
|
|
|
|
format-underline = ${colors.background}
|
|
|
|
click-left = ~/scripts/emacsclient.sh &
|
|
|
|
format = <label>
|
|
|
|
exec = ~/.config/polybar/scripts/emacs.sh
|
|
|
|
interval = 1
|
|
|
|
#+end_src
|
|
|
|
|
|
|
|
** Emacs Server Scripts
|
|
|
|
:PROPERTIES:
|
|
|
|
:header-args: :tangle ~/.config/polybar/scripts/emacs.sh
|
|
|
|
:header-args+: :comments both :mkdirp yes
|
|
|
|
:header-args+: :shebang "#!/usr/bin/env bash"
|
|
|
|
:END:
|
|
|
|
|
|
|
|
#+BEGIN_SRC bash
|
|
|
|
if test -e "/tmp/emacs1000/server" || test -e "~/.emacs.d/server"; then
|
|
|
|
echo "%{F#859900}%{F-}";
|
|
|
|
else
|
|
|
|
echo "";
|
|
|
|
fi
|
|
|
|
#+END_SRC
|
|
|
|
|
2019-01-31 09:41:20 +01:00
|
|
|
* NordVPN
|
|
|
|
|
2019-01-31 09:41:03 +01:00
|
|
|
#+BEGIN_SRC conf
|
|
|
|
[module/nordvpn]
|
|
|
|
type = custom/script
|
|
|
|
|
|
|
|
format-underline = ${colors.background}
|
|
|
|
click-left = ~/.config/polybar/scripts/nordvpn-toggle.sh
|
|
|
|
format = <label>
|
|
|
|
exec = ~/.config/polybar/scripts/nordvpn.sh
|
|
|
|
interval = 5
|
|
|
|
#+END_SRC
|
|
|
|
|
|
|
|
** Nordvpn Toggle script
|
|
|
|
:PROPERTIES:
|
|
|
|
:header-args: :tangle ~/.config/polybar/scripts/nordvpn-toggle.sh
|
|
|
|
:header-args+: :comments both :mkdirp yes
|
|
|
|
:header-args+: :shebang "#!/usr/bin/env bash"
|
|
|
|
:END:
|
|
|
|
#+BEGIN_SRC bash
|
|
|
|
vpnstatus=`nordvpn status`;
|
|
|
|
|
|
|
|
if [[ ${vpnstatus} == *"Disconnected"* ]]; then
|
|
|
|
nordvpn connect
|
|
|
|
else
|
|
|
|
nordvpn disconnect
|
|
|
|
fi
|
|
|
|
#+END_SRC
|
|
|
|
|
|
|
|
** Nordvpn Status script
|
|
|
|
:PROPERTIES:
|
|
|
|
:header-args: :tangle ~/.config/polybar/scripts/nordvpn.sh
|
|
|
|
:header-args+: :comments both :mkdirp yes
|
|
|
|
:header-args+: :shebang "#!/usr/bin/env bash"
|
|
|
|
:END:
|
|
|
|
#+BEGIN_SRC bash
|
|
|
|
vpnstatus=`nordvpn status`;
|
|
|
|
|
|
|
|
if [[ ${vpnstatus} == *"Disconnected"* ]]; then
|
|
|
|
echo "";
|
|
|
|
else
|
|
|
|
country=`echo -e $vpnstatus | sed 's/^.*Country: \(\w*\) .*$/\1/'`
|
|
|
|
echo "%{F#859900}%{F-} $country";
|
|
|
|
fi
|
|
|
|
#+END_SRC
|
|
|
|
|
|
|
|
* TODO Caffeine
|
|
|
|
#+BEGIN_SRC conf
|
|
|
|
[module/caffeine]
|
|
|
|
type = custom/script
|
|
|
|
|
|
|
|
label-font = 2
|
|
|
|
format-underline = ${colors.background}
|
|
|
|
click-left = xautolock -disable && notify-send "Lock Disabled"
|
|
|
|
click-right = xautolock -enable && notify-send "Lock Enabled"
|
|
|
|
format = <label>
|
|
|
|
exec = echo -e "\uf0f4"
|
|
|
|
interval = 1
|
|
|
|
#+END_SRC
|
|
|
|
|
|
|
|
* Side panel config
|
|
|
|
#+BEGIN_SRC conf
|
|
|
|
# [bar/panel]
|
|
|
|
# monitor = ${env:MONITOR:eDP1}
|
|
|
|
# enable-ipc = true
|
|
|
|
# override-redirect = true
|
|
|
|
# bottom = false
|
|
|
|
#
|
|
|
|
# width = 30%
|
|
|
|
# height = 600 # 1080p - bar height - 2*border width
|
|
|
|
# offset-x = 70%
|
|
|
|
# offset-y = 27
|
|
|
|
# fixed-center = true
|
|
|
|
# spacing = 1
|
|
|
|
# module-margin-left = 2
|
|
|
|
# module-margin-right = 2
|
|
|
|
#
|
|
|
|
# border-size = 2
|
|
|
|
# border-color = ${colors.turquoise}
|
|
|
|
#
|
|
|
|
# background = ${colors.background}
|
|
|
|
# foreground = ${colors.foreground}
|
|
|
|
#
|
|
|
|
# font-0 = SauceCodePro Nerd Font:style=Medium,Regular:pixelsize=10;1
|
|
|
|
# font-1 = unifont:fontformat=truetype:size=8:antialias=false;0
|
|
|
|
# font-2 = siji:pixelsize=10;1
|
|
|
|
#
|
|
|
|
# modules-center = lock logout hibernate reboot shutdown screenshot
|
|
|
|
#+END_SRC
|
|
|
|
|
|
|
|
* TODO Weather
|
|
|
|
https://github.com/x70b1/polybar-scripts/tree/master/polybar-scripts/openweathermap-fullfeatured
|
|
|
|
|
|
|
|
#+begin_src conf
|
|
|
|
[module/weather]
|
|
|
|
type = custom/script
|
|
|
|
exec = ~/.config/polybar/scripts/weather.sh
|
|
|
|
interval = 600
|
|
|
|
label-font = 3
|
|
|
|
#+end_src
|
|
|
|
|
|
|
|
** TODO Add action when cliking on it => open webpage with meteo
|
|
|
|
|
|
|
|
* TODO Network
|
|
|
|
#+begin_src conf
|
|
|
|
[module/network]
|
|
|
|
type = internal/network
|
|
|
|
interface = wlp3s0
|
|
|
|
|
|
|
|
; Seconds to sleep between updates
|
|
|
|
; Default: 1
|
|
|
|
interval = 3.0
|
|
|
|
|
|
|
|
; ; Test connectivity every Nth update
|
|
|
|
; ; A value of 0 disables the feature
|
|
|
|
; ; NOTE: Experimental (needs more testing)
|
|
|
|
; ; Default: 0
|
|
|
|
; ;ping-interval = 3
|
|
|
|
|
|
|
|
; ; @deprecated: Define min width using token specifiers (%downspeed:min% and %upspeed:min%)
|
|
|
|
; ; Minimum output width of upload/download rate
|
|
|
|
; ; Default: 3
|
|
|
|
; udspeed-minwidth = 5
|
|
|
|
|
|
|
|
; ; Accumulate values from all interfaces
|
|
|
|
; ; when querying for up/downspeed rate
|
|
|
|
; ; Default: false
|
|
|
|
; accumulate-stats = true
|
|
|
|
|
|
|
|
; ; Consider an `UNKNOWN` interface state as up.
|
|
|
|
; ; Some devices have an unknown state, even when they're running
|
|
|
|
; ; Default: false
|
|
|
|
; unknown-as-up = true
|
|
|
|
|
|
|
|
; ; Available tags:
|
|
|
|
; ; <label-connected> (default)
|
|
|
|
; ; <ramp-signal>
|
|
|
|
format-connected-prefix = " "
|
|
|
|
format-connected = <label-connected>
|
|
|
|
|
|
|
|
; ; Available tags:
|
|
|
|
; ; <label-disconnected> (default)
|
|
|
|
; format-disconnected = <label-disconnected>
|
|
|
|
|
|
|
|
; ; Available tags:
|
|
|
|
; ; <label-connected> (default)
|
|
|
|
; ; <label-packetloss>
|
|
|
|
; ; <animation-packetloss>
|
|
|
|
; format-packetloss = <animation-packetloss> <label-connected>
|
|
|
|
|
|
|
|
; ; Available tokens:
|
|
|
|
; ; %ifname% [wireless+wired]
|
|
|
|
; ; %local_ip% [wireless+wired]
|
|
|
|
; ; %local_ip6% [wireless+wired]
|
|
|
|
; ; %essid% [wireless]
|
|
|
|
; ; %signal% [wireless]
|
|
|
|
; ; %upspeed% [wireless+wired]
|
|
|
|
; ; %downspeed% [wireless+wired]
|
|
|
|
; ; %linkspeed% [wired]
|
|
|
|
; ; Default: %ifname% %local_ip%
|
|
|
|
label-connected = %essid%
|
|
|
|
; label-connected-foreground = #eefafafa
|
|
|
|
|
|
|
|
; ; Available tokens:
|
|
|
|
; ; %ifname% [wireless+wired]
|
|
|
|
; ; Default: (none)
|
|
|
|
; label-disconnected = not connected
|
|
|
|
; label-disconnected-foreground = #66ffffff
|
|
|
|
|
|
|
|
; ; Available tokens:
|
|
|
|
; ; %ifname% [wireless+wired]
|
|
|
|
; ; %local_ip% [wireless+wired]
|
|
|
|
; ; %local_ip6% [wireless+wired]
|
|
|
|
; ; %essid% [wireless]
|
|
|
|
; ; %signal% [wireless]
|
|
|
|
; ; %linkspeed% [wired]
|
|
|
|
; ; Default: (none)
|
|
|
|
; ;label-packetloss = %essid%
|
|
|
|
; ;label-packetloss-foreground = #eefafafa
|
|
|
|
|
|
|
|
; ; Only applies if <ramp-signal> is used
|
|
|
|
; ramp-signal-0 = 😱
|
|
|
|
; ramp-signal-1 = 😠
|
|
|
|
; ramp-signal-2 = 😒
|
|
|
|
; ramp-signal-3 = 😊
|
|
|
|
; ramp-signal-4 = 😃
|
|
|
|
; ramp-signal-5 = 😈
|
|
|
|
|
|
|
|
; ; Only applies if <animation-packetloss> is used
|
|
|
|
; animation-packetloss-0 = ⚠
|
|
|
|
; animation-packetloss-0-foreground = #ffa64c
|
|
|
|
; animation-packetloss-1 = 📶
|
|
|
|
; animation-packetloss-1-foreground = #000000
|
|
|
|
; ; Framerate in milliseconds
|
|
|
|
; animation-packetloss-framerate = 500
|
|
|
|
#+end_src
|
|
|
|
|
|
|
|
* Option Menu
|
|
|
|
#+BEGIN_SRC conf
|
|
|
|
[module/option_menu]
|
|
|
|
type = custom/ipc
|
|
|
|
|
|
|
|
hook-0 = ~/.i3/scripts/polybar_wrapper.sh options_icon
|
|
|
|
initial = 1
|
|
|
|
click-left = ~/.i3/scripts/polybar_wrapper.sh options
|
|
|
|
#+END_SRC
|
|
|
|
|
|
|
|
* Logout
|
|
|
|
#+BEGIN_SRC conf
|
|
|
|
[module/logout]
|
|
|
|
type = custom/text
|
|
|
|
content = ""
|
|
|
|
click-left = i3exit switch_user
|
|
|
|
#+END_SRC
|
|
|
|
|
|
|
|
* Hibernate
|
|
|
|
#+BEGIN_SRC conf
|
|
|
|
[module/hibernate]
|
|
|
|
type = custom/text
|
|
|
|
content = ""
|
|
|
|
click-left = i3exit hibernate
|
|
|
|
#+END_SRC
|
|
|
|
|
|
|
|
* Shutdown
|
|
|
|
#+BEGIN_SRC conf
|
|
|
|
[module/shutdown]
|
|
|
|
type = custom/text
|
|
|
|
content = ""
|
|
|
|
click-left = i3exit shutdown
|
|
|
|
#+END_SRC
|
|
|
|
|
|
|
|
* Reboot
|
|
|
|
#+BEGIN_SRC conf
|
|
|
|
[module/reboot]
|
|
|
|
type = custom/text
|
|
|
|
content = ""
|
|
|
|
click-left = i3exit logout
|
|
|
|
#+END_SRC
|
|
|
|
|
|
|
|
* Lock
|
|
|
|
#+BEGIN_SRC conf
|
|
|
|
[module/lock]
|
|
|
|
type = custom/text
|
|
|
|
content = ""
|
|
|
|
click-left = blurlock
|
|
|
|
#+END_SRC
|
|
|
|
|
|
|
|
* TODO Screenshot
|
|
|
|
First it blocking the polybar, then the right click is not working
|
|
|
|
#+BEGIN_SRC conf
|
|
|
|
[module/screenshot]
|
|
|
|
type = custom/text
|
|
|
|
content = ""
|
|
|
|
click-left = scrot -e 'feh $f -x' --delay 1
|
|
|
|
click-right = scrot -s -e 'feh $f -x'
|
|
|
|
#+END_SRC
|