commit 14f5d11ba6e768adfa8cdaa92aa4fe7789cb29dc
parent 4de9687cb9378bdca6833a359636bbeff37d7a16
Author: NicholasFarrow <nicholas.w.farrow@gmail.com>
Date: Thu, 23 Jan 2020 18:03:38 +1100
replace i3status with polybar
Diffstat:
4 files changed, 495 insertions(+), 19 deletions(-)
diff --git a/.config/.aliasrc b/.config/.aliasrc
@@ -23,7 +23,7 @@ alias chr='google-chrome'
alias ra='ranger'
alias cbnt='feh --randomize --bg-fill ~/Pictures/Wallpapers/*'
-alias cb='wal -i ~/Pictures/Wallpapers/ --saturate 0.3 -l'
+alias cb='wal -i ~/Pictures/Wallpapers/ --saturate 0.4 -l && (cat ~/.cache/wal/sequences &)'
alias cbs='wal -i ~/Pictures/Wallpapers/ -l --saturate '
alias STARWARS='telnet towel.blinkenlights.nl'
diff --git a/.config/i3/config b/.config/i3/config
@@ -2,6 +2,7 @@
# Please see https://i3wm.org/docs/userguide.html for a complete reference!
# WINDOWS KEY MODIFIER
+# "The button for i3 commands"
set $mod Mod4
#set $mod Mod1
@@ -13,7 +14,7 @@ font pango:monospace 8
workspace 1 output HDMI-0
workspace 2 output DVI-I-0
-# SOURCE BASH_PROFILE
+# Load bash_profile on startup
exec --no-startup-id source $HOME/.bash_profile
# Choose random background
@@ -32,28 +33,29 @@ exec --no-startup-id xrandr --output DVI-I-0 --right-of HDMI-0
exec --no-startup-id setxkbmap -layout us
# Compositor
-# exec_always --no-startup-id compton --backend glx --blur-method kawase --blur-strength 4 --config ~/.config/.compton.conf
-exec_always --no-startup-id compton --backend glx --blur-method kawase --blur-strength 4 --config ~/.config/.compton.conf
-#exec_always --no-startup-id compton #--active-opacity 0.9 --blur-background #compton
-
+#exec_always --no-startup-id compton --backend glx --blur-method kawase --blur-strength 4 --config ~/.config/.compton.conf
+exec_always --no-startup-id compton --blur-background --blur-method kawase --blur-strength 8 --opacity-rule 30:'class_g="st"' --backend glx
+# Flameshot screenshotting tool startup
+exec_always --no-startup-id flameshot
# I3 GAPS
-for_window [class=".*"] gaps inner pixel 5
for_window [class=".*"] border pixel 0
# Status bar
-bar {
- # Height in pixels
- position top
- height 20
-
- font pango:Terminus 12px
-
- #status_command i3status
- # Custom i3status bar
- status_command ~/.config/i3/statusbar.sh
-}
+#bar {
+# # Height in pixels
+# position top
+# height 20
+#
+# font pango:Terminus 12px
+#
+# #status_command i3status
+# # Custom i3status bar
+# status_command ~/.config/i3/statusbar.sh
+#}
+
+exec_always --no-startup-id $HOME/.config/polybar/launch.sh
# Application Shortcuts
@@ -198,7 +200,7 @@ bindsym $mod+Shift+0 move container to workspace $ws10
# reload the configuration file
bindsym $mod+Shift+c reload
# restart i3 inplace (preserves your layout/session, can be used to upgrade i3)
-bindsym $mod+Shift+r restart
+bindsym $mod+Shift+r exec --no-startup-id pkill compton; restart
# exit i3 (logs you out of your X session)
bindsym $mod+Shift+e exec "i3-nagbar -t warning -m 'Exit i3 session?' -B 'Yes, exit i3' 'i3-msg exit'"
diff --git a/.config/polybar/config b/.config/polybar/config
@@ -0,0 +1,455 @@
+;==========================================================
+;
+;
+; ██████╗ ██████╗ ██╗ ██╗ ██╗██████╗ █████╗ ██████╗
+; ██╔══██╗██╔═══██╗██║ ╚██╗ ██╔╝██╔══██╗██╔══██╗██╔══██╗
+; ██████╔╝██║ ██║██║ ╚████╔╝ ██████╔╝███████║██████╔╝
+; ██╔═══╝ ██║ ██║██║ ╚██╔╝ ██╔══██╗██╔══██║██╔══██╗
+; ██║ ╚██████╔╝███████╗██║ ██████╔╝██║ ██║██║ ██║
+; ╚═╝ ╚═════╝ ╚══════╝╚═╝ ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝
+;
+;
+; 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:color1:#222}
+background-alt = #444
+;foreground = ${xrdb:color:#222}
+foreground = #000000
+foreground-alt = #000000
+primary = ${xrdb:color3:#222}
+secondary = ${xrdb:color14:#222}
+c1 = ${xrdb:color4:#222}
+c2 = ${xrdb:color5:#222}
+c3 = ${xrdb:color6:#222}
+c4 = ${xrdb:color7:#222}
+;c5 = ${xrdb:color10:#222}
+
+
+;primary = #000000
+;secondary = #ffffff
+alert = #bd2c40
+
+[bar/example]
+monitor = ${env:MONITOR:}
+width = 100%
+height = 27
+;offset-x = 1%
+;offset-y = 1%
+radius = 10.0
+fixed-center = false
+
+background = ${colors.background}
+foreground = ${colors.foreground}
+
+line-size = 6
+line-color = #f00
+
+border-size = 0
+border-color = #00000000
+
+padding-left = 0
+padding-right = 2
+
+module-margin-left = 1
+module-margin-right = 2
+
+;font-0 = Inconsolata for Powerline:pixelsize=10;0
+font-0 = Inconsolata:style=Regular:size=12;
+
+;font-0 = misc fixed:pixelsize=10;1
+font-1 = unifont:fontformat=truetype:size=16:antialias=false;0
+font-2 = siji:pixelsize=16;1
+
+modules-left = bspwm i3
+modules-center =
+modules-right = filesystem xbacklight alsa memory cpu wlan battery temperature date powermenu
+;modules-right = filesystem xbacklight alsa pulseaudio xkeyboard memory cpu wlan eth battery temperature date powermenu
+
+tray-position = right
+tray-padding = 2
+;tray-background = #0063ff
+
+;wm-restack = bspwm
+;wm-restack = i3
+
+;override-redirect = true
+
+;scroll-up = bspwm-desknext
+;scroll-down = bspwm-deskprev
+
+scroll-up = i3wm-wsnext
+scroll-down = i3wm-wsprev
+
+cursor-click = pointer
+cursor-scroll = ns-resize
+
+[module/xwindow]
+type = internal/xwindow
+label = %title:0:30:...%
+
+[module/xkeyboard]
+type = internal/xkeyboard
+blacklist-0 = num lock
+
+format-prefix = " "
+format-prefix-foreground = ${colors.foreground-alt}
+format-prefix-underline = ${colors.secondary}
+
+label-layout = %layout%
+label-layout-underline = ${colors.secondary}
+
+label-indicator-padding = 2
+label-indicator-margin = 1
+label-indicator-background = ${colors.secondary}
+label-indicator-underline = ${colors.secondary}
+
+[module/filesystem]
+type = internal/fs
+interval = 25
+
+mount-0 = /
+
+label-mounted = %{F#000000}%mountpoint%%{F-}: %percentage_used%%
+label-unmounted = %mountpoint% not mounted
+label-unmounted-foreground = ${colors.foreground-alt}
+
+[module/bspwm]
+type = internal/bspwm
+
+label-focused = %index%
+label-focused-background = ${colors.background-alt}
+label-focused-underline= ${colors.primary}
+label-focused-padding = 2
+
+label-occupied = %index%
+label-occupied-padding = 2
+
+label-urgent = %index%!
+label-urgent-background = ${colors.alert}
+label-urgent-padding = 2
+
+label-empty = %index%
+label-empty-foreground = ${colors.foreground-alt}
+label-empty-padding = 2
+
+; Separator in between workspaces
+; label-separator = |
+
+[module/i3]
+type = internal/i3
+format = <label-state> <label-mode>
+index-sort = true
+wrapping-scroll = false
+
+; 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
+
+; Separator in between workspaces
+; label-separator = |
+
+
+[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 = #fff
+bar-indicator-font = 2
+bar-fill = ─
+bar-fill-font = 2
+bar-fill-foreground = #9f78e1
+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.c2}
+label = CPU: %percentage:2%%
+
+[module/memory]
+type = internal/memory
+interval = 2
+format-prefix = " "
+format-prefix-foreground = ${colors.foreground-alt}
+format-underline = ${colors.c1}
+label = RAM: %percentage_used%%
+
+[module/wlan]
+type = internal/network
+interface = wlp82s0
+interval = 3.0
+
+format-connected = <ramp-signal> <label-connected>
+format-connected-underline = ${colors.c3}
+label-connected = %essid%
+
+format-disconnected =
+;format-disconnected = <label-disconnected>
+format-disconnected-underline = ${#ff0000}
+;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 = enp0s31f6
+interval = 3.0
+
+format-connected-underline = #55aa55
+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 = ${xrdb:color6:#222}
+
+label = %date% %time%
+
+[module/pulseaudio]
+type = internal/pulseaudio
+
+format-volume = <label-volume> <bar-volume>
+label-volume = VOL %percentage%%
+label-volume-foreground = ${root.foreground}
+
+label-muted = 🔇 muted
+label-muted-foreground = #666
+
+bar-volume-width = 10
+bar-volume-foreground-0 = #55aa55
+bar-volume-foreground-1 = #55aa55
+bar-volume-foreground-2 = #55aa55
+bar-volume-foreground-3 = #55aa55
+bar-volume-foreground-4 = #55aa55
+bar-volume-foreground-5 = #f5a70a
+bar-volume-foreground-6 = #ff5555
+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/alsa]
+type = internal/alsa
+
+master-soundcard = default
+speaker-soundcard = default
+headphone-soundcard = default
+
+master-mixer = Master
+
+format-volume = <label-volume> <bar-volume>
+label-volume = VOL
+label-volume-foreground = ${colors.c2}
+
+format-muted-prefix = " "
+format-muted-foreground = ${colors.c2}
+label-muted = (mute)
+
+bar-volume-width = 10
+label-format-underline = ${colors.c1}
+
+bar-volume-foreground-0 = ${colors.c1}
+bar-volume-foreground-1 = ${colors.c1}
+bar-volume-foreground-2 = ${colors.c1}
+bar-volume-foreground-3 = ${colors.c2}
+bar-volume-foreground-4 = ${colors.c2}
+bar-volume-foreground-5 = ${colors.c3}
+bar-volume-foreground-6 = ${colors.c4}
+
+;bar-volume-foreground-0 = #55aa55
+;bar-volume-foreground-1 = #55aa55
+;bar-volume-foreground-2 = #55aa55
+;bar-volume-foreground-3 = #55aa55
+;bar-volume-foreground-4 = #55aa55
+;bar-volume-foreground-5 = #f5a70a
+;bar-volume-foreground-6 = #ff5555
+
+bar-volume-gradient = true
+bar-volume-indicator =
+bar-volume-indicator-font = 0
+bar-volume-fill = |
+bar-volume-fill-font = 0
+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 = ${xrdb:color3:#222}
+
+format-discharging = <animation-discharging> <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
+
+animation-discharging-0 =
+animation-discharging-1 =
+animation-discharging-2 =
+animation-discharging-foreground = ${colors.foreground-alt}
+animation-discharging-framerate = 750
+
+[module/temperature]
+type = internal/temperature
+thermal-zone = 0
+warn-temperature = 80
+
+format = <ramp> <label>
+format-underline = ${xrdb:color4:#222}
+format-warn = <ramp> <label-warn>
+format-warn-underline = #ff0000
+
+label = %temperature-c%
+label-warn = %temperature-c%
+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 = #000000
+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-0-2 = hibernate
+menu-0-2-exec = menu-open-3
+
+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-3-0 = hibernate
+menu-3-0-exec = sudo hibernate
+
+[settings]
+screenchange-reload = true
+;compositing-background = xor
+;compositing-background = screen
+;compositing-foreground = source
+;compositing-border = over
+;pseudo-transparency = false
+
+[global/wm]
+margin-top = 5
+margin-bottom = 5
+
+; vim:ft=dosini
diff --git a/.config/polybar/launch.sh b/.config/polybar/launch.sh
@@ -0,0 +1,19 @@
+#!/bin/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
+
+# Launch Polybar, using default config location ~/.config/polybar/config
+if type "xrandr"; then
+ for m in $(xrandr --query | grep " connected" | cut -d" " -f1); do
+ MONITOR=$m polybar --reload example &
+ done
+else
+ polybar --reload example &
+fi
+
+echo "Polybar launched..."
+