# ####################################################################################### # AUTOGENERATED HYPR CONFIG. # PLEASE USE THE CONFIG PROVIDED IN THE GIT REPO /examples/hypr.conf AND EDIT IT, # OR EDIT THIS ONE ACCORDING TO THE WIKI INSTRUCTIONS. # ####################################################################################### # This is an example Hyprland config file. # Refer to the wiki for more information. # https://wiki.hyprland.org/Configuring/Configuring-Hyprland/ # Please note not all available settings / options are set here. # For a full list, see the wiki # You can split this configuration into multiple files # Create your files separately and then link them to this file like this: # source = ~/.config/hypr/myColors.conf ################ ### MONITORS ### ################ # See https://wiki.hyprland.org/Configuring/Monitors/ #monitor=,preferred,auto,auto monitor=eDP-1, 1920x1080, 0x0, 1 workspace=1,monitor:eDP-1 workspace=2,monitor:eDP-1 workspace=3,monitor:eDP-1 workspace=4,monitor:eDP-1 workspace=5,monitor:eDP-1 workspace=6,monitor:eDP-1 workspace=7,monitor:eDP-1 workspace=8,monitor:eDP-1 workspace=9,monitor:eDP-1 workspace=10,monitor:eDP-1 xwayland { force_zero_scaling = true } ################### ### MY PROGRAMS ### ################### # See https://wiki.hyprland.org/Configuring/Keywords/ # Set programs that you use $terminal = kitty $fileManager = GTK_THEME="Adwaita:dark" nautilus $menu = wofi --show drun --theme /home/kirreen/.local/share/rofi/themes/tokyonight/tokyonight.rasi ################# ### AUTOSTART ### ################# # Autostart necessary processes (like notifications daemons, status bars, etc.) # Or execute your favorite apps at launch like this: # exec-once = $terminal # exec-once = nm-applet & exec-once = waybar & hyprpaper #& firefox exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP exec-once = vesktop & nheko # exec-once = env LD_PRELOAD=/usr/lib32/libextest.so /usr/bin/steam-runtime %U -pipewire # env XDG_SESSION_TYPE=x11 discord ############################# ### ENVIRONMENT VARIABLES ### ############################# # See https://wiki.hyprland.org/Configuring/Environment-variables/ env = XCURSOR_SIZE,24 env = HYPRCURSOR_SIZE,24 # env = LIBVA_DRIVER_NAME,nvidia env = XDG_SESSION_TYPE,wayland # env = GBM_BACKEND,nvidia-drm # env = __GLX_VENDOR_LIBRARY_NAME,nvidia # env = WLR_DRM_DEVICES,/home/kirreen/.config/hypr/card env = HYPRSHOT_DIR,/home/kirreen/Pictures/Screenshots env = GTK_THEME="Adwaita:dark" # https://www.reddit.com/r/hyprland/comments/1byyrix/help_dolphin_theming/ #env = QT_QPA_PLATFORM,wayland #env = QT_STYLE_OVERRIDE,BreezeDark #env = QT_QPA_PLATFORMTHEME,qt6ct #env = XDG_SESSION_DESKTOP,KDE #env = XDG_CURRENT_DESKTOP,KDE cursor { no_hardware_cursors = true } ##################### ### LOOK AND FEEL ### ##################### # Refer to https://wiki.hyprland.org/Configuring/Variables/ # https://wiki.hyprland.org/Configuring/Variables/#general general { gaps_in = 4 gaps_out = 10 border_size = 2 # https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors # col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg col.active_border = rgba(d65d0eee) rgba(eb994944) 45deg 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 # Change transparency of focused and unfocused windows active_opacity = 1.0 inactive_opacity = 1.0 drop_shadow = true shadow_range = 4 shadow_render_power = 3 col.shadow = rgba(1a1a1aee) # https://wiki.hyprland.org/Configuring/Variables/#blur blur { enabled = true size = 2 passes = 2 vibrancy = 0.5 vibrancy_darkness = 0.5 noise = 0.17 contrast = 0.85 } } # https://wiki.hyprland.org/Configuring/Variables/#animations animations { enabled = true # 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 = windowsIn, 1, 3, default, slide animation = windowsOut, 1, 3, default, slide #animation = windowsOut, 1, 7, default, popin 80% animation = border, 1, 10, default # animation = borderangle, 1, 8, default bezier = linear, 0.0, 0.0, 1.0, 1.0 animation = borderangle, 1, 80, linear, loop animation = fade, 1, 7, default animation = workspaces, 1, 6, default } # See https://wiki.hyprland.org/Configuring/Dwindle-Layout/ for more dwindle { pseudotile = true # Master switch for pseudotiling. Enabling is bound to mainMod + P in the keybinds section below preserve_split = true # You probably want this } # See https://wiki.hyprland.org/Configuring/Master-Layout/ for more master { new_status = master } # https://wiki.hyprland.org/Configuring/Variables/#misc misc { force_default_wallpaper = -1 # Set to 0 or 1 to disable the anime mascot wallpapers disable_hyprland_logo = false # If true disables the random hyprland logo / anime girl background. :( } ############# ### INPUT ### ############# # https://wiki.hyprland.org/Configuring/Variables/#input input { kb_layout = se kb_variant = kb_model = kb_options = kb_rules = follow_mouse = 1 #sensitivity = -.76 # -1.0 - 1.0, 0 means no modification. sensitivity = -.15 # -1.0 - 1.0, 0 means no modification. touchpad { natural_scroll = false clickfinger_behavior = true } } # https://wiki.hyprland.org/Configuring/Variables/#gestures gestures { workspace_swipe = true workspace_swipe_invert = false workspace_swipe_direction_lock = false workspace_swipe_forever = true } # 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 } #################### ### KEYBINDINGSS ### #################### # 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, Return, exec, $terminal bind = $mainMod, W, killactive, bind = $mainMod, Escape, exit, bind = $mainMod, E, exec, $fileManager bind = $mainMod, T, togglefloating, bind = $mainMod, Space, exec, $menu bind = $mainMod, P, pseudo, # dwindle #bind = $mainMod, J, togglesplit, # dwindle bind = $mainMod, F, fullscreen, # Scrot bind = $mainMod SHIFT, S, exec, hyprshot -m region # 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 = $mainMod, H, movefocus, l bind = $mainMod, L, movefocus, r bind = $mainMod, K, movefocus, u bind = $mainMod, J, 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, H, togglespecialworkspace, magic # bind = $mainMod SHIFT, H, movetoworkspace, special:magic # Scroll through existing workspaces with mainMod + scroll # bind = $mainMod, mouse_down, workspace, e+1 # bind = $mainMod, mouse_up, workspace, e-1 # Scroll through existing workspaces with Ctrl + mainMod + arrows bind = $mainMod CTRL, right, workspace, e-1 bind = $mainMod CTRL, left, workspace, e+1 # Move/resize windows with mainMod + LMB/RMB and dragging bindm = $mainMod, mouse:272, movewindow bindm = $mainMod, mouse:273, resizewindow # Send "mute" to discord, super M => Ctrl Shift M bind = SUPER, M, exec, hyprctl dispatch sendshortcut CTRL SHIFT, M, class:\(vesktop\) # Alt tab-ish bind = ALT, TAB, exec, hyprctl dispatch focuscurrentorlast # Media keys - https://www.reddit.com/r/hyprland/comments/1707yb8/probably_a_stupid_question_how_do_i_get_my_media/ # l -> do stuff even when locked # e -> repeats when key is held bindle=, XF86AudioRaiseVolume, exec, ~/.bin/vol --up bindle=, XF86AudioLowerVolume, exec, ~/.bin/vol --down bindle=, XF86MonBrightnessUp, exec, ~/.bin/bri --up bindle=, XF86MonBrightnessDown, exec, ~/.bin/bri --down bindle=, XF86Search, exec, launchpad # bindl=, XF86AudioMute, exec, amixer set Master toggle bindl=, XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle bindl=, XF86AudioPlay, exec, playerctl play-pause # the stupid key is called play , but it toggles bindl=, XF86AudioNext, exec, playerctl next bindl=, XF86AudioPrev, exec, playerctl previous ############################## ### WINDOWS AND WORKSPACES ### ############################## # See https://wiki.hyprland.org/Configuring/Window-Rules/ for more # See https://wiki.hyprland.org/Configuring/Workspace-Rules/ for workspace rules # Example windowrule v1 # windowrule = float, ^(kitty)$ # Example windowrule v2 # windowrulev2 = float,class:^(kitty)$,title:^(kitty)$ # Workspaces windowrulev2 = float, workspace: 3 # Windows windowrulev2 = suppressevent maximize, class:.* # You'll probably like this. #windowrulev2 = workspace 4, title:^.*(IronGate).(Valheim) # Games windowrulev2 = workspace 4 silent, class:^(valheim.x86_64) windowrulev2 = fullscreen, class:^(valheim.x86_64) windowrulev2 = workspace 4 silent, class:^(steam_app_1364780) windowrulev2 = fullscreen, class:^(steam_app_1364780) windowrulev2 = workspace 4 silent, class:^(steam_app_1850570) windowrulev2 = fullscreen, class:^(steam_app_1850570) windowrulev2 = workspace 4 silent, class:^(steam_app) windowrulev2 = fullscreen, class:^(steam_app) windowrulev2 = workspace 4 silent, class:^(wowclassic.exe) windowrulev2 = fullscreen, class:^(wowclassic.exe) #windowrulev2 = workspace 4, title:^(Street Fighter 6) #windowrulev2 = fullscreen, title:^(Street Fighter 6) # Steam windowrulev2 = noinitialfocus, class:^(steam) windowrulev2 = float, class:^(steam)$ # windowrulev2 = workspace 3 silent, class:^(steam)$ windowrulev2 = workspace 3 silent, title:^(Steam)$ windowrulev2 = workspace 3 silent, title:^(Friends List)$ windowrulev2 = workspace 3 silent, title:^(tollyx) # steam chat lol windowrulev2 = workspace 3 silent, title:^(Nalleball) windowrulev2 = workspace 3 silent, title:(.* \+ . Chat) windowrulev2 = size 576 499, title:^(tollyx) windowrulev2 = move 1612 57, title:^(tollyx) windowrulev2 = size 576 499, title:^(Nalleball) windowrulev2 = move 1612 57, title:^(Nalleball) windowrulev2 = size 576 499, title:(* \+ . Chat) windowrulev2 = move 1612 57, title:(* \+ . Chat) windowrulev2 = float, title:^(Steam Big Picture Mode) windowrulev2 = workspace 4, title:^(Steam Big Picture Mode) # windowrulev2 = fullscreen, title:^(Steam Big Picture Mode) windowrulev2 = size 1579 1363, title:^(Steam)$ windowrulev2 = move 10 53, title:^(Steam)$ windowrulev2 = size 1280 900, title:^(Steam Settings) windowrulev2 = center, title:^(Steam Settings) windowrulev2 = size 353 1363, title:^(Friends List) windowrulev2 = move 2189 56, title:^(Friends List) windowrulev2 = noinitialfocus, title:^(notificationtoasts_) # windowrulev2 = float, title:^(notificationtoasts_) windowrulev2 = workspace unset, title:^(notificationtoasts_) windowrule = animation popin, title:^(notificationtoasts_) # Chats windowrulev2 = noinitialfocus, class:^(nheko) windowrulev2 = workspace 7 silent, class:^(nheko) windowrulev2 = noinitialfocus, class:^(vesktop) windowrulev2 = workspace 7 silent, class:^(vesktop) # Util windowrulev2 = opacity 0.0 override, class:^(xwaylandvideobridge)$ windowrulev2 = noanim, class:^(xwaylandvideobridge)$ windowrulev2 = noinitialfocus, class:^(xwaylandvideobridge)$ windowrulev2 = maxsize 1 1, class:^(xwaylandvideobridge)$ windowrulev2 = noblur, class:^(xwaylandvideobridge)$ # Style windowrule = noblur, ^(firefox)$ #windowrule = opacity 0.95 override 0.95 override 0.95 override, ^(kitty)$