v2
This commit is contained in:
parent
0f4c3197c9
commit
836b52e741
7 changed files with 184 additions and 509 deletions
214
\
214
\
|
@ -1,214 +0,0 @@
|
|||
;==========================================================
|
||||
;
|
||||
;
|
||||
; ██████╗ ██████╗ ██╗ ██╗ ██╗██████╗ █████╗ ██████╗
|
||||
; ██╔══██╗██╔═══██╗██║ ╚██╗ ██╔╝██╔══██╗██╔══██╗██╔══██╗
|
||||
; ██████╔╝██║ ██║██║ ╚████╔╝ ██████╔╝███████║██████╔╝
|
||||
; ██╔═══╝ ██║ ██║██║ ╚██╔╝ ██╔══██╗██╔══██║██╔══██╗
|
||||
; ██║ ╚██████╔╝███████╗██║ ██████╔╝██║ ██║██║ ██║
|
||||
; ╚═╝ ╚═════╝ ╚══════╝╚═╝ ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝
|
||||
;
|
||||
;
|
||||
; To learn more about how to configure Polybar
|
||||
; go to https://github.com/polybar/polybar
|
||||
;
|
||||
; The README contains a lot of information
|
||||
;
|
||||
;==========================================================
|
||||
|
||||
include-file = ./powerline-for-polybar/powerline-for-polybar.config
|
||||
|
||||
[colors]
|
||||
background = #282a36
|
||||
background-alt = #44475a
|
||||
foreground = #f8f8f2
|
||||
primary = #f8f8f2
|
||||
secondary = #ff79c6
|
||||
alert = #ff5555
|
||||
disabled = #6272a4
|
||||
green = #50fa7b
|
||||
cyan = #8be9fd
|
||||
orange = #ffb86c
|
||||
pink = #ff79c6
|
||||
purple = #bd93f9
|
||||
red = #ff5555
|
||||
yellow = #f1fa8c
|
||||
white = #f8f8f2
|
||||
|
||||
[bar/bar]
|
||||
width = 100%
|
||||
height = 16pt
|
||||
radius = 0
|
||||
|
||||
#dpi = 96
|
||||
|
||||
background = ${colors.background}
|
||||
foreground = ${colors.foreground}
|
||||
|
||||
line-size = 0pt
|
||||
|
||||
border-size = 0
|
||||
border-color = #00000000
|
||||
|
||||
padding-left = 0
|
||||
padding-right = 0
|
||||
|
||||
module-margin = 0
|
||||
|
||||
separator =
|
||||
separator-foreground = ${colors.disabled}
|
||||
|
||||
font-0 = "CaskaydiaCove Nerd Font:size=11; 3"
|
||||
|
||||
modules-left = i3 xwindow
|
||||
modules-center = player-mpris-tail
|
||||
modules-right = battery1 battery0 pulseaudio xkeyboard memory cpu date
|
||||
|
||||
cursor-click = pointer
|
||||
cursor-scroll = ns-resize
|
||||
|
||||
enable-ipc = true
|
||||
|
||||
; tray-position = left
|
||||
|
||||
wm-restack = i3
|
||||
|
||||
; override-redirect = true
|
||||
|
||||
[module/i3]
|
||||
type = internal/i3
|
||||
pin-workspaces = false
|
||||
show-urgent = true
|
||||
strip-wsnumbers = true
|
||||
index-sort = true
|
||||
enable-click = true
|
||||
enable-scroll = true
|
||||
wrapping-scroll = true
|
||||
reverse-scroll = false
|
||||
fuzzy-match = true
|
||||
label-focused-foreground = ${colors.secondary}
|
||||
label-focused-padding = 0
|
||||
label-unfocused-padding = 0
|
||||
label-separator = |
|
||||
label-separator-padding = 0
|
||||
label-separator-foreground = ${colors.disabled}
|
||||
|
||||
|
||||
[module/xwindow]
|
||||
type = internal/xwindow
|
||||
label = %title:0:24:...%
|
||||
|
||||
[module/player-mpris-tail]
|
||||
type = custom/script
|
||||
exec = $HOME/.config/polybar/player-mpris-tail.py -f '{icon} {artist} - {title}' --icon-playing "契" --icon-paused ""
|
||||
tail = true
|
||||
click-left = $HOME/.config/polybar/player-mpris-tail.py previous &
|
||||
click-right = $HOME/.config/polybar/player-mpris-tail.py next &
|
||||
click-middle = $HOME/.config/polybar/player-mpris-tail.py play-pause &
|
||||
|
||||
|
||||
[module/pulseaudio]
|
||||
type = internal/pulseaudio
|
||||
|
||||
format-volume = <label-volume>
|
||||
|
||||
label-volume =蓼 %percentage%%
|
||||
label-volume-background = ${colors.yellow}
|
||||
label-volume-foreground = ${colors.background}
|
||||
label-volume-padding = 1
|
||||
|
||||
label-muted = 遼
|
||||
label-muted-foreground = ${colors.disabled}
|
||||
label-muted-background = ${colors.red}
|
||||
click-right = pavucontrol
|
||||
label-muted-padding = 1
|
||||
|
||||
[module/battery0]
|
||||
type = internal/battery
|
||||
full-at = 99
|
||||
low-at = 5
|
||||
battery = BAT0
|
||||
adapter = ADP1
|
||||
poll-interval = 120
|
||||
label-discharging-background = ${colors.orange}
|
||||
label-discharging-foreground = ${colors.background}
|
||||
label-discharging-padding = 1
|
||||
label-discharging = %percentage%%
|
||||
label-charging-background = ${colors.orange}
|
||||
label-charging-foreground = ${colors.background}
|
||||
label-charging = %percentage%%
|
||||
label-charging-padding = 1
|
||||
label-full = %percentage%%
|
||||
label-full-background = ${colors.orange}
|
||||
label-full-foreground = ${colors.background}
|
||||
label-full-padding = 1
|
||||
|
||||
[module/battery1]
|
||||
type = internal/battery
|
||||
full-at = 99
|
||||
low-at = 5
|
||||
battery = BAT1
|
||||
adapter = ADP1
|
||||
poll-interval = 120
|
||||
label-discharging-background = ${colors.red}
|
||||
label-discharging-foreground = ${colors.background}
|
||||
label-discharging-padding = 1
|
||||
label-discharging = %percentage%%
|
||||
label-charging-background = ${colors.red}
|
||||
label-charging-foreground = ${colors.background}
|
||||
label-charging = %percentage%%
|
||||
label-charging-padding = 1
|
||||
label-full = %percentage%%
|
||||
label-full-background = ${colors.red}
|
||||
label-full-foreground = ${colors.background}
|
||||
label-full-padding = 1
|
||||
|
||||
[module/xkeyboard]
|
||||
type = internal/xkeyboard
|
||||
blacklist-0 = num lock
|
||||
|
||||
label-layout = %layout%
|
||||
label-layout-foreground = ${colors.background}
|
||||
label-layout-background = ${colors.green}
|
||||
label-layout-padding = 1
|
||||
|
||||
label-indicator-foreground = ${colors.background}
|
||||
label-indicator-background = ${colors.secondary}
|
||||
|
||||
[module/memory]
|
||||
type = internal/memory
|
||||
interval = 2
|
||||
label = %percentage_used:2%%
|
||||
label-background = ${colors.cyan}
|
||||
label-foreground = ${colors.background}
|
||||
label-padding = 1
|
||||
|
||||
[module/cpu]
|
||||
type = internal/cpu
|
||||
interval = 20
|
||||
label = %percentage:2%%
|
||||
label-background = ${colors.purple}
|
||||
label-foreground = ${colors.background}
|
||||
label-padding = 1
|
||||
|
||||
[module/date]
|
||||
inherit = powerline-templates/right-to-left-item
|
||||
background = ${colors.pink}
|
||||
background-next = ${colors.purple}
|
||||
|
||||
type = internal/date
|
||||
interval = 1
|
||||
|
||||
date = %H:%M
|
||||
date-alt = %d %m %Y %H:%M:%S
|
||||
|
||||
label =﨟 %date%
|
||||
label-foreground = ${colors.background}
|
||||
label-background = ${colors.pink}
|
||||
label-padding = 1
|
||||
|
||||
[settings]
|
||||
screenchange-reload = true
|
||||
pseudo-transparency = false
|
||||
|
||||
# vim:ft=dosini
|
181
config
Normal file
181
config
Normal file
|
@ -0,0 +1,181 @@
|
|||
[colors]
|
||||
bg = #282a36
|
||||
fg = #f8f8f2
|
||||
date = #ff5555
|
||||
cpu = #ffb86c
|
||||
audio = #8be9fd
|
||||
power = #f1fa8c
|
||||
wifi = #50fa7b
|
||||
keyboard = #bd93f9
|
||||
|
||||
[var]
|
||||
padding = 1
|
||||
default-font = 2
|
||||
|
||||
[bar/top]
|
||||
modules-left = i3
|
||||
modules-right = keyboardarrow keyboard audioarrow player-mpris-tail volume wifiarrow wifi powerarrow ac battery0 battery1 arrowcpu cpu temperature ram arrowdate date
|
||||
|
||||
background = ${colors.bg}
|
||||
foreground = ${colors.fg}
|
||||
|
||||
module-margin = ${var.margin}
|
||||
|
||||
; font
|
||||
font-0 = "CaskaydiaCove NerdFont Mono:pixelsize=18; 3"
|
||||
font-1 = "CaskaydiaCove NerdFont Mono:pixelsize=12; 2"
|
||||
|
||||
[modules/format]
|
||||
label-padding = 1
|
||||
format-font = 2
|
||||
;wifi
|
||||
format-connected-font = 2
|
||||
format-disconnected-font = 2
|
||||
|
||||
[arrows/arrowR]
|
||||
type = custom/text
|
||||
content =
|
||||
|
||||
[module/i3]
|
||||
inherit = modules/format
|
||||
type = internal/i3
|
||||
|
||||
[module/date]
|
||||
inherit = modules/format
|
||||
type = internal/date
|
||||
date = %H:%M:%S
|
||||
format-background = ${colors.date}
|
||||
format-foreground = ${colors.bg}
|
||||
|
||||
[module/arrowdate]
|
||||
inherit = arrows/arrowR
|
||||
content-foreground = ${colors.date}
|
||||
content-background = ${colors.cpu}
|
||||
|
||||
[module/cpu]
|
||||
inherit = modules/format
|
||||
type = internal/cpu
|
||||
interval = 1
|
||||
label = %percentage%%
|
||||
format-background = ${colors.cpu}
|
||||
format-foreground = ${colors.bg}
|
||||
|
||||
[module/ram]
|
||||
inherit = modules/format
|
||||
type = internal/memory
|
||||
format-foreground = ${colors.bg}
|
||||
format-background = ${colors.cpu}
|
||||
label = %gb_used%
|
||||
|
||||
[module/temperature]
|
||||
inherit = modules/format
|
||||
type = internal/temperature
|
||||
format-foreground = ${colors.bg}
|
||||
format-background = ${colors.cpu}
|
||||
label = %temperature-c%
|
||||
|
||||
|
||||
|
||||
[module/arrowcpu]
|
||||
inherit = arrows/arrowR
|
||||
content-foreground = ${colors.cpu}
|
||||
content-background = ${colors.power}
|
||||
|
||||
[module/wifi]
|
||||
inherit = modules/format
|
||||
type = internal/network
|
||||
interface-type = wireless
|
||||
label-connected = %downspeed% %upspeed%
|
||||
label-connected-padding = ${var.padding}
|
||||
label-connected-foreground = ${colors.bg}
|
||||
label-connected-background = ${colors.wifi}
|
||||
|
||||
[module/wifiarrow]
|
||||
inherit = arrows/arrowR
|
||||
content-foreground = ${colors.wifi}
|
||||
content-background = ${colors.audio}
|
||||
|
||||
[modules/bat]
|
||||
type = internal/battery
|
||||
label-charging-font = ${var.default-font}
|
||||
label-discharging-font = ${var.default-font}
|
||||
label-charging-padding = ${var.padding}
|
||||
label-discharging-padding = ${var.padding}
|
||||
label-charging-foreground = ${colors.bg}
|
||||
label-discharging-foreground = ${colors.bg}
|
||||
label-charging-background = ${colors.power}
|
||||
label-discharging-background = ${colors.power}
|
||||
label-full-background = ${colors.power}
|
||||
label-full-padding = ${var.padding}
|
||||
label-full-foreground = ${colors.bg}
|
||||
label-full-font = ${var.default-font}
|
||||
|
||||
[module/battery0]
|
||||
inherit = modules/bat
|
||||
battery = BAT0
|
||||
|
||||
[module/battery1]
|
||||
inherit = modules/bat
|
||||
battery = BAT1
|
||||
|
||||
[module/ac]
|
||||
inherit = modules/bat
|
||||
adapter = AC
|
||||
label-charging = ﮣ
|
||||
label-full = ﮣ
|
||||
label-discharging = ﮤ
|
||||
|
||||
[module/powerarrow]
|
||||
inherit = arrows/arrowR
|
||||
content-foreground = ${colors.power}
|
||||
content-background = ${colors.wifi}
|
||||
|
||||
[module/volume]
|
||||
inherit = modules/format
|
||||
type = internal/pulseaudio
|
||||
label-volume-font = ${var.default-font}
|
||||
label-muted-font = ${var.default-font}
|
||||
label-volume-padding = ${var.padding}
|
||||
label-muted-padding = ${var.padding}
|
||||
label-volume-foreground = ${colors.bg}
|
||||
label-volume-background = ${colors.audio}
|
||||
label-muted-foreground = ${colors.bg}
|
||||
label-muted-background = ${colors.audio}
|
||||
label-volume = 蓼 %percentage%%
|
||||
label-muted = 遼 %percentage%%
|
||||
|
||||
[module/player-mpris-tail]
|
||||
inherit = modules/format
|
||||
label-background = ${colors.audio}
|
||||
label-foreground = ${colors.bg}
|
||||
type = custom/script
|
||||
exec = $HOME/.config/polybar/player-mpris-tail.py -f '{icon} {artist} - {title}' --icon-playing "契" --icon-paused ""
|
||||
tail = true
|
||||
click-left = $HOME/.config/polybar/player-mpris-tail.py previous &
|
||||
click-right = $HOME/.config/polybar/player-mpris-tail.py next &
|
||||
click-middle = $HOME/.config/polybar/player-mpris-tail.py play-pause &
|
||||
|
||||
[module/audioarrow]
|
||||
inherit = arrows/arrowR
|
||||
content-foreground = ${colors.audio}
|
||||
content-background = ${colors.keyboard}
|
||||
|
||||
[module/keyboard]
|
||||
inherit = modules/format
|
||||
type = internal/xkeyboard
|
||||
format-background = ${colors.keyboard}
|
||||
label-layout-padding = ${var.padding}
|
||||
label-layout = %layout%
|
||||
label-indicator-on-capslock = בּ
|
||||
label-indicator-on-capslock-background = ${colors.keyboard}
|
||||
label-indicator-on-capslock-foreground = ${colors.bg}
|
||||
label-indicator-on-capslock-padding = ${var.padding}
|
||||
label-indicator-on-background = ${colors.keyboard}
|
||||
label-layout-background = ${colors.keyboard}
|
||||
label-layout-foreground = ${colors.bg}
|
||||
label-indicator-background = ${colors.keyboard}
|
||||
|
||||
[module/keyboardarrow]
|
||||
inherit = arrows/arrowR
|
||||
content-foreground = ${colors.keyboard}
|
||||
|
216
config.ini
216
config.ini
|
@ -1,216 +0,0 @@
|
|||
;==========================================================
|
||||
;
|
||||
;
|
||||
; ██████╗ ██████╗ ██╗ ██╗ ██╗██████╗ █████╗ ██████╗
|
||||
; ██╔══██╗██╔═══██╗██║ ╚██╗ ██╔╝██╔══██╗██╔══██╗██╔══██╗
|
||||
; ██████╔╝██║ ██║██║ ╚████╔╝ ██████╔╝███████║██████╔╝
|
||||
; ██╔═══╝ ██║ ██║██║ ╚██╔╝ ██╔══██╗██╔══██║██╔══██╗
|
||||
; ██║ ╚██████╔╝███████╗██║ ██████╔╝██║ ██║██║ ██║
|
||||
; ╚═╝ ╚═════╝ ╚══════╝╚═╝ ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝
|
||||
;
|
||||
;
|
||||
; To learn more about how to configure Polybar
|
||||
; go to https://github.com/polybar/polybar
|
||||
;
|
||||
; The README contains a lot of information
|
||||
;
|
||||
;==========================================================
|
||||
|
||||
include-file = ./powerline-for-polybar/powerline-for-polybar.config
|
||||
|
||||
[colors]
|
||||
background = #282a36
|
||||
background-alt = #44475a
|
||||
foreground = #f8f8f2
|
||||
primary = #f8f8f2
|
||||
secondary = #ff79c6
|
||||
alert = #ff5555
|
||||
disabled = #6272a4
|
||||
green = #50fa7b
|
||||
cyan = #8be9fd
|
||||
orange = #ffb86c
|
||||
pink = #ff79c6
|
||||
purple = #bd93f9
|
||||
red = #ff5555
|
||||
yellow = #f1fa8c
|
||||
white = #f8f8f2
|
||||
|
||||
[bar/bar]
|
||||
width = 100%
|
||||
height = 20
|
||||
radius = 0
|
||||
|
||||
#dpi = 96
|
||||
|
||||
background = ${colors.background}
|
||||
foreground = ${colors.foreground}
|
||||
|
||||
line-size = 0pt
|
||||
|
||||
border-size = 0
|
||||
border-color = #00000000
|
||||
|
||||
padding-left = 0
|
||||
padding-right = 0
|
||||
|
||||
module-margin = 0
|
||||
|
||||
separator =
|
||||
separator-foreground = ${colors.disabled}
|
||||
|
||||
font-0 = "CaskaydiaCove Nerd Font:size=11; 2"
|
||||
|
||||
modules-left = i3 xwindow
|
||||
modules-center = player-mpris-tail battery1 battery0
|
||||
modules-right = pulseaudio xkeyboard memory cpu date
|
||||
|
||||
cursor-click = pointer
|
||||
cursor-scroll = ns-resize
|
||||
|
||||
enable-ipc = true
|
||||
|
||||
; tray-position = left
|
||||
|
||||
wm-restack = i3
|
||||
|
||||
; override-redirect = true
|
||||
|
||||
[module/i3]
|
||||
type = internal/i3
|
||||
pin-workspaces = false
|
||||
show-urgent = true
|
||||
strip-wsnumbers = true
|
||||
index-sort = true
|
||||
enable-click = true
|
||||
enable-scroll = true
|
||||
wrapping-scroll = true
|
||||
reverse-scroll = false
|
||||
fuzzy-match = true
|
||||
label-focused-foreground = ${colors.secondary}
|
||||
label-focused-padding = 0
|
||||
label-unfocused-padding = 0
|
||||
label-separator-padding = 0
|
||||
label-separator-foreground = ${colors.disabled}
|
||||
|
||||
|
||||
[module/xwindow]
|
||||
type = internal/xwindow
|
||||
label = %title:0:24:...%
|
||||
|
||||
[module/player-mpris-tail]
|
||||
type = custom/script
|
||||
exec = $HOME/.config/polybar/player-mpris-tail.py -f '{icon} {artist} - {title}' --icon-playing "契" --icon-paused ""
|
||||
tail = true
|
||||
click-left = $HOME/.config/polybar/player-mpris-tail.py previous &
|
||||
click-right = $HOME/.config/polybar/player-mpris-tail.py next &
|
||||
click-middle = $HOME/.config/polybar/player-mpris-tail.py play-pause &
|
||||
|
||||
|
||||
[module/pulseaudio]
|
||||
inherit = powerline-templates/right-to-left-item
|
||||
background = ${colors.yellow}
|
||||
background-next = ${colors.background}
|
||||
|
||||
type = internal/pulseaudio
|
||||
|
||||
format-volume = <label-volume>
|
||||
|
||||
label-volume =蓼 %percentage%%
|
||||
label-volume-background = ${colors.yellow}
|
||||
label-volume-foreground = ${colors.background}
|
||||
label-volume-padding = 1
|
||||
|
||||
label-muted = 遼
|
||||
label-muted-foreground = ${colors.background}
|
||||
label-muted-background = ${colors.yellow}
|
||||
click-right = pavucontrol
|
||||
label-muted-padding = 1
|
||||
|
||||
[module/battery0]
|
||||
inherit = powerline-templates/right-to-left-item
|
||||
type = internal/battery
|
||||
full-at = 99
|
||||
low-at = 5
|
||||
battery = BAT0
|
||||
adapter = ADP1
|
||||
poll-interval = 120
|
||||
label-discharging-padding = 1
|
||||
label-discharging = %percentage%%
|
||||
label-charging = %percentage%%
|
||||
label-charging-padding = 1
|
||||
label-full = %percentage%%
|
||||
label-full-padding = 1
|
||||
|
||||
[module/battery1]
|
||||
type = internal/battery
|
||||
full-at = 99
|
||||
low-at = 5
|
||||
battery = BAT1
|
||||
adapter = ADP1
|
||||
poll-interval = 120
|
||||
label-discharging-padding = 1
|
||||
label-discharging = %percentage%%
|
||||
label-charging = %percentage%%
|
||||
label-charging-padding = 1
|
||||
label-full = %percentage%%
|
||||
label-full-padding = 1
|
||||
|
||||
[module/xkeyboard]
|
||||
inherit = powerline-templates/right-to-left-item
|
||||
background = ${colors.green}
|
||||
background-next = ${colors.yellow}
|
||||
|
||||
type = internal/xkeyboard
|
||||
blacklist-0 = num lock
|
||||
|
||||
label-layout = %layout%
|
||||
label-layout-foreground = ${colors.background}
|
||||
label-layout-background = ${colors.green}
|
||||
label-layout-padding = 1
|
||||
|
||||
label-indicator-foreground = ${colors.background}
|
||||
label-indicator-background = ${colors.secondary}
|
||||
|
||||
[module/memory]
|
||||
inherit = powerline-templates/right-to-left-item
|
||||
background = ${colors.cyan}
|
||||
background-next = ${colors.green}
|
||||
type = internal/memory
|
||||
interval = 2
|
||||
label = %percentage_used:2%%
|
||||
label-background = ${colors.cyan}
|
||||
label-foreground = ${colors.background}
|
||||
label-padding = 1
|
||||
|
||||
[module/cpu]
|
||||
inherit = powerline-templates/right-to-left-item
|
||||
background = ${colors.purple}
|
||||
background-next = ${colors.cyan}
|
||||
type = internal/cpu
|
||||
interval = 20
|
||||
label = %percentage:2%%
|
||||
label-background = ${colors.purple}
|
||||
label-foreground = ${colors.background}
|
||||
label-padding = 1
|
||||
|
||||
[module/date]
|
||||
inherit = powerline-templates/right-to-left-item
|
||||
background = ${colors.pink}
|
||||
background-next = ${colors.purple}
|
||||
|
||||
type = internal/date
|
||||
interval = 1
|
||||
|
||||
date = %H:%M
|
||||
date-alt = %d %m %Y %H:%M:%S
|
||||
|
||||
label =﨟 %date%
|
||||
label-foreground = ${colors.background}
|
||||
label-background = ${colors.pink}
|
||||
label-padding = 1
|
||||
|
||||
[settings]
|
||||
screenchange-reload = true
|
||||
pseudo-transparency = false
|
||||
|
||||
# vim:ft=dosini
|
75
info-cava.py
75
info-cava.py
|
@ -1,75 +0,0 @@
|
|||
#!/bin/env python3
|
||||
import argparse
|
||||
import os
|
||||
import signal
|
||||
import subprocess
|
||||
import sys
|
||||
import tempfile
|
||||
|
||||
if len(sys.argv) > 1 and sys.argv[1] == '--subproc':
|
||||
ramp_list = [' ', '▁', '▂', '▃', '▄', '▅', '▆', '▇', '█']
|
||||
ramp_list.extend(
|
||||
f'%{{F#{color.strip(" #")}}}█%{{F-}}'
|
||||
for color in sys.argv[2].split(',')
|
||||
if color
|
||||
)
|
||||
while True:
|
||||
cava_input = input().strip().split()
|
||||
cava_input = [int(i) for i in cava_input]
|
||||
output = ''
|
||||
for bar in cava_input:
|
||||
if bar < len(ramp_list):
|
||||
output += ramp_list[bar]
|
||||
|
||||
else:
|
||||
output += ramp_list[-1]
|
||||
|
||||
print(output)
|
||||
|
||||
parser = argparse.ArgumentParser()
|
||||
parser.add_argument('-f', '--framerate', type=int, default=60,
|
||||
help='Framerate to be used by cava, default is 60')
|
||||
parser.add_argument('-b', '--bars', type=int, default=8,
|
||||
help='Amount of bars, default is 8')
|
||||
parser.add_argument('-e', '--extra_colors', default='fdd,fcc,fbb,faa',
|
||||
help='Color gradient used on higher values, separated by commas, default is')
|
||||
parser.add_argument('-c', '--channels', choices=['stereo', 'left', 'right', 'average'],
|
||||
help='Audio channels to be used, defaults to stereo')
|
||||
|
||||
opts = parser.parse_args()
|
||||
conf_channels = ''
|
||||
if opts.channels != 'stereo':
|
||||
conf_channels = (
|
||||
'channels=mono\n'
|
||||
f'mono_option={opts.channels}'
|
||||
)
|
||||
|
||||
conf_ascii_max_range = 12 + len([i for i in opts.extra_colors.split(',') if i])
|
||||
|
||||
cava_conf = tempfile.mkstemp('','polybar-cava-conf.')[1]
|
||||
with open(cava_conf, 'w') as cava_conf_file:
|
||||
cava_conf_file.write(
|
||||
'[general]\n'
|
||||
f'framerate={opts.framerate}\n'
|
||||
f'bars={opts.bars}\n'
|
||||
'[output]\n'
|
||||
'method=raw\n'
|
||||
'data_format=ascii\n'
|
||||
f'ascii_max_range={conf_ascii_max_range}\n'
|
||||
'bar_delimiter=32'
|
||||
+ conf_channels
|
||||
)
|
||||
|
||||
cava_proc = subprocess.Popen(['cava', '-p', cava_conf], stdout=subprocess.PIPE)
|
||||
self_proc = subprocess.Popen(['python3', __file__, '--subproc', opts.extra_colors], stdin=cava_proc.stdout)
|
||||
|
||||
def cleanup(sig, frame):
|
||||
os.remove(cava_conf)
|
||||
cava_proc.kill()
|
||||
self_proc.kill()
|
||||
sys.exit(0)
|
||||
|
||||
signal.signal(signal.SIGTERM, cleanup)
|
||||
signal.signal(signal.SIGINT, cleanup)
|
||||
|
||||
self_proc.wait()
|
|
@ -1,13 +1,12 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
# Terminate already running bar instances
|
||||
# If all your bars have ipc enabled, you can use
|
||||
polybar-msg cmd quit
|
||||
# Otherwise you can use the nuclear option:
|
||||
# killall -q polybar
|
||||
killall -q polybar
|
||||
|
||||
# Launch bar1 and bar2
|
||||
echo "---" | tee -a /tmp/bar.log
|
||||
polybar bar 2>&1 | tee -a /tmp/bar.log & disown
|
||||
polybar top 2>&1 | tee -a /tmp/bar.log & disown
|
||||
|
||||
echo "Bar launched..."
|
||||
|
|
|
@ -552,3 +552,4 @@ else:
|
|||
print(_dbusValueToPython(current_player._metadata))
|
||||
elif args.command == 'raise' and current_player:
|
||||
current_player.raisePlayer()
|
||||
|
||||
|
|
|
@ -1 +0,0 @@
|
|||
Subproject commit fb48d19f5d5acf23586d3803e12c9538832d8789
|
Loading…
Reference in a new issue