From fa8c6727cfc97e9e6b89f1e7a7b53e331a7fdb0e Mon Sep 17 00:00:00 2001 From: Hui <752549025@qq.com> Date: Sun, 24 Mar 2024 13:25:38 +0800 Subject: [PATCH] update --- dotfiles/config/hypr/animations.conf | 23 + dotfiles/config/hypr/hyprland.conf | 306 +++------- dotfiles/config/hypr/keybindings.conf | 163 ++++++ dotfiles/config/hypr/monitors.conf | 7 + .../config/hypr/themes/Catppuccin-Latte.conf | 36 ++ .../config/hypr/themes/Catppuccin-Mocha.conf | 36 ++ .../config/hypr/themes/Cyberpunk-Edge.conf | 41 ++ dotfiles/config/hypr/themes/Decay-Green.conf | 36 ++ .../config/hypr/themes/Frosted-Glass.conf | 50 ++ .../config/hypr/themes/Graphite-Mono.conf | 41 ++ .../config/hypr/themes/Gruvbox-Retro.conf | 47 ++ .../config/hypr/themes/Material-Sakura.conf | 41 ++ dotfiles/config/hypr/themes/Rose-Pine.conf | 36 ++ dotfiles/config/hypr/themes/Tokyo-Night.conf | 36 ++ dotfiles/config/hypr/themes/Wall-Dcol.conf | 11 + dotfiles/config/hypr/themes/colors.conf | 0 dotfiles/config/hypr/themes/common.conf | 32 + dotfiles/config/hypr/themes/theme.conf | 36 ++ dotfiles/config/hypr/userprefs.conf | 7 + dotfiles/config/hypr/windowrules.conf | 91 +++ dotfiles/config/kitty/kitty.conf | 18 +- .../config/kitty/themes/Catppuccin-Latte.conf | 80 +++ .../Catppuccin-Mocha.conf} | 24 +- .../config/kitty/themes/Cyberpunk-Edge.conf | 72 +++ dotfiles/config/kitty/themes/Decay-Green.conf | 47 ++ .../config/kitty/themes/Frosted-Glass.conf | 37 ++ .../config/kitty/themes/Graphite-Mono.conf | 72 +++ .../config/kitty/themes/Gruvbox-Retro.conf | 56 ++ .../config/kitty/themes/Material-Sakura.conf | 55 ++ dotfiles/config/kitty/themes/Rose-Pine.conf | 56 ++ dotfiles/config/kitty/themes/Tokyo-Night.conf | 77 +++ dotfiles/config/kitty/themes/Wall-Dcol.conf | 43 ++ dotfiles/config/kitty/themes/theme.conf | 80 +++ dotfiles/config/swaylock/config | 6 +- dotfiles/config/swaylock/config (copy 1) | 50 -- dotfiles/config/waybar/config.ctl | 24 + dotfiles/config/waybar/config.jsonc | 545 ++++++++---------- .../config/waybar/icons/brightness-100.png | Bin 32959 -> 0 bytes .../config/waybar/icons/brightness-20.png | Bin 20950 -> 0 bytes .../config/waybar/icons/brightness-40.png | Bin 23444 -> 0 bytes .../config/waybar/icons/brightness-60.png | Bin 28411 -> 0 bytes .../config/waybar/icons/brightness-80.png | Bin 32409 -> 0 bytes .../config/waybar/icons/microphone-mute.png | Bin 27368 -> 0 bytes dotfiles/config/waybar/icons/microphone.png | Bin 24921 -> 0 bytes dotfiles/config/waybar/icons/volume-high.png | Bin 27993 -> 0 bytes dotfiles/config/waybar/icons/volume-low.png | Bin 22565 -> 0 bytes dotfiles/config/waybar/icons/volume-mid.png | Bin 24989 -> 0 bytes dotfiles/config/waybar/icons/volume-mute.png | Bin 23907 -> 0 bytes dotfiles/config/waybar/mesu-met.jsonc | 25 - .../config/waybar/modules/backlight.jsonc | 10 + dotfiles/config/waybar/modules/battery.jsonc | 14 + .../config/waybar/modules/bluetooth.jsonc | 15 + dotfiles/config/waybar/modules/cliphist.jsonc | 11 + dotfiles/config/waybar/modules/clock.jsonc | 25 + dotfiles/config/waybar/modules/cpu.jsonc | 8 + dotfiles/config/waybar/modules/cpuinfo.jsonc | 10 + dotfiles/config/waybar/modules/footer.jsonc | 47 ++ dotfiles/config/waybar/modules/gpuinfo.jsonc | 41 ++ dotfiles/config/waybar/modules/header.jsonc | 12 + .../waybar/modules/idle_inhibitor.jsonc | 9 + .../config/waybar/modules/keybindhint.jsonc | 6 + dotfiles/config/waybar/modules/language.jsonc | 6 + dotfiles/config/waybar/modules/mediaplayer.py | 183 ++++++ dotfiles/config/waybar/modules/memory.jsonc | 18 + dotfiles/config/waybar/modules/mpris.jsonc | 16 + dotfiles/config/waybar/modules/network.jsonc | 13 + dotfiles/config/waybar/modules/power.jsonc | 10 + .../config/waybar/modules/pulseaudio.jsonc | 34 ++ dotfiles/config/waybar/modules/spotify.jsonc | 15 + dotfiles/config/waybar/modules/style.css | 143 +++++ dotfiles/config/waybar/modules/taskbar.jsonc | 17 + dotfiles/config/waybar/modules/theme.jsonc | 11 + dotfiles/config/waybar/modules/tray.jsonc | 6 + dotfiles/config/waybar/modules/updates.jsonc | 10 + .../config/waybar/modules/wallchange.jsonc | 11 + dotfiles/config/waybar/modules/wbar.jsonc | 11 + dotfiles/config/waybar/modules/window.jsonc | 17 + .../config/waybar/modules/workspaces.jsonc | 10 + dotfiles/config/waybar/scripts/PBPbattery.sh | 21 - dotfiles/config/waybar/scripts/baraction | 40 -- dotfiles/config/waybar/scripts/brightness | 52 -- dotfiles/config/waybar/scripts/keyhint.sh | 2 - dotfiles/config/waybar/scripts/power-menu.sh | 16 - dotfiles/config/waybar/scripts/update-sys | 41 -- dotfiles/config/waybar/scripts/volume | 106 ---- dotfiles/config/waybar/scripts/waybar-wttr.py | 119 ---- dotfiles/config/waybar/scripts/weather.sh | 13 - dotfiles/config/waybar/style.css | 228 +++++--- dotfiles/config/waybar/style/style-dark.css | 108 ---- dotfiles/config/waybar/style/style.css | 109 ---- .../config/waybar/themes/Catppuccin-Latte.css | 10 + .../config/waybar/themes/Catppuccin-Mocha.css | 10 + .../config/waybar/themes/Cyberpunk-Edge.css | 10 + dotfiles/config/waybar/themes/Decay-Green.css | 10 + .../config/waybar/themes/Frosted-Glass.css | 10 + .../config/waybar/themes/Graphite-Mono.css | 10 + .../config/waybar/themes/Gruvbox-Retro.css | 10 + .../config/waybar/themes/Material-Sakura.css | 10 + dotfiles/config/waybar/themes/Rose-Pine.css | 10 + dotfiles/config/waybar/themes/Tokyo-Night.css | 10 + dotfiles/config/waybar/themes/Wall-Dcol.css | 7 + dotfiles/config/waybar/themes/theme.css | 10 + dotfiles/zshrc | 27 +- 103 files changed, 2840 insertions(+), 1341 deletions(-) create mode 100644 dotfiles/config/hypr/animations.conf create mode 100644 dotfiles/config/hypr/keybindings.conf create mode 100644 dotfiles/config/hypr/monitors.conf create mode 100644 dotfiles/config/hypr/themes/Catppuccin-Latte.conf create mode 100644 dotfiles/config/hypr/themes/Catppuccin-Mocha.conf create mode 100644 dotfiles/config/hypr/themes/Cyberpunk-Edge.conf create mode 100644 dotfiles/config/hypr/themes/Decay-Green.conf create mode 100644 dotfiles/config/hypr/themes/Frosted-Glass.conf create mode 100644 dotfiles/config/hypr/themes/Graphite-Mono.conf create mode 100644 dotfiles/config/hypr/themes/Gruvbox-Retro.conf create mode 100644 dotfiles/config/hypr/themes/Material-Sakura.conf create mode 100644 dotfiles/config/hypr/themes/Rose-Pine.conf create mode 100644 dotfiles/config/hypr/themes/Tokyo-Night.conf create mode 100644 dotfiles/config/hypr/themes/Wall-Dcol.conf create mode 100644 dotfiles/config/hypr/themes/colors.conf create mode 100644 dotfiles/config/hypr/themes/common.conf create mode 100644 dotfiles/config/hypr/themes/theme.conf create mode 100644 dotfiles/config/hypr/userprefs.conf create mode 100644 dotfiles/config/hypr/windowrules.conf create mode 100644 dotfiles/config/kitty/themes/Catppuccin-Latte.conf rename dotfiles/config/kitty/{mocha.conf => themes/Catppuccin-Mocha.conf} (81%) create mode 100644 dotfiles/config/kitty/themes/Cyberpunk-Edge.conf create mode 100644 dotfiles/config/kitty/themes/Decay-Green.conf create mode 100644 dotfiles/config/kitty/themes/Frosted-Glass.conf create mode 100644 dotfiles/config/kitty/themes/Graphite-Mono.conf create mode 100644 dotfiles/config/kitty/themes/Gruvbox-Retro.conf create mode 100644 dotfiles/config/kitty/themes/Material-Sakura.conf create mode 100644 dotfiles/config/kitty/themes/Rose-Pine.conf create mode 100644 dotfiles/config/kitty/themes/Tokyo-Night.conf create mode 100644 dotfiles/config/kitty/themes/Wall-Dcol.conf create mode 100644 dotfiles/config/kitty/themes/theme.conf delete mode 100644 dotfiles/config/swaylock/config (copy 1) create mode 100644 dotfiles/config/waybar/config.ctl delete mode 100644 dotfiles/config/waybar/icons/brightness-100.png delete mode 100644 dotfiles/config/waybar/icons/brightness-20.png delete mode 100644 dotfiles/config/waybar/icons/brightness-40.png delete mode 100644 dotfiles/config/waybar/icons/brightness-60.png delete mode 100644 dotfiles/config/waybar/icons/brightness-80.png delete mode 100644 dotfiles/config/waybar/icons/microphone-mute.png delete mode 100644 dotfiles/config/waybar/icons/microphone.png delete mode 100644 dotfiles/config/waybar/icons/volume-high.png delete mode 100644 dotfiles/config/waybar/icons/volume-low.png delete mode 100644 dotfiles/config/waybar/icons/volume-mid.png delete mode 100644 dotfiles/config/waybar/icons/volume-mute.png delete mode 100644 dotfiles/config/waybar/mesu-met.jsonc create mode 100644 dotfiles/config/waybar/modules/backlight.jsonc create mode 100644 dotfiles/config/waybar/modules/battery.jsonc create mode 100644 dotfiles/config/waybar/modules/bluetooth.jsonc create mode 100644 dotfiles/config/waybar/modules/cliphist.jsonc create mode 100644 dotfiles/config/waybar/modules/clock.jsonc create mode 100644 dotfiles/config/waybar/modules/cpu.jsonc create mode 100644 dotfiles/config/waybar/modules/cpuinfo.jsonc create mode 100644 dotfiles/config/waybar/modules/footer.jsonc create mode 100644 dotfiles/config/waybar/modules/gpuinfo.jsonc create mode 100644 dotfiles/config/waybar/modules/header.jsonc create mode 100644 dotfiles/config/waybar/modules/idle_inhibitor.jsonc create mode 100644 dotfiles/config/waybar/modules/keybindhint.jsonc create mode 100644 dotfiles/config/waybar/modules/language.jsonc create mode 100644 dotfiles/config/waybar/modules/mediaplayer.py create mode 100644 dotfiles/config/waybar/modules/memory.jsonc create mode 100644 dotfiles/config/waybar/modules/mpris.jsonc create mode 100644 dotfiles/config/waybar/modules/network.jsonc create mode 100644 dotfiles/config/waybar/modules/power.jsonc create mode 100644 dotfiles/config/waybar/modules/pulseaudio.jsonc create mode 100644 dotfiles/config/waybar/modules/spotify.jsonc create mode 100644 dotfiles/config/waybar/modules/style.css create mode 100644 dotfiles/config/waybar/modules/taskbar.jsonc create mode 100644 dotfiles/config/waybar/modules/theme.jsonc create mode 100644 dotfiles/config/waybar/modules/tray.jsonc create mode 100644 dotfiles/config/waybar/modules/updates.jsonc create mode 100644 dotfiles/config/waybar/modules/wallchange.jsonc create mode 100644 dotfiles/config/waybar/modules/wbar.jsonc create mode 100644 dotfiles/config/waybar/modules/window.jsonc create mode 100644 dotfiles/config/waybar/modules/workspaces.jsonc delete mode 100755 dotfiles/config/waybar/scripts/PBPbattery.sh delete mode 100755 dotfiles/config/waybar/scripts/baraction delete mode 100755 dotfiles/config/waybar/scripts/brightness delete mode 100755 dotfiles/config/waybar/scripts/keyhint.sh delete mode 100755 dotfiles/config/waybar/scripts/power-menu.sh delete mode 100755 dotfiles/config/waybar/scripts/update-sys delete mode 100755 dotfiles/config/waybar/scripts/volume delete mode 100755 dotfiles/config/waybar/scripts/waybar-wttr.py delete mode 100755 dotfiles/config/waybar/scripts/weather.sh delete mode 100644 dotfiles/config/waybar/style/style-dark.css delete mode 100644 dotfiles/config/waybar/style/style.css create mode 100644 dotfiles/config/waybar/themes/Catppuccin-Latte.css create mode 100644 dotfiles/config/waybar/themes/Catppuccin-Mocha.css create mode 100644 dotfiles/config/waybar/themes/Cyberpunk-Edge.css create mode 100644 dotfiles/config/waybar/themes/Decay-Green.css create mode 100644 dotfiles/config/waybar/themes/Frosted-Glass.css create mode 100644 dotfiles/config/waybar/themes/Graphite-Mono.css create mode 100644 dotfiles/config/waybar/themes/Gruvbox-Retro.css create mode 100644 dotfiles/config/waybar/themes/Material-Sakura.css create mode 100644 dotfiles/config/waybar/themes/Rose-Pine.css create mode 100644 dotfiles/config/waybar/themes/Tokyo-Night.css create mode 100644 dotfiles/config/waybar/themes/Wall-Dcol.css create mode 100644 dotfiles/config/waybar/themes/theme.css diff --git a/dotfiles/config/hypr/animations.conf b/dotfiles/config/hypr/animations.conf new file mode 100644 index 0000000..6246d41 --- /dev/null +++ b/dotfiles/config/hypr/animations.conf @@ -0,0 +1,23 @@ + +# ▄▀█ █▄░█ █ █▀▄▀█ ▄▀█ ▀█▀ █ █▀█ █▄░█ +# █▀█ █░▀█ █ █░▀░█ █▀█ ░█░ █ █▄█ █░▀█ + + +# Some default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more + +animations { + enabled = yes + bezier = wind, 0.05, 0.9, 0.1, 1.05 + bezier = winIn, 0.1, 1.1, 0.1, 1.1 + bezier = winOut, 0.3, -0.3, 0, 1 + bezier = liner, 1, 1, 1, 1 + animation = windows, 1, 6, wind, slide + animation = windowsIn, 1, 6, winIn, slide + animation = windowsOut, 1, 5, winOut, slide + animation = windowsMove, 1, 5, wind, slide + animation = border, 1, 1, liner + animation = borderangle, 1, 30, liner, loop + animation = fade, 1, 10, default + animation = workspaces, 1, 5, wind +} + diff --git a/dotfiles/config/hypr/hyprland.conf b/dotfiles/config/hypr/hyprland.conf index c9577ec..14eae3b 100644 --- a/dotfiles/config/hypr/hyprland.conf +++ b/dotfiles/config/hypr/hyprland.conf @@ -1,11 +1,23 @@ -# -# Please note not all available settings / options are set here. -# For a full list, see the wiki -# +# ░▒▒▒▒▒▒▒░░░ +# ░░▒▒▒▒▒▒░░░░▓▓ ____________ +# ░░▒▒▒▒▒░░░░░▓▓ //____________/ +# ░░░▒▒▒░░░░░░▓▓ _ _ _ _ ______ +# ░░░▒▒▒░░░░░▓▓▓▓▓▓ | | | | | | | ___/ +# ░░░▒▒░░░░▓▓ ▓▓ | |_| | |__/ /| |_____ +# ░░░▒▒░░▓▓ ▓▓ \__ |_____/ |______/ +# ░░▒▒▓▓ ▓▓ //____/ -# autogenerated = 1 # remove this line to remove the warning + +# Please note not all available settings / options are set here. +# For a full list, see the wiki https://wiki.hyprland.org + + + +# █▀▄▀█ █▀█ █▄░█ █ ▀█▀ █▀█ █▀█ +# █░▀░█ █▄█ █░▀█ █ ░█░ █▄█ █▀▄ # See https://wiki.hyprland.org/Configuring/Monitors/ + monitor = , preferred, auto, auto monitor = eDP-1, 1920x1080@60, 0x0, 1 #monitor = DP-1, 2560x1440@75, 0x-1440, 1 @@ -13,262 +25,128 @@ monitor = eDP-1, 1920x1080@60, 0x0, 1 #monitor = DP-1, 2256x1504@60, 0x-1504, 1 monitor = DP-2, 2256x1504@60, 0x-1504, 1 + + +# █░░ ▄▀█ █░█ █▄░█ █▀▀ █░█ +# █▄▄ █▀█ █▄█ █░▀█ █▄▄ █▀█ + # See https://wiki.hyprland.org/Configuring/Keywords/ for more - # Execute your favorite apps at launch -exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP # Wayland magic (screen sharing etc.) -exec-once = systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP # More wayland magic (screen sharing etc.) -exec-once = ~/.config/hypr/scripts/bgaction -#exec-once = ~/.local/share/hyprload/hyprload.sh -exec-once = ~/.config/hypr/scripts/xdg-portal-hyprland -exec-once = /usr/lib/polkit-kde-authentication-agent-1 +$scrPath = ~/.config/hyprdots/scripts +exec-once = $scrPath/resetxdgportal.sh # reset XDPH for screenshare +exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP # for XDPH +exec-once = dbus-update-activation-environment --systemd --all # for XDPH +exec-once = systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP # for XDPH +exec-once = $scrPath/polkitkdeauth.sh # authentication dialogue for GUI apps +exec-once = waybar # launch the system panel +exec-once = blueman-applet # systray app for BT +exec-once = nm-applet --indicator # systray app for Network/Wifi +exec-once = dunst # start notification demon +exec-once = wl-paste --type text --watch cliphist store # clipboard store text data +exec-once = wl-paste --type image --watch cliphist store # clipboard store image data +exec-once = $scrPath/swwwallpaper.sh # start wallpaper daemon +exec-once = $scrPath/batterynotify.sh # battery notification -exec-once = swaync -exec-once = waybar & -exec-once = swayosd-server -exec-once = fcitx5 --replace -d -exec-once = nm-applet --indicator -# Source a file (multi-file configs) -# source = ~/.config/hypr/myColors.conf -# Set programs that you use -$terminal = kitty -$fileManager = dolphin -$menu = wofi --show drun +# █▀▀ █▄░█ █░█ +# ██▄ █░▀█ ▀▄▀ # Some default env vars. -env = XCURSOR_SIZE,24 +env = XDG_CURRENT_DESKTOP,Hyprland +env = XDG_SESSION_TYPE,wayland +env = XDG_SESSION_DESKTOP,Hyprland +env = QT_QPA_PLATFORM,wayland +#env = QT_STYLE_OVERRIDE,kvantum +env = QT_QPA_PLATFORMTHEME,qt5ct +env = QT_WAYLAND_DISABLE_WINDOWDECORATION,1 +env = QT_AUTO_SCREEN_SCALE_FACTOR,1 +env = MOZ_ENABLE_WAYLAND,1 + + + +# █ █▄░█ █▀█ █░█ ▀█▀ +# █ █░▀█ █▀▀ █▄█ ░█░ # For all categories, see https://wiki.hyprland.org/Configuring/Variables/ + input { kb_layout = us - kb_variant = - kb_model = - kb_options = - kb_rules = - follow_mouse = 1 touchpad { - disable_while_typing = yes - natural_scroll = yes - tap-to-click = yes - drag_lock = yes - scroll_factor = 0.5 - middle_button_emulation = false - clickfinger_behavior = false - drag_lock = false - tap-and-drag = false + natural_scroll = no } sensitivity = 0 # -1.0 - 1.0, 0 means no modification. + force_no_accel = 1 } -general { - # See https://wiki.hyprland.org/Configuring/Variables/ for more +# Example per-device config +# See https://wiki.hyprland.org/Configuring/Keywords/#executing for more - gaps_in = 2 - gaps_out = 2 - border_size = 2 - col.active_border = rgba(5fc9f8ee) rgba(fecb2eee) rgba(fd9426ee) rgba(fc3158ee) rgba(147efbee) rgba(53d769ee) rgba(fc3d39ee) rgba(f77737ee) rgba(fcaf45ee) rgba(ffdc80ee) 36deg - col.inactive_border = rgba(595959aa) - - layout = dwindle - - # Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on - allow_tearing = false - cursor_inactive_timeout = 10 +device { + name = epic mouse V1 + sensitivity = -0.5 } -decoration { - # See https://wiki.hyprland.org/Configuring/Variables/ for more +# See https://wiki.hyprland.org/Configuring/Variables/ for more - active_opacity=1 - inactive_opacity=0.9 - fullscreen_opacity=1.0 - - rounding = 5 - - blur { - enabled = true - size = 5 - passes = 2 - ignore_opacity = false - new_optimizations = true - vibrancy = 0.1696 - } - - drop_shadow = true - shadow_range = 4 - shadow_render_power = 3 - shadow_ignore_window = true - col.shadow = rgba(1a1a1aee) - col.shadow_inactive = rgba(1a1a1aee) - shadow_scale = 1 +gestures { + workspace_swipe = true + workspace_swipe_fingers = 3 } -animations { - enabled = yes - first_launch_animation = true - # Some default animations, see https://wiki.hyprland.org/Configuring/Animations/ for more - bezier = myBezier, 0.05, 0.9, 0.1, 1.05 +# █░░ ▄▀█ █▄█ █▀█ █░█ ▀█▀ █▀ +# █▄▄ █▀█ ░█░ █▄█ █▄█ ░█░ ▄█ - animation = windows, 1, 7, myBezier - animation = windowsOut, 1, 7, default, popin 80% - animation = border, 1, 10, default - animation = borderangle, 1, 8, default - animation = fade, 1, 7, default - animation = workspaces, 1, 6, default -} +# See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more dwindle { - # See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more pseudotile = yes # master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below preserve_split = yes # you probably want this } +# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more + master { - # See https://wiki.hyprland.org/Configuring/Master-Layout/ for more new_is_master = true } -gestures { - # See https://wiki.hyprland.org/Configuring/Variables/ for more - workspace_swipe = yes - workspace_swipe_fingers = 3 - workspace_swipe_cancel_ratio = 0.15 - workspace_swipe_distance = 300 - workspace_swipe_create_new = true - workspace_swipe_numbered = true -} + + +# █▀▄▀█ █ █▀ █▀▀ +# █░▀░█ █ ▄█ █▄▄ + +# See https://wiki.hyprland.org/Configuring/Variables/ for more misc { - # See https://wiki.hyprland.org/Configuring/Variables/ for more - force_default_wallpaper = -1 # Set to 0 or 1 to disable the anime mascot wallpapers - disable_hyprland_logo = yes - disable_splash_rendering = yes - focus_on_activate = yes - animate_manual_resizes = yes - animate_mouse_windowdragging = no - # suppress_portal_warnings = yes + vrr = 0 + disable_hyprland_logo = true + disable_splash_rendering = true + force_default_wallpaper = 0 } -# Example per-device config -# See https://wiki.hyprland.org/Configuring/Keywords/#per-device-input-configs for more -device { - #name = epic-mouse-v1 - #sensitivity = -0.5 -} -device:apple-inc.-magic-trackpad-1 { - #scroll_factor = 1.0 - #middle_button_emulation=0 -} -# unscale XWayland -xwayland { - force_zero_scaling = true -} +# █▀ █▀█ █░█ █▀█ █▀▀ █▀▀ +# ▄█ █▄█ █▄█ █▀▄ █▄▄ ██▄ -# Example windowrule v1 -# windowrule = float, ^(kitty)$ -# Example windowrule v2 -# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$ -# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more -#windowrulev2 = suppressevent maximize, class:.* # You'll probably like this. -windowrulev2 = opacity 0.8 0.5, class:^(Code)$ -windowrulev2 = opacity 0.8 0.5, class:^(kitty)$ -windowrulev2 = opacity 1.0 1.0, title:^(微信读书)$ -windowrulev2 = opacity 0.8 0.5, class:^(org.kde.polkit-kde-authentication-agent-1)$ -windowrulev2 = tile, title:^(少数派)$ -windowrulev2 = tile, title:^(微信读书)$ -windowrulev2 = float, class:^(org.kde.polkit-kde-authentication-agent-1)$ +# Source a file (multi-file configs) +# source = ~/.config/hypr/myColors.conf -# See https://wiki.hyprland.org/Configuring/Keywords/ for more -$mainMod = SUPER +source = ~/.config/hypr/animations.conf +source = ~/.config/hypr/keybindings.conf +source = ~/.config/hypr/windowrules.conf +source = ~/.config/hypr/themes/common.conf # shared theme settings +source = ~/.config/hypr/themes/theme.conf # theme specific settings +source = ~/.config/hypr/themes/colors.conf # wallbash color override +source = ~/.config/hypr/monitors.conf # initially empty, to be configured by user and remains static +source = ~/.config/hypr/userprefs.conf # initially empty, to be configured by user and remains static -# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more -bind = $mainMod, F1, exec, ~/.config/hypr/scripts/gamemode.sh -bind = $mainMod, E, exec, dolphin -bind = $mainMod, F, exec, firefoxpwa site launch 01HS2PR40FH9C2GNANPA030VCE --protocol -bind = $mainMod, G, exec, firefox-nightly -bind = $mainMod, J, exec, pkill jupyter-lab; jupyter-lab -bind = $mainMod, L, exec, logseq -bind = $mainMod SHIFT, L, exec, swaylock --clock --grace 10 -bind = $mainMod, M, exec, wlogout --protocol layer-shell -bind = $mainMod, N, exec, swaync-client -t -sw -bind = $mainMod SHIFT, N, exec, kitty nvim -bind = $mainMod, Q, exec, kitty -bind = $mainMod SHIFT, P, exec, pavucontrol -bind = $mainMod, R, exec, pkill wofi; wofi --show drun -bind = $mainMod SHIFT, R, exec, wlfreerdp /u:752549025@qq.com /p:nebkij-xevkec-Zyvha9 /v:43.249.192.204:45561 /f /sound /floatbar:sticky:off,default:hidden,show:window -themes +multitouch /video -wallpaper +nego +smart-sizing -bind = $mainMod, S, exec, spotify -bind = $mainMod SHIFT, S, exec, firefoxpwa site launch 01HS2Q4782CRTM3EMA84TPQPDT --protocol -bind = $mainMod, V, exec, code -bind = $mainMod SHIFT, V, exec, vlc -bind = $mainMod, W, exec, firefoxpwa site launch 01HS2PT7V5XJVNVCV5VQS6YMW5 --protocol -bind = $mainMod, X, exec, firefoxpwa site launch 01HS2ZZT6SFAHT9M8ENEV70DS8 --protocol -bind = , F11, fullscreen, -bind = $mainMod, F12, togglefloating, -bind = $mainMod, C, killactive, -bind = $mainMod CTRL, P, pseudo, -bind = $mainMod SHIFT, M, exit, -bind = $mainMod SHIFT, T, togglesplit, +# Note: as userprefs.conf is sourced at the end, settings configured in this file will override the defaults -# Move focus with mainMod + arrow keys -bind = $mainMod, left, movefocus, l -bind = $mainMod, right, movefocus, r -bind = $mainMod, up, movefocus, u -bind = $mainMod, down, movefocus, d - -# Switch workspaces with mainMod + [0-9] -bind = $mainMod, 1, workspace, 1 -bind = $mainMod, 2, workspace, 2 -bind = $mainMod, 3, workspace, 3 -bind = $mainMod, 4, workspace, 4 -bind = $mainMod, 5, workspace, 5 -bind = $mainMod, 6, workspace, 6 -bind = $mainMod, 7, workspace, 7 -bind = $mainMod, 8, workspace, 8 -bind = $mainMod, 9, workspace, 9 -bind = $mainMod, 0, workspace, 10 - -# Move active window to a workspace with mainMod + SHIFT + [0-9] -bind = $mainMod SHIFT, 1, movetoworkspace, 1 -bind = $mainMod SHIFT, 2, movetoworkspace, 2 -bind = $mainMod SHIFT, 3, movetoworkspace, 3 -bind = $mainMod SHIFT, 4, movetoworkspace, 4 -bind = $mainMod SHIFT, 5, movetoworkspace, 5 -bind = $mainMod SHIFT, 6, movetoworkspace, 6 -bind = $mainMod SHIFT, 7, movetoworkspace, 7 -bind = $mainMod SHIFT, 8, movetoworkspace, 8 -bind = $mainMod SHIFT, 9, movetoworkspace, 9 -bind = $mainMod SHIFT, 0, movetoworkspace, 10 - -# Scroll through existing workspaces with mainMod + scroll -bind = $mainMod, mouse_down, workspace, e+1 -bind = $mainMod, mouse_up, workspace, e-1 - -# Move/resize windows with mainMod + LMB/RMB and dragging -bindm = $mainMod, mouse:272, movewindow -bindm = $mainMod, mouse:273, resizewindow -bindm = $mainMod SHIFT, mouse:272, resizewindow - -# Brightness control -binde = , XF86MonBrightnessUp, exec, swayosd-client --brightness raise -binde = , XF86MonBrightnessDown, exec, swayosd-client --brightness lower - -# Sound control -binde = , XF86AudioRaiseVolume, exec, swayosd-client --output-volume raise -binde = , XF86AudioLowerVolume, exec, swayosd-client --output-volume lower -binde = , XF86AudioMute, exec, swayosd-client --output-volume mute-toggle - -# Player control -binde = , XF86AudioPlay, exec, playerctl play-pause -binde = $mainMod SHIFT, right, exec, playerctl next -binde = $mainMod SHIFT, left, exec, playerctl previous diff --git a/dotfiles/config/hypr/keybindings.conf b/dotfiles/config/hypr/keybindings.conf new file mode 100644 index 0000000..36356fb --- /dev/null +++ b/dotfiles/config/hypr/keybindings.conf @@ -0,0 +1,163 @@ + +# █▄▀ █▀▀ █▄█ █▄▄ █ █▄░█ █▀▄ █ █▄░█ █▀▀ █▀ +# █░█ ██▄ ░█░ █▄█ █ █░▀█ █▄▀ █ █░▀█ █▄█ ▄█ + + +# See https://wiki.hyprland.org/Configuring/Keywords/ for more +# Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more + +# Main modifier +$mainMod = SUPER # windows key + +# assign apps +$term = kitty +$editor = code --ozone-platform-hint=wayland --disable-gpu +$file = dolphin +$browser = firefox + +# Window/Session actions +bind = $mainMod, Q, exec, $scrPath/dontkillsteam.sh # killactive, kill the window on focus +bind = ALT, F4, exec, $scrPath/dontkillsteam.sh # killactive, kill the window on focus +bind = $mainMod, delete, exit, # kill hyperland session +bind = $mainMod, W, togglefloating, # toggle the window on focus to float +bind = $mainMod, G, togglegroup, # toggle the window on focus to group (tab mode) +bind = ALT, return, fullscreen, # toggle the window on focus to fullscreen +bind = $mainMod, L, exec, swaylock # lock screen +bind = $mainMod SHIFT, F, exec, $scrPath/windowpin.sh # toggle pin on focused window +bind = $mainMod, backspace, exec, $scrPath/logoutlaunch.sh 1 # logout menu +bind = $CONTROL, ESCAPE, exec, killall waybar || waybar # toggle waybar + +# Application shortcuts +bind = $mainMod, T, exec, $term # open terminal +bind = $mainMod, E, exec, $file # open file manager +bind = $mainMod, C, exec, $editor # open vscode +bind = $mainMod, F, exec, $browser # open browser +bind = $CONTROL SHIFT, ESCAPE, exec, $scrPath/sysmonlaunch.sh # open htop/btop if installed or default to top (system monitor) + +# Rofi is toggled on/off if you repeat the key presses +bind = $mainMod, A, exec, pkill -x rofi || $scrPath/rofilaunch.sh d # launch desktop applications +bind = $mainMod, tab, exec, pkill -x rofi || $scrPath/rofilaunch.sh w # switch between desktop applications +bind = $mainMod, R, exec, pkill -x rofi || $scrPath/rofilaunch.sh f # browse system files + +# Audio control +bindl = , F10, exec, $scrPath/volumecontrol.sh -o m # toggle audio mute +bindel = , F11, exec, $scrPath/volumecontrol.sh -o d # decrease volume +bindel = , F12, exec, $scrPath/volumecontrol.sh -o i # increase volume +bindl = , XF86AudioMute, exec, $scrPath/volumecontrol.sh -o m # toggle audio mute +bindl = , XF86AudioMicMute, exec, $scrPath/volumecontrol.sh -i m # toggle microphone mute +bindel = , XF86AudioLowerVolume, exec, $scrPath/volumecontrol.sh -o d # decrease volume +bindel = , XF86AudioRaiseVolume, exec, $scrPath/volumecontrol.sh -o i # increase volume +bindl = , XF86AudioPlay, exec, playerctl play-pause +bindl = , XF86AudioPause, exec, playerctl play-pause +bindl = , XF86AudioNext, exec, playerctl next +bindl = , XF86AudioPrev, exec, playerctl previous + +# Brightness control +bindel = , XF86MonBrightnessUp, exec, $scrPath/brightnesscontrol.sh i # increase brightness +bindel = , XF86MonBrightnessDown, exec, $scrPath/brightnesscontrol.sh d # decrease brightness + +# Screenshot/Screencapture +bind = $mainMod, P, exec, $scrPath/screenshot.sh s # drag to snip an area / click on a window to print it +bind = $mainMod CTRL, P, exec, $scrPath/screenshot.sh sf # frozen screen, drag to snip an area / click on a window to print it +bind = $mainMod ALT, P, exec, $scrPath/screenshot.sh m # print focused monitor +bind = ,print, exec, $scrPath/screenshot.sh p # print all monitor outputs + +# Exec custom scripts +bind = $mainMod ALT, G, exec, $scrPath/gamemode.sh # disable hypr effects for gamemode +bind = $mainMod ALT, right, exec, $scrPath/swwwallpaper.sh -n # next wallpaper +bind = $mainMod ALT, left, exec, $scrPath/swwwallpaper.sh -p # previous wallpaper +bind = $mainMod ALT, up, exec, $scrPath/wbarconfgen.sh n # next waybar mode +bind = $mainMod ALT, down, exec, $scrPath/wbarconfgen.sh p # previous waybar mode +bind = $mainMod SHIFT, D, exec, $scrPath/wallbashtoggle.sh # toggle wallbash on/off +bind = $mainMod SHIFT, T, exec, pkill -x rofi || $scrPath/themeselect.sh # theme select menu +bind = $mainMod SHIFT, A, exec, pkill -x rofi || $scrPath/rofiselect.sh # rofi style select menu +bind = $mainMod SHIFT, W, exec, pkill -x rofi || $scrPath/swwwallselect.sh # rofi wall select menu +bind = $mainMod, V, exec, pkill -x rofi || $scrPath/cliphist.sh c # open Pasteboard in screen center +bind = $mainMod, K, exec, $scrPath/keyboardswitch.sh # change keyboard layout + +# Move focus with mainMod + arrow keys +bind = $mainMod, left, movefocus, l +bind = $mainMod, right, movefocus, r +bind = $mainMod, up, movefocus, u +bind = $mainMod, down, movefocus, d +bind = ALT, Tab, movefocus, d + +# Switch workspaces with mainMod + [0-9] +bind = $mainMod, 1, workspace, 1 +bind = $mainMod, 2, workspace, 2 +bind = $mainMod, 3, workspace, 3 +bind = $mainMod, 4, workspace, 4 +bind = $mainMod, 5, workspace, 5 +bind = $mainMod, 6, workspace, 6 +bind = $mainMod, 7, workspace, 7 +bind = $mainMod, 8, workspace, 8 +bind = $mainMod, 9, workspace, 9 +bind = $mainMod, 0, workspace, 10 + +# Switch workspaces relative to the active workspace with mainMod + CTRL + [←→] +bind = $mainMod CTRL, right, workspace, r+1 +bind = $mainMod CTRL, left, workspace, r-1 + +# move to the first empty workspace instantly with mainMod + CTRL + [↓] +bind = $mainMod CTRL, down, workspace, empty + +# Resize windows +binde = $mainMod SHIFT, right, resizeactive, 30 0 +binde = $mainMod SHIFT, left, resizeactive, -30 0 +binde = $mainMod SHIFT, up, resizeactive, 0 -30 +binde = $mainMod SHIFT, down, resizeactive, 0 30 + +# Move active window to a workspace with mainMod + SHIFT + [0-9] +bind = $mainMod SHIFT, 1, movetoworkspace, 1 +bind = $mainMod SHIFT, 2, movetoworkspace, 2 +bind = $mainMod SHIFT, 3, movetoworkspace, 3 +bind = $mainMod SHIFT, 4, movetoworkspace, 4 +bind = $mainMod SHIFT, 5, movetoworkspace, 5 +bind = $mainMod SHIFT, 6, movetoworkspace, 6 +bind = $mainMod SHIFT, 7, movetoworkspace, 7 +bind = $mainMod SHIFT, 8, movetoworkspace, 8 +bind = $mainMod SHIFT, 9, movetoworkspace, 9 +bind = $mainMod SHIFT, 0, movetoworkspace, 10 + +# Move active window to a relative workspace with mainMod + CTRL + ALT + [←→] +bind = $mainMod CTRL ALT, right, movetoworkspace, r+1 +bind = $mainMod CTRL ALT, left, movetoworkspace, r-1 + +# Move active window around current workspace with mainMod + SHIFT + CTRL [←→↑↓] +bind = $mainMod SHIFT $CONTROL, left, movewindow, l +bind = $mainMod SHIFT $CONTROL, right, movewindow, r +bind = $mainMod SHIFT $CONTROL, up, movewindow, u +bind = $mainMod SHIFT $CONTROL, down, movewindow, d + +# Scroll through existing workspaces with mainMod + scroll +bind = $mainMod, mouse_down, workspace, e+1 +bind = $mainMod, mouse_up, workspace, e-1 + +# Move/Resize windows with mainMod + LMB/RMB and dragging +bindm = $mainMod, mouse:272, movewindow +bindm = $mainMod, mouse:273, resizewindow +bindm = Super, Z, movewindow +bindm = Super, X, resizewindow + +# Special workspaces (scratchpad) +bind = $mainMod ALT, S, movetoworkspacesilent, special +bind = $mainMod, S, togglespecialworkspace, + +# Toggle Layout +bind = $mainMod, J, togglesplit, # dwindle + +# Move window silently to workspace Super + Alt + [0-9] +bind = $mainMod ALT, 1, movetoworkspacesilent, 1 +bind = $mainMod ALT, 2, movetoworkspacesilent, 2 +bind = $mainMod ALT, 3, movetoworkspacesilent, 3 +bind = $mainMod ALT, 4, movetoworkspacesilent, 4 +bind = $mainMod ALT, 5, movetoworkspacesilent, 5 +bind = $mainMod ALT, 6, movetoworkspacesilent, 6 +bind = $mainMod ALT, 7, movetoworkspacesilent, 7 +bind = $mainMod ALT, 8, movetoworkspacesilent, 8 +bind = $mainMod ALT, 9, movetoworkspacesilent, 9 +bind = $mainMod ALT, 0, movetoworkspacesilent, 10 + +# Trigger when the switch is turning off, Might cause bugs. Recommend to use logind instead. +#bindl= , switch:on:Lid Switch, exec, swaylock && systemctl suspend + diff --git a/dotfiles/config/hypr/monitors.conf b/dotfiles/config/hypr/monitors.conf new file mode 100644 index 0000000..b6464fe --- /dev/null +++ b/dotfiles/config/hypr/monitors.conf @@ -0,0 +1,7 @@ + +# █▀▄▀█ █▀█ █▄░█ █ ▀█▀ █▀█ █▀█ █▀ +# █░▀░█ █▄█ █░▀█ █ ░█░ █▄█ █▀▄ ▄█ + + +# Set your monitor configuration here +# See https://wiki.hyprland.org/Configuring/Monitors/ diff --git a/dotfiles/config/hypr/themes/Catppuccin-Latte.conf b/dotfiles/config/hypr/themes/Catppuccin-Latte.conf new file mode 100644 index 0000000..6e8e9f6 --- /dev/null +++ b/dotfiles/config/hypr/themes/Catppuccin-Latte.conf @@ -0,0 +1,36 @@ +exec = gsettings set org.gnome.desktop.interface icon-theme 'Tela-circle-grey' +exec = gsettings set org.gnome.desktop.interface gtk-theme 'Catppuccin-Latte' +exec = gsettings set org.gnome.desktop.interface color-scheme 'prefer-light' + +general { + gaps_in = 3 + gaps_out = 8 + border_size = 2 + col.active_border = rgba(dc8a78ff) rgba(8839efff) 45deg + col.inactive_border = rgba(7287fdcc) rgba(179299cc) 45deg + layout = dwindle + resize_on_border = true +} + +group { + col.border_active = rgba(dc8a78ff) rgba(8839efff) 45deg + col.border_inactive = rgba(7287fdcc) rgba(179299cc) 45deg + col.border_locked_active = rgba(dc8a78ff) rgba(8839efff) 45deg + col.border_locked_inactive = rgba(7287fdcc) rgba(179299cc) 45deg +} + +decoration { + rounding = 10 + drop_shadow = false + + blur { + enabled = yes + size = 6 + passes = 3 + new_optimizations = on + ignore_opacity = on + xray = false + } +} + +layerrule = blur,waybar diff --git a/dotfiles/config/hypr/themes/Catppuccin-Mocha.conf b/dotfiles/config/hypr/themes/Catppuccin-Mocha.conf new file mode 100644 index 0000000..8ffd46a --- /dev/null +++ b/dotfiles/config/hypr/themes/Catppuccin-Mocha.conf @@ -0,0 +1,36 @@ +exec = gsettings set org.gnome.desktop.interface icon-theme 'Tela-circle-dracula' +exec = gsettings set org.gnome.desktop.interface gtk-theme 'Catppuccin-Mocha' +exec = gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark' + +general { + gaps_in = 3 + gaps_out = 8 + border_size = 2 + col.active_border = rgba(ca9ee6ff) rgba(f2d5cfff) 45deg + col.inactive_border = rgba(b4befecc) rgba(6c7086cc) 45deg + layout = dwindle + resize_on_border = true +} + +group { + col.border_active = rgba(ca9ee6ff) rgba(f2d5cfff) 45deg + col.border_inactive = rgba(b4befecc) rgba(6c7086cc) 45deg + col.border_locked_active = rgba(ca9ee6ff) rgba(f2d5cfff) 45deg + col.border_locked_inactive = rgba(b4befecc) rgba(6c7086cc) 45deg +} + +decoration { + rounding = 10 + drop_shadow = false + + blur { + enabled = yes + size = 6 + passes = 3 + new_optimizations = on + ignore_opacity = on + xray = false + } +} + +layerrule = blur,waybar diff --git a/dotfiles/config/hypr/themes/Cyberpunk-Edge.conf b/dotfiles/config/hypr/themes/Cyberpunk-Edge.conf new file mode 100644 index 0000000..cdc13bc --- /dev/null +++ b/dotfiles/config/hypr/themes/Cyberpunk-Edge.conf @@ -0,0 +1,41 @@ +exec = gsettings set org.gnome.desktop.interface icon-theme 'Tela-circle-yellow' +exec = gsettings set org.gnome.desktop.interface gtk-theme 'Cyberpunk-Edge' +exec = gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark' + +general { + gaps_in = 8 + gaps_out = 15 + border_size = 4 + col.active_border = rgba(FADA16ff) rgba(4DBD4Fff) 45deg + col.inactive_border = rgba(5032ACff) rgba(1F5322ff) 45deg + layout = dwindle + resize_on_border = true +} + +group { + col.border_active = rgba(FADA16ff) rgba(4DBD4Fff) 45deg + col.border_inactive = rgba(5032ACff) rgba(1F5322ff) 45deg + col.border_locked_active = rgba(FADA16ff) rgba(4DBD4Fff) 45deg + col.border_locked_inactive = rgba(5032ACff) rgba(1F5322ff) 45deg +} + +decoration { + rounding = 0 + drop_shadow = true + shadow_ignore_window = true + shadow_offset = 5 5 + shadow_range = 0 + shadow_render_power = 4 + col.shadow = 0xffFFA6C2 + + blur { + enabled = yes + size = 6 + passes = 3 + new_optimizations = on + ignore_opacity = on + xray = false + } +} + +layerrule = unset,waybar diff --git a/dotfiles/config/hypr/themes/Decay-Green.conf b/dotfiles/config/hypr/themes/Decay-Green.conf new file mode 100644 index 0000000..1ca5087 --- /dev/null +++ b/dotfiles/config/hypr/themes/Decay-Green.conf @@ -0,0 +1,36 @@ +exec = gsettings set org.gnome.desktop.interface icon-theme 'Tela-circle-green' +exec = gsettings set org.gnome.desktop.interface gtk-theme 'Decay-Green' +exec = gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark' + +general { + gaps_in = 3 + gaps_out = 8 + border_size = 2 + col.active_border = rgba(90ceaaff) rgba(ecd3a0ff) 45deg + col.inactive_border = rgba(86aaeccc) rgba(93cee9cc) 45deg + layout = dwindle + resize_on_border = true +} + +group { + col.border_active = rgba(90ceaaff) rgba(ecd3a0ff) 45deg + col.border_inactive = rgba(86aaeccc) rgba(93cee9cc) 45deg + col.border_locked_active = rgba(90ceaaff) rgba(ecd3a0ff) 45deg + col.border_locked_inactive = rgba(86aaeccc) rgba(93cee9cc) 45deg +} + +decoration { + rounding = 10 + drop_shadow = false + + blur { + enabled = yes + size = 5 + passes = 4 + new_optimizations = on + ignore_opacity = on + xray = false + } +} + +layerrule = unset,waybar diff --git a/dotfiles/config/hypr/themes/Frosted-Glass.conf b/dotfiles/config/hypr/themes/Frosted-Glass.conf new file mode 100644 index 0000000..14e2ceb --- /dev/null +++ b/dotfiles/config/hypr/themes/Frosted-Glass.conf @@ -0,0 +1,50 @@ +# ___________ _________ __ +# \__ ___/ \_ ___ \_______ ___.__._______/ |_ +# | | ______ / \ \/\_ __ < | |\____ \ __\ +# | | /_____/ \ \____| | \/\___ || |_> > | +# |____| \______ /|__| / ____|| __/|__| +# \/ \/ |__| + +exec = gsettings set org.gnome.desktop.interface icon-theme 'Tela-circle-blue' +exec = gsettings set org.gnome.desktop.interface gtk-theme 'Frosted-Glass' +exec = gsettings set org.gnome.desktop.interface color-scheme 'prefer-light' + +general { + gaps_in = 4 + gaps_out = 10 + border_size = 2 + col.active_border = rgba(2770C0ff) rgba(1E4C84ff) 45deg + col.inactive_border = rgba(A44185cc) rgba(012339cc) 45deg + layout = dwindle + resize_on_border = true +} + +group { + col.border_active = rgba(2770C0ff) rgba(1E4C84ff) 45deg + col.border_inactive = rgba(A44185cc) rgba(012339cc) 45deg + col.border_locked_active = rgba(2770C0ff) rgba(1E4C84ff) 45deg + col.border_locked_inactive = rgba(A44185cc) rgba(012339cc) 45deg +} + +decoration { + rounding = 13 + drop_shadow = false + shadow_ignore_window = true + shadow_offset = 0 0 + shadow_range = 15 + shadow_render_power = 1 + col.shadow = 0x80ffffff + active_opacity = 0.75 + inactive_opacity = 0.75 + + blur { + enabled = yes + size = 4 + passes = 4 + new_optimizations = on + ignore_opacity = on + xray = false + } +} + +layerrule = blur,waybar diff --git a/dotfiles/config/hypr/themes/Graphite-Mono.conf b/dotfiles/config/hypr/themes/Graphite-Mono.conf new file mode 100644 index 0000000..ac44660 --- /dev/null +++ b/dotfiles/config/hypr/themes/Graphite-Mono.conf @@ -0,0 +1,41 @@ +exec = gsettings set org.gnome.desktop.interface icon-theme 'Tela-circle-grey' +exec = gsettings set org.gnome.desktop.interface gtk-theme 'Graphite-Mono' +exec = gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark' + +general { + gaps_in = 8 + gaps_out = 14 + border_size = 3 + col.active_border = rgba(d9d9d9ff) rgba(a6a6a6ff) 45deg + col.inactive_border = rgba(404040cc) rgba(262626cc) 45deg + layout = dwindle + resize_on_border = true +} + +group { + col.border_active = rgba(d9d9d9ff) rgba(a6a6a6ff) 45deg + col.border_inactive = rgba(404040cc) rgba(262626cc) 45deg + col.border_locked_active = rgba(d9d9d9ff) rgba(a6a6a6ff) 45deg + col.border_locked_inactive = rgba(404040cc) rgba(262626cc) 45deg +} + +decoration { + rounding = 0 + drop_shadow = true + shadow_ignore_window = true + shadow_offset = 4 4 + shadow_range = 0 + shadow_render_power = 4 + col.shadow = 0xffFFFFFF + + blur { + enabled = yes + size = 6 + passes = 3 + new_optimizations = on + ignore_opacity = on + xray = false + } +} + +layerrule = unset,waybar diff --git a/dotfiles/config/hypr/themes/Gruvbox-Retro.conf b/dotfiles/config/hypr/themes/Gruvbox-Retro.conf new file mode 100644 index 0000000..facb79f --- /dev/null +++ b/dotfiles/config/hypr/themes/Gruvbox-Retro.conf @@ -0,0 +1,47 @@ +# ___________ _________ __ +# \__ ___/ \_ ___ \_______ ___.__._______/ |_ +# | | ______ / \ \/\_ __ < | |\____ \ __\ +# | | /_____/ \ \____| | \/\___ || |_> > | +# |____| \______ /|__| / ____|| __/|__| +# \/ \/ |__| + +exec = gsettings set org.gnome.desktop.interface icon-theme 'Gruvbox-Plus-Dark' +exec = gsettings set org.gnome.desktop.interface gtk-theme 'Gruvbox-Retro' +exec = gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark' + +exec = gsettings set org.gnome.desktop.interface cursor-theme 'Gruvbox-Retro' +exec = gsettings set org.gnome.desktop.interface cursor-size 20 +exec = hyprctl setcursor Gruvbox-Retro 20 + +general { + gaps_in = 3 + gaps_out = 8 + border_size = 2 + col.active_border = rgba(90ceaaff) rgba(ecd3a0ff) 45deg + col.inactive_border = rgba(1e8b50d9) rgba(50b050d9) 45deg + layout = dwindle + resize_on_border = true +} + +group { + col.border_active = rgba(90ceaaff) rgba(ecd3a0ff) 45deg + col.border_inactive = rgba(1e8b50d9) rgba(50b050d9) 45deg + col.border_locked_active = rgba(90ceaaff) rgba(ecd3a0ff) 45deg + col.border_locked_inactive = rgba(1e8b50d9) rgba(50b050d9) 45deg +} + +decoration { + rounding = 3 + drop_shadow = false + + blur { + enabled = yes + size = 4 + passes = 2 + new_optimizations = on + ignore_opacity = on + xray = false + } +} + +layerrule = blur,waybar diff --git a/dotfiles/config/hypr/themes/Material-Sakura.conf b/dotfiles/config/hypr/themes/Material-Sakura.conf new file mode 100644 index 0000000..234e043 --- /dev/null +++ b/dotfiles/config/hypr/themes/Material-Sakura.conf @@ -0,0 +1,41 @@ +exec = gsettings set org.gnome.desktop.interface icon-theme 'Tela-circle-black' +exec = gsettings set org.gnome.desktop.interface gtk-theme 'Material-Sakura' +exec = gsettings set org.gnome.desktop.interface color-scheme 'prefer-light' + +general { + gaps_in = 8 + gaps_out = 14 + border_size = 4 + col.active_border = rgba(b4637aff) rgba(d7827eff) 45deg + col.inactive_border = rgba(286983cc) rgba(56949fcc) 45deg + layout = dwindle + resize_on_border = true +} + +group { + col.border_active = rgba(b4637aff) rgba(d7827eff) 45deg + col.border_inactive = rgba(286983cc) rgba(56949fcc) 45deg + col.border_locked_active = rgba(b4637aff) rgba(d7827eff) 45deg + col.border_locked_inactive = rgba(286983cc) rgba(56949fcc) 45deg +} + +decoration { + rounding = 12 + drop_shadow = true + shadow_ignore_window = true + shadow_offset = 6 6 + shadow_range = 3 + shadow_render_power = 4 + col.shadow = 0xff26233a + + blur { + enabled = yes + size = 6 + passes = 3 + new_optimizations = on + ignore_opacity = on + xray = false + } +} + +layerrule = unset,waybar diff --git a/dotfiles/config/hypr/themes/Rose-Pine.conf b/dotfiles/config/hypr/themes/Rose-Pine.conf new file mode 100644 index 0000000..391651c --- /dev/null +++ b/dotfiles/config/hypr/themes/Rose-Pine.conf @@ -0,0 +1,36 @@ +exec = gsettings set org.gnome.desktop.interface icon-theme 'Tela-circle-pink' +exec = gsettings set org.gnome.desktop.interface gtk-theme 'Rose-Pine' +exec = gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark' + +general { + gaps_in = 3 + gaps_out = 8 + border_size = 2 + col.active_border = rgba(eb6f92ff) rgba(c4a7e7ff) 45deg + col.inactive_border = rgba(31748fcc) rgba(9ccfd8cc) 45deg + layout = dwindle + resize_on_border = true +} + +group { + col.border_active = rgba(eb6f92ff) rgba(c4a7e7ff) 45deg + col.border_inactive = rgba(31748fcc) rgba(9ccfd8cc) 45deg + col.border_locked_active = rgba(eb6f92ff) rgba(c4a7e7ff) 45deg + col.border_locked_inactive = rgba(31748fcc) rgba(9ccfd8cc) 45deg +} + +decoration { + rounding = 10 + drop_shadow = false + + blur { + enabled = yes + size = 6 + passes = 3 + new_optimizations = on + ignore_opacity = on + xray = false + } +} + +layerrule = blur,waybar diff --git a/dotfiles/config/hypr/themes/Tokyo-Night.conf b/dotfiles/config/hypr/themes/Tokyo-Night.conf new file mode 100644 index 0000000..75c084e --- /dev/null +++ b/dotfiles/config/hypr/themes/Tokyo-Night.conf @@ -0,0 +1,36 @@ +exec = gsettings set org.gnome.desktop.interface icon-theme 'Tela-circle-purple' +exec = gsettings set org.gnome.desktop.interface gtk-theme 'Tokyo-Night' +exec = gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark' + +general { + gaps_in = 3 + gaps_out = 8 + border_size = 2 + col.active_border = rgba(bb9af7ff) rgba(b4f9f8ff) 45deg + col.inactive_border = rgba(565f89cc) rgba(9aa5cecc) 45deg + layout = dwindle + resize_on_border = true +} + +group { + col.border_active = rgba(bb9af7ff) rgba(b4f9f8ff) 45deg + col.border_inactive = rgba(565f89cc) rgba(9aa5cecc) 45deg + col.border_locked_active = rgba(bb9af7ff) rgba(b4f9f8ff) 45deg + col.border_locked_inactive = rgba(565f89cc) rgba(9aa5cecc) 45deg +} + +decoration { + rounding = 10 + drop_shadow = false + + blur { + enabled = yes + size = 6 + passes = 3 + new_optimizations = on + ignore_opacity = on + xray = false + } +} + +layerrule = blur,waybar diff --git a/dotfiles/config/hypr/themes/Wall-Dcol.conf b/dotfiles/config/hypr/themes/Wall-Dcol.conf new file mode 100644 index 0000000..c7830bd --- /dev/null +++ b/dotfiles/config/hypr/themes/Wall-Dcol.conf @@ -0,0 +1,11 @@ +general { + col.active_border = rgba(AD584Fff) rgba(1D202Eff) 45deg + col.inactive_border = rgba(312A29ff) rgba(622D28ff) 45deg +} + +group { + col.border_active = rgba(312A29ff) rgba(622D28ff) 45deg + col.border_inactive = rgba(22232Acc) rgba(262C48cc) 45deg + col.border_locked_active = rgba(3F2C2Aff) rgba(502E2Aff) 45deg + col.border_locked_inactive = rgba(242733cc) rgba(262A3Dcc) 45deg +} diff --git a/dotfiles/config/hypr/themes/colors.conf b/dotfiles/config/hypr/themes/colors.conf new file mode 100644 index 0000000..e69de29 diff --git a/dotfiles/config/hypr/themes/common.conf b/dotfiles/config/hypr/themes/common.conf new file mode 100644 index 0000000..22c2054 --- /dev/null +++ b/dotfiles/config/hypr/themes/common.conf @@ -0,0 +1,32 @@ + +#█▀▀ █░█ █▀█ █▀ █▀█ █▀█ +#█▄▄ █▄█ █▀▄ ▄█ █▄█ █▀▄ + +#env = XCURSOR_THEME,Bibata-Modern-Ice +#env = XCURSOR_SIZE,20 + +exec = hyprctl setcursor Bibata-Modern-Ice 20 +exec = gsettings set org.gnome.desktop.interface cursor-theme 'Bibata-Modern-Ice' +exec = gsettings set org.gnome.desktop.interface cursor-size 20 + + +#█▀▀ █▀█ █▄░█ ▀█▀ +#█▀░ █▄█ █░▀█ ░█░ + +exec = gsettings set org.gnome.desktop.interface font-name 'Cantarell 10' +exec = gsettings set org.gnome.desktop.interface document-font-name 'Cantarell 10' +exec = gsettings set org.gnome.desktop.interface monospace-font-name 'CaskaydiaCove Nerd Font Mono 9' +exec = gsettings set org.gnome.desktop.interface font-antialiasing 'rgba' +exec = gsettings set org.gnome.desktop.interface font-hinting 'full' + + +#█▀ █▀█ █▀▀ █▀▀ █ ▄▀█ █░░ +#▄█ █▀▀ ██▄ █▄▄ █ █▀█ █▄▄ + +decoration { + dim_special = 0.3 + blur { + special = true + } +} + diff --git a/dotfiles/config/hypr/themes/theme.conf b/dotfiles/config/hypr/themes/theme.conf new file mode 100644 index 0000000..8ffd46a --- /dev/null +++ b/dotfiles/config/hypr/themes/theme.conf @@ -0,0 +1,36 @@ +exec = gsettings set org.gnome.desktop.interface icon-theme 'Tela-circle-dracula' +exec = gsettings set org.gnome.desktop.interface gtk-theme 'Catppuccin-Mocha' +exec = gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark' + +general { + gaps_in = 3 + gaps_out = 8 + border_size = 2 + col.active_border = rgba(ca9ee6ff) rgba(f2d5cfff) 45deg + col.inactive_border = rgba(b4befecc) rgba(6c7086cc) 45deg + layout = dwindle + resize_on_border = true +} + +group { + col.border_active = rgba(ca9ee6ff) rgba(f2d5cfff) 45deg + col.border_inactive = rgba(b4befecc) rgba(6c7086cc) 45deg + col.border_locked_active = rgba(ca9ee6ff) rgba(f2d5cfff) 45deg + col.border_locked_inactive = rgba(b4befecc) rgba(6c7086cc) 45deg +} + +decoration { + rounding = 10 + drop_shadow = false + + blur { + enabled = yes + size = 6 + passes = 3 + new_optimizations = on + ignore_opacity = on + xray = false + } +} + +layerrule = blur,waybar diff --git a/dotfiles/config/hypr/userprefs.conf b/dotfiles/config/hypr/userprefs.conf new file mode 100644 index 0000000..5dd5792 --- /dev/null +++ b/dotfiles/config/hypr/userprefs.conf @@ -0,0 +1,7 @@ + +#█░█ █▀ █▀▀ █▀█   █▀█ █▀█ █▀▀ █▀▀ █▀ +#█▄█ ▄█ ██▄ █▀▄   █▀▀ █▀▄ ██▄ █▀░ ▄█ + + +# Set your personal hyprland configuration here +# for sample file, please refer https://github.com/prasanthrangan/hyprdots/blob/main/Configs/.config/hypr/userprefs.t2 diff --git a/dotfiles/config/hypr/windowrules.conf b/dotfiles/config/hypr/windowrules.conf new file mode 100644 index 0000000..01a75d1 --- /dev/null +++ b/dotfiles/config/hypr/windowrules.conf @@ -0,0 +1,91 @@ + +# █░█░█ █ █▄░█ █▀▄ █▀█ █░█░█   █▀█ █░█ █░░ █▀▀ █▀ +# ▀▄▀▄▀ █ █░▀█ █▄▀ █▄█ ▀▄▀▄▀   █▀▄ █▄█ █▄▄ ██▄ ▄█ + + +# Example windowrule v1 +# windowrule = float, ^(kitty)$ +# Example windowrule v2 +# windowrulev2 = float,class:^(kitty)$,title:^(kitty)$ +# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more + +windowrulev2 = opacity 0.90 0.90,class:^(firefox)$ +windowrulev2 = opacity 0.90 0.90,class:^(Brave-browser)$ +windowrulev2 = opacity 0.80 0.80,class:^(Steam)$ +windowrulev2 = opacity 0.80 0.80,class:^(steam)$ +windowrulev2 = opacity 0.80 0.80,class:^(steamwebhelper)$ +windowrulev2 = opacity 0.80 0.80,class:^(Spotify)$ +windowrulev2 = opacity 0.80 0.80,class:^(Code)$ +windowrulev2 = opacity 0.80 0.80,class:^(code-url-handler)$ +windowrulev2 = opacity 0.80 0.80,class:^(kitty)$ +windowrulev2 = opacity 0.80 0.80,class:^(org.kde.dolphin)$ +windowrulev2 = opacity 0.80 0.80,class:^(org.kde.ark)$ +windowrulev2 = opacity 0.80 0.80,class:^(nwg-look)$ +windowrulev2 = opacity 0.80 0.80,class:^(qt5ct)$ +windowrulev2 = opacity 0.80 0.80,class:^(qt6ct)$ +windowrulev2 = opacity 0.80 0.80,class:^(kvantummanager)$ + +windowrulev2 = opacity 0.90 0.90,class:^(com.github.rafostar.Clapper)$ #Clapper-Gtk +windowrulev2 = opacity 0.80 0.80,class:^(com.github.tchx84.Flatseal)$ #Flatseal-Gtk +windowrulev2 = opacity 0.80 0.80,class:^(hu.kramo.Cartridges)$ #Cartridges-Gtk +windowrulev2 = opacity 0.80 0.80,class:^(com.obsproject.Studio)$ #Obs-Qt +windowrulev2 = opacity 0.80 0.80,class:^(gnome-boxes)$ #Boxes-Gtk +windowrulev2 = opacity 0.80 0.80,class:^(discord)$ #Discord-Electron +windowrulev2 = opacity 0.80 0.80,class:^(WebCord)$ #WebCord-Electron +windowrulev2 = opacity 0.80 0.80,class:^(ArmCord)$ #ArmCord-Electron +windowrulev2 = opacity 0.80 0.80,class:^(app.drey.Warp)$ #Warp-Gtk +windowrulev2 = opacity 0.80 0.80,class:^(net.davidotek.pupgui2)$ #ProtonUp-Qt +windowrulev2 = opacity 0.80 0.80,class:^(yad)$ #Protontricks-Gtk +windowrulev2 = opacity 0.80 0.80,class:^(Signal)$ #Signal-Gtk +windowrulev2 = opacity 0.80 0.80,class:^(io.github.alainm23.planify)$ #planify-Gtk +windowrulev2 = opacity 0.80 0.80,class:^(io.gitlab.theevilskeleton.Upscaler)$ #Upscaler-Gtk +windowrulev2 = opacity 0.80 0.80,class:^(com.github.unrud.VideoDownloader)$ #VideoDownloader-Gtk + +windowrulev2 = opacity 0.80 0.70,class:^(pavucontrol)$ +windowrulev2 = opacity 0.80 0.70,class:^(blueman-manager)$ +windowrulev2 = opacity 0.80 0.70,class:^(nm-applet)$ +windowrulev2 = opacity 0.80 0.70,class:^(nm-connection-editor)$ +windowrulev2 = opacity 0.80 0.70,class:^(org.kde.polkit-kde-authentication-agent-1)$ + +windowrulev2 = float,class:^(org.kde.dolphin)$,title:^(Copying — Dolphin)$ +windowrulev2 = float,title:^(Picture-in-Picture)$ +windowrulev2 = float,class:^(firefox)$,title:^(Library)$ +windowrulev2 = float,class:^(vlc)$ +windowrulev2 = float,class:^(kvantummanager)$ +windowrulev2 = float,class:^(qt5ct)$ +windowrulev2 = float,class:^(qt6ct)$ +windowrulev2 = float,class:^(nwg-look)$ +windowrulev2 = float,class:^(org.kde.ark)$ +windowrulev2 = float,class:^(Signal)$ #Signal-Gtk +windowrulev2 = float,class:^(com.github.rafostar.Clapper)$ #Clapper-Gtk +windowrulev2 = float,class:^(app.drey.Warp)$ #Warp-Gtk +windowrulev2 = float,class:^(net.davidotek.pupgui2)$ #ProtonUp-Qt +windowrulev2 = float,class:^(yad)$ #Protontricks-Gtk +windowrulev2 = float,class:^(eog)$ #Imageviewer-Gtk +windowrulev2 = float,class:^(io.github.alainm23.planify)$ #planify-Gtk +windowrulev2 = float,class:^(io.gitlab.theevilskeleton.Upscaler)$ #Upscaler-Gtk +windowrulev2 = float,class:^(com.github.unrud.VideoDownloader)$ #VideoDownloader-Gkk +windowrulev2 = float,class:^(pavucontrol)$ +windowrulev2 = float,class:^(blueman-manager)$ +windowrulev2 = float,class:^(nm-applet)$ +windowrulev2 = float,class:^(nm-connection-editor)$ +windowrulev2 = float,class:^(org.kde.polkit-kde-authentication-agent-1)$ +windowrulev2 = opacity 0.80 0.80,class:^(org.freedesktop.impl.portal.desktop.gtk)$ +windowrulev2 = opacity 0.80 0.80,class:^(org.freedesktop.impl.portal.desktop.hyprland)$ + + + +# █░░ ▄▀█ █▄█ █▀▀ █▀█   █▀█ █░█ █░░ █▀▀ █▀ +# █▄▄ █▀█ ░█░ ██▄ █▀▄   █▀▄ █▄█ █▄▄ ██▄ ▄█ + + +layerrule = blur,rofi +layerrule = ignorezero,rofi +layerrule = blur,notifications +layerrule = ignorezero,notifications +layerrule = blur,swaync-notification-window +layerrule = ignorezero,swaync-notification-window +layerrule = blur,swaync-control-center +layerrule = ignorezero,swaync-control-center +layerrule = blur,logout_dialog + diff --git a/dotfiles/config/kitty/kitty.conf b/dotfiles/config/kitty/kitty.conf index 8aa60eb..ee18e8e 100644 --- a/dotfiles/config/kitty/kitty.conf +++ b/dotfiles/config/kitty/kitty.conf @@ -1,13 +1,11 @@ -include ./mocha.conf -font_family jetbrains mono nerd font -font_size 15 +font_family CaskaydiaCove Nerd Font Mono bold_font auto italic_font auto bold_italic_font auto -mouse_hide_wait 2.0 -cursor_shape block -url_color #0087bd -url_style dotted -#Close the terminal without confirmation -confirm_os_window_close 0 -background_opacity 0.95 + +font_size 9.0 +window_padding_width 25 +include themes/theme.conf +#background_opacity 0.60 +#hide_window_decorations yes +#confirm_os_window_close 0 diff --git a/dotfiles/config/kitty/themes/Catppuccin-Latte.conf b/dotfiles/config/kitty/themes/Catppuccin-Latte.conf new file mode 100644 index 0000000..3ebaa2d --- /dev/null +++ b/dotfiles/config/kitty/themes/Catppuccin-Latte.conf @@ -0,0 +1,80 @@ +# vim:ft=kitty + +## name: Catppuccin Latte 🐑 +## author: Pocco81 (https://github.com/Pocco81) +## license: MIT +## upstream: https://github.com/catppuccin/kitty/blob/main/latte.conf +## blurb: Soothing pastel theme for the high-spirited! + + + +# The basic colors +foreground #4C4F69 +background #EFF1F5 +selection_foreground #EFF1F5 +selection_background #DC8A78 + +# Cursor colors +cursor #DC8A78 +cursor_text_color #EFF1F5 + +# URL underline color when hovering with mouse +url_color #7287FD + +# Kitty window border colors +active_border_color #8839EF +inactive_border_color #7C7F93 +bell_border_color #E64553 + +# OS Window titlebar colors +wayland_titlebar_color system +macos_titlebar_color system + +# Tab bar colors +active_tab_foreground #EFF1F5 +active_tab_background #8839EF +inactive_tab_foreground #4C4F69 +inactive_tab_background #9CA0B0 +tab_bar_background #BCC0CC + +# Colors for marks (marked text in the terminal) +mark1_foreground #EFF1F5 +mark1_background #1E66F5 +mark2_foreground #EFF1F5 +mark2_background #8839EF +mark3_foreground #EFF1F5 +mark3_background #209FB5 + +# The 16 terminal colors + +# black +color0 #4C4F69 +color8 #6C6F85 + +# red +color1 #D20F39 +color9 #D20F39 + +# green +color2 #40A02B +color10 #40A02B + +# yellow +color3 #DF8E1D +color11 #DF8E1D + +# blue +color4 #1E66F5 +color12 #1E66F5 + +# magenta +color5 #EA76CB +color13 #EA76CB + +# cyan +color6 #179299 +color14 #179299 + +# white +color7 #ACB0BE +color15 #ACB0BE diff --git a/dotfiles/config/kitty/mocha.conf b/dotfiles/config/kitty/themes/Catppuccin-Mocha.conf similarity index 81% rename from dotfiles/config/kitty/mocha.conf rename to dotfiles/config/kitty/themes/Catppuccin-Mocha.conf index 2533db7..e52f9e1 100644 --- a/dotfiles/config/kitty/mocha.conf +++ b/dotfiles/config/kitty/themes/Catppuccin-Mocha.conf @@ -1,6 +1,6 @@ # vim:ft=kitty -## name: Catppuccin-Mocha +## name: Catppuccin Mocha 🌿 ## author: Pocco81 (https://github.com/Pocco81) ## license: MIT ## upstream: https://github.com/catppuccin/kitty/blob/main/mocha.conf @@ -19,12 +19,12 @@ cursor #F5E0DC cursor_text_color #1E1E2E # URL underline color when hovering with mouse -url_color #F5E0DC +url_color #B4BEFE # Kitty window border colors -active_border_color #B4BEFE -inactive_border_color #6C7086 -bell_border_color #F9E2AF +active_border_color #CBA6F7 +inactive_border_color #8E95B3 +bell_border_color #EBA0AC # OS Window titlebar colors wayland_titlebar_color system @@ -39,7 +39,7 @@ tab_bar_background #11111B # Colors for marks (marked text in the terminal) mark1_foreground #1E1E2E -mark1_background #B4BEFE +mark1_background #87B0F9 mark2_foreground #1E1E2E mark2_background #CBA6F7 mark3_foreground #1E1E2E @@ -48,8 +48,8 @@ mark3_background #74C7EC # The 16 terminal colors # black -color0 #45475A -color8 #585B70 +color0 #43465A +color8 #43465A # red color1 #F38BA8 @@ -64,8 +64,8 @@ color3 #F9E2AF color11 #F9E2AF # blue -color4 #89B4FA -color12 #89B4FA +color4 #87B0F9 +color12 #87B0F9 # magenta color5 #F5C2E7 @@ -76,5 +76,5 @@ color6 #94E2D5 color14 #94E2D5 # white -color7 #BAC2DE -color15 #A6ADC8 +color7 #CDD6F4 +color15 #A1A8C9 diff --git a/dotfiles/config/kitty/themes/Cyberpunk-Edge.conf b/dotfiles/config/kitty/themes/Cyberpunk-Edge.conf new file mode 100644 index 0000000..26e94b1 --- /dev/null +++ b/dotfiles/config/kitty/themes/Cyberpunk-Edge.conf @@ -0,0 +1,72 @@ +# vim:ft=kitty + +# The basic colors +foreground #FDF500 +background #000000 +selection_foreground #000000 +selection_background #FADA16 + +# Cursor colors +cursor #FADA16 +cursor_text_color #FADA16 + +# URL underline color when hovering with mouse +url_color #FADA16 + +# Kitty window border colors +active_border_color #000000 +inactive_border_color #000000 +bell_border_color #000000 + +# OS Window titlebar colors +wayland_titlebar_color system +macos_titlebar_color system + +# Tab bar colors +active_tab_foreground #FADA16 +active_tab_background #000000 +inactive_tab_foreground #000000 +inactive_tab_background #FADA16 +tab_bar_background #000000 + +# Colors for marks (marked text in the terminal) +mark1_foreground #FADA16 +mark1_background #000000 +mark2_foreground #FADA16 +mark2_background #000000 +mark3_foreground #FADA16 +mark3_background #000000 + +# The 16 terminal colors + +# black +color0 #1F2229 +color8 #1B1C22 + +# red +color1 #D62246 +color9 #EC0101 + +# green +color2 #4DBD4F +color10 #1F5322 + +# yellow +color3 #FDF500 +color11 #F2CB07 + +# blue +color4 #F29C6B +color12 #FFA6C2 + +# magenta +color5 #A56DF2 +color13 #564873 + +# cyan +color6 #2CF6B3 +color14 #37EBF3 + +# white +color7 #E6E6E6 +color15 #FFFFFF diff --git a/dotfiles/config/kitty/themes/Decay-Green.conf b/dotfiles/config/kitty/themes/Decay-Green.conf new file mode 100644 index 0000000..21776a9 --- /dev/null +++ b/dotfiles/config/kitty/themes/Decay-Green.conf @@ -0,0 +1,47 @@ +# Eye Friendly Colors +# Created by https://github.com/decaycs + +# Special +background #0d0f18 +foreground #a5b6cf + +# Black +color0 #151720 +color8 #1c1e27 + +# Red +color1 #dd6777 +color9 #e26c7c + +# Green +color4 #90ceaa +color12 #95d3af + +# Yellow +color3 #ecd3a0 +color11 #f1d8a5 + +# Blue +color2 #86aaec +color10 #8baff1 + +# Magenta +color5 #c296eb +color13 #c79bf0 + +# Cyan +color6 #93cee9 +color14 #98d3ee + +# White +color7 #cbced3 +color15 #d0d3d8 + +# Cursor +cursor #cbced3 +cursor_text_color #a5b6cf + +# Selection highlight +selection_foreground #a5b6cf +selection_background #1c1e27 + diff --git a/dotfiles/config/kitty/themes/Frosted-Glass.conf b/dotfiles/config/kitty/themes/Frosted-Glass.conf new file mode 100644 index 0000000..1092d14 --- /dev/null +++ b/dotfiles/config/kitty/themes/Frosted-Glass.conf @@ -0,0 +1,37 @@ +# Eye Friendly Colors +# Created by https://github.com/dexpota/kitty-themes + +# Special +background #ffffff +foreground #262626 + +color0 #000000 +color8 #545753 + +color1 #f72729 +color9 #fb0416 + +color2 #32895c +color10 #2cc631 + +color3 #f96f1c +color11 #fcd627 + +color4 #125ccf +color12 #156ffe + +color5 #9f00bc +color13 #e800b0 + +color6 #32c2c0 +color14 #39d5ce + +color7 #b2b2b2 +color15 #ededec + +# Cursor +cursor #6fd2fc + +# Selection highlight +selection_foreground #ffffff +selection_background #6fd2fc diff --git a/dotfiles/config/kitty/themes/Graphite-Mono.conf b/dotfiles/config/kitty/themes/Graphite-Mono.conf new file mode 100644 index 0000000..da42b92 --- /dev/null +++ b/dotfiles/config/kitty/themes/Graphite-Mono.conf @@ -0,0 +1,72 @@ +# vim:ft=kitty + +# The basic colors +foreground #D9D9D9 +background #262626 +selection_foreground #262626 +selection_background #A6A6A6 + +# Cursor colors +cursor #A6A6A6 +cursor_text_color #D9D9D9 + +# URL underline color when hovering with mouse +url_color #D9D9D9 + +# Kitty window border colors +active_border_color #595959 +inactive_border_color #595959 +bell_border_color #595959 + +# OS Window titlebar colors +wayland_titlebar_color system +macos_titlebar_color system + +# Tab bar colors +active_tab_foreground #D9D9D9 +active_tab_background #262626 +inactive_tab_foreground #D9D9D9 +inactive_tab_background #262626 +tab_bar_background #D9D9D9 + +# Colors for marks (marked text in the terminal) +mark1_foreground #262626 +mark1_background #404040 +mark2_foreground #262626 +mark2_background #262626 +mark3_foreground #262626 +mark3_background #A6A6A6 + +# The 16 terminal colors + +# black +color0 #404040 +color8 #404040 + +# red +color1 #D9D9D9 +color9 #D9D9D9 + +# green +color2 #D9D9D9 +color10 #D9D9D9 + +# yellow +color3 #595959 +color11 #595959 + +# blue +color4 #A6A6A6 +color12 #A6A6A6 + +# magenta +color5 #A6A6A6 +color13 #A6A6A6 + +# cyan +color6 #A6A6A6 +color14 #A6A6A6 + +# white +color7 #D9D9D9 +color15 #D9D9D9 diff --git a/dotfiles/config/kitty/themes/Gruvbox-Retro.conf b/dotfiles/config/kitty/themes/Gruvbox-Retro.conf new file mode 100644 index 0000000..34eacee --- /dev/null +++ b/dotfiles/config/kitty/themes/Gruvbox-Retro.conf @@ -0,0 +1,56 @@ +# vim:ft=kitty + +# gruvbox-dark colorscheme for kitty +# snazzy theme used as base + +cursor #928374 +cursor_text_color background + +visual_bell_color #8ec07c +bell_border_color #8ec07c + +active_border_color #d3869b +inactive_border_color #665c54 + +active_tab_foreground #fbf1c7 +active_tab_background #665c54 +inactive_tab_foreground #a89984 +inactive_tab_background #3c3836 + +foreground #ebdbb2 +background #272727 +selection_foreground #655b53 +selection_background #ebdbb2 +url_color #d65c0d + +# black +color0 #272727 +color8 #928373 + +# red +color1 #cc231c +color9 #fb4833 + +# green +color2 #989719 +color10 #b8ba25 + +# yellow +color3 #d79920 +color11 #fabc2e + +# blue +color4 #448488 +color12 #83a597 + +# magenta +color5 #b16185 +color13 #d3859a + +# cyan +color6 #689d69 +color14 #8ec07b + +# white +color7 #a89983 +color15 #ebdbb2 diff --git a/dotfiles/config/kitty/themes/Material-Sakura.conf b/dotfiles/config/kitty/themes/Material-Sakura.conf new file mode 100644 index 0000000..9ebde85 --- /dev/null +++ b/dotfiles/config/kitty/themes/Material-Sakura.conf @@ -0,0 +1,55 @@ +## name: Rosé Pine Dawn +## author: mvllow +## license: MIT +## upstream: https://github.com/rose-pine/kitty/blob/main/dist/rose-pine-dawn.conf +## blurb: All natural pine, faux fur and a bit of soho vibes for the classy minimalist + +foreground #575279 +background #faf4ed +selection_foreground #575279 +selection_background #dfdad9 + +cursor #cecacd +cursor_text_color #575279 + +url_color #907aa9 + +active_tab_foreground #575279 +active_tab_background #f2e9e1 +inactive_tab_foreground #9893a5 +inactive_tab_background #faf4ed + +active_border_color #286983 +inactive_border_color #dfdad9 + +# black +color0 #f2e9e1 +color8 #9893a5 + +# red +color1 #b4637a +color9 #b4637a + +# green +color2 #286983 +color10 #286983 + +# yellow +color3 #ea9d34 +color11 #ea9d34 + +# blue +color4 #56949f +color12 #56949f + +# magenta +color5 #907aa9 +color13 #907aa9 + +# cyan +color6 #d7827e +color14 #d7827e + +# white +color7 #575279 +color15 #575279 diff --git a/dotfiles/config/kitty/themes/Rose-Pine.conf b/dotfiles/config/kitty/themes/Rose-Pine.conf new file mode 100644 index 0000000..575c06b --- /dev/null +++ b/dotfiles/config/kitty/themes/Rose-Pine.conf @@ -0,0 +1,56 @@ +## name: Rosé Pine +## author: mvllow +## license: MIT +## upstream: https://github.com/rose-pine/kitty/blob/main/dist/rose-pine.conf +## blurb: All natural pine, faux fur and a bit of soho vibes for the classy minimalist + +foreground #e0def4 +background #191724 +selection_foreground #e0def4 +selection_background #403d52 + +cursor #524f67 +cursor_text_color #e0def4 + +url_color #c4a7e7 + +active_tab_foreground #e0def4 +active_tab_background #26233a +inactive_tab_foreground #6e6a86 +inactive_tab_background #191724 + +active_border_color #31748f +inactive_border_color #403d52 + +# black +color0 #26233a +color8 #6e6a86 + +# red +color1 #eb6f92 +color9 #eb6f92 + +# green +color2 #31748f +color10 #31748f + +# yellow +color3 #f6c177 +color11 #f6c177 + +# blue +color4 #9ccfd8 +color12 #9ccfd8 + +# magenta +color5 #c4a7e7 +color13 #c4a7e7 + +# cyan +color6 #ebbcba +color14 #ebbcba + +# white +color7 #e0def4 +color15 #e0def4 + diff --git a/dotfiles/config/kitty/themes/Tokyo-Night.conf b/dotfiles/config/kitty/themes/Tokyo-Night.conf new file mode 100644 index 0000000..9ee37a4 --- /dev/null +++ b/dotfiles/config/kitty/themes/Tokyo-Night.conf @@ -0,0 +1,77 @@ +# Tokyo Night color scheme for kitty terminal emulator +# https://github.com/davidmathers/tokyo-night-kitty-theme +# +# Based on Tokyo Night color theme for Visual Studio Code +# https://github.com/enkia/tokyo-night-vscode-theme + +foreground #a9b1d6 +background #24283b + +# Black +color0 #414868 +color8 #414868 + +# Red +color1 #f7768e +color9 #f7768e + +# Green +color2 #73daca +color10 #73daca + +# Yellow +color3 #e0af68 +color11 #e0af68 + +# Blue +color4 #7aa2f7 +color12 #7aa2f7 + +# Magenta +color5 #bb9af7 +color13 #bb9af7 + +# Cyan +color6 #7dcfff +color14 #7dcfff + +# White +color7 #c0caf5 +color15 #c0caf5 + +# Cursor +cursor #c0caf5 +cursor_text_color #1a1b26 + +# Selection highlight +selection_foreground none +selection_background #28344a + +# The color for highlighting URLs on mouse-over +url_color #9ece6a + +# Window borders +active_border_color #3d59a1 +inactive_border_color #101014 +bell_border_color #e0af68 + +# Tab bar +tab_bar_style fade +tab_fade 1 +active_tab_foreground #3d59a1 +active_tab_background #16161e +active_tab_font_style bold +inactive_tab_foreground #787c99 +inactive_tab_background #16161e +inactive_tab_font_style bold +tab_bar_background #101014 + +# Title bar +macos_titlebar_color #16161e + +# Storm +# background #24283b +# cursor_text_color #24283b +# active_tab_background #1f2335 +# inactive_tab_background #1f2335 +# macos_titlebar_color #1f2335 diff --git a/dotfiles/config/kitty/themes/Wall-Dcol.conf b/dotfiles/config/kitty/themes/Wall-Dcol.conf new file mode 100644 index 0000000..10787f2 --- /dev/null +++ b/dotfiles/config/kitty/themes/Wall-Dcol.conf @@ -0,0 +1,43 @@ +foreground #FFFFFF +background #1B1B29 +selection_foreground #1B1B29 +selection_background #FFFFFF +cursor #974C4E +cursor_text_color #FFFFFF + +active_tab_foreground #1B1B29 +active_tab_background #2D4E5C +inactive_tab_foreground #2D4E5C +inactive_tab_background #1B1B29 + +# black +color0 #00001A +color8 #3B3B63 + +# red +color1 #FCC5C6 +color9 #D69FA0 + +# green +color2 #C5D7FC +color10 #9FB1D6 + +# yellow +color3 #C5ECFC +color11 #9FC6D6 + +# blue +color4 #8181B8 +color12 #8181B8 + +# magenta +color5 #8193B8 +color13 #8193B8 + +# cyan +color6 #81A7B8 +color14 #81A7B8 + +# white +color7 #FCC5C6 +color15 #D69FA0 diff --git a/dotfiles/config/kitty/themes/theme.conf b/dotfiles/config/kitty/themes/theme.conf new file mode 100644 index 0000000..e52f9e1 --- /dev/null +++ b/dotfiles/config/kitty/themes/theme.conf @@ -0,0 +1,80 @@ +# vim:ft=kitty + +## name: Catppuccin Mocha 🌿 +## author: Pocco81 (https://github.com/Pocco81) +## license: MIT +## upstream: https://github.com/catppuccin/kitty/blob/main/mocha.conf +## blurb: Soothing pastel theme for the high-spirited! + + + +# The basic colors +foreground #CDD6F4 +background #1E1E2E +selection_foreground #1E1E2E +selection_background #F5E0DC + +# Cursor colors +cursor #F5E0DC +cursor_text_color #1E1E2E + +# URL underline color when hovering with mouse +url_color #B4BEFE + +# Kitty window border colors +active_border_color #CBA6F7 +inactive_border_color #8E95B3 +bell_border_color #EBA0AC + +# OS Window titlebar colors +wayland_titlebar_color system +macos_titlebar_color system + +# Tab bar colors +active_tab_foreground #11111B +active_tab_background #CBA6F7 +inactive_tab_foreground #CDD6F4 +inactive_tab_background #181825 +tab_bar_background #11111B + +# Colors for marks (marked text in the terminal) +mark1_foreground #1E1E2E +mark1_background #87B0F9 +mark2_foreground #1E1E2E +mark2_background #CBA6F7 +mark3_foreground #1E1E2E +mark3_background #74C7EC + +# The 16 terminal colors + +# black +color0 #43465A +color8 #43465A + +# red +color1 #F38BA8 +color9 #F38BA8 + +# green +color2 #A6E3A1 +color10 #A6E3A1 + +# yellow +color3 #F9E2AF +color11 #F9E2AF + +# blue +color4 #87B0F9 +color12 #87B0F9 + +# magenta +color5 #F5C2E7 +color13 #F5C2E7 + +# cyan +color6 #94E2D5 +color14 #94E2D5 + +# white +color7 #CDD6F4 +color15 #A1A8C9 diff --git a/dotfiles/config/swaylock/config b/dotfiles/config/swaylock/config index 7ae89de..477d393 100644 --- a/dotfiles/config/swaylock/config +++ b/dotfiles/config/swaylock/config @@ -2,8 +2,8 @@ daemonize show-failed-attempts clock screenshot -effect-blur=9x5 -effect-vignette=0.5:0.5 +effect-blur=15x15 +effect-vignette=1:1 color=1f1d2e80 font="Inter" indicator @@ -34,5 +34,5 @@ grace-no-mouse grace-no-touch datestr=%a, %B %e timestr=%I:%M %p -fade-in=0.2 +fade-in=0.3 ignore-empty-password diff --git a/dotfiles/config/swaylock/config (copy 1) b/dotfiles/config/swaylock/config (copy 1) deleted file mode 100644 index 09695b2..0000000 --- a/dotfiles/config/swaylock/config (copy 1) +++ /dev/null @@ -1,50 +0,0 @@ -ignore-empty-password -font=Ubuntu Mono Nerd Font - -clock -timestr=%R - -image=~/.config/hypr/wallpaper-dark.jpg - -fade-in=0.2 - -#effect-blur=15x2 -#effect-greyscale -#effect-scale=0.1 - -indicator -indicator-radius=110 -indicator-thickness=10 -indicator-caps-lock - -key-hl-color=880033ff - -separator-color=00000000 - -inside-color=01010133 -inside-clear-color=ffd20433 -inside-caps-lock-color=009ddc33 -inside-ver-color=d9d8d833 -inside-wrong-color=ee2e2433 - -ring-color=231f20D9 -ring-clear-color=231f20D9 -ring-caps-lock-color=231f20D9 -ring-ver-color=231f20D9 -ring-wrong-color=231f20D9 - -line-color=00000000 -line-clear-color=ffd204FF -line-caps-lock-color=009ddcFF -line-ver-color=d9d8d8FF -line-wrong-color=ee2e24FF - -text-color=dededeff -text-clear-color=ffd204ff -text-ver-color=000000ff -text-wrong-color=ee2e24ff - -bs-hl-color=ffd204ff -caps-lock-key-hl-color=ffd204FF -caps-lock-bs-hl-color=dededeFF -text-caps-lock-color=009ddcff \ No newline at end of file diff --git a/dotfiles/config/waybar/config.ctl b/dotfiles/config/waybar/config.ctl new file mode 100644 index 0000000..d9d0baf --- /dev/null +++ b/dotfiles/config/waybar/config.ctl @@ -0,0 +1,24 @@ +0|28|bottom|( cpu memory custom/cpuinfo custom/gpuinfo ) ( idle_inhibitor clock )|( hyprland/workspaces hyprland/window )|( backlight network bluetooth pulseaudio pulseaudio#microphone custom/updates custom/keybindhint ) ( tray battery ) ( custom/wallchange custom/theme custom/wbar custom/cliphist custom/power ) +0|28|top|( cpu memory custom/cpuinfo custom/gpuinfo ) ( idle_inhibitor clock )|( hyprland/workspaces hyprland/window )|( backlight network bluetooth pulseaudio pulseaudio#microphone custom/updates custom/keybindhint ) ( tray battery ) ( custom/wallchange custom/theme custom/wbar custom/cliphist custom/power ) +0|28|bottom|( cpu memory custom/cpuinfo custom/gpuinfo ) ( idle_inhibitor clock ) ( hyprland/workspaces )|( hyprland/window )|( backlight network bluetooth pulseaudio pulseaudio#microphone custom/updates custom/keybindhint ) ( tray battery ) ( custom/wallchange custom/theme custom/wbar custom/cliphist custom/power ) +0|28|top|( cpu memory custom/cpuinfo ) ( idle_inhibitor clock ) ( hyprland/workspaces )|( hyprland/window )|( backlight network bluetooth pulseaudio pulseaudio#microphone custom/updates custom/keybindhint ) ( tray battery ) ( custom/wallchange custom/theme custom/wbar custom/cliphist custom/power ) +0||bottom||( hyprland/workspaces hyprland/window )|( idle_inhibitor clock )|( cpu memory custom/cpuinfo custom/gpuinfo ) ( backlight network bluetooth pulseaudio pulseaudio#microphone custom/updates custom/keybindhint ) ( tray battery ) ( custom/wallchange custom/theme custom/wbar custom/cliphist custom/power ) +0||top||( hyprland/workspaces hyprland/window )|( idle_inhibitor clock )|( cpu memory custom/cpuinfo custom/gpuinfo ) ( backlight network bluetooth pulseaudio pulseaudio#microphone custom/updates custom/keybindhint ) ( tray battery ) ( custom/wallchange custom/theme custom/wbar custom/cliphist custom/power ) +0|31|bottom|( custom/power custom/cliphist custom/wbar custom/theme custom/wallchange ) ( wlr/taskbar custom/spotify ) |( idle_inhibitor clock )|( tray battery ) ( backlight network bluetooth pulseaudio pulseaudio#microphone custom/keybindhint ) +0|31|left|( custom/power custom/cliphist custom/wbar custom/theme custom/wallchange ) ( wlr/taskbar custom/spotify ) |( idle_inhibitor clock )|( tray battery ) ( backlight network bluetooth pulseaudio pulseaudio#microphone custom/keybindhint ) +1|31|top|( custom/power custom/cliphist custom/wbar custom/theme custom/wallchange ) ( wlr/taskbar custom/spotify ) |( idle_inhibitor clock )|( tray battery ) ( backlight network bluetooth pulseaudio pulseaudio#microphone custom/keybindhint ) +0|31|right|( custom/power custom/cliphist custom/wbar custom/theme custom/wallchange ) ( wlr/taskbar custom/spotify ) |( idle_inhibitor clock )|( tray battery ) ( backlight network bluetooth pulseaudio pulseaudio#microphone custom/keybindhint ) +0|32|bottom||( custom/power ) ( tray battery ) ( wlr/taskbar idle_inhibitor clock ) ( custom/cliphist ) ( custom/wbar ) ( custom/wallchange ) ( custom/theme )| +0|32|left||( custom/power ) ( tray battery ) ( wlr/taskbar idle_inhibitor clock ) ( custom/cliphist ) ( custom/wbar ) ( custom/wallchange ) ( custom/theme )| +0|32|top||( custom/power ) ( tray battery ) ( wlr/taskbar idle_inhibitor clock ) ( custom/cliphist ) ( custom/wbar ) ( custom/wallchange ) ( custom/theme )| +0|32|right||( custom/power ) ( tray battery ) ( wlr/taskbar idle_inhibitor clock ) ( custom/cliphist ) ( custom/wbar ) ( custom/wallchange ) ( custom/theme )| +0|31|bottom|( cpu memory custom/cpuinfo custom/gpuinfo ) ( idle_inhibitor clock ) ( hyprland/workspaces )|( wlr/taskbar )|( backlight network bluetooth pulseaudio pulseaudio#microphone custom/updates custom/keybindhint ) ( tray battery ) ( custom/wallchange custom/theme custom/wbar custom/cliphist custom/power ) +0|31|top|( cpu memory custom/cpuinfo custom/gpuinfo ) ( idle_inhibitor clock ) ( hyprland/workspaces )|( wlr/taskbar )|( backlight network bluetooth pulseaudio pulseaudio#microphone custom/updates custom/keybindhint ) ( tray battery ) ( custom/wallchange custom/theme custom/wbar custom/cliphist custom/power ) +0|29|bottom|( wlr/taskbar mpris )|( idle_inhibitor clock )|( backlight network bluetooth pulseaudio pulseaudio#microphone custom/updates ) ( tray battery ) ( custom/wallchange custom/theme custom/wbar custom/cliphist custom/power ) +0|29|left|( wlr/taskbar mpris )|( idle_inhibitor clock )|( backlight network bluetooth pulseaudio pulseaudio#microphone custom/updates ) ( tray battery ) ( custom/wallchange custom/theme custom/wbar custom/cliphist custom/power ) +0|29|top|( wlr/taskbar mpris )|( idle_inhibitor clock )|( backlight network bluetooth pulseaudio pulseaudio#microphone custom/updates ) ( tray battery ) ( custom/wallchange custom/theme custom/wbar custom/cliphist custom/power ) +0|29|right|( wlr/taskbar mpris )|( idle_inhibitor clock )|( backlight network bluetooth pulseaudio pulseaudio#microphone custom/updates ) ( tray battery ) ( custom/wallchange custom/theme custom/wbar custom/cliphist custom/power ) +0|28|bottom|( custom/power custom/cliphist custom/wbar custom/theme custom/wallchange ) ( idle_inhibitor clock custom/spotify )|( wlr/taskbar )|( tray ) ( backlight network bluetooth pulseaudio pulseaudio#microphone ) +0|28|left|( custom/power custom/cliphist custom/wbar custom/theme custom/wallchange ) ( idle_inhibitor clock custom/spotify )|( wlr/taskbar )|( tray ) ( backlight network bluetooth pulseaudio pulseaudio#microphone ) +0|28|top|( custom/power custom/cliphist custom/wbar custom/theme custom/wallchange ) ( idle_inhibitor clock custom/spotify )|( wlr/taskbar )|( tray ) ( backlight network bluetooth pulseaudio pulseaudio#microphone ) +0|28|right|( custom/power custom/cliphist custom/wbar custom/theme custom/wallchange ) ( idle_inhibitor clock custom/spotify )|( wlr/taskbar )|( tray ) ( backlight network bluetooth pulseaudio pulseaudio#microphone ) diff --git a/dotfiles/config/waybar/config.jsonc b/dotfiles/config/waybar/config.jsonc index 68a1fa3..b1ae0d6 100644 --- a/dotfiles/config/waybar/config.jsonc +++ b/dotfiles/config/waybar/config.jsonc @@ -1,261 +1,214 @@ +// --// waybar config generated by wbarconfgen.sh //-- // + { +// sourced from header module // + "layer": "top", "position": "top", "mod": "dock", + "height": 31, "exclusive": true, "passthrough": false, "gtk-layer-shell": true, - "height": 30, - "modules-left": [ - "custom/launcher", - "clock", - //"wlr/workspaces", - "hyprland/workspaces", - "wlr/taskbar", - "hyprland/window" - //"custom/playerctl", - //"custom/playerlabel" - ], - //"modules-center": [ - //"hyprland/window", - //"wlr/taskbar" - - //], - "modules-right": [ - "custom/weather", - //"custom/weather_sway", - //"network", - //"idle_inhibitor", - "cpu", - "memory", - //"disk", - "temperature", - "battery", - //"custom/PBPbattery", - "pulseaudio", - //"pulseaudio_pamixer", - //"pulseaudio_pamixer#microphone", - //"custom/keyboard-layout", - "backlight#icon", - //"backlight#value", - "custom/updates", - //"clock", - "tray", - //"custom/power", - //"custom/lock_screen", - "custom/notification", - "custom/light_dark" - ], - "custom/launcher": { - "format": "  ", - "on-click": "sh -c '(sleep 0.5s; pkill wofi || wofi -c ~/.config/wofi/config-lmenu)' & disown", - "tooltip": false - }, - "clock": { - "format": "{:%H:%M}", - "tooltip-format": "{: %A, %e %B %Y}" - }, - "wlr/workspaces": { - "disable-scroll": true, - "all-outputs": true, - "on-click": "activate", - "on-scroll-up": "hyprctl dispatch workspace -1", - "on-scroll-down": "hyprctl dispatch workspace +1", - "persistent_workspaces": { - "1": [], - "2": [], - "3": [], - "4": [], - "5": [], - "6": [], - "7": [], - "8": [], - "9": [], - "10": [] - } - }, - "hyprland/workspaces": { - "format": "{name}", - "format-icons": { - "active": "", - "default": "", - "persistent": "" - }, - "on-scroll-up": "hyprctl dispatch workspace r-1", - "on-scroll-down": "hyprctl dispatch workspace r+1", - "all-outputs": false, - "persistent_workspaces": { - "*": 1 - } - }, - "custom/playerctl": { - "format": "{icon}", - "return-type": "json", - "max-length": 64, - "exec": "playerctl -a metadata --format '{\"text\": \"{{artist}} - {{markup_escape(title)}}\", \"tooltip\": \"{{playerName}} : {{markup_escape(title)}}\", \"alt\": \"{{status}}\", \"class\": \"{{status}}\"}' -F", - "on-click-middle": "playerctl play-pause", - "on-click": "playerctl play-pause", - //"on-click": "playerctl previous", - "on-click-right": "playerctl next", - "format-icons": { - "Playing": "󰒮 󰐌 󰒭 ", - "Paused": "󰒮 󰏥 󰒭 " - } - }, - - "custom/playerlabel": { - "format": "{}", - "return-type": "json", - "max-length": 48, - "exec": "playerctl -a metadata --format '{\"text\": \"{{artist}} - {{markup_escape(title)}}\", \"tooltip\": \"{{playerName}} : {{markup_escape(title)}}\", \"alt\": \"{{status}}\", \"class\": \"{{status}}\"}' -F", - "on-click-middle": "playerctl play-pause", - "on-click": "playerctl play-pause", - //"on-click": "playerctl previous", - "on-click-right": "playerctl next", - "format-icons": { - "Playing": "󰒮 󰐌 󰒭 ", - "Paused": "󰒮 󰏥 󰒭 " - } - }, - - // -------------------- - - "hyprland/window": { - "format": "{}" - }, - "wlr/taskbar": { - "format": "{icon}", - "icon-size": 24, - "all-outputs": true, - "tooltip-format": "{name} - {title}", - "on-click": "activate", - "on-click-middle": "close", - "ignore-list": [ - "wofi" - ], - "app_ids-mapping": { - "steam_app_39210": "Final Fantasy 14" - } - }, - // -------------------- +// positions generated based on config.ctl // + + "modules-left": ["custom/padd","custom/l_end","custom/power","custom/cliphist","custom/wbar","custom/theme","custom/wallchange","custom/r_end","custom/l_end","wlr/taskbar","custom/spotify","custom/r_end","","custom/padd"], + "modules-center": ["custom/padd","custom/l_end","idle_inhibitor","clock","custom/r_end","custom/padd"], + "modules-right": ["custom/padd","custom/l_end","tray","battery","custom/r_end","custom/l_end","backlight","network","bluetooth","pulseaudio","pulseaudio#microphone","custom/keybindhint","custom/r_end","custom/padd"], - "custom/weather": { - //shows the current weather and forecast - "tooltip" : true, - "format" : "{}", - "interval" : 30, - "exec" : "~/.config/waybar/scripts/waybar-wttr.py", - "return-type" : "json" +// sourced from modules based on config.ctl // + + "custom/power": { + "format": "{}", + "rotate": 0, + "exec": "echo ; echo  logout", + "on-click": "/home/lostecho/.config/hyprdots/scripts/logoutlaunch.sh 2", + "on-click-right": "/home/lostecho/.config/hyprdots/scripts/logoutlaunch.sh 1", + "interval" : 86400, // once every day + "tooltip": true }, - // to use the weather module replace with your city or town - // note: do not use spaces: new york would be newyork - "custom/weather_sway": { - "exec": "~/.config/waybar/scripts/weather.sh ", + + "custom/cliphist": { + "format": "{}", + "rotate": 0, + "exec": "echo ; echo 󰅇 clipboard history", + "on-click": "sleep 0.1 && /home/lostecho/.config/hyprdots/scripts/cliphist.sh c", + "on-click-right": "sleep 0.1 && /home/lostecho/.config/hyprdots/scripts/cliphist.sh d", + "on-click-middle": "sleep 0.1 && /home/lostecho/.config/hyprdots/scripts/cliphist.sh w", + "interval" : 86400, // once every day + "tooltip": true + }, + + "custom/wbar": { + "format": "{}", //   // + "rotate": 0, + "exec": "echo ; echo  switch bar //  dock", + "on-click": "/home/lostecho/.config/hyprdots/scripts/wbarconfgen.sh n", + "on-click-right": "/home/lostecho/.config/hyprdots/scripts/wbarconfgen.sh p", + "on-click-middle": "sleep 0.1 && /home/lostecho/.config/hyprdots/scripts/quickapps.sh kitty firefox spotify code dolphin", + "interval" : 86400, + "tooltip": true + }, + + "custom/theme": { + "format": "{}", + "rotate": 0, + "exec": "echo ; echo 󰟡 switch theme", + "on-click": "/home/lostecho/.config/hyprdots/scripts/themeswitch.sh -n", + "on-click-right": "/home/lostecho/.config/hyprdots/scripts/themeswitch.sh -p", + "on-click-middle": "sleep 0.1 && /home/lostecho/.config/hyprdots/scripts/themeselect.sh", + "interval" : 86400, // once every day + "tooltip": true + }, + + "custom/wallchange": { + "format": "{}", + "rotate": 0, + "exec": "echo ; echo 󰆊 switch wallpaper", + "on-click": "/home/lostecho/.config/hyprdots/scripts/swwwallpaper.sh -n", + "on-click-right": "/home/lostecho/.config/hyprdots/scripts/swwwallpaper.sh -p", + "on-click-middle": "sleep 0.1 && /home/lostecho/.config/hyprdots/scripts/swwwallselect.sh", + "interval" : 86400, // once every day + "tooltip": true + }, + + "wlr/taskbar": { + "format": "{icon}", + "rotate": 0, + "icon-size": 18, + "icon-theme": "Tela-circle-dracula", + "spacing": 0, + "tooltip-format": "{title}", + "on-click": "activate", + "on-click-middle": "close", + "ignore-list": [ + "Alacritty" + ], + "app_ids-mapping": { + "firefoxdeveloperedition": "firefox-developer-edition" + } + }, + + "custom/spotify": { + "exec": "/usr/bin/env python3 /home/lostecho/.config/waybar/modules/mediaplayer.py --player spotify", + "format": " {}", + "rotate": 0, "return-type": "json", - "interval": 600 - }, - "network": { - "interval": 5, - "format-wifi": " {essid} ({signalStrength}%)", // Icon: wifi - "format-ethernet": " {ifname}: {ipaddr}/{cidr}", // Icon: ethernet - "format-disconnected": "⚠ Disconnected", - "tooltip-format": "{ifname}: {ipaddr}", - "on-click": "xfce4-terminal -e 'nmtui'" - }, - "network#vpn": { - "interface": "tun0", - "format": " {essid} ({signalStrength}%)", - "format-disconnected": "⚠ Disconnected", - "tooltip-format": "{ifname}: {ipaddr}/{cidr}" + "on-click": "playerctl play-pause --player spotify", + "on-click-right": "playerctl next --player spotify", + "on-click-middle": "playerctl previous --player spotify", + "on-scroll-up": "/home/lostecho/.config/hyprdots/scripts/volumecontrol.sh -p spotify i", + "on-scroll-down": "/home/lostecho/.config/hyprdots/scripts/volumecontrol.sh -p spotify d", + "max-length": 25, + "escape": true, + "tooltip": true }, + "idle_inhibitor": { - "format": "{icon} ", - "format-icons":{ - "activated": "", - "deactivated": "" + "format": "{icon}", + "rotate": 0, + "format-icons": { + "activated": "󰥔", + "deactivated": "" } }, - "cpu": { - "interval": 10, - "format": " {usage}%", - "max-length": 10, - "on-click": "kitty --start-as=fullscreen --title htop sh -c 'htop'" - }, - "memory": { - "interval": 30, - "format": " {}%", - "max-length": 10, - "tooltip": true, - "tooltip-format": "Memory - {used:0.1f}GB used", - "on-click": "kitty --start-as=fullscreen --title htop sh -c 'htop'" - }, - "disk": { - "interval": 30, - "format": "󰋊 {percentage_used}%", - "path": "/", - "tooltip": true, - "tooltip-format": "HDD - {used} used out of {total} on {path} ({percentage_used}%)", - "on-click": "kitty --start-as=fullscreen --title htop sh -c 'htop'" - }, - "temperature": { - "thermal-zone": 1, - "format": " {temperatureC}°C", - "format-alt-click": "click-right", - "format-alt": "", - "critical-threshold": 70, - "format-critical": " {temperatureC}°C", - "on-click": "kitty --start-as=fullscreen --title htop sh -c 'htop'" - }, - "battery": { - "states": { - "good": 80, - "warning": 30, - "critical": 15 + + "clock": { + "format": "{:%I:%M %p}", + "rotate": 0, + "format-alt": "{:%R 󰃭 %d·%m·%y}", + "tooltip-format": "{calendar}", + "calendar": { + "mode": "month", + "mode-mon-col": 3, + "on-scroll": 1, + "on-click-right": "mode", + "format": { + "months": "{}", + "weekdays": "{}", + "today": "{}" + } }, - "format": "{icon} {capacity}%", + "actions": { + "on-click-right": "mode", + "on-click-forward": "tz_up", + "on-click-backward": "tz_down", + "on-scroll-up": "shift_up", + "on-scroll-down": "shift_down" + } + }, + + "tray": { + "icon-size": 18, + "rotate": 0, + "spacing": 5 + }, + + "battery": { + "states": { + "good": 95, + "warning": 30, + "critical": 20 + }, + "format": "{icon} {capacity}%", + "rotate": 0, "format-charging": " {capacity}%", "format-plugged": " {capacity}%", - // "format-good": "", // An empty format will hide the module - // "format-full": "", - "format-icons": ["", "", "", "", ""] + "format-alt": "{time} {icon}", + "format-icons": ["󰂎", "󰁺", "󰁻", "󰁼", "󰁽", "󰁾", "󰁿", "󰂀", "󰂁", "󰂂", "󰁹"] }, - "custom/PBPbattery": { - "exec": "~/.config/waybar/scripts/PBPbattery.sh", - "format": "{}" + "backlight": { + "device": "intel_backlight", + "rotate": 0, + "format": "{icon} {percent}%", + "format-icons": ["", "", "", "", "", "", "", "", ""], + "on-scroll-up": "brightnessctl set 1%+", + "on-scroll-down": "brightnessctl set 1%-", + "min-length": 6 }, + + "network": { + "tooltip": true, + "format-wifi": " ", + "rotate": 0, + "format-ethernet": "󰈀 ", + "tooltip-format": "Network: {essid}\nSignal strength: {signaldBm}dBm ({signalStrength}%)\nFrequency: {frequency}MHz\nInterface: {ifname}\nIP: {ipaddr}/{cidr}\nGateway: {gwaddr}\nNetmask: {netmask}", + "format-linked": "󰈀 {ifname} (No IP)", + "format-disconnected": "󰖪 ", + "tooltip-format-disconnected": "Disconnected", + "format-alt": " {bandwidthDownBytes}  {bandwidthUpBytes}", + "interval": 2, + }, + + "bluetooth": { + "format": "", + "rotate": 0, + "format-disabled": "", + "format-connected": " {num_connections}", + "format-connected-battery": "{icon} {num_connections}", + // "format-connected-battery": "{icon} {device_alias}-{device_battery_percentage}%", + "format-icons": ["󰥇", "󰤾", "󰤿", "󰥀", "󰥁", "󰥂", "󰥃", "󰥄", "󰥅", "󰥆", "󰥈"], + // "format-device-preference": [ "device1", "device2" ], // preference list deciding the displayed device If this config option is not defined or none of the devices in the list are connected, it will fall back to showing the last connected device. + "tooltip-format": "{controller_alias}\n{num_connections} connected", + "tooltip-format-connected": "{controller_alias}\n{num_connections} connected\n\n{device_enumerate}", + "tooltip-format-enumerate-connected": "{device_alias}", + "tooltip-format-enumerate-connected-battery": "{device_alias}\t{icon} {device_battery_percentage}%" + }, + "pulseaudio": { - "scroll-step": 1, // %, can be a float - "format": "{icon} {volume}%", - "format-bluetooth": " {volume}%", //"{icon}  {volume}%", //{format_source}", - "format-bluetooth-muted": " {icon}", //{format_source}", - "format-muted": "", - "format-source": " {volume}%", - "format-source-muted": "", - "format-icons": { - "headphone": "", - "hands-free": "וֹ", - "headset": "  ", - "phone": "", - "portable": "", - "car": "", - "default": [""] - }, - "on-click": "pavucontrol", - "on-scroll-up": "pactl set-sink-volume @DEFAULT_SINK@ +1%", - "on-scroll-down": "pactl set-sink-volume @DEFAULT_SINK@ -1%" - }, - "pulseaudio_pamixer": { - "format": "{icon}", - "format-muted": "", - "on-click": "~/.config/waybar/scripts/volume --toggle", - "on-click-right": "pavucontrol", - "on-scroll-up": "~/.config/waybar/scripts/volume --inc", - "on-scroll-down": "~/.config/waybar/scripts/volume --dec", - "scroll-step": 1, + "format": "{icon} {volume}", + "rotate": 0, + "format-muted": "婢", + "on-click": "pavucontrol -t 3", + "on-click-middle": "/home/lostecho/.config/hyprdots/scripts/volumecontrol.sh -o m", + "on-scroll-up": "/home/lostecho/.config/hyprdots/scripts/volumecontrol.sh -o i", + "on-scroll-down": "/home/lostecho/.config/hyprdots/scripts/volumecontrol.sh -o d", + "tooltip-format": "{icon} {desc} // {volume}%", + "scroll-step": 5, "format-icons": { "headphone": "", "hands-free": "", @@ -264,82 +217,72 @@ "portable": "", "car": "", "default": ["", "", ""] - }, - "tooltip": true, - "tooltip-format": "{icon} at {volume}%" - }, - "pulseaudio_pamixer#microphone": { - "format": "{format_source}", - "format-source": "", - "format-source-muted": "", - "on-click": "~/.config/waybar/scripts/volume --toggle-mic", - "on-click-right": "pavucontrol", - "on-scroll-up": "~/.config/waybar/scripts/volume --mic-inc", - "on-scroll-down": "~/.config/waybar/scripts/volume --mic-dec", - "scroll-step": 1, - "tooltip": true, - "tooltip-format": " at {volume}%" - }, - "custom/keyboard-layout": { - "exec": "swaymsg -t get_inputs | grep -m1 'xkb_active_layout_name' | cut -d '\"' -f4", - // Interval set only as a fallback, as the value is updated by signal - "interval": 30, - "format": " {}", // Icon: keyboard - // Signal sent by Sway key binding (~/.config/sway/key-bindings) - "signal": 1, // SIGHUP - "tooltip": false, - "on-click": "~/.config/waybar/scripts/keyhint.sh" - }, - "backlight#icon": { - "format": "{icon}", - "format": "{icon} {percent}%", - "format-icons": [""], - "on-scroll-down": "brightnessctl -c backlight set 1%-", - "on-scroll-up": "brightnessctl -c backlight set +1%" + } }, - "backlight#value" :{ - "format": "{percent}%", - "on-scroll-down": "brightnessctl -c backlight set 1%-", - "on-scroll-up": "brightnessctl -c backlight set +1%" + "pulseaudio#microphone": { + "format": "{format_source}", + "rotate": 0, + "format-source": "", + "format-source-muted": "", + "on-click": "pavucontrol -t 4", + "on-click-middle": "/home/lostecho/.config/hyprdots/scripts/volumecontrol.sh -i m", + "on-scroll-up": "/home/lostecho/.config/hyprdots/scripts/volumecontrol.sh -i i", + "on-scroll-down": "/home/lostecho/.config/hyprdots/scripts/volumecontrol.sh -i d", + "tooltip-format": "{format_source} {source_desc} // {source_volume}%", + "scroll-step": 5 }, - "tray": { - "icon-size": 18, - "spacing": 10 + + "custom/keybindhint": { + "format": " ", + "rotate": 0, + "on-click": "/home/lostecho/.config/hyprdots/scripts/keybinds_hint.sh" }, - "custom/power": { - "format":"⏻ ", - "on-click": "exec ~/.config/waybar/scripts/power-menu.sh", + + +// modules for padding // + + "custom/l_end": { + "format": " ", + "interval" : "once", "tooltip": false }, - "custom/lock_screen": { - "format": "", - "on-click": "sh -c '(sleep 0.5s; swaylock)' & disown", + + "custom/r_end": { + "format": " ", + "interval" : "once", "tooltip": false }, - "custom/light_dark": { - "format": "", - "on-click": "~/.config/waybar/scripts/baraction light", + + "custom/sl_end": { + "format": " ", + "interval" : "once", "tooltip": false }, - "custom/notification": { - "tooltip": false, - "format": "{icon}", - "format-icons": { - "notification": "", - "none": "", - "dnd-notification": "", - "dnd-none": "", - "inhibited-notification": "", - "inhibited-none": "", - "dnd-inhibited-notification": "", - "dnd-inhibited-none": "" + + "custom/sr_end": { + "format": " ", + "interval" : "once", + "tooltip": false }, - "return-type": "json", - "exec-if": "which swaync-client", - "exec": "swaync-client -swb", - "on-click": "swaync-client -t -sw", - "on-click-right": "swaync-client -d -sw", - "escape": true - } + + "custom/rl_end": { + "format": " ", + "interval" : "once", + "tooltip": false + }, + + "custom/rr_end": { + "format": " ", + "interval" : "once", + "tooltip": false + }, + + "custom/padd": { + "format": " ", + "interval" : "once", + "tooltip": false + } + } + diff --git a/dotfiles/config/waybar/icons/brightness-100.png b/dotfiles/config/waybar/icons/brightness-100.png deleted file mode 100644 index 1e28ac3763fe7eddca4f1fff29939db1c7809a6b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 32959 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 diff --git a/dotfiles/config/waybar/icons/brightness-20.png b/dotfiles/config/waybar/icons/brightness-20.png deleted file mode 100644 index aee9c5236e02ad813757508930548b0b67a07c05..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 20950 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 diff --git a/dotfiles/config/waybar/icons/brightness-40.png b/dotfiles/config/waybar/icons/brightness-40.png deleted file mode 100644 index bbedd1c7d437260f0a4a461fc704b054d8d061cc..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 23444 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 P1b(jQ8tar^z&`jt6i(0( diff --git a/dotfiles/config/waybar/icons/microphone-mute.png b/dotfiles/config/waybar/icons/microphone-mute.png deleted file mode 100644 index 1780e33045f0980559549c659733c7a6a9b6b137..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 27368 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 diff --git a/dotfiles/config/waybar/icons/microphone.png b/dotfiles/config/waybar/icons/microphone.png deleted file mode 100644 index d1b6d767e82928abd67696a98452e48726d94a9f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 24921 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

