aboutsummaryrefslogtreecommitdiffstats
path: root/polybar
diff options
context:
space:
mode:
authorYann Herklotz <ymherklotz@gmail.com>2018-07-29 23:51:37 +0100
committerYann Herklotz <ymherklotz@gmail.com>2018-07-29 23:51:37 +0100
commita1f1d81abd757322ebeb6b6cbfb150ea00eb04af (patch)
treea9ab42e12a2fb3afff84daa985a75c80720ce327 /polybar
parente09dbe56f95c7ba995cef7fad4b80b0495da0409 (diff)
downloaddotfiles-a1f1d81abd757322ebeb6b6cbfb150ea00eb04af.tar.gz
dotfiles-a1f1d81abd757322ebeb6b6cbfb150ea00eb04af.zip
Adding polybar configuration to i3
Diffstat (limited to 'polybar')
-rw-r--r--polybar/config536
-rwxr-xr-xpolybar/launch.sh11
2 files changed, 342 insertions, 205 deletions
diff --git a/polybar/config b/polybar/config
index aa6b581..01f64d5 100644
--- a/polybar/config
+++ b/polybar/config
@@ -1,227 +1,353 @@
-[bar/mybar]
-; Use the following command to list available outputs:
-; If unspecified, the application will pick the first one it finds.
-; $ xrandr -q | grep " connected" | cut -d ' ' -f1
-monitor =
+;=====================================================
+;
+; To learn more about how to configure Polybar
+; go to https://github.com/jaagr/polybar
+;
+; The README contains alot of information
+;
+;=====================================================
+
+[colors]
+background = ${xrdb:background:#222}
+background-alt = ${xrdb:color8:#444}
+foreground = ${xrdb:foreground:#fff}
+foreground-alt = ${xrdb:color15:#555}
+primary = ${xrdb:color4:#ffb52a}
+secondary = ${xrdb:color5:#e60053}
+alert = ${xrdb:color1:#bd2c40}
+
+[bar/main]
+;monitor = ${env:MONITOR:HDMI-1}
+width = 100%
+height = 27
+;offset-x = 1%
+;offset-y = 1%
+radius = 0
+fixed-center = true
-; Use the specified monitor as a fallback if the main one is not found.
-monitor-fallback =
+background = ${colors.background}
+foreground = ${colors.foreground}
-; Require the monitor to be in connected state
-; XRandR sometimes report my monitor as being disconnected (when in use)
-monitor-strict = false
+line-size = 3
+line-color = ${colors.primary}
-; Tell the Window Manager not to configure the window.
-; Use this to detach the bar if your WM is locking its size/position.
-override-redirect = false
+border-size = 0
+border-color = #00000000
-; Put the bar at the bottom of the screen
-bottom = false
+padding-left = 0
+padding-right = 2
-; Prefer fixed center position for the `modules-center` block
-; When false, the center position will be based on the size of the other blocks.
-fixed-center = true
+module-margin-left = 1
+module-margin-right = 2
+
+font-0 = fixed:pixelsize=10;1
+font-1 = unifont:fontformat=truetype:size=8:antialias=false;0
+font-2 = siji:pixelsize=10;1
-; Dimension defined as pixel value (e.g. 35) or percentage (e.g. 50%),
-; the percentage can optionally be extended with a pixel offset like so:
-; 50%:-10, this will result in a width or height of 50% minus 10 pixels
-width = 100%
-height = 100
-
-; Offset defined as pixel value (e.g. 35) or percentage (e.g. 50%)
-; the percentage can optionally be extended with a pixel offset like so:
-; 50%:-10, this will result in an offset in the x or y direction
-; of 50% minus 10 pixels
-offset-x = 0
-offset-y = 0
-
-; Background argb color (e.g. #f00, #ff992a, #ddff1023)
-background = #fff
-
-; Foreground argb color (e.g. #f00, #ff992a, #ddff1023)
-foreground = #000
-
-; Background gradient (vertical steps)
-; background-[0-9]+ = #aarrggbb
-background-0 =
-
-; Value used for drawing rounded corners
-; Individual top/bottom values can be defined using:
-; radius-{top,bottom}
-radius = 0.0
-
-; Under-/overline pixel size and argb color
-; Individual values can be defined using:
-; {overline,underline}-size
-; {overline,underline}-color
-line-size = 1
-line-color = #f00
-
-; Values applied to all borders
-; Individual side values can be defined using:
-; border-{left,top,right,bottom}-size
-; border-{left,top,right,bottom}-color
-border-size =
-border-color =
-
-; Number of spaces to add at the beginning/end of the bar
-; Individual side values can be defined using:
-; padding-{left,right}
-padding = 0
-
-; Number of spaces to add before/after each module
-; Individual side values can be defined using:
-; module-margin-{left,right}
-module-margin = 0
-
-; Fonts are defined using <font-name>;<vertical-offset>
-; Font names are specified using a fontconfig pattern.
-; font-0 = NotoSans-Regular:size=8;2
-; font-1 = MaterialIcons:size=10
-; font-2 = Termsynu:size=8;-1
-; font-3 = FontAwesome:size=10
-; See the Fonts wiki page for more details
-font-0 =
-
-; Modules are added to one of the available blocks
-; modules-left = cpu ram
-; modules-center = xwindow xbacklight
-; modules-right = ipc clock
modules-left = i3
-modules-center =
-modules-right =
+modules-center = date
+modules-right = filesystem xbacklight volume xkeyboard memory cpu wlan eth battery temperature powermenu
-; The separator will be inserted between the output of each module
-separator =
+tray-position = right
+tray-padding = 2
+;tray-transparent = true
+;tray-background = #0063ff
-; This value is used to add extra spacing between elements
-; @deprecated: This parameter will be removed in an upcoming version
-spacing = 0
+;wm-restack = bspwm
+wm-restack = i3
-; Opacity value between 0.0 and 1.0 used on fade in/out
-dim-value = 1.0
+;override-redirect = true
-; Value to be used to set the WM_NAME atom
-; If the value is empty or undefined, the atom value
-; will be created from the following template: polybar-[BAR]_[MONITOR]
-; NOTE: The placeholders are not available for custom values
-wm-name =
+;scroll-up = bspwm-desknext
+;scroll-down = bspwm-deskprev
-; Locale used to localize various module data (e.g. date)
-; Expects a valid libc locale, for example: sv_SE.UTF-8
-locale =
+scroll-up = i3wm-wsnext
+scroll-down = i3wm-wsprev
-; Position of the system tray window
-; If empty or undefined, tray support will be disabled
-; NOTE: A center aligned tray will cover center aligned modules
-;
-; Available positions:
-; left
-; center
-; right
-tray-position = center
-
-; If true, the bar will not shift its
-; contents when the tray changes
-tray-detached = false
-
-; Tray icon max size
-tray-maxsize = 16
-
-; Enable pseudo transparency
-; Will automatically be enabled if a fully transparent
-; background color is defined using `tray-background`
-tray-transparent = false
-
-; Background color for the tray container
-; By default the tray container will use the bar
-; background color.
-; Note: 32 bit alpha blending is not supported.
-tray-background = ${root.background}
-
-; Tray offset defined as pixel value (e.g. 35) or percentage (e.g. 50%)
-tray-offset-x = 0
-tray-offset-y = 0
-
-; Pad the sides of each tray icon
-tray-padding = 0
-
-; Scale factor for tray clients
-tray-scale = 1.0
-
-; Restack the bar window and put it above the
-; selected window manager's root
-;
-; Fixes the issue where the bar is being drawn
-; on top of fullscreen window's
-;
-; Currently supported WM's:
-; bspwm
-; i3 (requires: `override-redirect = true`)
-wm-restack =
-
-; Enable support for inter-process messaging
-; See the Messaging wiki page for more details.
-enable-ipc = false
-
-; Fallback click handlers that will be called if
-; there's no matching module handler found.
-click-left =
-click-middle =
-click-right =
-scroll-up =
-scroll-down =
-double-click-left =
-double-click-middle =
-double-click-right =
-
-; Requires polybar to be built with xcursor support (xcb-util-cursor)
-; Possible values are:
-; - default : The default pointer as before, can also be an empty string (default)
-; - pointer : Typically in the form of a hand
-; - ns-resize : Up and down arrows, can be used to indicate scrolling
-cursor-click =
-cursor-scroll =
+cursor-click = pointer
+cursor-scroll = ns-resize
-[module/i3]
-type = internal/i3
+[module/xwindow]
+type = internal/xwindow
+label = %title:0:30:...%
-; Only show workspaces defined on the same output as the bar
-;
-; Useful if you want to show monitor specific workspaces
-; on different bars
-;
-; Default: false
-pin-workspaces = true
+[module/xkeyboard]
+type = internal/xkeyboard
+blacklist-0 = num lock
-; This will split the workspace name on ':'
-; Default: false
-strip-wsnumbers = false
+format-prefix = " "
+format-prefix-foreground = ${colors.foreground-alt}
+format-prefix-underline = ${colors.primary}
-; Sort the workspaces by index instead of the default
-; sorting that groups the workspaces by output
-; Default: false
-index-sort = true
+label-layout = %layout%
+label-layout-underline = ${colors.primary}
-; Create click handler used to focus workspace
-; Default: true
-enable-click = false
+label-indicator-padding = 2
+label-indicator-margin = 1
+label-indicator-background = ${colors.primary}
+label-indicator-underline = ${colors.primary}
-; Create scroll handlers used to cycle workspaces
-; Default: true
-enable-scroll = false
+[module/filesystem]
+type = internal/fs
+interval = 25
-; Wrap around when reaching the first/last workspace
-; Default: true
-wrapping-scroll = false
+mount-0 = /
-; Set the scroll cycle direction
-; Default: true
-reverse-scroll = false
+label-mounted = %{F#0a81f5}%mountpoint%%{F-}: %percentage_used%%
+label-unmounted = %mountpoint% not mounted
+label-unmounted-foreground = ${colors.foreground-alt}
+
+[module/i3]
+type = internal/i3
+format = <label-state> <label-mode>
+index-sort = true
+wrapping-scroll = false
-; Use fuzzy (partial) matching on labels when assigning
-; icons to workspaces
-; Example: code;♚ will apply the icon to all workspaces
-; containing 'code' in the label
-; Default: false
-fuzzy-match = true \ No newline at end of file
+; Only show workspaces on the same output as the bar
+;pin-workspaces = true
+
+label-mode-padding = 2
+label-mode-foreground = #000
+label-mode-background = ${colors.primary}
+
+; focused = Active workspace on focused monitor
+label-focused = %index%
+label-focused-background = ${colors.background-alt}
+label-focused-underline = ${colors.primary}
+label-focused-padding = 2
+
+; unfocused = Inactive workspace on any monitor
+label-unfocused = %index%
+label-unfocused-padding = 2
+
+; visible = Active workspace on unfocused monitor
+label-visible = %index%
+label-visible-background = ${self.label-focused-background}
+label-visible-underline = ${self.label-focused-underline}
+label-visible-padding = ${self.label-focused-padding}
+
+; urgent = Workspace with urgency hint set
+label-urgent = %index%
+label-urgent-background = ${colors.alert}
+label-urgent-padding = 2
+
+[module/mpd]
+type = internal/mpd
+format-online = <label-song> <icon-prev> <icon-stop> <toggle> <icon-next>
+
+icon-prev = 
+icon-stop = 
+icon-play = 
+icon-pause = 
+icon-next = 
+
+label-song-maxlen = 25
+label-song-ellipsis = true
+
+[module/xbacklight]
+type = internal/xbacklight
+
+format = <label> <bar>
+label = BL
+
+bar-width = 10
+bar-indicator = |
+bar-indicator-foreground = #ff
+bar-indicator-font = 2
+bar-fill = ─
+bar-fill-font = 2
+bar-fill-foreground = ${colors.primary}
+bar-empty = ─
+bar-empty-font = 2
+bar-empty-foreground = ${colors.foreground-alt}
+
+[module/backlight-acpi]
+inherit = module/xbacklight
+type = internal/backlight
+card = intel_backlight
+
+[module/cpu]
+type = internal/cpu
+interval = 2
+format-prefix = " "
+format-prefix-foreground = ${colors.foreground-alt}
+format-underline = ${colors.primary}
+label = "CPU: %percentage:2%%"
+
+[module/memory]
+type = internal/memory
+interval = 2
+format-prefix = " "
+format-prefix-foreground = ${colors.foreground-alt}
+format-underline = ${colors.primary}
+label = "RAM: %percentage_used%%"
+
+[module/wlan]
+type = internal/network
+interface = wlp58s0
+interval = 3.0
+
+format-connected = <ramp-signal> <label-connected>
+format-connected-underline = ${colors.primary}
+label-connected = %essid%
+
+format-disconnected =
+;format-disconnected = <label-disconnected>
+;format-disconnected-underline = ${self.format-connected-underline}
+;label-disconnected = %ifname% disconnected
+;label-disconnected-foreground = ${colors.foreground-alt}
+
+ramp-signal-0 = 
+ramp-signal-1 = 
+ramp-signal-2 = 
+ramp-signal-3 = 
+ramp-signal-4 = 
+ramp-signal-foreground = ${colors.foreground-alt}
+
+[module/eth]
+type = internal/network
+interface = net0
+interval = 3.0
+
+format-connected-underline = ${colors.primary}
+format-connected-prefix = " "
+format-connected-prefix-foreground = ${colors.foreground-alt}
+label-connected = %local_ip%
+
+format-disconnected =
+;format-disconnected = <label-disconnected>
+;format-disconnected-underline = ${self.format-connected-underline}
+;label-disconnected = %ifname% disconnected
+;label-disconnected-foreground = ${colors.foreground-alt}
+
+[module/date]
+type = internal/date
+interval = 5
+
+date =
+date-alt = "%Y-%m-%d"
+
+time = %H:%M
+time-alt = %H:%M:%S
+
+format-prefix = 
+format-prefix-foreground = ${colors.foreground-alt}
+format-underline = ${colors.primary}
+
+label = %date% %time%
+
+[module/volume]
+type = internal/volume
+
+format-volume = <label-volume> <bar-volume>
+label-volume = VOL
+label-volume-foreground = ${root.foreground}
+
+format-muted-prefix = " "
+format-muted-foreground = ${colors.foreground-alt}
+label-muted = sound muted
+
+bar-volume-width = 10
+bar-volume-foreground-0 = ${colors.primary}
+bar-volume-foreground-1 = ${colors.primary}
+bar-volume-foreground-2 = ${colors.primary}
+bar-volume-foreground-3 = ${colors.primary}
+bar-volume-foreground-4 = ${colors.primary}
+bar-volume-foreground-5 = ${colors.secondary}
+bar-volume-foreground-6 = ${colors.alert}
+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-alt}
+
+[module/battery]
+type = internal/battery
+battery = BAT0
+adapter = AC
+full-at = 98
+
+format-charging = <animation-charging> <label-charging>
+format-charging-underline = ${colors.primary}
+
+format-discharging = <ramp-capacity> <label-discharging>
+format-discharging-underline = ${self.format-charging-underline}
+
+format-full-prefix = " "
+format-full-prefix-foreground = ${colors.foreground-alt}
+format-full-underline = ${self.format-charging-underline}
+
+ramp-capacity-0 = 
+ramp-capacity-1 = 
+ramp-capacity-2 = 
+ramp-capacity-foreground = ${colors.foreground-alt}
+
+animation-charging-0 = 
+animation-charging-1 = 
+animation-charging-2 = 
+animation-charging-foreground = ${colors.foreground-alt}
+animation-charging-framerate = 750
+
+[module/temperature]
+type = internal/temperature
+thermal-zone = 0
+warn-temperature = 60
+
+format = <ramp> <label>
+format-underline = ${colors.primary}
+format-warn = <ramp> <label-warn>
+format-warn-underline = ${self.format-underline}
+
+label = %temperature%
+label-warn = %temperature%
+label-warn-foreground = ${colors.secondary}
+
+ramp-0 = 
+ramp-1 = 
+ramp-2 = 
+ramp-foreground = ${colors.foreground-alt}
+
+[module/powermenu]
+type = custom/menu
+
+expand-right = true
+
+format-spacing = 1
+
+label-open = 
+label-open-foreground = ${colors.secondary}
+label-close =  cancel
+label-close-foreground = ${colors.secondary}
+label-separator = |
+label-separator-foreground = ${colors.foreground-alt}
+
+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
+
+[settings]
+screenchange-reload = true
+;compositing-background = xor
+;compositing-background = screen
+;compositing-foreground = source
+;compositing-border = over
+
+[global/wm]
+margin-top = 5
+margin-bottom = 5
+
+; vim:ft=dosini
diff --git a/polybar/launch.sh b/polybar/launch.sh
new file mode 100755
index 0000000..98428f8
--- /dev/null
+++ b/polybar/launch.sh
@@ -0,0 +1,11 @@
+#!/usr/bin/env bash
+
+# Terminate already running bar instances
+killall -q polybar
+
+# Wait until the processes have been shut down
+while pgrep -u $UID -x polybar >/dev/null; do sleep 1; done
+
+polybar main &
+
+echo "Bars launched..."