diff --git a/LazyVim.sh b/LazyVim.sh
index 0028bea..afdacd6 100755
--- a/LazyVim.sh
+++ b/LazyVim.sh
@@ -1,19 +1,19 @@
#!/usr/bin/bash
if ! command -v pacman >/dev/null; then
- echo "Cannot proceed: Not a arch based system"
- echo "This script does not have debian support"
- echo "+ sleep 10" && sleep 10
- exit 1
+ echo "Cannot proceed: Not a arch based system"
+ echo "This script does not have debian support"
+ echo "+ sleep 10" && sleep 10
+ exit 1
fi
# Install prerequisetes
-sudo pacman -S --needed --noconfirm git curl wget python3 python-pip
+sudo pacman -S --needed --noconfirm git curl wget python3 python-pip neovim jdk-openjdk base-devel ripgrep fd lazygit curl tectonic tree-sittter sclip julia luarocks shfmt ast-grep
echo ""
echo 'This script will move your current nvim config to ~/.config/nvim.bak'
-echo "Press CTRL+C within 20 secconds if you don't want these actions to be made"
-sleep 20
+echo "Press CTRL+C within 10 secconds if you don't want these actions to be made"
+sleep 10
echo ""
# Remove old backups
@@ -22,58 +22,53 @@ echo " Checking for and removing old Neovim backup directories..."
# Use $HOME for reliable path expansion
if [ -e "$HOME/.config/nvim.bak" ]; then
- echo "Path $HOME/.config/nvim.bak exists. Removing..."
- rm -rf "$HOME/.config/nvim.bak"
+ echo "Path $HOME/.config/nvim.bak exists. Removing..."
+ rm -rf "$HOME/.config/nvim.bak"
fi
if [ -e "$HOME/.local/share/nvim.bak" ]; then
- echo "Path $HOME/.local/share/nvim.bak exists. Removing..."
- rm -rf "$HOME/.local/share/nvim.bak"
+ echo "Path $HOME/.local/share/nvim.bak exists. Removing..."
+ rm -rf "$HOME/.local/share/nvim.bak"
fi
if [ -e "$HOME/.local/state/nvim.bak" ]; then
- echo "Path $HOME/.local/state/nvim.bak exists. Removing..."
- rm -rf "$HOME/.local/state/nvim.bak"
+ echo "Path $HOME/.local/state/nvim.bak exists. Removing..."
+ rm -rf "$HOME/.local/state/nvim.bak"
fi
if [ -e "$HOME/.cache/nvim.bak" ]; then
- echo "Path $HOME/.cache/nvim.bak exists. Removing..."
- rm -rf "$HOME/.cache/nvim.bak"
+ echo "Path $HOME/.cache/nvim.bak exists. Removing..."
+ rm -rf "$HOME/.cache/nvim.bak"
fi
# Remove the current nvim config and create a new backup
echo ""
echo " Backing up current Neovim configuration..."
if [ -d "$HOME/.config/nvim" ]; then # Check if nvim config exists before moving
- mv "$HOME/.config/nvim" "$HOME/.config/nvim.bak"
+ mv "$HOME/.config/nvim" "$HOME/.config/nvim.bak"
else
- echo "No existing ~/.config/nvim found to back up."
+ echo "No existing ~/.config/nvim found to back up."
fi
echo ""
echo " Backing up Neovim share, state, and cache directories..."
if [ -d "$HOME/.local/share/nvim" ]; then
- mv "$HOME/.local/share/nvim" "$HOME/.local/share/nvim.bak"
+ mv "$HOME/.local/share/nvim" "$HOME/.local/share/nvim.bak"
fi
if [ -d "$HOME/.local/state/nvim" ]; then
- mv "$HOME/.local/state/nvim" "$HOME/.local/state/nvim.bak"
+ mv "$HOME/.local/state/nvim" "$HOME/.local/state/nvim.bak"
fi
if [ -d "$HOME/.cache/nvim" ]; then
- mv "$HOME/.cache/nvim" "$HOME/.cache/nvim.bak"
+ mv "$HOME/.cache/nvim" "$HOME/.cache/nvim.bak"
fi
# Remove any leftover
if [ -e "$HOME/.config/.nvim" ]; then
- echo ""
- echo "Removing ~/.config/.nvim..."
- rm -rf "$HOME/.config/.nvim"
+ echo ""
+ echo "Removing ~/.config/.nvim..."
+ rm -rf "$HOME/.config/.nvim"
fi
# Install LazyVim
echo ""
git clone https://github.com/alvinlollo/LazyVim ~/.config/nvim
-
-# Dependencys for Gdoc.vim
-#wget https://raw.githubusercontent.com/alvinlollo/Single-install-script/refs/heads/main/requirements.txt
-#pip3 install -r requirements.txt --break-system-packages && rm requirements.txt
-#echo "pip3 install -r requirements.txt"
diff --git a/bat.sh b/bat.sh
index 3c98518..a91ce83 100755
--- a/bat.sh
+++ b/bat.sh
@@ -47,8 +47,7 @@ if ! command -v bat >/dev/null; then
fi
fi
# 1. Detect the actual active shell name (not just the login default)
- CURRENT_SHELL=$(basename "$0" 2>/dev/null || echo "$0")
- CURRENT_SHELL="${CURRENT_SHELL#-}" # Strip leading dash if it's a login shell
+ CURRENT_SHELL=$(basename -- "$SHELL")
# 2. Source the correct configuration file safely
if [ "$CURRENT_SHELL" = "bash" ] && [ -f ~/.bashrc ]; then
diff --git a/configs/hypr/custom/env.conf b/configs/hypr/custom/env.conf
deleted file mode 100644
index 4e59a32..0000000
--- a/configs/hypr/custom/env.conf
+++ /dev/null
@@ -1,22 +0,0 @@
-# You can put extra environment variables here
-# https://wiki.hyprland.org/Configuring/Environment-variables/
-
-# ######### Input method ##########
-# See https://fcitx-im.org/wiki/Using_Fcitx_5_on_Wayland
-#env = QT_IM_MODULE, fcitx
-#env = XMODIFIERS, @im=fcitx
-#env = SDL_IM_MODULE, fcitx
-#env = GLFW_IM_MODULE, ibus
-#env = INPUT_METHOD, fcitx
-
-# ######## Wayland #########
-# Tearing
-# env = WLR_DRM_NO_ATOMIC, 1
-# ?
-# env = WLR_NO_HARDWARE_CURSORS, 1
-
-# ######## EDITOR #########
-#https://wiki.archlinux.org/title/Category:Text_editors
-# for example: vi nano nvim ...
-
-#env = EDITOR, vim
diff --git a/configs/hypr/custom/execs.conf b/configs/hypr/custom/execs.conf
deleted file mode 100644
index 66bb2b8..0000000
--- a/configs/hypr/custom/execs.conf
+++ /dev/null
@@ -1,6 +0,0 @@
-# You can make apps auto-start here
-# Relevant Hyprland wiki section: https://wiki.hyprland.org/Configuring/Keywords/#executing
-
-# Input method
-# exec-once = fcitx5
-
diff --git a/configs/hypr/custom/general.conf b/configs/hypr/custom/general.conf
deleted file mode 100644
index aa3fd4f..0000000
--- a/configs/hypr/custom/general.conf
+++ /dev/null
@@ -1,6 +0,0 @@
-# Put general config stuff here
-# Here's a list of every variable: https://wiki.hyprland.org/Configuring/Variables/
-
-# monitor=,addreserved, 0, 0, 0, 0 # Custom reserved area
-
-# HDMI port: mirror display. To see device name, use `hyprctl monitors`
diff --git a/configs/hypr/custom/keybinds.conf b/configs/hypr/custom/keybinds.conf
deleted file mode 100644
index 261ed5e..0000000
--- a/configs/hypr/custom/keybinds.conf
+++ /dev/null
@@ -1,24 +0,0 @@
-# See https://wiki.hyprland.org/Configuring/Binds/
-#!
-##! User
-bind = Ctrl+Super, Slash, exec, xdg-open ~/.config/illogical-impulse/config.json # Edit shell config
-bind = Ctrl+Super+Alt, Slash, exec, xdg-open ~/.config/hypr/custom/keybinds.conf # Edit extra keybinds
-
-##! Apps
-# bind = Super, Return, exec, ~/.config/hypr/hyprland/scripts/launch_first_available.sh "${TERMINAL}" "kitty -1" "foot" "alacritty" "wezterm" "konsole" "kgx" "uxterm" "xterm" # Terminal
-# bind = Super, T, exec, alacritty
-# bind = Ctrl+Alt, T, exec, alacritty
-# bind = Super, E, exec, ~/.config/hypr/hyprland/scripts/launch_first_available.sh "dolphin" "nautilus" "nemo" "thunar" "${TERMINAL}" "kitty -1 fish -c yazi" # File manager
-# bind = Super, W, exec, zen-browser # Browser
-# bind = Super, C, exec, ~/.config/hypr/hyprland/scripts/launch_first_available.sh "code" "codium" "cursor" "zed" "zedit" "zeditor" "kate" "gnome-text-editor" "emacs" "command -v nvim && kitty -1 nvim" "command -v micro && kitty -1 micro" # Code editor
-# bind = Ctrl+Super+Shift+Alt, W, exec, ~/.config/hypr/hyprland/scripts/launch_first_available.sh "wps" "onlyoffice-desktopeditors" "libreoffice" # Office software
-# bind = Super, X, exec, ~/.config/hypr/hyprland/scripts/launch_first_available.sh "kate" "gnome-text-editor" "emacs" # Text editor
-# bind = Ctrl+Super, V, exec, ~/.config/hypr/hyprland/scripts/launch_first_available.sh "pavucontrol-qt" "pavucontrol" # Volume mixer
-# bind = Super, I, exec, XDG_CURRENT_DESKTOP=gnome ~/.config/hypr/hyprland/scripts/launch_first_available.sh "qs -p ~/.config/quickshell/$qsConfig/settings.qml" "systemsettings" "gnome-control-center" "better-control" # Settings app
-# bind = Ctrl+Shift, Escape, exec, ~/.config/hypr/hyprland/scripts/launch_first_available.sh "gnome-system-monitor" "plasma-systemmonitor --page-name Processes" "command -v btop && kitty -1 fish -c btop" # Task manager
-
-# Add stuff here
-# Use #! to add an extra column on the cheatsheet
-# Use ##! to add a section in that column
-# Add a comment after a bind to add a description, like above
-
diff --git a/configs/hypr/custom/rules.conf b/configs/hypr/custom/rules.conf
deleted file mode 100644
index 9b48404..0000000
--- a/configs/hypr/custom/rules.conf
+++ /dev/null
@@ -1,11 +0,0 @@
-# You can put custom rules here
-# Window/layer rules: https://wiki.hyprland.org/Configuring/Window-Rules/
-# Workspace rules: https://wiki.hyprland.org/Configuring/Workspace-Rules/
-
-# ######## Window rules ########
-
-# Uncomment to apply global transparency to all windows:
-# windowrule = opacity 0.89 override 0.89 override, match:class .*
-
-# Disable blur for all xwayland apps
-# windowrule = no_blur on, match:xwayland 1
diff --git a/configs/hypr/hypridle.conf b/configs/hypr/hypridle.conf
index a77bbb2..36f8b62 100644
--- a/configs/hypr/hypridle.conf
+++ b/configs/hypr/hypridle.conf
@@ -1,11 +1,11 @@
-$lock_cmd = hyprctl dispatch global quickshell:lock & pidof qs quickshell hyprlock || hyprlock
+$lock_cmd = hyprctl dispatch 'hl.dsp.global("quickshell:lock")' & pidof qs quickshell hyprlock || hyprlock
# $lock_cmd = pidof hyprlock || hyprlock
$suspend_cmd = systemctl suspend || loginctl suspend
general {
lock_cmd = $lock_cmd
before_sleep_cmd = loginctl lock-session
- after_sleep_cmd = hyprctl dispatch global quickshell:lockFocus
+ after_sleep_cmd = hyprctl dispatch 'hl.dsp.global("quickshell:lockFocus")'
inhibit_sleep = 3
}
@@ -16,8 +16,8 @@ listener {
listener {
timeout = 600 # 10mins
- on-timeout = hyprctl dispatch dpms off
- on-resume = hyprctl dispatch dpms on
+ on-timeout = hyprctl dispatch 'hl.dsp.dpms({ action = "disable" })'
+ on-resume = hyprctl dispatch 'hl.dsp.dpms({ action = "enable" })'
}
listener {
diff --git a/configs/hypr/hyprland.conf b/configs/hypr/hyprland.conf
index 7d61cf1..819c6cf 100644
--- a/configs/hypr/hyprland.conf
+++ b/configs/hypr/hyprland.conf
@@ -1,38 +1,49 @@
# This file sources other files in `hyprland` and `custom` folders
# You wanna add your stuff in files in `custom`
-$qsConfig = ii
-exec = hyprctl dispatch submap global # DO NOT REMOVE THIS OR YOU WON'T BE ABLE TO USE ANY KEYBIND
-submap = global # This is required for catchall to work
-
-# Defaults
+# --- Environment variables ---
source=hyprland/env.conf
-source=hyprland/execs.conf
-source=hyprland/general.conf
-source=hyprland/rules.conf
-source=hyprland/colors.conf
-source=hyprland/keybinds.conf
-#source=hyprland/windowrules.conf
-
-# Custom
+# hyprlang noerror true
source=custom/env.conf
-source=custom/execs.conf
-source=custom/general.conf
-source=custom/rules.conf
-source=custom/keybinds.conf
-source=workspace.conf
+# hyprlang noerror false
-# nwg-displays support
-#source=workspaces.conf
+# --- Other vars ---
+source=hyprland/variables.conf
+# hyprlang noerror true
+source=custom/variables.conf
+# hyprlang noerror false
+
+# --- Defaults ---
+# hyprlang if !dontLoadDefaultExecs
+source=hyprland/execs.conf
+# hyprlang endif
+# hyprlang if !dontLoadDefaultGeneral
+source=hyprland/general.conf
+# hyprlang endif
+# hyprlang if !dontLoadDefaultRules
+source=hyprland/rules.conf
+# hyprlang endif
+# hyprlang if !dontLoadDefaultColors
+source=hyprland/colors.conf
+# hyprlang endif
+# hyprlang if !dontLoadDefaultKeybinds
+source=hyprland/keybinds.conf
+# hyprlang endif
+
+# --- Custom ---
+# hyprlang noerror true
+source=custom/execs.conf
+# hyprlang noerror true
+source=custom/general.conf
+# hyprlang noerror true
+source=custom/rules.conf
+# hyprlang noerror true
+source=custom/keybinds.conf
+# hyprlang noerror false
+
+# --- nwg-displays support ---
+source=workspaces.conf
source=monitors.conf
-# Add this to your ~/.config/hypr/hyprland.conf
-device {
- name = cougar-gaming-keyboard-cougar-gaming-keyboard-consumer-control-1
- scroll_factor = 0.0
-}
-
-device {
- name = ydotoold-virtual-device-1
- scroll_factor = 0.0
-}
+# --- Shell overrides ---
+source=hyprland/shellOverrides/main.conf
diff --git a/configs/hypr/hyprland/colors.conf b/configs/hypr/hyprland/colors.conf
deleted file mode 100644
index e616cac..0000000
--- a/configs/hypr/hyprland/colors.conf
+++ /dev/null
@@ -1,32 +0,0 @@
-general {
- col.active_border = rgba(8e909977)
- col.inactive_border = rgba(43474e55)
-}
-
-misc {
- background_color = rgba(111318FF)
-}
-
-plugin {
- hyprbars {
- # Honestly idk if it works like css, but well, why not
- bar_text_font = Google Sans Flex Medium, Rubik, Geist, AR One Sans, Reddit Sans, Inter, Roboto, Ubuntu, Noto Sans, sans-serif
- bar_height = 30
- bar_padding = 10
- bar_button_padding = 5
- bar_precedence_over_border = true
- bar_part_of_window = true
-
- bar_color = rgba(111318FF)
- col.text = rgba(e2e2e9FF)
-
-
- # example buttons (R -> L)
- # hyprbars-button = color, size, on-click
- hyprbars-button = rgb(e2e2e9), 13, , hyprctl dispatch killactive
- hyprbars-button = rgb(e2e2e9), 13, , hyprctl dispatch fullscreen 1
- hyprbars-button = rgb(e2e2e9), 13, , hyprctl dispatch movetoworkspacesilent special
- }
-}
-
-windowrule = border_color rgba(a9c7ffAA) rgba(a9c7ff77), match:pin 1
diff --git a/configs/hypr/hyprland/env.conf b/configs/hypr/hyprland/env.conf
deleted file mode 100644
index 0c21034..0000000
--- a/configs/hypr/hyprland/env.conf
+++ /dev/null
@@ -1,16 +0,0 @@
-# ############ Wayland #############
-env = ELECTRON_OZONE_PLATFORM_HINT,auto
-
-######### Applications #########
-env = XDG_DATA_DIRS,$HOME/.local/share/flatpak/exports/share:/var/lib/flatpak/exports/share:/usr/local/share:/usr/share
-
-# ############ Themes #############
-env = QT_QPA_PLATFORM, wayland;xcb
-env = QT_QPA_PLATFORMTHEME, kde
-env = XDG_MENU_PREFIX, plasma-
-
-# ######## Virtual envrionment #########
-env = ILLOGICAL_IMPULSE_VIRTUAL_ENV, ~/.local/state/quickshell/.venv
-
-# ######## Terminal application #########
-env = TERMINAL,kitty -1
diff --git a/configs/hypr/hyprland/execs.conf b/configs/hypr/hyprland/execs.conf
deleted file mode 100644
index d273ed7..0000000
--- a/configs/hypr/hyprland/execs.conf
+++ /dev/null
@@ -1,37 +0,0 @@
-# Bar, wallpaper
-exec-once = ~/.config/hypr/hyprland/scripts/start_geoclue_agent.sh
-exec-once = qs -c $qsConfig &
-exec-once = ~/.config/hypr/custom/scripts/__restore_video_wallpaper.sh
-
-# Core components (authentication, lock screen, notification daemon)
-exec-once = gnome-keyring-daemon --start --components=secrets
-exec-once = hypridle
-exec-once = dbus-update-activation-environment --all
-exec-once = sleep 1 && dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP # Some fix idk
-#exec-once = hyprpm reload
-
-# Audio
-exec-once = easyeffects --hide-window --service-mode
-
-# Clipboard: history
-# exec-once = wl-paste --watch cliphist store &
-exec-once = wl-paste --type text --watch bash -c 'cliphist store && qs -c $qsConfig ipc call cliphistService update'
-exec-once = wl-paste --type image --watch bash -c 'cliphist store && qs -c $qsConfig ipc call cliphistService update'
-
-# Cursor
-exec-once = hyprctl setcursor Bibata-Modern-Classic 24
-
-# Fix dock pinned apps not launching properly (https://github.com/end-4/dots-hyprland/issues/2200)
-# This causes https://github.com/end-4/dots-hyprland/issues/2427
-# exec-once = sleep 3.5 && hyprctl reload && sleep 0.5 && touch ~/.config/quickshell/ii/shell.qml
-
-# User
-#exec-once = voxtype &
-exec-once = kdeconnectd
-exec-once = zen-browser
-exec-once = syncthing &
-exec-once = rclone mount SchoolGdrive: /mnt/SchoolGdrive --dir-cache-time 10s --poll-interval 10s --attr-timeout 10s --size-only
-exec-once = rclone mount PersonalGdrive: /mnt/PersonalGdrive --dir-cache-time 10s --poll-interval 10s --attr-timeout 10s --size-only
-#exec-once = rclone mount AltGdrive: /mnt/AltGdrive --dir-cache-time 10s --poll-interval 10s --attr-timeout 10s --size-only
-exec-once = rclone mount gcrypt: /mnt/gcrypt --dir-cache-time 10s --poll-interval 10s --attr-timeout 10s --size-only
-exec-once = steam %U -silent
\ No newline at end of file
diff --git a/configs/hypr/hyprland/general.conf b/configs/hypr/hyprland/general.conf
deleted file mode 100644
index 071515e..0000000
--- a/configs/hypr/hyprland/general.conf
+++ /dev/null
@@ -1,168 +0,0 @@
-# MONITOR CONFIG
-monitor=,preferred,auto,1
-
-gesture = 3, swipe, move,
-gesture = 3, pinch, float
-gesture = 4, horizontal, workspace
-gesture = 4, up, dispatcher, global, quickshell:overviewWorkspacesToggle
-gesture = 4, down, dispatcher, global, quickshell:overviewWorkspacesClose
-gestures {
- workspace_swipe_distance = 700
- workspace_swipe_cancel_ratio = 0.2
- workspace_swipe_min_speed_to_force = 5
- workspace_swipe_direction_lock = true
- workspace_swipe_direction_lock_threshold = 10
- workspace_swipe_create_new = true
-}
-
-general {
- # Gaps and border
- gaps_in = 4
- gaps_out = 5
- gaps_workspaces = 50
-
- border_size = 1
- col.active_border = rgba(0DB7D455)
- col.inactive_border = rgba(31313600)
- resize_on_border = true
-
- no_focus_fallback = true
-
- allow_tearing = true # This just allows the `immediate` window rule to work
-
- snap {
- enabled = true
- window_gap = 4
- monitor_gap = 5
- respect_gaps = true
- }
-}
-
-dwindle {
- preserve_split = true
- smart_split = false
- smart_resizing = false
- # precise_mouse_move = true
-}
-
-decoration {
- # 2 = circle, higher = squircle, 4 = very obvious squircle
- # Clear squircles look really off; we use only extra .4 here to make the rounding feel more continuous
- rounding_power = 2
- rounding = 18
-
- blur {
- enabled = true
- xray = true
- special = false
- new_optimizations = true
- size = 10
- passes = 3
- brightness = 1
- noise = 0.05
- contrast = 0.89
- vibrancy = 0.5
- vibrancy_darkness = 0.5
- popups = false
- popups_ignorealpha = 0.6
- input_methods = true
- input_methods_ignorealpha = 0.8
- }
-
- shadow {
- enabled = true
- ignore_window = true
- range = 50
- offset = 0 4
- render_power = 10
- color = rgba(00000027)
- }
-
- # Dim
- dim_inactive = true
- dim_strength = 0.05
- dim_special = 0.2
-}
-
-animations {
- enabled = true
- # Curves
- bezier = expressiveFastSpatial, 0.42, 1.67, 0.21, 0.90
- bezier = expressiveSlowSpatial, 0.39, 1.29, 0.35, 0.98
- bezier = expressiveDefaultSpatial, 0.38, 1.21, 0.22, 1.00
- bezier = emphasizedDecel, 0.05, 0.7, 0.1, 1
- bezier = emphasizedAccel, 0.3, 0, 0.8, 0.15
- bezier = standardDecel, 0, 0, 0, 1
- bezier = menu_decel, 0.1, 1, 0, 1
- bezier = menu_accel, 0.52, 0.03, 0.72, 0.08
- bezier = stall, 1, -0.1, 0.7, 0.85
- # Configs
- # windows
- animation = windowsIn, 1, 3, emphasizedDecel, popin 80%
- animation = fadeIn, 1, 3, emphasizedDecel
- animation = windowsOut, 1, 2, emphasizedDecel, popin 90%
- animation = fadeOut, 1, 2, emphasizedDecel
- animation = windowsMove, 1, 3, emphasizedDecel, slide
- animation = border, 1, 10, emphasizedDecel
- # layers
- animation = layersIn, 1, 2.7, emphasizedDecel, popin 93%
- animation = layersOut, 1, 2.4, menu_accel, popin 94%
- # fade
- animation = fadeLayersIn, 1, 0.5, menu_decel
- animation = fadeLayersOut, 1, 2.7, stall
- # workspaces
- animation = workspaces, 1, 7, menu_decel, slide
- ## specialWorkspace
- animation = specialWorkspaceIn, 1, 2.8, emphasizedDecel, slidevert
- animation = specialWorkspaceOut, 1, 1.2, emphasizedAccel, slidevert
- # zoom
- animation = zoomFactor, 1, 3, standardDecel
-}
-
-input {
- kb_layout = us
- numlock_by_default = true
- repeat_delay = 250
- repeat_rate = 35
-
- follow_mouse = 1
- off_window_axis_events = 2
-
- touchpad {
- natural_scroll = yes
- disable_while_typing = true
- clickfinger_behavior = true
- scroll_factor = 0.7
- }
-}
-
-misc {
- disable_hyprland_logo = true
- disable_splash_rendering = true
- vfr = 1
- vrr = 1
- mouse_move_enables_dpms = true
- key_press_enables_dpms = true
- animate_manual_resizes = false
- animate_mouse_windowdragging = false
- enable_swallow = false
- swallow_regex = (foot|kitty|allacritty|Alacritty)
- on_focus_under_fullscreen = 2
- allow_session_lock_restore = true
- session_lock_xray = true
- initial_workspace_tracking = false
- focus_on_activate = true
-}
-
-binds {
- scroll_event_delay = 0
- hide_special_on_workspace_change = true
-}
-
-cursor {
- zoom_factor = 1
- zoom_rigid = false
- zoom_disable_aa = true
- hotspot_padding = 1
-}
-
diff --git a/configs/hypr/hyprland/keybinds.conf b/configs/hypr/hyprland/keybinds.conf
deleted file mode 100644
index 895691b..0000000
--- a/configs/hypr/hyprland/keybinds.conf
+++ /dev/null
@@ -1,253 +0,0 @@
-# Lines ending with `# [hidden]` won't be shown on cheatsheet
-# Lines starting with #! are section headings
-
-#!
-##! Shell
-# These absolutely need to be on top, or they won't work consistently
-bindid = Super, Super_L, Toggle search, global, quickshell:searchToggleRelease # Toggle search
-bindid = Super, Super_R, Toggle search, global, quickshell:searchToggleRelease # [hidden] Toggle search
-bind = Super, Super_L, exec, qs -c $qsConfig ipc call TEST_ALIVE || pkill fuzzel || fuzzel # [hidden] Launcher (fallback)
-bind = Super, Super_R, exec, qs -c $qsConfig ipc call TEST_ALIVE || pkill fuzzel || fuzzel # [hidden] Launcher (fallback)
-binditn = Super, catchall, global, quickshell:searchToggleReleaseInterrupt # [hidden]
-bind = Ctrl, Super_L, global, quickshell:searchToggleReleaseInterrupt # [hidden]
-bind = Ctrl, Super_R, global, quickshell:searchToggleReleaseInterrupt # [hidden]
-bind = Super, mouse:272, global, quickshell:searchToggleReleaseInterrupt # [hidden]
-bind = Super, mouse:273, global, quickshell:searchToggleReleaseInterrupt # [hidden]
-bind = Super, mouse:274, global, quickshell:searchToggleReleaseInterrupt # [hidden]
-bind = Super, mouse:275, global, quickshell:searchToggleReleaseInterrupt # [hidden]
-bind = Super, mouse:276, global, quickshell:searchToggleReleaseInterrupt # [hidden]
-bind = Super, mouse:277, global, quickshell:searchToggleReleaseInterrupt # [hidden]
-bind = Super, mouse_up, global, quickshell:searchToggleReleaseInterrupt # [hidden]
-bind = Super, mouse_down,global, quickshell:searchToggleReleaseInterrupt # [hidden]
-
-bindit = ,Super_L, global, quickshell:workspaceNumber # [hidden]
-bindit = ,Super_R, global, quickshell:workspaceNumber # [hidden]
-bind = Super, Tab, global, quickshell:overviewWorkspacesToggle # Toggle overview
-bindd = Super, V, Clipboard history >> clipboard, global, quickshell:overviewClipboardToggle # Clipboard history >> clipboard
-bindd = Super, Period, Emoji >> clipboard, global, quickshell:overviewEmojiToggle # Emoji >> clipboard
-bind = Super, A, global, quickshell:sidebarLeftToggle # Toggle left sidebar
-bind = Super+Alt, A, global, quickshell:sidebarLeftToggleDetach # [hidden]
-bind = Super, O, global, quickshell:sidebarLeftToggle # [hidden]
-bindd = Super, N, Toggle right sidebar, global, quickshell:sidebarRightToggle # Toggle right sidebar
-bindd = Super, Slash, Toggle cheatsheet, global, quickshell:cheatsheetToggle # Toggle cheatsheet
-bindd = Super, K, Toggle on-screen keyboard, global, quickshell:oskToggle # Toggle on-screen keyboard
-bindd = Super, M, Toggle media controls, global, quickshell:mediaControlsToggle # Toggle media controls
-bind = Super, G, global, quickshell:overlayToggle # Toggle overlay
-bindd = Ctrl+Alt, Delete, Toggle session menu, global, quickshell:sessionToggle # Toggle session menu
-bindd = Super, J, Toggle bar, global, quickshell:barToggle # Toggle bar
-bind = Ctrl+Alt, Delete, exec, qs -c $qsConfig ipc call TEST_ALIVE || pkill wlogout || wlogout -p layer-shell # [hidden] Session menu (fallback)
-bind = Shift+Super+Alt, Slash, exec, qs -p ~/.config/quickshell/$qsConfig/welcome.qml # [hidden] Launch welcome app
-
-bindle=, XF86MonBrightnessUp, exec, qs -c $qsConfig ipc call brightness increment || brightnessctl s 5%+ # [hidden]
-bindle=, XF86MonBrightnessDown, exec, qs -c $qsConfig ipc call brightness decrement || brightnessctl s 5%- # [hidden]
-bindle=, XF86AudioRaiseVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 2%+ -l 1.5# [hidden]
-bindle=, XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 2%- # [hidden]
-
-bindl = ,XF86AudioMute, exec, wpctl set-mute @DEFAULT_SINK@ toggle # [hidden]
-bindld = Super+Shift,M, Toggle mute, exec, wpctl set-mute @DEFAULT_SINK@ toggle # [hidden]
-bindl = Alt ,XF86AudioMute, exec, wpctl set-mute @DEFAULT_SOURCE@ toggle # [hidden]
-bindl = ,XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_SOURCE@ toggle # [hidden]
-bindld = Super+Alt,M, Toggle mic, exec, wpctl set-mute @DEFAULT_SOURCE@ toggle # [hidden]
-bindd = Ctrl+Super, T, Toggle wallpaper selector, global, quickshell:wallpaperSelectorToggle # Wallpaper selector
-bindd = Ctrl+Super+Alt, T, Select random wallpaper, global, quickshell:wallpaperSelectorRandom # Random wallpaper
-bindd = Ctrl+Super, T, Change wallpaper, exec, qs -c $qsConfig ipc call TEST_ALIVE || ~/.config/quickshell/$qsConfig/scripts/colors/switchwall.sh # [hidden] Change wallpaper (fallback)
-bind = Ctrl+Super, R, exec, killall ags agsv1 gjs ydotool qs quickshell; qs -c $qsConfig & # Restart widgets
-bind = Ctrl+Super, P, global, quickshell:panelFamilyCycle # Cycle panel family
-
-##! Utilities
-# Screenshot, Record, OCR, Color picker, Clipboard history
-bindd = Super, V, Copy clipboard history entry, exec, qs -c $qsConfig ipc call TEST_ALIVE || pkill fuzzel || cliphist list | fuzzel --match-mode fzf --dmenu | cliphist decode | wl-copy # [hidden] Clipboard history >> clipboard (fallback)
-bindd = Super, Period, Copy an emoji, exec, qs -c $qsConfig ipc call TEST_ALIVE || pkill fuzzel || ~/.config/hypr/hyprland/scripts/fuzzel-emoji.sh copy # [hidden] Emoji >> clipboard (fallback)
-bind = Super+Shift, S, global, quickshell:regionScreenshot # Screen snip
-bind = Super+Shift, S, exec, qs -c $qsConfig ipc call TEST_ALIVE || pidof slurp || hyprshot --freeze --clipboard-only --mode region --silent # [hidden] Screen snip (fallback)
-bind = Super+Shift, A, global, quickshell:regionSearch # Google Lens
-bind = Super+Shift, A, exec, qs -c $qsConfig ipc call TEST_ALIVE || pidof slurp || ~/.config/hypr/hyprland/scripts/snip_to_search.sh # [hidden] Google Lens (fallback)
-# OCR
-bind = Super+Shift, X, global, quickshell:regionOcr # Character recognition >> clipboard
-bind = Super+Shift, T, global, quickshell:regionOcr # [hidden]
-bind = Super+Shift, X,exec, qs -c $qsConfig ipc call TEST_ALIVE || pidof slurp || grim -g "$(slurp $SLURP_ARGS)" "/tmp/ocr_image.png" && tesseract "/tmp/ocr_image.png" stdout -l $(tesseract --list-langs | awk 'NR>1{print $1}' | tr '\n' '+' | sed 's/\+$/\n/') | wl-copy && rm "/tmp/ocr_image.png" # [hidden]
-bind = Super+Shift, T,exec, qs -c $qsConfig ipc call TEST_ALIVE || pidof slurp || grim -g "$(slurp $SLURP_ARGS)" "/tmp/ocr_image.png" && tesseract "/tmp/ocr_image.png" stdout -l $(tesseract --list-langs | awk 'NR>1{print $1}' | tr '\n' '+' | sed 's/\+$/\n/') | wl-copy && rm "/tmp/ocr_image.png" # [hidden]
-# Color picker
-bindd = Super+Shift, C, Color picker, exec, hyprpicker -a # Pick color (Hex) >> clipboard
-# Fullscreen screenshot
-bindl = ,Print,exec,grim - | wl-copy # Screenshot >> clipboard
-bindln = Ctrl,Print, exec, mkdir -p $(xdg-user-dir PICTURES)/Screenshots && grim $(xdg-user-dir PICTURES)/Screenshots/Screenshot_"$(date '+%Y-%m-%d_%H.%M.%S')".png # Screenshot >> clipboard & file (file)
-bindln = Ctrl,Print,exec,grim - | wl-copy # [hidden] Screenshot >> clipboard & file (clipboard)
-# Recording stuff
-bindl = Super+Shift, R, global, quickshell:regionRecord # Record region (no sound)
-bindl = Super+Shift, R, exec, qs -c $qsConfig ipc call TEST_ALIVE || ~/.config/quickshell/$qsConfig/scripts/videos/record.sh # [hidden] Record region (no sound) (fallback)
-bindl = Super+Alt, R, global, quickshell:regionRecord # [hidden] Record region (no sound)
-bindl = Super+Alt, R, exec, qs -c $qsConfig ipc call TEST_ALIVE || ~/.config/quickshell/$qsConfig/scripts/videos/record.sh # [hidden] Record region (no sound) (fallback)
-bindl = Ctrl+Alt, R, exec, ~/.config/quickshell/$qsConfig/scripts/videos/record.sh --fullscreen # [hidden] Record screen (no sound)
-bindl = Super+Shift+Alt, R, exec, ~/.config/quickshell/$qsConfig/scripts/videos/record.sh --fullscreen --sound # Record screen (with sound)
-# AI
-bindd = Super+Shift+Alt, mouse:273, Generate AI summary for selected text, exec, ~/.config/hypr/hyprland/scripts/ai/primary-buffer-query.sh # AI summary for selected text
-
-#!
-##! Window
-# Focusing
-bindm = Super, mouse:272, movewindow # Move
-bindm = Super, mouse:274, movewindow # [hidden]
-bindm = Super, mouse:273, resizewindow # Resize
-#/# bind = Super, ←/↑/→/↓,, # Focus in direction
-bind = Super, Left, movefocus, l # [hidden]
-bind = Super, Right, movefocus, r # [hidden]
-bind = Super, Up, movefocus, u # [hidden]
-bind = Super, Down, movefocus, d # [hidden]
-bind = Super, BracketLeft, movefocus, l # [hidden]
-bind = Super, BracketRight, movefocus, r # [hidden]
-
-#/# bind = Ctrl+Super, ←/↑/↓/→, # Move Focused window
-bind = Ctrl+Super, Left, movewindow, l # [hidden]
-bind = Ctrl+Super, Right, movewindow, r # [hidden]
-bind = Ctrl+Super, Up, movewindow, u # [hidden]
-bind = Ctrl+Super, Down, movewindow, d # [hidden]
-
-# Window Resize
-binde = Super+Shift, Right, resizeactive, 20 0 # [hidden]
-binde = Super+Shift, Left, resizeactive, -20 0 # [hidden]
-binde = Super+Shift, Up, resizeactive, 0 -20 # [hidden]
-binde = Super+Shift, Down, resizeactive, 0 20 # [hidden]
-
-#/# bind = Super+Shift, ←/↑/→/↓,, # Resize
-# bind = Super+Shift, Left, movewindow, l # [hidden] (Disabled for resizing)
-# bind = Super+Shift, Right, movewindow, r # [hidden] (Disabled for resizing)
-# bind = Super+Shift, Up, movewindow, u # [hidden] (Disabled for resizing)
-# bind = Super+Shift, Down, movewindow, d # [hidden] (Disabled for resizing)
-
-bind = Alt, F4, killactive, # [hidden] Close (Windows)
-bind = Super, Q, killactive, # Close
-bind = Super+Ctrl+Shift, Q, exec, hyprctl kill # Forcefully kill a window
-
-# Window split ratio
-#/# binde = Super, ;/',, # Adjust split ratio
-binde = Super, Semicolon, splitratio, -0.1 # [hidden]
-binde = Super, Apostrophe, splitratio, +0.1 # [hidden]
-# Positioning mode
-bind = Super+Alt, Space, togglefloating, # Float/Tile
-bind = Super, W, fullscreen, 1 # Maximize
-bind = Super, F, fullscreen, 0 # Fullscreen
-bind = Super+Alt, F, fullscreenstate, 0 3 # Fullscreen spoof
-bind = Super, P, pin # Pin
-
-#/# bind = Super+Alt, Hash,, # Send to workspace # (1, 2, 3,...)
-bind = Super+Alt, code:10, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh movetoworkspacesilent 1 # [hidden]
-bind = Super+Alt, code:11, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh movetoworkspacesilent 2 # [hidden]
-bind = Super+Alt, code:12, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh movetoworkspacesilent 3 # [hidden]
-bind = Super+Alt, code:13, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh movetoworkspacesilent 4 # [hidden]
-bind = Super+Alt, code:14, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh movetoworkspacesilent 5 # [hidden]
-bind = Super+Alt, code:15, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh movetoworkspacesilent 6 # [hidden]
-bind = Super+Alt, code:16, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh movetoworkspacesilent 7 # [hidden]
-bind = Super+Alt, code:17, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh movetoworkspacesilent 8 # [hidden]
-bind = Super+Alt, code:18, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh movetoworkspacesilent 9 # [hidden]
-bind = Super+Alt, code:19, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh movetoworkspacesilent 10 # [hidden]
-
-#/# bind = Super+Ctrl, Hash,, # Send to workspace and focus # (1, 2, 3,...)
-bind = Super+Ctrl, code:10, movetoworkspace, 1 # [hidden]
-bind = Super+Ctrl, code:11, movetoworkspace, 2 # [hidden]
-bind = Super+Ctrl, code:12, movetoworkspace, 3 # [hidden]
-bind = Super+Ctrl, code:13, movetoworkspace, 4 # [hidden]
-bind = Super+Ctrl, code:14, movetoworkspace, 5 # [hidden]
-bind = Super+Ctrl, code:15, movetoworkspace, 6 # [hidden]
-bind = Super+Ctrl, code:16, movetoworkspace, 7 # [hidden]
-bind = Super+Ctrl, code:17, movetoworkspace, 8 # [hidden]
-bind = Super+Ctrl, code:18, movetoworkspace, 9 # [hidden]
-bind = Super+Ctrl, code:19, movetoworkspace, 10 # [hidden]
-
-# #/# bind = Super+Shift, Scroll ↑/↓,, # Send to workspace left/right
-bind = Super+Shift, mouse_down, movetoworkspace, r-1 # [hidden]
-bind = Super+Shift, mouse_up, movetoworkspace, r+1 # [hidden]
-bind = Super+Alt, mouse_down, movetoworkspace, -1 # [hidden]
-bind = Super+Alt, mouse_up, movetoworkspace, +1 # [hidden]
-
-#/# bind = Super+Shift, Page_↑/↓,, # Send to workspace left/right
-bind = Super+Alt, Page_Down, movetoworkspace, +1 # [hidden]
-bind = Super+Alt, Page_Up, movetoworkspace, -1 # [hidden]
-bind = Super+Shift, Page_Down, movetoworkspace, r+1 # [hidden]
-bind = Super+Shift, Page_Up, movetoworkspace, r-1 # [hidden]
-bind = Ctrl+Super+Shift, Right, movetoworkspace, r+1 # [hidden]
-bind = Ctrl+Super+Shift, Left, movetoworkspace, r-1 # [hidden]
-
-bind = Super+Alt, S, movetoworkspacesilent, special # Send to scratchpad
-bind = Ctrl+Super, S, togglespecialworkspace, # [hidden]
-
-##! Workspace
-# Switching
-bind = Super, code:10, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh workspace 1 # [hidden]
-bind = Super, code:11, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh workspace 2 # [hidden]
-bind = Super, code:12, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh workspace 3 # [hidden]
-bind = Super, code:13, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh workspace 4 # [hidden]
-bind = Super, code:14, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh workspace 5 # [hidden]
-bind = Super, code:15, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh workspace 6 # [hidden]
-bind = Super, code:16, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh workspace 7 # [hidden]
-bind = Super, code:17, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh workspace 8 # [hidden]
-bind = Super, code:18, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh workspace 9 # [hidden]
-bind = Super, code:19, exec, ~/.config/hypr/hyprland/scripts/workspace_action.sh workspace 10 # [hidden]
-
-#bind = Ctrl+Super, Right, workspace, r+1 # [hidden]
-#bind = Ctrl+Super, Left, workspace, r-1 # [hidden]
-#/# bind = Ctrl+Super+Alt, ←/→,, # [hidden] Focus busy left/right
-bind = Ctrl+Super+Alt, Right, workspace, m+1 # [hidden]
-bind = Ctrl+Super+Alt, Left, workspace, m-1 # [hidden]
-#/# bind = Super, Page_↑/↓,, # Focus left/right
-bind = Super, Page_Down, workspace, +1 # [hidden]
-bind = Super, Page_Up, workspace, -1 # [hidden]
-bind = Ctrl+Super, Page_Down, workspace, r+1 # [hidden]
-bind = Ctrl+Super, Page_Up, workspace, r-1 # [hidden]
-#/# bind = Super, Scroll ↑/↓,, # Focus left/right
-bind = Super, mouse_up, workspace, +1 # [hidden]
-bind = Super, mouse_down, workspace, -1 # [hidden]
-bind = Ctrl+Super, mouse_up, workspace, r+1 # [hidden]
-bind = Ctrl+Super, mouse_down, workspace, r-1 # [hidden]
-## Special
-bind = Super, S, togglespecialworkspace, # Toggle scratchpad
-bind = Super, mouse:275, togglespecialworkspace, # [hidden]
-bind = Ctrl+Super, BracketLeft, workspace, -1 # [hidden]
-bind = Ctrl+Super, BracketRight, workspace, +1 # [hidden]
-bind = Ctrl+Super, Up, workspace, r-5 # [hidden]
-bind = Ctrl+Super, Down, workspace, r+5 # [hidden]
-
-##! Virtual machines
-bind = Super+Alt, F1, exec, notify-send 'Entered Virtual Machine submap' 'Keybinds disabled. Hit Super+Alt+F1 to escape' -a 'Hyprland' && hyprctl dispatch submap virtual-machine # Disable keybinds
-submap = virtual-machine
-bind = Super+Alt, F1, exec, notify-send 'Exited Virtual Machine submap' 'Keybinds re-enabled' -a 'Hyprland' && hyprctl dispatch submap global # [hidden]
-submap = global
-
-#!
-# Testing
-bind = Super+Alt, f11, exec, bash -c 'RANDOM_IMAGE=$(find ~/Pictures -type f | grep -v -i "nipple" | grep -v -i "pussy" | shuf -n 1); ACTION=$(notify-send "Test notification with body image" "This notification should contain your user account image and Discord icon. Oh and here is a random image in your Pictures folder:
" -a "Hyprland keybind" -p -h "string:image-path:/var/lib/AccountsService/icons/$USER" -t 6000 -i "discord" -A "openImage=Profile image" -A "action2=Open the random image" -A "action3=Useless button"); [[ $ACTION == *openImage ]] && xdg-open "/var/lib/AccountsService/icons/$USER"; [[ $ACTION == *action2 ]] && xdg-open \"$RANDOM_IMAGE\"' # [hidden]
-bind = Super+Alt, f12, exec, bash -c 'RANDOM_IMAGE=$(find ~/Pictures -type f | grep -v -i "nipple" | grep -v -i "pussy" | shuf -n 1); ACTION=$(notify-send "Test notification" "This notification should contain a random image in your Pictures folder and Discord icon.\nFlick right to dismiss!" -a "Discord (fake)" -p -h "string:image-path:$RANDOM_IMAGE" -t 6000 -i "discord" -A "openImage=Profile image" -A "action2=Useless button"); [[ $ACTION == *openImage ]] && xdg-open "/var/lib/AccountsService/icons/$USER"' # [hidden]
-bind = Super+Alt, Equal, exec, notify-send "Urgent notification" "Ah hell no" -u critical -a 'Hyprland keybind' # [hidden]
-
-#!
-##! Session
-bindd = Super, L, Lock, exec, loginctl lock-session # Lock
-bindld = Super+Shift, L, Suspend system, exec, systemctl suspend || loginctl suspend # Sleep
-bindd = Ctrl+Shift+Alt+Super, Delete, Shutdown, exec, systemctl poweroff || loginctl poweroff # [hidden] Power off
-
-##! Screen
-binde = Super, Minus, exec, ~/.config/hypr/hyprland/scripts/zoom.sh decrease 0.3 # Zoom out
-binde = Super, Equal, exec, ~/.config/hypr/hyprland/scripts/zoom.sh increase 0.3 # Zoom in
-# Zoom with keypad
-binde = Super, code:82, exec, qs -c $qsConfig ipc call zoom zoomOut # [hidden] Zoom out
-binde = Super, code:86, exec, qs -c $qsConfig ipc call zoom zoomIn # [hidden] Zoom in
-binde = Super, code:82, exec, qs -c $qsConfig ipc call TEST_ALIVE || ~/.config/hypr/hyprland/scripts/zoom.sh decrease 0.1 # [hidden] Zoom out
-binde = Super, code:86, exec, qs -c $qsConfig ipc call TEST_ALIVE || ~/.config/hypr/hyprland/scripts/zoom.sh increase 0.1 # [hidden] Zoom in
-
-##! Media
-bindl= Super+Shift, N, exec, playerctl next || playerctl position `bc <<< "100 * $(playerctl metadata mpris:length) / 1000000 / 100"` # Next track
-bindl= Super+Shift, B, exec, playerctl previous # Previous track
-bindl= Super+Shift, P, exec, playerctl play-pause # Play/pause media
-
-##! Apps
-bind = Super, Return, exec, alacritty # Terminal
-bind = Super, E, exec, dolphin # File manager
-bind = Super, B, exec, zen-browser # Browser
-bind = Super, C, exec, ~/.config/hypr/hyprland/scripts/launch_first_available.sh "code" "codium" "cursor" "zed" # Code editor
-bind = Super, I, exec, XDG_CURRENT_DESKTOP=gnome ~/.config/hypr/hyprland/scripts/launch_first_available.sh "systemsettings" "gnome-control-center" # Settings app
-bind = Ctrl+Shift, Escape, exec, ~/.config/hypr/hyprland/scripts/launch_first_available.sh "gnome-system-monitor" "btop" # Task manager
-bind = SUPER, F2, exec, ~/.config/hypr/hyprland/scripts/toggle_scroll.sh # Lock/Unlock mouse scroll
-
-# Cursed stuff
-bind = Ctrl+Super, Backslash, resizeactive, exact 640 480 # [hidden]
-
diff --git a/configs/hypr/hyprland/rules.conf b/configs/hypr/hyprland/rules.conf
deleted file mode 100644
index 4c61884..0000000
--- a/configs/hypr/hyprland/rules.conf
+++ /dev/null
@@ -1,168 +0,0 @@
-# ######## Window rules ########
-
-# Disable blur for xwayland context menus
-windowrule = match:class ^()$, match:title ^()$, no_blur on
-
-# Disable blur for every window
-windowrule = match:class .*, no_blur on
-
-# Floating
-windowrule = match:title ^(Open File)(.*)$, center on
-windowrule = match:title ^(Open File)(.*)$, float on
-windowrule = match:title ^(Select a File)(.*)$, center on
-windowrule = match:title ^(Select a File)(.*)$, float on
-windowrule = match:title ^(Choose wallpaper)(.*)$, center on
-windowrule = match:title ^(Choose wallpaper)(.*)$, float on
-windowrule = match:title ^(Choose wallpaper)(.*)$, size (monitor_w*.60) (monitor_h*.65)
-windowrule = match:title ^(Open Folder)(.*)$, center on
-windowrule = match:title ^(Open Folder)(.*)$, float on
-windowrule = match:title ^(Save As)(.*)$, center on
-windowrule = match:title ^(Save As)(.*)$, float on
-windowrule = match:title ^(Library)(.*)$, center on
-windowrule = match:title ^(Library)(.*)$, float on
-windowrule = match:title ^(File Upload)(.*)$, center on
-windowrule = match:title ^(File Upload)(.*)$, float on
-windowrule = match:title ^(.*)(wants to save)$, center on
-windowrule = match:title ^(.*)(wants to save)$, float on
-windowrule = match:title ^(.*)(wants to open)$, center on
-windowrule = match:title ^(.*)(wants to open)$, float on
-windowrule = match:class ^(blueberry\.py)$, float on
-windowrule = match:class ^(guifetch)$ , float on # FlafyDev/guifetch
-windowrule = match:class ^(pavucontrol)$, float on
-windowrule = match:class ^(pavucontrol)$, size (monitor_w*.45) (monitor_h*.45)
-windowrule = match:class ^(pavucontrol)$, center on
-windowrule = match:class ^(org.pulseaudio.pavucontrol)$, float on
-windowrule = match:class ^(org.pulseaudio.pavucontrol)$, size (monitor_w*.45) (monitor_h*.45)
-windowrule = match:class ^(org.pulseaudio.pavucontrol)$, center on
-windowrule = match:class ^(nm-connection-editor)$, float on
-windowrule = match:class ^(nm-connection-editor)$, size (monitor_w*.45) (monitor_h*.45)
-windowrule = match:class ^(nm-connection-editor)$, center on
-windowrule = match:class .*plasmawindowed.*, float on
-windowrule = match:class kcm_.*, float on
-windowrule = match:class .*bluedevilwizard, float on
-windowrule = match:title .*Welcome, float on
-windowrule = match:title ^(illogical-impulse Settings)$, float on
-windowrule = match:title .*Shell conflicts.*, float on
-windowrule = match:class org.freedesktop.impl.portal.desktop.kde, float on
-windowrule = match:class org.freedesktop.impl.portal.desktop.kde, size (monitor_w*.60) (monitor_h*.65)
-windowrule = match:class ^(Zotero)$, float on
-windowrule = match:class ^(Zotero)$, size (monitor_w*.45) (monitor_h*.45)
-
-# Move
-# kde-material-you-colors spawns a window when changing dark/light theme. This is to make sure it doesn't interfere at all.
-windowrule = match:class ^(plasma-changeicons)$, float on
-windowrule = match:class ^(plasma-changeicons)$, no_initial_focus on
-windowrule = match:class ^(plasma-changeicons)$, move 999999 999999
-# stupid dolphin copy
-windowrule = match:title ^(Copying — Dolphin)$, move 40 80
-
-# Tiling
-windowrule = match:class ^dev\.warp\.Warp$, tile on
-
-# Picture-in-Picture
-windowrule = match:title ^([Pp]icture[-\s]?[Ii]n[-\s]?[Pp]icture)(.*)$, float on
-windowrule = match:title ^([Pp]icture[-\s]?[Ii]n[-\s]?[Pp]icture)(.*)$, keep_aspect_ratio on
-windowrule = match:title ^([Pp]icture[-\s]?[Ii]n[-\s]?[Pp]icture)(.*)$, move (monitor_w*.73) (monitor_h*.72)
-windowrule = match:title ^([Pp]icture[-\s]?[Ii]n[-\s]?[Pp]icture)(.*)$, size (monitor_w*.25) (monitor_h*.25)
-windowrule = match:title ^([Pp]icture[-\s]?[Ii]n[-\s]?[Pp]icture)(.*)$, float on
-windowrule = match:title ^([Pp]icture[-\s]?[Ii]n[-\s]?[Pp]icture)(.*)$, pin on
-
-# --- Tearing ---
-windowrule = match:title .*\.exe, immediate on
-windowrule = match:title .*minecraft.*, immediate on
-windowrule = match:class ^(steam_app).*, immediate on
-
-# Fix Jetbrain IDEs focus/rerendering problem
-windowrule = match:class ^jetbrains-.*$, match:float 1, match:title ^$|^\s$|^win\d+$, no_initial_focus on
-
-# No shadow for tiled windows (matches windows that are not floating).
-windowrule = match:float 0, no_shadow on
-
-# ######## Workspace rules ########
-workspace = special:special, gapsout:30
-
-# ######## Layer rules ########
-layerrule = match:namespace .*, xray on
-# layerrule = match:namespace .*, no_anim on
-layerrule = match:namespace walker, no_anim on
-layerrule = match:namespace selection, no_anim on
-layerrule = match:namespace overview, no_anim on
-layerrule = match:namespace anyrun, no_anim on
-layerrule = match:namespace indicator.*, no_anim on
-layerrule = match:namespace osk, no_anim on
-layerrule = match:namespace hyprpicker, no_anim on
-
-layerrule = match:namespace noanim, no_anim on
-layerrule = match:namespace gtk-layer-shell, blur on
-layerrule = match:namespace gtk-layer-shell, ignore_alpha 0
-layerrule = match:namespace launcher, blur on
-layerrule = match:namespace launcher, ignore_alpha 0.5
-layerrule = match:namespace notifications, blur on
-layerrule = match:namespace notifications, ignore_alpha 0.69
-layerrule = match:namespace logout_dialog # wlogout, blur on
-
-# ags
-layerrule = match:namespace sideleft.*, animation slide left
-layerrule = match:namespace sideright.*, animation slide right
-layerrule = match:namespace session[0-9]*, blur on
-layerrule = match:namespace bar[0-9]*, blur on
-layerrule = match:namespace bar[0-9]*, ignore_alpha 0.6
-layerrule = match:namespace barcorner.*, blur on
-layerrule = match:namespace barcorner.*, ignore_alpha 0.6
-layerrule = match:namespace dock[0-9]*, blur on
-layerrule = match:namespace dock[0-9]*, ignore_alpha 0.6
-layerrule = match:namespace indicator.*, blur on
-layerrule = match:namespace indicator.*, ignore_alpha 0.6
-layerrule = match:namespace overview[0-9]*, blur on
-layerrule = match:namespace overview[0-9]*, ignore_alpha 0.6
-layerrule = match:namespace cheatsheet[0-9]*, blur on
-layerrule = match:namespace cheatsheet[0-9]*, ignore_alpha 0.6
-layerrule = match:namespace sideright[0-9]*, blur on
-layerrule = match:namespace sideright[0-9]*, ignore_alpha 0.6
-layerrule = match:namespace sideleft[0-9]*, blur on
-layerrule = match:namespace sideleft[0-9]*, ignore_alpha 0.6
-layerrule = match:namespace indicator.*, blur on
-layerrule = match:namespace indicator.*, ignore_alpha 0.6
-layerrule = match:namespace osk[0-9]*, blur on
-layerrule = match:namespace osk[0-9]*, ignore_alpha 0.6
-
-# Quickshell
-# Quickshell: illogical-impulse
-layerrule = match:namespace quickshell:.*, blur_popups on
-layerrule = match:namespace quickshell:.*, blur on
-layerrule = match:namespace quickshell:.*, ignore_alpha 0.79
-layerrule = match:namespace quickshell:bar, animation slide
-layerrule = match:namespace quickshell:actionCenter, no_anim on
-layerrule = match:namespace quickshell:cheatsheet, animation slide bottom
-layerrule = match:namespace quickshell:dock, animation slide bottom
-layerrule = match:namespace quickshell:screenCorners, animation popin 120%
-layerrule = match:namespace quickshell:lockWindowPusher, no_anim on
-layerrule = match:namespace quickshell:notificationPopup, animation fade
-layerrule = match:namespace quickshell:overlay, no_anim on
-layerrule = match:namespace quickshell:overlay, ignore_alpha 1
-layerrule = match:namespace quickshell:overview, no_anim on
-layerrule = match:namespace quickshell:osk, animation slide bottom
-layerrule = match:namespace quickshell:polkit, no_anim on
-layerrule = match:namespace quickshell:popup, xray off # No weird color for bar tooltips (this in theory should suffice)
-layerrule = match:namespace quickshell:popup, ignore_alpha 1 # No weird color for bar tooltips (but somehow this is necessary)
-layerrule = match:namespace quickshell:mediaControls, ignore_alpha 1 # Same as above
-layerrule = match:namespace quickshell:reloadPopup, animation slide
-layerrule = match:namespace quickshell:regionSelector, no_anim on
-layerrule = match:namespace quickshell:screenshot, no_anim on
-layerrule = match:namespace quickshell:session, blur on
-layerrule = match:namespace quickshell:session, no_anim on
-layerrule = match:namespace quickshell:session, ignore_alpha 0
-layerrule = match:namespace quickshell:sidebarRight, animation slide right
-layerrule = match:namespace quickshell:sidebarLeft, animation slide left
-layerrule = match:namespace quickshell:verticalBar, animation slide
-layerrule = match:namespace quickshell:osk, order -1
-# Quickshell: waffles
-layerrule = match:namespace quickshell:wallpaperSelector, animation slide top
-layerrule = match:namespace quickshell:wNotificationCenter, no_anim on
-layerrule = match:namespace quickshell:wOnScreenDisplay, no_anim on
-layerrule = match:namespace quickshell:wStartMenu, no_anim on
-layerrule = match:namespace quickshell:wTaskView, ignore_alpha 0
-layerrule = match:namespace quickshell:wTaskView, no_anim on
-
-# Launchers need to be FAST
-layerrule = match:namespace gtk4-layer-shell, no_anim on
diff --git a/configs/hypr/hyprland/scripts/fuzzel-emoji.sh b/configs/hypr/hyprland/scripts/fuzzel-emoji.sh
index 7a1b9e1..c7cbc40 100755
--- a/configs/hypr/hyprland/scripts/fuzzel-emoji.sh
+++ b/configs/hypr/hyprland/scripts/fuzzel-emoji.sh
@@ -1885,4 +1885,69 @@ AH↗️HA↘️HA↗️HA↘️ pekora arrows hahaha rabbit
↵ enter key return
𝕏 twitter x logo
👉👈 etou ughhhhhhh shy
-👉👌 put it in imagination perv
\ No newline at end of file
+👉👌 put it in imagination perv
+🫨 shaking face tremble shake shocked
+🩷 pink heart love
+🩵 light blue heart love cyan
+🩶 grey heart gray love
+🫷 leftwards pushing hand stop halt left
+🫸 rightwards pushing hand stop halt right
+🫎 moose animal antlers
+🫏 donkey animal mule ass
+🪽 wing bird feather fly
+🐦⬛ black bird crow raven rook
+🪿 goose bird honk
+🪼 jellyfish sea ocean sting
+🪻 hyacinth flower spring
+🫚 ginger root spice food
+🫛 pea pod peas vegetable food
+🪭 folding hand fan fan cool
+🪮 hair pick afro comb
+🪇 maracas instrument music shake
+🪈 flute instrument music
+🪯 khanda sikh religion symbol
+🛜 wireless wifi wi-fi internet network
+🙂↔️ head shaking horizontally no shake
+🙂↕️ head shaking vertically yes nod
+🚶➡️ person walking facing right walk
+🚶♀️➡️ woman walking facing right walk
+🚶♂️➡️ man walking facing right walk
+🧎➡️ person kneeling facing right kneel
+🧎♀️➡️ woman kneeling facing right kneel
+🧎♂️➡️ man kneeling facing right kneel
+🧑🦯➡️ person with white cane facing right accessibility blind
+👨🦯➡️ man with white cane facing right accessibility blind
+👩🦯➡️ woman with white cane facing right accessibility blind
+🧑🦼➡️ person in motorized wheelchair facing right accessibility
+👨🦼➡️ man in motorized wheelchair facing right accessibility
+👩🦼➡️ woman in motorized wheelchair facing right accessibility
+🧑🦽➡️ person in manual wheelchair facing right accessibility
+👨🦽➡️ man in manual wheelchair facing right accessibility
+👩🦽➡️ woman in manual wheelchair facing right accessibility
+🏃➡️ person running facing right run
+🏃♀️➡️ woman running facing right run
+🏃♂️➡️ man running facing right run
+🧑🧑🧒 family adult adult child parents
+🧑🧑🧒🧒 family adult adult child child parents
+🧑🧒 family adult child parent
+🧑🧒🧒 family adult child child parent
+🐦🔥 phoenix fire bird rebirth
+🍋🟩 lime fruit citrus green
+🍄🟫 brown mushroom fungi
+⛓️💥 broken chain snap shatter
+ face with bags under eyes tired sleepy exhausted
+ fingerprint id biometric
+ leafless tree barren dead winter
+ root vegetable food turnip radish
+ harp instrument music
+ shovel dig tool
+ splatter splash stain mess
+🇨🇶 flag sark
+ distorted face anxiety shocked panic
+ fight cloud comic brawl dust
+ hairy creature sasquatch bigfoot
+🧑🩰 ballet dancer dance ballerina
+ orca killer whale
+ landslide rockfall disaster
+ trombone instrument music
+ treasure chest gold loot pirate
diff --git a/configs/hypr/hyprland/scripts/workspace_action.sh b/configs/hypr/hyprland/scripts/workspace_action.sh
deleted file mode 100755
index fa63d71..0000000
--- a/configs/hypr/hyprland/scripts/workspace_action.sh
+++ /dev/null
@@ -1,18 +0,0 @@
-#!/usr/bin/env bash
-curr_workspace="$(hyprctl activeworkspace -j | jq -r ".id")"
-dispatcher="$1"
-shift ## The target is now in $1, not $2
-
-if [[ -z "${dispatcher}" || "${dispatcher}" == "--help" || "${dispatcher}" == "-h" || -z "$1" ]]; then
- echo "Usage: $0 "
- exit 1
-fi
-if [[ "$1" == *"+"* || "$1" == *"-"* ]]; then ## Is this something like r+1 or -1?
- hyprctl dispatch "${dispatcher}" "$1" ## $1 = workspace id since we shifted earlier.
-elif [[ "$1" =~ ^[0-9]+$ ]]; then ## Is this just a number?
- target_workspace=$((((curr_workspace - 1) / 10 ) * 10 + $1))
- hyprctl dispatch "${dispatcher}" "${target_workspace}"
-else
- hyprctl dispatch "${dispatcher}" "$1" ## In case the target in a string, required for special workspaces.
- exit 1
-fi
diff --git a/configs/hypr/hyprland/scripts/zoom.sh b/configs/hypr/hyprland/scripts/zoom.sh
deleted file mode 100755
index 4713684..0000000
--- a/configs/hypr/hyprland/scripts/zoom.sh
+++ /dev/null
@@ -1,54 +0,0 @@
-#!/usr/bin/env bash
-
-# Controls Hyprland's cursor zoom_factor, clamped between 1.0 and 3.0
-
-# Get current zoom level
-get_zoom() {
- hyprctl getoption -j cursor:zoom_factor | jq '.float'
-}
-
-# Clamp a value between 1.0 and 3.0
-clamp() {
- local val="$1"
- awk "BEGIN {
- v = $val;
- if (v < 1.0) v = 1.0;
- if (v > 3.0) v = 3.0;
- print v;
- }"
-}
-
-# Set zoom level
-set_zoom() {
- local value="$1"
- clamped=$(clamp "$value")
- hyprctl keyword cursor:zoom_factor "$clamped"
-}
-
-case "$1" in
- reset)
- set_zoom 1.0
- ;;
- increase)
- if [[ -z "$2" ]]; then
- echo "Usage: $0 increase STEP"
- exit 1
- fi
- current=$(get_zoom)
- new=$(awk "BEGIN { print $current + $2 }")
- set_zoom "$new"
- ;;
- decrease)
- if [[ -z "$2" ]]; then
- echo "Usage: $0 decrease STEP"
- exit 1
- fi
- current=$(get_zoom)
- new=$(awk "BEGIN { print $current - $2 }")
- set_zoom "$new"
- ;;
- *)
- echo "Usage: $0 {reset|increase STEP|decrease STEP}"
- exit 1
- ;;
-esac
diff --git a/requirements.txt b/requirements.txt
deleted file mode 100644
index 0a9116d..0000000
--- a/requirements.txt
+++ /dev/null
@@ -1,35 +0,0 @@
-autopep8==1.6.0
-cachetools==5.0.0
-certifi==2024.2.2
-charset-normalizer==2.0.12
-google-api-core==2.5.0
-google-api-python-client==2.113.0
-google-auth==2.26.1
-google-auth-httplib2==0.1.0
-google-auth-oauthlib==1.2.0
-googleapis-common-protos==1.54.0
-httplib2==0.20.4
-idna==3.3
-oauth2client==4.1.3
-oauthlib==3.2.0
-protobuf==3.19.4
-pyasn1==0.4.8
-pyasn1-modules==0.2.8
-pycodestyle==2.8.0
-pyparsing==3.0.7
-requests==2.27.1
-requests-oauthlib==1.3.1
-rsa==4.8
-six==1.16.0
-toml==0.10.2
-uritemplate==4.1.1
-urllib3==1.26.11
-sounddevice>=0.4.6
-numpy>=1.21.0
-scipy>=1.10.0
-evdev>=1.6.0
-pyperclip>=1.8.2
-pywhispercpp==1.3.3
-requests>=2.25.0
-psutil>=5.8.0
-rich>=13.0.0
\ No newline at end of file
diff --git a/zsh.sh b/zsh.sh
index 7030ec6..08aab5b 100755
--- a/zsh.sh
+++ b/zsh.sh
@@ -27,7 +27,6 @@ echo "This script will backup your current zsh config if it exists "
set -eu
# Install prerequisites if installed skips
-
if ! command -v zsh >/dev/null && command -v git >/dev/null && command -v curl >/dev/null && command -v fzf >/dev/null; then
if command -v pacman >/dev/null; then
echo "pacman detected. Installing prerequisites"