Updated
This commit is contained in:
0
artix/herbstluftwm/autostart
Executable file → Normal file
0
artix/herbstluftwm/autostart
Executable file → Normal file
0
artix/polybar/launch.sh
Executable file → Normal file
0
artix/polybar/launch.sh
Executable file → Normal file
0
artix/polybar/scripts/bat_toggle.sh
Executable file → Normal file
0
artix/polybar/scripts/bat_toggle.sh
Executable file → Normal file
0
artix/polybar/scripts/brightnessctl.sh
Executable file → Normal file
0
artix/polybar/scripts/brightnessctl.sh
Executable file → Normal file
@ -1,47 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
# ________
|
|
||||||
# | _____ \
|
|
||||||
# | | _/ / Pim Nelissen
|
|
||||||
# | | /__/ https://pim.wtf/
|
|
||||||
# | |
|
|
||||||
# \_|
|
|
||||||
|
|
||||||
# Alacritty config.
|
|
||||||
# Comments and examples have been removed for the sake of brevity. Please consult the alacritty GitHub for detailed example config.
|
|
||||||
|
|
||||||
env:
|
|
||||||
TERM: xterm-256color
|
|
||||||
|
|
||||||
window:
|
|
||||||
padding:
|
|
||||||
x: 4
|
|
||||||
y: 4
|
|
||||||
|
|
||||||
# Font configuration
|
|
||||||
font:
|
|
||||||
normal:
|
|
||||||
family: RobotoMono
|
|
||||||
|
|
||||||
# Bold font face
|
|
||||||
bold:
|
|
||||||
family: RobotoMono
|
|
||||||
style: Bold
|
|
||||||
|
|
||||||
# Italic font face
|
|
||||||
italic:
|
|
||||||
family: RobotoMono
|
|
||||||
style: Italic
|
|
||||||
|
|
||||||
# Point size
|
|
||||||
size: 12.0
|
|
||||||
|
|
||||||
colors:
|
|
||||||
# Default colors
|
|
||||||
primary:
|
|
||||||
background: '#191919'
|
|
||||||
# foreground: '#c5c8c6'
|
|
||||||
|
|
||||||
# Vi mode cursor colors
|
|
||||||
vi_mode_cursor:
|
|
||||||
text: CellBackground
|
|
||||||
cursor: CellForeground
|
|
@ -1,44 +0,0 @@
|
|||||||
#
|
|
||||||
# ________
|
|
||||||
# | _____ \
|
|
||||||
# | | _/ / Pim Nelissen
|
|
||||||
# | | /__/ https://pim.wtf/
|
|
||||||
# | |
|
|
||||||
# \_|
|
|
||||||
#
|
|
||||||
# betterlockscreen configuration file.
|
|
||||||
|
|
||||||
# Options
|
|
||||||
display_on=0
|
|
||||||
span_image=false
|
|
||||||
lock_timeout=300
|
|
||||||
fx_list=(dim blur dimblur pixel dimpixel color)
|
|
||||||
dim_level=40
|
|
||||||
blur_level=1
|
|
||||||
pixel_scale=10,1000
|
|
||||||
solid_color=333333
|
|
||||||
wallpaper_cmd="nitrogen --set-zoom-fill ~/.wallpapers/sf.jpg"
|
|
||||||
quiet=false
|
|
||||||
|
|
||||||
# Theme
|
|
||||||
loginbox=00000066
|
|
||||||
loginshadow=00000000
|
|
||||||
locktext="Type password to unlock..."
|
|
||||||
font="roboto-mono"
|
|
||||||
ringcolor=ffffffff
|
|
||||||
insidecolor=00000000
|
|
||||||
separatorcolor=00000000
|
|
||||||
ringvercolor=ffffffff
|
|
||||||
insidevercolor=00000000
|
|
||||||
ringwrongcolor=ffffffff
|
|
||||||
insidewrongcolor=d23c3dff
|
|
||||||
timecolor=ffffffff
|
|
||||||
time_format="%H:%M:%S"
|
|
||||||
greetercolor=ffffffff
|
|
||||||
layoutcolor=ffffffff
|
|
||||||
keyhlcolor=d23c3dff
|
|
||||||
bshlcolor=d23c3dff
|
|
||||||
verifcolor=ffffffff
|
|
||||||
wrongcolor=d23c3dff
|
|
||||||
modifcolor=d23c3dff
|
|
||||||
bgcolor=000000ff
|
|
@ -15,7 +15,8 @@ pgrep -x sxhkd > /dev/null || sxhkd &
|
|||||||
$HOME/.config/polybar/launch.sh
|
$HOME/.config/polybar/launch.sh
|
||||||
|
|
||||||
# Set wallpaper.
|
# Set wallpaper.
|
||||||
feh --bg-fill $HOME/.wallpapers/mountains.jpeg
|
feh --bg-fill $HOME/Pictures/Wallpapers/Forest.png
|
||||||
|
picom -b &
|
||||||
|
|
||||||
# Load BT & Network tray applets.
|
# Load BT & Network tray applets.
|
||||||
blueman-manager &
|
blueman-manager &
|
||||||
@ -52,3 +53,6 @@ bspc rule -a Nextcloud state=floating
|
|||||||
bspc rule -a Galculator state=floating
|
bspc rule -a Galculator state=floating
|
||||||
bspc rule -a Zathura state=tiled
|
bspc rule -a Zathura state=tiled
|
||||||
bspc rule -a Emacs state=tiled
|
bspc rule -a Emacs state=tiled
|
||||||
|
|
||||||
|
bspc config normal_border_color "#34494c"
|
||||||
|
bspc config focused_border_color "#8aa9a1"
|
||||||
|
33
void/kitty/kitty.conf
Normal file
33
void/kitty/kitty.conf
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
font_family RobotoMono
|
||||||
|
bold_font auto
|
||||||
|
italic_font auto
|
||||||
|
bold_italic_font auto
|
||||||
|
|
||||||
|
font_size 14.0
|
||||||
|
|
||||||
|
|
||||||
|
background #101e1f
|
||||||
|
foreground #aacac1
|
||||||
|
cursor #cccccc
|
||||||
|
selection_background #e96153
|
||||||
|
selection_foreground #101e1f
|
||||||
|
|
||||||
|
color0 #242426
|
||||||
|
color8 #34494c
|
||||||
|
color1 #f8501a
|
||||||
|
color9 #f64319
|
||||||
|
color2 #3d7155
|
||||||
|
color10 #74eb4c
|
||||||
|
color3 #f9761d
|
||||||
|
color11 #fcc224
|
||||||
|
color4 #2c70b7
|
||||||
|
color12 #3393c9
|
||||||
|
color5 #f02d4e
|
||||||
|
color13 #e75e4e
|
||||||
|
color6 #3ba0a5
|
||||||
|
color14 #4ebce5
|
||||||
|
color7 #8aa9a1
|
||||||
|
color15 #8b735a
|
||||||
|
|
||||||
|
# vim:fileencoding=utf-8:ft=conf
|
||||||
|
|
@ -10,12 +10,11 @@
|
|||||||
# Main settings.
|
# Main settings.
|
||||||
backend = "glx";
|
backend = "glx";
|
||||||
experimental-backends = true;
|
experimental-backends = true;
|
||||||
vsync = "true";
|
vsync = true;
|
||||||
refresh-rate = 60;
|
|
||||||
|
|
||||||
# Opacity and dimming.
|
# Opacity and dimming.
|
||||||
active-opacity = 0.92;
|
active-opacity = 1.0;
|
||||||
inactive-opacity = 0.92;
|
inactive-opacity = 1.0;
|
||||||
frame-opacity = 1.0;
|
frame-opacity = 1.0;
|
||||||
opacity = 1.0
|
opacity = 1.0
|
||||||
inactive-opacity-override = false
|
inactive-opacity-override = false
|
||||||
@ -23,47 +22,17 @@ inactive-dim = 0.0
|
|||||||
inactive-dim-fixed = 1.0
|
inactive-dim-fixed = 1.0
|
||||||
focus-exclude = []
|
focus-exclude = []
|
||||||
|
|
||||||
# Opacity exceptions.
|
|
||||||
opacity-rule = [
|
|
||||||
"100:name *= 'Netflix'",
|
|
||||||
"100:name *= 'RawTherapee'",
|
|
||||||
"100:name *= 'YouTube'",
|
|
||||||
"100:name *= 'Invidious'",
|
|
||||||
"100:name *= 'mpv'",
|
|
||||||
"100:name *= 'GIMP'",
|
|
||||||
"100:name *= 'Minecraft'",
|
|
||||||
"100:name *= 'Piped'",
|
|
||||||
"100:name *= 'QEMU'"
|
|
||||||
];
|
|
||||||
|
|
||||||
# Blur
|
|
||||||
blur:
|
|
||||||
{
|
|
||||||
method = "dual_kawase";
|
|
||||||
strength = 3;
|
|
||||||
deviation = 1.0;
|
|
||||||
background = false;
|
|
||||||
background-frame = false;
|
|
||||||
background-fixed = false;
|
|
||||||
kern = "3x3box"
|
|
||||||
}
|
|
||||||
|
|
||||||
# Shadows
|
# Shadows
|
||||||
shadow = true;
|
shadow = true;
|
||||||
shadow-opacity = 0.5;
|
shadow-opacity = 0.8;
|
||||||
shadow-radius = 15;
|
shadow-radius = 20;
|
||||||
shadow-offset-x = -15;
|
shadow-offset-x = -20;
|
||||||
shadow-offset-y = -15;
|
shadow-offset-y = -20;
|
||||||
|
|
||||||
# Corners
|
|
||||||
corner-radius = 12;
|
|
||||||
round-borders = 1;
|
|
||||||
|
|
||||||
wintypes:
|
wintypes:
|
||||||
{
|
{
|
||||||
normal = { fade = false; shadow = true; }
|
normal = { fade = false; shadow = true; }
|
||||||
tooltip = { fade = true; shadow = true; opacity = 0.9; focus = true; full-shadow = false; };
|
tooltip = { fade = true; shadow = true; opacity = 0.9; focus = true; full-shadow = false; };
|
||||||
dock = { shadow = false; }
|
|
||||||
dnd = { shadow = false; }
|
dnd = { shadow = false; }
|
||||||
popup_menu = { opacity = 0.9; }
|
popup_menu = { opacity = 0.9; }
|
||||||
dropdown_menu = { opacity = 1.0; }
|
dropdown_menu = { opacity = 1.0; }
|
||||||
|
@ -1,233 +0,0 @@
|
|||||||
;==========================================================
|
|
||||||
;
|
|
||||||
; ██████╗ ██████╗ ██╗ ██╗ ██╗██████╗ █████╗ ██████╗
|
|
||||||
; ██╔══██╗██╔═══██╗██║ ╚██╗ ██╔╝██╔══██╗██╔══██╗██╔══██╗
|
|
||||||
; ██████╔╝██║ ██║██║ ╚████╔╝ ██████╔╝███████║██████╔╝
|
|
||||||
; ██╔═══╝ ██║ ██║██║ ╚██╔╝ ██╔══██╗██╔══██║██╔══██╗
|
|
||||||
; ██║ ╚██████╔╝███████╗██║ ██████╔╝██║ ██║██║ ██║
|
|
||||||
; ╚═╝ ╚═════╝ ╚══════╝╚═╝ ╚═════╝ ╚═╝ ╚═╝╚═╝ ╚═╝
|
|
||||||
;
|
|
||||||
;==========================================================
|
|
||||||
|
|
||||||
[colors]
|
|
||||||
;background = ${xrdb:color0:#222}
|
|
||||||
background = #222
|
|
||||||
background-alt = #444
|
|
||||||
;foreground = ${xrdb:color7:#222}
|
|
||||||
foreground = #dfdfdf
|
|
||||||
foreground-alt = #555
|
|
||||||
primary = #ffb52a
|
|
||||||
secondary = #e60053
|
|
||||||
alert = #bd2c40
|
|
||||||
|
|
||||||
[bar/example]
|
|
||||||
;monitor = ${env:MONITOR:HDMI-1}
|
|
||||||
width = 100%
|
|
||||||
height = 32
|
|
||||||
;offset-x = 1%
|
|
||||||
;offset-y = 1%
|
|
||||||
radius = 1.0
|
|
||||||
fixed-center = true
|
|
||||||
|
|
||||||
background = ${colors.background}
|
|
||||||
foreground = ${colors.foreground}
|
|
||||||
|
|
||||||
line-size = 3
|
|
||||||
line-color = #f00
|
|
||||||
|
|
||||||
border-size = 4
|
|
||||||
border-color = #00000000
|
|
||||||
|
|
||||||
padding-left = 0
|
|
||||||
padding-right = 1
|
|
||||||
|
|
||||||
module-margin-left = 1
|
|
||||||
module-margin-right = 1
|
|
||||||
|
|
||||||
font-0 = RobotoMono:pixelsize=10;1
|
|
||||||
font-1 = noto-fonts-emoji:pixelsize=10;1
|
|
||||||
|
|
||||||
modules-left = bspwm
|
|
||||||
modules-center = mpd
|
|
||||||
modules-right = backlight-acpi battery wlan date powermenu
|
|
||||||
|
|
||||||
tray-position = right
|
|
||||||
tray-padding = 1
|
|
||||||
;tray-background = #0063ff
|
|
||||||
|
|
||||||
wm-restack = bspwm
|
|
||||||
|
|
||||||
cursor-click = pointer
|
|
||||||
cursor-scroll = ns-resize
|
|
||||||
|
|
||||||
[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/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 = #f90000
|
|
||||||
label = %percentage:2%%
|
|
||||||
|
|
||||||
[module/wlan]
|
|
||||||
type = internal/network
|
|
||||||
interface = wlp8s0
|
|
||||||
interval = 3.0
|
|
||||||
|
|
||||||
format-connected = <ramp-signal> <label-connected>
|
|
||||||
format-connected-underline = #9f78e1
|
|
||||||
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 = void0
|
|
||||||
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 = 1
|
|
||||||
|
|
||||||
date = %Y-%m-%d
|
|
||||||
date-alt = %Y-%m-%d
|
|
||||||
|
|
||||||
time = %H:%M:%S
|
|
||||||
time-alt = %H:%M:%S
|
|
||||||
|
|
||||||
format-prefix =
|
|
||||||
format-prefix-foreground = ${colors.foreground-alt}
|
|
||||||
format-underline = #0a6cf5
|
|
||||||
|
|
||||||
label = %date% %time%
|
|
||||||
|
|
||||||
[module/battery]
|
|
||||||
type = internal/battery
|
|
||||||
battery = BAT1
|
|
||||||
adapter = ACAD
|
|
||||||
full-at = 98
|
|
||||||
|
|
||||||
format-charging = <animation-charging> <label-charging>
|
|
||||||
format-charging-underline = #ffb52a
|
|
||||||
|
|
||||||
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 = 60
|
|
||||||
|
|
||||||
format = <ramp> <label>
|
|
||||||
format-underline = #f50a4d
|
|
||||||
format-warn = <ramp> <label-warn>
|
|
||||||
format-warn-underline = ${self.format-underline}
|
|
||||||
|
|
||||||
label = %temperature-c%
|
|
||||||
label-warn = %temperature-c%
|
|
||||||
label-warn-foreground = ${colors.secondary}
|
|
||||||
|
|
||||||
ramp-0 =
|
|
||||||
ramp-1 =
|
|
||||||
ramp-2 =
|
|
||||||
ramp-foreground = ${colors.foreground-alt}
|
|
||||||
|
|
||||||
[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
|
|
@ -1,2 +0,0 @@
|
|||||||
# Visit https://developers.coinranking.com/create-account to make an account and generate a free API key.
|
|
||||||
# ADD YOUR API KEY ON A NEW LINE BELOW HERE.
|
|
@ -1,198 +0,0 @@
|
|||||||
# ________
|
|
||||||
# | _____ \
|
|
||||||
# | | _/ / Pim Nelissen
|
|
||||||
# | | /__/ https://pim.wtf/
|
|
||||||
# | |
|
|
||||||
# \_|
|
|
||||||
|
|
||||||
# Polybar configuation file.
|
|
||||||
|
|
||||||
[colors]
|
|
||||||
background = #dd191919
|
|
||||||
foreground = #ddffffff
|
|
||||||
|
|
||||||
background-alt = #444
|
|
||||||
foreground-alt = #555
|
|
||||||
|
|
||||||
primary = #ffb52a
|
|
||||||
alert = #bd2c40
|
|
||||||
|
|
||||||
[bar/top]
|
|
||||||
width = 1890
|
|
||||||
height = 35
|
|
||||||
|
|
||||||
background = ${colors.background}
|
|
||||||
foreground = ${colors.foreground}
|
|
||||||
border-color = #00000000
|
|
||||||
|
|
||||||
offset-y = 15
|
|
||||||
offset-x = 15
|
|
||||||
|
|
||||||
padding-left = 0
|
|
||||||
padding-right = 10
|
|
||||||
|
|
||||||
spacing = 1
|
|
||||||
module-margin-left = 1
|
|
||||||
|
|
||||||
font-0 = RobotoMono:size=11;2
|
|
||||||
font-1 = MaterialIcons;3
|
|
||||||
|
|
||||||
modules-left = bspwm
|
|
||||||
modules-right = xbps-updates pulseaudio-control battery
|
|
||||||
modules-center = date
|
|
||||||
fixed-center = true
|
|
||||||
|
|
||||||
tray-position = right
|
|
||||||
tray-detached = true
|
|
||||||
tray-padding = 1
|
|
||||||
|
|
||||||
[module/xbps-updates]
|
|
||||||
type = custom/script
|
|
||||||
exec = ~/.config/polybar/scripts/xbps-updates.sh
|
|
||||||
click-left = alacritty -e sudo xbps-install -Su
|
|
||||||
interval = 60
|
|
||||||
label-foreground = ${colors.foreground}
|
|
||||||
|
|
||||||
[module/pulseaudio-control]
|
|
||||||
type = custom/script
|
|
||||||
tail = true
|
|
||||||
label-foreground = ${colors.foreground}
|
|
||||||
|
|
||||||
exec = ~/.config/polybar/scripts/pulseaudio-control.bash --icons-volume ", , " --icon-muted "" --sink-nicknames-from "alsa.card_name" --sink-nickname "usb-Topping_D30-00.analog-stereo: D30" --sink-nickname "alsa_output.pci-0000_00_1f.3.analog-stereo.monitor: Speakers" listen
|
|
||||||
click-right = exec pavucontrol &
|
|
||||||
click-left = ~/.config/polybar/scripts/pulseaudio-control.bash togmute
|
|
||||||
click-middle = ~/.config/polybar/scripts/pulseaudio-control.bash --sink-blacklist "alsa_output.pci-0000_00_1f.3.analog-stereo.monitor" next-sink
|
|
||||||
scroll-up = ~/.config/polybar/scripts/pulseaudio-control.bash --volume-max 130 up
|
|
||||||
scroll-down = ~/.config/polybar/scripts/pulseaudio-control.bash --volume-max 130 down
|
|
||||||
|
|
||||||
[module/brightnessctl]
|
|
||||||
type = custom/script
|
|
||||||
exec = ~/.config/polybar/scripts/brightnessctl.sh
|
|
||||||
|
|
||||||
scroll-up = exec brightnessctl set +5%
|
|
||||||
scroll-down = exec brightnessctl set 5%-
|
|
||||||
interval = 0.5
|
|
||||||
|
|
||||||
label = %output%
|
|
||||||
label-foreground = ${colors.foreground}
|
|
||||||
|
|
||||||
[module/xwindow]
|
|
||||||
type = internal/xwindow
|
|
||||||
|
|
||||||
[module/battery]
|
|
||||||
type = internal/battery
|
|
||||||
battery = BAT1
|
|
||||||
adapter = ACAD
|
|
||||||
full-at = 98
|
|
||||||
|
|
||||||
click-left = ~/.config/polybar/scripts/bat_toggle.sh
|
|
||||||
format-charging = <label-charging>
|
|
||||||
format-discharging = <ramp-capacity><label-discharging>
|
|
||||||
format-full = ""
|
|
||||||
|
|
||||||
format-charging-foreground = #90C2E7
|
|
||||||
|
|
||||||
ramp-capacity-0 =
|
|
||||||
ramp-capacity-0-foreground = #DB5461
|
|
||||||
ramp-capacity-1 =
|
|
||||||
ramp-capacity-1-foreground = #E9C46A
|
|
||||||
ramp-capacity-2 =
|
|
||||||
ramp-capacity-2-foreground = #E9C46A
|
|
||||||
ramp-capacity-3 =
|
|
||||||
ramp-capacity-3-foreground = #169873
|
|
||||||
ramp-capacity-4 =
|
|
||||||
ramp-capacity-4-foreground = #169873
|
|
||||||
|
|
||||||
bar-capacity-width = 10
|
|
||||||
bar-capacity-format = %{+u}%{+o}%fill%%empty%%{-u}%{-o}
|
|
||||||
bar-capacity-fill = █
|
|
||||||
bar-capacity-fill-foreground = #ddffffff
|
|
||||||
bar-capacity-fill-font = 3
|
|
||||||
bar-capacity-empty = █
|
|
||||||
bar-capacity-empty-font = 3
|
|
||||||
bar-capacity-empty-foreground = #44ffffff
|
|
||||||
|
|
||||||
[module/bspwm]
|
|
||||||
type = internal/bspwm
|
|
||||||
|
|
||||||
pin-workspaces = true
|
|
||||||
fuzzy-match = true
|
|
||||||
|
|
||||||
ws-icon-0 = I;
|
|
||||||
ws-icon-1 = II;
|
|
||||||
ws-icon-2 = III;
|
|
||||||
ws-icon-3 = IV;
|
|
||||||
ws-icon-4 = V;
|
|
||||||
ws-icon-5 = VI;
|
|
||||||
ws-icon-6 = VII;
|
|
||||||
ws-icon-7 = VIII;
|
|
||||||
format = <label-state>
|
|
||||||
|
|
||||||
label-monitor = %icon%
|
|
||||||
|
|
||||||
label-focused = %icon%
|
|
||||||
label-focused-background= ${colors.background-alt}
|
|
||||||
label-focused-padding = 1
|
|
||||||
|
|
||||||
label-occupied = %icon%
|
|
||||||
label-occupied-padding = 1
|
|
||||||
|
|
||||||
label-urgent = %icon%
|
|
||||||
label-urgent-background = ${colors.alert}
|
|
||||||
label-urgent-padding = 1
|
|
||||||
|
|
||||||
label-empty = %icon%
|
|
||||||
label-empty-foreground = ${colors.foreground-alt}
|
|
||||||
label-empty-padding = 1
|
|
||||||
|
|
||||||
[module/date]
|
|
||||||
type = internal/date
|
|
||||||
date = %H:%M
|
|
||||||
format = <label>
|
|
||||||
; full date: %Y-%m-%d %H:%M:%S
|
|
||||||
|
|
||||||
[module/wlan]
|
|
||||||
type = internal/network
|
|
||||||
interface = enp7s0
|
|
||||||
interval = 5.0
|
|
||||||
|
|
||||||
format-connected = eth
|
|
||||||
|
|
||||||
[module/wireless-network]
|
|
||||||
type = internal/network
|
|
||||||
interface = wlp8s0
|
|
||||||
interval = 5.0
|
|
||||||
ping-interval = 10
|
|
||||||
|
|
||||||
label-connected = %essid%
|
|
||||||
format-connected = <ramp-signal><label-connected>
|
|
||||||
label-disconnected-foreground = ${colors.foreground-alt}
|
|
||||||
|
|
||||||
ramp-signal-0 =
|
|
||||||
ramp-signal-1 =
|
|
||||||
ramp-signal-2 =
|
|
||||||
ramp-signal-3 =
|
|
||||||
ramp-signal-4 =
|
|
||||||
|
|
||||||
animation-packetloss-0 =
|
|
||||||
animation-packetloss-0-foreground = #ffa64c
|
|
||||||
animation-packetloss-1 =
|
|
||||||
animation-packetloss-1-foreground = ${bar/top.foreground}
|
|
||||||
animation-packetloss-framerate = 500
|
|
||||||
|
|
||||||
[module/volume]
|
|
||||||
type = internal/volume
|
|
||||||
speaker-mixer = Speaker
|
|
||||||
headphone-mixer = Headphone
|
|
||||||
headphone-id = 9
|
|
||||||
|
|
||||||
format-volume = <ramp-volume> <label-volume>
|
|
||||||
label-muted = muted
|
|
||||||
label-muted-foreground = #66
|
|
||||||
|
|
||||||
ramp-volume-0 =
|
|
||||||
ramp-volume-1 =
|
|
||||||
ramp-volume-2 =
|
|
||||||
ramp-volume-3 =
|
|
||||||
|
|
||||||
; vim:ft=dosini
|
|
@ -1,11 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
# Terminate already running bar instances
|
|
||||||
pkill polybar
|
|
||||||
# If all your bars have ipc enabled, you can also use
|
|
||||||
# polybar-msg cmd quit
|
|
||||||
|
|
||||||
# Launch Polybar, using default config location ~/.config/polybar/config
|
|
||||||
polybar top | tee -a /tmp/polybar.log & disown
|
|
||||||
|
|
||||||
echo "Polybar launched..."
|
|
@ -1,3 +0,0 @@
|
|||||||
# Visit https://developers.coinranking.com/create-account to make an account and generate a free API key.
|
|
||||||
# ADD YOUR API KEY ON A NEW LINE BELOW HERE.
|
|
||||||
coinranking667e22ef80713a74e538696d841e19ade62f38679290e928
|
|
@ -1,9 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
|
|
||||||
updates=$(xbps-install -Mun 2> /dev/null | wc -l)
|
|
||||||
|
|
||||||
if [ -n "$updates" ] && [ "$updates" -gt 0 ]; then
|
|
||||||
echo " $updates"
|
|
||||||
else
|
|
||||||
echo ""
|
|
||||||
fi
|
|
@ -1,16 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
BRIGHTNESS_VALUE=`brightnessctl | grep -o "(.*" | tr -d "()"`
|
|
||||||
BRIGHTNESS_NR=${BRIGHTNESS_VALUE//%}
|
|
||||||
|
|
||||||
if [ $BRIGHTNESS_NR -lt 20 ]; then
|
|
||||||
BRIGHTNESS_ICON=''
|
|
||||||
elif [ $BRIGHTNESS_NR -lt 50 ]; then
|
|
||||||
BRIGHTNESS_ICON=''
|
|
||||||
elif [ $BRIGHTNESS_NR -lt 80 ]; then
|
|
||||||
BRIGHTNESS_ICON=''
|
|
||||||
else
|
|
||||||
BRIGHTNESS_ICON=''
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "$BRIGHTNESS_ICON $BRIGHTNESS_VALUE"
|
|
||||||
|
|
@ -1,3 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
|
|
||||||
echo bluetoothctl paired-devices | wc -l
|
|
@ -1,304 +0,0 @@
|
|||||||
e900:1st
|
|
||||||
e901:ada
|
|
||||||
e902:adc
|
|
||||||
e903:adx
|
|
||||||
e904:aeon
|
|
||||||
e905:amp
|
|
||||||
e906:anc
|
|
||||||
e907:ant
|
|
||||||
e908:arch
|
|
||||||
e909:ardr
|
|
||||||
e90a:aur
|
|
||||||
e90b:banx
|
|
||||||
e90c:bat
|
|
||||||
e90d:bay
|
|
||||||
e90e:bc
|
|
||||||
e90f:bch
|
|
||||||
e910:bcn
|
|
||||||
e911:bft
|
|
||||||
e912:bnb
|
|
||||||
e913:bnt
|
|
||||||
e914:brk
|
|
||||||
e915:brx
|
|
||||||
e916:bsd
|
|
||||||
e917:bta
|
|
||||||
e918:btc
|
|
||||||
e919:btcd
|
|
||||||
e91a:btg
|
|
||||||
e91b:btm
|
|
||||||
e91c:bts
|
|
||||||
e91d:clam
|
|
||||||
e91e:clo
|
|
||||||
e91f:cloak
|
|
||||||
e920:cvc
|
|
||||||
e921:dao
|
|
||||||
e922:dash
|
|
||||||
e923:dcr
|
|
||||||
e924:dct
|
|
||||||
e925:dent
|
|
||||||
e926:dgb
|
|
||||||
e927:dgd
|
|
||||||
e928:dgx
|
|
||||||
e929:dmd
|
|
||||||
e92a:dnt
|
|
||||||
e92b:doge
|
|
||||||
e92c:edg
|
|
||||||
e92d:emc
|
|
||||||
e92e:eos
|
|
||||||
e92f:erc
|
|
||||||
e930:etc
|
|
||||||
e931:eth
|
|
||||||
e932:exp
|
|
||||||
e933:fc2
|
|
||||||
e934:fcn
|
|
||||||
e935:fct
|
|
||||||
e936:flo
|
|
||||||
e937:frk
|
|
||||||
e938:ftc
|
|
||||||
e939:fun
|
|
||||||
e93a:game
|
|
||||||
e93b:gbg
|
|
||||||
e93c:gbyte
|
|
||||||
e93d:gdc
|
|
||||||
e93e:gemz
|
|
||||||
e93f:gld
|
|
||||||
e940:gno
|
|
||||||
e941:gnt
|
|
||||||
e942:golos
|
|
||||||
e943:grc
|
|
||||||
e944:grs
|
|
||||||
e945:gup
|
|
||||||
e946:awc
|
|
||||||
e947:hmq
|
|
||||||
e948:icn
|
|
||||||
e949:ifc
|
|
||||||
e94a:incnt
|
|
||||||
e94b:ioc
|
|
||||||
e94c:cnd
|
|
||||||
e94d:ixt
|
|
||||||
e94e:jbs
|
|
||||||
e94f:kmd
|
|
||||||
e950:kore
|
|
||||||
e951:lbc
|
|
||||||
e952:ldoge
|
|
||||||
e953:lsk
|
|
||||||
e954:ltc
|
|
||||||
e955:lun
|
|
||||||
e956:maid
|
|
||||||
e957:mco
|
|
||||||
e958:mint
|
|
||||||
e959:mln
|
|
||||||
e95a:mona
|
|
||||||
e95b:mrc
|
|
||||||
e95c:msc
|
|
||||||
e95d:msp
|
|
||||||
e95e:mtl
|
|
||||||
e95f:mtr
|
|
||||||
e960:mue
|
|
||||||
e961:nano
|
|
||||||
e962:nav
|
|
||||||
e963:nbt
|
|
||||||
e964:neo
|
|
||||||
e965:neos
|
|
||||||
e966:neu
|
|
||||||
e967:nlg
|
|
||||||
e968:nmc
|
|
||||||
e969:note
|
|
||||||
e96a:nvc
|
|
||||||
e96b:nxt
|
|
||||||
e96c:oax
|
|
||||||
e96d:ok
|
|
||||||
e96e:omg
|
|
||||||
e96f:omni
|
|
||||||
e970:opal
|
|
||||||
e971:part
|
|
||||||
e972:pay
|
|
||||||
e973:piggy
|
|
||||||
e974:pink
|
|
||||||
e975:pivx
|
|
||||||
e976:plbt
|
|
||||||
e977:plr
|
|
||||||
e978:plu
|
|
||||||
e979:pot
|
|
||||||
e97a:ppc
|
|
||||||
e97b:ptoy
|
|
||||||
e97c:qcn
|
|
||||||
e97d:qrk
|
|
||||||
e97e:qtum
|
|
||||||
e97f:rads
|
|
||||||
e980:rbies
|
|
||||||
e981:rbt
|
|
||||||
e982:rby
|
|
||||||
e983:rdd
|
|
||||||
e984:rep
|
|
||||||
e985:rise
|
|
||||||
e986:rlc
|
|
||||||
e987:salt
|
|
||||||
e988:sar
|
|
||||||
e989:scot
|
|
||||||
e98a:sdc
|
|
||||||
e98b:sia
|
|
||||||
e98c:sjcx
|
|
||||||
e98d:slg
|
|
||||||
e98e:sls
|
|
||||||
e98f:sngls
|
|
||||||
e990:snrg
|
|
||||||
e991:snt
|
|
||||||
e992:start
|
|
||||||
e993:steem
|
|
||||||
e994:storj
|
|
||||||
e995:str
|
|
||||||
e996:strat
|
|
||||||
e997:swift
|
|
||||||
e998:swt
|
|
||||||
e999:sync
|
|
||||||
e99a:sys
|
|
||||||
e99b:time
|
|
||||||
e99c:tkn
|
|
||||||
e99d:trig
|
|
||||||
e99e:trst
|
|
||||||
e99f:trx
|
|
||||||
e9a0:tx
|
|
||||||
e9a1:ubq
|
|
||||||
e9a2:unity
|
|
||||||
e9a3:usdt
|
|
||||||
e9a4:ven
|
|
||||||
e9a5:vior
|
|
||||||
e9a6:vnl
|
|
||||||
e9a7:vpn
|
|
||||||
e9a8:vrc
|
|
||||||
e9a9:vtc
|
|
||||||
e9aa:waves
|
|
||||||
e9ab:wings
|
|
||||||
e9ac:xai
|
|
||||||
e9ad:xaur
|
|
||||||
e9ae:xbs
|
|
||||||
e9af:xcp
|
|
||||||
e9b0:xdn
|
|
||||||
e9b1:xem
|
|
||||||
e9b2:xmr
|
|
||||||
e9b3:xpm
|
|
||||||
e9b4:xrp
|
|
||||||
e9b5:xtz
|
|
||||||
e9b7:xzc
|
|
||||||
e9b8:ybc
|
|
||||||
e9b9:zec
|
|
||||||
e9ba:zeit
|
|
||||||
e9bb:zrx
|
|
||||||
e9bc:stx
|
|
||||||
e9bd:sbtc
|
|
||||||
e9be:rcn
|
|
||||||
e9bf:nmr
|
|
||||||
e9c0:zil
|
|
||||||
e9c1:vib
|
|
||||||
e9c2:xnn
|
|
||||||
e9c3:viu
|
|
||||||
e9c4:veri
|
|
||||||
e9c5:sc
|
|
||||||
e9c6:rhoc
|
|
||||||
e9c7:kcs
|
|
||||||
e9c8:icx
|
|
||||||
e9c9:ark
|
|
||||||
e9ca:ae
|
|
||||||
e9cb:tip
|
|
||||||
e9cc:crpt
|
|
||||||
e9cd:via
|
|
||||||
e9ce:myst
|
|
||||||
e9cf:miota
|
|
||||||
e9d0:adt
|
|
||||||
e9d1:eng
|
|
||||||
e9d2:cfi
|
|
||||||
e9d3:dsh
|
|
||||||
e9d4:xlm
|
|
||||||
e9d5:fsbt
|
|
||||||
e9d6:atl
|
|
||||||
e9d7:ath
|
|
||||||
e9d8:arn
|
|
||||||
e9d9:arc
|
|
||||||
e9da:apt
|
|
||||||
e9db:aidoc
|
|
||||||
e9dc:amis
|
|
||||||
e9dd:adst
|
|
||||||
e9de:300
|
|
||||||
e9df:ngc
|
|
||||||
e9e0:srn
|
|
||||||
e9e1:wax
|
|
||||||
e9e2:dcn
|
|
||||||
e9e3:powr
|
|
||||||
e9e4:dkk
|
|
||||||
e9e5:gbp
|
|
||||||
e9e6:eur
|
|
||||||
e9e7:usd
|
|
||||||
e9e8:ukg
|
|
||||||
e9e9:lrc
|
|
||||||
e9ea:brd
|
|
||||||
e9eb:mana
|
|
||||||
e9ec:mer
|
|
||||||
e9ed:tix
|
|
||||||
e9ee:xel
|
|
||||||
e9ef:zen
|
|
||||||
e9f0:btcp
|
|
||||||
e9f1:ebst
|
|
||||||
e9f2:elf
|
|
||||||
e9f3:hsr
|
|
||||||
e9f4:iost
|
|
||||||
e9f5:loom
|
|
||||||
e9f6:mkr
|
|
||||||
e9f7:nas
|
|
||||||
e9f8:now
|
|
||||||
e9f9:snm
|
|
||||||
e9fa:synx
|
|
||||||
e9fb:wan
|
|
||||||
e9fd:ely
|
|
||||||
e9fe:ela
|
|
||||||
e9ff:smart
|
|
||||||
ea00:aion
|
|
||||||
ea01:tusd
|
|
||||||
ea02:usdc
|
|
||||||
ea03:vet
|
|
||||||
ea04:pax
|
|
||||||
ea05:joys
|
|
||||||
ea06:bchsv
|
|
||||||
ea07:bsv
|
|
||||||
ea08:bth
|
|
||||||
ea09:trezor
|
|
||||||
ea0a:ledger
|
|
||||||
ea0b:r
|
|
||||||
ea0c:npxs
|
|
||||||
ea0d:dai
|
|
||||||
ea0e:link
|
|
||||||
ea0f:hot
|
|
||||||
ea10:gusd
|
|
||||||
ea11:eurs
|
|
||||||
ea12:vtho
|
|
||||||
ea13:kin
|
|
||||||
ea14:ont
|
|
||||||
ea15:atom
|
|
||||||
ea16:ankr
|
|
||||||
ea17:erd
|
|
||||||
ea18:ftm
|
|
||||||
ea19:lto
|
|
||||||
ea1a:und
|
|
||||||
ea1b:vera
|
|
||||||
ea1c:yec
|
|
||||||
ea1d:aya
|
|
||||||
ea1e:ethplo
|
|
||||||
ea1f:iotx
|
|
||||||
ea20:enj
|
|
||||||
ea21:rvn
|
|
||||||
ea22:xns
|
|
||||||
ea23:pyn
|
|
||||||
ea24:ncash
|
|
||||||
ea25:loki
|
|
||||||
ea26:knc
|
|
||||||
ea27:job
|
|
||||||
ea28:chz
|
|
||||||
ea29:btu
|
|
||||||
ea2a:apis
|
|
||||||
ea2b:gas
|
|
||||||
ea2c:busd
|
|
||||||
ea2d:iq
|
|
||||||
ea2e:lst
|
|
||||||
ea2f:ong
|
|
||||||
ea30:nut
|
|
||||||
ea31:eosdt
|
|
@ -1,61 +0,0 @@
|
|||||||
#!/usr/bin/env python3
|
|
||||||
|
|
||||||
import requests
|
|
||||||
import argparse
|
|
||||||
import sys
|
|
||||||
import os
|
|
||||||
|
|
||||||
parser = argparse.ArgumentParser(description="Display currencies on polybar")
|
|
||||||
parser.add_argument("--coins", type=str,
|
|
||||||
nargs="+", help="Select coins to display")
|
|
||||||
parser.add_argument("--base", type=str,
|
|
||||||
nargs="?", default="USD", help="Currency base to convert against")
|
|
||||||
parser.add_argument("--decimals", type=int,
|
|
||||||
nargs="?", default=2, help="How many decimals to show")
|
|
||||||
parser.add_argument("--display", type=str,
|
|
||||||
nargs="?", default="price", choices=["price", "percentage", "both"], help="Display mode")
|
|
||||||
|
|
||||||
args = parser.parse_args()
|
|
||||||
path = os.getcwd()
|
|
||||||
|
|
||||||
if not os.path.exists(f"{path}/scripts/apikey.txt"):
|
|
||||||
sys.stdout.write("API Key not found. Please add to apikey.txt")
|
|
||||||
with open('apikey.txt', 'w') as fp:
|
|
||||||
fp.write("# Visit https://developers.coinranking.com/create-account to make an account and generate a free API key.\n# ADD YOUR API KEY ON A NEW LINE BELOW HERE.")
|
|
||||||
|
|
||||||
else:
|
|
||||||
|
|
||||||
with open(f'{path}/scripts/apikey.txt', 'r') as fp:
|
|
||||||
apikey = [line for line in fp.readlines() if not line.startswith("#")][0]
|
|
||||||
apikey = str(apikey).replace("\n", "")
|
|
||||||
|
|
||||||
if not (args.coins and args.base):
|
|
||||||
parser.print_help()
|
|
||||||
parser.exit()
|
|
||||||
|
|
||||||
coin_args_list = map(lambda x: f'symbols[]={x}', args.coins)
|
|
||||||
coin_args_str = "&".join(coin_args_list)
|
|
||||||
|
|
||||||
get_base = requests.get(
|
|
||||||
f"https://api.coinranking.com/v2/reference-currencies?search={args.base}",
|
|
||||||
headers={'x-access-token': apikey}).json()["data"]
|
|
||||||
|
|
||||||
get_base = get_base['currencies'][0]
|
|
||||||
|
|
||||||
get_coin = requests.get(
|
|
||||||
f"https://api.coinranking.com/v2/coins?{coin_args_str}&referenceCurrencyUuid={get_base['uuid']}",
|
|
||||||
headers={'x-access-token': apikey}).json()['data']
|
|
||||||
|
|
||||||
for n in range(len(args.coins)):
|
|
||||||
coin = get_coin['coins'][n]
|
|
||||||
price_float = round(float(coin['price']), args.decimals)
|
|
||||||
delta = coin['change']
|
|
||||||
|
|
||||||
current_price = get_base['sign'] + str(price_float)
|
|
||||||
|
|
||||||
if args.display == "price":
|
|
||||||
sys.stdout.write(f" {coin['symbol']} {current_price} ")
|
|
||||||
elif args.display == "percentage":
|
|
||||||
sys.stdout.write(f" {coin['symbol']} {delta:+}% ")
|
|
||||||
elif args.display == "both":
|
|
||||||
sys.stdout.write(f" {coin['symbol']} {current_price} | {delta:+}% ")
|
|
@ -1,515 +0,0 @@
|
|||||||
#!/usr/bin/env bash
|
|
||||||
|
|
||||||
##################################################################
|
|
||||||
# Polybar Pulseaudio Control #
|
|
||||||
# https://github.com/marioortizmanero/polybar-pulseaudio-control #
|
|
||||||
##################################################################
|
|
||||||
|
|
||||||
# Defaults for configurable values, expected to be set by command-line arguments
|
|
||||||
AUTOSYNC="no"
|
|
||||||
COLOR_MUTED="%{F#6b6b6b}"
|
|
||||||
ICON_MUTED=
|
|
||||||
ICON_SINK=
|
|
||||||
NOTIFICATIONS="no"
|
|
||||||
OSD="no"
|
|
||||||
SINK_NICKNAMES_PROP=
|
|
||||||
VOLUME_STEP=2
|
|
||||||
VOLUME_MAX=130
|
|
||||||
# shellcheck disable=SC2016
|
|
||||||
FORMAT='$VOL_ICON ${VOL_LEVEL}% $ICON_SINK $SINK_NICKNAME'
|
|
||||||
declare -A SINK_NICKNAMES
|
|
||||||
declare -a ICONS_VOLUME
|
|
||||||
declare -a SINK_BLACKLIST
|
|
||||||
|
|
||||||
# Environment & global constants for the script
|
|
||||||
export LANG=en_US # Some calls depend on English outputs of pactl
|
|
||||||
END_COLOR="%{F-}" # For Polybar colors
|
|
||||||
|
|
||||||
|
|
||||||
# Saves the currently default sink into a variable named `curSink`. It will
|
|
||||||
# return an error code when pulseaudio isn't running.
|
|
||||||
function getCurSink() {
|
|
||||||
if ! pactl info &>/dev/null; then return 1; fi
|
|
||||||
local curSinkName
|
|
||||||
|
|
||||||
curSinkName=$(pactl info | awk '/Default Sink: / {print $3}')
|
|
||||||
curSink=$(pactl list sinks | grep -B 4 -E "Name: $curSinkName\$" | sed -nE 's/^Sink #([0-9]+)$/\1/p')
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
# Saves the sink passed by parameter's volume into a variable named `VOL_LEVEL`.
|
|
||||||
function getCurVol() {
|
|
||||||
VOL_LEVEL=$(pactl list sinks | grep -A 15 -E "^Sink #$1\$" | grep 'Volume:' | grep -E -v 'Base Volume:' | awk -F : '{print $3; exit}' | grep -o -P '.{0,3}%' | sed 's/.$//' | tr -d ' ')
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
# Saves the name of the sink passed by parameter into a variable named
|
|
||||||
# `sinkName`.
|
|
||||||
function getSinkName() {
|
|
||||||
sinkName=$(pactl list sinks short | awk -v sink="$1" '{ if ($1 == sink) {print $2} }')
|
|
||||||
portName=$(pactl list sinks | grep -e 'Sink #' -e 'Active Port: ' | sed -n "/^Sink #$1\$/,+1p" | awk '/Active Port: / {print $3}')
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
# Saves the name to be displayed for the sink passed by parameter into a
|
|
||||||
# variable called `SINK_NICKNAME`.
|
|
||||||
# If a mapping for the sink name exists, that is used. Otherwise, the string
|
|
||||||
# "Sink #<index>" is used.
|
|
||||||
function getNickname() {
|
|
||||||
getSinkName "$1"
|
|
||||||
unset SINK_NICKNAME
|
|
||||||
|
|
||||||
if [ -n "$sinkName" ] && [ -n "$portName" ] && [ -n "${SINK_NICKNAMES[$sinkName/$portName]}" ]; then
|
|
||||||
SINK_NICKNAME="${SINK_NICKNAMES[$sinkName/$portName]}"
|
|
||||||
elif [ -n "$sinkName" ] && [ -n "${SINK_NICKNAMES[$sinkName]}" ]; then
|
|
||||||
SINK_NICKNAME="${SINK_NICKNAMES[$sinkName]}"
|
|
||||||
elif [ -n "$sinkName" ] && [ -n "$SINK_NICKNAMES_PROP" ]; then
|
|
||||||
getNicknameFromProp "$SINK_NICKNAMES_PROP" "$sinkName"
|
|
||||||
# Cache that result for next time
|
|
||||||
SINK_NICKNAMES["$sinkName"]="$SINK_NICKNAME"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ -z "$SINK_NICKNAME" ]; then
|
|
||||||
SINK_NICKNAME="Sink #$1"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
# Gets sink nickname based on a given property.
|
|
||||||
function getNicknameFromProp() {
|
|
||||||
local nickname_prop="$1"
|
|
||||||
local for_name="$2"
|
|
||||||
|
|
||||||
SINK_NICKNAME=
|
|
||||||
while read -r property value; do
|
|
||||||
case "$property" in
|
|
||||||
Name:)
|
|
||||||
sink_name="$value"
|
|
||||||
unset sink_desc
|
|
||||||
;;
|
|
||||||
"$nickname_prop")
|
|
||||||
if [ "$sink_name" != "$for_name" ]; then
|
|
||||||
continue
|
|
||||||
fi
|
|
||||||
SINK_NICKNAME="${value:3:-1}"
|
|
||||||
break
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
done < <(pactl list sinks)
|
|
||||||
}
|
|
||||||
|
|
||||||
# Saves the status of the sink passed by parameter into a variable named
|
|
||||||
# `isMuted`.
|
|
||||||
function getIsMuted() {
|
|
||||||
isMuted=$(pactl list sinks | grep -E "^Sink #$1\$" -A 15 | awk '/Mute: / {print $2}')
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
# Saves all the sink inputs of the sink passed by parameter into a string
|
|
||||||
# named `sinkInputs`.
|
|
||||||
function getSinkInputs() {
|
|
||||||
sinkInputs=$(pactl list sink-inputs | grep -B 4 "Sink: $1" | sed -nE 's/^Sink Input #([0-9]+)$/\1/p')
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
function volUp() {
|
|
||||||
# Obtaining the current volume from pulseaudio into $VOL_LEVEL.
|
|
||||||
if ! getCurSink; then
|
|
||||||
echo "PulseAudio not running"
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
getCurVol "$curSink"
|
|
||||||
local maxLimit=$((VOLUME_MAX - VOLUME_STEP))
|
|
||||||
|
|
||||||
# Checking the volume upper bounds sothat if VOLUME_MAX was 100% and the
|
|
||||||
# increase percentage was 3%, a 99% volume would top at 100% instead
|
|
||||||
# of 102%. If the volume is above the maximum limit, nothing is done.
|
|
||||||
if [ "$VOL_LEVEL" -le "$VOLUME_MAX" ] && [ "$VOL_LEVEL" -ge "$maxLimit" ]; then
|
|
||||||
pactl set-sink-volume "$curSink" "$VOLUME_MAX%"
|
|
||||||
elif [ "$VOL_LEVEL" -lt "$maxLimit" ]; then
|
|
||||||
pactl set-sink-volume "$curSink" "+$VOLUME_STEP%"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ $OSD = "yes" ]; then showOSD "$curSink"; fi
|
|
||||||
if [ $AUTOSYNC = "yes" ]; then volSync; fi
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
function volDown() {
|
|
||||||
# Pactl already handles the volume lower bounds so that negative values
|
|
||||||
# are ignored.
|
|
||||||
if ! getCurSink; then
|
|
||||||
echo "PulseAudio not running"
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
pactl set-sink-volume "$curSink" "-$VOLUME_STEP%"
|
|
||||||
|
|
||||||
if [ $OSD = "yes" ]; then showOSD "$curSink"; fi
|
|
||||||
if [ $AUTOSYNC = "yes" ]; then volSync; fi
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
function volSync() {
|
|
||||||
if ! getCurSink; then
|
|
||||||
echo "PulseAudio not running"
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
getSinkInputs "$curSink"
|
|
||||||
getCurVol "$curSink"
|
|
||||||
|
|
||||||
# Every output found in the active sink has their volume set to the
|
|
||||||
# current one. This will only be called if $AUTOSYNC is `yes`.
|
|
||||||
for each in $sinkInputs; do
|
|
||||||
pactl set-sink-input-volume "$each" "$VOL_LEVEL%"
|
|
||||||
done
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
function volMute() {
|
|
||||||
# Switch to mute/unmute the volume with pactl.
|
|
||||||
if ! getCurSink; then
|
|
||||||
echo "PulseAudio not running"
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
if [ "$1" = "toggle" ]; then
|
|
||||||
getIsMuted "$curSink"
|
|
||||||
if [ "$isMuted" = "yes" ]; then
|
|
||||||
pactl set-sink-mute "$curSink" "no"
|
|
||||||
else
|
|
||||||
pactl set-sink-mute "$curSink" "yes"
|
|
||||||
fi
|
|
||||||
elif [ "$1" = "mute" ]; then
|
|
||||||
pactl set-sink-mute "$curSink" "yes"
|
|
||||||
elif [ "$1" = "unmute" ]; then
|
|
||||||
pactl set-sink-mute "$curSink" "no"
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ $OSD = "yes" ]; then showOSD "$curSink"; fi
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
function nextSink() {
|
|
||||||
# The final sinks list, removing the blacklisted ones from the list of
|
|
||||||
# currently available sinks.
|
|
||||||
if ! getCurSink; then
|
|
||||||
echo "PulseAudio not running"
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
# Obtaining a tuple of sink indexes after removing the blacklisted devices
|
|
||||||
# with their name.
|
|
||||||
sinks=()
|
|
||||||
local i=0
|
|
||||||
while read -r line; do
|
|
||||||
index=$(echo "$line" | cut -f1)
|
|
||||||
name=$(echo "$line" | cut -f2)
|
|
||||||
|
|
||||||
# If it's in the blacklist, continue the main loop. Otherwise, add
|
|
||||||
# it to the list.
|
|
||||||
for sink in "${SINK_BLACKLIST[@]}"; do
|
|
||||||
if [ "$sink" = "$name" ]; then
|
|
||||||
continue 2
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
sinks[$i]="$index"
|
|
||||||
i=$((i + 1))
|
|
||||||
done < <(pactl list short sinks | sort -n)
|
|
||||||
|
|
||||||
# If the resulting list is empty, nothing is done
|
|
||||||
if [ ${#sinks[@]} -eq 0 ]; then return; fi
|
|
||||||
|
|
||||||
# If the current sink is greater or equal than last one, pick the first
|
|
||||||
# sink in the list. Otherwise just pick the next sink avaliable.
|
|
||||||
local newSink
|
|
||||||
if [ "$curSink" -ge "${sinks[-1]}" ]; then
|
|
||||||
newSink=${sinks[0]}
|
|
||||||
else
|
|
||||||
for sink in "${sinks[@]}"; do
|
|
||||||
if [ "$curSink" -lt "$sink" ]; then
|
|
||||||
newSink=$sink
|
|
||||||
break
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
fi
|
|
||||||
|
|
||||||
# The new sink is set
|
|
||||||
pactl set-default-sink "$newSink"
|
|
||||||
|
|
||||||
# Move all audio threads to new sink
|
|
||||||
local inputs
|
|
||||||
inputs="$(pactl list short sink-inputs | cut -f 1)"
|
|
||||||
for i in $inputs; do
|
|
||||||
pactl move-sink-input "$i" "$newSink"
|
|
||||||
done
|
|
||||||
|
|
||||||
if [ $NOTIFICATIONS = "yes" ]; then
|
|
||||||
getNickname "$newSink"
|
|
||||||
|
|
||||||
if command -v dunstify &>/dev/null; then
|
|
||||||
notify="dunstify --replace 201839192"
|
|
||||||
else
|
|
||||||
notify="notify-send"
|
|
||||||
fi
|
|
||||||
$notify "PulseAudio" "Changed output to $SINK_NICKNAME" --icon=audio-headphones-symbolic &
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
# This function assumes that PulseAudio is already running. It only supports
|
|
||||||
# KDE OSDs for now. It will show a system message with the status of the
|
|
||||||
# sink passed by parameter, or the currently active one by default.
|
|
||||||
function showOSD() {
|
|
||||||
if [ -z "$1" ]; then
|
|
||||||
curSink="$1"
|
|
||||||
else
|
|
||||||
getCurSink
|
|
||||||
fi
|
|
||||||
getCurVol "$curSink"
|
|
||||||
getIsMuted "$curSink"
|
|
||||||
qdbus org.kde.kded /modules/kosd showVolume "$VOL_LEVEL" "$isMuted"
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
function listen() {
|
|
||||||
local firstRun=0
|
|
||||||
|
|
||||||
# Listen for changes and immediately create new output for the bar.
|
|
||||||
# This is faster than having the script on an interval.
|
|
||||||
pactl subscribe 2>/dev/null | {
|
|
||||||
while true; do
|
|
||||||
{
|
|
||||||
# If this is the first time just continue and print the current
|
|
||||||
# state. Otherwise wait for events. This is to prevent the
|
|
||||||
# module being empty until an event occurs.
|
|
||||||
if [ $firstRun -eq 0 ]; then
|
|
||||||
firstRun=1
|
|
||||||
else
|
|
||||||
read -r event || break
|
|
||||||
# Avoid double events
|
|
||||||
if ! echo "$event" | grep -e "on card" -e "on sink" -e "on server"; then
|
|
||||||
continue
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
} &>/dev/null
|
|
||||||
output
|
|
||||||
done
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
function output() {
|
|
||||||
if ! getCurSink; then
|
|
||||||
echo "PulseAudio not running"
|
|
||||||
return 1
|
|
||||||
fi
|
|
||||||
getCurVol "$curSink"
|
|
||||||
getIsMuted "$curSink"
|
|
||||||
|
|
||||||
# Fixed volume icons over max volume
|
|
||||||
local iconsLen=${#ICONS_VOLUME[@]}
|
|
||||||
if [ "$iconsLen" -ne 0 ]; then
|
|
||||||
local volSplit=$((VOLUME_MAX / iconsLen))
|
|
||||||
for i in $(seq 1 "$iconsLen"); do
|
|
||||||
if [ $((i * volSplit)) -ge "$VOL_LEVEL" ]; then
|
|
||||||
VOL_ICON="${ICONS_VOLUME[$((i-1))]}"
|
|
||||||
break
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
else
|
|
||||||
VOL_ICON=""
|
|
||||||
fi
|
|
||||||
|
|
||||||
getNickname "$curSink"
|
|
||||||
|
|
||||||
# Showing the formatted message
|
|
||||||
if [ "$isMuted" = "yes" ]; then
|
|
||||||
# shellcheck disable=SC2034
|
|
||||||
VOL_ICON=$ICON_MUTED
|
|
||||||
echo "${COLOR_MUTED}$(eval echo "$FORMAT")${END_COLOR}"
|
|
||||||
else
|
|
||||||
eval echo "$FORMAT"
|
|
||||||
fi
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
function usage() {
|
|
||||||
echo "\
|
|
||||||
Usage: $0 [OPTION...] ACTION
|
|
||||||
Options:
|
|
||||||
--autosync | --no-autosync
|
|
||||||
Whether to maintain same volume for all programs.
|
|
||||||
Default: $AUTOSYNC
|
|
||||||
--color-muted <rrggbb>
|
|
||||||
Color in which to format when muted.
|
|
||||||
Default: ${COLOR_MUTED:4:-1}
|
|
||||||
--notifications | --no-notifications
|
|
||||||
Whether to show notifications when changing sinks.
|
|
||||||
Default: $NOTIFICATIONS
|
|
||||||
--osd | --no-osd
|
|
||||||
Whether to display KDE's OSD message.
|
|
||||||
Default: $OSD
|
|
||||||
--icon-muted <icon>
|
|
||||||
Icon to use when muted.
|
|
||||||
Default: none
|
|
||||||
--icon-sink <icon>
|
|
||||||
Icon to use for sink.
|
|
||||||
Default: none
|
|
||||||
--format <string>
|
|
||||||
Use a format string to control the output.
|
|
||||||
Available variables:
|
|
||||||
* \$VOL_ICON
|
|
||||||
* \$VOL_LEVEL
|
|
||||||
* \$ICON_SINK
|
|
||||||
* \$SINK_NICKNAME
|
|
||||||
Default: $FORMAT
|
|
||||||
--icons-volume <icon>[,<icon>...]
|
|
||||||
Icons for volume, from lower to higher.
|
|
||||||
Default: none
|
|
||||||
--volume-max <int>
|
|
||||||
Maximum volume to which to allow increasing.
|
|
||||||
Default: $VOLUME_MAX
|
|
||||||
--volume-step <int>
|
|
||||||
Step size when inc/decrementing volume.
|
|
||||||
Default: $VOLUME_STEP
|
|
||||||
--sink-blacklist <name>[,<name>...]
|
|
||||||
Sinks to ignore when switching.
|
|
||||||
Default: none
|
|
||||||
--sink-nicknames-from <prop>
|
|
||||||
pactl property to use for sink names, unless overriden by
|
|
||||||
--sink-nickname. Its possible values are listed under the 'Properties'
|
|
||||||
key in the output of \`pactl list sinks\`
|
|
||||||
Default: none
|
|
||||||
--sink-nickname <name>:<nick>
|
|
||||||
Nickname to assign to given sink name, taking priority over
|
|
||||||
--sink-nicknames-from. May be given multiple times, and 'name' is
|
|
||||||
exactly as listed in the output of \`pactl list sinks short | cut -f2\`.
|
|
||||||
Note that you can also specify a port name for the sink with
|
|
||||||
\`<name>/<port>\`.
|
|
||||||
Default: none
|
|
||||||
Actions:
|
|
||||||
help display this message and exit
|
|
||||||
output print the PulseAudio status once
|
|
||||||
listen listen for changes in PulseAudio to automatically update
|
|
||||||
this script's output
|
|
||||||
up, down increase or decrease the default sink's volume
|
|
||||||
mute, unmute mute or unmute the default sink's audio
|
|
||||||
togmute switch between muted and unmuted
|
|
||||||
next-sink switch to the next available sink
|
|
||||||
sync synchronize all the output streams volume to be the same as
|
|
||||||
the current sink's volume
|
|
||||||
Author:
|
|
||||||
Mario Ortiz Manero
|
|
||||||
More info on GitHub:
|
|
||||||
https://github.com/marioortizmanero/polybar-pulseaudio-control"
|
|
||||||
}
|
|
||||||
|
|
||||||
while [[ "$1" = --* ]]; do
|
|
||||||
unset arg
|
|
||||||
unset val
|
|
||||||
if [[ "$1" = *=* ]]; then
|
|
||||||
arg="${1//=*/}"
|
|
||||||
val="${1//*=/}"
|
|
||||||
shift
|
|
||||||
else
|
|
||||||
arg="$1"
|
|
||||||
# Support space-separated values, but also value-less flags
|
|
||||||
if [[ "$2" != --* ]]; then
|
|
||||||
val="$2"
|
|
||||||
shift
|
|
||||||
fi
|
|
||||||
shift
|
|
||||||
fi
|
|
||||||
|
|
||||||
case "$arg" in
|
|
||||||
--autosync)
|
|
||||||
AUTOSYNC=yes
|
|
||||||
;;
|
|
||||||
--no-autosync)
|
|
||||||
AUTOSYNC=no
|
|
||||||
;;
|
|
||||||
--color-muted|--colour-muted)
|
|
||||||
COLOR_MUTED="%{F#$val}"
|
|
||||||
;;
|
|
||||||
--notifications)
|
|
||||||
NOTIFICATIONS=yes
|
|
||||||
;;
|
|
||||||
--no-notifications)
|
|
||||||
NOTIFICATIONS=no
|
|
||||||
;;
|
|
||||||
--osd)
|
|
||||||
OSD=yes
|
|
||||||
;;
|
|
||||||
--no-osd)
|
|
||||||
OSD=no
|
|
||||||
;;
|
|
||||||
--icon-muted)
|
|
||||||
ICON_MUTED="$val"
|
|
||||||
;;
|
|
||||||
--icon-sink)
|
|
||||||
# shellcheck disable=SC2034
|
|
||||||
ICON_SINK="$val"
|
|
||||||
;;
|
|
||||||
--icons-volume)
|
|
||||||
IFS=, read -r -a ICONS_VOLUME <<< "${val//[[:space:]]/}"
|
|
||||||
;;
|
|
||||||
--volume-max)
|
|
||||||
VOLUME_MAX="$val"
|
|
||||||
;;
|
|
||||||
--volume-step)
|
|
||||||
VOLUME_STEP="$val"
|
|
||||||
;;
|
|
||||||
--sink-blacklist)
|
|
||||||
IFS=, read -r -a SINK_BLACKLIST <<< "${val//[[:space:]]/}"
|
|
||||||
;;
|
|
||||||
--sink-nicknames-from)
|
|
||||||
SINK_NICKNAMES_PROP="$val"
|
|
||||||
;;
|
|
||||||
--sink-nickname)
|
|
||||||
SINK_NICKNAMES["${val//:*/}"]="${val//*:}"
|
|
||||||
;;
|
|
||||||
--format)
|
|
||||||
FORMAT="$val"
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo "Unrecognised option: $arg" >&2
|
|
||||||
exit 1
|
|
||||||
;;
|
|
||||||
esac
|
|
||||||
done
|
|
||||||
|
|
||||||
case "$1" in
|
|
||||||
up)
|
|
||||||
volUp
|
|
||||||
;;
|
|
||||||
down)
|
|
||||||
volDown
|
|
||||||
;;
|
|
||||||
togmute)
|
|
||||||
volMute toggle
|
|
||||||
;;
|
|
||||||
mute)
|
|
||||||
volMute mute
|
|
||||||
;;
|
|
||||||
unmute)
|
|
||||||
volMute unmute
|
|
||||||
;;
|
|
||||||
sync)
|
|
||||||
volSync
|
|
||||||
;;
|
|
||||||
listen)
|
|
||||||
listen
|
|
||||||
;;
|
|
||||||
next-sink)
|
|
||||||
nextSink
|
|
||||||
;;
|
|
||||||
output)
|
|
||||||
output
|
|
||||||
;;
|
|
||||||
help)
|
|
||||||
usage
|
|
||||||
;;
|
|
||||||
*)
|
|
||||||
echo "Unrecognised action: $1" >&2
|
|
||||||
exit 1
|
|
||||||
;;
|
|
||||||
esac
|
|
@ -1,9 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
|
|
||||||
updates=$(xbps-install -Mun 2> /dev/null | wc -l)
|
|
||||||
|
|
||||||
if [ -n "$updates" ] && [ "$updates" -gt 0 ]; then
|
|
||||||
echo " $updates"
|
|
||||||
else
|
|
||||||
echo ""
|
|
||||||
fi
|
|
1
void/rofi/config.rasi
Normal file
1
void/rofi/config.rasi
Normal file
@ -0,0 +1 @@
|
|||||||
|
@theme "~/.config/rofi/themes/mytheme.rasi"
|
77
void/rofi/themes/mytheme.rasi
Normal file
77
void/rofi/themes/mytheme.rasi
Normal file
@ -0,0 +1,77 @@
|
|||||||
|
* {
|
||||||
|
font: "RobotoMono 12";
|
||||||
|
|
||||||
|
col0: #101e1f;
|
||||||
|
col1: #8aa9a1;
|
||||||
|
|
||||||
|
background-color: @col0;
|
||||||
|
text-color: @col1;
|
||||||
|
accent-color: @col1;
|
||||||
|
|
||||||
|
margin: 4px 0px;
|
||||||
|
padding: 0px;
|
||||||
|
spacing: 0px;
|
||||||
|
}
|
||||||
|
|
||||||
|
window {
|
||||||
|
background-color: @col0;
|
||||||
|
border-color: @accent-color;
|
||||||
|
|
||||||
|
location: center;
|
||||||
|
width: 440px;
|
||||||
|
y-offset: -220px;
|
||||||
|
border: 2px;
|
||||||
|
margin: 0px;
|
||||||
|
}
|
||||||
|
|
||||||
|
inputbar {
|
||||||
|
padding: 8px 8px;
|
||||||
|
spacing: 8px;
|
||||||
|
children: [ prompt, entry ];
|
||||||
|
}
|
||||||
|
|
||||||
|
prompt, entry, element-text, element-icon {
|
||||||
|
vertical-align: 0.5;
|
||||||
|
}
|
||||||
|
|
||||||
|
prompt {
|
||||||
|
text-color: @accent-color;
|
||||||
|
}
|
||||||
|
|
||||||
|
listview {
|
||||||
|
lines: 8;
|
||||||
|
columns: 1;
|
||||||
|
|
||||||
|
fixed-height: false;
|
||||||
|
}
|
||||||
|
|
||||||
|
element {
|
||||||
|
padding: 8px;
|
||||||
|
spacing: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
element normal active {
|
||||||
|
text-color: @accent-color;
|
||||||
|
}
|
||||||
|
|
||||||
|
element selected {
|
||||||
|
text-color: @col0;
|
||||||
|
background-color: @col1;
|
||||||
|
}
|
||||||
|
|
||||||
|
element selected normal {
|
||||||
|
background-color: @accent-color;
|
||||||
|
}
|
||||||
|
|
||||||
|
element selected active {
|
||||||
|
background-color: @col1;
|
||||||
|
}
|
||||||
|
|
||||||
|
element-icon {
|
||||||
|
size: 0.75em;
|
||||||
|
}
|
||||||
|
|
||||||
|
element-text {
|
||||||
|
text-color: inherit;
|
||||||
|
background-color: inherit;
|
||||||
|
}
|
@ -13,7 +13,7 @@ super + grave
|
|||||||
|
|
||||||
# full screen printscreen
|
# full screen printscreen
|
||||||
Print
|
Print
|
||||||
flameshot full -c
|
flameshot full
|
||||||
|
|
||||||
# selector printscreen
|
# selector printscreen
|
||||||
super + Print
|
super + Print
|
||||||
@ -21,7 +21,7 @@ super + Print
|
|||||||
|
|
||||||
# terminal emulator
|
# terminal emulator
|
||||||
super + Return
|
super + Return
|
||||||
alacritty
|
kitty
|
||||||
|
|
||||||
# program launcher
|
# program launcher
|
||||||
super + @space
|
super + @space
|
||||||
@ -48,14 +48,16 @@ XF86AudioLowerVolume
|
|||||||
XF86AudioRaiseVolume
|
XF86AudioRaiseVolume
|
||||||
pactl set-sink-volume @DEFAULT_SINK@ +1%
|
pactl set-sink-volume @DEFAULT_SINK@ +1%
|
||||||
|
|
||||||
|
XF86MonBrightnessUp
|
||||||
|
brightnessctl set +5%
|
||||||
|
|
||||||
|
XF86MonBrightnessDown
|
||||||
|
brightnessctl set 5%-
|
||||||
|
|
||||||
# Open pcmanfm
|
# Open pcmanfm
|
||||||
super + r
|
super + r
|
||||||
pcmanfm
|
pcmanfm
|
||||||
|
|
||||||
# Open Emacs
|
|
||||||
super + e
|
|
||||||
emacsclient -c -a 'emacs'
|
|
||||||
|
|
||||||
super + p
|
super + p
|
||||||
/opt/Pomatez/pomatez %U
|
/opt/Pomatez/pomatez %U
|
||||||
#
|
#
|
||||||
|
Reference in New Issue
Block a user