B6V 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 diff --git a/dotfiles/config/waybar/icons/volume-low.png b/dotfiles/config/waybar/icons/volume-low.png deleted file mode 100644 index 17cfff7805afe4c5a82518413a53977706e1cb03..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22565 zcmeFYWmr^i*EhUphEAoVOB#mmmXMN=7L@KBx?x5M5u_v)2}M9kS|mphP(VOJk&ppI zKsuCWo(=xJ?&~_<=gWP(_w()6Lzr26oolW0w_=}rt!=!4o(3rqJrMu^q*|J4h5!Hs zKSBWlJn+|E@YoRm(2|83oBJEu2C*W1y`5Y=99jKC5RR;l!LCjK5Ii~a2 zM`0U2Th9)^3EFM@(=pgbc_d^uxPHnPi9LJzR`KU@%d*nj zj+Pnc!2!GP+NG;uhAc)QR@-eKIQ>_C&{}ZHWzf6HufE=$D*dU>>(O!YJt&5meWjT# zj_G>Socs{KKy3Dc&!^za3lCO8>Npb=s)|k=Ph%P2zv_*yX02+4>23Q7%)Rm0?^iH$ zza4_#P7mWI=8I7}4TuUwx4Fe!3O`PyUU;zWI$0phrLZF*O0gkVx=6UyyP2%i=gxjl z{ibPxKUB`TB%3o__3j>r>~?qOZaMzF^?gEu%UOaXTpXgxpO+sP+qStvIH>hW5YZzzZ+`9 zO)XX&$Bg~p4W{MLZd=0Wdb{y~#{mrRhH35cj~4E251GTD;ySNpLRZ_8-%8*+Gczh2 zbkd3qith?|eRi$;sMz}~+||wf5^3%X0x-7$% z4>RHYm0!GCPLqZz+D4B?H(4Cut#vf{H&zmU=SX~$IF?qwluNak7_FWKqmz1pyqnaQ z77PuF?EV4ewTZ9aFl9Xtw_S#n|NOHwS&CqWfkcewiKpmM61LgS-Jz*>Cc9 zf0tKyei{xH{ryt~cbvO9c}Sn3hBS3Xe`q6!<(=!56xqUo2vvpA&JD+(V>QQ~@or>n zrmMYy?c*_R8^$b)?MJa@gTK1yZ|YCw z|Gg@;{eu0z3F-4qratWu3#LL#iz4TVZ}XiYzLu{O#Wct8ZaZ@&RmDENZv>N~gMQj} zMOLgHF0Afmjs~*hXZX&%&^HJIm_3V32{C-O6_YlT(zO2XOU#OGL-y0%@r|l7bZG_S z7fua_WJ^%*UN>lod^7zZg)5@zQeMR%5f}!qOMfv@X)*frswH&RGyjdDMR$^Q%cW># zf8yO=aR-*TpPfo*p7Hk!eweGty(Rd*%-3+C3U7&980)?G{T7jBJdTvT+TEi!D~HD`KdFCs6;?dOwYH9L z>`3$ax2^xBtP=h&q0}^?HuA4dHuGncBIf%2%sSptZpz%2(huD+Rv$=aW*nGy?^7Jh z*(LiWnk?=__MEx+E0yKrN})7{_mM3bvA5zTr(d#=u@cWb=Fil5a;Rs+{)|EMQ=SXT zt)HEj_DtZh9Nao7|0B(>6jjOeZh^et<$Nd)!C6b#!xoKZTpo-1VZ2)|l&V+jeX6?C z@I!tn<4XsZ(Q|Ofi6r&E4xbTuL-Ou>*V^d}_roV%m7F_wg@zm-K{&N-o@(hgNITPK zXrgQz6kdF&e)83KW%4U^q0drIn`fwh_skn#%k_$pW&5occS~OiHK%w%Y!fQ$$scN% zQxC213^a#N{hF5Tftp_l7>7C!_CB|hjan?e;R3VYU?gY{m@Mh8=`m6WOKn(KDZatc zc^9yAa(O8#IPysf_ZGf6#qv(M_@q_H7v>*!cIA269xrdBqxOA(K{@1r$?xKHwzxnd zromgZe4Z&fP2rBo;r2ydtuKV>=nf15j{I5}FcStO_vv#<1tG2?umA`R5G}>ssNVam zH}qv2OS5c`mFBNm(yY4KhdQ^k|sF7i|8x%GtWI~ z2eSh3XqolOAhdGn*uY1GJ9_mmwWE~g{o9?cD`tr*a zx>g5w4v)HB4Ge!p2g&6s4uxpzky?+$Lo#mh&_CFoUznUIaAp?QDi~2Ng(}D?!#UBp z*T}A`W5OqC_zA*4CykwsUdsDMIKj2W)cuzK0sluUyXj;WqCwVAgg-`ZXL{XpO)J<+ zH(920iDr?g#l1ur#+?^7x7fX}Gp{SYSOubJk{nGYcE3}zl)DItcXUymidZ=0RR zaH=Fj6@l~RYa8WHjM_b)AypBhXZrTm*K>aR)$B??4cuuO0N6>zU+s+X?5>)|0ur~w zwIzLa_Fs6rt zLH<;lL5EuK208J)Zw5bGZyuqD+bU0Pa;kX0ZxoxBITlcUeWP|HELvw9$A&QY{^N&t zmCc5|b3AY?#Vzm8YtLn|?M zDCDWH1G9TCAf5g4Rtrz2>x#UsjNHx7x3$Du@Zmayv<>9&=SD(5i68?Ugv09UuHRy7 z%a_-Z$Ci?D%G{HN%AV?(Egl$8JX{aKXTO0ig{9~cHw-Z1(H8sL|z*Z??$&d*ze zulJ$Z_5ibA`| zt(ftwM8figp%wz8pX@K^!*j&N+V1qr1e5(RqS|`oLh?*EAzDP=tQlRMl!61NY=ho) z4EEFM4y7XJ^GL}zm}hOWql;}#83K&6cDOkL^(=&kkYXt>Uf%yGb1kra)mBedRU9?f$PpV=09j zH6jR2Z_+ztd!q99;!|{Y_y~4dKQGr6PNc~0)soUO+!W=TCYQ#XWHWFQENOGTb*(4f z6CjheYIZAKN*TXJ4J{p#>B=i5=(&`SE4p|2sn2~!V4hdo4bSl*V)>vx%+&j^Dh6LI z5997N$zY6MS2fL|HX9Nz=Es9qFBPmkhOF_T^tzQt@rxFx!1kM0PBpumO>3+HYalJm z-{~Fh<&Bb)+qtCsTlQMTVv+hluhkyg&ZQvvfw_$Y>F*Cq>oj05zs)NtV^_S73LZ0` z1^-+wOwotVk@zz%;X%LX1mj`W)Ln=>BYYTspRU#&Z;mjGVWF86W4dD+HjAk$6)9OBjH)emC7eI( z$}cylJ9EI*ZdSE$CQdkLOKrrfuok#hwQbkqeK2C$6}c6kUSt^rda}PLv!pPMIf}V&x4-~?Q{aT`k=wL|i>agQiwyI5J^VQTA0C;8?idFb- z55F>1?L>;?`&uF+LFm}Xsf;X z_pw>nJFCijTTNmfG1>EN;`h%iyvW}WS14rmUhkAKrME!hRb;SsjBpDEEd2qO35$+3Z;ouCGIg_hZ zhtkb&0`3D65B%fgG|1wIL(mXdmOK^I%yX54kDr$peS#ZB? z>u5PQpJ9o6@s~J@!hx64{-eDkqeXR1m)!-)dl{qYD-Xk!E0*Dv9!vugKoXCN0?&50 zzyfh#m^R(G_2MJpjrHKrN-l?+pR2BSCM)bP^~dX@t5DVN3a$!Mu(K+&M3@!5jUb4p z0Ce%`qksDNXZWXil1OKzlvJ6gCj3b5x0V>HZeEyg$ zQ>0h=^Wl3JoCLp-hU6qgIeV!dx%M={ z5C0H&@?fqX^F3pX(`VW1w(&Ck)%Ly)2R0fgX^e`+ZCVjdZY_OX<4ya3s@p^^b`NpN zwyGM%1b@?yO_djaaZpdy^VMsA)jca@dge5Yo%Nu3YD(!wv5;%MqKtj6&A5*It?{G+ z|8rBtkJ>klt=zvJl7zb)m&ixxjM^;^YC3jI9(QW^i?^k?iPF*Y&+J3yJkrP}8D>c-A~O7< z7%j&yY|=S-l{vF3`+MxFg3AG<1u1gy$aeC|n%j0baUkr+Z_*aQfH6Z=!y>W55W!T- z8__W4k}rq%eYL`I)b72fw!YU8X}^>)-byef%+$9X*q2Rja3DrnRbOK%AqsE%>gaPwwhJdsTlI31MEY*C_}AF7o!O<1wU+ggcBn*04G#&g2a%kqEBDS~I+K4MRz97<^5k{Y ze#muUB(o$iHrGkf*7saLc1T;54J5vCO_D+E?d4BU@k4YA&KN_%J!93x?hJN_DcryI z!`9rB67`fNT^;)6I8xEC91V4;z=KfC3m#al&U3?qCcak>ULIDZ;;KAqK4h2K7XAO5;ELA!nz)xkYF zX9FXlsDI;s*^Ku36$OAg)zZLi&}1BcFI|9|hEg(`xd72DK4+-F>m@ZJD$RvM2~P*= zFz7Hj%Nye^FBTi9v+D_DY?nK4XkL9DTHhRK_*xgP(a_3b{-yaVYHIvDnaapzRRq zL=T8G8hvd53qQ`F>(UL)_iBnP9|&BPCJPDpm`YMoaOZv^aV)Zbyf`~E;&XUrM1dRq z*k)V!=;M(W4f&2N4cJIF>N|%5$BD^~ERz$PY!%FLZ-1!-H9pID>Tba{R!bh7$?TKu ze-OcRrbzGPJ2a@9J@QK!r!C%F{szMVpMpI6Q-$gJd_xOaS`LBDi$XR6B*cFm*E|Sd ztiFdRElKO3!I)7rB&n&7a!JzI>Q*)w)>_Pu&~H7p$Z;r+IU#xeGS^gMu2=D9V#^X+ z)5_$8V~P!fMAmfzgX!$`TgPv2$h#};)eof1>BtlY$+&mj=s{_FSK7&Wj2x>i7Hsmm zdAg8Qex}0U%VgMnsUm+`8nb+CA@*QHFq!%$!3eEM0(PRRw9O*EHVOBMMRuDF;m5># zn6y>JRi#3!*xd?j;`|nk*qnk@2E)jErGB&9@mIV{Icx)tsPXKUE%}iXvMG;kHfJn% z5``C*8IHK03X-aEUnV2N8(i5L>4yfh;(M0NRi)zL;Pa3;Ub*ZrO-*WJ(Ra7YMXquJ zF3z(1OpTutQm+P2nj55iXXg0yabUKKBUK-JwV{VkAy*EdC5_*X- zvly2h?>;0hpZtFP%EFDiG(WVi&nD4dCJd<$B>VLFh8*1;9Dv`RF0nrZx3bYdipwq` z>6 zj9IQ~#~_=Ys^(jjf~#-|&O6#eE|45jL!OUx^+(ewe5v>ML?6S(-X0SUu%d@sZuQ4{ zTJfr9OlLd*QcOqAHj6xuYZB?!mY?9cl$jnACP{wzD6eJ|w#4VThBu(9#ma;c52dDk zWc4JNzL_?LY;f4~4ndqA`cdL)z4br~fY^o$g|adz9~j^(5L+rM{(R)ff4pjIk>cBX zeZ_D5DY@pXbHL30B0thf=v^dN^D)5J+@-=c{xtZVEmbqHadpq-sYWx~@g;UvH8r|t z*SB6%X$OzTY(Q_69(twF3Mr#qVmq{ulXdpPsqW3MY?I%#OjF_b;@}9f&`X#aKKfXX zpn}fo!0ir|)o5uVy?j-k>4a7zvx*oDDmA8{7VGcHNBbDIyhcW-I<2OZ(9K@PDYe%> z-$*LRm0e4JX<(_`ekyQ+B?ak1UK#!&^6j2^3zehKt*zm&-x zE4%lFuV;nEu`6{Ob=79qb6q1MG^?TGAKWQfrc|%j*9aMw7q{3NzI7ZIuJsD|9haut$^9xw@HnZk!9!)6icRUr~KYyODsfj60QqU8_3Q;;UB=zmyuW+$hgR za{XW>BwSsH>&-)sPZTU4MxZhV#5aoX$19t&RdHDt*rBvEDVicP1qzvGB;x({TA&8) z%VeX-#J8>$gomFO)pnXaeYI_ti}PW>>B;aiQ3)CZCS@LUb2(ChXo;j!#}Zea=<%)S+F~OScYTt51mfii!KQ8V=*xcjTCdO> z@7szP9yiRe?`b$uYN9t3^`6LnB}>wJd~ahaywHaP+gex@S8nV zmywjBCTXH7Tzn;(ax%feX4xj9yBPfY&mTQ{mXLnXQ8dinb8jKCwPn9444>easL@9> zPk~!zs@}V94=;6+c6MZ>zb(b(_?#mTzKrOlgXXy8S3x3qixC?`pPql$#XC@&rz>Wl z*_PcND}Lekjhn14t>{udWiqY*wRw%Ie!&hOL0N&Vf$CJPq04dc-F6K9o&(yk+Va;J zO^hGz#8mVXEx`xf-t;}*|1Lzb*s#c1HOi<4B{o+hVs|jEL5T{ya~anZNi9BYic^|D zF#4YMp#gF|Da5!y#rFggwbf!-C#?8`D`sA~H^DQC1oHMy!Ogn$P5UXYT;R+ZqwRjk zA7FFzXwO0?ff>>^h3*c}d9;u0XR^U)Ws!VHJrR#lfdnf(_wIv4yjI>Xo3iv{DIr&m zZPxw<;K!j6skL9^zs-F8Hr3($`1BM=B=oI$7vky-j&M$0!BLI5?hRRcZ%;v62X8w^ z!C+4WILZM4d8J^4t-ZUWKdYUiv#XZ^`({fAJFBaM0=t=nuCOjb)zQUOGt}47C{)kb zKGfY_#(`Z)kw`vR78Ky==x@s!?CIgBoq`BBp4(n=ON_jN`1yLx-Ep3Ahg^A7M=U}p!fv;MWu z6QQg7FY#V}|DXWkArx$j5E2m-7V`8I`u7!n{_26CkbeyNzpn5z1}9!ZhK_#T0lxN* z>Vb}4{#XB9goFLR)*}LZJubH6U@zq8;phpn`hi+S{zIjPmaf6SR-8lN?COcQSOtRp zADsTKPX7hgf7o_@ z6fWor$`O@taFleCmV%2(I@-gwb8QCmA($$t}}@9PRirLD)m zTXinV0Td-IB_=HHASnrVaFTL@i%U2;!KEc_#o=~Nb~3`kB4W~F61Eqj9PDMUd;5CY zg6?$nv~_kALU=h}TsQ|@_L_l~0=uZ7@PAPZJZ$})zy%8IH(b2}g8%D+v8$(}k-zOZ znj(@C!jhsQ;u0bfG7{2~f3|%g&(zV^4~)cfnIgi1Vt?eGyG0h<3<#|4d7Od*F2sU+ zkyZ6|wDtG)HTL%QP+&h7!Fs;(BD`7U|2Rd{)eqzdIgj{%V&2Hn=g+r4Dd6FHafy}n zB5Y-C?f)q8vki1~xKISH`*X?O#n#K&5zOy@0_rc__5b25aa$P)QF~DbxSixV!ZIQv zaA_w|Nw~11q`0uOn4`V0t=NA`_w#o053==jyygt<6xa4}n92e`Nt7*4j5PNHxr zQE@SGX-OGrQJMdlEsDa0#o?l&#v&53qEfPABLBHXd7<;d_1CHLLjNDP|6%yIN(Vyo zhXz(qupkTlt0Mn{*?FY=Km7AgxcxuW0E+%!CI2ma{}-`QL)Jl1Ctg5TSX?4}3)Y za{dpZ!t*2;B;xyP>8j)Zz@Z_OVF8>p!U2F4&{Df*96Y%`6VjUQc#7Tra+`#JNRTI% zfvd{Zi$|~kSxZ+?fr_WkS!_>_{3tpV>GW9VvAdR&7jJDDzSRA0G^vD?wyuE+;w`n| zXZOgcfwx=2OZO4ToYhDL7INl3Y2S^ZC9$qwdG1ada&a7$HhL!0xzI|aX~+XCP9x01 zWVYQ^^&lO4dK9g)J-gc)LE}Ew(@OM?rXed;$v2z!`uu!Me6cW zVJ+K#JT3S3Ht%0Qq=<@CtR={9m%n6;J<@ojI0tJHq60W8%W&PEj(EMHdr1HkG^-L_-1_BgKY z{$A;!ywEOC{p>YLX9r&~aTwZn2^oSm3zAb@jRIX+`)_1gM7l^U<)_4Fw^$nUgMPEnf!RGYZO zk`#iO{JDQ*X2n4Y0NzHJ=-XJ~&l=|_8k(O-;l{$A?luTS;~|HbdIQkd#iK9^wwHo$ zX*3<%4mNS*$^07`%Gbngv~ATqZ23Wv#_%=$s67O415rJlyBsw!E zaRbS~$Mqh!V|w8?!t7q&7Yhgzu(;@ao^8{X_If6i2JzMT!A2F(HH$3=N)$r{!OfQA z`Ript&~~p2_N0U;Zw#MYjcGj&7tQr|ryen&seP{7v*b;qOW!RTWQ41Pf1L0873b#cp2HK*#>*q@q_I3-{cQ9r)f){HK|ty*n2<7(#s?P(mwak=i_fc zP7ssLLAPy#<+~-{g8>lH#Judp@cBtOQP%>h@fseWwYo8mZ92G$2@AAqbHgDKBH2%W zdmc(s30NuA>_mKRH5_3Es^qX*^B%Zk)1d85VA_M5&+xc&E4aur1)@BXCF&YJjY|u{=2v!u`zsVw z8IjW+MQkH5Jndy%f0d|f-t+>7^4bG$AQ2K+&p`bOg2=sCdFEm&B_TJGlOROLod)y9i#yer8)|T>0dq z!~Gszq!n5j^FF-dbTdb^nRdAELEAB{OAZ6A;;&DFFeC@iqkq3;$(FBL>tjq~Ck)-e zi@1#F{oK|$BC+!6By6Gm@Vz&3gPI-y+A|nvH+C++8ato^Tz}DEUm2V<&vM0Q1oBt! zgZ$Q?{kQR50*!+kwek@-!?@W-g$gnQ8m%Crv`TDV1k?CM{)69lbnR^cLt9!A z*g4&!=xt?7%uAxRhb%bh5M|%(WJpt6sEAIt2Aa)spG2ziBg;sUem2Y>IJ2-lJq)!q z_xSnT8qDq~LD&(O@sOd7a(Uj|O2Bs4<2^!Ru#WZuSBxiSA6c=15x`sb>WsU`2+6`_ z`uRg;XsplbQJmxor668aS%KoAB$5O$q)`wTiG($A)zn6gmN_4chMpW^@o&6Lv0_@Q zQ~pz8zM+L5EXC<}&r~dV9&kl;8e&{9kBFADT#TVqa%FyT-NBh<1!5c0A?l$Fw&P0#Y{^Uu25L}4L7t=kv-hN zws)Nj39A2`!+@+J9Iv}1?Ur@5Gm%LCx33c2aF61hbJK*K4CPs*MGDi1(AzDHmziH- z7WOxFKH%5a(_F!R@L@&x*g2jCgXnBh&$bzjP{0cstj0nO zT8M&wHLfLyeE+Yu*~w#2p@Uwg-O1@PkbZS@tF*cy{+yv4fC3-(9{p~5i!rC9O zw%*-F-p>Zp}`kse9vwCnE<2l7uDBA2LT zD!Pfm`2!-Ne{7;YbbFSou+|FqhI)XR-JDkbejdI==aLO zu52LL^V|!P+jf+EBg_lp3&N$^J2*%54>Su4J{mS8!_tMd%)lVxZ*Is4(@d}z*5<+R z0@fHaFSLUm?6@pUG{Fg`D^4g#{vr3rC?yCJMVT{XxO~CZw(#U7Z1cUAU>ets3=^g3nzXQT2B% zoF{U|yAA{jk7Og<{Jx&~dC>{k_P(*Lrc?=fn-ueYFfK;_!h`iY^ZBqdC?lBOED!~` zAR_O708BukK*v(i4!0QvfB1Bsot(FSsmWiKR;sDh+xW(t=y!p@%Wmw;3F;=cnp(k? zZ@ecT{>IxYSQjc>#gP;iIe+2Qk%TCn0-^~Jykh7qxSZ-w{B$kqcax%yk*0(hzvzcs z!b+-#|0Ks1tg8qR1U&{5=~y{=gQ-jYpDe%~mMaXUfklJ`lDv|(xTr?u*imF1n1(G1 zaS>~cRL?`4WMWFh@^48lX7aayVmJR?T(3^NVbz)(m_#0E_3($NL zfUn^|iSi-^xIkQl5oMzpV61{g?+IX!dIjcS0$K``s`Iq^TtL@Qemp7aGJ4~p?tbl1 zJ(wWW0bTxLhQMF1G*2IS^_Yd;Nyb7;6e!&*$L0gv9AMdPAIA=F)&CWI51DXYbWh1i z&xR5`UZ-we}W<-92a9*mRTMa?){{FZmRVumV!3dKuZUO zx;GiO1o{Eo80ZHsRSzVNBw)SJ zngusi93KLMU|>1`2H!4BL;Ux@TZ9w)4@c5D&W5+-vpg|ZtW~E3*Nmrm9cNvJC&F!&kZ{o$L=FpI88tA zlMPXYY|J~PEu%K$I~#KiM^Yjb6-wt^Se5@3G;l}fkcMyg-q2f)eJE|)mbbK zs(FZ$q1+^{OJ7boJ^dZ;d5!Lx@E1nDo#Q0=OdG3t#fpbxAgKSf>j z(m;7b?;urC#YwGeZTNe%BZ95Y{O8O2CfhGdL60D_cw}AVvZiV3%K2>gaZyu5;LgJf zBb>V#hk40+jckyw_V^7U2ZJg1x@J9NKnU7h=DhK8p}9mJo6`J~G2G0IXKoCjM1yh# z=iVRa9JN7?O5z!Z@qB%G>61xG%``|sV@wApf(#+*wOe8bR&~!54j5Xy{kM}xju3(k z0gVh0;v7XmKuMVs=jtn(wxkLU&d$`)JxTn$U~vZ}g@X@Tpw;v9Q2+uq+#|xdWP~ZD zBqw`yVK7j=o7+T(D~Q*gJUgd<6DLVwyI`xR@?6hOca$)Kv--tztOa_@9tA1=&YP-66vEoSXUkBDN#nCF^oSD!UctUgmL8t9H9#PBsC3VVdvZ^ zWoj!lH-DAvDH`$AGo^?GA6fbBK?yVpm;UR<4O-Rh2M^PVD)7#UN|359qa&woaZL6o zImsteO~dOjwCU!%M=0y5`GIU)#*ib_9Ob!zq=01`CBAXTj+taQ$)5BvdMmRsr6>^( zNwfK`3pM34rNo~Jg$;T!Sk+RerGEm3=bujC(UN-DxQi{M*Gc9{Q~|m(H55u|izINUKA88bVu);Io)I$W-(lr5T|c)lBEP*?zEuTt(qERz8Enen9KWqdr2J@p`cJy5??S=b11Xgbbux z9SX z8I}Q9;xbq;Qr>)NP3p(=nnO!H;0`echYy?H5d>kneZr|_(ai*4(uu0dffJ9PzvtLB z1hhu@@Q^*5-4RFy{`z7pv{$Jif_5dCQ|riA4(K&;QSd`C>wB`C&AD)DmCb19L*93= zFaW*AHt>9?#+w73w0e37u#8t@M18sB!0K1W3~YmTzC{J!3E&>jNVQPvz^+iwtvL&G7^ezr}k~l+tNrY3MBzr zOwl!ik>JIqtKh{mC|ZyjQL!&8sFhZG1?Z6mfB)nMs5&6kemN{ly=b*wPA$XJb)X(f zpLOV?xYgNcTeFaMz7RQuO#|y|-ynre#dDAn2}5T(Mkb13-{>B^zp0gG+ySv!5LN1t zNzzIyIwA)?f^7hfH!vF@1&q1>`pFv)7;NN2vRAV?w0!ZE(>TUefr)~FWFM6Mxf-xP z0mg%78hEPs|NQ|Euw(_}2-E>KZ~jL<{0|sa1_!9XqNDYd7)av?*lLhk_>rUy z5=enp>4zecK&UJq=wE682$cgr{FDL)@DzD>7uMRB)+Q!=Kwnvdb<6;;g6}R&6D+Sa zacGrwFacYhpe9i|z^V#qui!iMRb=TshgRQbGG(2Dd;bK_C>U8+WJE85#)G~X=52!B zX08RL_SS$>mE-_mf&Y89&{w~}0XbQaiyJtpR7nak!-Snju*W(8oY)P0t$Dcs#x5xg zJ@R9Y6w^Q?vjIo#GUjt=xwpd%Tw8#pH97u`IRY^4b^+n4yGaqMm~Y@M|3}hIFbjym zlO`^;|4Ah(?Dx~f*H8{Ei*=y7KIA}1xVF1#E zw9?was@fEit+#lat-AO+dKjdaPqtlVkharGGmXFpFwI1-)&*=lTD~k4C*4XbG9d?E z!@P}yBW94?;5jJBXAI12m2(;9(A$rdAGQFaAX#X6D|C7|RVU4OpA0~ML{H=V^uW7~ zbJEhax_!*#6#7FM3|gdYAcO{z#c8~0ie^DxksC;iVCp!p;w?(RE=75mna%e(v4ycN z=bkR|e7bw&xZoPhZVQkPm~mNP-%<&o3+goP$lgOCkMfc-~U!D@PMXwIUAUicZo9>JnmAxjVyG=9z zIq*E*SfSPE;C)_5St8%r&m~Tnw@!o@NE^#pG|#ofU-}PeIT=wkqylj0Rk&DMN8rU2m|i{ z16g1Vr!`xs8U-nM22*}{EZ{*v4(;MW4C(I^>qLaU2PGObw~v*~Uh%kmMtbtOk@Ka< zFn$wd@Q-IDZS}Qatx(*wvx%+Lnao2M>EtE7w%+mgaFqigN8g2as$l#rvk32@oCQN< zBf(pFnj8>5!7dNn_BSA(+8EK;q>nFOwyM7N09S85U zv$=$c_pPkHN`uY_uXW!!=K7dfA(o8E$FoyH&_IH+Iv$}(Q7 zy`|W~yYjpTOH+7SeF&hG41&dLhYY-K$nn`W(eDQP`RC`nGF7w~)evvT#BV1RvV(r` z!aeW^<0uUP12dv059eJSp2G*Dd(heCdG{;-TmjuXht`Tk4!A%P+kVG4<$xzO5_|yp z2Hs_WaS4}W*Orp~@gK(Egn1W%7&;H?}$U@q=gj-cPt#a!)8ssD&9V_-?PJU`$C1Lj^oOl_ry z@q#CBa(HUk3_MKk?YVd~>AqAQkbP|%jsl~8WD*kfW_vrkj{5v$#SEqCXbzC3l%@!t zso`*EMbun8EG)G)2Q;xvw1uW_t)X0Hu|2&D@gSrmfP^Z#!-f+(&DDA`#| za>Q+kNT%vunm-O%EaOFB;YJIR zjqG*T)8|AU`V08tv$DkvC0fIN!vde9tI$;;6Lc>Z^K+|?`5+k4~`3pDy9-?c_Nh}%-CCg6mkw%9GQ)V&(%d)pBpGz^^zJ{&tLii%x<4#EWCj{t$cxT;31fBn-E4iIbN_cu12W)0=$}$BD7lumWY_!;GPk;O5G^mAU z`7$@uk~!aSy{PDr4IO>D{APmWK(5*hH;P~@s@J47LUz~-alDmEIhfh`K3H~3PFrcf zG<3S6Cn6IlS;UKeveq~aF;H*u-xOw9*0L}YnPQ^#=}n&)CUjmK*X}^The?A2;3wNy zC|S^U7DSmh2KiN42-88BF`iSexKLn14xvOUAjObDt8>Y@sz$M@<^VvxbN(*C_Je2E zL!<;zueuB|85F$b zYsamQo<9`54vG3eN{~OHO9!L}5(G=;k==e|0Pq04ByKDlzRfx0u#c!bs);KT%|~BM z$CI;V_)i{RN8$UzPDtV%fcI7eO+?cCsQ>_0YWdQLY_I|8I(|rpTsvfQz4Ij;X0tbw z-1C(2qLY(gy~)6iAldR)arA^3&z!n=Y($?olqOZtQK+k^TZ9=6#KLaxp4X&OW`c)h zH*$y{Z{Ahb7w)-1fLGu}qlqcPP(Qmt~eZS~kH9sYveq^BV5SeSpJx`X?PNf!3R6mmk?9gA3hmbpLYNo zVv(nv9mq)Zd~_c@a2o^y+*-3LS`8BhjxxSwf7lNDV^-JUaf~I(8tiEOvghjc0*Mf1 z(AE>irmKZ%J7@)vsPLyZ`kE5?0qhHl7)Ur7PWN5(g&Q`Z0(eKz^S)#tI>O}9{Pl}& zX&D@6jpbX(!7p?Oh$0KZdAw+OSNUA2hF8I{AtAgB!d_s*_7D|YX{37 zQw{xTug|by1TiJ?8NXV}v}&?08nz(c6_^yau^|jo1ri_rAqI*HD}w0(-3W6roc{dB zs&!~RsSbE7+KcX+q%RG1vGe#5eLf+v$eoc4SKD4id4s)WD|B@nS5NE3oCH}*-{~_z~R~N!uXnwKb#1#vqFT4jn?ji zyasuh!FDC6t@$ZLKE*&m7a7*8pJ*L$F}7K60s4{G(0(8+oWg-8(M>P^>fc3Kp>w1A zj_8H$PNKm~JfEsH#38?qv)O=sYbLUjPZ$050PwDjdX91g8@>)F(FaBs1B&sv@Ap)w z5vHJ3ZXglmjk7BOxuX;IFz{qgLS3_3gd=U0GM!Bu7Y>t83TVQ6hEz=$I= z)}?2W3c47Qt+Qb$F`71}Dvs+UiFx9RUYH9E!St}C5@I{?0gZy5gp3?y`(3cZ_2hY4 z2}poUF5}Oyk=B2@-c^?nh+rIPPH+?~>l)7ZXC44Xp#f$DOpb;0?QO&#Ti1Kh3WVdM zmuN*C!%rSx^wHgBalyQYC4(c$V)O*>!b0Ys*ir!hCsZg5%!Ac(bemC6H`iZsEAbwn zs99P8LroPY?yjQ1o@vI3EY1T9TuF%I}xp^ zt%~ryE#JAK&4=GE^s+Xve=OKiRr+@w0}=Mv`;dB*R%g1g6T9o^HT2~`CSWG-)%LCq zv*j=BX!SwzA({=}pKu6lmxE7_4ab7QGKHa!Ats;}OSy}21r2!r>84VmI?x8OCZ68^ ze%0sd#cX5T4$-ou*!>EBP^Yv)5`9Nsk%HmRfZ_M0E&6UsT=+pN8mO*{a}dxqx0Y`%f8O)7xF-$x3Wg6Us6)CTXT zMDiqi9;0x9fX)EHlP~~_&qydIBxd!S z3Rr~v&`MSPK|Z8adzD60(fLoocYg6VQ$YbLC3N5fI09bCxpSh? z{gGFgUfO~5%Dze45Ke(L_%6+`bGqRVOF;W$4tgT`rz^?y@kv)r08QK*2V)O{MDrKj z9cPSqB>W`1vZP>YQ$NQR+R_OV1cM`J3&3PZiBYN_qZy^Y%^$gHVTSR|zX>vBP(x_| z1(Xyxu#mF(z87croTTkYDSnNU929d2*K`ZgJGgS)|)+Xhj8Jyh0>j`43_Mv0c@Wb>fK1pZqz%BR= z-fZ+gb_MXC#`PW0pqH@I*wYjHpiSlt&Ass`cZ_wvrRkKsHs9E2grd@D3|jCFYEDV< z$#*iOv6dW!sq+_l6PzRcSRwBwi%(h`Fbr{3aJ%vGRpz;VyIh^^>CKleIEjzX45m5X z-ueaavj4em1in-D68dZ75_|V3u09z0Ka|J!;^t{yQq?;cPm{Zt#K!$@=&Ww48v-91 zi~2|)`39}N(+ptoq!d2Nz+b?N9~&*nWl>Q~0NXcwQaG*Z+l&wvPGi$BOr{xgB5!zU z(2%HNH*~;|DTW?FL zWL0{Rw;|;1J_=7`qY@@2hL)L7O`9-Y_uSdtf6qPVp7T4u=X`(X{(hh9^~Jdo6*Ve9 z;Ov@l3%nLPDK&D`qiq6WOAF`G?_e?|?5mdfF)%t=@vm)slKMQbCbCsFlM%bUhFmz@ zfgA-&1@>SeRmd93L8A4pyn)PI!g=yKudL7a^i>7_0y)R59qoXWVf-Ymtmo=v+1VP(BM@RfXIBO zb|T@ce9W)E)+l`P{7eL8jVUulh3~gAoAf_)hclL;i+K=Nv(ko#l77JKg9 zG!z|+doWyk1XMEh({UZ8WsCLKNM@s&GH@S`T^(izK6vk(kxH>SFYc!mjvi?7?r9!w z(sevLEVkQ_QMwobWlshWX3h=wVh25oD;dc7xKCL{owe>Rp`LYhq_NcMp;dbG`~3F4x3_RAV)Pji>jHP0^XfBU2_R ztnb?96D&$_NBb+-xpQRGg;pjzEnmIlfD(!ZQL*^uT}ORRcR**C4>el~@JM)0Y` zq{?>4>V70a<#7nNVd5Uy81k?GNLH-Sr^EGcjYgsTy>y8pVU=vT%z@~Jyu)}i5^FltHJ+=dY6N$+2 z1Z%q(3{i^`CSQ;UDgD{$LE9HfQ5rB}b(lHdSxv0Fa3+W+LR+@r?4eWp^6kMMVlvfwP>2; z!m>A7n9_SEVpz;ifvz-&|W_m(;^m0`m z=(kME8-6p#FyKtwKp83G7Y4sT+qJ>%)=ww$fHU1IND<15a-sUMmP72*hp8}DNKPo^ z(Xqh?we;g-4}_*TJa)bF+Rxw*gAp^soJOV3t{UjddS4VSV z9R7A&0u~2O*Fhm3uo=dyiZm{NicondJlVr0a0rw5Pzh=LPkTkKTxb*xPSwSpJeQEC z^jo^>#&?`?Qy2@v=&#zTMvO3_Fu3x3Yz>qcsd7k0^mT>cY)C0Mue&o>q3XNig96db z+Qk$V$b$ShVvbq#1hSbboc+4#<@R3p`4|4EEGKy|tNAPW&Mngqt0D(0u$OZA%GXI+c6 zB1cVsI_O+RR43Mb37D+G&|bE1K}AH`%wl2{_6jA^YW@yBv2rG%glqPB9f|@6EW>bN zhZn19jiX<;4ngX*d@}!d2^Vm(B2-<*fzIzhs*n^tU165!p>S|yR;M!yM2qkJ#6rjb zmx7xBU#lFZXb{W(YgVT;*B0eySKyy0hmx#sP-svRCOA*r9-I7>UPJ+p9{ph+4zdnJ z;Q;fJz8=&GRbvvJhel7R5{J;f1;M(gE@=GCi5`;U7ei%&ydz2D0p7&9riV7(;!`Vw6pt rDut<7s&XCG^~1`6a*6Lr%@R*AX83lDdbgAo%*}%=K>m=@VnllCdX6t7=q! zU%n=8n+C5O@SR*-T%6pSEerCWxjd0u%KKvBfBAlF%;LoNa#3cdi`!2ps8M}($F#V= zmE`pD_hoPBPt&AoI*!jjiOF`b@=ng=d`-<-YL_?GwpKZc5B#fRqmRa<@~MyM?{EFy z{oU$8@2_+6j$l!d)-UM8p^5ZR>)Ozg;tJFCXL4EA{)5i`H;IzCX#7m#n%r;H0ma3x;5Cu~ie2J+gxgwucAU3zjsL zI7$wAdx{HI4D3rvFbQmwIhu3~oJxKRPHq;gn)q*(97~>2xG_jqMTt(XSwxAP_I*ue z%6!)h>m$@P@FT4IWnWZQvGO6n`=`~|jQ6aCT4W0LMY;X=Mw|>L3Z?ZW&Bqd3hkSj_ zNt3GED~8UWwvNQMFXC%_41!P3(e$x)iaVGz{VmSp1x%c_7VkcA)kxyIOJs~|+024M z;HlLYfF~kv^;qP9eu$8EL9cvHkq!j%$98#|7u@ z-!9YZX05)z@HziFUW7%cmANJv6nqvH_-ZrA&vW*YuGAY+aIdG5{Fgq*IJ0tUOuM17 zmIr!8ty}uCp>cU&>KSva1h$FDSpTS^)~D>`d!pyjK_gHm8_qi+>gsKYen&kkLuqv= zKBr4Di~jU2TF4cJFx)D2@17#ac21tEzct@I;?l(P7OQuP@3CEtUkf*qvE%3CI#(jU zU;Kfre|!*IS7!LQ?jbJgvb`0%x(^an;0F_oIZoL2By3Vx-?Q6Bt9Gz5I%xyYbY^=* z!WpsnTcckx|M{1?V>zCmCSQe6coc2RocZlHV+?dy3@fH;J~UZ7V+6Q(k3P0b^}eW; zxq~#wu{lP)Fw0tAi&}HXcw#GoA}FP*C(jdW-u#%&z|b!yBX*hOqkvN9inL-$735$-2}U4{7Zr^Dh+|d!AZco?bhiPxjB>Ef-@v z?Sg1ebd*>KioPt%XFCoeB=R?t?7ujU-Ol{E`(shP^~=2-kpLHy!=-{(X_@rGX@0{= zfgjmyuzpv@^6TPOQPoZm8m2orCXjarwI+v6giluU<5JUL<#_2Da0V_n!6RNe)5z5h zAk}OUDSke*`7v#G?tbyhNfS?GDXdbj<42G-V_Zh>@u>9Tq)HtimqElE7b<9H`$Dqc zsbWddL}CDf`>qfbqu?#c>auZ*feI&-=d}E3@K&zhkCK{)?{-&erpzBi+#RAhZSL743}rk_JD(U^nN(y$Zcy?)4ZqVZsuU(i^g4ql$OWf|T{ zU;Jv-oxpmg#ZaQIuK_ZuYWy3Ke6aU1?Q^TU=Kbmr0X#|c7M#iau7*`jiQ2D|d!Cy2 z@4{pOo~mjsed2YJM-N6ZQji-jSfjst*NV1HIy#PNMsOr!olK>n%{AZap6-a!2%|V- z@f6mD6;waqoZlzPIPFxJIZ0_Vx0;h3S?;HFerBP`Lu2nMSdX0Bfjx|(2iy_loED^v zq$1CYaa;REB2PO~=5K6~xp1YedL1b*U*OpTBt$?-9;!dywF7cms`KaoX2xc{qVLY! zZ@A7?xW(USLAkw|gFPZ~_LUr!lhGjpHDZBkHmAmqbGaTPm!9c+oeW#%v=JKhSCpw? znVAMQb)K)HU;&iSmh<_2zYHv}pW?ldHnCIwX}YwaZt6>=G+&s**8ROlsql#Nz>3nxT%)g#Z7-ma>$ zV{`a@m$?v0>1V^}QNKTAd(q#o8&^2UBpuD2B#vQONfHA0ZZKGBtv5=`;^%dg!LC}b z_;DQ>`#yHA(R=5aX#IfY%!c~6q_rR8soM9Swrq+&&d(I*5`!y1zZZ#n^;|T*rIqF& zo{ga_D9hik4L({6YF6(vt03QQ;vdhIh{N-Y6ndd9Pg;t{M-EI+$m3w^e-_gS$zD=VFO^^nO5Nkf#(oE18UQWzq*kwr$G6NY-N zykci3jr|%0t*T~}>y=fF=eu$WmL&gV!z881 zBN1v0Js8Se{5#w@obO1y1`-LApOLWR{XmLI{o)eey(bXSIxC)~e$d(@H{l5Aol+y|e-rSd{Eht)g8?PO6_Ct(|U1qdj~# z=itl>9r;|$c8oTN_io`E#Vg1b&bzw;W{%Y;b&hHg{@6$Z<=eKe%jxXRnq$;yyh)&* z)?ZNYxAQNIj3|$HYZ!jKp1p^#<2t+J_fm{%#r0T@V*kf@OON*cT$h#z7*?5cr3h@4MAF3HhR?IBoTT=u-&Gt&qk5TUXv&l0&4nB`kuT}mirO=8T0uy|rQdl+gn^L=NTQI`Pn`4>jt@J!_N=6T@cCudL8*n*Paa42 zUpo-V?S9ZBFq`1Qya` zb2851=;}ENKK0LEydU1{2)LG{ee#1ivXtfB85&TzTEJ|_?@ zE)l};oQZcw`te*?KAc-l~Wg7(TCgUKcJkVEHmN{5|t-3eWw~Op`WmEz+9tc=mV3jF$SN z#>p?J--L<1FTei?r4{{4;){?r#gB17Fiw$e;yE{+0QwuXhjBf}{Oi@$_`h|XDA1VZ zLODOsI|q+^s?tvMvLp=M*u>r)|9r5%*%Q*iDrs;@0lrc+x0&5pl!?qN#gb&ajHE_(D=P! zA-w-IZ6xP>A1T$&v}4@VfIYBmXuVKT?m&PIFf!J1K(KdZ|8mxmYxp(>ECZjA~yk<+V z*oeV2vf=3^IePVpAJaW|YB<5{J;HRqg#0JJ>Q7Xabk@|uEQOywldM*cR`<4iWmu%! z2Ov*OCiM_p;yuHFWjeR}4<5HU3BIA6FvN91b;QJ^8Hl;?j6=ocoCMKftq)9o#$ zNPbLiQV4QC|wo&*k|uw`$z~rt!0B)%zb5 zucKx2H0QN&6=KHy?@y#P(YuXAJJ2w{$HAcfZulxZ5t!XL8XEtaBY{NiOqRaSn5GcX zLdx=W$hJU6cR3e-;Nit%WVew|v@Z1+zQ8lB%jF0`Js~CWYFcrY0A!2l+5KbFsNLyQ z#eTGwmVw_*r2Q_B#J3Nk(2Rl>S>paUTsw5>d{4Jue7~|q z;P>-jI_h3ECj>>v_;dXko0`PbIR~X5n0V^g87f=&|V3_7o2G z;XglOvJa`coBDmsM68iAnCup)9#bTA5|cHYJW|iqouL(r6Vo7V@VGNcKr|8~3|H9B z`eoX9kVoD*B2k#?+)eBgxgT(fqYHpl03g(sAYr)`pZNZ?9gfd;#wVxo-u6r9_F}pC zeB&y{nD!#4;g>I&XWV`t@~hCR7C)^;&-1e^dvMhtdKZb*3N1}!)s9lp3I~R8T%^ciiWtLJb_ez=&;-zoGK z&w69)UERL~{X%D>|2h8I!!KWyVNvQNkYn)%*ACq5pn?Q|mTQwu1jsKiE)0AyvEgO- zB!@@QL$-&G-mGSjqlj8#TL0j6vRtI6o9qGq3}mbu!UF%?-qvlzi7WADzFw>4ttA>Sm^NJK`L79PS<6bu-~pu>cfC zCl2qfwdFjW@=#K#4KGnkd%4j5`aSX!%>k!3`1gwRORXzH+*9!K8Tn@n64-Nt$J_V< zU%pIhB^*)x(d}-h`c}Ouk3zo07W_7) z4*oFOc)(R5OM<;t$zQyq)VZG9;`Kh^#eIw0SaN#_&B6(>pc z#66RWFxzb zz_cC8Lb-qKTKwj%LAR8ynTv`%NpSt@{t%_k`j9nBETUrN+!Jj&**niJ-=6Rttxnm~ zmX~Qt>zu>ck5N9Mz#JQ{7cO{Zm_JT@dy*>V?-%XG-$VT7!6xCZDwdnR*Bj(bWPPUA zR|I4-fatxUu}F)l0axl60g7KP54LB@yAuRmJCZcn=Ez-Q_L*K9TJsJW`_oEvVr70s? z)loOZi%`T^!g1og+}PfSbUaglb<_oky3uLM;1{kuIfBh}dkP8NIn?ka?~IzIUOhXP zKMryibb_{!mA-ppza1$u5`wROpW^N7ULSa#cJvEldYgWZ-acM_XAiADyJoC+VTXK_ z$j*Jsat_suaY}@N(^xT7uf-OS)mEk(^-a7o&=W-|h5!!iyXJE#&Ic5~6joJVCQLtU zRwfm`%WEPO?^&nU706F#q~YCyQMzm)@?St-(R5D2LGSUqO67|15d7Mg~kjq|%Yh8}um?XeUr$ zUBcXU6tl(YOR+I(>b@{fk&sp-3=>4OczUU4yl=;Qp#0_WxC#osKE-^Mh5aC5wCQ*n zj3l_h;v6k@TdJ|4jCLg~>nU}(71wD{&s`(L9CGxwSNMEI_a=e7J1V2={9D!7aPNL2IVL|_A2`3Na-24-;k%}!-D}Fyy(nh4|LKOW8yw^ zAK!^N+fP>aBSQ8Ju}sip_dc*U59y#<{Fp~8iJo+LRGS`CxKeCbc>hhFE!(~>n&+NY z#gLt-^LtHiHbu*gu<{QZqQPt7J*^ubhh!-a+0t&CZ8XW1=kLvhvE@PBxx|}@R0P+L3b3bjs>|^yrsgiBkCUyQz-PXrk1!cgM;}<-q*K zeJyF3KOQ~uI89u#!~c>p_u?L;`h9$CGLJ6?x{2bC?E;;bWPwg^8Bo~$o6iyiOJmF} z(v47}vwZ{jF|n|RS=^8m@z<}Bo~)U1A2d8sn)>m8d7l|=k|rR!WfK?)^pVg0J|O`k zb^SU>De!5zoJfnQP4K~w0$NcOw7!9KiTH1!+i|Z4Vbz1RUUhlagPd4wLV6tyda!kp zM7b9q?D&}-TR(hn2p_XU$Xa&w`yf-k+7WSh>GPR$H-sHFe&CUV(fje~9XtB$h&`=y z<(^Zw&pjubxCO5*M3rkf;RD_mnk3ySk%)nTPl5STZlKyz?p?;d6yC8@VfI%^u;u9Nb2y1HjVhF_Zn4#Grd!1z3T7V#&Drt z%u8uRKW!}dRf;Zp?np`DJ57e7Y~cwkwTkec zVm+Hrh^p_ds~KO(g|~Q=YL%i;o;@<*eCAK_T~Sx&;OKpk7?0h_diLGDV%FuyMKZ!9 z=w%kOJNIUvKr>&x4=>CntWyt#2+e%t%sIu+6YZ_^#B}PGb<&qnP4{{zo-aATePCHU zzwyG?=;J}cv?FX6((mPk~n+f9&MStPoetBN~)ws@-RkUmY?d$K+Z`2;rsz;hE z(1}G3Rh;&<>f=J1->srsTl`I3MR>>8fpa5?)L zMe8x2&7r-_NlbhnnRL>cJ3!a@d@-oG>A3zW8v1Wu&F={2Ec=xB$6q=eo#n7w=-@$~ zu)FvXug@G=lV7Z!G=|5P`S8434&3e^%vn-JJ$bl5`hlEiPjqkiL!QS^Cfuro+&h`~ zVo5w7EXbGka<;m0in8y1E00&~#}AL_FemSI`lb}7B>sRxTPu1$w73^@m7~wTp(p)# zi3@wVW|^_{2gO4qEWL-Abe38bA-wEgY)2G$;y+y0hf6J-Xf7put${p>@zctZale=g z-fc3h;+9;wAG#pj73ma=4f$-G^`vTR$70I)4RB>Mr{r+T=4E!4cxa#;Nd@^dh3N27 zPCSP9Qku;vrec4Mzu*s*f%r=0xb#2*>!gnhrwl!)^YNs^8kK$mXyFLg_{uTypEDCb zr&?{&FE4>84EKsJes(V4jpwBuc(bXesv>IP;=~EFbTPN$^mTFtZ$1G)T*}uKX5nDv zNn>thW9KYEx6{;0M`LFxL8mLA%B|`uYh`Pv;O}mw>Hk>E!r#F{#F9=*5>wn)6g1#u z=_D~} z#N92eMKvBi`pX3PNrKMS)6-Ryi_6Eyhtr3T)5YC}i$_F6go~S(i*l1RWjNPV+ZDCs$R~f6P03{KW#u2bV9* zm5Yayo6E_G>)(5Lc*=Q$M*afyf9&C*1zr$yX;^u8Prl$6@BPp;dKK~@u39W&G@30E*5r{qPLIcFe?jlAxl9H9$_JF z4t^_h9uAlQuQi9D6`!D`xwWN;g^B5y=H}rO<`aP3qOr6PedOZq1Ounj&Ix8?#pUX3bK7u3xab3Q zMF~1yPVRq6)E!}-)?fz-Iu$!-FW-MPXxTYgX?ntL*yIru;1=ZN;TPl+66E3M5&V~u zj+MIy7>PGFdAK?G{@A^l7E#a{kXYDFoPq{!dw{-(%DP*@JYC$iTwEL_=x!j<-1NK+ zZyNDGlcHef0c!Z&MEqYduW9A>=hL4h;AnT-L_>2MwxTeLKZAI{ysa#62Lk*3X|k|| zIonu)>-(>O`de=If0!(On1}$c1+OKCx!?`MB0M}C!q&Wk9Nbod{M^EPRuANKs49oHf=q-V z!bUq(^%VeU0L6z7w0tMGW_;?kMjE>IcGyu-zJxKpeEI2%-V^q$tY>CG9%?jBX@z`F zgo%ZD6wjERc|?T3lY8ol>@<1^r90T;0;3P3vtF9H=zVn9ruN|WP4jpt>}p+hc`4rS z_rlF=)PI(A)TQk8L=&8W!@M)Co``W0vh^zI8p{!=E@}vj{;-R3eR=vu<8-Vev^Bf{ z!H3}M=vMxI9(JmuQ^<*;OtU;y&Euw=Wr*Jhc?xk*XT5GU-x3>}{#hL}6-jt?Wp0VP zyU-@BesIvg64)NDW6BFC7(Btc8XqTHQ;Kj-BEGDR^*M-IaG0bhXk(`sJoWpE_z{T+u;|dfH5Q5}@n$%M~pr+jf(be~mdm*%l zLR0WPv6;M=OTYkFGA}1W7&_7vrz={V%`jZQ{qU#c$g-&>D zgOCcF*N9nM4l9-2Bf~#{78UE4+Rrn&%mXSrUI?p zROtcs=6-U72*MQevR%B1lN89E_TT$ikLqet@r6fg@|PMLz|K#2A~hE#6Wq^51GZmq zT%kczfmzm+UwXnnumLOy6bhp?YLoqmn^tl5iwuY^(s@vW!U`WCeOmlHpWrOKD9~B~ z6<}HJxRyttNLQ7yC!FE{STiUWSp!ndi&YOn@Lzq8TJ(@P%lyiM_vD5EU{{bah8Y{( zBCzwOXJ|(-jv4Ymjb4|GEpXB!Tnb#(aU&AZ6@O!-NEiO<2jNg40VrpYTOv(d)LTC1)0XHt|U|5nnHXT>aNeui^B#q zh={KF;2R%zb(&f#R71j*=oeQ~WI${qO((O|YPkW8h5~PJ?7fj{D+oX$3p+bn@mvd% z^*9ZncqxxM-`);dXty_uaZ*(Fb=jU{E@bFseL-H_Mc1Rku#Q&BWxk1;a# z%kgQAZZJLu#l3@#a7bkRA`RF&kCM3FvXcS~0zC_+$j&Giu9L5P^z0sr_wnAS@)%)w z)?r7l41rdQtm43_d?j`kOmjsb+@r)_m<-3y!+*!C2Sy5;_1-m=>$~KSm`))XO7!OU zlxd;x+~tOo9aN)O-G$=&=X1_c?%lyJatZ5BTx3prf|fZ}%NmxPJCry4Mdr?uQ_duJ zfDB^PFtvaWJ(PeVj`a}KO|{4L_~3HoS2gD@UoQ=4FwE#e7s(k~TS=z9wKRlYM!|d| z^uQ@kwfgA)eYgEJNS%FL&b8ZKDq>!Tjt`eL`elgNS@MYYs_QPu-ulKHD1|L)LZ$Y4N_~cv zdf}@SX@kz3>%Bd6Iw>{ZS6J{a_<0CZNFBT`#1DZg-6VH)?$pC1p|lK*yOupY!_jbW zCW)(dj11PDb6(Ibi`86j6IBj?y#3WcGB8YM1WY$O@9YjHj9QLTx_M;@aifp7l5AZ0 ze0ar)T3zqHB?&PgMh)c(sO<%4FyL;Bi=%RB*u^GKv%mWSCwPo~kg&RS$`vl$sbT;a79xfhV`$q*8fSOLEzJ~~OtOc^p>~r(Doo@qD8cZ&qHIscCNCG9wmb-CaGl>`sr?ZzfsogeTnv7ZPAuN(vR~7E$m=-4au|2J8Gyw zY2(#F<%<2>6$WTy)uz6vzBxS(<2}0Jpd;@)RbB?dBkyI5>Sr8c3t5}J@o9kG0zxv0K-3TBK4M27bNB!ZPo!ZNMsQi8Yyt}R^MCYOMyy8LEpOOM(lzZLwGD*-NtM>&< zGMy?+>qoYgK+coFEh7XbO`C0JT-6aYkJQ8lZdlqT7eWwcv~))Pl5_atRw)Qn%Wu#0 z9tl=);z0E~w3fP#AXp1!3dk0bDVQl9K@9Knm%NrPD|z}tZL|DFeWFG>^~K5oY5Dc2 zL>s^1tyOM!b8#$T_G}ipxj9gi>5pN%ybaK;>ouAj^yt$Ch@KOw!x|ug38FBd5Xx|Y7Dn=D!K9D zbnO}q(SJ8%6l2N@?|9r;5fvyHT99J#hL%2dG$3{!leifCo5US}9&Rr4gAC(h_;1l@ zQtNh|zswJR0^#DoWA(~E0NR;4h!B*BFbq`(R#)ls?RhLQc93$8mJ>8H;Q??S0+A2x zTU~s+aFuVS#~Arg)mHKVezkRsb6r_;4(~T&vBiMZtJj0XNl4LLtSg9|sNrWY{ zS(4$jO`ceZo3~K|POk7#UO;7L(whe5I@iRRTUD+rO6JTJp}f@8`qH|TqFP-Q4JHGIcHO@UR?2H@3p8ScW>JzEEVo0(f zGBQ6J3zf%QEB+v;KZ~ztaTOb2&$gSvd1L!mCRtXFKym6EA%I@zFhavPMR5x-< zpN8}Nfi<@;Z$Uga`Q^j!CQ!)shgZM7*@XS@D;*_UgPah}e^zMt{@CTHimibf5bil6 z_VDk>63Pj9pQ#F>+CW?xALC|D!N5?q+v{iru%X^+wg%MDPmSAzKmSCi)hg0+Ff|64 znZZM}S!Q!X@{93^br9G%)zeV4f96(v8_Otpyt;3vLbtx}@3?n@<4c3fYX<3J z`ft%Fg2b%m#RmaWl4*;wzgGgW1l7$xwguuUlFkI}PTU4v;inTReCV#O*(x}>kbx@s z)ZKS~O)kk=;y}O((xtx_2G^9q&2royyv7Sj1QRhHD7*JJ4?8Fql3+S1)J=8G`8$ln zz%Aj10-R5cFRK11em+(EQj0K_?ga;;an1ds$#JFDsSWNgzwf1wDobCR7`GYyLnFi) zwHBmn2T9`G6N7s4hQ)%)Uii*^{>%yKOv$(H1b-5pZbtC5T*DN(yL!YlhWX;S@>gI|v~Vu?L0$ zHgJ>aaHCLKl5g|xSiVP^OE}|KAj_c7pH&d$5t1R(Z32e8ZD#^m1ob!Vvm9g&PASHN z5$|B>CCOkyyIG?>TNo$}9M;8LIzgS5kM zmVzVV-Td(%@my5?;s=DS+474IUc|c=O>7_m;9g<);&5(6&jf#|>^F3|>zlXfagnB)QiRkLUIO z7&f@bj0lIesyG@jQH--pTln1giy3sLGL2P#zrxPg(=2~i{%;I*;OpwmYM>AK@rOll zzd|E{7T=^f6kM@fP38&M%}_@R*N%>;(-6l55El{}#SlvX><^KT{RD~N8zD1bjL1uu z$%=;hfIAsD9TR?tV{ko)n;~c^+glw=Ze-xjz&w`^E{8Q)(XiI3zj&Obtmg$Yu!lm| zO$OFzXEk_M_Dhnn7O57wmZ8!L-vC-PdQr`u(sJ>;ZI;Vh;FEcQOgwQz$$FdV7Xwvh zZCfSEI>Oc!o_l+`Lt=jM;6P-Ws|9Y$be_oI$>hCO)mpo#Bu8PJECOFv^vp{N^oRX< zOj(CHz9?|6Zcg138O)c7q`eNN@VFRQOkNxV6d`1KXc|kdzVK99$V@FOkE6_g2PzTn ziM?ZpdDFcDx2#JWeuXeIbGgW}Ncjdi!<~@0=+aO~fXq2;33Cv^KfQ7lW<>SR%~WKZ z3l7_)x`MGVdOtHW>eU-|A+gN+KEikYf;K+j&cJW^r}soR&$K(-_5d6u=}Q$O zJVJ8z#4cD~A+qJSiKwawZpNuUp++)7Dt2&4@S3b>3Y}tq4zfG$`^ZtB-Q}3tUOB;g z1QbVd{3V{Isz(`b^Jds`o_h$oHIn^g)?(JzS{&E+ONW$SKY&KnWTh_->~xI4 zmD!E=iGWndmfGys4%38b2;3C9q2HJ*fqt=e__odCHn6G#xSa9cm`x-cQn`}5{^0V) zT;vGP9m1)=V5~*)E;?NYigl{I2}01DvBlLQR^eYmKhJ0Ca8>{V`=9iHQsi{KS`|a! z8}f&-3l-=#wDa-Dr+qxED`H4JOkG#07v;=FSnB@;8jz5b*OISSRk7#@D^XQyX$ zPdJ-f_+ioPNy?Hqz=Tx9B)Ag{P+qsVt?evuv7|;`NAmzerCA-p*^6*;rS|vK_sfnb z;nq7~UQ4{2z7vV)zwb=3UH&`4eLEI$Og8U^hkAwb#saJGDcT&#knhel$DD#$Qv`X# ziE_{7;58yW_#Sz$ejdz?SnNsOEkvuiVdRw);enw2NArylJVfOgl6lH}Ynic4bV)*3^v>|B2KpebDK2LN->oecG>^hcus5Q^QC zFp~(S1lDorcr|9%2=YnvRzVCUe0x}u*i(>V&$ns!1xIr3tHM)r=S!vb1?Sq2dr)bj zy6fNr&nDNzt)yI0C*9>mu~{Mk^BcRm&@*dC+?)_Tr#yxchjUhH)6}8z6XU62UoqfQ z$Og!5) zfq=Ijna;!}b)gB>4_B-$-*inC5>f!KsK2O&;PCNo+aauK)e;i0fIwwg3-YNNb0476 z^DubD!%3o}j3E$8ZE5*NZjO1%3i!B0I`_zsNpV&or7zLl)6SNCvXT%VkbH$g!$#dK zywy-kJ1MGo_K2!?KyL~NbewoK0U0OKV}dRQ&NbA|OHSQaR73-I+u>~Nz-C(fo_`y) zqJd~E)WycO`8+ACv&3;~9}h6JHY@&-=|E0ZVU=+Boe&qtBZQ4taC32U8f?@TmK~<7 zRZd9xs-0B!CY|uPvg{&j?RUVnX)7VuY7)g4k0d3Vw(PMWms(~#pniplSkad3Q-h;9 zr800-d4#aPmG8iVa&}R|y``&IsaI$EYj8Yn+737on+-XzV`*l)phjG-^wB7F-)h1vnNl6g;?uq`ix; z*ft;|8>_Lxp$2q{_IdisRTGBint-a1D&A_H-<1wHro-AeKthsoJF}^Y1Xch!0xT11 zJl{m3AR+>SzjeDdrG|ATZ>2+|6Nb4k8&ur^hAW(@a%*P2l;oGQH(0V#vSn|f=$Zy_eyLcZ*W|oz_lIYZ=mmf&^|pen4|+Of29O&4bBBZZ@fy9$|MDDl~1Pu zGZ5CzryC#;#J_*kxO;IY>qcD`MfpZ+S?z$8de){Eths?NRyW`60gl3efXu0X8$)Cq zq=y7VkNRgw*e6!%%*6+6oL^se*ryyz8w+^6cHPV)<{0>In z^%4W?e;{Q?TGt(Lld3-~{L)xn%)o25%ecWGfC66+rGs#Hh5k{zmCmI5T-2($$Zy)TL^T^GCqi%$HW`*G`$rDt1IXzv% z^18=)0iekh{d03o3RWLVcDC8>4KpA`A=2)H)@Z8o#e-P>KpE5kC{U z;fuwzvhwm8&v2w1Vy2TE>n1V9px7(F9#+pWz(e0o>CiO|0lA2>;N$Hh4W*sWyea!C z8XVoBoW#mv4KU#1NeNc<0&$H9kB|g6RN4lvELnUlE&cm3L*|0$4?8U;M>*5 z5et+*VuqAyoeJwh8Yejw4Xj&HUy+jSP&-ZRPeFiL)VN%6ipx3(sU+>66VhYJwmq$N@0Wb zB^j&eJ8IZODIp24QioXvEwi?q-q2`?%41;RpvRPLLrZ~mYy*}~#B)iM`5imsGKxx% zko&;PmU{qI_rN$`rzLGR2q)5vc1c8DtwzEx?JcH&rWS7DX2%RN7c^k*47+bJT!fdbmnlEUl@Zb?CQBG}STvP_9jznDM1XHDgmm2E z&pqrgr$^_1*M~bL=XQvzcm<6-6*O7Rv-bvQGF+fQF-p|NuKz^{xcgtTQjjTWt&$#H z>5)+Utd`Zj3s{#CnlOmzq8B?c&P{^HJ7uvJs*G`S#j_z(W>f1rg8q@KK+8R@w2VAyVBIpTOgvHulptnFTy2 zT5(BL#_+qY{A}9}vy45fXHql2Y#4xVCTsz?MhR;dKKU09l1R^0B7!Gvlr|>TFU^+8ePhAK{H{?F3}zYS@6L#nKX2C91FhV`Dtr3x zJ_G9akWc}7_d5X5C7PKDz6p}G`W5$5lz9ZHKx^icgL5@|soxHS5cgfh||J*M}-qt+-dDqI)N#*(?dgOxc?iVFzP&QWE_#~>lb zxT=#owPzqePZPzDNba|He}FecnTweYLEGx`brk;xm4K)p0X z3jAFGBC(s_1t_wfZ=Kz`szyRsBMv(5vXKM4lmP3Djkjh!T7BrzpQ-n_;f%2i`Lvc$b4A;3Nln$75&7k;>&AP_!1H#xJ!FM zWbTFOCc*u)yYUd3S%~zyL3&y1Tf@YYq*A94j8!R87xC+_nCTnDAF9b==e&t!WCfn1 zXT^Z#Cg(K8Q_uJvz0qmm{h_X$v7?k+aWr`Pon7j=CImZp>|QlF^QEu^)w>{B_mRa> z4pCMNei|_Y?VN$)+hBbGlmlifjq^K6YV_nBZk+s3=hnl)`iQ)^T#6e*+(^QmcjCx5 z01K{Q{!+WYI#_SGa=6}Up^PIoM9Sd=8!T@dz!9b~55M4{uE-J38GvOF5j+5Jsm5J| zf7)ex=I1uP9NSq17E+eQf#DbMe7MA}=sJuVnV)?x{x_$1!H=_|m>%vYeC z8~Iycp6UsHxzujDlj11NoY8HCs?0Y}wH|A{(K>#2GsI5x@|XNVJctY%sF6hwmlad@ z0ku%7ayiAuUz73+Ew?R^r(X|LBS zAt-C*SrpHziz!WGi!{uGv&hSR@CDEI^HffoY)$?A##%T=&m`2@N3PFbfw^o4&9tFsWtWGzsYK?}uj2o&W^)f@s{iBoIosH<#zQW-rXEF! z^(a$>hm=%^BKINJ&?HjE&U(m0B<0fGL?n@lEXo$4^yHFc?n9vxql?M#`)>R7$M(lL z=leaM@8^6!-^=Iq{vIf6_WtnGfxaUdBojZqHp&}IPi;f>B@9H}ZVjl>o_fUp^0A|y zQE_b`(-c~@`BVe(DA;%3zeJMWy>C!A3?GJ4ml7xrwUxSTqSv0aKmWxewO`dO$-m~! zxu}86 zA^T;o`<+H`k|u8Jy93+ov?Y%N%R-+iyw*5rj?>0>G2$ z)MAHYrq6!5=zM&b_v%63z#A_dQ_H04k7Qm!J%jk%{w2iFPeRTir3!I32TiEQC&?$H zlu-r}OK)+q@rQgJnY{$zBimu-`uzDyXiD8&FCzG8)VK=QVIyzGpqN_rhh9hmj_7L< zzph+bfaVx9XrTnt%$8~v?u1#PGoM2k-}~utEQ)8k!Qzcl+@OAA{1|MZkH>c(4u67X z?5ia&5M?H8++8>Ksj6(FI)#NMN5xdWweTdIz3~V&##Aabyh-l z?C01RX;RNXe=^<0($H=aS6MRec7JS@k$-01dfmvAzKlHWOfVqs3_ec|&Os6Z$4-IjLUCewI9&y*d2YClZknt5it9pnV7&h1A& zSkHusSVosJsy7)>cfhm^cbl)21%MZDqD5`4Dz_Q{hpU;gjnBk{gVjm*P`KJ=#|~es zmFm$WA}LeCm5&L})~eH8LB;5}pC`b`;9b#tn+2kp33M4y4`XtviR<%2 zG$2pE->>_VjB^C^XMOq=IR`Q41|D0-RR$hA3920wqf`sbbs537e7&u3gsPGDV=+5l zJTK7%$p0b4boz!|U#|!&mU|%tUrizu3pi#K+|<87_UsZ7-e{92*8Iz}-RL3vVD~<_ z8r;zrbHFJ%p6bW@o$-Ko{X`r5ziMsnX0F_7AVTn;iYML-6YLjtl^wp+{{Htu z9ZB>wYA2V>O#!b_A_mqonK>e6`7d0IH3#C!|J4TEvXk6!X+(UcNpLn6Lw3 z?Nd>f5npe}tW6rH)7b)mWaGKrVka14CN-z9=l6!Wvn~@22x7Sa_`dGkGk}U0?-?C2 z|G&4|5D*a#&g2h;ku!b2y~V(&6U?rIK!uv@Rh7G|L^_NCZL)DYRum7YsmtFj!y=M} zVgX@1SUPYUKr=Q{8Va$3(+r^!q*%K)ITuL~MFYey6MI1xRzTK*FfGa0A(tUGDqfr6 z&xB1(0i9gppd&46Hk9Aow!fM=TSS@2C1ouwET^6u-0Z>(&$RfqKf>_+>Fd9Q z|AJKi(s`r(ua~b#Og`9K&AT^{{egfStk!}QK#<>MUvAd?HyqGMU`;Xrk)ADD($sCB zcS=lACzqJ1VsBHx{04u#kFCpXuk1yWcEr%a{C>BqG|OS-7SsHYACd_{zr*GT8K-D* zE7xtkc{I)Jl{ie35c}akZrY2Y=vU5j&1f;}r{PRwnFbHKhkf#DET)c#%WKG(T>t?M zPfLAGZ=jjd+%UWZV!7OS(0a>vkP9<#p63Z16fP}2@{4hv-{uyCR5!= zt@hIRIpPqZyOu}8@_ooOhGO*h^p?Jg#uD|dY4RL*~Yw;!y`LmAl)3=*5KMH-$WUj zrxf#H;IPlzf`!{p+OpYulIV4dU`ddr2L@=@cj_ItvA!ErQODL z61* z0)b9Tm>J}3>&RKW^Ua;bE+=7cXe!BSTfCW?jT|r>RI9eFa9zAh*%wch65eyn zYt?o#_u?r??Jrd%jy1-O_Ll4m9=yX;XfKye{`nQOGs*`{S;GF2=UjKZ{|k^{8Iixg zo_mq4aK&LLG(mcP1DGpYB5<+iX1Aft!3ci?$u}HQaOOKsKL#nBaH@pxMPTfL@P$-8 z&Ovp|^-FBCUK3+*c~hGl4@!^AdGc|19F)lr9^fMtYl? zBAQpWL38AET_{LJ%Wn^rjMx)wzMq~6%2l^=Ioud?&|XL&oo=Z}No zUPHz7<4t~9T6%4CcE)tP&t}k?kR+rhi#75i6wKgq%%~O)rygo2oAbJa9nTvVn*k;( z3m^&7K-7xU(%nwoa9xO-oDwFDbyQK_x2USUPk_U;D83-?sDVa+L8==u`=Ikcc42Yl zFJsMIdgRaY*_nAI1nA6KPM?q>K`gs4_go-;XL*$UbB(kif)EDM`oe-F%%ozgWQ1+7 z-G0QQC@sCu^%I})(sIQBSY2DTq^zY&fw@eF7}(2UCS+?Y-p60hqW=N{Nnq(EFXTy< z#m+e=&`d4n(OwScVQSL}vx>hZL+1>A6hTAhrC=@84*E&3Rv@tVcQ(CPm!9z5Vtcv$ zd{|mngc9%ReH?HXH3`xCJNd?ZHsMinuVpMS*qI{sUy3XGgpMrjsNTew-R*yV;0 z|B(!}FV9&j8V>NUph6efg$+VWOUmPtJYF`%{2)bkRBnE7Y_0xM^2M@^o6ScyS^|w_ zn>KlxVonM7Tb9J<8Lx|R`&)*__d8*hG3%;-4v1mF77f~?j_uEDr@BM3|EVZAc(tCR z?d2MCzo&JLXM>%>O@}y;)CP+m^bpz`1d|Q7ewF{o9q{}7+IMD|KunoU)_c@cKm$+3 zuR@s@34XAv<*&K>aOYQ@Y*YyBSG>0Ai;wY_^PH)39W#dPN9>qYWv{HwN3(C8(YcT_ zm^c#|L`G#QRmm2!4t{$^FREIml+?$6snyVZKckUoSFH^DX;d4|n*2zc|GLH#)n5@Y zP5h>&|LYABuSct2UTA#T@*~`oIxx2(=Y#pX&BeFt+Gs~f*u(dUy3~nBUZ8zd)|NhN z*18?py(tr_mwrYd%MP-;`)O{Qu9h}vOeWj_RH(boACH=oBjb< zBS#10*|=sL>)2I$pGZur5^C2&FRZmAX8{?!4B{+$NHtKI;qfm!pFQeQaCh+uk!U88 zuD`pW&5a_{xY4BtvIF5DccFBBE7PkcsalV=gXdp*AiC8Mk3Z%i63yS2EjKKpdb{IpJcem@XZxM_IQ(v$i@Y%cI z-f6W#^l6mV;q;FY1Y!k|`1F|Y#=#ZZ+yI6au{%_s^oYKcM1OAd7dWd@a@UHzvn5Z8 zaI3i}tbq7Q<2_BvnpRZ6u)g&K9{?TRmlm&c)+pCDH z_dOIIv1qZvF%>5W)FWGSdQI7bpn%j~Z4kfzamwQ^<0j#!zFX@akm#-8hMVYy{#isB z8KBeL({+rMI3>i@PeGOn3>+WjcBA z6pi-Kj=poZ8>c-IQ-^eP4FonN=lhiBX^p)!=Gf1o=zi~e#4*1eLqWPOD$Q^ElV=I9 zw3C*GZSr(3nnF&;fdY9K$e}D(sQT>6I7j#L66k=*%4`y|1-3`EqFi2oBCxNqxmL@> z)}Tb;2&06llkjxZkBt4=9aRr=*K*~#bD%zjJPBdL%W|hvYT;b8sg62i4jV`$xK3!9 zS)38NTmgk5;`n+M)>bgr*-ij6ne7&_jXS~YQgV~nUVtlB=-Jo+bECMkYdjB6C=Wg= z1r@%PzxtQ)6iT2nf!@+)3&lz^HB|=RC5cWl6|JsNZPzlX#KocWTTsAC3inshV!cev zK4DKLcQ!Q{v;WSTfKQ-YLJ}dOR_ra@s9vN6F+YUG)wuwc4uy*Hl1(qxR2Wsb{_*n` zwPm;~*BavE_{uyvq9%VgI3nO|3WV=}9!ddYS4|d2o%0lT4Sfy%f&$5+LyQ3D!-~Ow z&kGhF>28+c7vdg;DlNFubCKNC%-pMUE2a;-mDC6SIU^uB=Zr`e0TBcw=bSS$h=7S8BBCHcK~!?iFcK9|kSsw4 z5D+B{8DyBb8+hLn)_2$X*17lo{yVx{LU;AkRZmsdo?X>*-`MCXISCU90088=I$9>CL+l?WQ3q5L%or-{q z!7+J72TRk}V6CD~FCM?Cn1k&dsL|W9-#q{pYlUnhiswY_b0&UcE!-kcHg{KIx(eEE z$6!O>Yx%mCIf}E9E+2XB=O9*bKfTbGww}TL94as^EC*G2t`um|*jqA$aK0==aTql-^E?qu0qX_pr2>=IQA1 zfy>&L?>4nu+^bAqVO=p4$=8?d9VPiDFlxMbqy6Qa_6<=z`{O0PcEMdL-3jvh@{jyF z!*AcTFc9xvbXYQcBsdjVVVR^XVv0?R=}a1H^7i}@pzMB)UUh{gr$3~9Ca|{WX((!x zfkEi)1?>LB$@;~O8-jOH)2=0%Hy>RaA&CFF`)uT+PQzy2G9Qw?T@}Y)u1!$=s)T+O zFQhFYQ$9))8cE}wof#gzXZQA48Q@$Pe*OuM8|IW$M#Ou_9gy4@iS8QICkD{}g0)JF2%GqgOs-jaUd7Q6aWzsi#%`l0H>03ab{4?voe&rMg z-lx`j@2=#@y&wDGQC2uUHz zYo5D=R1YXjuLTPAxfVXXX&GEQHZkcxO`sa`Ex3O6KyKbxkMCtv-@BrhF+GK&WsO-r zZA;_RKJAN=o|`q;?c87b?;AxQ1ET?7S5)WK4eKapv**X<+sht*IDNNNKWCf%!b$|TFRvGu zcz+#=kl6pFfj`DP+bhp4gN-YWi4JZ*wtLin%X5;7J-;fLc=&Thh)|>^bNJ?yl63le zs9zgW<};QfUW&P<_d+f|L$28^=DZlO`=-psHGO~c#eCIdhOiMw+E5+cwu(=Q@*ghd z`5)geYCdiFWfblGd!RQr`~J_*Z3%dXIhB!f%p#ADmn9S%w~9pScMO*XrtiDtgugbT zxn3Wj<0^BaxWQst(YV4SUKhif16`QIazmRP>T zBr{>H{5=5Uk@$LC=Le_FY}G@>c>k-7tv#!~vv|UDdivRo-rx55mTG;HeryW0DG%eaJ`q4bQA4(x-I*`{MvnE0F+V%aU#;U(jhdg0tA@eQanh^T@(HHA=EL0-$ zHaCrOANqW;ryXNCytmJNvrWRGFd+@W`O*|7{hWV9jQ?VjQpCb%g-`6L+=Ev_+fCtJ zfeQDo(_YacHer8hu<2~p`>x(q?}apFW}JNOC!&>-NSd9`K2(iTF1IGgtaUYoU&15@ zegk5IR%+|Hw`Wyf8Wa0N+(VjN`5qK+Emw49{)+B+U&TJ{Tup2aG@CrY+tFqc{V}3v z=Mgx^mbso6J7LUAO& zXSwLOC+fU>M-NFVh|9FONDdDiym!7e2=H(SWIT6Y$h^NWbv#S_aE&prBy?-8ZRJjj z<5Vy8f&V?Dg!lw+2|&3wI>OxM15I{BR9o>nNp_h{+n=u0*Hb-9t-CiJQ4GEjd(<5M zYjd^P$0Nkn_wRCwYYQG92IPJ`KxkDp^G}@Iwfp1p{c|mlSq2+moIH_g4a~du+>%)wkcbufV?bguA}y9jsWj zuQ(hd@F~Sy@3yb>@z_&`6o;BfIhO47i(_l_ED;8+B6F9#fAhx@B+X4juXr)Io_)(Kt80ykCAnZ*(9;a z*`mCT1|A@bqDH(XRdcLPdNi4jBtV^tp|g0#!T(}uIMntLKQEf0l<5Q8Jx}N23#viS zinwY-4SM=6>4>2;`r@`$tzOMh4EvIGScW2$Avb=#W(m?!eeO{2N<_KImOdH(c6T$J zA>ye!;gNBll1=M4bKo;Cl}x57x-Lp$=c-B_wS?~L$+PmZya9KKP`-&9k%bbXQ90Ka zzAFBDEal}v#C#|4CH`T$G1R^FS6TQUU|Fv9dJ%^nWO79~Z}jEY5SF`jltqP)J{1!F zB>R*C zD04CIm;|&BQf|m~8#7l{zpl7{p+^%({Sh0q{!;9Nnj87tRfuE;2h=F;vn5Hl>+#dV zZ71R}ysJH<-Oh(YO}$Dr%5NFe?rsZ_uSU`8xRRjvFqMn9NI*w}5?2a4q%H=+4? z<104nmIA^{riRUgw##VUi06_cm%`(FocZ5T6c%_qbk3iHlrslJ6}G20Qh;Zg{dRRy zZmc{Xh3~yGw_mG0G1H|nN_5e=7VQ#!+&iHvv2g9~&lrcUxvlx~UO1QL!KVa-ZBdwK zv*(_{kDms3sa;in8iOxXJJEXLeSI5`=eYi^mH6j-c^7v_n%rV-t)|*GA&2nP9@cj@ zVv33(qbIt9Voh&ae;!a*9q~HZC|@k$ZGs;i*!wYYLliBCJnJ5+wC{oSP)6zynb<7`yU@N5ou5Lz+4x;+*w^E#5{6m3W4oJ)7;e(C;wG- z#43663*GcSd{sE@6)U7O(<(JPsquRGJXzLfe&TEuxrWz0k1mWJI4TeX?2HK3i%aO-_pF^9fXJ6h;%ls8`m+a;zbzmGnjx`aNW9t^zk_Ny-#?{cG^ zARsdR@S1zeQ0}`Uo`c$BPFuoY1FErEb4qQ>W*t7MrW`vX20Vt&-8+@E={>vlDXR_% zr5#vt$rt9Dz8ZaW*Rj@Eiqdi`CV&0fFK^Y_zgM$S5f`w@)J42{VS^{ucX9d|mFd&* zrjf65Kf>*_tL$AiVvm;{btspWt4(Nq@_paN;h8&P4%sw6c6_F^9~|DE(`lc(*?8PG zfXliZsv5oP{FJYNTYZ4hpGatd;cfi3Ib~IR9r;pwr)k*-rAh9M0>~XLa+2D(NS)wH z1=p}f;$6L~L9qxobM18t+rBPVZ_yj>W1QuX05h|(2WYi+2FQBT8d1Q!zg#h-yx{n) zxZf@j+1x6pSful>MBi&W4OC3D@$M)Jf8k%RXkKx!iwnoyAt{^^LwjFWs*Srd7#7|@ zp73;od2W>7;8^Xy)tn^(Yjt3B4GwwbMEkC`C8%2bRm)_G32Lk*?^mN15IX(t{ z#N3DlLO1HKkE3?>hPVx6Q)&2{IKMtw9rLAIU3R^4+x97+9P4#T{I5b=#42%lcBL(u zEj>UNc41>S*BjUV?A^wJ!rrFS`(urweKfgCo96Qym|L%t9^F(+=UOK3dDSq|ecUYH ze}$+ky#;Q0as5O(nj{>Dp8w5#m;7RsOvZP#=4!$(r1sisleE$k-LJ+E%-9L;<=+eH zddr5l_1aT3N5MqLAVT_e>agJz?0flHt<|4=BvPLGb)FZ4J*&$-o^ahdkb4q{qSUc7 zNPpzNUPVy&LN6)DsOXz@*depIc|7*PK}~+0Lfw8j!fRIf@UEAMOz`;BZoIy_wjb>k zKX|wqOyi1!K&V$paz3=sb+53BqA7_;O7>}vtz6Eh0u<)5& zr?AIzUk96+T*@UgasX zv>ej2!yL2;(p7SrDbiA-)g37fafo}PU#lHGfSbRjUU;%vn({abTq0thxLr$L8LwD1 z@3s+8JEtjrg(GC$sMLDa#4hb!OsDw)x%E5Tl~7}PetY#x#_hv*@3H+dXXjgIN-v)N z;(oO25un%nwo2A;Pte=2Epz?ARts+ZbY;va?MGt&g(my;uj~UW)Qnf5Ia*)8BRz&f zI#9Il_)=0UAJ-%?-z>x=zD@Q?DNB&3Q5;*XN;x2w$J?>Lic}CIwhWW_R%qHtACpw3 zo2JOOO9t=bluy|M-m_h!_-b!+-ARjz=>3qhFA%%mB6)Kwg?U4kMk<0Xwx+gSeUz|; zeyQo_RPk(kLft1~1A#wWBKM6RQM>dk_us)AxQ$-Suxlc}Akr?JM3vHi0dGHeLEGWZ zM=mb@Sbi!#5t93QukQ=1i4uRfQbdT(y?5okRiQfH z1ZF3>7zh(n>F}68=e@+)ubQnBo2CsWRQ9q+iVo3j-B*-ejt?}uw6K$>z1W>WFirQJ zm09sqUO}~UMayk(I-TDNTo2&we)J*uVZYz9wOxJhs80MUL~o2@&#@4PDwwskTvc5Y zZdUab!G-uXD(~b-eWiK(jBKQ5MMb@c)RcFOIYEr4!utN|8;2KYjVaP<4MBTCWSPeJ z^!-QodNgjBUbU>F+Pg^Etr?&P_qC%Wy0vz~iRE#)r__@9#=#V|Hc!1?eerO*(5k9# zFVh^tO5blQ_|xbmiYL_DJUJf6_8v~hIxa;qE0CoO-|!Glq!?>+?;g3ZZfokq@|cFl z>pFGc1^oy2#^VAfWH{O~_ccS6k)ISI6-Id1wL5-IsTPjsBI+60K5`fz@+-ZN;qSV7 z!hv76v7i<$fApJA_byRi&{Eqk%O(P|Y?1;dC#pkUS6TgG7fX0S;Okux-NOC3>9YG; z1WGBdpC;D%eZ_k}dCimrQz!N4R(($WL$XaUmN)!!lG7cwwgQA59OUUGo z5f2}C6v(bBWpJb^r~*`siIgZ7S5j-LEvB8Yno zgwHicxb}ku?;WYfQ>zeBrc;uqJ~i>)*AC?ou%ydl zpS`Kw`(3T{l}tuU#%fP;35i(ZHwkCw5kix)sr23A*ga=mH(h=F0&ZoLts>1mJiU@U zSXPMHU`f^y^kQ|myz91Ftg+lw*GtQS(QLV&Yl$tl>tj>v?-8W5v<6*dB3QOECLt-l zz#`|9vz^O5o}%cwI7mr>S^CXRC}CSIMj~zM$@z<+{Eb!J+qfd;i)zqvhuDX4y}(+0 zFp}eybIbn4vQ*$PX`Pzf^=lG{ZksBevI*hqnHQh?k4aWkUm2*Z(SB&tOd(Ev{Xuy8 zW%V}x-hu+Z%2&-FLXq`Dmqn-|MkOKWKhl)Bjelk&uk`R_V*QtVWx77+lL)HN__69Q zJil9)pmKYHN$LuItmppJvrwJ%jLXLy9c!Mn9@=mhe;nNH#+2&AvDb$w3^$=4Xg`FVD3tt_go&7!Z} z;ukOdZ1pFIinFq+I&=9QIz`4A&Ac1RoK^9{dADH24yd&Y7a~hWn2yxE`Xc?N(#Bf@ zCKIGpDMj=^m2(fHxBp6Fe?fY=|gyGt{W*Xbz-MdIZ)hvV) zJ)_y{ePUGTD90UT@j$s7%v8HInT+k-I$_IZ3B&ER&kdRvW$=%>7g5Kfosu0P4TPFLkuu=L%XnIQO*HOf^V|`g)~g)*Ut*X==F}rAt5*{rw{|9>tlJS@ zoO<}p^SHPb`nIrOTX-t30PRw7V$-Dspse7Cz`Betk-*`qq5w?@E2op1@VoA9k8;ud zvXvZ!sYMy#tbgH@I!Ad_1dpdj9_3RS1nl0W)o(dM_775m)!)DqMKsh<%XxfpVwxX0 z>8u*i#21W8ZxZ3vFz1y2{L0DX6{ID=@lD~6&TRuqKHVLI0FymCrT_xj(1ehLR|;<{ zhGO%sz54c({K7)f@vBl(1RW*+R03_aBQ`1;iQ}gfAC|D59j()7H)2YVNZ9AfO z<1z*Pgx9LxkA>)g@_5Vr=h<8{Eye= zr*~Hln-WvXL&bBJqBjP=zW!lIaHzGw_=cH&OJQsDO<~}7K8otJ0;*iv6ow%6g{x)# zBJKVn3PR|CipRQx)QR`I9hm#Q2lNv3l+;;nm?dq;m-LgY2!HWt?0a$WLzHZ(c8Rxa zghdNVYN18K5sHewGi#(aI-v(01OI_ZnmlxQ(3+g zzo6Fp&>Kz$`CyZGy?TAqaoQ&vz`COJJdXr}?fyL3y`}$<4bnP|><-p{a)9V(wL|GX zBm49iBNeX!2~&OT+XsoRS37t=Z57B~M5&h0r1u>lOho!Uu9{H#KKt$abi3<|lM~<( zaX@8PxVtY{!#;5bYtkyC4>XReS+-6gna_JPa)1R zw44JS1Kj)!p0gY!yiMzextUyZn=^f79)B=FFUbRRmoA58Qu~ z{@eC5VNlA@P(jPrG5AzHT`gs<)BP2kd>!4L6wZEhuy=NJkady~7MGJ16P9vz5Er(W zmT(c4ah8;Ea&U2yca)X=7bsnyz#w}cN9R*05M0C^#F286agdS|mlAdnmv<1Ba*>o0 zc93=w6PAz?my?upc5sxGasC&GYXRSboaJ*br$vWaXp(jC0s$>SXY@#LPYGJ zBgS6#K`!6|WiA7EpWv{6PMEoSJDUdCpRy?~BP}K)Auc5;Ehi=?D<}0&A#>+|Krj+d zF~!A1B+qeA-J$>*0}^Y08mAz@*$U7W1e-FE1_ODB&dRAalyFytufqoQs5vu$Z%ql$e~Pv!j^3Mr0?3@`|GbHg zV&YEDPBP-c;^LCB!cwvhGQ#pwGETzMQt~d~KQVbZd%1sC`v1^G31KlQVF?K{acKn! zSp{+Fe>YJ{^fYn(?NlYv|Bu_x1^y+|fz+Ijff*D`$fEzq$bWHm8Y%ySfBp)$|G^zV z=>Kl=AMyKNy8cVof5gClB>dm#`Y&Do5d;5`@PDK0{~28*|9q!&_5nZWg@SKvOC~xO z!M8mE2mPyB0Pgf}UTe`4aD>=T$1)InMVvVO2hrfq3IhiTgLDnA5H91<6U$Swe!a;6 z033j>mbzKk)cR~_rrFXFZtFma>>dgI1v;}wJ@mB9A;!k)VtFQUJ$in$&6mD1m>L{2 zzOK}AG}LlT;krle5X;X$DLo!FhWC_Xl9`?=Z26#9s7a{0A4)n9{^dB>#=5DqA~NSV zr~1J4%RsiNTH3Enl}lw;?i;BUaV_DX%+Qw}zP7J_>#o6F?DQ!P|1*Nnma>%xS057r(z0jZ+{ zZyqHTLpl-mS0_mS6zXu`w!RruGXK?xxr#3V04e(&zxFBl#Hl)?L8=97XI_1 z0Q<5k@#K4=rJGakc0)JeKqfqQHC>Lj;gy(JlzkB|3{g;?fGb1VBE0Dt%G~h~M+Zmj zegx?H4y0IbnLYs^P=C9HuMC38w^-o6%=+t^ATV%n8I42yCV?rpBfwp@WigZlUkJyA zGng2%-3bs!IZz4_GBVL4w^TB~gpC0A23d$yv8DJFMF8;U2BUv;ApIIs$UXrag-V!f zcwY!^iHh;;FayiYq;geaVlC^hwLmgIh3$X0z!NEpE``r?x`Sn(hculeaUB-y;vh46 z_J`$=M|cqzm>KR8An@xJX;6Ie>N#3E9tIV7CO0T?hOt)>Z04^&CBrT~)$ZQU&;SuF zS+KLQS7U`sdK{+NGL4z&6mOA$N;vnJ9`x8Fqtz6PE4$ht20}>>m@UsH><@9!hBOk< zTF=U8*02hx%RVjwJTQb=YbUNP47xNj`~JwwB9aGXbp}5shdG8^w7Bo=pp1$ge%laN zcxt{hIgS;EeJn^Y^kE2i=8IWdvS3mZ4hJAcvo|MFf z10(2&8cfbf%0pHBHeX)zx8}%?!#dX(g+S0HNlZHo^Fhxno*a>-$L&aZww1FyCKSJ{ zThQP9N$Zx|qkxaL8pGSn*ev6=D%+#f9WIeZtF7Ut+Y}A{g}iNp(@2;25A%-f@3x5$ z1ul~A*49t9drzWT8x=}nm;s580LMG|M7SWz+)lsv`dEww)9O>0GZ>;#Wx#$7*^P4P zHhEJ5K=forpB!&_aBoXH zkQ#VD2WUmNgniTu3xna2L15pT*Fv!%1@x|m<>Zg>r!12Urt77+LMq5WH+%GrYJ=*5_U*%TRxJ`4-e&AopaBJ(2n- zyhA^mP>EoMP>HyOxCMUzB7>(ecC;zWpS#QdR8}n}WqXgg;76D^hx=**oD#*}gWO(%QaI%IwoOk>fpImq2d<4&UNTOcP6 zm=k|Glo3avVDD#W%uuDT+$+a9v}GWC2Nc~x8X*@MOOkx?(jjUAhrNKct>S>m7Ij5r zZ`=F>=Oaz?4fZ#%Swy>QiOSsNq%(m7j4pcSSXg@aq znkLVT{S6C+2(%J=Nr=^$&KckO$~;^J&(xN=O=8h3#TD_G58Nf23@20D36Hy*v1glS zTcl!dPUk(s9(y2R-0VFo2%eo`cC0WW3$adfYy4O(*C@K9d93C%Wv6`XITjob8B7I} z&Ro3O+}-gVd@;KxD)UR1XWOPFj5}**gu&$|G5e~VSSmS@N@vza-CVKCTe4+K2s9bG z{c^dz;sFJyf>zRVs$<9sZ(WJ4?=YWrZtQvsXaRVVL7mnYyJ*0KB_%op!N2wv*H3Kw?o()?nko$AxH?i<{UU6PJb5$;%w7(uSzkHlN}x&9}2Hr5u;$ zfd0m(_&p<-zE*LHIY|Cw;WCmHsSRp&1BLj~+OZO1aT+;chlD5syCN{EIfv?ZROY=E zg-#6&5gAg=-y47sgnZ}2Opl)tmV3gkAF@O@I4)Pr#O>-cX}If{MZAOn;KH9G2-(3fvy;t#Lsl0z{}@ zKh?GdjrLVPs=$SS$|~m#eo^j>JX7}l+Mrr4m@t@s)&~xv*{#l85wnluMor$$FoPy+ z%t#tkozYM@kMmo*cI2cgARoPwGk@uCuPI(v`RuEg^0_^DoiWDuT!{o#7TH%(vAH+E zgByn8|68=!w5?_{0@UD&o$*ADee&N9zGBCN{tVJZKUD9Tf_{89e7TwB=kuWm6+()i zQ`{{so@dS(#KH+!o)4vQ`RPos&5QqyO9*|}s)!xkQ0{O$A7a9$bcrCx)Hw51)I^Kkm#VLi@I%lshVW95DsQB~-)DB(6x%TO0;Gxh!rC6JDEJr{8n?mqGYF7^`OFdNIn=^0tSHxWs;{hWMpWxuTWQ*Myg(MR>h3eM>c%_o7NDdq1r<* zbJ)yn%-5gug(~4&AVAuvWq}(3#*Syo>UH8iP1c1Rmgf#t-G&l?sBIOe>JE2ww&VLr zR(OLRC;T~59(jm7PjfbSQHmg2&_8>>>EBGArMc~D96PL+r>20$FRa~X-u^tg{Cb}F z1Aayh{eLXMLHcGvFdc#EOA#W=vwzs|%C_FGZuTj7<}Q=tiWaofMbXs(U`oCyH@=|< zriZ7AxL-&MyID|GCG^Xf*$!((ArN3}=Xa5VzTJh28)xa4byPUYE0OmTkk=pv?dga2-vTvKBTMD}1d^<`UELIZCaVenSMn!X)6JQJ;+MqQOYuE)a zx~|0S6I}#}1=ruPRbp+Ym?0=hAFA4b#yEwZZPeM$dYb264prq4P%zb8&2&9e;IGF* zIH(uFS}2Nb-tIVTJ~;<}K7q`NQtdj{5=&<;K;P7OoP(KOJxJv~joMd!M1qkSnKLBq0zMZGVskImm9Vo6^I}H+au8e;HQbdE+ylyu zfdTg7=2se_w-f1;6qC@&J0Iz6~^?M=%hjH9@phEks@=h$Ys;SMZd|_ zT7fb%FxEkZ8{kQubS?TaU706=BaHFTG6zz%2jvn{W&GBKHXZkS-&O zFTi)J@6a8kY%lW??E142hYC6ZxrBB$w)rzq`806J zB62a${O&ua7O)T^D13VyW7}b+LZKovMn?~l(h6D#P6u;g&rkx7|v@jG%aY*JNp z85##~Fb(_g_qd}gO2&>?Ka05+<5%RD3u*$Q?ECf_3fQ6xOPxO_RmU`#GWdXc7eVq) z6f1?r=q-BFmV1a$D`0GFN8_PHkuDjMvX@|2v#U(`!8q!32P_s}9!8^@GbCiOq`QjF zy<+`m+aZ}YyGmn8g&lobD0h{ed(ma*N=tvgUu+V?8s^-eNxBJXz4lGK#R=s5_<{bG zuPCgp=5C`H>*Pv0Yv;oZjkEw3U_6YE4Ufg;C}93Z-io_og24IkR15RX*Ih>$BH=p- z{aD+Vb()7m0XnOfZ7#M$Sb#Nx604PK1zlN4D`XZD5A~&EeqOq`j_laqd4}RA>6&#p zd!T3J7X1=;H6=8ZE}5)c#9P6t$1I4^E9@*vddPoO=rq|==2xYk013Dr=%QTG-zRw@$ z6~Ff8*JJ=#@EP9o|2(B02<0`m>5GU4FqJYyVZ1}U%$W69Tc8&x&A>26e@m&3RlVrZ zvGSSz6ps|CsrKwoXAhA24iKZvgct~RNa-2iZ{YXf>H;%=Z}7v^njm>W(MlH@7%WNUS1a`u+@j^NoES<;_n(>KI_$q*90P1N|d3 z5&?c|?RV^p4r=U%mmOG`nt|?mefOO~%~?~h*uEv+xx8Uz=(mlT&waZRJMD>6^549a zvv}JC+W7`EfOA1j_iy#Gk<^IV&>mk*MyJp3C4iq3St?EfFqKzfwq^=b6(512KdlW4 zyvh1C?5|@-aE<<99}?db;Js|kPQ*pE#!iz#1fvcILmk}1qUwxk%Ss|0O^xuQpgVJ7 zX~~HQ5!{R%Sk9Ii`G2Xb@{eTs_V{?m%tyxAMsEH9R(+h0VweOCk z{weFfSkc>+)Y*xBkedDzZOhzHKqA9?z?r9)pqj4g5EkqnCM2^*guGs`HHFJkBd_?} zRUWU1+2auKS0$V>|5W!w1~0wr{fl|kxi`p)Bijp1;rs10OFPI=i&59PVvH$}0z0_` z7al-|-Z5*%Tu_rFf62U9}Ed5sp>XaMbQ6=J-t`?2Apcr|E*Q z;;`v7O2`cr%nI|U9pH9ydxm0C;q@Nw0t4nyd!7tVsnhplIH^){sIpI1@*7p^<9W)8 zNcS-7)_iUt(YXdIiI`=dP>mnV}L&7>I%h74TrQcMO4LwCeIku5KKpZI=W& zdJ&gA{rY*(n&{&px;zXItS~K+38O4g6-A2Sdn&pvh)2F~c|2>I6HboUc}l9^ga|gq zsYA+GSkA@;760~U>7ns)U>${36VcgzAG~Y>WFG|;p_`gpd7}69m1CvNyoq$&4n-MG z_b!JqJ3Dn2K`%Cz>kmWU@Kq(hCxzT6ha*-wUk_rh!F^!Ywgh$e4D{TDZ_q+%Sg^p8 zDh412QWmQEtRQ~o>12d?7?DoU;UHu~m=Hnf2$>Y*W{&w4$P9jsNJN+PG7C!%82dPoJvth~`k-qE_ToHm+wow&@sF%fY$5%(jg?_d79VCW-eG)esA3UQlpZ0v>;rBSvVz892BjMPfTd?R1xUv@D>LMh1~*!Gd+(G)|7h&N+ZX z*Fy=9#fM18|4f4f1PcWmhT!=`mD>5A0)Zx-oAEcuyKoI8bpk?&{Qm*sawxZ-mc7N^ znRf2s9{43M;)3fSx6F>UnLy_Htyf=6QZNvD<;E?s0W&5|m+QdFR2mERhyhEQfDkN} z#bW@)C~zzZz^Qrjxt&yYAW!m`Kn5sSz2-@TQ)nVUo_?SQ?TN(BmdcYsPI>B7P2@y^ zJl$%VhnIG$K0Ny+;BZCk{~GZhAmGbkFa<9C|3`r{alAYyW!_Koo9MxtL`2B7%eFr~ z_HTi9dVHs%LZlQ&J!W062CW)vIa3n^O~mn|@_%R|(cP2~NT%h|!`~>M%etSHFy({Y zXm(;2yr^j^6c~^oy6YjlUQB90n2bF4j1-WIujpKO9A{nt@OJ+h0P^$$ZM!h3S*F5;F@gQxy5*Gr?LkMBC?sEj9ikd#$m##YYDI{6=p=?2^!2Xcq#RsDsj? zZtTWfn%UMjc8w)l8(X(3~i3iw4Y0F?r!0A`bO+3O*y;H7Xr_hc~=?T5kzX=d< z5V{^{+dNIZy6YwH1icRV*r2z7*6J`k03~a6?VGxEr;Pg ze@rNcW&dge*ZoAHW$~o;DrtVrrWU>i_i0E+&sVzCJ^iAa>*#A@ctRI|9%!zU8zc*;_fj3ZhOg7tN|b(T#ibYZYCz_+ zNEFG;i^?l&hEppo83k7;3r`5cDcS&S#XMKogsXrM#gu%h}jf|k3 z$YDIhajZL|^+30xVbX0uHItlHFbAC~TLpT1T0{$#K(?RH>-XEJym$75l|!J2?Udga ze=LZ}G2OL{>z%idhc9oZT>TTNW z^EC3eBCa;K(90f#-YLjF$F1Vp3+2sd2dX+EcA;AK;CfL2`t>J#s30eN7ic(<9x~^meq816$!%z!DI7w z#S*o-)9xk(4BQeND2wJOd<8>aL>>8*_du}8sp&sZ@={S`Q7PN2v8-6Zs*6|64T%mf z$dwq=Iy`}@m9_($m&Tt6BdiW$q>a8Gk2M^8FYiH>lj+`%M<~YHo(4&JIkk9=F>Ow1 zGF=LzpkEzg+D0=XSxqQc&0|0~Q z>0JO#VkzbP4yqKZesy6^l7Ga?-+xpsa&%}n26j|;`7?>a4wyIGdMG#ePOsg%$phLfM zTpup`oqYGpb--dbue8Qyj1>S>AaCgGnRwqo4>}MLl19aH~UL#q6=OWNHRYo%i>BR*kihZ3mB|y|b)n0N`5b!4B z|A8sW$WhXlO<3E}ERB4+eO*pzVEgN|ka`}gAIlKs&lZNAa0)aPuMeb5X!Ne=i$9Xj zcz_y_j4;S#7m(@&Wa18Ffuig>&9ISkU?h~cQKU@&i1k43hzUMZ5|S@GJVAst8hHTah5(QudzKOgC6w_ySWaHHFM=J*Qkp zY^|tJM}l>wzHs2MBKi<2M|Jp7V!7izavhuqt+|kvzR3+lO{y3`JcJy5N}x008?=>A zz+wbgg_)ufqiN_eS?-BIW(MZoD?Y7g_ycc)CD7?h14+IR?!jm!df|AUB{`sFL}h?r zA9lO8ps|v2$<#tGEg%XH5jsvR3BF5AXGqI>h=eKSxSZ8|@?`KZiQC@_Ty9Ox$nD(e zU8DjFXz~<5EhkE#ZzTiUvAwJTX;=m)e9o&GfJ+H2mY7AO@QM57E2Xj1qG3`#4rf&; z5b6>@~?YXb~eh>{UfbUcG?JCNG#f)nQFNMIxgr;B?2WQOhJD~ioX zoN@&qapRXNQl0&XRnioIa*mSwC>}9l{j3K~i1L;YV$7K~-C2i~HeeC;C=u}-d~v|CS5W(1 zMrV}jcW5JDcCsfITab*sxZXXz{8)z(Fi&5RA<9*%SC=E4WRRoIbRm`Wy^2bhr|h*8 zFk8|b2RLAAba=6YxzilhT1R-2sz6Td)92&tauX77`%-{`3S|kv?0%7AyeRlaSQge~ zI!QlCA;%szQs*+90yfoBs>vD;bm)Ai9qX@GWRrOTQOt*m=tki$>7?Z` za{IMpjWSJo^~HEI_L1pn1=sqgmi8tyXpUjZv8@l#wW6WUeYsbx><-G{RwW10#zNBA z;O^tmBP<~NI|_#%;{s;Z(Yx#K4P? z+l`zfDc7JV`pJmvDNhM{g92w<=TDZtcBEDm&py5iNH}b3+b{npk7wqC3zKDGYAeJm zh>c-0_sUmp6w4rOZeC0NZS`P==|=o?P_Z|-fTrr8c#9cHfy_t;3+=CnvLL0((29;^ zU;y`h5NM`cr%~~j{X9#J2tmSQrQiP`LN+5ONHy=QKvE$b&fv35?PzD!it5`dqTdj2 zPh5>aMjHlqWLs|5o-8N^l&Gk-@KAvf3|UjH(a&7rmJH=YnW5G$69as733pYe>A-$K ztx=532AL92lC1*(4PI`~{7Pm&+W>ClEo5E|cVNg1cKscx;0-K(>6|ED&J}N3HW&qO zXVCRoR$L1_i@N$AB@-gy((jQ4ehGjH(lf;r3Qg5PS6QK8{(LR91E;R5WbOUB& z8Jp$jV6T&D#|O47GBl8l$ff(rM&<4H0W+UAmPPQa0gN|3=4U^NX2(*98Uf(^bqhI5 zTuy47+!pkKK>l1&M=3u;d%wd0k3Jx;MiV)*6^43s7pg`qcL*-J)SPuJHbn7L|NeSx zaxGk8RK?-V#L*5OFZMdaTBHsSObx4n#7FAh#{&@G)Kb8PlJ05a=F0)_V=zVccN6&K z(E3@7-OT9tX$y}0@MND8N(j4lsivehR$Nw-MP)MQu2 zUh#Fxo=)(>1t=Uw)BrtnbO7&VjK=w2JL`W*Z%Cms?v9U;Gz5cV`c|h+MCqstd3Y=o zO5lx#alD>KFBqn$&(wmnud%p52mw>Di+2ghT7T_PDcIBpas7zG61RI{syc3#&CrQi z74e8)o~L$vpsLV3RJG$kgLgTY$g-W!`g=W^NEq?}>`1=@0p{w@T65e+)120%81RCO zO~i56uQw2R|sJywqyF*^s1-2G|mHCkw#3CoH=%9-CIyuL!>CEY;KRiz2oyX^%j-iCBGXQ`W}!ODHn}3 zuX90G@<-R)l#8LE-z7PH&YRo`$;IHmdwbvTL--v=PJwL85EO4a=|udYi#>@ zUwn%SE#*fgCYtX|&I*TP3eRqXF!}G6*^~L1fNkm7!{f!!v#UO*k%!m7ajI6kVT0=b zs^QE7q1@g${?0pNh8knvO_I%J-Iq!MS^E~Ig=lOiitk?0|@8E~>-dyy8&*aeK zhC2UU%PYt;L=Mc~fZCZbch*3}5E!e&*61bN0}v@)@q;?48Qa%O`yf(uCJuZuC`u*el$O2G_e^*f0z|4+EAxhxy(p<-XmsbZe2K8rFNBfJr zA{gVHxA>H7IXX56&`PmkzC#~poQko{hL4KF7ypVpcEI$;kuuskc=Z%cTy@%MegunFCm8WraI{iKM&z~ZN6 zn+y04kZb_yV39i+!%By1MUw($Y}t__{u~kk95;mXpkpS*Km;3sNav9!mHORzVFtBg?nu9zeIS!i7uF$ zH`9wx#>||)k32mLz_8tC-;AoJ*hWwxZF4k{L9i_uXy}B4K}n{Av_m!WA;olWi7o&I zhoviJxZ5%>$VotMpZyAGlYRl^#52EhRZr5*xW

