mirror of
https://github.com/The-Repo-Club/DotFiles.git
synced 2024-11-24 16:28:41 -05:00
Update Dotfiles
Signed-off-by: The-Repo-Club <wayne6324@gmail.com>
This commit is contained in:
parent
c5cb212cb5
commit
7c1fbc918e
19
autorandr/.config/autorandr/herbstluft/config
Normal file
19
autorandr/.config/autorandr/herbstluft/config
Normal file
@ -0,0 +1,19 @@
|
||||
output DP-1-0
|
||||
off
|
||||
output eDP-1
|
||||
crtc 0
|
||||
mode 1920x1080
|
||||
pos 0x0
|
||||
primary
|
||||
rate 120.21
|
||||
x-prop-broadcast_rgb Automatic
|
||||
x-prop-colorspace Default
|
||||
x-prop-max_bpc 12
|
||||
x-prop-non_desktop 0
|
||||
x-prop-scaling_mode Full aspect
|
||||
output HDMI-1-0
|
||||
crtc 3
|
||||
mode 1920x1080
|
||||
pos 1920x0
|
||||
rate 60.00
|
||||
x-prop-non_desktop 0
|
2
autorandr/.config/autorandr/herbstluft/setup
Normal file
2
autorandr/.config/autorandr/herbstluft/setup
Normal file
@ -0,0 +1,2 @@
|
||||
HDMI-1-0 00ffffffffffff004c2d520f334c5843101f0103804627782aaea5af4f42af260f5054bfef80714f810081c081809500a9c0b300010108e80030f2705a80b0588a00b9882100001e000000fd00184b1e873c000a202020202020000000fc005533324a3539780a2020202020000000ff0048344c523430303937360a2020012a020334f04d611203130420221f105f605d5e23090707830100006d030c002000b83c20006001020367d85dc401788003e30f0104023a801871382d40582c4500b9882100001e023a80d072382d40102c4580b9882100001e04740030f2705a80b0588a00b9882100001e565e00a0a0a0295030203500b9882100001a00000090
|
||||
eDP-1 00ffffffffffff0006afedd100000000221d0104a52213780348358f575992291e505400000001010101010101010101010101010101546f809c70383e406c30aa0058c1100000180000000f0000000000000000000000000020000000fd003c788a8a1d010a202020202020000000fe004231353648414e31332e31200a00a9
|
@ -197,7 +197,7 @@
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7B5B1E2E81-ED4F-4F79-9EB5-F8ACA67D1BF0%7D\0\Lighting\Keys\y=#ffffff
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7B5B1E2E81-ED4F-4F79-9EB5-F8ACA67D1BF0%7D\0\Lighting\Keys\z=#ffffff
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7B5B1E2E81-ED4F-4F79-9EB5-F8ACA67D1BF0%7D\0\Lighting\UseRealNames=true
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7B5B1E2E81-ED4F-4F79-9EB5-F8ACA67D1BF0%7D\0\Modified=44a21454
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7B5B1E2E81-ED4F-4F79-9EB5-F8ACA67D1BF0%7D\0\Modified=1f80efd1
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7B5B1E2E81-ED4F-4F79-9EB5-F8ACA67D1BF0%7D\0\Name=Rainbow
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7B5B1E2E81-ED4F-4F79-9EB5-F8ACA67D1BF0%7D\0\Performance\AngleSnap=false
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7B5B1E2E81-ED4F-4F79-9EB5-F8ACA67D1BF0%7D\0\Performance\DPI\0=@Point(400 400)
|
||||
@ -425,7 +425,7 @@
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7B5B1E2E81-ED4F-4F79-9EB5-F8ACA67D1BF0%7D\1\Lighting\Keys\y=#ff0000
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7B5B1E2E81-ED4F-4F79-9EB5-F8ACA67D1BF0%7D\1\Lighting\Keys\z=#ff0000
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7B5B1E2E81-ED4F-4F79-9EB5-F8ACA67D1BF0%7D\1\Lighting\UseRealNames=true
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7B5B1E2E81-ED4F-4F79-9EB5-F8ACA67D1BF0%7D\1\Modified=8cf87dc4
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7B5B1E2E81-ED4F-4F79-9EB5-F8ACA67D1BF0%7D\1\Modified=f45305b
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7B5B1E2E81-ED4F-4F79-9EB5-F8ACA67D1BF0%7D\1\Name=Breathing
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7B5B1E2E81-ED4F-4F79-9EB5-F8ACA67D1BF0%7D\1\Performance\AngleSnap=false
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7B5B1E2E81-ED4F-4F79-9EB5-F8ACA67D1BF0%7D\1\Performance\DPI\0=@Point(400 400)
|
||||
@ -675,7 +675,7 @@
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7B5B1E2E81-ED4F-4F79-9EB5-F8ACA67D1BF0%7D\2\Lighting\Keys\y=#aa00ff
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7B5B1E2E81-ED4F-4F79-9EB5-F8ACA67D1BF0%7D\2\Lighting\Keys\z=#aa00ff
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7B5B1E2E81-ED4F-4F79-9EB5-F8ACA67D1BF0%7D\2\Lighting\UseRealNames=true
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7B5B1E2E81-ED4F-4F79-9EB5-F8ACA67D1BF0%7D\2\Modified=8b9ace6d
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7B5B1E2E81-ED4F-4F79-9EB5-F8ACA67D1BF0%7D\2\Modified=b06106b
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7B5B1E2E81-ED4F-4F79-9EB5-F8ACA67D1BF0%7D\2\Name=Trippy
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7B5B1E2E81-ED4F-4F79-9EB5-F8ACA67D1BF0%7D\2\Performance\AngleSnap=false
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7B5B1E2E81-ED4F-4F79-9EB5-F8ACA67D1BF0%7D\2\Performance\DPI\0=@Point(400 400)
|
||||
@ -733,7 +733,7 @@
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7B5B1E2E81-ED4F-4F79-9EB5-F8ACA67D1BF0%7D\CurrentMode={51EB6E3A-27A0-4AD6-A35C-6B67E0329A3D}
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7B5B1E2E81-ED4F-4F79-9EB5-F8ACA67D1BF0%7D\HwModified=7ffd
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7B5B1E2E81-ED4F-4F79-9EB5-F8ACA67D1BF0%7D\ModeCount=3
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7B5B1E2E81-ED4F-4F79-9EB5-F8ACA67D1BF0%7D\Modified=bad252e3
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7B5B1E2E81-ED4F-4F79-9EB5-F8ACA67D1BF0%7D\Modified=a83c54d2
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7B5B1E2E81-ED4F-4F79-9EB5-F8ACA67D1BF0%7D\Name=Multi
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7BBA7FC152-2D51-4C26-A7A6-A036CC93D924%7D\0\Binding\KeyMap=K68 GB
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7BBA7FC152-2D51-4C26-A7A6-A036CC93D924%7D\0\Binding\UseRealNames=true
|
||||
@ -929,7 +929,7 @@
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7BBA7FC152-2D51-4C26-A7A6-A036CC93D924%7D\0\Lighting\Keys\y=#ffffff
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7BBA7FC152-2D51-4C26-A7A6-A036CC93D924%7D\0\Lighting\Keys\z=#ffffff
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7BBA7FC152-2D51-4C26-A7A6-A036CC93D924%7D\0\Lighting\UseRealNames=true
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7BBA7FC152-2D51-4C26-A7A6-A036CC93D924%7D\0\Modified=8d934ee1
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7BBA7FC152-2D51-4C26-A7A6-A036CC93D924%7D\0\Modified=24c441ae
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7BBA7FC152-2D51-4C26-A7A6-A036CC93D924%7D\0\Name=Rainbow
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7BBA7FC152-2D51-4C26-A7A6-A036CC93D924%7D\0\Performance\AngleSnap=false
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7BBA7FC152-2D51-4C26-A7A6-A036CC93D924%7D\0\Performance\DPI\0=@Point(400 400)
|
||||
@ -1157,7 +1157,7 @@
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7BBA7FC152-2D51-4C26-A7A6-A036CC93D924%7D\1\Lighting\Keys\y=#ff0000
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7BBA7FC152-2D51-4C26-A7A6-A036CC93D924%7D\1\Lighting\Keys\z=#ff0000
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7BBA7FC152-2D51-4C26-A7A6-A036CC93D924%7D\1\Lighting\UseRealNames=true
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7BBA7FC152-2D51-4C26-A7A6-A036CC93D924%7D\1\Modified=c761b04a
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7BBA7FC152-2D51-4C26-A7A6-A036CC93D924%7D\1\Modified=524e4f01
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7BBA7FC152-2D51-4C26-A7A6-A036CC93D924%7D\1\Name=Breathing
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7BBA7FC152-2D51-4C26-A7A6-A036CC93D924%7D\1\Performance\AngleSnap=false
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7BBA7FC152-2D51-4C26-A7A6-A036CC93D924%7D\1\Performance\DPI\0=@Point(400 400)
|
||||
@ -1407,7 +1407,7 @@
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7BBA7FC152-2D51-4C26-A7A6-A036CC93D924%7D\2\Lighting\Keys\y=#aa00ff
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7BBA7FC152-2D51-4C26-A7A6-A036CC93D924%7D\2\Lighting\Keys\z=#aa00ff
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7BBA7FC152-2D51-4C26-A7A6-A036CC93D924%7D\2\Lighting\UseRealNames=true
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7BBA7FC152-2D51-4C26-A7A6-A036CC93D924%7D\2\Modified=77c3ba26
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7BBA7FC152-2D51-4C26-A7A6-A036CC93D924%7D\2\Modified=93f91dd9
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7BBA7FC152-2D51-4C26-A7A6-A036CC93D924%7D\2\Name=Trippy
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7BBA7FC152-2D51-4C26-A7A6-A036CC93D924%7D\2\Performance\AngleSnap=false
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7BBA7FC152-2D51-4C26-A7A6-A036CC93D924%7D\2\Performance\DPI\0=@Point(400 400)
|
||||
@ -1465,7 +1465,7 @@
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7BBA7FC152-2D51-4C26-A7A6-A036CC93D924%7D\CurrentMode={11C11AE3-3195-4DFC-B8AC-2FEA703414E5}
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7BBA7FC152-2D51-4C26-A7A6-A036CC93D924%7D\HwModified=40b6f054
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7BBA7FC152-2D51-4C26-A7A6-A036CC93D924%7D\ModeCount=3
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7BBA7FC152-2D51-4C26-A7A6-A036CC93D924%7D\Modified=d82a09b0
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7BBA7FC152-2D51-4C26-A7A6-A036CC93D924%7D\Modified=5fe435e5
|
||||
0E029022AF4C18835CBDCC7EF5001BC3\%7BBA7FC152-2D51-4C26-A7A6-A036CC93D924%7D\Name=Demo
|
||||
|
||||
[Popups]
|
||||
|
Binary file not shown.
@ -12,6 +12,12 @@ if test -d "$HOME/.local/bin/repobar"
|
||||
set PATH "$HOME/.local/bin/repobar:$PATH"
|
||||
end
|
||||
|
||||
# Adds `~/.local/bin/scratch` to $PATH
|
||||
# set PATH so it includes user's private bin if it exists
|
||||
if test -d "$HOME/.local/bin/scratch"
|
||||
set PATH "$HOME/.local/bin/scratch:$PATH"
|
||||
end
|
||||
|
||||
# Adds `~/.local/bin/lemonbar` to $PATH
|
||||
# set PATH so it includes user's private bin if it exists
|
||||
if test -d "$HOME/.local/bin/lemonbar"
|
||||
|
190
herbstluftwm/.config/herbstluftwm/autostart
Executable file
190
herbstluftwm/.config/herbstluftwm/autostart
Executable file
@ -0,0 +1,190 @@
|
||||
#!/usr/bin/env bash
|
||||
#-*-coding:utf-8 -*-
|
||||
#Auto updated?
|
||||
# Yes
|
||||
#File:
|
||||
# autostart
|
||||
#Author:
|
||||
# The-Repo-Club [wayne6324@gmail.com]
|
||||
#Github:
|
||||
# https://github.com/The-Repo-Club/
|
||||
#
|
||||
#Created:
|
||||
# Sat 15 October 2022, 09:01:26 PM [GMT+1]
|
||||
#Modified:
|
||||
# Sun 16 October 2022, 01:52:54 AM [GMT+1]
|
||||
#
|
||||
#Description:
|
||||
# Config for herbstluftwm
|
||||
#
|
||||
#Dependencies:
|
||||
# bash, herbstluftwm
|
||||
#
|
||||
# shellcheck disable=all
|
||||
|
||||
if command -v autorandr &>/dev/null; then
|
||||
autorandr --load 'herbstluft' &
|
||||
fi
|
||||
|
||||
if [ -f $HOME/.config/herbstluftwm/extra/config ]; then
|
||||
. $HOME/.config/herbstluftwm/extra/config
|
||||
fi
|
||||
|
||||
if [ -f $HOME/.config/herbstluftwm/extra/panel ]; then
|
||||
sh $HOME/.config/herbstluftwm/extra/panel &
|
||||
fi
|
||||
|
||||
if command -v /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 &>/dev/null; then
|
||||
if ! pgrep -f "/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1" >/dev/null; then
|
||||
/usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 &
|
||||
else
|
||||
echo "polkit-gnome already Running"
|
||||
fi
|
||||
fi
|
||||
|
||||
if command -v xroot &>/dev/null; then
|
||||
if ! pgrep -f "xroot" >/dev/null; then
|
||||
if command -v xmenu_desktop &>/dev/null; then
|
||||
if ! pgrep -f "xmenu_desktop" >/dev/null; then
|
||||
xroot -r xmenu_desktop &
|
||||
else
|
||||
echo "xroot already Running"
|
||||
fi
|
||||
fi
|
||||
else
|
||||
echo "xroot already Running"
|
||||
fi
|
||||
fi
|
||||
|
||||
if command -v clipmenu-daemon &>/dev/null; then
|
||||
if ! pgrep -f "clipmenu-daemon" >/dev/null; then
|
||||
clipmenu-daemon &
|
||||
else
|
||||
echo "clipmenu-daemon already Running"
|
||||
fi
|
||||
fi
|
||||
|
||||
if ! command -v picom &>/dev/null; then
|
||||
echo "picom could not be found"
|
||||
else
|
||||
if ! pgrep -x "picom" >/dev/null; then
|
||||
picom -CGb --experimental-backend --config "$HOME"/.config/i3/picom.conf &
|
||||
else
|
||||
echo "picom already Running"
|
||||
fi
|
||||
fi
|
||||
|
||||
################
|
||||
## Tray Icons ##
|
||||
################
|
||||
|
||||
if ! command -v ckb-next &>/dev/null; then
|
||||
echo "ckb-next could not be found"
|
||||
else
|
||||
if ! pgrep -x "ckb-next" >/dev/null; then
|
||||
ckb-next --background &
|
||||
else
|
||||
echo "ckb-next already Running"
|
||||
fi
|
||||
fi
|
||||
|
||||
if command -v nm-applet &>/dev/null; then
|
||||
if ! pgrep -x "nm-applet" >/dev/null; then
|
||||
nm-applet &
|
||||
else
|
||||
echo "nm-applet already Running"
|
||||
fi
|
||||
fi
|
||||
|
||||
if command -v blueman-applet &>/dev/null; then
|
||||
if ! pgrep -x "blueman-applet" >/dev/null; then
|
||||
blueman-applet &
|
||||
else
|
||||
echo "blueman-applet already Running"
|
||||
fi
|
||||
fi
|
||||
|
||||
if command -v touchpad-indicator &>/dev/null; then
|
||||
if ! pgrep -f "touchpad-indicator" >/dev/null; then
|
||||
touchpad-indicator &
|
||||
else
|
||||
echo "touchpad-indicator already Running"
|
||||
fi
|
||||
fi
|
||||
|
||||
if command -v numlockx &>/dev/null; then
|
||||
numlockx on &
|
||||
fi
|
||||
|
||||
if command -v volumeicon &>/dev/null; then
|
||||
if ! pgrep -x "volumeicon" >/dev/null; then
|
||||
volumeicon &
|
||||
else
|
||||
echo "volumeicon already Running"
|
||||
fi
|
||||
fi
|
||||
|
||||
if command -v cbatticon &>/dev/null; then
|
||||
if ! pgrep -x "cbatticon" >/dev/null; then
|
||||
cbatticon &
|
||||
else
|
||||
echo "cbatticon already Running"
|
||||
fi
|
||||
fi
|
||||
|
||||
####################
|
||||
## Fix Background ##
|
||||
####################
|
||||
if ! command -v feh &>/dev/null; then
|
||||
echo "feh could not be found"
|
||||
else
|
||||
if ! test -f "$HOME/.fehbg"; then
|
||||
echo "$HOME/.fehbg could not be found"
|
||||
else
|
||||
sh "$HOME/.fehbg" &
|
||||
sleep 2s
|
||||
sh "$HOME/.fehbg" &
|
||||
fi
|
||||
fi
|
||||
|
||||
###############
|
||||
## Auto Lock ##
|
||||
###############
|
||||
|
||||
if command -v xidlehook &>/dev/null; then
|
||||
# shellcheck disable=SC2155
|
||||
export PRIMARY_DISPLAY="$(xrandr | awk '/ primary/{print $1}')"
|
||||
if ! pgrep -x "xidlehook" >/dev/null; then
|
||||
xidlehook \
|
||||
--not-when-fullscreen \
|
||||
--not-when-audio \
|
||||
--timer 300 \
|
||||
"xrandr --output $PRIMARY_DISPLAY --brightness .1" \
|
||||
"xrandr --output $PRIMARY_DISPLAY --brightness 1" \
|
||||
--timer 30 \
|
||||
"xrandr --output $PRIMARY_DISPLAY --brightness 1; multimonitorlock -l -- --time-str=%I:%M:%S %p" \
|
||||
"" \
|
||||
--timer 3600 \
|
||||
"systemctl suspend" \
|
||||
"" &
|
||||
else
|
||||
echo "xidlehook already Running"
|
||||
fi
|
||||
fi
|
||||
|
||||
################
|
||||
## Other Junk ##
|
||||
################
|
||||
|
||||
systemctl --user import-environment DISPLAY XAUTHORITY
|
||||
|
||||
if command -v dbus-update-activation-environment >/dev/null 2>&1; then
|
||||
dbus-update-activation-environment DISPLAY XAUTHORITY
|
||||
fi
|
||||
|
||||
# see https://wiki.archlinux.org/title/GNOME/Keyring#xinitrc
|
||||
eval "$(/usr/bin/gnome-keyring-daemon --start)"
|
||||
export SSH_AUTH_SOCK
|
||||
|
||||
# see https://github.com/NixOS/nixpkgs/issues/14966#issuecomment-520083836
|
||||
mkdir -p "$HOME"/.local/share/keyrings
|
230
herbstluftwm/.config/herbstluftwm/extra/config
Executable file
230
herbstluftwm/.config/herbstluftwm/extra/config
Executable file
@ -0,0 +1,230 @@
|
||||
#!/usr/bin/env bash
|
||||
#-*-coding:utf-8 -*-
|
||||
#Auto updated?
|
||||
# Yes
|
||||
#File:
|
||||
# autostart
|
||||
#Author:
|
||||
# The-Repo-Club [wayne6324@gmail.com]
|
||||
#Github:
|
||||
# https://github.com/The-Repo-Club/
|
||||
#
|
||||
#Created:
|
||||
# Sat 15 October 2022, 09:01:26 PM [GMT+1]
|
||||
#Modified:
|
||||
# Sun 16 October 2022, 03:11:51 PM [GMT+1]
|
||||
#
|
||||
#Description:
|
||||
# Config for herbstluftwm
|
||||
#
|
||||
#Dependencies:
|
||||
# bash, herbstluftwm
|
||||
#
|
||||
# shellcheck disable=all
|
||||
|
||||
hc() {
|
||||
herbstclient "$@"
|
||||
}
|
||||
|
||||
hc emit_hook reload
|
||||
|
||||
#----------------#
|
||||
# Setup Commands #
|
||||
#----------------#
|
||||
|
||||
editor='code'
|
||||
menu='repomenu_run -i -l 10 -w 600 -c -p "Launcher" -q "Launch a app"'
|
||||
browser='firefox'
|
||||
terminal='alacritty'
|
||||
power='repomenue_powermenu'
|
||||
vbox='virt-manager'
|
||||
files='nemo'
|
||||
mail='thunderbird'
|
||||
kill='repomenue_kill'
|
||||
|
||||
#---------------------------------#
|
||||
# REMOVE ALL EXISTING KEYBINDINGS #
|
||||
#---------------------------------#
|
||||
hc keyunbind --all
|
||||
|
||||
#-------------#
|
||||
# KEYBINDINGS #
|
||||
#-------------#
|
||||
|
||||
MOD=Mod4 # Use the super key as the main modifier
|
||||
ALT=Mod1 # Use the alt key as the alt modifier
|
||||
SHIFT=Shift # Use the shift key as the shift modifier
|
||||
CTRL=Control # Use the control key as the control modifier
|
||||
|
||||
#-----------------#
|
||||
# System controls #
|
||||
#-----------------#
|
||||
hc keybind $MOD-$SHIFT-r reload
|
||||
hc keybind $MOD-q close
|
||||
hc keybind $MOD-Return spawn "${TERMINAL:-$terminal}"
|
||||
hc keybind $MOD-b spawn "sh $HOME/.config/polybar/scripts/toggle_bar.sh"
|
||||
|
||||
#------------#
|
||||
# Programing #
|
||||
#------------#
|
||||
|
||||
hc keybind $MOD-$CTRL-c spawn $editor
|
||||
|
||||
#----------#
|
||||
# Browsers #
|
||||
#----------#
|
||||
|
||||
hc keybind $MOD-$CTRL-f spawn $browser
|
||||
|
||||
#-------#
|
||||
# Files #
|
||||
#-------#
|
||||
|
||||
hc keybind $MOD-$SHIFT-Return spawn $files
|
||||
|
||||
#-----------#
|
||||
# Launchers #
|
||||
#-----------#
|
||||
|
||||
hc keybind $MOD-m spawn $menu
|
||||
hc keybind $MOD-$SHIFT-e spawn $power
|
||||
hc keybind $MOD-$SHIFT-q spawn $kill
|
||||
|
||||
#-------------#
|
||||
# ScratchPads #
|
||||
#-------------#
|
||||
|
||||
hc keybind $CTRL-Return spawn scratchpad
|
||||
hc keybind $ALT-Return spawn scratch terminal
|
||||
hc keybind $ALT-c spawn scratch files
|
||||
hc keybind $ALT-v spawn scratch volume
|
||||
|
||||
#-----------------#
|
||||
# Focusing Client #
|
||||
#-----------------#
|
||||
|
||||
hc keybind $MOD-Up focus up
|
||||
hc keybind $MOD-Down focus down
|
||||
hc keybind $MOD-Left focus left
|
||||
hc keybind $MOD-Right focus right
|
||||
|
||||
# Moving clients in tiling and floating mode #
|
||||
|
||||
hc keybind $MOD-$SHIFT-Up shift up
|
||||
hc keybind $MOD-$SHIFT-Down shift down
|
||||
hc keybind $MOD-$SHIFT-Left shift left
|
||||
hc keybind $MOD-$SHIFT-Right shift right
|
||||
|
||||
#------------------#
|
||||
# Splitting Frames #
|
||||
#------------------#
|
||||
|
||||
hc keybind $MOD-u split bottom 0.6
|
||||
hc keybind $MOD-o split right 0.6
|
||||
|
||||
#----------------------------------------------#
|
||||
# let the current frame explode into subframes #
|
||||
#----------------------------------------------#
|
||||
|
||||
hc keybind $MOD-$CTRL-space split explode
|
||||
|
||||
#--------------------------------------#
|
||||
# resizing frames and floating clients #
|
||||
#--------------------------------------#
|
||||
|
||||
resizestep=0.02
|
||||
hc keybind $MOD-$CTRL-Up resize up +$resizestep
|
||||
hc keybind $MOD-$CTRL-Down resize down +$resizestep
|
||||
hc keybind $MOD-$CTRL-Left resize left +$resizestep
|
||||
hc keybind $MOD-$CTRL-Right resize right +$resizestep
|
||||
|
||||
#------#
|
||||
# tags #
|
||||
#------#
|
||||
""
|
||||
tag_names=({1..9} 0)
|
||||
tag_keys=({1..9} 0)
|
||||
|
||||
hc rename default "${tag_names[0]}" || true
|
||||
for i in "${!tag_names[@]}" ; do
|
||||
hc add "${tag_names[$i]}"
|
||||
hc set_layout horizontal
|
||||
hc set default_frame_layout 1
|
||||
key="${tag_keys[$i]}"
|
||||
if ! [ -z "$key" ] ; then
|
||||
hc keybind "$MOD-$key" use_index "$i"
|
||||
hc keybind "$MOD-$SHIFT-$key" move_index "$i"
|
||||
fi
|
||||
done
|
||||
|
||||
#-----------#
|
||||
# Layouting #
|
||||
#-----------#
|
||||
|
||||
hc keybind $ALT-r remove
|
||||
hc keybind $ALT-f fullscreen toggle
|
||||
|
||||
#-------#
|
||||
# Focus #
|
||||
#-------#
|
||||
|
||||
hc keybind $MOD-BackSpace cycle_monitor
|
||||
hc keybind $MOD-Tab cycle_all +1
|
||||
hc keybind $MOD-$SHIFT-Tab cycle_all -1
|
||||
hc keybind $MOD-c cycle
|
||||
hc keybind $MOD-i jumpto urgent
|
||||
|
||||
#-------#
|
||||
# MOUSE #
|
||||
#-------#
|
||||
|
||||
hc mouseunbind --all
|
||||
hc mousebind $MOD-Button1 move
|
||||
hc mousebind $MOD-Button2 zoom
|
||||
hc mousebind $MOD-Button3 resize
|
||||
|
||||
#-------#
|
||||
# RULES #
|
||||
#-------#
|
||||
|
||||
hc unrule -F # clear rules
|
||||
|
||||
#-------#
|
||||
# THEME #
|
||||
#-------#
|
||||
|
||||
if [ -f $HOME/.config/herbstluftwm/extra/theme ];
|
||||
then
|
||||
. $HOME/.config/herbstluftwm/extra/theme
|
||||
fi
|
||||
|
||||
#----------#
|
||||
# PROGRAMS #
|
||||
#----------#
|
||||
|
||||
hc rule class~'([Aa]lacritty|[Kk]itty)' tag='1'
|
||||
|
||||
#-------------#
|
||||
# SCRATCHPADS #
|
||||
#-------------#
|
||||
|
||||
hc rule title~'scratchpad' floating=on floatplacement=center floating_geometry=1000x500
|
||||
hc rule title~'clifm' floating=on floatplacement=center floating_geometry=1000x500
|
||||
|
||||
hc rule focus=on # normally focus new clients
|
||||
hc rule floatplacement=center
|
||||
#hc rule float_geometry=250x100
|
||||
#hc rule focus=off # normally do not focus new clients
|
||||
# give focus to most common terminals
|
||||
hc rule windowtype~'_NET_WM_WINDOW_TYPE_(DIALOG|UTILITY|SPLASH)' floating=on floatplacement=center
|
||||
hc rule windowtype='_NET_WM_WINDOW_TYPE_DIALOG' focus=on floatplacement=smart
|
||||
hc rule windowtype~'_NET_WM_WINDOW_TYPE_(NOTIFICATION|DOCK|DESKTOP)' manage=off
|
||||
|
||||
hc set tree_style '╾│ ├└╼─┐'
|
||||
|
||||
#--------#
|
||||
# UNLOCK #
|
||||
#--------#
|
||||
|
||||
hc unlock
|
||||
hc detect_monitors
|
22
herbstluftwm/.config/herbstluftwm/extra/panel
Executable file
22
herbstluftwm/.config/herbstluftwm/extra/panel
Executable file
@ -0,0 +1,22 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# shellcheck disable=all
|
||||
WM=$(wmctrl -m | grep Name | cut -d: -f2)
|
||||
WM=${WM//[[:space:]]/}
|
||||
|
||||
if [ "$WM" == "herbstluftwm" ]; then
|
||||
if ! command -v polybar &>/dev/null; then
|
||||
echo "polybar could not be found"
|
||||
else
|
||||
if ! pgrep -x "polybar" >/dev/null; then
|
||||
if ! test -f "$HOME/.config/polybar/launch.sh"; then
|
||||
echo "$HOME/.config/polybar/launch.sh could not be found"
|
||||
else
|
||||
sh $HOME/.config/polybar/launch.sh
|
||||
echo "Bars launched..."
|
||||
fi
|
||||
else
|
||||
echo "polybar already Running"
|
||||
fi
|
||||
fi
|
||||
fi
|
62
herbstluftwm/.config/herbstluftwm/extra/theme
Executable file
62
herbstluftwm/.config/herbstluftwm/extra/theme
Executable file
@ -0,0 +1,62 @@
|
||||
#!/usr/bin/env bash
|
||||
#-*-coding:utf-8 -*-
|
||||
#Auto updated?
|
||||
# Yes
|
||||
#File:
|
||||
# autostart
|
||||
#Author:
|
||||
# The-Repo-Club [wayne6324@gmail.com]
|
||||
#Github:
|
||||
# https://github.com/The-Repo-Club/
|
||||
#
|
||||
#Created:
|
||||
# Sat 15 October 2022, 09:01:26 PM [GMT+1]
|
||||
#Modified:
|
||||
# Sun 16 October 2022, 02:52:53 PM [GMT+1]
|
||||
#
|
||||
#Description:
|
||||
# Config for herbstluftwm
|
||||
#
|
||||
#Dependencies:
|
||||
# bash, herbstluftwm
|
||||
#
|
||||
# shellcheck disable=all
|
||||
|
||||
hc attr theme.tiling.reset 1
|
||||
hc attr theme.floating.reset 1
|
||||
hc set frame_border_active_color '#000000'
|
||||
hc set frame_border_normal_color '#101010'
|
||||
hc set frame_bg_normal_color '#565656'
|
||||
hc set frame_bg_active_color '#345F0C'
|
||||
hc set frame_border_width 1
|
||||
hc set always_show_frame 0
|
||||
hc set frame_bg_transparent 1
|
||||
hc set frame_transparent_width 0
|
||||
hc set frame_gap 0
|
||||
|
||||
hc attr theme.active.color '#000000'
|
||||
hc attr theme.active.border_width 10
|
||||
hc attr theme.active.inner_width 1
|
||||
hc attr theme.active.outer_width 4
|
||||
hc attr theme.active.outer_color '#005f87'
|
||||
|
||||
hc attr theme.normal.color '#242424'
|
||||
hc attr theme.normal.border_width 10
|
||||
hc attr theme.normal.inner_width 1
|
||||
|
||||
hc attr theme.urgent.color orange
|
||||
hc attr theme.inner_color '#ffffff'
|
||||
|
||||
hc attr theme.floating.border_width 10
|
||||
hc attr theme.floating.outer_width 4
|
||||
hc attr theme.floating.outer_color '#5f875f'
|
||||
hc attr theme.floating.inner_width 1
|
||||
|
||||
hc set window_gap 2
|
||||
hc set frame_padding 0
|
||||
hc set smart_window_surroundings true
|
||||
hc set smart_frame_surroundings false
|
||||
hc set mouse_recenter_gap 0
|
||||
hc set focus_crosses_monitor_boundaries 1
|
||||
hc set swap_monitors_to_get_tag 0
|
||||
hc set focus_follows_mouse 1
|
@ -1,49 +1,63 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
# Path - /usr/bin/lemonbar_config
|
||||
# GitHub - https://github.com/The-Repo-Club/
|
||||
# Author - The-Repo-Club [wayne6324@gmail.com]
|
||||
# Start On - Tue 07 Dec 14:36:45 GMT 2021
|
||||
# Modified On - Mon 31 January 2022, 07:26:11 pm (GMT)
|
||||
#------------------------------------------------------------------------------
|
||||
#-*-coding:utf-8 -*-
|
||||
#Auto updated?
|
||||
# Yes
|
||||
#File:
|
||||
# lemonbar_config
|
||||
#Author:
|
||||
# The-Repo-Club [wayne6324@gmail.com]
|
||||
#Github:
|
||||
# https://github.com/The-Repo-Club/
|
||||
#
|
||||
#Created:
|
||||
# Tue 07 December 2021, 02:36:45 PM [GMT+1]
|
||||
#Modified:
|
||||
# Sun 16 October 2022, 12:37:19 AM [GMT+1]
|
||||
#
|
||||
#Description:
|
||||
# <Todo>
|
||||
#
|
||||
#Dependencies:
|
||||
# <None>
|
||||
#
|
||||
# shellcheck disable=all
|
||||
|
||||
topleft() {
|
||||
echo -e "%{l}$(lemonbar_workspaces '0,0')%{r}$(lemonbar_keyboard)$(lemonbar_sep)$(lemonbar_updates)$(lemonbar_sep)$(lemonbar_volume)$(lemonbar_sep)$(lemonbar_battery)$(lemonbar_sep)$(lemonbar_network)$(lemonbar_sep)$(lemonbar_clock)"
|
||||
echo -e "%{l}$(lemonbar_workspaces)%{r}$(lemonbar_keyboard)$(lemonbar_sep)$(lemonbar_updates)$(lemonbar_sep)$(lemonbar_volume)$(lemonbar_sep)$(lemonbar_battery)$(lemonbar_sep)$(lemonbar_network)$(lemonbar_sep)$(lemonbar_clock)"
|
||||
}
|
||||
|
||||
bottomleft() {
|
||||
echo -e "%{l}$(lemonbar_cpu)$(lemonbar_sep)$(lemonbar_ram)$(lemonbar_sep)$(lemonbar_kernel)%{c}$(lemonbar_window) %{r}$(lemonbar_disk)"
|
||||
echo -e "%{l}$(lemonbar_cpu)$(lemonbar_sep)$(lemonbar_ram)$(lemonbar_sep)$(lemonbar_kernel)%{c}$(lemonbar_window) %{r}$(lemonbar_disk)"
|
||||
}
|
||||
|
||||
topright() {
|
||||
echo -e "%{l}$(lemonbar_workspaces '1920,0')%{r}$(lemonbar_keyboard)$(lemonbar_sep)$(lemonbar_updates)$(lemonbar_sep)$(lemonbar_volume)$(lemonbar_sep)$(lemonbar_battery)$(lemonbar_sep)$(lemonbar_network)$(lemonbar_sep)$(lemonbar_clock)"
|
||||
echo -e "%{l}$(lemonbar_workspaces)%{r}$(lemonbar_keyboard)$(lemonbar_sep)$(lemonbar_updates)$(lemonbar_sep)$(lemonbar_volume)$(lemonbar_sep)$(lemonbar_battery)$(lemonbar_sep)$(lemonbar_network)$(lemonbar_sep)$(lemonbar_clock)"
|
||||
}
|
||||
|
||||
bottomright() {
|
||||
echo -e "%{l}$(lemonbar_cpu)$(lemonbar_sep)$(lemonbar_ram)$(lemonbar_sep)$(lemonbar_kernel)%{c}$(lemonbar_window) %{r}$(lemonbar_disk)"
|
||||
echo -e "%{l}$(lemonbar_cpu)$(lemonbar_sep)$(lemonbar_ram)$(lemonbar_sep)$(lemonbar_kernel)%{c}$(lemonbar_window) %{r}$(lemonbar_disk)"
|
||||
}
|
||||
|
||||
while true; do
|
||||
case $1 in
|
||||
-tl | --topleft)
|
||||
topleft
|
||||
wait
|
||||
;;
|
||||
-bl | --bottomleft)
|
||||
bottomleft
|
||||
wait
|
||||
;;
|
||||
-tr | --topright)
|
||||
topright
|
||||
wait
|
||||
;;
|
||||
-br | --bottomright)
|
||||
bottomright
|
||||
wait
|
||||
;;
|
||||
*)
|
||||
break
|
||||
;;
|
||||
esac
|
||||
case $1 in
|
||||
-tl | --topleft)
|
||||
topleft
|
||||
wait
|
||||
;;
|
||||
-bl | --bottomleft)
|
||||
bottomleft
|
||||
wait
|
||||
;;
|
||||
-tr | --topright)
|
||||
topright
|
||||
wait
|
||||
;;
|
||||
-br | --bottomright)
|
||||
bottomright
|
||||
wait
|
||||
;;
|
||||
*)
|
||||
break
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
@ -7,27 +7,28 @@
|
||||
# Start On - Tue 07 Dec 14:36:53 GMT 2021
|
||||
# Modified On - Mon 31 January 2022, 10:36:09 pm (GMT)
|
||||
#------------------------------------------------------------------------------
|
||||
# shellcheck disable=all
|
||||
|
||||
killall -q lemonbar
|
||||
killall -q lemonbar_config
|
||||
|
||||
topleft() {
|
||||
lemonbar_config -tl | lemonbar -p -g 1920x18+0+0 -F "#C4C7C5" -B "#282A36" -U "#268bd2" -o eDP1 -f "SauceCodePro Nerd Font"-9 | $SHELL
|
||||
lemonbar_config -tl | lemonbar -p -g 1920x18+0+0 -F "#C4C7C5" -B "#282A36" -U "#268bd2" -o eDP-1 -f "SauceCodePro Nerd Font" | $SHELL
|
||||
#succade -s topleft
|
||||
}
|
||||
|
||||
bottomleft() {
|
||||
lemonbar_config -bl | lemonbar -p -b -g 1920x18+0+0 -F "#C4C7C5" -B "#282A36" -U "#268bd2" -o eDP1 -f "SauceCodePro Nerd Font"-9 | $SHELL
|
||||
lemonbar_config -bl | lemonbar -p -b -g 1920x18+0+0 -F "#C4C7C5" -B "#282A36" -U "#268bd2" -o eDP-1 -f "SauceCodePro Nerd Font" | $SHELL
|
||||
#succade -s bottomleft
|
||||
}
|
||||
|
||||
topright() {
|
||||
lemonbar_config -tr | lemonbar -p -g 1920x18+1920+0 -F "#C4C7C5" -B "#282A36" -U "#268bd2" -o HDMI-1-0 -f "SauceCodePro Nerd Font"-9 | $SHELL
|
||||
lemonbar_config -tr | lemonbar -p -g 1920x18+1920+0 -F "#C4C7C5" -B "#282A36" -U "#268bd2" -o HDMI-1-0 -f "SauceCodePro Nerd Font" | $SHELL
|
||||
#succade -s topright
|
||||
}
|
||||
|
||||
bottomright() {
|
||||
lemonbar_config -br | lemonbar -p -b -g 1920x18+1920+0 -F "#C4C7C5" -B "#282A36" -U "#268bd2" -o HDMI-1-0 -f "SauceCodePro Nerd Font"-9 | $SHELL
|
||||
lemonbar_config -br | lemonbar -p -b -g 1920x18+1920+0 -F "#C4C7C5" -B "#282A36" -U "#268bd2" -o HDMI-1-0 -f "SauceCodePro Nerd Font" | $SHELL
|
||||
#succade -s bottomright
|
||||
}
|
||||
|
||||
|
@ -1,11 +1,11 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
network() {
|
||||
R1=`cat /sys/class/net/wlan0/statistics/rx_bytes`
|
||||
T1=`cat /sys/class/net/wlan0/statistics/tx_bytes`
|
||||
R1=`cat /sys/class/net/wlp0s20f3/statistics/rx_bytes`
|
||||
T1=`cat /sys/class/net/wlp0s20f3/statistics/tx_bytes`
|
||||
sleep 1
|
||||
R2=`cat /sys/class/net/wlan0/statistics/rx_bytes`
|
||||
T2=`cat /sys/class/net/wlan0/statistics/tx_bytes`
|
||||
R2=`cat /sys/class/net/wlp0s20f3/statistics/rx_bytes`
|
||||
T2=`cat /sys/class/net/wlp0s20f3/statistics/tx_bytes`
|
||||
TBPS=`expr $T2 - $T1`
|
||||
RBPS=`expr $R2 - $R1`
|
||||
TKBPS=`echo "$TBPS / 1024"| bc`
|
||||
|
@ -1,15 +1,51 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
if [ $1 ]; then
|
||||
workspace_list=""
|
||||
MON_IDX="0"
|
||||
mapfile -t MONITOR_LIST < <(herbstclient list_monitors | cut -d":" -f1)
|
||||
for ((i = 0; i < $((${#MONITOR_LIST[@]})); i++)); do
|
||||
[[ ${MONITOR_LIST[${i}]} == "$MONITOR" ]] && MON_IDX="$i"
|
||||
done
|
||||
|
||||
while read -r workspace; do
|
||||
name="${workspace/* /}"
|
||||
case "$workspace" in
|
||||
*"*"*) workspace_list+="%{A:bspc desktop -f ${name}:}%{F#282A36}%{B#BD93F9} $name %{F-}%{B-}%{A} " ;;
|
||||
*) workspace_list+="%{A:bspc desktop -f ${name}:}%{F#282A36}%{B#C4C7C5} $name %{F-}%{B-}%{A} " ;;
|
||||
esac
|
||||
done < <(wmctrl -d | grep "VP: $1")
|
||||
output="${workspace_list}"
|
||||
echo "$output"
|
||||
fi
|
||||
# Read tags into $tags as array
|
||||
IFS=$'\t' read -ra tags <<<"$(herbstclient tag_status "${MON_IDX}")"
|
||||
{
|
||||
for i in "${tags[@]}"; do
|
||||
# Read the prefix from each tag and render them according to that prefix
|
||||
case ${i:0:1} in
|
||||
'.')
|
||||
# the tag is empty
|
||||
echo "%{B#283036}%{F#e5e9f0}"
|
||||
;;
|
||||
':')
|
||||
# the tag is not empty
|
||||
echo "%{B#59ff59}"
|
||||
;;
|
||||
'+')
|
||||
# the tag is viewed on the specified MONITOR, but this monitor is not focused.
|
||||
echo "%{B#ff9c59}"
|
||||
;;
|
||||
'#')
|
||||
# the tag is viewed on the specified MONITOR and it is focused.
|
||||
echo "%{B#ff59f9}"
|
||||
;;
|
||||
'-')
|
||||
# the tag is viewed on a different MONITOR, but this monitor is not focused.
|
||||
echo "%{B#b56727}"
|
||||
;;
|
||||
'%')
|
||||
# the tag is viewed on a different MONITOR and it is focused.
|
||||
echo "%{B#9059ff}"
|
||||
;;
|
||||
'!')
|
||||
# the tag contains an urgent window
|
||||
echo "%{B#ff5959}"
|
||||
;;
|
||||
esac
|
||||
# focus the monitor of the current bar before switching tags
|
||||
echo "%{A1:herbstclient focus_monitor ${MON_IDX}; herbstclient use ${i:1}:} ${i:1} %{A -u -o F- B-}"
|
||||
done
|
||||
# reset foreground and background color to default
|
||||
echo "%{F-}%{B-}"
|
||||
} | tr -d "\n"
|
||||
|
||||
echo
|
||||
|
20
localbin/.local/bin/scratch/scratch
Executable file
20
localbin/.local/bin/scratch/scratch
Executable file
@ -0,0 +1,20 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# shellcheck disable=all
|
||||
terminal='alacritty --title=scratchpad'
|
||||
files='alacritty --title=clifm -e clifm'
|
||||
volume='pavucontrol'
|
||||
|
||||
case "$1" in
|
||||
terminal)
|
||||
entry=$terminal
|
||||
;;
|
||||
files)
|
||||
entry=$files
|
||||
;;
|
||||
volume)
|
||||
entry=$volume
|
||||
;;
|
||||
esac
|
||||
|
||||
$entry &
|
65
localbin/.local/bin/scratch/scratchpad
Executable file
65
localbin/.local/bin/scratch/scratchpad
Executable file
@ -0,0 +1,65 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# a i3-like scratchpad for arbitrary applications.
|
||||
#
|
||||
# this lets a new monitor called "scratchpad" appear in from the top into the
|
||||
# current monitor. There the "scratchpad" will be shown (it will be created if
|
||||
# it doesn't exist yet). If the monitor already exists it is scrolled out of
|
||||
# the screen and removed again.
|
||||
#
|
||||
# Warning: this uses much resources because herbstclient is forked for each
|
||||
# animation step.
|
||||
#
|
||||
# If a tag name is supplied, this is used instead of the scratchpad
|
||||
# shellcheck disable=all
|
||||
|
||||
tag="${1:-scratchpad}"
|
||||
hc() { "${herbstclient_command[@]:-herbstclient}" "$@" ;}
|
||||
|
||||
mrect=( $(hc monitor_rect "" ) )
|
||||
|
||||
width=${mrect[2]}
|
||||
height=${mrect[3]}
|
||||
|
||||
rect=(
|
||||
$((width/2))
|
||||
$((height/2))
|
||||
$((${mrect[0]}+(width/4)))
|
||||
$((${mrect[1]}+(height/4)))
|
||||
)
|
||||
|
||||
hc chain , add "$tag" , set_attr tags.by-name."$tag".at_end true
|
||||
|
||||
monitor=scratchpad
|
||||
|
||||
exists=false
|
||||
if ! hc add_monitor $(printf "%dx%d%+d%+d" "${rect[@]}") \
|
||||
"$tag" $monitor 2> /dev/null ; then
|
||||
exists=true
|
||||
else
|
||||
# remember which monitor was focused previously
|
||||
hc chain \
|
||||
, new_attr string monitors.by-name."$monitor".my_prev_focus \
|
||||
, substitute M monitors.focus.index \
|
||||
set_attr monitors.by-name."$monitor".my_prev_focus M
|
||||
fi
|
||||
|
||||
show() {
|
||||
hc lock
|
||||
hc raise_monitor "$monitor"
|
||||
hc focus_monitor "$monitor"
|
||||
hc unlock
|
||||
hc lock_tag "$monitor"
|
||||
}
|
||||
|
||||
hide() {
|
||||
# if q3terminal still is focused, then focus the previously focused monitor
|
||||
# (that mon which was focused when starting q3terminal)
|
||||
hc substitute M monitors.by-name."$monitor".my_prev_focus \
|
||||
and + compare monitors.focus.name = "$monitor" \
|
||||
+ focus_monitor M
|
||||
hc remove_monitor "$monitor"
|
||||
}
|
||||
|
||||
[ $exists = true ] && hide || show
|
||||
|
@ -12,6 +12,6 @@ strings=pkgbrowser, ly, zap, i3-gaps, microsoft edge, python3, python, pamac, on
|
||||
|
||||
[window]
|
||||
central-splitter=@ByteArray(\0\0\0\xff\0\0\0\x1\0\0\0\x2\0\0\x1\0\0\0\x1>\0\xff\xff\xff\xff\x1\0\0\0\x1\0)
|
||||
geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\a\x83\0\0\0%\0\0\xe\xf8\0\0\x4\xe\0\0\a\x85\0\0\0'\0\0\xe\xf6\0\0\x4\f\0\0\0\x1\0\0\0\0\a\x80\0\0\a\x85\0\0\0'\0\0\xe\xf6\0\0\x4\f)
|
||||
geometry=@ByteArray(\x1\xd9\xd0\xcb\0\x3\0\0\0\0\vA\0\0\0\x1d\0\0\xe\xfc\0\0\x4\x1a\0\0\vK\0\0\0'\0\0\xe\xf2\0\0\x4\x10\0\0\0\x1\0\0\0\0\a\x80\0\0\vK\0\0\0'\0\0\xe\xf2\0\0\x4\x10)
|
||||
left-splitter=@ByteArray(\0\0\0\xff\0\0\0\x1\0\0\0\x2\0\0\0\xc0\0\0\x1\f\0\xff\xff\xff\xff\x1\0\0\0\x2\0)
|
||||
right-splitter=@ByteArray(\0\0\0\xff\0\0\0\x1\0\0\0\x2\0\0\0\xc0\0\0\0\xee\0\xff\xff\xff\xff\x1\0\0\0\x2\0)
|
||||
|
@ -99,6 +99,9 @@ radius-bottom = 0.0
|
||||
overline-size = 2
|
||||
overline-color = ${color.ac}
|
||||
|
||||
underline-size = 2
|
||||
underline-color = ${color.ac}
|
||||
|
||||
; Values applied to all borders
|
||||
; Individual side values can be defined using:
|
||||
; border-{left,top,right,bottom}-size
|
||||
|
@ -99,6 +99,9 @@ radius-bottom = 0.0
|
||||
overline-size = 2
|
||||
overline-color = ${color.ac}
|
||||
|
||||
underline-size = 2
|
||||
underline-color = ${color.ac}
|
||||
|
||||
; Values applied to all borders
|
||||
; Individual side values can be defined using:
|
||||
; border-{left,top,right,bottom}-size
|
||||
|
77
polybar/.config/polybar/scripts/info-hlwm-workspaces.sh
Executable file
77
polybar/.config/polybar/scripts/info-hlwm-workspaces.sh
Executable file
@ -0,0 +1,77 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
# Multi monitor support. Needs MONITOR environment variable to be set for each instance of polybar
|
||||
# If MONITOR environment variable is not set this will default to monitor 0
|
||||
# Check https://github.com/polybar/polybar/issues/763
|
||||
MON_IDX="0"
|
||||
mapfile -t MONITOR_LIST < <(polybar --list-monitors | cut -d":" -f1)
|
||||
for ((i = 0; i < $((${#MONITOR_LIST[@]})); i++)); do
|
||||
[[ ${MONITOR_LIST[${i}]} == "$MONITOR" ]] && MON_IDX="$i"
|
||||
done
|
||||
re='^[0-9]+$'
|
||||
|
||||
herbstclient --idle "tag_*" 2>/dev/null | {
|
||||
|
||||
while true; do
|
||||
# Read tags into $tags as array
|
||||
IFS=$'\t' read -ra tags <<<"$(herbstclient tag_status "${MON_IDX}")"
|
||||
{
|
||||
for i in "${tags[@]}"; do
|
||||
if [[ ${i:1} =~ $re ]]; then
|
||||
# Read the prefix from each tag and render them according to that prefix
|
||||
case ${i:0:1} in
|
||||
'.')
|
||||
# the tag is empty
|
||||
# echo "%{B#283036}%{F#e5e9f0}%{u#283036}%{+u}"
|
||||
# # focus the monitor of the current bar before switching tags
|
||||
# echo "%{A1:herbstclient focus_monitor ${MON_IDX}; herbstclient use ${i:1}:} ${i:1} %{A -u -o F- B-}"
|
||||
;;
|
||||
':')
|
||||
# the tag is not empty
|
||||
echo "%{B#59ff59}%{u#a6ffa6}%{+u}"
|
||||
# focus the monitor of the current bar before switching tags
|
||||
echo "%{A1:herbstclient focus_monitor ${MON_IDX}; herbstclient use ${i:1}:} ${i:1} %{A -u -o F- B-}"
|
||||
;;
|
||||
'+')
|
||||
# the tag is viewed on the specified MONITOR, but this monitor is not focused.
|
||||
echo "%{B#ff9c59}%{u#ffc9a6}%{+u}"
|
||||
# focus the monitor of the current bar before switching tags
|
||||
echo "%{A1:herbstclient focus_monitor ${MON_IDX}; herbstclient use ${i:1}:} ${i:1} %{A -u -o F- B-}"
|
||||
;;
|
||||
'#')
|
||||
# the tag is viewed on the specified MONITOR and it is focused.
|
||||
echo "%{B#59fff9}%{u#a6fffc}%{+u}"
|
||||
# focus the monitor of the current bar before switching tags
|
||||
echo "%{A1:herbstclient focus_monitor ${MON_IDX}; herbstclient use ${i:1}:} ${i:1} %{A -u -o F- B-}"
|
||||
;;
|
||||
'-')
|
||||
# the tag is viewed on a different MONITOR, but this monitor is not focused.
|
||||
echo "%{B#ff59f9}%{u#ffa6fc}%{+u}"
|
||||
# focus the monitor of the current bar before switching tags
|
||||
echo "%{A1:herbstclient focus_monitor ${MON_IDX}; herbstclient use ${i:1}:} ${i:1} %{A -u -o F- B-}"
|
||||
;;
|
||||
'%')
|
||||
# the tag is viewed on a different MONITOR and it is focused.
|
||||
echo "%{B#9059ff}%{u#c5a6ff}%{+u}"
|
||||
# focus the monitor of the current bar before switching tags
|
||||
echo "%{A1:herbstclient focus_monitor ${MON_IDX}; herbstclient use ${i:1}:} ${i:1} %{A -u -o F- B-}"
|
||||
;;
|
||||
'!')
|
||||
# the tag contains an urgent window
|
||||
echo "%{B#ff5959}%{u#ffa6a6}%{+u}"
|
||||
# focus the monitor of the current bar before switching tags
|
||||
echo "%{A1:herbstclient focus_monitor ${MON_IDX}; herbstclient use ${i:1}:} ${i:1} %{A -u -o F- B-}"
|
||||
;;
|
||||
esac
|
||||
# reset foreground and background color to default
|
||||
echo "%{F-}%{B-}"
|
||||
fi
|
||||
done
|
||||
} | tr -d "\n"
|
||||
|
||||
echo
|
||||
|
||||
# wait for next event from herbstclient --idle
|
||||
read -r || break
|
||||
done
|
||||
} 2>/dev/null
|
@ -160,6 +160,15 @@ content-padding = 1
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[module/herbstluftwm]
|
||||
type = custom/script
|
||||
exec = ~/.config/polybar/scripts/info-hlwm-workspaces.sh
|
||||
tail = true
|
||||
scroll-up = herbstclient use_index -1 --skip-visible &
|
||||
scroll-down = herbstclient use_index +1 --skip-visible &
|
||||
|
||||
;; _-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_
|
||||
|
||||
[module/github_notifications]
|
||||
type = custom/script
|
||||
|
||||
|
23
qtile/.config/qtile/colors.py
Normal file
23
qtile/.config/qtile/colors.py
Normal file
@ -0,0 +1,23 @@
|
||||
colorScheme = [
|
||||
["283036", "283036"], # 0
|
||||
["ff5959", "ff5959"], # 1
|
||||
["59ff59", "59ff59"], # 2
|
||||
["ffff59", "ffff59"], # 3
|
||||
["9059ff", "9059ff"], # 4
|
||||
["ff59f9", "ff59f9"], # 5
|
||||
["59fff9", "59fff9"], # 6
|
||||
["e5e9f0", "e5e9f0"], # 7
|
||||
["43515e", "43515e"], # 8
|
||||
["ffa6a6", "ffa6a6"], # 9
|
||||
["a6ffa6", "a6ffa6"], # 10
|
||||
["ffffa6", "ffffa6"], # 11
|
||||
["c5a6ff", "c5a6ff"], # 12
|
||||
["ffa6fc", "ffa6fc"], # 13
|
||||
["a6fffc", "a6fffc"], # 14
|
||||
["e5e9f0", "e5e9f0"], # 15
|
||||
["e5e9f0", "e5e9f0"], # foregroundColor
|
||||
["283036", "283036"], # backgroundColor
|
||||
]
|
||||
|
||||
foregroundColor = colorScheme[16]
|
||||
backgroundColor = colorScheme[17]
|
@ -37,29 +37,7 @@ from libqtile.dgroups import simple_key_binder
|
||||
## Color Schemes ##
|
||||
###################
|
||||
|
||||
colorScheme = [
|
||||
["283036", "283036"], # 0
|
||||
["ff5959", "ff5959"], # 1
|
||||
["59ff59", "59ff59"], # 2
|
||||
["ffff59", "ffff59"], # 3
|
||||
["9059ff", "9059ff"], # 4
|
||||
["ff59f9", "ff59f9"], # 5
|
||||
["59fff9", "59fff9"], # 6
|
||||
["e5e9f0", "e5e9f0"], # 7
|
||||
["43515e", "43515e"], # 8
|
||||
["ffa6a6", "ffa6a6"], # 9
|
||||
["a6ffa6", "a6ffa6"], # 10
|
||||
["ffffa6", "ffffa6"], # 11
|
||||
["c5a6ff", "c5a6ff"], # 12
|
||||
["ffa6fc", "ffa6fc"], # 13
|
||||
["a6fffc", "a6fffc"], # 14
|
||||
["e5e9f0", "e5e9f0"], # 15
|
||||
["e5e9f0", "e5e9f0"], # foregroundColor
|
||||
["283036", "283036"], # backgroundColor
|
||||
]
|
||||
|
||||
foregroundColor = colorScheme[16]
|
||||
backgroundColor = colorScheme[17]
|
||||
from colors import foregroundColor, backgroundColor
|
||||
|
||||
###########
|
||||
## Utils ##
|
||||
@ -151,12 +129,9 @@ keys = [
|
||||
Key([MOD, SHIFT], "Return", lazy.spawn(Commands.files), desc="Launch files"),
|
||||
KeyChord([MOD, CTRL],
|
||||
"g", [
|
||||
Key([], "h", lazy.layout.grow_left(), desc="Grow window to the left"),
|
||||
Key([], "l", lazy.layout.grow_right(), desc="Grow window to the right"),
|
||||
Key([], "j", lazy.layout.grow_down(), desc="Grow window down"),
|
||||
Key([], "k", lazy.layout.grow_up(), desc="Grow window up"),
|
||||
Key([], "s", lazy.spawn('prime-run steam'), desc="Spawn steam"),
|
||||
],
|
||||
mode=True,
|
||||
mode=False,
|
||||
name="Launch Game"),
|
||||
|
||||
# Audio Settings
|
||||
@ -257,6 +232,8 @@ screens = [
|
||||
Widgets.sep,
|
||||
Widgets.groupBox1,
|
||||
Widgets.sep,
|
||||
Widgets.power1,
|
||||
Widgets.sep,
|
||||
Widgets.windowName,
|
||||
Widgets.sep,
|
||||
Widgets.updates,
|
||||
@ -287,6 +264,9 @@ screens = [
|
||||
[
|
||||
Widgets.weather,
|
||||
Widgets.sep,
|
||||
Widgets.space,
|
||||
Widgets.picom,
|
||||
Widgets.sep,
|
||||
Widgets.chords,
|
||||
],
|
||||
24,
|
||||
@ -304,6 +284,8 @@ screens = [
|
||||
Widgets.sep,
|
||||
Widgets.groupBox2,
|
||||
Widgets.sep,
|
||||
Widgets.power2,
|
||||
Widgets.sep,
|
||||
Widgets.windowName,
|
||||
Widgets.sep,
|
||||
Widgets.updates,
|
||||
|
@ -4,7 +4,7 @@ class Groups(object):
|
||||
groups = [
|
||||
# first group that hold the terminals
|
||||
Group(
|
||||
label=' Terminal',
|
||||
# label='',
|
||||
init=True,
|
||||
exclusive=False,
|
||||
persist=False,
|
||||
@ -14,7 +14,7 @@ class Groups(object):
|
||||
name='1',
|
||||
),
|
||||
Group(
|
||||
label=' Editor',
|
||||
# label='',
|
||||
init=True,
|
||||
exclusive=False,
|
||||
persist=False,
|
||||
@ -24,7 +24,7 @@ class Groups(object):
|
||||
name='2',
|
||||
),
|
||||
Group(
|
||||
label=' Files',
|
||||
# label='',
|
||||
init=True,
|
||||
exclusive=False,
|
||||
persist=False,
|
||||
@ -34,7 +34,7 @@ class Groups(object):
|
||||
name='3',
|
||||
),
|
||||
Group(
|
||||
label=' Graphics',
|
||||
# label='',
|
||||
init=True,
|
||||
exclusive=False,
|
||||
persist=False,
|
||||
@ -44,7 +44,7 @@ class Groups(object):
|
||||
name='4',
|
||||
),
|
||||
Group(
|
||||
label='ﱘ Music',
|
||||
# label='ﱘ',
|
||||
init=True,
|
||||
exclusive=False,
|
||||
persist=False,
|
||||
@ -54,7 +54,7 @@ class Groups(object):
|
||||
name='5',
|
||||
),
|
||||
Group(
|
||||
label=' WebBrowser',
|
||||
# label='',
|
||||
init=True,
|
||||
persist=False,
|
||||
exclusive=False,
|
||||
@ -64,7 +64,7 @@ class Groups(object):
|
||||
name='6',
|
||||
),
|
||||
Group(
|
||||
label=' Mail',
|
||||
# label='',
|
||||
init=True,
|
||||
persist=False,
|
||||
exclusive=False,
|
||||
@ -74,7 +74,7 @@ class Groups(object):
|
||||
name='7',
|
||||
),
|
||||
Group(
|
||||
label='調 Games',
|
||||
# label='調',
|
||||
init=True,
|
||||
persist=False,
|
||||
exclusive=False,
|
||||
@ -84,7 +84,7 @@ class Groups(object):
|
||||
name='8',
|
||||
),
|
||||
Group(
|
||||
label=' Chat',
|
||||
# label='',
|
||||
init=True,
|
||||
persist=False,
|
||||
exclusive=False,
|
||||
@ -94,7 +94,7 @@ class Groups(object):
|
||||
name='9',
|
||||
),
|
||||
Group(
|
||||
label=' Settings',
|
||||
# label='',
|
||||
init=True,
|
||||
persist=False,
|
||||
exclusive=False,
|
||||
|
@ -1,4 +1,4 @@
|
||||
from config import colorScheme, foregroundColor, backgroundColor
|
||||
from colors import colorScheme, foregroundColor, backgroundColor
|
||||
from libqtile import widget
|
||||
from libqtile.lazy import lazy
|
||||
|
||||
@ -12,22 +12,35 @@ class Widgets(object):
|
||||
background=colorScheme[0],
|
||||
)
|
||||
|
||||
space = widget.Spacer()
|
||||
|
||||
launcher = widget.Image(
|
||||
fmt='{}',
|
||||
filename='~/.config/qtile/art/Archlinux-icon.svg',
|
||||
margin=3,
|
||||
foreground=colorScheme[2],
|
||||
mouse_callbacks={
|
||||
'Button1':
|
||||
lazy.spawn(
|
||||
'repomenu_desktop --repomenu="repomenu -h 50 -i -l 15 -w 500 -y 32 -x 5 -p Launcher -q Search..."')
|
||||
},
|
||||
mouse_callbacks={'Button1': lazy.spawn('repomenu_desktop --repomenu="repomenu -h 50 -i -l 15 -w 500 -y 32 -x 5 -p Launcher -q Search..."')},
|
||||
)
|
||||
|
||||
power1 = widget.LaunchBar(
|
||||
text_only=True,
|
||||
foreground=colorScheme[1],
|
||||
progs=[
|
||||
('⏻ ', 'repomenue_powermenu', 'launch repomenu powermenu'),
|
||||
],
|
||||
)
|
||||
|
||||
power2 = widget.LaunchBar(
|
||||
text_only=True,
|
||||
foreground=colorScheme[1],
|
||||
progs=[
|
||||
('⏻ ', 'repomenue_powermenu', 'launch repomenu powermenu'),
|
||||
],
|
||||
)
|
||||
|
||||
groupBox1 = widget.GroupBox(
|
||||
font="SauceCodePro Nerd Font",
|
||||
fontsize=16,
|
||||
margin_y=2,
|
||||
margin_y=4,
|
||||
margin_x=4,
|
||||
padding_y=6,
|
||||
padding_x=6,
|
||||
@ -55,7 +68,7 @@ class Widgets(object):
|
||||
groupBox2 = widget.GroupBox(
|
||||
font="SauceCodePro Nerd Font",
|
||||
fontsize=16,
|
||||
margin_y=2,
|
||||
margin_y=4,
|
||||
margin_x=4,
|
||||
padding_y=6,
|
||||
padding_x=6,
|
||||
@ -161,3 +174,8 @@ class Widgets(object):
|
||||
'Button1': lazy.spawn('pkgbrowser'),
|
||||
},
|
||||
)
|
||||
|
||||
picom = widget.Picom(
|
||||
fmt='{}',
|
||||
padding=10,
|
||||
)
|
||||
|
Binary file not shown.
@ -1,2 +1,2 @@
|
||||
LastUsed=1659217367
|
||||
LastUsed=1665876003
|
||||
Message='0'
|
||||
|
Loading…
Reference in New Issue
Block a user