#██ ██ ██ ██ █████▄ █████▄ ██ ▄████▄ ███ ██ ████▄ #██████ ▀██▀ ██▄▄█▀ ██▄▄██▄ ██ ██▄▄██ ██ ▀▄██ ██ ██ #██ ██ ██ ██ ██ ██ ██████ ██ ██ ██ ██ ████▀ ################### ### MY PROGRAMS ### ################### $terminal = ghostty $fileManager = thunar $menu = rofi -show drun $browser = librewolf $browser2 = google-chrome-stable # Configurations #source = ~/.config/hypr/hyprland/animations.conf #source = ~/.config/hypr/hyprland/autostart.conf #source = ~/.config/hypr/hyprland/bindings.conf #source = ~/.config/hypr/hyprland/env.conf #source = ~/.config/hypr/hyprland/input.conf #source = ~/.config/hypr/hyprland/looknfeel.conf #source = ~/.config/hypr/hyprland/monitors.conf #source = ~/.config/hypr/hyprland/windowrules.conf #▄████▄ ███ ██ ██ ██▄ ▄██ ▄████▄ ██████ ██ ▄████▄ ███ ██ ▄█████ #██▄▄██ ██ ▀▄██ ██ ██ ▀▀ ██ ██▄▄██ ██ ██ ██ ██ ██ ▀▄██ ▀▀▀▄▄▄ #██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ██ ▀████▀ ██ ██ █████▀ animations { enabled = true bezier = water, 0.22, 0.9, 0.36, 1.0 bezier = flow, 0.25, 0.1, 0.25, 1.0 bezier = ripple, 0.33, 0.0, 0.2, 1.0 bezier = stream, 0.4, 0.0, 0.4, 1.0 bezier = cascade, 0.19, 1.0, 0.22, 1.0 bezier = md3_standard, 0.2, 0, 0, 1 bezier = md3_accel, 0.3, 0, 0.8, 0.15 bezier = overshot, 0.05, 0.9, 0.1, 1.05 animation = windows, 1, 3.0, water animation = windowsIn, 1, 2.5, cascade,slide animation = windowsOut, 1, 2.4, stream,slide animation = windowsMove,1, 1.6, flow animation = fade, 1, 2.4, water animation = fadeIn, 1, 2.0, cascade animation = fadeOut, 1, 1.8, ripple animation = fadeDim, 1, 2.0, water animation = fadeSwitch, 1, 1.4, flow animation = layersIn, 1, 1.5, overshot, popin 80% animation = layersOut, 1, 1.3, md3_accel, popin 90% animation = layers, 1, 1.5, md3_standard animation = workspaces, 1, 1.5, flow animation = specialWorkspace, 1, 2.5, water animation = border, 1, 2.9, water animation = borderangle,1, 3.5, flow } #▄████▄ ██ ██ ██████ ▄████▄ ▄█████ ██████ ▄████▄ █████▄ ██████ #██▄▄██ ██ ██ ██ ██ ██ ▀▀▀▄▄▄ ██ ██▄▄██ ██▄▄██▄ ██ #██ ██ ▀████▀ ██ ▀████▀ █████▀ ██ ██ ██ ██ ██ ██ exec-once = wl-paste --type text --watch cliphist store exec-once = wl-paste --type image --watch cliphist store #exec-once = waybar & disown exec-once = librewolf & disown exec-once = swaync & disown exec-once = hypridle & disown exec-once = seventeenlands & disown exec-once = hyprctl dispatch exec [workspace 3 silent] signal-desktop exec-once = hyprctl dispatch exec [workspace 3 silent] discord exec-once = hyprctl dispatch exec [workspace 3 silent] thunderbird #exec-once = hyprctl dispatch exec "[workspace 5 silent] steam" #██ ▄█▀ ██████ ██ ██ █████▄ ██ ███ ██ ████▄ ██ ███ ██ ▄████ ▄█████ #████ ██▄▄ ▀██▀ ██▄▄██ ██ ██ ▀▄██ ██ ██ ██ ██ ▀▄██ ██ ▄▄▄ ▀▀▀▄▄▄ #██ ▀█▄ ██▄▄▄▄ ██ ██▄▄█▀ ██ ██ ██ ████▀ ██ ██ ██ ▀███▀ █████▀ # See https://wiki.hyprland.org/Configuring/Keywords/ $mainMod = SUPER # Sets "Windows" key as main modifier # Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more bind = $mainMod, A, exec, ~/.config/hypr/scripts/status.sh bind = $mainMod, B, exec, $browser bind = $mainMod SHIFT, B, exec, $browser2 bind = $mainMod, C, killactive, bind = $mainMod, E, exec, $fileManager bind = $mainMod, F, togglefloating, #bind = $mainMod, J, togglesplit, # dwindle bind = $mainMod, J, layoutmsg, togglesplit dwindle bind = $mainMod, L, exec, hyprlock bind = $mainMod, M, exit, bind = $mainMod, N, exec, swaync-client -t -sw bind = $mainMod, P, pseudo, # dwindle bind = $mainMod, S, exec, $terminal -e ~/.config/hypr/scripts/statmon/target/release/statmon bind = $mainMod SHIFT, S, exec, hyprshot -m region --clipboard-only, bind = $mainMod, Q, exec, ~/.config/hypr/scripts/power-menu.sh bind = $mainMod, U, exec, ~/.config/hypr/scripts/update-sys.sh up bind = $mainMod, V, exec, cliphist list | rofi -dmenu | cliphist decode | wl-copy bind = $mainMod, W, exec, ~/.config/hypr/scripts/wifi-menu.sh bind = $mainMod SHIFT, W, exec, ~/.config/hypr/scripts/bt-menu.sh bind = $mainMod, return, exec, $terminal bind = $mainMod, space, exec, $menu bind = $mainMod, backslash, exec, ~/.config/hypr/scripts/monitor_setup.sh bind = $mainMod, slash, exec, $terminal -e btop # 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, movetoworkspacesilent, 1 bind = $mainMod SHIFT, 2, movetoworkspacesilent, 2 bind = $mainMod SHIFT, 3, movetoworkspacesilent, 3 bind = $mainMod SHIFT, 4, movetoworkspacesilent, 4 bind = $mainMod SHIFT, 5, movetoworkspacesilent, 5 bind = $mainMod SHIFT, 6, movetoworkspacesilent, 6 bind = $mainMod SHIFT, 7, movetoworkspacesilent, 7 bind = $mainMod SHIFT, 8, movetoworkspacesilent, 8 bind = $mainMod SHIFT, 9, movetoworkspacesilent, 9 bind = $mainMod SHIFT, 0, movetoworkspacesilent, 10 # Example special workspace (scratchpad) #bind = $mainMod, S, togglespecialworkspace, magic #bind = $mainMod SHIFT, S, movetoworkspace, special:magic bind = SUPER_ALT_CTRL, L, exec, hyprctl keyword monitor "eDP-1,preferred,auto,1" #Mouse Key Assignements #bind = , code:191, exec, $terminal #bind = , code:198, exec, $terminal # Lid Open & Closed #bindl = , switch:off:Lid Switch, exec, ~/.config/hypr/scripts/monitor_setup.sh # trigger when the switch is turning on #bindl = , switch:on:Lid Switch, exec, ~/.config/hypr/scripts/monitor_setup.sh # 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 # Laptop multimedia keys for volume and LCD brightness bindel = ,XF86AudioRaiseVolume, exec, wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 5%+ bindel = ,XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%- bindel = ,XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle bindel = ,XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle bindel = ,XF86MonBrightnessUp, exec, brightnessctl s 10%+ bindel = ,XF86MonBrightnessDown, exec, brightnessctl s 10%- # Requires playerctl bindl = , XF86AudioNext, exec, playerctl next bindl = , XF86AudioPause, exec, playerctl play-pause bindl = , XF86AudioPlay, exec, playerctl play-pause bindl = , XF86AudioPrev, exec, playerctl previous # --- Mouse Side Button Remaps --- bind = , mouse:276, sendshortcut, , ESCAPE, active bind = , mouse:275, sendshortcut, , RETURN, active #██████ ███ ██ ██ ██ ██ ██ ▄████▄ █████▄ ██ ▄████▄ █████▄ ██ ██████ ▄█████ #██▄▄ ██ ▀▄██ ██▄▄██ ██▄▄██ ██▄▄██ ██▄▄██▄ ██ ██▄▄██ ██▄▄██ ██ ██▄▄ ▀▀▀▄▄▄ #██▄▄▄▄ ██ ██ ▀██▀ ▀██▀ ██ ██ ██ ██ ██ ██ ██ ██▄▄█▀ ██████ ██▄▄▄▄ █████▀ # GTK Theme env = GTK_THEME,adw-gtk3-dark # Cursor size env = XCURSOR_SIZE,20 env = HYPRCURSOR_SIZE,20 # Language Settings env = LANG,en_US.UTF-8 env = LC_ALL,en_US.UTF-8 env = LANGUAGE,en_US.UTF-8 # Editor env = EDITOR,nvim # Force all apps to use Wayland env = GDK_BACKEND,wayland,x11 env = QT_QPA_PLATFORM,wayland;xcb env = QT_STYLE_OVERRIDE,kvantum env = SDL_VIDEODRIVER,wayland env = MOZ_ENABLE_WAYLAND,1 env = ELECTRON_OZONE_PLATFORM_HINT,wayland env = OZONE_PLATFORM,wayland env = XDG_SESSION_TYPE,wayland # Allow better support for screen sharing (Google Meet, Discord, etc) env = XDG_CURRENT_DESKTOP,Hyprland env = XDG_SESSION_DESKTOP,Hyprland #██ ███ ██ █████▄ ██ ██ ██████ #██ ██ ▀▄██ ██▄▄█▀ ██ ██ ██ #██ ██ ██ ██ ▀████▀ ██ # hide cursor after n sec cursor { inactive_timeout = 5 } input { kb_options = caps:none #deactivate capslock # Change speed of keyboard repeat # repeat_rate = 40 # repeat_delay = 600 accel_profile = flat #force_no_accel = true follow_mouse = 1 numlock_by_default = true # Increase sensitity for mouse/trackpack (default: 0) sensitivity = 0 #0.35 touchpad { # Use natural (inverse) scrolling natural_scroll = false #true # Use two-finger clicks for right-click instead of lower-right corner clickfinger_behavior = true # Control the speed of your scrolling scroll_factor = 0.4 } } misc { key_press_enables_dpms = true # key press will trigger wake mouse_move_enables_dpms = true # mouse move will trigger wake } #██ ▄████▄ ▄████▄ ██ ▄█▀ ▄▀▀▄ ██████ ██████ ██████ ██ #██ ██ ██ ██ ██ ████ ▄▀▀▄ ▄ ██▄▄ ██▄▄ ██▄▄ ██ #██████ ▀████▀ ▀████▀ ██ ▀█▄ ▀▄▄▀▀▄ ██ ██▄▄▄▄ ██▄▄▄▄ ██████ general { gaps_in = 0 gaps_out = 0 border_size = 1 # https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors col.active_border = rgba(ff9100ff) col.inactive_border = rgba(595959aa) # Set to true enable resizing windows by clicking and dragging on borders and gaps resize_on_border = false # Please see https://wiki.hyprland.org/Configuring/Tearing/ before you turn this on allow_tearing = false layout = dwindle } # https://wiki.hyprland.org/Configuring/Variables/#decoration decoration { rounding = 10 rounding_power = 2 # Change transparency of focused and unfocused windows active_opacity = 1.0 inactive_opacity = 0.9 shadow { enabled = false range = 4 render_power = 3 color = rgba(1a1a1aee) } # https://wiki.hyprland.org/Configuring/Variables/#blur blur { enabled = true size = 7 passes = 4 ignore_opacity = true noise = 0.0117 contrast = 0.8916 brightness = 0.8172 xray = false new_optimizations = true special = true popups = true } } # App launcher #layerrule = blur, rofi #layerrule = ignorezero, rofi #layerrule = animation slide bottom, rofi # Top bar #layerrule = blur, waybar #layerrule = ignorezero, waybar dwindle { preserve_split = true # You probably want this } misc { force_default_wallpaper = 0 # Set to 0 or 1 to disable the anime mascot wallpapers disable_hyprland_logo = true # If true disables the random hyprland logo / anime girl background. :( } #██▄ ▄██ ▄████▄ ███ ██ ██ ██████ ▄████▄ █████▄ ▄█████ #██ ▀▀ ██ ██ ██ ██ ▀▄██ ██ ██ ██ ██ ██▄▄██▄ ▀▀▀▄▄▄ #██ ██ ▀████▀ ██ ██ ██ ██ ▀████▀ ██ ██ █████▀ monitor = , preferred, auto, 1 # Lid switch bindings bindl = , switch:on:Lid Switch, exec, hyprctl keyword monitor "eDP-1, disable" bindl = , switch:off:Lid Switch, exec, hyprctl keyword monitor "eDP-1, preferred, auto, 1" #██ ██ ██ ███ ██ ████▄ ▄████▄ ██ ██ █████▄ ██ ██ ██ ██████ ▄█████ #██ ▄█▄ ██ ██ ██ ▀▄██ ██ ██ ██ ██ ██ ▄█▄ ██ ██▄▄██▄ ██ ██ ██ ██▄▄ ▀▀▀▄▄▄ # ▀██▀██▀ ██ ██ ██ ████▀ ▀████▀ ▀██▀██▀ ██ ██ ▀████▀ ██████ ██▄▄▄▄ █████▀ # Fix some dragging issues with XWayland windowrule = match:class ^$, match:title ^$, match:xwayland 1, match:float 0, match:fullscreen 0, match:pin 0, no_focus on # Prevent apps from auto-maximizing themselves windowrule = suppress_event maximize, match:class .* # 97% opacity when focused, 90% when unfocused windowrule = opacity 0.97 0.9, match:class .* # Runelite specific rule #windowrule = match:class ^(net-runelite-client-RuneLite)$, float on, size 1600 850, center on