V8$X!Cl=a zJjy~Q3i8&@gdn>8q~91WyzVn+R-B(cuWRSyQ5-4L&J^j*k52hQamU|iquN6fN4V66{1SSgbq#W-Z!LGkly z{YwK64o7aSYmNKeH$}D%)j*!0)4s;c;IN9=B&p%MteyU_+bI`JyG~8s2ZY!&qPF|x zaihu9bOXk(&Z=u&A!O>_(1een0A75R`b%^|6v9A^Bn(QdC|^EBkKZ;6`#YZ$*G7vP z#F>7yastC21vkzGWUhnV>j7Ez;*03O5_PK;o2&B@`CcrIEQdC&p}QcrRx7~ZgR8d5 z6>JiKt1wep`wbmedfC~mW!IMSu}uIeXO&5F$*;(`&I4e}YKe5^dlCjB%qx8q!W=C) zAv4ZSnfb8Wyn}OUhvL{Z=GqpueAt`261%t{1zRqDYVgRtOX=|$vOZpiIbXA9 z(@BkwBEIR3JfS_s317kj(+J@oTq5;*sAF<75p(nU(?V!3OOvX;eM$fP>*qcG%@zbB z2;35b!~qh*rgBWTQ`nL0mP--eGhayN8<}IN!+Ilagc)PttrAwhVI2UUlZ8A4V;v2m z4-URXZse5geK{<29hsPhBw0F!VpbSbMo7JLF2Z;B@xdm)8?@2rnH`{cC^P;D%jWaq zXhK%441JPSbyfjw`#5T}N!Ykanrk?bfs6eQNV0Hw{!WwNAe)M%kNsA#kik7E9+^BJ zda?y<{^yo2OqeO%S3 zo$sp7uIfdD+9BN?`*l)A2n^?{i}5bc=S=y51O>=nXQJAmN3RKSW7ti`!0KR=9hi-c zCI?+0#dQJeMqr12z1bhgv{`8}D0f*7OMQPvhuavP07hxHL*!rSZnzB)pr5dk*Ryb6 zvC=z?i&lQhvVTSc!rmPm^jcZ2D!F~joQxcEowbwptK1%1iY^*$8bmh=}P2uyvF?)ewB{G83{q zG2OSUb<*>Iq@@|3DA>)|&l){=%h-Aaod5f>H918+$sbh|U@bR>UGKeZIi=-C(({HxUkbNs@q?SIomPw9`WLSb*}ncMV0(-;rwtS2 z)p&Tj`-3S^6=U!lKiA>Oa@m$#Dc`#8*nsvx{OSk9nl(Bm7!Evfznx&A|Mk3r^HV9w z($M7D1<&bVG!cAH;H(FL2EfAx^Fw#%RddI8vJ%h*S~QBCA)5iyY7+hi;nkzh*3>q^ znCL$bwv~ESL^O=cVE^74BZiBYVQP-qYD@snEmnuyJ2ZZceUf_$@~*BuVFO)iplltQ z*77CITS4wdQzKe@33i*))(J_DpGYfUZzcg~m}_UtiUc=Mw(f`0;Z8IGUJEk5Mz7Td z+0gya9z++3Wl3plZ_ojsWZ4EnMTMd+rtz2MQ_=a}X`QNPB*4Uobvf`x8rt_rw)sDJ;^$%yfGz3njIW{uF-)+wdF6>;0Hv8c_gI3^Z0f@j4+uDptBJJ27FZp@_YlVgtpkK4q0Oj zp*0U>WlNjOz%f14V3>m8kt&bbp*V6*d==9Q3MKNzUSQuxnUpsT;zcr_j9O6~BhKe7 z;JhO}QdHAGE9FVM~rx6){Z0l8<+E7{#!-y{@dCQP%@=Cmf0S-fE=&L|m4YDZ|9YqF_ zVU<#;J8_6m(Ts<|j9M5t#tI_|h)Arf(88CvA=KmTN$!g8x>~7HNvb5g$&x+IFfk}J zsN68IFxzvl?I34-OJ^x@Ng(D2`{_CO`8UenNoOVpcXHxQ&xQSqSa7ciCHR HN4@+%MSFNw diff --git a/dotfiles/config/waybar/mesu-met.jsonc b/dotfiles/config/waybar/mesu-met.jsonc deleted file mode 100644 index 919e8b2..0000000 --- a/dotfiles/config/waybar/mesu-met.jsonc +++ /dev/null @@ -1,25 +0,0 @@ -{ - "clock": { - "format": "{:%H:%M}", - "tooltip-format": "{: %A, %e %B %Y}" - }, - - "custom/weather": { - //shows the current weather and forecast - "tooltip" : true, - "format" : "{}", - "interval" : 30, - "exec" : "~/.config/HyprV/waybar/scripts/waybar-wttr-c.py", - "return-type" : "json" - }, - - "temperature": { - "thermal-zone": 1, - "format": "", - "format-alt-click": "click-right", - "format-alt": " {temperatureC}°C", - "critical-threshold": 70, - "format-critical": " {temperatureC}°C", - "on-click": "kitty --start-as=fullscreen --title btop sh -c 'btop'" - } -} \ No newline at end of file diff --git a/dotfiles/config/waybar/modules/backlight.jsonc b/dotfiles/config/waybar/modules/backlight.jsonc new file mode 100644 index 0000000..b289e68 --- /dev/null +++ b/dotfiles/config/waybar/modules/backlight.jsonc @@ -0,0 +1,10 @@ + "backlight": { + "device": "intel_backlight", + "rotate": ${r_deg}, + "format": "{icon} {percent}%", + "format-icons": ["", "", "", "", "", "", "", "", ""], + "on-scroll-up": "brightnessctl set 1%+", + "on-scroll-down": "brightnessctl set 1%-", + "min-length": 6 + }, + diff --git a/dotfiles/config/waybar/modules/battery.jsonc b/dotfiles/config/waybar/modules/battery.jsonc new file mode 100644 index 0000000..51d6482 --- /dev/null +++ b/dotfiles/config/waybar/modules/battery.jsonc @@ -0,0 +1,14 @@ + "battery": { + "states": { + "good": 95, + "warning": 30, + "critical": 20 + }, + "format": "{icon} {capacity}%", + "rotate": ${r_deg}, + "format-charging": " {capacity}%", + "format-plugged": " {capacity}%", + "format-alt": "{time} {icon}", + "format-icons": ["󰂎", "󰁺", "󰁻", "󰁼", "󰁽", "󰁾", "󰁿", "󰂀", "󰂁", "󰂂", "󰁹"] + }, + diff --git a/dotfiles/config/waybar/modules/bluetooth.jsonc b/dotfiles/config/waybar/modules/bluetooth.jsonc new file mode 100644 index 0000000..919bbd8 --- /dev/null +++ b/dotfiles/config/waybar/modules/bluetooth.jsonc @@ -0,0 +1,15 @@ + "bluetooth": { + "format": "", + "rotate": ${r_deg}, + "format-disabled": "", + "format-connected": " {num_connections}", + "format-connected-battery": "{icon} {num_connections}", + // "format-connected-battery": "{icon} {device_alias}-{device_battery_percentage}%", + "format-icons": ["󰥇", "󰤾", "󰤿", "󰥀", "󰥁", "󰥂", "󰥃", "󰥄", "󰥅", "󰥆", "󰥈"], + // "format-device-preference": [ "device1", "device2" ], // preference list deciding the displayed device If this config option is not defined or none of the devices in the list are connected, it will fall back to showing the last connected device. + "tooltip-format": "{controller_alias}\n{num_connections} connected", + "tooltip-format-connected": "{controller_alias}\n{num_connections} connected\n\n{device_enumerate}", + "tooltip-format-enumerate-connected": "{device_alias}", + "tooltip-format-enumerate-connected-battery": "{device_alias}\t{icon} {device_battery_percentage}%" + }, + diff --git a/dotfiles/config/waybar/modules/cliphist.jsonc b/dotfiles/config/waybar/modules/cliphist.jsonc new file mode 100644 index 0000000..79bc947 --- /dev/null +++ b/dotfiles/config/waybar/modules/cliphist.jsonc @@ -0,0 +1,11 @@ + "custom/cliphist": { + "format": "{}", + "rotate": ${r_deg}, + "exec": "echo ; echo 󰅇 clipboard history", + "on-click": "sleep 0.1 && ${ScrDir}/cliphist.sh c", + "on-click-right": "sleep 0.1 && ${ScrDir}/cliphist.sh d", + "on-click-middle": "sleep 0.1 && ${ScrDir}/cliphist.sh w", + "interval" : 86400, // once every day + "tooltip": true + }, + diff --git a/dotfiles/config/waybar/modules/clock.jsonc b/dotfiles/config/waybar/modules/clock.jsonc new file mode 100644 index 0000000..fd8bdc3 --- /dev/null +++ b/dotfiles/config/waybar/modules/clock.jsonc @@ -0,0 +1,25 @@ + "clock": { + "format": "{:%I:%M %p}", + "rotate": ${r_deg}, + "format-alt": "{:%R 󰃭 %d·%m·%y}", + "tooltip-format": "{calendar}", + "calendar": { + "mode": "month", + "mode-mon-col": 3, + "on-scroll": 1, + "on-click-right": "mode", + "format": { + "months": "{}", + "weekdays": "{}", + "today": "{}" + } + }, + "actions": { + "on-click-right": "mode", + "on-click-forward": "tz_up", + "on-click-backward": "tz_down", + "on-scroll-up": "shift_up", + "on-scroll-down": "shift_down" + } + }, + diff --git a/dotfiles/config/waybar/modules/cpu.jsonc b/dotfiles/config/waybar/modules/cpu.jsonc new file mode 100644 index 0000000..cc89cb0 --- /dev/null +++ b/dotfiles/config/waybar/modules/cpu.jsonc @@ -0,0 +1,8 @@ + "cpu": { + "interval": 10, + "format": "󰍛 {usage}%", + "rotate": ${r_deg}, + "format-alt": "{icon0}{icon1}{icon2}{icon3}", + "format-icons": ["▁", "▂", "▃", "▄", "▅", "▆", "▇", "█"] + }, + diff --git a/dotfiles/config/waybar/modules/cpuinfo.jsonc b/dotfiles/config/waybar/modules/cpuinfo.jsonc new file mode 100644 index 0000000..453ba65 --- /dev/null +++ b/dotfiles/config/waybar/modules/cpuinfo.jsonc @@ -0,0 +1,10 @@ + "custom/cpuinfo": { + "exec": " ${ScrDir}/cpuinfo.sh", + "return-type": "json", + "format": "{}", + "rotate": ${r_deg}, + "interval": 5, // once every 5 seconds + "tooltip": true, + "max-length": 1000 + }, + diff --git a/dotfiles/config/waybar/modules/footer.jsonc b/dotfiles/config/waybar/modules/footer.jsonc new file mode 100644 index 0000000..1387f74 --- /dev/null +++ b/dotfiles/config/waybar/modules/footer.jsonc @@ -0,0 +1,47 @@ + +// modules for padding // + + "custom/l_end": { + "format": " ", + "interval" : "once", + "tooltip": false + }, + + "custom/r_end": { + "format": " ", + "interval" : "once", + "tooltip": false + }, + + "custom/sl_end": { + "format": " ", + "interval" : "once", + "tooltip": false + }, + + "custom/sr_end": { + "format": " ", + "interval" : "once", + "tooltip": false + }, + + "custom/rl_end": { + "format": " ", + "interval" : "once", + "tooltip": false + }, + + "custom/rr_end": { + "format": " ", + "interval" : "once", + "tooltip": false + }, + + "custom/padd": { + "format": " ", + "interval" : "once", + "tooltip": false + } + +} + diff --git a/dotfiles/config/waybar/modules/gpuinfo.jsonc b/dotfiles/config/waybar/modules/gpuinfo.jsonc new file mode 100644 index 0000000..07c917a --- /dev/null +++ b/dotfiles/config/waybar/modules/gpuinfo.jsonc @@ -0,0 +1,41 @@ + "custom/gpuinfo": { + "exec": " ${ScrDir}/gpuinfo.sh", + "return-type": "json", + "format": "{}", + "rotate": ${r_deg}, + "interval": 5, // once every 5 seconds + "tooltip": true, + "max-length": 1000, + "on-click": "${ScrDir}/gpuinfo.sh --toggle", + }, + + "custom/gpuinfo#nvidia": { + "exec": " ${ScrDir}/gpuinfo.sh --use nvidia ", + "return-type": "json", + "format": "{}", + "rotate": ${r_deg}, + "interval": 5, // once every 5 seconds + "tooltip": true, + "max-length": 1000, + }, + + "custom/gpuinfo#amd": { + "exec": " ${ScrDir}/gpuinfo.sh --use amd ", + "return-type": "json", + "format": "{}", + "rotate": ${r_deg}, + "interval": 5, // once every 5 seconds + "tooltip": true, + "max-length": 1000, + }, + + "custom/gpuinfo#intel": { + "exec": " ${ScrDir}/gpuinfo.sh --use intel ", + "return-type": "json", + "format": "{}", + "rotate": ${r_deg}, + "interval": 5, // once every 5 seconds + "tooltip": true, + "max-length": 1000, + }, + diff --git a/dotfiles/config/waybar/modules/header.jsonc b/dotfiles/config/waybar/modules/header.jsonc new file mode 100644 index 0000000..c328a9a --- /dev/null +++ b/dotfiles/config/waybar/modules/header.jsonc @@ -0,0 +1,12 @@ +// --// waybar config generated by wbarconfgen.sh //-- // + +{ +// sourced from header module // + + "layer": "top", + "position": "${w_position}", + "mod": "dock", + "${hv_pos}": ${w_height}, + "exclusive": true, + "passthrough": false, + "gtk-layer-shell": true, diff --git a/dotfiles/config/waybar/modules/idle_inhibitor.jsonc b/dotfiles/config/waybar/modules/idle_inhibitor.jsonc new file mode 100644 index 0000000..d109a95 --- /dev/null +++ b/dotfiles/config/waybar/modules/idle_inhibitor.jsonc @@ -0,0 +1,9 @@ + "idle_inhibitor": { + "format": "{icon}", + "rotate": ${r_deg}, + "format-icons": { + "activated": "󰥔", + "deactivated": "" + } + }, + diff --git a/dotfiles/config/waybar/modules/keybindhint.jsonc b/dotfiles/config/waybar/modules/keybindhint.jsonc new file mode 100644 index 0000000..0d7c320 --- /dev/null +++ b/dotfiles/config/waybar/modules/keybindhint.jsonc @@ -0,0 +1,6 @@ + "custom/keybindhint": { + "format": " ", + "rotate": ${r_deg}, + "on-click": "${ScrDir}/keybinds_hint.sh" + }, + diff --git a/dotfiles/config/waybar/modules/language.jsonc b/dotfiles/config/waybar/modules/language.jsonc new file mode 100644 index 0000000..fed6d0e --- /dev/null +++ b/dotfiles/config/waybar/modules/language.jsonc @@ -0,0 +1,6 @@ + "hyprland/language": { + "format": "{short} {variant}", + "rotate": ${r_deg}, + "on-click": "${ScrDir}/keyboardswitch.sh", + }, + diff --git a/dotfiles/config/waybar/modules/mediaplayer.py b/dotfiles/config/waybar/modules/mediaplayer.py new file mode 100644 index 0000000..eee55b6 --- /dev/null +++ b/dotfiles/config/waybar/modules/mediaplayer.py @@ -0,0 +1,183 @@ +#!/usr/bin/env python3 +import gi +gi.require_version("Playerctl", "2.0") +from gi.repository import Playerctl, GLib +from gi.repository.Playerctl import Player +import argparse +import logging +import sys +import signal +import gi +import json +import os +from typing import List + +logger = logging.getLogger(__name__) + +def signal_handler(sig, frame): + logger.info("Received signal to stop, exiting") + sys.stdout.write("\n") + sys.stdout.flush() + # loop.quit() + sys.exit(0) + + +class PlayerManager: + def __init__(self, selected_player=None): + self.manager = Playerctl.PlayerManager() + self.loop = GLib.MainLoop() + self.manager.connect( + "name-appeared", lambda *args: self.on_player_appeared(*args)) + self.manager.connect( + "player-vanished", lambda *args: self.on_player_vanished(*args)) + + signal.signal(signal.SIGINT, signal_handler) + signal.signal(signal.SIGTERM, signal_handler) + signal.signal(signal.SIGPIPE, signal.SIG_DFL) + self.selected_player = selected_player + + self.init_players() + + def init_players(self): + for player in self.manager.props.player_names: + if self.selected_player is not None and self.selected_player != player.name: + logger.debug(f"{player.name} is not the filtered player, skipping it") + continue + self.init_player(player) + + def run(self): + logger.info("Starting main loop") + self.loop.run() + + def init_player(self, player): + logger.info(f"Initialize new player: {player.name}") + player = Playerctl.Player.new_from_name(player) + player.connect("playback-status", + self.on_playback_status_changed, None) + player.connect("metadata", self.on_metadata_changed, None) + self.manager.manage_player(player) + self.on_metadata_changed(player, player.props.metadata) + + def get_players(self) -> List[Player]: + return self.manager.props.players + + def write_output(self, text, player, tooltip): + logger.debug(f"Writing output: {text}") + + output = {"text": text, + "class": "custom-" + player.props.player_name, + "alt": player.props.player_name, + "tooltip": tooltip} + + sys.stdout.write(json.dumps(output) + "\n") + sys.stdout.flush() + + def clear_output(self): + sys.stdout.write("\n") + sys.stdout.flush() + + def on_playback_status_changed(self, player, status, _=None): + logger.debug(f"Playback status changed for player {player.props.player_name}: {status}") + self.on_metadata_changed(player, player.props.metadata) + + def get_first_playing_player(self): + players = self.get_players() + logger.debug(f"Getting first playing player from {len(players)} players") + if len(players) > 0: + # if any are playing, show the first one that is playing + # reverse order, so that the most recently added ones are preferred + for player in players[::-1]: + if player.props.status == "Playing": + return player + # if none are playing, show the first one + return players[0] + else: + logger.debug("No players found") + return None + + def show_most_important_player(self): + logger.debug("Showing most important player") + # show the currently playing player + # or else show the first paused player + # or else show nothing + current_player = self.get_first_playing_player() + if current_player is not None: + self.on_metadata_changed(current_player, current_player.props.metadata) + else: + self.clear_output() + + def on_metadata_changed(self, player, metadata, _=None): + logger.debug(f"Metadata changed for player {player.props.player_name}") + player_name = player.props.player_name + artist = player.get_artist() + title = player.get_title() + + track_info = "" + if player_name == "spotify" and "mpris:trackid" in metadata.keys() and ":ad:" in player.props.metadata["mpris:trackid"]: + track_info = "Advertisement" + elif artist is not None and title is not None: + track_info = f"{artist} - {title}" + else: + track_info = title + tooltip = track_info + if track_info: + if player.props.status == "Playing": + track_info = " " + track_info + else: + track_info = " " + track_info + # only print output if no other player is playing + current_playing = self.get_first_playing_player() + if current_playing is None or current_playing.props.player_name == player.props.player_name: + self.write_output(track_info, player, tooltip) + else: + logger.debug(f"Other player {current_playing.props.player_name} is playing, skipping") + + def on_player_appeared(self, _, player): + logger.info(f"Player has appeared: {player.name}") + if player is not None and (self.selected_player is None or player.name == self.selected_player): + self.init_player(player) + else: + logger.debug( + "New player appeared, but it's not the selected player, skipping") + + def on_player_vanished(self, _, player): + logger.info(f"Player {player.props.player_name} has vanished") + self.show_most_important_player() + +def parse_arguments(): + parser = argparse.ArgumentParser() + + # Increase verbosity with every occurrence of -v + parser.add_argument("-v", "--verbose", action="count", default=0) + + # Define for which player we"re listening + parser.add_argument("--player") + + parser.add_argument("--enable-logging", action="store_true") + + return parser.parse_args() + + +def main(): + arguments = parse_arguments() + + # Initialize logging + if arguments.enable_logging: + logfile = os.path.join(os.path.dirname( + os.path.realpath(__file__)), "media-player.log") + logging.basicConfig(filename=logfile, level=logging.DEBUG, + format="%(asctime)s %(name)s %(levelname)s:%(lineno)d %(message)s") + + # Logging is set by default to WARN and higher. + # With every occurrence of -v it's lowered by one + logger.setLevel(max((3 - arguments.verbose) * 10, 0)) + + logger.info("Creating player manager") + if arguments.player: + logger.info(f"Filtering for player: {arguments.player}") + player = PlayerManager(arguments.player) + player.run() + + +if __name__ == "__main__": + main() diff --git a/dotfiles/config/waybar/modules/memory.jsonc b/dotfiles/config/waybar/modules/memory.jsonc new file mode 100644 index 0000000..1e2c8d8 --- /dev/null +++ b/dotfiles/config/waybar/modules/memory.jsonc @@ -0,0 +1,18 @@ + "memory": { + "states": { + "c": 90, // critical + "h": 60, // high + "m": 30, // medium + }, + "interval": 30, + "format": "󰾆 {used}GB", + "rotate": ${r_deg}, + "format-m": "󰾅 {used}GB", + "format-h": "󰓅 {used}GB", + "format-c": " {used}GB", + "format-alt": "󰾆 {percentage}%", + "max-length": 10, + "tooltip": true, + "tooltip-format": "󰾆 {percentage}%\n {used:0.1f}GB/{total:0.1f}GB" + }, + diff --git a/dotfiles/config/waybar/modules/mpris.jsonc b/dotfiles/config/waybar/modules/mpris.jsonc new file mode 100644 index 0000000..1b15569 --- /dev/null +++ b/dotfiles/config/waybar/modules/mpris.jsonc @@ -0,0 +1,16 @@ + "mpris": { + "format": "{player_icon} {dynamic}", + "rotate": ${r_deg}, + "format-paused": "{status_icon} {dynamic}", + "player-icons": { + "default": "▶", + "mpv": "🎵" + }, + "status-icons": { + "paused": "⏸" + }, + // "ignored-players": ["firefox"] + "max-length": 1000, + "interval": 1 + }, + diff --git a/dotfiles/config/waybar/modules/network.jsonc b/dotfiles/config/waybar/modules/network.jsonc new file mode 100644 index 0000000..1c5231d --- /dev/null +++ b/dotfiles/config/waybar/modules/network.jsonc @@ -0,0 +1,13 @@ + "network": { + "tooltip": true, + "format-wifi": " ", + "rotate": ${r_deg}, + "format-ethernet": "󰈀 ", + "tooltip-format": "Network: {essid}\nSignal strength: {signaldBm}dBm ({signalStrength}%)\nFrequency: {frequency}MHz\nInterface: {ifname}\nIP: {ipaddr}/{cidr}\nGateway: {gwaddr}\nNetmask: {netmask}", + "format-linked": "󰈀 {ifname} (No IP)", + "format-disconnected": "󰖪 ", + "tooltip-format-disconnected": "Disconnected", + "format-alt": " {bandwidthDownBytes}  {bandwidthUpBytes}", + "interval": 2, + }, + diff --git a/dotfiles/config/waybar/modules/power.jsonc b/dotfiles/config/waybar/modules/power.jsonc new file mode 100644 index 0000000..7a4069e --- /dev/null +++ b/dotfiles/config/waybar/modules/power.jsonc @@ -0,0 +1,10 @@ + "custom/power": { + "format": "{}", + "rotate": ${r_deg}, + "exec": "echo ; echo  logout", + "on-click": "${ScrDir}/logoutlaunch.sh 2", + "on-click-right": "${ScrDir}/logoutlaunch.sh 1", + "interval" : 86400, // once every day + "tooltip": true + }, + diff --git a/dotfiles/config/waybar/modules/pulseaudio.jsonc b/dotfiles/config/waybar/modules/pulseaudio.jsonc new file mode 100644 index 0000000..020dfb1 --- /dev/null +++ b/dotfiles/config/waybar/modules/pulseaudio.jsonc @@ -0,0 +1,34 @@ + "pulseaudio": { + "format": "{icon} {volume}", + "rotate": ${r_deg}, + "format-muted": "婢", + "on-click": "pavucontrol -t 3", + "on-click-middle": "${ScrDir}/volumecontrol.sh -o m", + "on-scroll-up": "${ScrDir}/volumecontrol.sh -o i", + "on-scroll-down": "${ScrDir}/volumecontrol.sh -o d", + "tooltip-format": "{icon} {desc} // {volume}%", + "scroll-step": 5, + "format-icons": { + "headphone": "", + "hands-free": "", + "headset": "", + "phone": "", + "portable": "", + "car": "", + "default": ["", "", ""] + } + }, + + "pulseaudio#microphone": { + "format": "{format_source}", + "rotate": ${r_deg}, + "format-source": "", + "format-source-muted": "", + "on-click": "pavucontrol -t 4", + "on-click-middle": "${ScrDir}/volumecontrol.sh -i m", + "on-scroll-up": "${ScrDir}/volumecontrol.sh -i i", + "on-scroll-down": "${ScrDir}/volumecontrol.sh -i d", + "tooltip-format": "{format_source} {source_desc} // {source_volume}%", + "scroll-step": 5 + }, + diff --git a/dotfiles/config/waybar/modules/spotify.jsonc b/dotfiles/config/waybar/modules/spotify.jsonc new file mode 100644 index 0000000..327d185 --- /dev/null +++ b/dotfiles/config/waybar/modules/spotify.jsonc @@ -0,0 +1,15 @@ + "custom/spotify": { + "exec": "/usr/bin/env python3 $HOME/.config/waybar/modules/mediaplayer.py --player spotify", + "format": " {}", + "rotate": ${r_deg}, + "return-type": "json", + "on-click": "playerctl play-pause --player spotify", + "on-click-right": "playerctl next --player spotify", + "on-click-middle": "playerctl previous --player spotify", + "on-scroll-up": "${ScrDir}/volumecontrol.sh -p spotify i", + "on-scroll-down": "${ScrDir}/volumecontrol.sh -p spotify d", + "max-length": 25, + "escape": true, + "tooltip": true + }, + diff --git a/dotfiles/config/waybar/modules/style.css b/dotfiles/config/waybar/modules/style.css new file mode 100644 index 0000000..c64be4c --- /dev/null +++ b/dotfiles/config/waybar/modules/style.css @@ -0,0 +1,143 @@ +* { + border: none; + border-radius: 0px; + font-family: "JetBrainsMono Nerd Font"; + font-weight: bold; + font-size: ${s_fontpx}px; + min-height: 10px; +} + +@import "themes/theme.css"; + +window#waybar { + background: @bar-bg; +} + +tooltip { + background: @main-bg; + color: @main-fg; + border-radius: ${t_radius}px; + border-width: 0px; +} + +#workspaces button { + box-shadow: none; + text-shadow: none; + padding: 0px; + border-radius: ${w_radius}px; + margin-${x1}: ${w_margin}px; + margin-${x2}: ${w_margin}px; + margin-${x3}: 0px; + padding-${x3}: ${w_paddin}px; + padding-${x4}: ${w_paddin}px; + margin-${x4}: 0px; + color: @main-fg; + animation: ws_normal 20s ease-in-out 1; +} + +#workspaces button.active { + background: @wb-act-bg; + color: @wb-act-fg; + margin-${x3}: ${w_margin}px; + padding-${x3}: ${w_padact}px; + padding-${x4}: ${w_padact}px; + margin-${x4}: ${w_margin}px; + animation: ws_active 20s ease-in-out 1; + transition: all 0.4s cubic-bezier(.55,-0.68,.48,1.682); +} + +#workspaces button:hover { + background: @wb-hvr-bg; + color: @wb-hvr-fg; + animation: ws_hover 20s ease-in-out 1; + transition: all 0.3s cubic-bezier(.55,-0.68,.48,1.682); +} + +#taskbar button { + box-shadow: none; + text-shadow: none; + padding: 0px; + border-radius: ${w_radius}px; + margin-${x1}: ${w_margin}px; + margin-${x2}: ${w_margin}px; + margin-${x3}: 0px; + padding-${x3}: ${w_paddin}px; + padding-${x4}: ${w_paddin}px; + margin-${x4}: 0px; + color: @wb-color; + animation: tb_normal 20s ease-in-out 1; +} + +#taskbar button.active { + background: @wb-act-bg; + color: @wb-act-color; + margin-${x3}: ${w_margin}px; + padding-${x3}: ${w_padact}px; + padding-${x4}: ${w_padact}px; + margin-${x4}: ${w_margin}px; + animation: tb_active 20s ease-in-out 1; + transition: all 0.4s cubic-bezier(.55,-0.68,.48,1.682); +} + +#taskbar button:hover { + background: @wb-hvr-bg; + color: @wb-hvr-color; + animation: tb_hover 20s ease-in-out 1; + transition: all 0.3s cubic-bezier(.55,-0.68,.48,1.682); +} + +${modules_ls} +#custom-l_end, +#custom-r_end, +#custom-sl_end, +#custom-sr_end, +#custom-rl_end, +#custom-rr_end { + color: @main-fg; + background: @main-bg; + opacity: 1; + margin: ${x1g_margin}px ${x2g_margin}px ${x3g_margin}px ${x4g_margin}px; + padding-${x3}: ${g_paddin}px; + padding-${x4}: ${g_paddin}px; +} + +#workspaces, +#taskbar { + padding: 0px; +} + +#custom-r_end { + border-radius: ${x1rb_radius}px ${x2rb_radius}px ${x3rb_radius}px ${x4rb_radius}px; + margin-${x4}: ${e_margin}px; + padding-${x4}: ${e_paddin}px; +} + +#custom-l_end { + border-radius: ${x1lb_radius}px ${x2lb_radius}px ${x3lb_radius}px ${x4lb_radius}px; + margin-${x3}: ${e_margin}px; + padding-${x3}: ${e_paddin}px; +} + +#custom-sr_end { + border-radius: 0px; + margin-${x4}: ${e_margin}px; + padding-${x4}: ${e_paddin}px; +} + +#custom-sl_end { + border-radius: 0px; + margin-${x3}: ${e_margin}px; + padding-${x3}: ${e_paddin}px; +} + +#custom-rr_end { + border-radius: ${x1rc_radius}px ${x2rc_radius}px ${x3rc_radius}px ${x4rc_radius}px; + margin-${x4}: ${e_margin}px; + padding-${x4}: ${e_paddin}px; +} + +#custom-rl_end { + border-radius: ${x1lc_radius}px ${x2lc_radius}px ${x3lc_radius}px ${x4lc_radius}px; + margin-${x3}: ${e_margin}px; + padding-${x3}: ${e_paddin}px; +} diff --git a/dotfiles/config/waybar/modules/taskbar.jsonc b/dotfiles/config/waybar/modules/taskbar.jsonc new file mode 100644 index 0000000..e40dcce --- /dev/null +++ b/dotfiles/config/waybar/modules/taskbar.jsonc @@ -0,0 +1,17 @@ + "wlr/taskbar": { + "format": "{icon}", + "rotate": ${r_deg}, + "icon-size": ${i_task}, + "icon-theme": "${i_theme}", + "spacing": 0, + "tooltip-format": "{title}", + "on-click": "activate", + "on-click-middle": "close", + "ignore-list": [ + "Alacritty" + ], + "app_ids-mapping": { + "firefoxdeveloperedition": "firefox-developer-edition" + } + }, + diff --git a/dotfiles/config/waybar/modules/theme.jsonc b/dotfiles/config/waybar/modules/theme.jsonc new file mode 100644 index 0000000..8d431f5 --- /dev/null +++ b/dotfiles/config/waybar/modules/theme.jsonc @@ -0,0 +1,11 @@ + "custom/theme": { + "format": "{}", + "rotate": ${r_deg}, + "exec": "echo ; echo 󰟡 switch theme", + "on-click": "${ScrDir}/themeswitch.sh -n", + "on-click-right": "${ScrDir}/themeswitch.sh -p", + "on-click-middle": "sleep 0.1 && ${ScrDir}/themeselect.sh", + "interval" : 86400, // once every day + "tooltip": true + }, + diff --git a/dotfiles/config/waybar/modules/tray.jsonc b/dotfiles/config/waybar/modules/tray.jsonc new file mode 100644 index 0000000..d7c0bce --- /dev/null +++ b/dotfiles/config/waybar/modules/tray.jsonc @@ -0,0 +1,6 @@ + "tray": { + "icon-size": ${i_size}, + "rotate": ${r_deg}, + "spacing": 5 + }, + diff --git a/dotfiles/config/waybar/modules/updates.jsonc b/dotfiles/config/waybar/modules/updates.jsonc new file mode 100644 index 0000000..3a10c59 --- /dev/null +++ b/dotfiles/config/waybar/modules/updates.jsonc @@ -0,0 +1,10 @@ + "custom/updates": { + "exec": "${ScrDir}/systemupdate.sh", + "return-type": "json", + "format": "󰮯 {}", + "rotate": ${r_deg}, + "on-click": "${ScrDir}/systemupdate.sh up", + "interval": 86400, // once every day + "tooltip": true, + }, + diff --git a/dotfiles/config/waybar/modules/wallchange.jsonc b/dotfiles/config/waybar/modules/wallchange.jsonc new file mode 100644 index 0000000..dbbda7d --- /dev/null +++ b/dotfiles/config/waybar/modules/wallchange.jsonc @@ -0,0 +1,11 @@ + "custom/wallchange": { + "format": "{}", + "rotate": ${r_deg}, + "exec": "echo ; echo 󰆊 switch wallpaper", + "on-click": "${ScrDir}/swwwallpaper.sh -n", + "on-click-right": "${ScrDir}/swwwallpaper.sh -p", + "on-click-middle": "sleep 0.1 && ${ScrDir}/swwwallselect.sh", + "interval" : 86400, // once every day + "tooltip": true + }, + diff --git a/dotfiles/config/waybar/modules/wbar.jsonc b/dotfiles/config/waybar/modules/wbar.jsonc new file mode 100644 index 0000000..1a40e22 --- /dev/null +++ b/dotfiles/config/waybar/modules/wbar.jsonc @@ -0,0 +1,11 @@ + "custom/wbar": { + "format": "{}", //   // + "rotate": ${r_deg}, + "exec": "echo ; echo  switch bar //  dock", + "on-click": "${ScrDir}/wbarconfgen.sh n", + "on-click-right": "${ScrDir}/wbarconfgen.sh p", + "on-click-middle": "sleep 0.1 && ${ScrDir}/quickapps.sh kitty firefox spotify code dolphin", + "interval" : 86400, + "tooltip": true + }, + diff --git a/dotfiles/config/waybar/modules/window.jsonc b/dotfiles/config/waybar/modules/window.jsonc new file mode 100644 index 0000000..b0c4c7a --- /dev/null +++ b/dotfiles/config/waybar/modules/window.jsonc @@ -0,0 +1,17 @@ + "hyprland/window": { + "format": "  {}", + "rotate": ${r_deg}, + "separate-outputs": true, + "rewrite": { + "${USER}@${set_sysname}:(.*)": "$1 ", + "(.*) — Mozilla Firefox": "$1 󰈹", + "(.*)Mozilla Firefox": "Firefox 󰈹", + "(.*) - Visual Studio Code": "$1 󰨞", + "(.*)Visual Studio Code": "Code 󰨞", + "(.*) — Dolphin": "$1 󰉋", + "(.*)Spotify": "Spotify 󰓇", + "(.*)Steam": "Steam 󰓓" + }, + "max-length": 1000 + }, + diff --git a/dotfiles/config/waybar/modules/workspaces.jsonc b/dotfiles/config/waybar/modules/workspaces.jsonc new file mode 100644 index 0000000..8468d32 --- /dev/null +++ b/dotfiles/config/waybar/modules/workspaces.jsonc @@ -0,0 +1,10 @@ + "hyprland/workspaces": { + "disable-scroll": true, + "rotate": ${r_deg}, + "all-outputs": true, + "active-only": false, + "on-click": "activate", + "persistent-workspaces": { + } + }, + diff --git a/dotfiles/config/waybar/scripts/PBPbattery.sh b/dotfiles/config/waybar/scripts/PBPbattery.sh deleted file mode 100755 index 1cf34da..0000000 --- a/dotfiles/config/waybar/scripts/PBPbattery.sh +++ /dev/null @@ -1,21 +0,0 @@ - -#!/bin/bash -#simple Shellscript for waybar/i3blocks/polybar on Pinebook pro -#05012020 geri123@gmx.net Gerhard S. - -PERCENT=$(cat /sys/class/power_supply/cw2015-battery/capacity) -STATUS=$(cat /sys/class/power_supply/cw2015-battery/status) -case $(( - $PERCENT >= 0 && $PERCENT <= 20 ? 1 : - $PERCENT > 20 && $PERCENT <= 40 ? 2 : - $PERCENT > 40 && $PERCENT <= 60 ? 3 : - $PERCENT > 60 && $PERCENT <= 80 ? 4 : 5)) in -# - (1) echo $STATUS:"":$PERCENT%;; - (2) echo $STATUS:"":$PERCENT%;; - (3) echo $STATUS:"":$PERCENT%;; - (4) echo $STATUS:"":$PERCENT%;; - (5) echo $STATUS:"":$PERCENT%;; -esac - - diff --git a/dotfiles/config/waybar/scripts/baraction b/dotfiles/config/waybar/scripts/baraction deleted file mode 100755 index f2578eb..0000000 --- a/dotfiles/config/waybar/scripts/baraction +++ /dev/null @@ -1,40 +0,0 @@ -#!/bin/sh - -# Check which waybar theme is set -THEMEIS=$(readlink -f ~/.config/waybar/style.css | cut -d '-' -f2) - -#if the theme is not dark then we need to switch to it -if [ $THEMEIS != "dark.css" ]; then - SWITCHTO="-dark" -fi - -#set the waybar theme -ln -sf ~/.config/waybar/style/style$SWITCHTO.css ~/.config/waybar/style.css - -#set the wofi theme -ln -sf ~/.config/wofi/style/style$SWITCHTO.css ~/.config/wofi/style.css - -#set the xfce and GTK theme -# if [ $VER == "v4" ]; then -# xfconf-query -c xsettings -p /Net/IconThemeName -s "Papirus-Dark" -# gsettings set org.gnome.desktop.interface icon-theme "Papirus-Dark" -# else -# xfconf-query -c xsettings -p /Net/IconThemeName -s "Adwaita$SWITCHTO" -# gsettings set org.gnome.desktop.interface icon-theme "Adwaita$SWITCHTO" -# fi - -#change the background image and be cool about it ;) -swww img ~/.config/hypr/wallpaper$SWITCHTO.jpg --transition-fps 60 --transition-type wipe --transition-duration 2 - -#reset mako -sleep 1 -killall -SIGUSR2 dunst -dunst & - -#restart the waybar -#killall -SIGUSR2 waybar <-- start causing web brwsers to close so switched to below... -pkill waybar -waybar & - -# bottom waybar -#waybar --config ~/.config/waybar/config-bottom.jsonc diff --git a/dotfiles/config/waybar/scripts/brightness b/dotfiles/config/waybar/scripts/brightness deleted file mode 100755 index a57ca9e..0000000 --- a/dotfiles/config/waybar/scripts/brightness +++ /dev/null @@ -1,52 +0,0 @@ -#!/usr/bin/env bash - -iDIR="$HOME/.config/waybar/icons" - -# Get brightness -get_backlight() { - LIGHT=$(printf "%.0f\n" $(brightnessctl i)) - echo "${LIGHT}%" -} - -# Get icons -get_icon() { - backlight="$(brightnessctl g)" - current="${backlight%%%}" - if [[ ("$current" -ge "0") && ("$current" -le "52") ]]; then - icon="$iDIR/brightness-20.png" - elif [[ ("$current" -ge "52") && ("$current" -le "103") ]]; then - icon="$iDIR/brightness-40.png" - elif [[ ("$current" -ge "103") && ("$current" -le "155") ]]; then - icon="$iDIR/brightness-60.png" - elif [[ ("$current" -ge "155") && ("$current" -le "207") ]]; then - icon="$iDIR/brightness-80.png" - elif [[ ("$current" -ge "180") && ("$current" -le "255") ]]; then - icon="$iDIR/brightness-100.png" - fi -} - -# Notify -notify_user() { - notify-send -h string:x-canonical-private-synchronous:sys-notify -u low -i "$icon" "Brightness : $(brightnessctl g)" -} - -# Increase brightness -inc_backlight() { - brightnessctl set 10%+ && get_icon && notify_user -} - -# Decrease brightness -dec_backlight() { - brightnessctl set 10%- && get_icon && notify_user -} - -# Execute accordingly -if [[ "$1" == "--get" ]]; then - brightnessctl g -elif [[ "$1" == "--inc" ]]; then - inc_backlight -elif [[ "$1" == "--dec" ]]; then - dec_backlight -else - get_backlight -fi diff --git a/dotfiles/config/waybar/scripts/keyhint.sh b/dotfiles/config/waybar/scripts/keyhint.sh deleted file mode 100755 index 01f3396..0000000 --- a/dotfiles/config/waybar/scripts/keyhint.sh +++ /dev/null @@ -1,2 +0,0 @@ -#!/bin/sh -yad --title="EndeavourOS Sway-WM keybindings:" --no-buttons --geometry=400x345-15-400 --list --column=key: --column=description: --column=command: "ESC" "close this app" "" "=" "modkey" "(set mod Mod4)" "+enter" "Terminal" "(xfce4-terminal)" "+d" "Application Menu" "(wofi)" "+p" "Activities" "(wofi)" "+o" "" "Open Broswer" "+n" "" "Open Files" "+q" "close focused app" "(kill)" "[Shift]+Print-key" "screenshot" "(grim)" "+Shift+e" "power-menu" "(wofi)" "+t" "open keybinding helper" "full list" diff --git a/dotfiles/config/waybar/scripts/power-menu.sh b/dotfiles/config/waybar/scripts/power-menu.sh deleted file mode 100755 index edaa5d6..0000000 --- a/dotfiles/config/waybar/scripts/power-menu.sh +++ /dev/null @@ -1,16 +0,0 @@ -#!/bin/bash - -entries="Logout Suspend Reboot Shutdown" - -selected=$(printf '%s\n' $entries | wofi --conf=$HOME/.config/wofi/config.power --style=$HOME/.config/wofi/style.widgets.css | awk '{print tolower($1)}') - -case $selected in - logout) - swaymsg exit;; - suspend) - exec systemctl suspend;; - reboot) - exec systemctl reboot;; - shutdown) - exec systemctl poweroff -i;; -esac diff --git a/dotfiles/config/waybar/scripts/update-sys b/dotfiles/config/waybar/scripts/update-sys deleted file mode 100755 index 4f85aad..0000000 --- a/dotfiles/config/waybar/scripts/update-sys +++ /dev/null @@ -1,41 +0,0 @@ -#!/usr/bin/env bash - -# Original script by @speltriao on GitHub -# https://github.com/speltriao/Pacman-Update-for-GNOME-Shell - -# If the operating system is not Arch Linux, exit the script successfully -if [ ! -f /etc/arch-release ]; then - exit 0 -fi - -# Calculate updates for each service -AUR=$(yay -Qua | wc -l) -OFFICIAL=$(pacman -Qu | wc -l) - -# Case/switch for each service updates -case $1 in - aur) echo " $AUR";; - official) echo " $OFFICIAL";; -esac - -# If the parameter is "update", update all services -if [ "$1" = "update" ]; then - kitty --title update-sys sh -c 'yay -Syu' -fi - -# If there aren't any parameters, return the total number of updates -if [ "$1" = "" ]; then - # Calculate total number of updates - COUNT=$((OFFICIAL+AUR)) - # If there are updates, the script will output the following:  Updates - # If there are no updates, the script will output nothing. - - if [[ "$COUNT" = "0" ]] - then - echo "" - else - # This Update symbol is RTL. So ‭ is left-to-right override. - echo " $COUNT" - fi - exit 0 -fi diff --git a/dotfiles/config/waybar/scripts/volume b/dotfiles/config/waybar/scripts/volume deleted file mode 100755 index 9463f5e..0000000 --- a/dotfiles/config/waybar/scripts/volume +++ /dev/null @@ -1,106 +0,0 @@ -#!/bin/bash - -iDIR="$HOME/.config/waybar/icons" - -# Get Volume -get_volume() { - volume=$(pamixer --get-volume) - echo "$volume" -} - -# Get icons -get_icon() { - current=$(get_volume) - if [[ "$current" -eq "0" ]]; then - echo "$iDIR/volume-mute.png" - elif [[ ("$current" -ge "0") && ("$current" -le "30") ]]; then - echo "$iDIR/volume-low.png" - elif [[ ("$current" -ge "30") && ("$current" -le "60") ]]; then - echo "$iDIR/volume-mid.png" - elif [[ ("$current" -ge "60") && ("$current" -le "100") ]]; then - echo "$iDIR/volume-high.png" - fi -} - -# Notify -notify_user() { - notify-send -h string:x-canonical-private-synchronous:sys-notify -u low -i "$(get_icon)" "Volume : $(get_volume) %" -} - -# Increase Volume -inc_volume() { - pamixer -i 5 && notify_user -} - -# Decrease Volume -dec_volume() { - pamixer -d 5 && notify_user -} - -# Toggle Mute -toggle_mute() { - if [ "$(pamixer --get-mute)" == "false" ]; then - pamixer -m && notify-send -h string:x-canonical-private-synchronous:sys-notify -u low -i "$iDIR/volume-mute.png" "Volume Switched OFF" - elif [ "$(pamixer --get-mute)" == "true" ]; then - pamixer -u && notify-send -h string:x-canonical-private-synchronous:sys-notify -u low -i "$(get_icon)" "Volume Switched ON" - fi -} - -# Toggle Mic -toggle_mic() { - if [ "$(pamixer --default-source --get-mute)" == "false" ]; then - pamixer --default-source -m && notify-send -h string:x-canonical-private-synchronous:sys-notify -u low -i "$iDIR/microphone-mute.png" "Microphone Switched OFF" - elif [ "$(pamixer --default-source --get-mute)" == "true" ]; then - pamixer -u --default-source u && notify-send -h string:x-canonical-private-synchronous:sys-notify -u low -i "$iDIR/microphone.png" "Microphone Switched ON" - fi -} -# Get icons -get_mic_icon() { - current=$(pamixer --default-source --get-volume) - if [[ "$current" -eq "0" ]]; then - echo "$iDIR/microphone.png" - elif [[ ("$current" -ge "0") && ("$current" -le "30") ]]; then - echo "$iDIR/microphone.png" - elif [[ ("$current" -ge "30") && ("$current" -le "60") ]]; then - echo "$iDIR/microphone.png" - elif [[ ("$current" -ge "60") && ("$current" -le "100") ]]; then - echo "$iDIR/microphone.png" - fi -} -# Notify -notify_mic_user() { - notify-send -h string:x-canonical-private-synchronous:sys-notify -u low -i "$(get_mic_icon)" "Mic-Level : $(pamixer --default-source --get-volume) %" -} - -# Increase MIC Volume -inc_mic_volume() { - pamixer --default-source -i 5 && notify_mic_user -} - -# Decrease MIC Volume -dec_mic_volume() { - pamixer --default-source -d 5 && notify_mic_user -} - -# Execute accordingly -if [[ "$1" == "--get" ]]; then - get_volume -elif [[ "$1" == "--inc" ]]; then - inc_volume -elif [[ "$1" == "--dec" ]]; then - dec_volume -elif [[ "$1" == "--toggle" ]]; then - toggle_mute -elif [[ "$1" == "--toggle-mic" ]]; then - toggle_mic -elif [[ "$1" == "--get-icon" ]]; then - get_icon -elif [[ "$1" == "--get-mic-icon" ]]; then - get_mic_icon -elif [[ "$1" == "--mic-inc" ]]; then - inc_mic_volume -elif [[ "$1" == "--mic-dec" ]]; then - dec_mic_volume -else - get_volume -fi diff --git a/dotfiles/config/waybar/scripts/waybar-wttr.py b/dotfiles/config/waybar/scripts/waybar-wttr.py deleted file mode 100755 index 87918a7..0000000 --- a/dotfiles/config/waybar/scripts/waybar-wttr.py +++ /dev/null @@ -1,119 +0,0 @@ -#!/usr/bin/env python - -import json -import requests -from datetime import datetime - -WEATHER_CODES = { - '113': '☀️ ', - '116': '⛅ ', - '119': '☁️ ', - '122': '☁️ ', - '143': '☁️ ', - '176': '🌧️', - '179': '🌧️', - '182': '🌧️', - '185': '🌧️', - '200': '⛈️ ', - '227': '🌨️', - '230': '🌨️', - '248': '☁️ ', - '260': '☁️ ', - '263': '🌧️', - '266': '🌧️', - '281': '🌧️', - '284': '🌧️', - '293': '🌧️', - '296': '🌧️', - '299': '🌧️', - '302': '🌧️', - '305': '🌧️', - '308': '🌧️', - '311': '🌧️', - '314': '🌧️', - '317': '🌧️', - '320': '🌨️', - '323': '🌨️', - '326': '🌨️', - '329': '❄️ ', - '332': '❄️ ', - '335': '❄️ ', - '338': '❄️ ', - '350': '🌧️', - '353': '🌧️', - '356': '🌧️', - '359': '🌧️', - '362': '🌧️', - '365': '🌧️', - '368': '🌧️', - '371': '❄️', - '374': '🌨️', - '377': '🌨️', - '386': '🌨️', - '389': '🌨️', - '392': '🌧️', - '395': '❄️ ' -} - -data = {} - - -weather = requests.get("https://wttr.in/?format=j1").json() - - -def format_time(time): - return time.replace("00", "").zfill(2) - - -def format_temp(temp): - return (hour['FeelsLikeC']+"°").ljust(3) - - -def format_chances(hour): - chances = { - "chanceoffog": "Fog", - "chanceoffrost": "Frost", - "chanceofovercast": "Overcast", - "chanceofrain": "Rain", - "chanceofsnow": "Snow", - "chanceofsunshine": "Sunshine", - "chanceofthunder": "Thunder", - "chanceofwindy": "Wind" - } - - conditions = [] - for event in chances.keys(): - if int(hour[event]) > 0: - conditions.append(chances[event]+" "+hour[event]+"%") - return ", ".join(conditions) - -tempint = int(weather['current_condition'][0]['FeelsLikeC']) -extrachar = '' -if tempint > 0 and tempint < 10: - extrachar = '+' - - -data['text'] = ' '+WEATHER_CODES[weather['current_condition'][0]['weatherCode']] + \ - " "+extrachar+weather['current_condition'][0]['FeelsLikeC']+"°" - -data['tooltip'] = f"{weather['current_condition'][0]['weatherDesc'][0]['value']} {weather['current_condition'][0]['temp_C']}°\n" -data['tooltip'] += f"Feels like: {weather['current_condition'][0]['FeelsLikeC']}°\n" -data['tooltip'] += f"Wind: {weather['current_condition'][0]['windspeedKmph']}Km/h\n" -data['tooltip'] += f"Humidity: {weather['current_condition'][0]['humidity']}%\n" -for i, day in enumerate(weather['weather']): - data['tooltip'] += f"\n" - if i == 0: - data['tooltip'] += "Today, " - if i == 1: - data['tooltip'] += "Tomorrow, " - data['tooltip'] += f"{day['date']}\n" - data['tooltip'] += f"⬆️ {day['maxtempC']}° ⬇️ {day['mintempC']}° " - data['tooltip'] += f"🌅 {day['astronomy'][0]['sunrise']} 🌇 {day['astronomy'][0]['sunset']}\n" - for hour in day['hourly']: - if i == 0: - if int(format_time(hour['time'])) < datetime.now().hour-2: - continue - data['tooltip'] += f"{format_time(hour['time'])} {WEATHER_CODES[hour['weatherCode']]} {format_temp(hour['FeelsLikeC'])} {hour['weatherDesc'][0]['value']}, {format_chances(hour)}\n" - - -print(json.dumps(data)) diff --git a/dotfiles/config/waybar/scripts/weather.sh b/dotfiles/config/waybar/scripts/weather.sh deleted file mode 100755 index b03cd1c..0000000 --- a/dotfiles/config/waybar/scripts/weather.sh +++ /dev/null @@ -1,13 +0,0 @@ -#!/bin/bash - -LOC="$1" -# HTML encode string as %20 -LOCATION=$(sed -e "s/ /%20/g" <<<"$LOC") -content=$(curl -sS "https://thisdavej.azurewebsites.net/api/weather/current?loc=$LOCATION°=C") -ICON=$(curl -s 'https://wttr.in/?format=1' | sed 's/[+0-9a-cA-Z°-]//g' ) -# echo $ICON -TEMP=$(echo $content | jq -r '. | "\(.temperature)°\(.degType)"' | sed 's/"//g') -TOOLTIP=$(echo $content | jq -r '. | "\(.temperature)°\(.degType)\n\(.skytext)"' | sed 's/"//g') -CLASS=$(echo $content | jq .skytext) -echo '{"text": "'$TEMP'", "tooltip": "'$ICON $TOOLTIP $LOC'", "class": '$CLASS' }' - diff --git a/dotfiles/config/waybar/style.css b/dotfiles/config/waybar/style.css index 36ffd02..39f3343 100644 --- a/dotfiles/config/waybar/style.css +++ b/dotfiles/config/waybar/style.css @@ -1,109 +1,167 @@ * { border: none; - border-radius: 0; + border-radius: 0px; font-family: "JetBrainsMono Nerd Font"; font-weight: bold; - font-size: 16px; - min-height: 0; + font-size: 10px; + min-height: 10px; } +@import "themes/theme.css"; + window#waybar { - background: rgba(21, 18, 27, 0); - color: #f6f7fc; + background: @bar-bg; } tooltip { - background: #e7e7ec; - opacity: 0.8; - border-radius: 10px; - border-width: 2px; - border-style: solid; - border-color: #11111b; -} - -tooltip label{ - color: #2b2b2c; + background: @main-bg; + color: @main-fg; + border-radius: 7px; + border-width: 0px; } #workspaces button { - padding: 5px; - color: #f6f7fc; - margin-right: 5px; + box-shadow: none; + text-shadow: none; + padding: 0px; + border-radius: 9px; + margin-top: 3px; + margin-bottom: 3px; + margin-left: 0px; + padding-left: 3px; + padding-right: 3px; + margin-right: 0px; + color: @main-fg; + animation: ws_normal 20s ease-in-out 1; } #workspaces button.active { - color: #000000; - background: #a6e3a1; - border-radius: 10px; + background: @wb-act-bg; + color: @wb-act-fg; + margin-left: 3px; + padding-left: 12px; + padding-right: 12px; + margin-right: 3px; + animation: ws_active 20s ease-in-out 1; + transition: all 0.4s cubic-bezier(.55,-0.68,.48,1.682); } #workspaces button:hover { - background: #11111b; - color: #cdd6f4; - border-radius: 10px; + background: @wb-hvr-bg; + color: @wb-hvr-fg; + animation: ws_hover 20s ease-in-out 1; + transition: all 0.3s cubic-bezier(.55,-0.68,.48,1.682); } -#custom-launch_wofi, -#custom-launch_firefox, -#custom-launch_thunderbird, -#custom-launch_thunar, -#custom-launch_kitty, -#custom-lock_screen, -#custom-light_dark, -#custom-power_btn, -#custom-power_profile, -#custom-weather, -#custom-myhyprv, -#window, -#cpu, -#disk, -#custom-updates, -#memory, -#clock, -#battery, -#pulseaudio, -#network, -#tray, -#temperature, -#workspaces, -#idle_inhibitor, -#backlight { - background: rgba(21, 18, 27, 0); - opacity: 0.8; - padding: 0px 8px; - margin: 0px 3px; - border: 0px; -} - -#temperature.critical { - color: #e92d4d; -} - - -#workspaces { - padding-right: 0px; - padding-left: 5px; -} - -#window { - border-radius: 10px; - margin-left: 20px; - margin-right: 20px; -} - -#custom-launch_firefox, -#custom-launch_thunderbird, -#custom-launch_thunar, -#custom-launch_wofi, -#custom-launch_kitty, -#custom-weather { +#taskbar button { + box-shadow: none; + text-shadow: none; + padding: 0px; + border-radius: 9px; + margin-top: 3px; + margin-bottom: 3px; margin-left: 0px; - border-right: 0px; - font-size: 24px; - margin-right: 20px; + padding-left: 3px; + padding-right: 3px; + margin-right: 0px; + color: @wb-color; + animation: tb_normal 20s ease-in-out 1; } -#custom-launch_firefox, -#custom-launch_kitty { - font-size: 20px; -} \ No newline at end of file +#taskbar button.active { + background: @wb-act-bg; + color: @wb-act-color; + margin-left: 3px; + padding-left: 12px; + padding-right: 12px; + margin-right: 3px; + animation: tb_active 20s ease-in-out 1; + transition: all 0.4s cubic-bezier(.55,-0.68,.48,1.682); +} + +#taskbar button:hover { + background: @wb-hvr-bg; + color: @wb-hvr-color; + animation: tb_hover 20s ease-in-out 1; + transition: all 0.3s cubic-bezier(.55,-0.68,.48,1.682); +} + +#backlight, +#battery, +#bluetooth, +#custom-cliphist, +#clock, +#custom-cpuinfo, +#cpu, +#custom-gpuinfo, +#idle_inhibitor, +#custom-keybindhint, +#language, +#memory, +#mpris, +#network, +#custom-power, +#pulseaudio, +#custom-spotify, +#taskbar, +#custom-theme, +#tray, +#custom-updates, +#custom-wallchange, +#custom-wbar, +#window, +#workspaces, +#custom-l_end, +#custom-r_end, +#custom-sl_end, +#custom-sr_end, +#custom-rl_end, +#custom-rr_end { + color: @main-fg; + background: @main-bg; + opacity: 1; + margin: 4px 0px 4px 0px; + padding-left: 4px; + padding-right: 4px; +} + +#workspaces, +#taskbar { + padding: 0px; +} + +#custom-r_end { + border-radius: 0px 21px 21px 0px; + margin-right: 9px; + padding-right: 3px; +} + +#custom-l_end { + border-radius: 21px 0px 0px 21px; + margin-left: 9px; + padding-left: 3px; +} + +#custom-sr_end { + border-radius: 0px; + margin-right: 9px; + padding-right: 3px; +} + +#custom-sl_end { + border-radius: 0px; + margin-left: 9px; + padding-left: 3px; +} + +#custom-rr_end { + border-radius: 0px 7px 7px 0px; + margin-right: 9px; + padding-right: 3px; +} + +#custom-rl_end { + border-radius: 7px 0px 0px 7px; + margin-left: 9px; + padding-left: 3px; +} diff --git a/dotfiles/config/waybar/style/style-dark.css b/dotfiles/config/waybar/style/style-dark.css deleted file mode 100644 index b1c571a..0000000 --- a/dotfiles/config/waybar/style/style-dark.css +++ /dev/null @@ -1,108 +0,0 @@ -* { - border: none; - border-radius: 0; - font-family: "JetBrainsMono Nerd Font"; - font-weight: bold; - font-size: 16px; - min-height: 0; -} - -window#waybar { - background: rgba(21, 18, 27, 0); - color: #f6f7fc; -} - -tooltip { - background: #1e1e2e; - opacity: 0.8; - border-radius: 10px; - border-width: 2px; - border-style: solid; - border-color: #11111b; -} - -tooltip label{ - color: #cdd6f4; -} - -#workspaces button { - padding: 5px; - color: #f6f7fc; - margin-right: 5px; -} - -#workspaces button.active { - color: #000000; - background: #a6e3a1; - border-radius: 10px; -} - -#workspaces button:hover { - background: #11111b; - color: #cdd6f4; - border-radius: 10px; -} - -#custom-launch_wofi, -#custom-launch_firefox, -#custom-launch_thunderbird, -#custom-launch_thunar, -#custom-launch_kitty, -#custom-lock_screen, -#custom-light_dark, -#custom-power_btn, -#custom-power_profile, -#custom-weather, -#custom-myhyprv, -#window, -#cpu, -#disk, -#custom-updates, -#memory, -#clock, -#battery, -#pulseaudio, -#network, -#tray, -#temperature, -#workspaces, -#idle_inhibitor, -#backlight { - background: rgba(21, 18, 27, 0); - opacity: 1; - padding: 0px 8px; - margin: 0px 3px; - border: 0px; -} - -#temperature.critical { - color: #e92d4d; -} - -#workspaces { - padding-right: 0px; - padding-left: 5px; -} - -#window { - border-radius: 10px; - margin-left: 0px; - margin-right: 0px; -} - -#custom-launch_firefox, -#custom-launch_thunderbird, -#custom-launch_thunar, -#custom-launch_wofi, -#custom-launch_kitty, -#custom-weather { - margin-left: 0px; - border-right: 0px; - font-size: 24px; - margin-right: 20px; -} - -#custom-launch_firefox, -#custom-launch_kitty { - font-size: 20px; -} diff --git a/dotfiles/config/waybar/style/style.css b/dotfiles/config/waybar/style/style.css deleted file mode 100644 index 36ffd02..0000000 --- a/dotfiles/config/waybar/style/style.css +++ /dev/null @@ -1,109 +0,0 @@ -* { - border: none; - border-radius: 0; - font-family: "JetBrainsMono Nerd Font"; - font-weight: bold; - font-size: 16px; - min-height: 0; -} - -window#waybar { - background: rgba(21, 18, 27, 0); - color: #f6f7fc; -} - -tooltip { - background: #e7e7ec; - opacity: 0.8; - border-radius: 10px; - border-width: 2px; - border-style: solid; - border-color: #11111b; -} - -tooltip label{ - color: #2b2b2c; -} - -#workspaces button { - padding: 5px; - color: #f6f7fc; - margin-right: 5px; -} - -#workspaces button.active { - color: #000000; - background: #a6e3a1; - border-radius: 10px; -} - -#workspaces button:hover { - background: #11111b; - color: #cdd6f4; - border-radius: 10px; -} - -#custom-launch_wofi, -#custom-launch_firefox, -#custom-launch_thunderbird, -#custom-launch_thunar, -#custom-launch_kitty, -#custom-lock_screen, -#custom-light_dark, -#custom-power_btn, -#custom-power_profile, -#custom-weather, -#custom-myhyprv, -#window, -#cpu, -#disk, -#custom-updates, -#memory, -#clock, -#battery, -#pulseaudio, -#network, -#tray, -#temperature, -#workspaces, -#idle_inhibitor, -#backlight { - background: rgba(21, 18, 27, 0); - opacity: 0.8; - padding: 0px 8px; - margin: 0px 3px; - border: 0px; -} - -#temperature.critical { - color: #e92d4d; -} - - -#workspaces { - padding-right: 0px; - padding-left: 5px; -} - -#window { - border-radius: 10px; - margin-left: 20px; - margin-right: 20px; -} - -#custom-launch_firefox, -#custom-launch_thunderbird, -#custom-launch_thunar, -#custom-launch_wofi, -#custom-launch_kitty, -#custom-weather { - margin-left: 0px; - border-right: 0px; - font-size: 24px; - margin-right: 20px; -} - -#custom-launch_firefox, -#custom-launch_kitty { - font-size: 20px; -} \ No newline at end of file diff --git a/dotfiles/config/waybar/themes/Catppuccin-Latte.css b/dotfiles/config/waybar/themes/Catppuccin-Latte.css new file mode 100644 index 0000000..2fad852 --- /dev/null +++ b/dotfiles/config/waybar/themes/Catppuccin-Latte.css @@ -0,0 +1,10 @@ +@define-color bar-bg rgba(0, 0, 0, 0); + +@define-color main-bg #9ca0b0; +@define-color main-fg #4c4f69; + +@define-color wb-act-bg #5c5f77; +@define-color wb-act-fg #dce0e8; + +@define-color wb-hvr-bg #dc8a78; +@define-color wb-hvr-fg #dce0e8; diff --git a/dotfiles/config/waybar/themes/Catppuccin-Mocha.css b/dotfiles/config/waybar/themes/Catppuccin-Mocha.css new file mode 100644 index 0000000..89b79d0 --- /dev/null +++ b/dotfiles/config/waybar/themes/Catppuccin-Mocha.css @@ -0,0 +1,10 @@ +@define-color bar-bg rgba(0, 0, 0, 0); + +@define-color main-bg #11111b; +@define-color main-fg #cdd6f4; + +@define-color wb-act-bg #a6adc8; +@define-color wb-act-fg #313244; + +@define-color wb-hvr-bg #f5c2e7; +@define-color wb-hvr-fg #313244; diff --git a/dotfiles/config/waybar/themes/Cyberpunk-Edge.css b/dotfiles/config/waybar/themes/Cyberpunk-Edge.css new file mode 100644 index 0000000..4afbfcc --- /dev/null +++ b/dotfiles/config/waybar/themes/Cyberpunk-Edge.css @@ -0,0 +1,10 @@ +@define-color bar-bg rgba(0, 0, 0, 1); + +@define-color main-bg #000000; +@define-color main-fg #FFA6C2; + +@define-color wb-act-bg #FFA6C2; +@define-color wb-act-fg #000000; + +@define-color wb-hvr-bg #FADA16; +@define-color wb-hvr-fg #000000; diff --git a/dotfiles/config/waybar/themes/Decay-Green.css b/dotfiles/config/waybar/themes/Decay-Green.css new file mode 100644 index 0000000..6dbca7c --- /dev/null +++ b/dotfiles/config/waybar/themes/Decay-Green.css @@ -0,0 +1,10 @@ +@define-color bar-bg rgba(31, 35, 40, 0.95); + +@define-color main-bg #101419; +@define-color main-fg #93cee9; + +@define-color wb-act-bg #93cee9; +@define-color wb-act-fg #1f2328; + +@define-color wb-hvr-bg #93cee9; +@define-color wb-hvr-fg #1f2328; diff --git a/dotfiles/config/waybar/themes/Frosted-Glass.css b/dotfiles/config/waybar/themes/Frosted-Glass.css new file mode 100644 index 0000000..8fda2b7 --- /dev/null +++ b/dotfiles/config/waybar/themes/Frosted-Glass.css @@ -0,0 +1,10 @@ +@define-color bar-bg rgba(255, 255, 255, 0); + +@define-color main-bg #7ed6ff; +@define-color main-fg #1E4C84; + +@define-color wb-act-bg #A44185; +@define-color wb-act-fg #e6f1f4; + +@define-color wb-hvr-bg #1E4C84; +@define-color wb-hvr-fg #e6f1f4; diff --git a/dotfiles/config/waybar/themes/Graphite-Mono.css b/dotfiles/config/waybar/themes/Graphite-Mono.css new file mode 100644 index 0000000..18f8a4e --- /dev/null +++ b/dotfiles/config/waybar/themes/Graphite-Mono.css @@ -0,0 +1,10 @@ +@define-color bar-bg rgba(38, 38, 38, 1); + +@define-color main-bg #262626; +@define-color main-fg #d9d9d9; + +@define-color wb-act-bg #d9d9d9; +@define-color wb-act-fg #262626; + +@define-color wb-hvr-bg #a6a6a6; +@define-color wb-hvr-fg #262626; diff --git a/dotfiles/config/waybar/themes/Gruvbox-Retro.css b/dotfiles/config/waybar/themes/Gruvbox-Retro.css new file mode 100644 index 0000000..6a05b2a --- /dev/null +++ b/dotfiles/config/waybar/themes/Gruvbox-Retro.css @@ -0,0 +1,10 @@ +@define-color bar-bg rgba(0, 0, 0, 0); + +@define-color main-bg #475437; +@define-color main-fg #b5cc97; + +@define-color wb-act-bg #668f31; +@define-color wb-act-fg #c2d89c; + +@define-color wb-hvr-bg #c6eb6f; +@define-color wb-hvr-fg #c0fc47; \ No newline at end of file diff --git a/dotfiles/config/waybar/themes/Material-Sakura.css b/dotfiles/config/waybar/themes/Material-Sakura.css new file mode 100644 index 0000000..0171d23 --- /dev/null +++ b/dotfiles/config/waybar/themes/Material-Sakura.css @@ -0,0 +1,10 @@ +@define-color bar-bg rgba(0, 0, 0, 0); + +@define-color main-bg #faf4ed; +@define-color main-fg #907aa9; + +@define-color wb-act-bg #b4637a; +@define-color wb-act-fg #fffaf3; + +@define-color wb-hvr-bg #56949f; +@define-color wb-hvr-fg #fffaf3; diff --git a/dotfiles/config/waybar/themes/Rose-Pine.css b/dotfiles/config/waybar/themes/Rose-Pine.css new file mode 100644 index 0000000..79478b8 --- /dev/null +++ b/dotfiles/config/waybar/themes/Rose-Pine.css @@ -0,0 +1,10 @@ +@define-color bar-bg rgba(0, 0, 0, 0); + +@define-color main-bg #26233a; +@define-color main-fg #ebbcba; + +@define-color wb-act-bg #31748f; +@define-color wb-act-fg #9ccfd8; + +@define-color wb-hvr-bg #eb6f92; +@define-color wb-hvr-fg #f6c177; diff --git a/dotfiles/config/waybar/themes/Tokyo-Night.css b/dotfiles/config/waybar/themes/Tokyo-Night.css new file mode 100644 index 0000000..7f11a02 --- /dev/null +++ b/dotfiles/config/waybar/themes/Tokyo-Night.css @@ -0,0 +1,10 @@ +@define-color bar-bg rgba(0, 0, 0, 0); + +@define-color main-bg #24283b; +@define-color main-fg #7aa2f7; + +@define-color wb-act-bg #bb9af7; +@define-color wb-act-fg #b4f9f8; + +@define-color wb-hvr-bg #7aa2f7; +@define-color wb-hvr-fg #cfc9c2; diff --git a/dotfiles/config/waybar/themes/Wall-Dcol.css b/dotfiles/config/waybar/themes/Wall-Dcol.css new file mode 100644 index 0000000..1f597ec --- /dev/null +++ b/dotfiles/config/waybar/themes/Wall-Dcol.css @@ -0,0 +1,7 @@ +@define-color bar-bg rgba(0, 0, 0, 0); +@define-color main-bg #1B1B29; +@define-color main-fg #9F9FD6; +@define-color wb-act-bg #974C4E; +@define-color wb-act-fg #00001A; +@define-color wb-hvr-bg #1F293D; +@define-color wb-hvr-fg #9FC6D6; diff --git a/dotfiles/config/waybar/themes/theme.css b/dotfiles/config/waybar/themes/theme.css new file mode 100644 index 0000000..89b79d0 --- /dev/null +++ b/dotfiles/config/waybar/themes/theme.css @@ -0,0 +1,10 @@ +@define-color bar-bg rgba(0, 0, 0, 0); + +@define-color main-bg #11111b; +@define-color main-fg #cdd6f4; + +@define-color wb-act-bg #a6adc8; +@define-color wb-act-fg #313244; + +@define-color wb-hvr-bg #f5c2e7; +@define-color wb-hvr-fg #313244; diff --git a/dotfiles/zshrc b/dotfiles/zshrc index 8abefb7..f0ea1a9 100644 --- a/dotfiles/zshrc +++ b/dotfiles/zshrc @@ -3,7 +3,8 @@ export PATH="$HOME/bin:/usr/local/bin:$HOME/.cargo/bin:$HOME/.npm/bin:$PATH" # Path to your oh-my-zsh installation. -export ZSH="$HOME/.oh-my-zsh" +#export ZSH="$HOME/.oh-my-zsh" +ZSH=/usr/share/oh-my-zsh/ # Set name of the theme to load --- if set to "random", it will # load a random theme each time oh-my-zsh is loaded, in which case, @@ -74,12 +75,12 @@ ZSH_THEME="zhann" plugins=( git sudo - F-Sy-H + zsh-256color + zsh-syntax-highlighting zsh-autosuggestions history-substring-search ) -source $ZSH/oh-my-zsh.sh # User configuration @@ -122,11 +123,12 @@ alias noproxy="export all_proxy=''" # cancel proxy mode alias dotdrop="dotdrop --cfg=~/.dotfiles/config.yaml" # config file shortcut +alias ls="eza" + alias vim="nvim" alias vhypr="vim ~/.config/hypr/hyprland.conf" # edit hyprland config alias vzsh="vim ~/.zshrc" # edit zsh config alias szsh="source ~/.zshrc" # source the zshrc file -alias hyprloadreload="curl -sSL https://raw.githubusercontent.com/Duckonaut/hyprload/main/install.sh | bash" alias aria="aria2c -c -s16 -x16 -k1M" @@ -143,14 +145,11 @@ alias nucwl="wlfreerdp /u:752549025@qq.com /p:nebkij-xevkec-Zyvha9 /v:43.249.192 alias gup="git pull --rebase" alias gall="git add . && git commit -a -m 'update' && git push" -# install software -alias installpac="sudo pacman -S archlinuxcn-keyring yay paru zsh curl \ -hyprland xdg-desktop-portal-hyprland \ -kitty dunst swaylock-effects udiskie \ -polkit-kde-agent wofi waybar-hyprland-git sddm btop \ -ttf-jetbrains-mono-nerd noto-fonts-emoji wqy-zenhei wqy-microhei wqy-microhei-lite wqy-bitmapfont \ -alsa-utils pulseaudio pamixer pavucontrol blueman network-manager-applet \ -fcitx5 fcitx5-rime fcitx5-chinese-addons fcitx5-material-color fcitx5-configtool \ -obsidian neofetch notion-app-enhanced vscodium-bin " -alias installyay="yay -S google-chrome dotdrop swww wlogout logseq-desktop-wayland-bin anytype-bin" +ZSH_CACHE_DIR=$HOME/.cache/oh-my-zsh +if [[ ! -d $ZSH_CACHE_DIR ]]; then + mkdir $ZSH_CACHE_DIR +fi +source /usr/share/zsh/plugins/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh +#source /usr/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh +source $ZSH/oh-my-zsh.sh