Compare commits
16 Commits
b453f9efd7
...
main
| Author | SHA1 | Date | |
|---|---|---|---|
| c048717831 | |||
| 1308399187 | |||
| cebcd98d0f | |||
| edb834371c | |||
| ed840b5554 | |||
| 02bf812d7b | |||
| d7b63ad132 | |||
| 9f6ea0e3d1 | |||
| e5bd69cfc4 | |||
| 74e5740a77 | |||
| d75700ce5c | |||
| 226c027ebf | |||
| 0ba43bfb80 | |||
| c5be52cc32 | |||
| 816db39d6e | |||
| f30e7d0085 |
1
.gitignore
vendored
1
.gitignore
vendored
@@ -42,6 +42,7 @@ Thunar/renamerrc
|
|||||||
!xss-lock/
|
!xss-lock/
|
||||||
!zsh/
|
!zsh/
|
||||||
!zsh/aliases.sh
|
!zsh/aliases.sh
|
||||||
|
!zsh/misspell.sh
|
||||||
|
|
||||||
!bluetuith/**
|
!bluetuith/**
|
||||||
!bspwm/**
|
!bspwm/**
|
||||||
|
|||||||
@@ -47,7 +47,7 @@ bar_width = 1
|
|||||||
|
|
||||||
# Seconds with no input before cava goes to sleep mode. Cava will not perform FFT or drawing and
|
# Seconds with no input before cava goes to sleep mode. Cava will not perform FFT or drawing and
|
||||||
# only check for input once per second. Cava will wake up once input is detected. 0 = disable.
|
# only check for input once per second. Cava will wake up once input is detected. 0 = disable.
|
||||||
; sleep_timer = 0
|
; sleep_timer = 5
|
||||||
|
|
||||||
|
|
||||||
[input]
|
[input]
|
||||||
|
|||||||
@@ -2,17 +2,12 @@
|
|||||||
### MONITORS ###
|
### MONITORS ###
|
||||||
################
|
################
|
||||||
|
|
||||||
# See https://wiki.hyprland.org/Configuring/Monitors/
|
source = ~/.config/hypr/monitors.conf
|
||||||
# monitor=eDP-1, 1920x1080, 0x0, 1
|
|
||||||
# monitor=HDMI-A-1, 1920x1080, -1920x-100, 1
|
|
||||||
|
|
||||||
###################
|
###################
|
||||||
### MY PROGRAMS ###
|
### MY PROGRAMS ###
|
||||||
###################
|
###################
|
||||||
|
|
||||||
# See https://wiki.hyprland.org/Configuring/Keywords/
|
|
||||||
|
|
||||||
# Set programs that you use
|
|
||||||
$terminal = kitty
|
$terminal = kitty
|
||||||
$fastTerminal = kitty --single-instance
|
$fastTerminal = kitty --single-instance
|
||||||
$fileManager = thunar
|
$fileManager = thunar
|
||||||
@@ -25,106 +20,70 @@ $privateBrowser = env GTK_THEME=Adwaita:light zen-browser --private-window
|
|||||||
$notificationCenter = pkill rofi & swaync-client -t -sw || notify-send --hint int:transient:1 "Error SwayNC is down"
|
$notificationCenter = pkill rofi & swaync-client -t -sw || notify-send --hint int:transient:1 "Error SwayNC is down"
|
||||||
|
|
||||||
$mpdpass = kapuchinamusica
|
$mpdpass = kapuchinamusica
|
||||||
|
$startDelay = sleep 2
|
||||||
|
|
||||||
#################
|
#################
|
||||||
### AUTOSTART ###
|
### AUTOSTART ###
|
||||||
#################
|
#################
|
||||||
|
|
||||||
exec = sh -c '[[ $(cat "$HOME/.config/waybar/goal.txt") != "." ]] && swaync-client -C && notify-send -u critical -i "$HOME/Pictures/Fetch/atheism_paint.png" "Reminder" "$(cat $HOME/.config/waybar/goal.txt)"'
|
exec-once = sh -c '[[ $(cat "$HOME/.config/waybar/goal.txt") != "." ]] && swaync-client -C && notify-send -u critical -i "$HOME/Pictures/Fetch/atheism_paint.png" "Reminder" "$(cat $HOME/.config/waybar/goal.txt)"'
|
||||||
exec-once = gsettings set org.gnome.desktop.interface color-scheme "prefer-dark"
|
|
||||||
|
|
||||||
# Autostart necessary processes (like notifications daemons, status bars, etc.)
|
|
||||||
# Or execute your favorite apps at launch like this:
|
|
||||||
|
|
||||||
# Le essential hyprland crap
|
|
||||||
# exec-once = hyprpaper
|
|
||||||
exec-once = swww-daemon
|
exec-once = swww-daemon
|
||||||
exec-once = ~/.config/hypr/scripts/autofreeze_swww.sh
|
exec-once = wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 50% && play -v 0.7 ~/.config/hypr/sound/login.ogg
|
||||||
exec-once = ~/.config/waybar/run.sh
|
exec-once = ~/.config/waybar/run.sh
|
||||||
exec-once = swaync
|
exec-once = $startDelay && hypridle
|
||||||
exec-once = hypridle
|
exec-once = $startDelay && hyprsunset
|
||||||
exec-once = hyprsunset
|
exec-once = $startDelay && /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
|
||||||
exec-once = eww daemon
|
exec-once = $startDelay && thunar --daemon
|
||||||
exec-once = mullvad-vpn
|
exec-once = $startDelay && [workspace 8 silent] AyuGram
|
||||||
exec-once = ~/.config/hypr/scripts/random_wallpaper.sh
|
exec-once = $startDelay && swaync
|
||||||
exec-once = ~/.config/hypr/scripts/autofreezer.sh
|
exec-once = $startDelay && mullvad-vpn
|
||||||
exec-once = ~/.config/fastfetch/scripts/fetch_update_count.sh
|
exec-once = $startDelay && touch /tmp/toggle_ssocks
|
||||||
exec-once = copyq --start-server
|
exec-once = $startDelay && ~/.config/hypr/scripts/autofreeze_swww.sh
|
||||||
exec-once = /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
|
exec-once = $startDelay && ~/.config/fastfetch/scripts/fetch_update_count.sh
|
||||||
exec-once = thunar --daemon
|
exec-once = $startDelay && ~/.config/hypr/scripts/toggle_proxy.sh
|
||||||
exec-once = touch /tmp/toggle_ssocks
|
exec-once = $startDelay && ~/.config/hypr/scripts/sounds.sh
|
||||||
exec-once = ~/.config/hypr/scripts/toggle_proxy.sh
|
exec-once = $startDelay && ~/.config/hypr/scripts/random_wallpaper.sh
|
||||||
exec-once = nextcloud --background &
|
exec-once = $startDelay && ~/.config/hypr/scripts/autofreezer.sh
|
||||||
exec-once = [workspace 8 silent] AyuGram
|
exec-once = .cargo/bin/mpd-discord-rpc
|
||||||
|
|
||||||
|
exec-shutdown = play -v 0.7 $HOME/Templates/Sounds/teleport.mp3
|
||||||
|
|
||||||
#############################
|
#############################
|
||||||
### ENVIRONMENT VARIABLES ###
|
### ENVIRONMENT VARIABLES ###
|
||||||
#############################
|
#############################
|
||||||
|
|
||||||
# See https://wiki.hyprland.org/Configuring/Environment-variables/
|
|
||||||
|
|
||||||
env = XCURSOR_SIZE,24
|
env = XCURSOR_SIZE,24
|
||||||
env = HYPRCURSOR_SIZE,24
|
env = HYPRCURSOR_SIZE,24
|
||||||
# env = QT_QPA_PLATFORMTHEME,qt6ct
|
|
||||||
|
|
||||||
###################
|
###################
|
||||||
### PERMISSIONS ###
|
### PERMISSIONS ###
|
||||||
###################
|
###################
|
||||||
|
|
||||||
# See https://wiki.hyprland.org/Configuring/Permissions/
|
|
||||||
# Please note permission changes here require a Hyprland restart and are not applied on-the-fly
|
|
||||||
# for security reasons
|
|
||||||
|
|
||||||
# ecosystem {
|
|
||||||
# enforce_permissions = 1
|
|
||||||
# }
|
|
||||||
|
|
||||||
# permission = /usr/(bin|local/bin)/grim, screencopy, allow
|
|
||||||
# permission = /usr/(lib|libexec|lib64)/xdg-desktop-portal-hyprland, screencopy, allow
|
|
||||||
# permission = /usr/(bin|local/bin)/hyprpm, plugin, allow
|
|
||||||
|
|
||||||
|
|
||||||
#####################
|
#####################
|
||||||
### LOOK AND FEEL ###
|
### LOOK AND FEEL ###
|
||||||
#####################
|
#####################
|
||||||
|
|
||||||
# Refer to https://wiki.hyprland.org/Configuring/Variables/
|
|
||||||
|
|
||||||
# https://wiki.hyprland.org/Configuring/Variables/#general
|
|
||||||
general {
|
general {
|
||||||
gaps_in = 12.5
|
gaps_in = 15
|
||||||
gaps_out = 12
|
gaps_out = 25
|
||||||
|
|
||||||
border_size = 1
|
border_size = 1
|
||||||
|
|
||||||
# https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors
|
|
||||||
col.active_border = rgba(E96375ff) rgba(9E2238ff) 45deg
|
col.active_border = rgba(E96375ff) rgba(9E2238ff) 45deg
|
||||||
col.inactive_border = rgba(4B535Bff) # rgba(595959aa)
|
col.inactive_border = rgba(4B535Bff) # rgba(595959aa)
|
||||||
|
|
||||||
# Set to true enable resizing windows by clicking and dragging on borders and gaps
|
|
||||||
resize_on_border = true
|
resize_on_border = true
|
||||||
hover_icon_on_border = true
|
hover_icon_on_border = true
|
||||||
|
|
||||||
# Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on
|
|
||||||
allow_tearing = true # false
|
allow_tearing = true # false
|
||||||
|
|
||||||
layout = dwindle
|
layout = dwindle
|
||||||
|
|
||||||
no_focus_fallback = true
|
no_focus_fallback = true
|
||||||
|
|
||||||
snap {
|
snap {
|
||||||
enabled = true
|
enabled = true
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
# https://wiki.hyprland.org/Configuring/Variables/#decoration
|
|
||||||
decoration {
|
decoration {
|
||||||
rounding = 10
|
rounding = 15
|
||||||
rounding_power = 2
|
rounding_power = 2
|
||||||
border_part_of_window = 0
|
border_part_of_window = 0
|
||||||
|
|
||||||
# Change transparency of focused and unfocused windows
|
|
||||||
active_opacity = 1.0
|
active_opacity = 1.0
|
||||||
inactive_opacity = 1.0
|
inactive_opacity = 1.0
|
||||||
|
|
||||||
@@ -135,7 +94,6 @@ decoration {
|
|||||||
color = rgba(1a1a1aee)
|
color = rgba(1a1a1aee)
|
||||||
}
|
}
|
||||||
|
|
||||||
# https://wiki.hyprland.org/Configuring/Variables/#blur
|
|
||||||
blur {
|
blur {
|
||||||
enabled = true
|
enabled = true
|
||||||
size = 1
|
size = 1
|
||||||
@@ -152,10 +110,8 @@ decoration {
|
|||||||
group {
|
group {
|
||||||
col.border_active = rgba(E96375ff) rgba(EB75FFff) 45deg
|
col.border_active = rgba(E96375ff) rgba(EB75FFff) 45deg
|
||||||
col.border_inactive = rgba(F9730032) rgba(FB850032) 45deg
|
col.border_inactive = rgba(F9730032) rgba(FB850032) 45deg
|
||||||
# col.border_locked_active = rgba(E96375ff) rgba(EB75FFff) 45deg
|
|
||||||
# col.border_locked_inactive = rgba(E96375ff) rgba(EB75FFff) 45deg
|
|
||||||
groupbar {
|
groupbar {
|
||||||
# font_size = 12
|
|
||||||
text_color = rgba(ffffff00)
|
text_color = rgba(ffffff00)
|
||||||
render_titles = false
|
render_titles = false
|
||||||
indicator_height = 10
|
indicator_height = 10
|
||||||
@@ -164,28 +120,25 @@ group {
|
|||||||
col.active = rgba(F8859Eff)
|
col.active = rgba(F8859Eff)
|
||||||
col.inactive = rgba(32323264) rgba(32323264) 45deg
|
col.inactive = rgba(32323264) rgba(32323264) 45deg
|
||||||
gaps_in = 5
|
gaps_in = 5
|
||||||
gaps_out = 5
|
gaps_out = 2
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
source = ~/.config/hypr/grayscale.conf
|
source = ~/.config/hypr/grayscale.conf
|
||||||
|
|
||||||
# https://wiki.hyprland.org/Configuring/Variables/#animations
|
|
||||||
animations {
|
animations {
|
||||||
enabled = yes, please :)
|
enabled = true
|
||||||
|
|
||||||
# Default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more
|
|
||||||
|
|
||||||
bezier = easeOutQuint,0.23,1,0.32,1
|
bezier = easeOutQuint,0.23,1,0.32,1
|
||||||
bezier = easeInOutCubic,0.65,0.05,0.36,1
|
bezier = easeInOutCubic,0.65,0.05,0.36,1
|
||||||
bezier = linear,0,0,1,1
|
bezier = linear,0,0,1,1
|
||||||
bezier = almostLinear,0.5,0.5,0.75,1.0
|
bezier = almostLinear,0.5,0.5,0.75,1.0
|
||||||
bezier = quick,0.15,0,0.1,1
|
bezier = quick,0.15,0,0.1,1
|
||||||
|
bezier = overshoot, 0.05, 0.9, 0.1, 1.1
|
||||||
|
|
||||||
animation = global, 1, 10, default
|
animation = global, 1, 10, default
|
||||||
animation = border, 1, 5.39, easeOutQuint
|
animation = border, 1, 5.39, easeOutQuint
|
||||||
animation = windows, 1, 4.79, easeOutQuint
|
animation = windows, 1, 4.79, overshoot
|
||||||
animation = windowsIn, 1, 5, easeOutQuint, popin 0%
|
animation = windowsIn, 1, 5, easeOutQuint, popin 0%
|
||||||
animation = windowsOut, 1, 10, linear, popin 0%
|
animation = windowsOut, 1, 10, linear, popin 0%
|
||||||
animation = fadeIn, 1, 1.73, almostLinear
|
animation = fadeIn, 1, 1.73, almostLinear
|
||||||
@@ -204,36 +157,19 @@ animations {
|
|||||||
animation = layers, 1, 7, default, slide
|
animation = layers, 1, 7, default, slide
|
||||||
}
|
}
|
||||||
|
|
||||||
# Ref https://wiki.hyprland.org/Configuring/Workspace-Rules/
|
workspace = 10, monitor:eDP-1
|
||||||
# "Smart gaps" / "No gaps when only"
|
workspace = 11, monitor:eDP-1
|
||||||
# uncomment all if you wish to use that.
|
workspace = 12, monitor:eDP-1
|
||||||
# workspace = w[tv1], gapsout:0, gapsin:0
|
workspace = 1, monitor:HDMI-A-1
|
||||||
# workspace = f[1], gapsout:0, gapsin:0
|
workspace = 2, monitor:HDMI-A-1
|
||||||
workspace = 1, monitor:eDP-1
|
workspace = 3, monitor:HDMI-A-1
|
||||||
workspace = 2, monitor:eDP-1
|
workspace = 4, monitor:HDMI-A-1
|
||||||
workspace = 3, monitor:eDP-1
|
workspace = 5, monitor:HDMI-A-1
|
||||||
workspace = 4, monitor:eDP-1
|
workspace = 6, monitor:HDMI-A-1
|
||||||
workspace = 5, monitor:eDP-1
|
workspace = 7, monitor:HDMI-A-1
|
||||||
workspace = 6, monitor:eDP-1
|
workspace = 8, monitor:HDMI-A-1
|
||||||
workspace = 7, monitor:eDP-1
|
workspace = 9, monitor:HDMI-A-1
|
||||||
workspace = 8, monitor:eDP-1
|
|
||||||
workspace = 9, monitor:eDP-1
|
|
||||||
workspace = 10, monitor:HDMI-A-1
|
|
||||||
workspace = 11, monitor:HDMI-A-1
|
|
||||||
workspace = 12, monitor:HDMI-A-1
|
|
||||||
workspace = 13, monitor:eDP-1
|
|
||||||
workspace = 14, monitor:HDMI-A-1
|
|
||||||
workspace = 13, on-created-empty:hyprctl dispatch workspace 1
|
|
||||||
workspace = 14, on-created-empty:hyprctl dispatch workspace 10
|
|
||||||
|
|
||||||
# workspace = 14, on-created-empty:
|
|
||||||
|
|
||||||
# windowrule = bordersize 0, floating:0, onworkspace:w[tv1]
|
|
||||||
# windowrule = rounding 0, floating:0, onworkspace:w[tv1]
|
|
||||||
# windowrule = bordersize 0, floating:0, onworkspace:f[1]
|
|
||||||
# windowrule = rounding 0, floating:0, onworkspace:f[1]
|
|
||||||
|
|
||||||
# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more
|
|
||||||
dwindle {
|
dwindle {
|
||||||
pseudotile = true # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
|
pseudotile = true # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below
|
||||||
preserve_split = true # You probably want this
|
preserve_split = true # You probably want this
|
||||||
@@ -241,21 +177,27 @@ dwindle {
|
|||||||
force_split = 2
|
force_split = 2
|
||||||
}
|
}
|
||||||
|
|
||||||
# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
|
|
||||||
master {
|
master {
|
||||||
new_status = master
|
new_status = master
|
||||||
}
|
}
|
||||||
|
|
||||||
# https://wiki.hyprland.org/Configuring/Variables/#misc
|
render {
|
||||||
|
direct_scanout = 1
|
||||||
|
}
|
||||||
|
|
||||||
misc {
|
misc {
|
||||||
force_default_wallpaper = 1 # Set to 0 or 1 to disable the anime mascot wallpapers
|
force_default_wallpaper = 1
|
||||||
disable_hyprland_logo = true # If true disables the random hyprland logo / anime girl background. :(
|
disable_hyprland_logo = true
|
||||||
vfr = true
|
vfr = true
|
||||||
animate_manual_resizes = true
|
animate_manual_resizes = true
|
||||||
enable_swallow = true
|
enable_swallow = true
|
||||||
swallow_regex = ^(kitty)$
|
swallow_regex = ^(kitty)$
|
||||||
middle_click_paste = false
|
middle_click_paste = false
|
||||||
enable_anr_dialog = false
|
enable_anr_dialog = false
|
||||||
|
render_unfocused_fps = 1
|
||||||
|
size_limits_tiled = true
|
||||||
|
on_focus_under_fullscreen = 0
|
||||||
|
exit_window_retains_fullscreen = false
|
||||||
}
|
}
|
||||||
|
|
||||||
##############
|
##############
|
||||||
@@ -263,9 +205,6 @@ misc {
|
|||||||
##############
|
##############
|
||||||
|
|
||||||
cursor {
|
cursor {
|
||||||
# inactive_timeout = 10
|
|
||||||
# no_warps = 1
|
|
||||||
# persistent_warps = 1
|
|
||||||
warp_on_change_workspace = 1
|
warp_on_change_workspace = 1
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -273,23 +212,16 @@ cursor {
|
|||||||
### INPUT ###
|
### INPUT ###
|
||||||
#############
|
#############
|
||||||
|
|
||||||
# https://wiki.hyprland.org/Configuring/Variables/#input
|
|
||||||
input {
|
input {
|
||||||
kb_layout= us,ru
|
kb_layout = us,ru
|
||||||
kb_options= grp:caps_toggle,grp_led:caps
|
kb_options = grp:caps_toggle,grp_led:caps
|
||||||
# kb_variant = ,qwerty
|
|
||||||
# kb_model =
|
|
||||||
# kb_rules =
|
|
||||||
repeat_rate = 25
|
repeat_rate = 25
|
||||||
repeat_delay = 200
|
repeat_delay = 200
|
||||||
|
|
||||||
follow_mouse = 2
|
follow_mouse = 2
|
||||||
float_switch_override_focus = 0
|
float_switch_override_focus = 0
|
||||||
# touchpad / canyon
|
|
||||||
# sensitivity = 0.2 # -1.0 - 1.0, 0 means no modification.
|
|
||||||
|
|
||||||
# ardor
|
sensitivity = 0.025
|
||||||
sensitivity = 0.025 # -1.0 - 1.0, 0 means no modification.
|
|
||||||
|
|
||||||
touchpad {
|
touchpad {
|
||||||
natural_scroll = true
|
natural_scroll = true
|
||||||
@@ -298,12 +230,12 @@ input {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
# https://wiki.hyprland.org/Configuring/Variables/#gestures
|
|
||||||
gestures {
|
gestures {
|
||||||
# Workspaces
|
# Workspaces
|
||||||
gesture = 4, horizontal, scale: 2, workspace
|
gesture = 4, horizontal, scale: 2, workspace
|
||||||
workspace_swipe_forever = true
|
workspace_swipe_forever = true
|
||||||
|
workspace_swipe_direction_lock = false
|
||||||
|
workspace_swipe_touch = true
|
||||||
gesture = 3, vertical, dispatcher, exec, pkill rofi || $menu
|
gesture = 3, vertical, dispatcher, exec, pkill rofi || $menu
|
||||||
|
|
||||||
# Notification center
|
# Notification center
|
||||||
@@ -314,8 +246,6 @@ gestures {
|
|||||||
gesture = 4, down, dispatcher, exec, wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 10%-
|
gesture = 4, down, dispatcher, exec, wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 10%-
|
||||||
}
|
}
|
||||||
|
|
||||||
# Example per-device config
|
|
||||||
# See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more
|
|
||||||
device {
|
device {
|
||||||
name = gxtp7863:00-27c6:01e0-touchpad
|
name = gxtp7863:00-27c6:01e0-touchpad
|
||||||
sensitivity = 0.5
|
sensitivity = 0.5
|
||||||
@@ -325,11 +255,16 @@ device {
|
|||||||
### KEYBINDINGS ###
|
### KEYBINDINGS ###
|
||||||
###################
|
###################
|
||||||
|
|
||||||
# See https://wiki.hyprland.org/Configuring/Keywords/
|
$mainMod = SUPER
|
||||||
$mainMod = SUPER # Sets "Windows" key as main modifier
|
|
||||||
|
|
||||||
# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more
|
binds {
|
||||||
|
allow_workspace_cycles = true
|
||||||
|
}
|
||||||
|
|
||||||
|
# Exit hyprland
|
||||||
bind = $mainMod ALT, Q, exit,
|
bind = $mainMod ALT, Q, exit,
|
||||||
|
|
||||||
|
# Shutdown
|
||||||
bind = $mainMod SHIFT, delete, exec, shutdown now
|
bind = $mainMod SHIFT, delete, exec, shutdown now
|
||||||
|
|
||||||
# Menu dropdown
|
# Menu dropdown
|
||||||
@@ -346,16 +281,16 @@ bind = $mainMod, G, exec, pkill rofi || $recorder
|
|||||||
bind = $mainMod, N, exec, $notificationCenter
|
bind = $mainMod, N, exec, $notificationCenter
|
||||||
|
|
||||||
# Open floating terminal
|
# Open floating terminal
|
||||||
bind = $mainMod SHIFT, Return, exec, [float; size 800 600; move center] $fastTerminal --class kitty-float
|
bind = $mainMod SHIFT, Return, exec, $fastTerminal --class kitty-float
|
||||||
|
|
||||||
# Open bluetooth
|
# Open bluetooth
|
||||||
bind = $mainMod, F3, exec, [float; size 600 400; move center] $fastTerminal --class kitty-float bluetui
|
bind = $mainMod, F3, exec, $fastTerminal --class kitty-float bluetui
|
||||||
|
|
||||||
# Open alsamixer
|
# Open alsamixer
|
||||||
bind = $mainMod, F2, exec, [float; size 600 400; move center] $fastTerminal --class kitty-float alsamixer -V all
|
bind = $mainMod, F2, exec, $fastTerminal --class kitty-float alsamixer -V all
|
||||||
|
|
||||||
# Open ncmpcpp
|
# Open ncmpcpp
|
||||||
bind = $mainMod, F1, exec, [float; size 600 400; move center] $fastTerminal --class kitty-float ncmpcpp
|
bind = $mainMod, F1, exec, $fastTerminal --class kitty-float ncmpcpp
|
||||||
|
|
||||||
# Close window
|
# Close window
|
||||||
binde = $mainMod, W, killactive,
|
binde = $mainMod, W, killactive,
|
||||||
@@ -391,7 +326,7 @@ bind = $mainMod, l, movefocus, r
|
|||||||
bind = $mainMod, k, movefocus, u
|
bind = $mainMod, k, movefocus, u
|
||||||
bind = $mainMod, j, movefocus, d
|
bind = $mainMod, j, movefocus, d
|
||||||
|
|
||||||
# Switch workspaces with mainMod + [0-9]
|
# Switch workspaces with mainMod + [0,1,2,3,4,5,6,7,8,9,0,-,=]
|
||||||
bind = $mainMod, 1, workspace, 1
|
bind = $mainMod, 1, workspace, 1
|
||||||
bind = $mainMod, 2, workspace, 2
|
bind = $mainMod, 2, workspace, 2
|
||||||
bind = $mainMod, 3, workspace, 3
|
bind = $mainMod, 3, workspace, 3
|
||||||
@@ -420,25 +355,30 @@ bind = $mainMod SHIFT, minus, movetoworkspacesilent, 11
|
|||||||
bind = $mainMod SHIFT, equal, movetoworkspacesilent, 12
|
bind = $mainMod SHIFT, equal, movetoworkspacesilent, 12
|
||||||
|
|
||||||
# Cycle monitors
|
# Cycle monitors
|
||||||
bind = $mainMod CTRL, U, swapactiveworkspaces, eDP-1 HDMI-A-1
|
|
||||||
bind = $mainMod, O, focusmonitor, +1
|
bind = $mainMod, O, focusmonitor, +1
|
||||||
|
|
||||||
|
# Move current workspace to another monitor
|
||||||
|
bind = $mainMod SHIFT, y, movecurrentworkspacetomonitor, +1
|
||||||
|
bind = $mainMod SHIFT, v, moveworkspacetomonitor, +0 +1
|
||||||
|
|
||||||
# Example special workspace (scratchpad)
|
# Example special workspace (scratchpad)
|
||||||
bind = $mainMod, M, togglespecialworkspace, magic
|
bind = $mainMod, M, togglespecialworkspace, magic
|
||||||
bind = $mainMod SHIFT, M, movetoworkspace, special:magic
|
bind = $mainMod SHIFT, M, movetoworkspace, special:magic
|
||||||
|
|
||||||
# Scroll through existing workspaces with mainMod + scroll
|
# Go to previous/next workspace
|
||||||
bind = $mainMod, bracketleft, workspace, r-1
|
bind = $mainMod, bracketleft, workspace, -1
|
||||||
bind = $mainMod, bracketright, workspace, r+1
|
bind = $mainMod, bracketright, workspace, +1
|
||||||
|
|
||||||
|
# Go to previous/next occupied workspace
|
||||||
bind = $mainMod SHIFT, bracketleft, workspace, m-1
|
bind = $mainMod SHIFT, bracketleft, workspace, m-1
|
||||||
bind = $mainMod SHIFT, bracketright, workspace, m+1
|
bind = $mainMod SHIFT, bracketright, workspace, m+1
|
||||||
|
|
||||||
|
# Gaming special workspace
|
||||||
bind = $mainMod, grave, togglespecialworkspace, dungeon
|
bind = $mainMod, grave, togglespecialworkspace, dungeon
|
||||||
bind = $mainMod SHIFT, grave, movetoworkspace, special:dungeon
|
bind = $mainMod SHIFT, grave, movetoworkspace, special:dungeon
|
||||||
|
|
||||||
# Move/resize windows with mainMod + LMB/RMB and dragging
|
# Move/resize windows with mainMod + LMB/RMB and dragging
|
||||||
bindm = $mainMod, mouse:272, movewindow
|
bindm = $mainMod, mouse:272, movewindow
|
||||||
#bindm = SUPER, Shift_L, swapwindow
|
|
||||||
bindm = $mainMod, mouse:273, resizewindow
|
bindm = $mainMod, mouse:273, resizewindow
|
||||||
bindm = SUPER, ALT_L, resizewindow
|
bindm = SUPER, ALT_L, resizewindow
|
||||||
|
|
||||||
@@ -461,9 +401,18 @@ bind = $mainMod, R, swapnext
|
|||||||
bind = $mainMod SHIFT, R, swapnext, prev
|
bind = $mainMod SHIFT, R, swapnext, prev
|
||||||
|
|
||||||
# Go to previous window and back
|
# Go to previous window and back
|
||||||
bind = ALT, TAB, focuscurrentorlast
|
# bind = ALT, TAB, focuscurrentorlast
|
||||||
|
|
||||||
|
# Go to previous workspace and back
|
||||||
|
binds {
|
||||||
|
allow_workspace_cycles = true # does not seem to affect anything
|
||||||
|
}
|
||||||
|
allow_workspace_cycles = true # does not seem to affect anything
|
||||||
|
bind = $mainMod, Tab, workspace, previous
|
||||||
|
bind = ALT, Tab, workspace, previous_per_monitor
|
||||||
|
|
||||||
|
# Toggle swallow for window
|
||||||
bind = $mainMod, I, toggleswallow
|
bind = $mainMod, I, toggleswallow
|
||||||
bindp = $mainMod, Tab, workspace, previous
|
|
||||||
|
|
||||||
# Resize windows in different directions via keyboard
|
# Resize windows in different directions via keyboard
|
||||||
binde = $mainMod ALT, h, resizeactive, -60 0
|
binde = $mainMod ALT, h, resizeactive, -60 0
|
||||||
@@ -475,7 +424,7 @@ binde = $mainMod ALT SHIFT, l, resizeactive, -60 0
|
|||||||
binde = $mainMod ALT SHIFT, j, resizeactive, 0 -60
|
binde = $mainMod ALT SHIFT, j, resizeactive, 0 -60
|
||||||
binde = $mainMod ALT SHIFT, k, resizeactive, 0 60
|
binde = $mainMod ALT SHIFT, k, resizeactive, 0 60
|
||||||
|
|
||||||
# Swap windows in different directions via keyboard
|
# Move windows in different directions via keyboard
|
||||||
binde = $mainMod, Left, moveactive, -100 0
|
binde = $mainMod, Left, moveactive, -100 0
|
||||||
binde = $mainMod, Right, moveactive, 100 0
|
binde = $mainMod, Right, moveactive, 100 0
|
||||||
binde = $mainMod, Down, moveactive, 0 100
|
binde = $mainMod, Down, moveactive, 0 100
|
||||||
@@ -505,7 +454,6 @@ bind = $mainMod CTRL ALT, Right, movewindoworgroup, r
|
|||||||
# Laptop multimedia keys for volume and LCD brightness
|
# Laptop multimedia keys for volume and LCD brightness
|
||||||
bindel = ,XF86AudioRaiseVolume, exec, wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 5%+
|
bindel = ,XF86AudioRaiseVolume, exec, wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 5%+
|
||||||
bindel = ,XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
|
bindel = ,XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
|
||||||
# bindl = ,XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
|
|
||||||
bindl = ,XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle
|
bindl = ,XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle
|
||||||
bindl = ,XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle
|
bindl = ,XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle
|
||||||
bindel = ,XF86MonBrightnessUp, exec, brightnessctl -e4 -n2 set 5%+
|
bindel = ,XF86MonBrightnessUp, exec, brightnessctl -e4 -n2 set 5%+
|
||||||
@@ -513,7 +461,7 @@ bindel = ,XF86MonBrightnessDown, exec, brightnessctl -e4 -n2 set 5%-
|
|||||||
bindl = $mainMod, XF86MonBrightnessUp, exec, brightnessctl set 60%
|
bindl = $mainMod, XF86MonBrightnessUp, exec, brightnessctl set 60%
|
||||||
bindl = $mainMod, XF86MonBrightnessDown, exec, brightnessctl set 0
|
bindl = $mainMod, XF86MonBrightnessDown, exec, brightnessctl set 0
|
||||||
|
|
||||||
# Requires playerctl
|
# Media controls via playerctl
|
||||||
bindl = , XF86AudioNext, exec, playerctl next
|
bindl = , XF86AudioNext, exec, playerctl next
|
||||||
bindl = , XF86AudioPause, exec, playerctl play-pause
|
bindl = , XF86AudioPause, exec, playerctl play-pause
|
||||||
bindl = , XF86AudioPlay, exec, playerctl play-pause
|
bindl = , XF86AudioPlay, exec, playerctl play-pause
|
||||||
@@ -570,7 +518,15 @@ bindr = , F8, sendshortcut, CTRL SHIFT, F8, class:^(vesktop)$
|
|||||||
# Telegram PTT
|
# Telegram PTT
|
||||||
binde = $mainMod CTRL, F9, tagwindow, voicechatuz
|
binde = $mainMod CTRL, F9, tagwindow, voicechatuz
|
||||||
bindr = , F9, sendshortcut, , F9, class:com.ayugram.desktop
|
bindr = , F9, sendshortcut, , F9, class:com.ayugram.desktop
|
||||||
windowrule = bordercolor rgba(ffff00ff) rgba(ffff0055),tag:voicechatuz
|
|
||||||
|
windowrule {
|
||||||
|
name = windowrule-1
|
||||||
|
border_color = rgba(ffff00ff) rgba(ffff0055)
|
||||||
|
match:tag = voicechatuz
|
||||||
|
}
|
||||||
|
|
||||||
|
# Restart zapret
|
||||||
|
bind = $mainMod SHIFT, z, exec, sudo systemctl restart zapret_discord_youtube.service && play -v 0.4 /home/greg/.config/hypr/sound/dmenu.wav
|
||||||
|
|
||||||
# Zen - focus searchbar
|
# Zen - focus searchbar
|
||||||
bindrn = CTRL, Space, sendshortcut, , F6, class:^(zen)$
|
bindrn = CTRL, Space, sendshortcut, , F6, class:^(zen)$
|
||||||
@@ -589,7 +545,6 @@ submap = clean
|
|||||||
bind = $mainMod, Escape, submap, reset
|
bind = $mainMod, Escape, submap, reset
|
||||||
submap = reset
|
submap = reset
|
||||||
|
|
||||||
|
|
||||||
# Easymove submap
|
# Easymove submap
|
||||||
bind = $mainMod SHIFT, Space, submap, ezmv
|
bind = $mainMod SHIFT, Space, submap, ezmv
|
||||||
submap = ezmv
|
submap = ezmv
|
||||||
@@ -605,7 +560,6 @@ bind = $mainMod, Tab, submap, reset
|
|||||||
bind = $mainMod, Escape, submap, reset
|
bind = $mainMod, Escape, submap, reset
|
||||||
submap = reset
|
submap = reset
|
||||||
|
|
||||||
|
|
||||||
# Activate MPD submap with $mainMod + U
|
# Activate MPD submap with $mainMod + U
|
||||||
bind = $mainMod, U, submap, mpd
|
bind = $mainMod, U, submap, mpd
|
||||||
|
|
||||||
@@ -613,17 +567,17 @@ bind = $mainMod, U, submap, mpd
|
|||||||
submap = mpd
|
submap = mpd
|
||||||
|
|
||||||
# MPD controls (actions that exit submap)
|
# MPD controls (actions that exit submap)
|
||||||
bind = , P, exec, mpc --password $mpdpass toggle
|
bind = , P, exec, mpc toggle
|
||||||
bind = SHIFT, H, exec, mpc --password $mpdpass prev
|
bind = SHIFT, H, exec, mpc prev
|
||||||
bind = SHIFT, L, exec, mpc --password $mpdpass next
|
bind = SHIFT, L, exec, mpc next
|
||||||
|
|
||||||
# MPD Seek
|
# MPD Seek
|
||||||
binde = , H, exec, mpc --password $mpdpass seek "-00:00:5"
|
binde = , H, exec, mpc seek "-00:00:5"
|
||||||
binde = , L, exec, mpc --password $mpdpass seek "+00:00:5"
|
binde = , L, exec, mpc seek "+00:00:5"
|
||||||
|
|
||||||
# Volume controls (remain in submap for repeated adjustments)
|
# Volume controls (remain in submap for repeated adjustments)
|
||||||
bind = , J, exec, mpc --password $mpdpass volume -5
|
bind = , J, exec, mpc volume -5
|
||||||
bind = , K, exec, mpc --password $mpdpass volume +5
|
bind = , K, exec, mpc volume +5
|
||||||
|
|
||||||
# Alternative exit methods
|
# Alternative exit methods
|
||||||
bind = , escape, submap, reset
|
bind = , escape, submap, reset
|
||||||
@@ -641,80 +595,177 @@ submap = reset
|
|||||||
# See https://wiki.hyprland.org/Configuring/Workspace-Rules/ for workspace rules
|
# See https://wiki.hyprland.org/Configuring/Workspace-Rules/ for workspace rules
|
||||||
|
|
||||||
# Floating kitty
|
# Floating kitty
|
||||||
windowrule = float,class:^(kitty-float)$
|
windowrule {
|
||||||
windowrule = size 600 400,class:^(kitty-float)$
|
name = windowrule-21
|
||||||
windowrule = move center,class:^(kitty-float)$
|
float = on
|
||||||
|
size = 600 400
|
||||||
|
center = on
|
||||||
|
match:class = ^(kitty-float)$
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
windowrule {
|
||||||
|
name = windowrule-3
|
||||||
|
workspace = special:dungeon
|
||||||
|
match:class = org.freedesktop.Xwayland
|
||||||
|
}
|
||||||
|
|
||||||
windowrule = workspace special:dungeon,class:org.freedesktop.Xwayland
|
|
||||||
|
|
||||||
# Zenity
|
# Zenity
|
||||||
windowrule = float,class:^(zenity)$
|
windowrule {
|
||||||
|
name = windowrule-4
|
||||||
|
float = on
|
||||||
|
match:class = ^(zenity)$
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
# Super Productivity
|
# Super Productivity
|
||||||
windowrule = workspace 7 silent,class:^(superProductivity)$
|
windowrule {
|
||||||
|
name = windowrule-5
|
||||||
|
workspace = 7 silent
|
||||||
|
match:class = ^(superProductivity)$
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
# Telegram
|
# Telegram
|
||||||
windowrule = workspace 8 silent,class:^(com.ayugram.desktop)$
|
windowrule {
|
||||||
windowrule = group set,class:^(com.ayugram.desktop)$
|
name = windowrule-6
|
||||||
|
workspace = 8 silent
|
||||||
|
group = set
|
||||||
|
suppress_event = fullscreen
|
||||||
|
match:class = ^(com.ayugram.desktop)$
|
||||||
|
}
|
||||||
|
|
||||||
|
# Telegram media viewer
|
||||||
|
windowrule {
|
||||||
|
name = telegram-media-viewer
|
||||||
|
group = deny
|
||||||
|
fullscreen = true
|
||||||
|
match:class = ^(com.ayugram.desktop)$
|
||||||
|
match:initial_title = ^(Media\ viewer)
|
||||||
|
}
|
||||||
|
|
||||||
# Vesktop
|
# Vesktop
|
||||||
windowrule = workspace 8 silent,class:^(vesktop)$
|
windowrule {
|
||||||
windowrule = group override set always,class:^(vesktop)$
|
name = windowrule-7
|
||||||
|
workspace = 8 silent
|
||||||
|
group = override set always
|
||||||
|
match:class = ^(vesktop)$
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
# Element
|
# Element
|
||||||
windowrule = workspace 8 silent,class:^(Element)$
|
windowrule {
|
||||||
windowrule = group override set always,class:^(Element)$
|
name = windowrule-8
|
||||||
|
workspace = 8 silent
|
||||||
|
group = override set always
|
||||||
|
match:class = ^(Element)$
|
||||||
|
}
|
||||||
|
|
||||||
# Steam
|
# Steam
|
||||||
windowrule = workspace 7 silent,class:^(steam)$
|
windowrule {
|
||||||
windowrule = group set,class:^(steam)$
|
name = windowrule-9
|
||||||
|
workspace = 7 silent
|
||||||
|
group = set
|
||||||
|
match:class = ^(steam)$
|
||||||
|
}
|
||||||
|
|
||||||
# Screensharing protection
|
# Screensharing protection
|
||||||
source = ~/.config/hypr/privacy.conf
|
source = ~/.config/hypr/privacy.conf
|
||||||
windowrule = noscreenshare, tag:privacy
|
windowrule {
|
||||||
windowrule = bordercolor rgba(cc00ffff) rgba(630063ff) 90deg,tag:privacy
|
name = windowrule-10
|
||||||
windowrule = noscreenshare 0, tag:privacyexpose
|
no_screen_share = on
|
||||||
windowrule = bordercolor rgba(ff0000ff) rgba(ff0000ff) 90deg,tag:privacyexpose
|
border_color = rgba(cc00ffff) rgba(630063ff) 90deg
|
||||||
windowrule = dimaround, tag:privacyexpose
|
match:tag = privacy
|
||||||
|
}
|
||||||
|
|
||||||
|
windowrule {
|
||||||
|
name = windowrule-11
|
||||||
|
no_screen_share = 0
|
||||||
|
border_color = rgba(ff0000ff) rgba(ff0000ff) 90deg
|
||||||
|
border_size = 5
|
||||||
|
match:tag = privacyexpose
|
||||||
|
}
|
||||||
|
|
||||||
# com.saivert.pwvucontrol
|
# com.saivert.pwvucontrol
|
||||||
windowrule = float,class:^(com.saivert.pwvucontrol)$
|
windowrule {
|
||||||
windowrule = size 600 400,class:^(com.saivert.pwvucontrol)$
|
name = windowrule-12
|
||||||
windowrule = move center,class:^(com.saivert.pwvucontrol)$
|
float = on
|
||||||
|
size = 600 400
|
||||||
|
move = (center)
|
||||||
|
match:class = ^(com.saivert.pwvucontrol)$
|
||||||
|
}
|
||||||
|
|
||||||
# Frozen windows
|
# Frozen windows
|
||||||
windowrule = bordercolor rgba(E96375ff) rgba(00ffff55) 90deg,tag:zawarudo
|
windowrule {
|
||||||
|
name = windowrule-13
|
||||||
|
border_color = rgba(E96375ff) rgba(00ffff55) 90deg
|
||||||
|
match:tag = zawarudo
|
||||||
|
}
|
||||||
|
|
||||||
# Marked windows
|
# Marked windows
|
||||||
windowrule = bordercolor rgba(0000ffff) rgba(aa00ffa5),tag:marked
|
windowrule {
|
||||||
|
name = windowrule-14
|
||||||
|
border_color = rgba(0000ffff) rgba(aa00ffa5)
|
||||||
|
match:tag = marked
|
||||||
|
}
|
||||||
|
|
||||||
# Ignore maximize requests from apps. You'll probably like this.
|
# Ignore maximize requests from apps. You'll probably like this.
|
||||||
windowrule = suppressevent maximize, class:.*
|
windowrule {
|
||||||
|
name = windowrule-15
|
||||||
|
suppress_event = maximize
|
||||||
|
match:class = .*
|
||||||
|
}
|
||||||
|
|
||||||
# Fix some dragging issues with XWayland
|
# Fix some dragging issues with XWayland
|
||||||
windowrule = nofocus,class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0
|
windowrule {
|
||||||
|
name = windowrule-16
|
||||||
|
no_focus = on
|
||||||
|
match:class = ^$
|
||||||
|
match:title = ^$
|
||||||
|
match:xwayland = 1
|
||||||
|
match:float = 1
|
||||||
|
match:fullscreen = 0
|
||||||
|
match:pin = 0
|
||||||
|
}
|
||||||
|
|
||||||
# rofi
|
# rofi
|
||||||
layerrule = ignorezero, rofi
|
layerrule {
|
||||||
layerrule = dimaround, rofi
|
name = layerrule-1
|
||||||
layerrule = blur, rofi
|
ignore_alpha = 0
|
||||||
layerrule = animation slide bottom, rofi
|
dim_around = on
|
||||||
|
blur = on
|
||||||
|
animation = slide bottom
|
||||||
|
match:namespace = rofi
|
||||||
|
}
|
||||||
|
|
||||||
# swaync
|
# swaync
|
||||||
layerrule = blur, swaync-control-center
|
layerrule {
|
||||||
layerrule = blur, swaync-notification-window
|
name = layerrule-2
|
||||||
layerrule = abovelock, swaync-notification-window
|
blur = on
|
||||||
layerrule = dimaround, swaync-control-center
|
dim_around = on
|
||||||
layerrule = ignorezero, swaync-control-center
|
ignore_alpha = 0
|
||||||
layerrule = ignorezero, swaync-notification-window
|
animation = slideIn right
|
||||||
layerrule = animation slideIn right, swaync-control-center
|
match:namespace = swaync-control-center
|
||||||
layerrule = animation slideIn right, swaync-notification-window
|
}
|
||||||
|
|
||||||
|
layerrule {
|
||||||
|
name = layerrule-3
|
||||||
|
blur = on
|
||||||
|
above_lock = on
|
||||||
|
ignore_alpha = 0
|
||||||
|
animation = slideIn right
|
||||||
|
match:namespace = swaync-notification-window
|
||||||
|
}
|
||||||
|
|
||||||
# waybar
|
# waybar
|
||||||
layerrule = ignorezero, waybar
|
layerrule {
|
||||||
layerrule = blur, waybar
|
name = layerrule-4
|
||||||
layerrule = ignorealpha 0.6, waybar
|
ignore_alpha = 0.6
|
||||||
layerrule = animation fadeIn, waybar
|
blur = on
|
||||||
|
animation = fadeIn
|
||||||
|
match:namespace = waybar
|
||||||
|
}
|
||||||
|
|
||||||
# Adjustments for certain workspaces
|
# Adjustments for certain workspaces
|
||||||
workspace = special:magic, gapsin:20, gapsout:50, shadow:false
|
workspace = special:magic, gapsin:20, gapsout:50, shadow:false
|
||||||
@@ -723,7 +774,7 @@ workspace = 9, gapsin:15, gapsout:40
|
|||||||
###############
|
###############
|
||||||
### PLUGINS ###
|
### PLUGINS ###
|
||||||
###############
|
###############
|
||||||
# exec-once = hyprpm reload -n
|
exec-once = hyprpm reload
|
||||||
|
|
||||||
# # Easymotion
|
# # Easymotion
|
||||||
# bind = SUPER, x, easymotion, action:hyprctl dispatch focuswindow address:{}
|
# bind = SUPER, x, easymotion, action:hyprctl dispatch focuswindow address:{}
|
||||||
@@ -731,71 +782,106 @@ workspace = 9, gapsin:15, gapsout:40
|
|||||||
# Close unfocused
|
# Close unfocused
|
||||||
# bind = $mainMod SHIFT, x, plugin:xtd:closeunfocused
|
# bind = $mainMod SHIFT, x, plugin:xtd:closeunfocused
|
||||||
|
|
||||||
# plugin {
|
plugin {
|
||||||
#
|
|
||||||
# hyprfocus {
|
hyprfocus {
|
||||||
# animation = hyprfocusIn, 1, 3, quick
|
animation = hyprfocusIn, 1, 3, quick
|
||||||
# animation = hyprfocusOut, 1, 3, quick
|
animation = hyprfocusOut, 1, 3, quick
|
||||||
# fade_opacity = 0.94
|
fade_opacity = 0.94
|
||||||
# mode = flash
|
mode = flash
|
||||||
# }
|
}
|
||||||
#
|
hyprbars {
|
||||||
# easymotion {
|
enabled = false
|
||||||
# #font size of the text
|
bar_height = 18
|
||||||
# textsize=72
|
bar_color = rgba(1c1c1cce)
|
||||||
#
|
bar_title_enabled = false
|
||||||
# #color of the text, takes standard hyprland color format
|
bar_buttons_alignment = right
|
||||||
# textcolor=rgba(ffffffff)
|
bar_blur = true
|
||||||
#
|
icon_on_hover = true
|
||||||
# #background color of the label box. alpha is respected
|
bar_part_of_window = false
|
||||||
# bgcolor=rgba(ff7777a0)
|
bar_precedence_over_border = true
|
||||||
#
|
|
||||||
# #enable blur. The bgcolor alpha must be at least semi-transparent.
|
bar_text_font = "Iosevka Nerd Font Propo"
|
||||||
# blur=0
|
bar_text_size = 10
|
||||||
#
|
|
||||||
# #Set blur alpha value. Blur must be enabled (float value)
|
hyprbars-button = rgba(ff4040ff), 12, X, hyprctl dispatch killactive
|
||||||
# blurA=1.0
|
hyprbars-button = rgba(11ee11ff), 12, F, hyprctl dispatch togglefloating && hyprctl dispatch resizeactive exact 1280 700 && hyprctl dispatch centerwindow
|
||||||
#
|
hyprbars-button = rgba(eeee11ff), 12, Z, hyprctl dispatch tagwindow zawarudo
|
||||||
# #Set xray. Blur must be enabled
|
inactive_button_color = rgba(D583995c)
|
||||||
# xray=0
|
|
||||||
#
|
on_double_click =
|
||||||
# #font to use for the label. This is passed directly to the pango font description
|
|
||||||
# textfont=Iosevka Nerd Font Mono
|
windowrule = match:class ^(com.ayugram.desktop), hyprbars:bar_color rgb(261B1E)
|
||||||
#
|
windowrule = match:class ^(zen), hyprbars:bar_color rgb(121214)
|
||||||
# #padding around the text (inside the label box) size in pixels, adjusted for
|
windowrule = match:class ^(thunar), hyprbars:bar_color rgb(1C1C1C)
|
||||||
# #monitor scaling. This is the same format as hyprland's gapsin/gapsout workspace layout rule
|
windowrule = match:class ^(draw.io), hyprbars:bar_color rgb(F1F3F4)
|
||||||
# #example: textpadding=2 5 5 2 (spaces not commas)
|
windowrule = match:float 1, hyprbars:bar_color rgb(1C1C1C)
|
||||||
# textpadding=5
|
}
|
||||||
#
|
|
||||||
# #size of the border around the label box. A border size of zero disables border rendering.
|
dynamic-cursors {
|
||||||
# bordersize=2
|
shake {
|
||||||
#
|
threshold = 3
|
||||||
# #color of the border. takes the same format as hyprland's border (so it can be a gradient)
|
limit = 15
|
||||||
# bordercolor=rgba(ffffffff)
|
timeout = 1
|
||||||
#
|
effects = true
|
||||||
# #rounded corners? Same as hyprland's 'decoration:rounding' config
|
nearest = true
|
||||||
# rounding=1
|
}
|
||||||
#
|
}
|
||||||
# #what to do if a window is fullscreen
|
|
||||||
# #none: nothing. (easymotion label won't be displayed on that window)
|
easymotion {
|
||||||
# #toggle: take the window out of fullscreen entirely.
|
#font size of the text
|
||||||
# #maximize: convert the window to maximized.
|
textsize=72
|
||||||
# #windows are restored to fullscreen after easymotion is exited/selected
|
|
||||||
# fullscreen_action=none
|
#color of the text, takes standard hyprland color format
|
||||||
#
|
textcolor=rgba(ffffffff)
|
||||||
# #which keys to use for selecting windows
|
|
||||||
# motionkeys=abcdefghijklmnopqrstuvwxyZ1234567890
|
#background color of the label box. alpha is respected
|
||||||
# #which keys to use for labeling windows
|
bgcolor=rgba(ff7777a0)
|
||||||
# motionlabels=ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890
|
|
||||||
#
|
#enable blur. The bgcolor alpha must be at least semi-transparent.
|
||||||
# #if a monitor has a focused special workspace, only put easymotion labels on the windows in the special workspace
|
blur=0
|
||||||
# only_special = true
|
|
||||||
# }
|
#Set blur alpha value. Blur must be enabled (float value)
|
||||||
# }
|
blurA=1.0
|
||||||
|
|
||||||
|
#Set xray. Blur must be enabled
|
||||||
|
xray=0
|
||||||
|
|
||||||
|
#font to use for the label. This is passed directly to the pango font description
|
||||||
|
textfont=Iosevka Nerd Font Mono
|
||||||
|
|
||||||
|
#padding around the text (inside the label box) size in pixels, adjusted for
|
||||||
|
#monitor scaling. This is the same format as hyprland's gapsin/gapsout workspace layout rule
|
||||||
|
#example: textpadding=2 5 5 2 (spaces not commas)
|
||||||
|
textpadding=5
|
||||||
|
|
||||||
|
#size of the border around the label box. A border size of zero disables border rendering.
|
||||||
|
bordersize=2
|
||||||
|
|
||||||
|
#color of the border. takes the same format as hyprland's border (so it can be a gradient)
|
||||||
|
bordercolor=rgba(ffffffff)
|
||||||
|
|
||||||
|
#rounded corners? Same as hyprland's 'decoration:rounding' config
|
||||||
|
rounding=1
|
||||||
|
|
||||||
|
#what to do if a window is fullscreen
|
||||||
|
#none: nothing. (easymotion label won't be displayed on that window)
|
||||||
|
#toggle: take the window out of fullscreen entirely.
|
||||||
|
#maximize: convert the window to maximized.
|
||||||
|
#windows are restored to fullscreen after easymotion is exited/selected
|
||||||
|
fullscreen_action=none
|
||||||
|
|
||||||
|
#which keys to use for selecting windows
|
||||||
|
motionkeys=abcdefghijklmnopqrstuvwxyZ1234567890
|
||||||
|
#which keys to use for labeling windows
|
||||||
|
motionlabels=ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890
|
||||||
|
|
||||||
|
#if a monitor has a focused special workspace, only put easymotion labels on the windows in the special workspace
|
||||||
|
only_special = true
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
debug {
|
debug {
|
||||||
disable_logs = false
|
disable_logs = false
|
||||||
overlay = false
|
overlay = false
|
||||||
}
|
}
|
||||||
|
|
||||||
source = ~/.config/hypr/monitors.conf
|
|
||||||
|
|||||||
@@ -1,111 +1,89 @@
|
|||||||
# sample hyprlock.conf
|
# BACKGROUND
|
||||||
# for more configuration options, refer https://wiki.hyprland.org/Hypr-Ecosystem/hyprlock
|
|
||||||
#
|
|
||||||
# rendered text in all widgets supports pango markup (e.g. <b> or <i> tags)
|
|
||||||
# ref. https://wiki.hyprland.org/Hypr-Ecosystem/hyprlock/#general-remarks
|
|
||||||
#
|
|
||||||
# shortcuts to clear password buffer: ESC, Ctrl+U, Ctrl+Backspace
|
|
||||||
#
|
|
||||||
# you can get started by copying this config to ~/.config/hypr/hyprlock.conf
|
|
||||||
#
|
|
||||||
|
|
||||||
$font = Iosevka
|
|
||||||
|
|
||||||
general {
|
|
||||||
hide_cursor = true
|
|
||||||
}
|
|
||||||
|
|
||||||
# uncomment to enable fingerprint authentication
|
|
||||||
# auth {
|
|
||||||
# fingerprint {
|
|
||||||
# enabled = true
|
|
||||||
# ready_message = Scan fingerprint to unlock
|
|
||||||
# present_message = Scanning...
|
|
||||||
# retry_delay = 250 # in milliseconds
|
|
||||||
# }
|
|
||||||
# }
|
|
||||||
|
|
||||||
animations {
|
|
||||||
enabled = true
|
|
||||||
bezier = linear, 1, 1, 0, 0
|
|
||||||
animation = fadeIn, 1, 5, linear
|
|
||||||
animation = fadeOut, 1, 5, linear
|
|
||||||
animation = inputFieldDots, 1, 2, linear
|
|
||||||
}
|
|
||||||
|
|
||||||
background {
|
background {
|
||||||
monitor =
|
monitor =
|
||||||
path = screenshot
|
path = /home/greg/Pictures/Wallpapers/waporvape-dark-tvlike-pink.png
|
||||||
# path = /home/greg/Pictures/Wallpapers/japan_tower_sakura.jpg
|
blur_passes = 0
|
||||||
blur_passes = 3
|
contrast = 0.8916
|
||||||
|
brightness = 0.8172
|
||||||
|
vibrancy = 0.1696
|
||||||
|
vibrancy_darkness = 0.0
|
||||||
}
|
}
|
||||||
|
|
||||||
image {
|
# GENERAL
|
||||||
# TODO: store there images somewhere in the config dir
|
general {
|
||||||
path = /home/greg/Pictures/Things/niko.jpg
|
no_fade_in = false
|
||||||
position = 0, 40
|
grace = 0
|
||||||
|
disable_loading_bar = false
|
||||||
|
}
|
||||||
|
|
||||||
|
# Time-Hour
|
||||||
|
label {
|
||||||
|
monitor =
|
||||||
|
text = cmd[update:1000] echo "<span>$(date +"%I")</span>"
|
||||||
|
color = rgba(255, 255, 255, 1)
|
||||||
|
font_size = 125
|
||||||
|
font_family = StretchPro
|
||||||
|
position = -80, 190
|
||||||
halign = center
|
halign = center
|
||||||
valign = center
|
valign = center
|
||||||
size = 100, 100
|
|
||||||
rounding = -1
|
|
||||||
border_color = rgba(9E223800)
|
|
||||||
shadow_passes = 1
|
|
||||||
shadow_size = 3
|
|
||||||
shadow_color = rgb(aaaaaa)
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Time-Minute
|
||||||
|
label {
|
||||||
|
monitor =
|
||||||
|
text = cmd[update:1000] echo "<span>$(date +"%M")</span>"
|
||||||
|
color = rgba(232, 60, 130, 1)
|
||||||
|
font_size = 125
|
||||||
|
font_family = StretchPro
|
||||||
|
position = 0, 70
|
||||||
|
halign = center
|
||||||
|
valign = center
|
||||||
|
}
|
||||||
|
|
||||||
|
# Day-Month-Date
|
||||||
|
label {
|
||||||
|
monitor =
|
||||||
|
text = cmd[update:1000] echo -e "$(date +"%d %B, %a.")"
|
||||||
|
color = rgba(255, 255, 255, 100)
|
||||||
|
font_size = 22
|
||||||
|
font_family = Suisse Int'l Mono
|
||||||
|
position = 20, -8
|
||||||
|
halign = center
|
||||||
|
valign = center
|
||||||
|
}
|
||||||
|
|
||||||
|
# USER
|
||||||
|
label {
|
||||||
|
monitor =
|
||||||
|
text = $USER
|
||||||
|
color = rgba(232, 60, 130, 1)
|
||||||
|
outline_thickness = 2
|
||||||
|
dots_size = 0.2 # Scale of input-field height, 0.2 - 0.8
|
||||||
|
dots_spacing = 0.2 # Scale of dots' absolute size, 0.0 - 1.0
|
||||||
|
dots_center = true
|
||||||
|
font_size = 22
|
||||||
|
font_family = SF Pro Display Bold
|
||||||
|
position = 0, -220
|
||||||
|
halign = center
|
||||||
|
valign = center
|
||||||
|
}
|
||||||
|
|
||||||
|
# INPUT FIELD
|
||||||
input-field {
|
input-field {
|
||||||
monitor =
|
monitor =
|
||||||
size = 15%, 5%
|
size = 300, 60
|
||||||
outline_thickness = 3
|
outline_thickness = 2
|
||||||
inner_color = rgba(0, 0, 0, 0.5) # no fill
|
dots_size = 0.2 # Scale of input-field height, 0.2 - 0.8
|
||||||
|
dots_spacing = 0.2 # Scale of dots' absolute size, 0.0 - 1.0
|
||||||
outer_color = rgba(9E223800)
|
dots_center = true
|
||||||
check_color = rgba(ffff00ff) rgba(E96375ff) 120deg
|
outer_color = rgba(0, 0, 0, 0)
|
||||||
fail_color = rgba(ff6633ee) rgba(ff0066ee) 40deg
|
inner_color = rgba(255, 255, 255, 0.1)
|
||||||
|
font_color = rgb(200, 200, 200)
|
||||||
font_color = rgb(255,255,255)
|
|
||||||
fade_on_empty = false
|
fade_on_empty = false
|
||||||
rounding = 15
|
font_family = SF Pro Display Bold
|
||||||
|
placeholder_text = <i><span foreground="##FB6F7F99">パスワード</span></i>
|
||||||
font_family = $font
|
hide_input = false
|
||||||
placeholder_text = パスワード
|
position = 0, -290
|
||||||
fail_text = $PAMFAIL
|
|
||||||
|
|
||||||
# uncomment to use a letter instead of a dot to indicate the typed password
|
|
||||||
# dots_text_format = *
|
|
||||||
# dots_size = 0.4
|
|
||||||
dots_spacing = 0.3
|
|
||||||
|
|
||||||
# uncomment to use an input indicator that does not show the password length (similar to swaylock's input indicator)
|
|
||||||
# hide_input = true
|
|
||||||
|
|
||||||
position = 0, -100
|
|
||||||
halign = center
|
halign = center
|
||||||
valign = center
|
valign = center
|
||||||
}
|
}
|
||||||
|
|
||||||
# TIME
|
|
||||||
label {
|
|
||||||
monitor =
|
|
||||||
text = $TIME # ref. https://wiki.hyprland.org/Hypr-Ecosystem/hyprlock/#variable-substitution
|
|
||||||
font_size = 90
|
|
||||||
font_family = $font
|
|
||||||
|
|
||||||
position = 0, -50
|
|
||||||
halign = center
|
|
||||||
valign = top
|
|
||||||
}
|
|
||||||
|
|
||||||
# DATE
|
|
||||||
label {
|
|
||||||
monitor =
|
|
||||||
text = cmd[update:60000] date +"%A, %d %B %Y" # update every 60 seconds
|
|
||||||
font_size = 25
|
|
||||||
font_family = $font
|
|
||||||
|
|
||||||
position = 0, -200
|
|
||||||
halign = center
|
|
||||||
valign = top
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|||||||
@@ -1,18 +1,110 @@
|
|||||||
windowrule = tag +privacy,class:^(org.telegram.desktop)$
|
windowrule {
|
||||||
windowrule = tag +privacy,class:^(com.ayugram.desktop)$
|
name = privacy-rule-1
|
||||||
windowrule = tag +privacy,class:^(Element)$
|
tag = privacy
|
||||||
windowrule = tag +privacy,class:^(vesktop)$
|
match:class = ^(org.telegram.desktop)$
|
||||||
windowrule = tag +privacy,class:^(chat-simplex-desktop-MainKt)$
|
}
|
||||||
windowrule = tag +privacy,class:^(com.github.hluk.copyq)$
|
|
||||||
windowrule = tag +privacy,class:^(org.keepassxc.KeePassXC)$
|
windowrule {
|
||||||
windowrule = tag +privacy,class:^(otpclient)$
|
name = privacy-rule-2
|
||||||
windowrule = tag +privacy,class:^(com.nextcloud.desktopclient.nextcloud)$
|
tag = privacy
|
||||||
windowrule = tag +privacy,title:^(diary)$
|
match:class = ^(com.ayugram.desktop)$
|
||||||
windowrule = tag +privacy,class:thunar,title:.*(Downloads|Telegram Desktop).*
|
}
|
||||||
windowrule = tag +privacy,class:^(Mullvad VPN)$
|
|
||||||
windowrule = tag +privacy,class:^(Tor Browser)$
|
windowrule {
|
||||||
windowrule = tag +privacy,class:^(zen)$,title:.*Private Browsing.*
|
name = privacy-rule-3
|
||||||
windowrule = tag +privacy,class:^(Logseq)$
|
tag = privacy
|
||||||
windowrule = tag +privacy,class:^(com.obsproject.Studio)$
|
match:class = ^(Element)$
|
||||||
layerrule = noscreenshare, swaync-control-center
|
}
|
||||||
layerrule = noscreenshare, swaync-notification-window
|
|
||||||
|
windowrule {
|
||||||
|
name = privacy-rule-4
|
||||||
|
tag = privacy
|
||||||
|
match:class = ^(vesktop)$
|
||||||
|
}
|
||||||
|
|
||||||
|
windowrule {
|
||||||
|
name = privacy-rule-5
|
||||||
|
tag = privacy
|
||||||
|
match:class = ^(chat-simplex-desktop-MainKt)$
|
||||||
|
}
|
||||||
|
|
||||||
|
windowrule {
|
||||||
|
name = privacy-rule-6
|
||||||
|
tag = privacy
|
||||||
|
match:class = ^(com.github.hluk.copyq)$
|
||||||
|
}
|
||||||
|
|
||||||
|
windowrule {
|
||||||
|
name = privacy-rule-7
|
||||||
|
tag = privacy
|
||||||
|
match:class = ^(org.keepassxc.KeePassXC)$
|
||||||
|
}
|
||||||
|
|
||||||
|
windowrule {
|
||||||
|
name = privacy-rule-8
|
||||||
|
tag = privacy
|
||||||
|
match:class = ^(otpclient)$
|
||||||
|
}
|
||||||
|
|
||||||
|
windowrule {
|
||||||
|
name = privacy-rule-9
|
||||||
|
tag = privacy
|
||||||
|
match:class = ^(com.nextcloud.desktopclient.nextcloud)$
|
||||||
|
}
|
||||||
|
|
||||||
|
windowrule {
|
||||||
|
name = privacy-rule-10
|
||||||
|
tag = privacy
|
||||||
|
match:title = ^(diary)$
|
||||||
|
}
|
||||||
|
|
||||||
|
windowrule {
|
||||||
|
name = privacy-rule-11
|
||||||
|
tag = privacy
|
||||||
|
match:class = thunar
|
||||||
|
match:title = .*(Downloads|Telegram Desktop).*
|
||||||
|
}
|
||||||
|
|
||||||
|
windowrule {
|
||||||
|
name = privacy-rule-12
|
||||||
|
tag = privacy
|
||||||
|
match:class = ^(Mullvad VPN)$
|
||||||
|
}
|
||||||
|
|
||||||
|
windowrule {
|
||||||
|
name = privacy-rule-13
|
||||||
|
tag = privacy
|
||||||
|
match:class = ^(Tor Browser)$
|
||||||
|
}
|
||||||
|
|
||||||
|
windowrule {
|
||||||
|
name = privacy-rule-14
|
||||||
|
tag = privacy
|
||||||
|
match:class = ^(zen)$
|
||||||
|
match:title = .*Private Browsing.*
|
||||||
|
}
|
||||||
|
|
||||||
|
windowrule {
|
||||||
|
name = privacy-rule-15
|
||||||
|
tag = privacy
|
||||||
|
match:class = ^(Logseq)$
|
||||||
|
}
|
||||||
|
|
||||||
|
windowrule {
|
||||||
|
name = privacy-rule-16
|
||||||
|
tag = privacy
|
||||||
|
match:class = ^(com.obsproject.Studio)$
|
||||||
|
}
|
||||||
|
|
||||||
|
layerrule {
|
||||||
|
name = privacy-layer-rule-1
|
||||||
|
no_screen_share = on
|
||||||
|
match:namespace = swaync-control-center
|
||||||
|
}
|
||||||
|
|
||||||
|
layerrule {
|
||||||
|
name = privacy-layer-rule-2
|
||||||
|
no_screen_share = on
|
||||||
|
match:namespace = swaync-notification-window
|
||||||
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -14,14 +14,14 @@ if [ "$HYPRGAMEMODE" = 1 ] ; then
|
|||||||
if pgrep waybar > /dev/null; then
|
if pgrep waybar > /dev/null; then
|
||||||
pkill waybar
|
pkill waybar
|
||||||
# TODO: lite waybar version
|
# TODO: lite waybar version
|
||||||
waybar -c "$HOME/.config/waybar/config_top.jsonc" -s "$HOME/.config/waybar/style_top.css" &
|
$HOME/.config/waybar/run.sh
|
||||||
fi
|
fi
|
||||||
exit
|
exit
|
||||||
fi
|
fi
|
||||||
|
|
||||||
if pgrep waybar > /dev/null; then
|
if pgrep waybar > /dev/null; then
|
||||||
pkill waybar
|
pkill waybar
|
||||||
waybar -c "$HOME/.config/waybar/config_top.jsonc" -s "$HOME/.config/waybar/style_top.css" &
|
$HOME/.config/waybar/run.sh
|
||||||
fi
|
fi
|
||||||
|
|
||||||
hyprctl reload
|
hyprctl reload
|
||||||
|
|||||||
152
hypr/scripts/sounds.sh
Executable file
152
hypr/scripts/sounds.sh
Executable file
@@ -0,0 +1,152 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
|
||||||
|
SOUND_DIR="$HOME/.config/hypr/sound"
|
||||||
|
PLAYER="play"
|
||||||
|
VOLUME="0.1"
|
||||||
|
|
||||||
|
declare -A SOUND_MAP=(
|
||||||
|
["workspace"]="futuristic-click.wav"
|
||||||
|
["activewindow"]="popup.wav"
|
||||||
|
["activelayout"]="popup.wav"
|
||||||
|
["fullscreen"]="fullscreen.wav"
|
||||||
|
["openwindow"]="open.mp3"
|
||||||
|
["closewindow"]="close_2.wav"
|
||||||
|
["movewindow"]="popup.wav"
|
||||||
|
["changefloatingmode"]="float.wav"
|
||||||
|
)
|
||||||
|
|
||||||
|
declare -A EVENT_ENABLED=(
|
||||||
|
["workspace"]=1
|
||||||
|
["activewindow"]=1
|
||||||
|
["activelayout"]=0
|
||||||
|
["fullscreen"]=1
|
||||||
|
["openwindow"]=1
|
||||||
|
["closewindow"]=1
|
||||||
|
["movewindow"]=1
|
||||||
|
["changefloatingmode"]=1
|
||||||
|
)
|
||||||
|
|
||||||
|
declare -A EVENT_COOLDOWN=(
|
||||||
|
["activewindow"]=0.1
|
||||||
|
["movewindow"]=0.2
|
||||||
|
["changefloatingmode"]=0.3
|
||||||
|
)
|
||||||
|
|
||||||
|
DEBUG=1
|
||||||
|
declare -a SOUND_QUEUE=()
|
||||||
|
declare -A COOLDOWN_TIMERS=()
|
||||||
|
|
||||||
|
mkdir -p "$SOUND_DIR"
|
||||||
|
|
||||||
|
cp -r $SOUND_DIR "/tmp/hypr-sound"
|
||||||
|
SOUND_DIR="/tmp/hypr-sound"
|
||||||
|
|
||||||
|
log() {
|
||||||
|
if [ $DEBUG -eq 1 ]; then
|
||||||
|
echo "[$(date '+%H:%M:%S')] $1" >&2
|
||||||
|
fi
|
||||||
|
}
|
||||||
|
|
||||||
|
play_sound() {
|
||||||
|
local event="$1"
|
||||||
|
local sound_file="$2"
|
||||||
|
local full_path="$SOUND_DIR/$sound_file"
|
||||||
|
|
||||||
|
if [ ! -f "$full_path" ]; then
|
||||||
|
log "Sound file not found: $full_path"
|
||||||
|
return 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
log "Playing: $event -> $sound_file"
|
||||||
|
|
||||||
|
play -v $VOLUME "$full_path" &
|
||||||
|
|
||||||
|
return 0
|
||||||
|
}
|
||||||
|
|
||||||
|
handle_event() {
|
||||||
|
local raw_event="$1"
|
||||||
|
local event_type=""
|
||||||
|
local event_data=""
|
||||||
|
|
||||||
|
if [[ "$raw_event" == *">>"* ]]; then
|
||||||
|
event_type="${raw_event%%>>*}"
|
||||||
|
event_data="${raw_event#*>>}"
|
||||||
|
else
|
||||||
|
event_type="$raw_event"
|
||||||
|
fi
|
||||||
|
|
||||||
|
log "Received event: $event_type (data: $event_data)"
|
||||||
|
|
||||||
|
case "$event_type" in
|
||||||
|
"workspace"*)
|
||||||
|
if [[ "$event_data" == *,* ]]; then
|
||||||
|
trigger_event "workspace" "$event_data"
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
"activelayout"*)
|
||||||
|
trigger_event "activelayout" "$event_data"
|
||||||
|
;;
|
||||||
|
"fullscreen"*)
|
||||||
|
trigger_event "fullscreen" "$event_data"
|
||||||
|
;;
|
||||||
|
"openwindow"*)
|
||||||
|
trigger_event "openwindow" "$event_data"
|
||||||
|
;;
|
||||||
|
"closewindow"*)
|
||||||
|
trigger_event "closewindow" "$event_data"
|
||||||
|
;;
|
||||||
|
"movewindow"*)
|
||||||
|
if [[ "$event_data" == *,*,* ]]; then
|
||||||
|
trigger_event "movewindow" "$event_data"
|
||||||
|
fi
|
||||||
|
;;
|
||||||
|
"changefloating"*)
|
||||||
|
trigger_event "changefloatingmode" "$event_data"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
log "Unknown event: $event_type"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
trigger_event() {
|
||||||
|
local event="$1"
|
||||||
|
local data="$2"
|
||||||
|
|
||||||
|
if [ "${EVENT_ENABLED[$event]:-0}" -ne 1 ]; then
|
||||||
|
log "Event $event is disabled"
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
|
||||||
|
local sound_file="${SOUND_MAP[$event]}"
|
||||||
|
|
||||||
|
if [ -z "$sound_file" ]; then
|
||||||
|
log "No sound mapped for event: $event"
|
||||||
|
return
|
||||||
|
fi
|
||||||
|
|
||||||
|
if [ "$event" = "changefloatingmode" ]; then
|
||||||
|
local state="${data#*,}"
|
||||||
|
if [ "$state" -eq 1 ]; then
|
||||||
|
sound_file="float.wav"
|
||||||
|
else
|
||||||
|
sound_file="tile.wav"
|
||||||
|
fi
|
||||||
|
fi
|
||||||
|
|
||||||
|
play_sound "$event" "$sound_file"
|
||||||
|
}
|
||||||
|
|
||||||
|
echo "Sound directory: $SOUND_DIR"
|
||||||
|
echo "Enabled events:"
|
||||||
|
for event in "${!EVENT_ENABLED[@]}"; do
|
||||||
|
if [ "${EVENT_ENABLED[$event]}" -eq 1 ]; then
|
||||||
|
echo " - $event: ${SOUND_MAP[$event]}"
|
||||||
|
fi
|
||||||
|
done
|
||||||
|
|
||||||
|
socat - "UNIX-CONNECT:$XDG_RUNTIME_DIR/hypr/$HYPRLAND_INSTANCE_SIGNATURE/.socket2.sock" | \
|
||||||
|
while read -r line; do
|
||||||
|
handle_event "$line"
|
||||||
|
done
|
||||||
BIN
hypr/sound/add.wav
Normal file
BIN
hypr/sound/add.wav
Normal file
Binary file not shown.
BIN
hypr/sound/change_workspace.wav
Normal file
BIN
hypr/sound/change_workspace.wav
Normal file
Binary file not shown.
BIN
hypr/sound/close_2.wav
Normal file
BIN
hypr/sound/close_2.wav
Normal file
Binary file not shown.
BIN
hypr/sound/dmenu.wav
Normal file
BIN
hypr/sound/dmenu.wav
Normal file
Binary file not shown.
BIN
hypr/sound/float.wav
Normal file
BIN
hypr/sound/float.wav
Normal file
Binary file not shown.
BIN
hypr/sound/fullscreen.wav
Normal file
BIN
hypr/sound/fullscreen.wav
Normal file
Binary file not shown.
BIN
hypr/sound/futuristic-click.mp3
Normal file
BIN
hypr/sound/futuristic-click.mp3
Normal file
Binary file not shown.
BIN
hypr/sound/futuristic-click.wav
Normal file
BIN
hypr/sound/futuristic-click.wav
Normal file
Binary file not shown.
BIN
hypr/sound/login.ogg
Normal file
BIN
hypr/sound/login.ogg
Normal file
Binary file not shown.
BIN
hypr/sound/menu_close.wav
Normal file
BIN
hypr/sound/menu_close.wav
Normal file
Binary file not shown.
BIN
hypr/sound/menu_open.wav
Normal file
BIN
hypr/sound/menu_open.wav
Normal file
Binary file not shown.
BIN
hypr/sound/open.mp3
Normal file
BIN
hypr/sound/open.mp3
Normal file
Binary file not shown.
BIN
hypr/sound/popup.wav
Normal file
BIN
hypr/sound/popup.wav
Normal file
Binary file not shown.
BIN
hypr/sound/remove.wav
Normal file
BIN
hypr/sound/remove.wav
Normal file
Binary file not shown.
BIN
hypr/sound/screenshot_notif.wav
Normal file
BIN
hypr/sound/screenshot_notif.wav
Normal file
Binary file not shown.
BIN
hypr/sound/tile.wav
Normal file
BIN
hypr/sound/tile.wav
Normal file
Binary file not shown.
BIN
hypr/sound/volume_notif.wav
Normal file
BIN
hypr/sound/volume_notif.wav
Normal file
Binary file not shown.
@@ -55,7 +55,7 @@ state_file "~/.mpd/state"
|
|||||||
# The location of the sticker database. This is a database which
|
# The location of the sticker database. This is a database which
|
||||||
# manages dynamic information attached to songs.
|
# manages dynamic information attached to songs.
|
||||||
#
|
#
|
||||||
#sticker_file "~/.mpd/sticker.sql"
|
sticker_file "~/.mpd/sticker.sql"
|
||||||
#
|
#
|
||||||
###############################################################################
|
###############################################################################
|
||||||
|
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
return {
|
return {
|
||||||
"3rd/image.nvim",
|
"3rd/image.nvim",
|
||||||
event = 'BufEnter',
|
-- event = 'BufEnter',
|
||||||
build = false, -- so that it doesn't build the rock https://github.com/3rd/image.nvim/issues/91#issuecomment-2453430239
|
build = false, -- so that it doesn't build the rock https://github.com/3rd/image.nvim/issues/91#issuecomment-2453430239
|
||||||
config = function()
|
config = function()
|
||||||
require("image").setup({
|
require("image").setup({
|
||||||
|
|||||||
@@ -1,6 +1,7 @@
|
|||||||
return {
|
return {
|
||||||
{
|
{
|
||||||
"iamcco/markdown-preview.nvim",
|
"iamcco/markdown-preview.nvim",
|
||||||
|
event = 'BufEnter',
|
||||||
cmd = { "MarkdownPreviewToggle", "MarkdownPreview", "MarkdownPreviewStop" },
|
cmd = { "MarkdownPreviewToggle", "MarkdownPreview", "MarkdownPreviewStop" },
|
||||||
build = "cd app && npm install",
|
build = "cd app && npm install",
|
||||||
init = function()
|
init = function()
|
||||||
|
|||||||
@@ -3,7 +3,6 @@
|
|||||||
#![enable(unwrap_variant_newtypes)]
|
#![enable(unwrap_variant_newtypes)]
|
||||||
(
|
(
|
||||||
address: "127.0.0.1:6600",
|
address: "127.0.0.1:6600",
|
||||||
password: "kapuchinamusica",
|
|
||||||
theme: "kolinux",
|
theme: "kolinux",
|
||||||
cache_dir: None,
|
cache_dir: None,
|
||||||
on_song_change: None,
|
on_song_change: None,
|
||||||
@@ -65,7 +64,9 @@
|
|||||||
"<C-l>": PaneRight,
|
"<C-l>": PaneRight,
|
||||||
"<C-u>": UpHalf,
|
"<C-u>": UpHalf,
|
||||||
"N": PreviousResult,
|
"N": PreviousResult,
|
||||||
"<Space>": Add,
|
"<Space>": AddOptions(kind: Action(all: false, autoplay: None, position: EndOfQueue)),
|
||||||
|
"<CR>": AddOptions(kind: Action(all: false, autoplay: Hovered, position: EndOfQueue)),
|
||||||
|
"<S-CR>": Confirm,
|
||||||
"<C-Space>": AddAll,
|
"<C-Space>": AddAll,
|
||||||
"r": Rename,
|
"r": Rename,
|
||||||
"n": NextResult,
|
"n": NextResult,
|
||||||
@@ -73,7 +74,6 @@
|
|||||||
"m": Select,
|
"m": Select,
|
||||||
"M": InvertSelection,
|
"M": InvertSelection,
|
||||||
"G": Bottom,
|
"G": Bottom,
|
||||||
"<CR>": Confirm,
|
|
||||||
"i": FocusInput,
|
"i": FocusInput,
|
||||||
"J": MoveDown,
|
"J": MoveDown,
|
||||||
"<C-d>": DownHalf,
|
"<C-d>": DownHalf,
|
||||||
@@ -144,6 +144,7 @@
|
|||||||
autosens: true, // default true
|
autosens: true, // default true
|
||||||
sensitivity: 100, // default 100
|
sensitivity: 100, // default 100
|
||||||
bar_width: 1,
|
bar_width: 1,
|
||||||
|
channels: 2,
|
||||||
bar_spacing: 0,
|
bar_spacing: 0,
|
||||||
lower_cutoff_freq: 50, // not passed to cava if not provided
|
lower_cutoff_freq: 50, // not passed to cava if not provided
|
||||||
higher_cutoff_freq: 10000, // not passed to cava if not provided
|
higher_cutoff_freq: 10000, // not passed to cava if not provided
|
||||||
|
|||||||
@@ -224,10 +224,12 @@ error-message {
|
|||||||
}
|
}
|
||||||
|
|
||||||
configuration {
|
configuration {
|
||||||
kb-mode-next: "Shift+Right,Control+Tab,L";
|
kb-row-left: "H";
|
||||||
kb-mode-previous: "Shift+Left,H";
|
kb-row-right: "L";
|
||||||
kb-page-prev: "K";
|
kb-mode-next: "Shift+Right,Control+Tab,N";
|
||||||
kb-page-next: "J";
|
kb-mode-previous: "Shift+Left,M";
|
||||||
|
kb-row-up: "K,Up";
|
||||||
|
kb-row-down: "J,Down";
|
||||||
me-select-entry: "";
|
me-select-entry: "";
|
||||||
me-accept-entry: "!MousePrimary";
|
me-accept-entry: "!MousePrimary";
|
||||||
kb-cancel: "MousePrimary,Escape";
|
kb-cancel: "MousePrimary,Escape";
|
||||||
|
|||||||
@@ -100,10 +100,13 @@ element-text, element-icon {
|
|||||||
}
|
}
|
||||||
|
|
||||||
configuration {
|
configuration {
|
||||||
kb-row-left: "h,H";
|
kb-move-char-back: "";
|
||||||
kb-row-right: "l,L";
|
kb-move-char-forward: "";
|
||||||
kb-row-down: "j,J";
|
|
||||||
kb-row-up: "k,K";
|
kb-row-left: "h,H,Left";
|
||||||
|
kb-row-down: "j,J,Down";
|
||||||
|
kb-row-up: "k,K,Up";
|
||||||
|
kb-row-right: "l,L,Right";
|
||||||
me-select-entry: "";
|
me-select-entry: "";
|
||||||
me-accept-entry: "!MousePrimary";
|
me-accept-entry: "!MousePrimary";
|
||||||
kb-cancel: "MousePrimary,Escape";
|
kb-cancel: "MousePrimary,Escape";
|
||||||
|
|||||||
@@ -101,10 +101,13 @@ element-text, element-icon {
|
|||||||
}
|
}
|
||||||
|
|
||||||
configuration {
|
configuration {
|
||||||
kb-row-left: "h,H";
|
kb-move-char-back: "";
|
||||||
kb-row-down: "j,J";
|
kb-move-char-forward: "";
|
||||||
kb-row-up: "k,K";
|
|
||||||
kb-row-right: "l,L";
|
kb-row-left: "h,H,Left";
|
||||||
|
kb-row-down: "j,J,Down";
|
||||||
|
kb-row-up: "k,K,Up";
|
||||||
|
kb-row-right: "l,L,Right";
|
||||||
me-select-entry: "";
|
me-select-entry: "";
|
||||||
me-accept-entry: "!MousePrimary";
|
me-accept-entry: "!MousePrimary";
|
||||||
kb-cancel: "MousePrimary,Escape";
|
kb-cancel: "MousePrimary,Escape";
|
||||||
|
|||||||
@@ -128,10 +128,13 @@ element-text, element-icon {
|
|||||||
}
|
}
|
||||||
|
|
||||||
configuration {
|
configuration {
|
||||||
kb-row-left: "h,H";
|
kb-move-char-back: "";
|
||||||
kb-row-down: "j,J";
|
kb-move-char-forward: "";
|
||||||
kb-row-up: "k,K";
|
|
||||||
kb-row-right: "l,L";
|
kb-row-left: "h,H,Left";
|
||||||
|
kb-row-down: "j,J,Down";
|
||||||
|
kb-row-up: "k,K,Up";
|
||||||
|
kb-row-right: "l,L,Right";
|
||||||
me-select-entry: "";
|
me-select-entry: "";
|
||||||
me-accept-entry: "!MousePrimary";
|
me-accept-entry: "!MousePrimary";
|
||||||
kb-cancel: "MousePrimary,Escape";
|
kb-cancel: "MousePrimary,Escape";
|
||||||
|
|||||||
@@ -27,15 +27,27 @@
|
|||||||
"keyboard-shortcuts": true,
|
"keyboard-shortcuts": true,
|
||||||
"notification-grouping": false,
|
"notification-grouping": false,
|
||||||
"image-visibility": "when-available",
|
"image-visibility": "when-available",
|
||||||
|
"show-per-app-icon": true,
|
||||||
"transition-time": 100,
|
"transition-time": 100,
|
||||||
"hide-on-clear": false,
|
"hide-on-clear": false,
|
||||||
"hide-on-action": true,
|
"hide-on-action": true,
|
||||||
"text-empty": "No nothing",
|
"text-empty": "No disturbances",
|
||||||
"script-fail-notify": true,
|
"script-fail-notify": true,
|
||||||
"scripts": {
|
"scripts": {
|
||||||
"notification-sound": {
|
"notification-sound-low": {
|
||||||
"exec": "sh $HOME/.config/swaync/scripts/sound.sh",
|
"exec": "sh $HOME/.config/swaync/scripts/sound.sh low",
|
||||||
"app-name": "^(?!.*AyuGram).*$"
|
"app-name": "^(?!.*AyuGram).*$",
|
||||||
|
"urgency": "Low"
|
||||||
|
},
|
||||||
|
"notification-sound-normal": {
|
||||||
|
"exec": "sh $HOME/.config/swaync/scripts/sound.sh normal",
|
||||||
|
"app-name": "^(?!.*AyuGram).*$",
|
||||||
|
"urgency": "Normal"
|
||||||
|
},
|
||||||
|
"notification-sound-critical": {
|
||||||
|
"exec": "sh $HOME/.config/swaync/scripts/sound.sh critical",
|
||||||
|
"app-name": "^(?!.*AyuGram).*$",
|
||||||
|
"urgency": "Critical"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"notification-visibility": {
|
"notification-visibility": {
|
||||||
@@ -48,8 +60,6 @@
|
|||||||
"widgets": [
|
"widgets": [
|
||||||
"menubar",
|
"menubar",
|
||||||
"buttons-grid",
|
"buttons-grid",
|
||||||
"volume",
|
|
||||||
"slider#brightness",
|
|
||||||
"inhibitors",
|
"inhibitors",
|
||||||
"title",
|
"title",
|
||||||
"notifications",
|
"notifications",
|
||||||
|
|||||||
@@ -5,29 +5,42 @@ if [ $(swaync-client --get-dnd) == "true" ]; then
|
|||||||
exit 0
|
exit 0
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Directory containing your notification sounds
|
SOUND_LOW_DIR="$HOME/.config/swaync/scripts/sounds/low"
|
||||||
SOUND_DIR="$HOME/.config/swaync/scripts/sounds"
|
SOUND_NORMAL_DIR="$HOME/.config/swaync/scripts/sounds/normal"
|
||||||
|
SOUND_CRITICAL_DIR="$HOME/.config/swaync/scripts/sounds/critical"
|
||||||
|
|
||||||
|
case $1 in
|
||||||
|
low)
|
||||||
|
DIR=$SOUND_LOW_DIR
|
||||||
|
;;
|
||||||
|
normal)
|
||||||
|
DIR=$SOUND_NORMAL_DIR
|
||||||
|
;;
|
||||||
|
critical)
|
||||||
|
DIR=$SOUND_CRITICAL_DIR
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
echo "Unknown urgency level '$1'"
|
||||||
|
exit 1
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
|
||||||
# Enable nullglob to prevent literal interpretation when no files match
|
# Enable nullglob to prevent literal interpretation when no files match
|
||||||
shopt -s nullglob
|
shopt -s nullglob
|
||||||
|
|
||||||
# Get a list of audio files in the directory (simpler approach)
|
|
||||||
SOUND_FILES=()
|
SOUND_FILES=()
|
||||||
for ext in wav mp3 ogg flac; do
|
for ext in wav mp3 ogg flac; do
|
||||||
SOUND_FILES+=("$SOUND_DIR"/*."$ext")
|
SOUND_FILES+=("$DIR"/*."$ext")
|
||||||
done
|
done
|
||||||
|
|
||||||
# Check if any sound files exist
|
|
||||||
if [ ${#SOUND_FILES[@]} -eq 0 ]; then
|
if [ ${#SOUND_FILES[@]} -eq 0 ]; then
|
||||||
echo "No sound files found in $SOUND_DIR"
|
echo "No sound files found in $SOUND_NORMAL_DIR"
|
||||||
exit 0 # Exit with success so notifications still work
|
exit 0
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Select a random sound file
|
|
||||||
RANDOM_INDEX=$((RANDOM % ${#SOUND_FILES[@]}))
|
RANDOM_INDEX=$((RANDOM % ${#SOUND_FILES[@]}))
|
||||||
RANDOM_SOUND="${SOUND_FILES[$RANDOM_INDEX]}"
|
RANDOM_SOUND="${SOUND_FILES[$RANDOM_INDEX]}"
|
||||||
|
|
||||||
# Play the random sound
|
|
||||||
play -v 0.5 "$RANDOM_SOUND" 2>/dev/null || {
|
play -v 0.5 "$RANDOM_SOUND" 2>/dev/null || {
|
||||||
echo "Failed to play $RANDOM_SOUND"
|
echo "Failed to play $RANDOM_SOUND"
|
||||||
}
|
}
|
||||||
|
|||||||
BIN
swaync/scripts/sounds/critical/sting_instruction3.mp3
Normal file
BIN
swaync/scripts/sounds/critical/sting_instruction3.mp3
Normal file
Binary file not shown.
BIN
swaync/scripts/sounds/critical/sting_instruction4.mp3
Normal file
BIN
swaync/scripts/sounds/critical/sting_instruction4.mp3
Normal file
Binary file not shown.
BIN
swaync/scripts/sounds/low/pc_granted.mp3
Normal file
BIN
swaync/scripts/sounds/low/pc_granted.mp3
Normal file
Binary file not shown.
@@ -20,6 +20,8 @@
|
|||||||
--button-top: #505050;
|
--button-top: #505050;
|
||||||
--button-on-top: #CE5268;
|
--button-on-top: #CE5268;
|
||||||
--button-off: #2e2d31;
|
--button-off: #2e2d31;
|
||||||
|
|
||||||
|
--accent: #E83C82;
|
||||||
}
|
}
|
||||||
|
|
||||||
* {
|
* {
|
||||||
@@ -66,12 +68,12 @@ button:hover {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.notification-row .notification-background {
|
.notification-row .notification-background {
|
||||||
padding: 6px 12px;
|
padding: 6px 15px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.notification-row .notification-background .notification {
|
.notification-row .notification-background .notification {
|
||||||
/* The actual notification */
|
/* The actual notification */
|
||||||
border-radius: 12px;
|
border-radius: 15px;
|
||||||
border: 1px solid var(--noti-border-color);
|
border: 1px solid var(--noti-border-color);
|
||||||
padding: 0;
|
padding: 0;
|
||||||
transition: background 0.15s ease-in-out;
|
transition: background 0.15s ease-in-out;
|
||||||
@@ -88,18 +90,35 @@ button:hover {
|
|||||||
|
|
||||||
.notification-row .notification-background .notification.critical {
|
.notification-row .notification-background .notification.critical {
|
||||||
/* Critical Priority Notification */
|
/* Critical Priority Notification */
|
||||||
|
border-color: var(--accent);
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Critical Priority Notification */
|
||||||
|
.notification-row .notification-background .notification.critical .notification-default-action .notification-content .text-box .summary {
|
||||||
|
color: var(--accent);
|
||||||
|
text-shadow: 0px 0px 8px var(--accent);
|
||||||
|
}
|
||||||
|
|
||||||
|
.notification-row .notification-background .notification.critical .notification-default-action .notification-content .text-box .summary {
|
||||||
|
color: var(--accent);
|
||||||
|
text-shadow: 0px 0px 8px var(--accent);
|
||||||
|
}
|
||||||
|
|
||||||
|
.notification-row .notification-background .notification.critical .notification-default-action .notification-content .text-box .body {
|
||||||
|
color: var(--accent);
|
||||||
|
text-shadow: 0px 0px 8px var(--accent);
|
||||||
}
|
}
|
||||||
|
|
||||||
.notification-row .notification-background .notification .notification-default-action {
|
.notification-row .notification-background .notification .notification-default-action {
|
||||||
/* The large action that also displays the notification summary and body */
|
/* The large action that also displays the notification summary and body */
|
||||||
padding: 4px;
|
padding: 10px;
|
||||||
margin: 0;
|
margin: 0;
|
||||||
box-shadow: none;
|
box-shadow: none;
|
||||||
background: transparent;
|
background: transparent;
|
||||||
border: none;
|
border: none;
|
||||||
color: var(--text-color);
|
color: var(--text-color);
|
||||||
transition: background 0.15s ease-in-out;
|
transition: background 0.15s ease-in-out;
|
||||||
border-radius: 12px;
|
border-radius: 15px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.notification-row:focus .notification-background .notification .notification-default-action {
|
.notification-row:focus .notification-background .notification .notification-default-action {
|
||||||
@@ -118,7 +137,7 @@ button:hover {
|
|||||||
|
|
||||||
.notification-row .notification-background .notification .notification-default-action .notification-content {
|
.notification-row .notification-background .notification .notification-default-action .notification-content {
|
||||||
background: transparent;
|
background: transparent;
|
||||||
border-radius: 12px;
|
border-radius: 15px;
|
||||||
padding: 0;
|
padding: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -194,14 +213,14 @@ button:hover {
|
|||||||
color: var(--text-color);
|
color: var(--text-color);
|
||||||
caret-color: var(--text-color);
|
caret-color: var(--text-color);
|
||||||
border: 1px solid var(--noti-border-color);
|
border: 1px solid var(--noti-border-color);
|
||||||
border-radius: 12px;
|
border-radius: 15px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.notification-row .notification-background .notification .notification-default-action .notification-content .inline-reply .inline-reply-button {
|
.notification-row .notification-background .notification .notification-default-action .notification-content .inline-reply .inline-reply-button {
|
||||||
margin-left: 4px;
|
margin-left: 4px;
|
||||||
background: rgba(var(--noti-bg), var(--noti-bg-alpha));
|
background: rgba(var(--noti-bg), var(--noti-bg-alpha));
|
||||||
border: 1px solid var(--noti-border-color);
|
border: 1px solid var(--noti-border-color);
|
||||||
border-radius: 12px;
|
border-radius: 15px;
|
||||||
color: var(--text-color);
|
color: var(--text-color);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -218,8 +237,8 @@ button:hover {
|
|||||||
|
|
||||||
.notification-row .notification-background .notification .notification-alt-actions {
|
.notification-row .notification-background .notification .notification-alt-actions {
|
||||||
background: none;
|
background: none;
|
||||||
border-bottom-left-radius: 12px;
|
border-bottom-left-radius: 15px;
|
||||||
border-bottom-right-radius: 12px;
|
border-bottom-right-radius: 15px;
|
||||||
padding: 4px;
|
padding: 4px;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -230,7 +249,7 @@ button:hover {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.notification-row .notification-background .notification .notification-action > button {
|
.notification-row .notification-background .notification .notification-action > button {
|
||||||
border-radius: 12px;
|
border-radius: 15px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.notification-group {
|
.notification-group {
|
||||||
@@ -256,7 +275,7 @@ button:hover {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.notification-group .notification-group-close-button .close-button {
|
.notification-group .notification-group-close-button .close-button {
|
||||||
margin: 12px 20px;
|
margin: 15px 20px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.notification-group .notification-group-buttons, .notification-group .notification-group-headers {
|
.notification-group .notification-group-buttons, .notification-group .notification-group-headers {
|
||||||
@@ -363,7 +382,7 @@ button:hover {
|
|||||||
|
|
||||||
.widget-title > button {
|
.widget-title > button {
|
||||||
margin: 0px;
|
margin: 0px;
|
||||||
border-radius: 12px;
|
border-radius: 15px;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* DND widget */
|
/* DND widget */
|
||||||
@@ -374,7 +393,7 @@ button:hover {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.widget-dnd switch {
|
.widget-dnd switch {
|
||||||
border-radius: 12px;
|
border-radius: 15px;
|
||||||
margin: 8px;
|
margin: 8px;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -384,7 +403,7 @@ button:hover {
|
|||||||
|
|
||||||
|
|
||||||
.widget-dnd switch slider {
|
.widget-dnd switch slider {
|
||||||
border-radius: 12px;
|
border-radius: 15px;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Label widget */
|
/* Label widget */
|
||||||
@@ -410,7 +429,7 @@ button:hover {
|
|||||||
|
|
||||||
.widget-mpris .widget-mpris-player {
|
.widget-mpris .widget-mpris-player {
|
||||||
margin: 16px 20px;
|
margin: 16px 20px;
|
||||||
border-radius: 12px;
|
border-radius: 15px;
|
||||||
box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.75);
|
box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.75);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -429,7 +448,7 @@ button:hover {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.widget-mpris .widget-mpris-player .mpris-overlay .widget-mpris-album-art {
|
.widget-mpris .widget-mpris-player .mpris-overlay .widget-mpris-album-art {
|
||||||
border-radius: 12px;
|
border-radius: 15px;
|
||||||
box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.75);
|
box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.75);
|
||||||
-gtk-icon-size: var(--mpris-album-art-icon-size);
|
-gtk-icon-size: var(--mpris-album-art-icon-size);
|
||||||
}
|
}
|
||||||
@@ -464,11 +483,11 @@ button:hover {
|
|||||||
min-height: 50px;
|
min-height: 50px;
|
||||||
padding: 8px;
|
padding: 8px;
|
||||||
margin: 8px;
|
margin: 8px;
|
||||||
border-radius: 12px;
|
border-radius: 15px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.widget-buttons-grid flowboxchild > button {
|
.widget-buttons-grid flowboxchild > button {
|
||||||
border-radius: 12px;
|
border-radius: 15px;
|
||||||
height: auto;
|
height: auto;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -513,7 +532,7 @@ button:hover {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.widget-menubar > .menu-button-bar > .widget-menubar-container button {
|
.widget-menubar > .menu-button-bar > .widget-menubar-container button {
|
||||||
border-radius: 12px;
|
border-radius: 15px;
|
||||||
padding: 0px 15px;
|
padding: 0px 15px;
|
||||||
margin: 0 4px;
|
margin: 0 4px;
|
||||||
background-color: var(--noti-bg-selection);
|
background-color: var(--noti-bg-selection);
|
||||||
@@ -536,7 +555,7 @@ button:hover {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.widget-menubar > revealer button {
|
.widget-menubar > revealer button {
|
||||||
border-radius: 12px;
|
border-radius: 15px;
|
||||||
margin: 8px;
|
margin: 8px;
|
||||||
margin-top: 0;
|
margin-top: 0;
|
||||||
}
|
}
|
||||||
@@ -553,7 +572,7 @@ button:hover {
|
|||||||
.widget-volume {
|
.widget-volume {
|
||||||
padding: 8px;
|
padding: 8px;
|
||||||
margin: 8px;
|
margin: 8px;
|
||||||
border-radius: 12px;
|
border-radius: 15px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.widget-volume label:first-child {
|
.widget-volume label:first-child {
|
||||||
@@ -573,14 +592,14 @@ button:hover {
|
|||||||
background-color: var(--noti-bg-alt);
|
background-color: var(--noti-bg-alt);
|
||||||
padding: 4px 8px 8px 8px;
|
padding: 4px 8px 8px 8px;
|
||||||
margin: 0px 8px 8px 8px;
|
margin: 0px 8px 8px 8px;
|
||||||
border-radius: 12px;
|
border-radius: 15px;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Slider widget */
|
/* Slider widget */
|
||||||
.widget-slider {
|
.widget-slider {
|
||||||
padding: 8px;
|
padding: 8px;
|
||||||
margin: 8px;
|
margin: 8px;
|
||||||
border-radius: 12px;
|
border-radius: 15px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.widget-slider trough highlight {
|
.widget-slider trough highlight {
|
||||||
@@ -595,7 +614,7 @@ button:hover {
|
|||||||
.widget-backlight {
|
.widget-backlight {
|
||||||
padding: 8px;
|
padding: 8px;
|
||||||
margin: 8px;
|
margin: 8px;
|
||||||
border-radius: 12px;
|
border-radius: 15px;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Inhibitors widget */
|
/* Inhibitors widget */
|
||||||
@@ -606,7 +625,7 @@ button:hover {
|
|||||||
|
|
||||||
.widget-inhibitors > button {
|
.widget-inhibitors > button {
|
||||||
margin: 8px;
|
margin: 8px;
|
||||||
border-radius: 12px;
|
border-radius: 15px;
|
||||||
}
|
}
|
||||||
|
|
||||||
.notification-row:parent {
|
.notification-row:parent {
|
||||||
|
|||||||
@@ -13,19 +13,20 @@
|
|||||||
"spacing": 0,
|
"spacing": 0,
|
||||||
"reload_style_on_change": true,
|
"reload_style_on_change": true,
|
||||||
"modules-left": [
|
"modules-left": [
|
||||||
"tray",
|
"tray"
|
||||||
"custom/pomodoro"
|
// "custom/pomodoro"
|
||||||
],
|
],
|
||||||
"modules-center": [
|
"modules-center": [
|
||||||
"wlr/taskbar",
|
"wlr/taskbar",
|
||||||
"custom/launcher"
|
"custom/launcher"
|
||||||
],
|
],
|
||||||
"modules-right": [
|
"modules-right": [
|
||||||
|
"battery",
|
||||||
"cpu",
|
"cpu",
|
||||||
"memory",
|
"memory",
|
||||||
"temperature"
|
"temperature"
|
||||||
],
|
],
|
||||||
"custom/separator_invisible": {
|
"custom/separator": {
|
||||||
"format": " ",
|
"format": " ",
|
||||||
"interval": "once",
|
"interval": "once",
|
||||||
"tooltip": false
|
"tooltip": false
|
||||||
@@ -53,18 +54,23 @@
|
|||||||
"on-click": "activate",
|
"on-click": "activate",
|
||||||
"on-click-middle": "close",
|
"on-click-middle": "close",
|
||||||
"active-first": false,
|
"active-first": false,
|
||||||
|
"sort-by-app-id": true,
|
||||||
"ignore-list": [
|
"ignore-list": [
|
||||||
"Alacritty"
|
"Alacritty"
|
||||||
],
|
],
|
||||||
"app_ids-mapping": {
|
"app_ids-mapping": {
|
||||||
"firefoxdeveloperedition": "firefox-developer-edition"
|
"zen": "aaa",
|
||||||
|
"vesktop": "zzz"
|
||||||
},
|
},
|
||||||
"rewrite": {
|
"rewrite": {
|
||||||
"Firefox Web Browser": "Firefox",
|
|
||||||
"Foot Server": "Terminal",
|
|
||||||
".*(steam_app_[0-9]+).*": "Game"
|
".*(steam_app_[0-9]+).*": "Game"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"battery": {
|
||||||
|
"interval": 5,
|
||||||
|
"format": "{power:.0f}W |",
|
||||||
|
"on-click": "sh -c 'swaync-client -cp & ~/.config/rofi/scripts/dmenu_powermodemenu.sh'"
|
||||||
|
},
|
||||||
"cpu": {
|
"cpu": {
|
||||||
"format": "{icon}",
|
"format": "{icon}",
|
||||||
"tooltip": true,
|
"tooltip": true,
|
||||||
|
|||||||
@@ -8,6 +8,7 @@
|
|||||||
"margin-left": 5,
|
"margin-left": 5,
|
||||||
"margin-right": 5,
|
"margin-right": 5,
|
||||||
"margin-top": 5,
|
"margin-top": 5,
|
||||||
|
"layer": "top",
|
||||||
"spacing": 0,
|
"spacing": 0,
|
||||||
"reload_style_on_change": true,
|
"reload_style_on_change": true,
|
||||||
"modules-left": [
|
"modules-left": [
|
||||||
@@ -34,16 +35,29 @@
|
|||||||
"hyprland/workspaces": {
|
"hyprland/workspaces": {
|
||||||
"disable-scroll": true,
|
"disable-scroll": true,
|
||||||
"all-outputs": false,
|
"all-outputs": false,
|
||||||
"active-only": true,
|
"active-only": false,
|
||||||
"warp-on-scroll": false,
|
"warp-on-scroll": false,
|
||||||
|
"move-to-monitor": true,
|
||||||
"persistent-workspaces": {
|
"persistent-workspaces": {
|
||||||
"eDP-1": [1,2,3,4,5,6,7,8,9],
|
"1": [],
|
||||||
"HDMI-A-1": [10,11,12],
|
"2": [],
|
||||||
|
"3": [],
|
||||||
|
"4": [],
|
||||||
|
"5": [],
|
||||||
|
"6": [],
|
||||||
|
"7": [],
|
||||||
|
"8": [],
|
||||||
|
"9": [],
|
||||||
|
"10": [],
|
||||||
|
"11": [],
|
||||||
|
"12": [],
|
||||||
|
// "eDP-1": [1,2,3,4,5,6,7,8,9],
|
||||||
|
// "HDMI-A-1": [10,11,12],
|
||||||
"IGNORED": [13,14]
|
"IGNORED": [13,14]
|
||||||
},
|
},
|
||||||
"ignore-workspaces": [
|
"ignore-workspaces": [
|
||||||
"*13",
|
"13",
|
||||||
"*14"
|
"14"
|
||||||
],
|
],
|
||||||
"format": "{icon}",
|
"format": "{icon}",
|
||||||
"format-icons": {
|
"format-icons": {
|
||||||
@@ -51,19 +65,19 @@
|
|||||||
"2": "",
|
"2": "",
|
||||||
"3": "",
|
"3": "",
|
||||||
"4": "",
|
"4": "",
|
||||||
"5": "",
|
"5": "",
|
||||||
"6": "",
|
"6": "",
|
||||||
"7": "",
|
"7": "",
|
||||||
"8": "",
|
"8": "",
|
||||||
"9": "",
|
"9": "",
|
||||||
"10": "",
|
"10": "",
|
||||||
"11": "",
|
"11": "",
|
||||||
"12": "",
|
"12": "",
|
||||||
"default": ""
|
"default": ""
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"mpd": {
|
"mpd": {
|
||||||
"password": "kapuchinamusica",
|
// "password": "kapuchinamusica",
|
||||||
"artist-len": 30,
|
"artist-len": 30,
|
||||||
"title-len": 50,
|
"title-len": 50,
|
||||||
"unknown-tag": "n/a",
|
"unknown-tag": "n/a",
|
||||||
@@ -76,10 +90,25 @@
|
|||||||
"paused": "",
|
"paused": "",
|
||||||
"playing": ""
|
"playing": ""
|
||||||
},
|
},
|
||||||
"tooltip-format": "MPD (connected)",
|
"tooltip-format": "MPD (connected) | MMB - toggle, LMB/RMB - next/prev, scroll - volume",
|
||||||
"tooltip-format-disconnected": "MPD (disconnected)",
|
"tooltip-format-disconnected": "MPD (disconnected) | MMB - toggle, LMB/RMB - next/prev, scroll - volume",
|
||||||
"format-stopped": " Stopping player...",
|
"format-stopped": " Stopping player...",
|
||||||
"on-click": "mpc toggle --password kapuchinamusica"
|
"on-click-right": "mpc next",
|
||||||
|
"on-click-middle": "mpc prev",
|
||||||
|
"on-click": "mpc toggle",
|
||||||
|
"on-scroll-down": "mpc volume +1",
|
||||||
|
"on-scroll-up": "mpc volume -1"
|
||||||
|
},
|
||||||
|
"mpris": {
|
||||||
|
"format": "{player_icon} {dynamic}",
|
||||||
|
"format-paused": "{status_icon} <i>{dynamic}</i>",
|
||||||
|
"dynamic-order": ["artist", "title"],
|
||||||
|
"player-icons": {
|
||||||
|
"default": "▶"
|
||||||
|
},
|
||||||
|
"status-icons": {
|
||||||
|
"paused": "⏸"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"clock": {
|
"clock": {
|
||||||
"timezone": "Europe/Moscow",
|
"timezone": "Europe/Moscow",
|
||||||
|
|||||||
@@ -8,6 +8,9 @@ TOP_STYLE="$DIR/style/style_top.css"
|
|||||||
BOTTOM_CONFIG="$DIR/config_bottom.jsonc"
|
BOTTOM_CONFIG="$DIR/config_bottom.jsonc"
|
||||||
BOTTOM_STYLE="$DIR/style/style_bottom.css"
|
BOTTOM_STYLE="$DIR/style/style_bottom.css"
|
||||||
|
|
||||||
|
DOCK_CONFIG="$DIR/config_dock.jsonc"
|
||||||
|
DOCK_STYLE="$DIR/style/style_dock.css"
|
||||||
|
|
||||||
kill_bars() {
|
kill_bars() {
|
||||||
if pgrep waybar > /dev/null; then
|
if pgrep waybar > /dev/null; then
|
||||||
pkill waybar
|
pkill waybar
|
||||||
@@ -19,6 +22,7 @@ kill_bars() {
|
|||||||
run_bars() {
|
run_bars() {
|
||||||
waybar -c "$TOP_CONFIG" -s "$TOP_STYLE" &
|
waybar -c "$TOP_CONFIG" -s "$TOP_STYLE" &
|
||||||
waybar -c "$BOTTOM_CONFIG" -s "$BOTTOM_STYLE" &
|
waybar -c "$BOTTOM_CONFIG" -s "$BOTTOM_STYLE" &
|
||||||
|
waybar -c "$DOCK_CONFIG" -s "$DOCK_STYLE" &
|
||||||
return 0
|
return 0
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -126,6 +126,13 @@ window#waybar.chromium {
|
|||||||
padding: 0;
|
padding: 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* --------------------------------------------------------------------------
|
||||||
|
BATTERY
|
||||||
|
-------------------------------------------------------------------------- */
|
||||||
|
#battery {
|
||||||
|
padding-right: 0;
|
||||||
|
}
|
||||||
|
|
||||||
/* --------------------------------------------------------------------------
|
/* --------------------------------------------------------------------------
|
||||||
CPU
|
CPU
|
||||||
-------------------------------------------------------------------------- */
|
-------------------------------------------------------------------------- */
|
||||||
@@ -154,7 +161,7 @@ window#waybar.chromium {
|
|||||||
.modules-left, .modules-right {
|
.modules-left, .modules-right {
|
||||||
/* Layout & Box Model */
|
/* Layout & Box Model */
|
||||||
border: 1px solid @border-color;
|
border: 1px solid @border-color;
|
||||||
border-radius: 12px;
|
border-radius: 15px;
|
||||||
|
|
||||||
/* Colors */
|
/* Colors */
|
||||||
background-color: @bg-panel;
|
background-color: @bg-panel;
|
||||||
@@ -166,13 +173,30 @@ window#waybar.chromium {
|
|||||||
}
|
}
|
||||||
|
|
||||||
.modules-center {
|
.modules-center {
|
||||||
background: linear-gradient(to right,
|
background:
|
||||||
|
/* Top border gradient */
|
||||||
|
linear-gradient(to right,
|
||||||
|
transparent 0%,
|
||||||
|
@border-color 25%,
|
||||||
|
@border-color 75%,
|
||||||
|
transparent 100%
|
||||||
|
) 0 0 / 100% 1px no-repeat,
|
||||||
|
|
||||||
|
/* Bottom border gradient */
|
||||||
|
linear-gradient(to right,
|
||||||
|
transparent 0%,
|
||||||
|
@border-color 25%,
|
||||||
|
@border-color 75%,
|
||||||
|
transparent 100%
|
||||||
|
) 0 100% / 100% 1px no-repeat,
|
||||||
|
|
||||||
|
/* Main background */
|
||||||
|
linear-gradient(to right,
|
||||||
alpha(#000000, 0) 0%,
|
alpha(#000000, 0) 0%,
|
||||||
alpha(@bg-panel, 1) 20%,
|
alpha(@bg-panel, 1) 25%,
|
||||||
alpha(@bg-panel, 1) 80%,
|
alpha(@bg-panel, 1) 75%,
|
||||||
alpha(#000000, 0) 100%
|
alpha(#000000, 0) 100%
|
||||||
);
|
);
|
||||||
|
|
||||||
padding: 0 20px;
|
padding: 0 20px;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -234,14 +258,14 @@ window#waybar.chromium {
|
|||||||
}
|
}
|
||||||
|
|
||||||
#taskbar button.active {
|
#taskbar button.active {
|
||||||
background: radial-gradient(circle, alpha(@accent, 1) 0%, alpha(@accent, 1) 30%, rgba(0, 0, 0, 0) 80%, rgba(0, 0, 0, 0) 100%);
|
background: radial-gradient(circle, alpha(@text-primary, 1) 0%, alpha(@text-primary, 1) 30%, rgba(0, 0, 0, 0) 70%, rgba(0, 0, 0, 0) 100%);
|
||||||
transition: color 0.3s, box-shadow 0.3s, background 0.3s;
|
transition: color 0.3s, box-shadow 0.3s, background 0.3s;
|
||||||
}
|
}
|
||||||
|
|
||||||
#taskbar button.active image {
|
#taskbar button.active image {
|
||||||
min-width: 24px;
|
min-width: 24px;
|
||||||
min-height: 24px;
|
min-height: 24px;
|
||||||
padding: 0 5px;
|
/* padding: 0 5px; */
|
||||||
}
|
}
|
||||||
|
|
||||||
/* POMODORO STATES */
|
/* POMODORO STATES */
|
||||||
@@ -280,26 +304,6 @@ window#waybar.chromium {
|
|||||||
color: @text-secondary;
|
color: @text-secondary;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* BATTERY STATES */
|
|
||||||
#battery.charging,
|
|
||||||
#battery.plugged {
|
|
||||||
color: @success;
|
|
||||||
text-shadow: 0px 0px 8px @success;
|
|
||||||
transition: color 0.3s, box-shadow 0.3s, background 0.3s;
|
|
||||||
}
|
|
||||||
|
|
||||||
#battery.warning:not(.charging) {
|
|
||||||
color: @warning;
|
|
||||||
text-shadow: 0px 0px 8px @warning;
|
|
||||||
transition: color 0.3s, box-shadow 0.3s, background 0.3s;
|
|
||||||
}
|
|
||||||
|
|
||||||
#battery.critical:not(.charging) {
|
|
||||||
color: @danger;
|
|
||||||
text-shadow: 0px 0px 8px @danger;
|
|
||||||
transition: color 0.3s, box-shadow 0.3s, background 0.3s;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* CPU && MEMORY STATES */
|
/* CPU && MEMORY STATES */
|
||||||
#cpu.s1, #memory.s1, #temperature.s1 {
|
#cpu.s1, #memory.s1, #temperature.s1 {
|
||||||
color: @text-primary;
|
color: @text-primary;
|
||||||
|
|||||||
@@ -44,6 +44,7 @@ window#waybar.chromium {
|
|||||||
-------------------------------------------------------------------------- */
|
-------------------------------------------------------------------------- */
|
||||||
/* Common styling applied to all modules */
|
/* Common styling applied to all modules */
|
||||||
#mpd,
|
#mpd,
|
||||||
|
#mpris,
|
||||||
#custom-pomodoro,
|
#custom-pomodoro,
|
||||||
#clock,
|
#clock,
|
||||||
#battery,
|
#battery,
|
||||||
@@ -80,6 +81,10 @@ window#waybar.chromium {
|
|||||||
color: @text-secondary;
|
color: @text-secondary;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#workspaces button.empty:not(.hosting-monitor) {
|
||||||
|
color: alpha(@text-secondary, 0.1);
|
||||||
|
}
|
||||||
|
|
||||||
#workspaces button.active.hosting-monitor {
|
#workspaces button.active.hosting-monitor {
|
||||||
color: @accent;
|
color: @accent;
|
||||||
text-shadow: 0px 0px 8px @accent;
|
text-shadow: 0px 0px 8px @accent;
|
||||||
@@ -94,18 +99,30 @@ window#waybar.chromium {
|
|||||||
}
|
}
|
||||||
|
|
||||||
#workspaces button:hover {
|
#workspaces button:hover {
|
||||||
color: @foreground;
|
color: @text-primary;
|
||||||
background-color: transparent;
|
background: none;
|
||||||
text-shadow: 0px 0px 2px rgba(233, 99, 117, 1);
|
box-shadow: none;
|
||||||
|
text-shadow: 0px -2px 3px @text-primary;
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button:not(.hosting-monitor):not(.empty) {
|
||||||
|
color: alpha(@accent, 0.2);
|
||||||
|
}
|
||||||
|
|
||||||
|
#workspaces button.active.hosting-monitor:hover {
|
||||||
|
color: @text-primary;
|
||||||
|
background: none;
|
||||||
|
box-shadow: none;
|
||||||
|
text-shadow: 0px 0px 8px @text-primary;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* --------------------------------------------------------------------------
|
/* --------------------------------------------------------------------------
|
||||||
SIDE PANEL GROUPS
|
SIDE PANEL GROUPS
|
||||||
-------------------------------------------------------------------------- */
|
-------------------------------------------------------------------------- */
|
||||||
#mpd, .modules-center, .modules-right {
|
#mpd, #mpris, .modules-center, .modules-right {
|
||||||
/* Layout & Box Model */
|
/* Layout & Box Model */
|
||||||
border: 1px solid @border-color;
|
border: 1px solid @border-color;
|
||||||
border-radius: 12px;
|
border-radius: 15px;
|
||||||
|
|
||||||
/* Colors */
|
/* Colors */
|
||||||
background-color: @bg-panel;
|
background-color: @bg-panel;
|
||||||
@@ -180,23 +197,24 @@ window#waybar.chromium {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* MPD STATES */
|
/* MPD STATES */
|
||||||
#mpd {
|
#mpd, #mpris {
|
||||||
font-weight: 700;
|
|
||||||
transition: color 2s, background 2s;
|
transition: color 2s, background 2s;
|
||||||
}
|
}
|
||||||
|
|
||||||
#mpd.playing {
|
#mpd.playing, #mpris.playing {
|
||||||
color: @accent;
|
color: @accent;
|
||||||
|
font-weight: 700;
|
||||||
|
/* color: @text-primary; */
|
||||||
}
|
}
|
||||||
|
|
||||||
#mpd.stopped {
|
#mpd.stopped, #mrpis.stopped {
|
||||||
color: transparent;
|
color: transparent;
|
||||||
background: transparent;
|
background: transparent;
|
||||||
border-color: transparent;
|
border-color: transparent;
|
||||||
transition: color 2s, background 2s;
|
transition: color 2s, background 2s;
|
||||||
}
|
}
|
||||||
|
|
||||||
#mpd.paused {
|
#mpd.paused, #mpris.paused {
|
||||||
font-weight: normal;
|
font-weight: normal;
|
||||||
color: @text-secondary;
|
color: @text-secondary;
|
||||||
}
|
}
|
||||||
@@ -226,6 +244,8 @@ window#waybar.chromium {
|
|||||||
-------------------------------------------------------------------------- */
|
-------------------------------------------------------------------------- */
|
||||||
#mpd.playing:hover,
|
#mpd.playing:hover,
|
||||||
#mpd.paused:hover,
|
#mpd.paused:hover,
|
||||||
|
#mpris.playing:hover,
|
||||||
|
#mpris.paused:hover,
|
||||||
#clock:hover,
|
#clock:hover,
|
||||||
#battery:hover,
|
#battery:hover,
|
||||||
#network:hover,
|
#network:hover,
|
||||||
|
|||||||
@@ -10,6 +10,7 @@ alias cl="clear"
|
|||||||
alias pi="source ~/.venv/bin/activate"
|
alias pi="source ~/.venv/bin/activate"
|
||||||
alias pivenv="source ~/.venv312/bin/activate"
|
alias pivenv="source ~/.venv312/bin/activate"
|
||||||
alias nvim="http_proxy='' nvim"
|
alias nvim="http_proxy='' nvim"
|
||||||
|
alias n="nvim"
|
||||||
alias updatew="sudo pacman -Syuw --noconfirm"
|
alias updatew="sudo pacman -Syuw --noconfirm"
|
||||||
alias insta="sudo pacman -S"
|
alias insta="sudo pacman -S"
|
||||||
alias detdom="sudo pacman -Qdtq | sudo pacman -Rns -"
|
alias detdom="sudo pacman -Qdtq | sudo pacman -Rns -"
|
||||||
|
|||||||
2
zsh/misspell.sh
Normal file
2
zsh/misspell.sh
Normal file
@@ -0,0 +1,2 @@
|
|||||||
|
alias hyrpm="hyprpm"
|
||||||
|
alias hyrppm="hyprpm"
|
||||||
Reference in New Issue
Block a user