# This is an example Hyprland config file. # # Refer to the wiki for more information. # # Please note not all available settings / options are set here. # For a full list, see the wiki # # See https://wiki.hyprland.org/Configuring/Monitors/ monitor=eDP-1,2880x1800@60,auto,1.5 #monitor=,preferred,auto-up,1 monitor=DP-1,disable #monitor=HDMI-A-1,highres,auto-up,1,mirror,eDP-1 # See https://wiki.hyprland.org/Configuring/Keywords/ for more # Execute your favorite apps at launch # exec-once = waybar & hyprpaper & firefox exec-once = pipewire & pipewire-pulse & wireplumber & eww daemon & eww open bar & nextcloud & /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 & xrdb "$XDG_CONFIG_HOME/x11/xresources" & spotifyd --no-daemon & syncthing & transmission-daemon & dunst & dbus-update-activation-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP DISPLAY XAUTHORITY exec-once=[workspace 1 silent] librewolf exec-once=[workspace 8 silent] discord & telegram-desktop exec-once=[workspace 9 silent] spotify # Source a file (multi-file configs) # source = ~/.config/hypr/myColors.conf source=~/.config/hypr/rose-pine.conf # For all categories, see https://wiki.hyprland.org/Configuring/Variables/ input { kb_layout = lv kb_variant = kb_model = kb_options = caps:escape kb_rules = numlock_by_default = true repeat_rate = 50 repeat_delay = 300 follow_mouse = 1 touchpad { natural_scroll = yes disable_while_typing = false } sensitivity = 0 # -1.0 - 1.0, 0 means no modification. } debug { disable_logs = false enable_stdout_logs = true } general { # See https://wiki.hyprland.org/Configuring/Variables/ for more gaps_in = 5 gaps_out = 10 border_size = 2 col.active_border = $rose col.inactive_border = $muted layout = master } plugin { split-monitor-workspaces { count = 10 } } decoration { # See https://wiki.hyprland.org/Configuring/Variables/ for more rounding = 5 # blur = yes # blur_size = 4 # blur_passes = 1 # blur_new_optimizations = on drop_shadow = yes shadow_range = 4 shadow_render_power = 3 col.shadow = $highlightMed } animations { enabled = no # Some default animations, see https://wiki.hyprland.org/Configuring/Animations/ for moreqt6ctqt6ctqt6ctqt6ctqt6ctqt6ctqt6ctqt6ctqt6ctqt6ctqt6ctqt6ctqt6ctqt6ctqt6ctqt6ctqt6ctqt6ctqt6ctqt6ctqt6ctqt6ctqt6ctqt6ctqt6ctqt6ctqt6ctqt6ctqt6ctqt6ctqt6ctqt6ctqt6ctqt6ct 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 = fade, 1, 7, default animation = workspaces, 1, 6, default } 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 } master { # See https://wiki.hyprland.org/Configuring/Master-Layout/ for more new_status = master } gestures { # See https://wiki.hyprland.org/Configuring/Variables/ for more workspace_swipe = on } # Example per-device config # See https://wiki.hyprland.org/Configuring/Keywords/#executing for more #device:epic mouse V1 { #sensitivity = -0.5 #} # Example windowrule v1 windowrulev2 = fullscreen, class:mpv windowrulev2 = opacity 0.95, class:thunderbird windowrulev2 = workspace 8, class:discord windowrulev2 = opacity 0.95, class:discord windowrulev2 = workspace 8, class:Ripcord windowrulev2 = workspace 8, class:TelegramDesktop windowrulev2 = opacity 0.95, class:TelegramDesktop windowrulev2 = opacity 0.9, class:teams-for-linux windowrulev2 = workspace 8, class:Ferdium windowrulev2 = opacity 0.9, class:Ferdium windowrulev2 = workspace 9, class:Spotify windowrulev2 = opacity 0.9, class:Spotify windowrulev2 = tile, class:Spotify windowrulev2 = opacity 0.95, class:qbittorrent windowrulev2 = opacity 0.95, class:lutris windowrulev2 = opacity 0.95, class:pacfinder windowrulev2 = opacity 0.9, class:Bitwarden windowrulev2 = opacity 0.9, class:kdeconnect # windowrulev2 = workspace 8, class:^()$ # Example windowrule v2 windowrulev2 = move 100%-250 100%-250, class:galculator windowrulev2 = size 250 250, class:galculator windowrulev2 = float, class:galculator windowrulev2=float,title:^(flameshot) windowrulev2=move 0 0,title:^(flameshot) windowrulev2=suppressevent fullscreen,title:^(flameshot) # See https://wiki.hyprland.org/Configuring/Window-Rules/ for more # See https://wiki.hyprland.org/Configuring/Keywords/ for more $mainMod = SUPER # Example binds, see https://wiki.hyprland.org/Configuring/Binds/ for more bind = $mainMod, B ,exec, librewolf bind = $mainMod, Return, exec, alacritty bind = $mainMod SHIFT, Q, killactive # bind = $mainMod SHIFT CTRL, Q, exit bind = $mainMod, N, exec, alacritty -e lfrun bind = $mainMod CTRL, SPACE, togglefloating bind = $mainMod, P, exec, wofi --show drun -ib bind = $mainMod, F, fullscreen bind = $mainMod, M, bringactivetotop bind = $mainMod, A, pin #bind = $mainMod, O, split-changemonitor, +1 # Resize window bind = $mainMod, L, splitratio, 0.05 bind = $mainMod, H, splitratio, -0.05 # Move focus with mainMod + arrow keys bind = $mainMod, K, cyclenext bind = $mainMod, J, cyclenext, prev # 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 #bind = $mainMod, 1, split-workspace, 1 #bind = $mainMod, 2, split-workspace, 2 #bind = $mainMod, 3, split-workspace, 3 #bind = $mainMod, 4, split-workspace, 4 #bind = $mainMod, 5, split-workspace, 5 #bind = $mainMod, 6, split-workspace, 6 #bind = $mainMod, 7, split-workspace, 7 #bind = $mainMod, 8, split-workspace, 8 #bind = $mainMod, 9, split-workspace, 9 #bind = $mainMod, 0, split-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 #bind = $mainMod SHIFT, 1, split-movetoworkspace, 1 #bind = $mainMod SHIFT, 2, split-movetoworkspace, 2 #bind = $mainMod SHIFT, 3, split-movetoworkspace, 3 #bind = $mainMod SHIFT, 4, split-movetoworkspace, 4 #bind = $mainMod SHIFT, 5, split-movetoworkspace, 5 #bind = $mainMod SHIFT, 6, split-movetoworkspace, 6 #bind = $mainMod SHIFT, 7, split-movetoworkspace, 7 #bind = $mainMod SHIFT, 8, split-movetoworkspace, 8 #bind = $mainMod SHIFT, 9, split-movetoworkspace, 9 #bind = $mainMod SHIFT, 0, split-movetoworkspace, 10 # Scroll through existing workspaces with mainMod + scroll bind = $mainMod, right, workspace, e+1 bind = $mainMod, left, workspace, e-1 # Move/resize windows with mainMod + LMB/RMB and dragging bindm = $mainMod, mouse:272, movewindow bindm = $mainMod CTRL, mouse:272, resizewindow bind = $mainMod SHIFT, J, movewindow, d bind = $mainMod SHIFT, K, movewindow, u bind = $mainMod SHIFT, L, movewindow, r bind = $mainMod SHIFT, H, movewindow, l # bind = $mainMod CTRL, P, exec, wayshot -f "$(HOME)/Pictures/screenshots/$(date + '%s.png')" -s "$(slurp -f '%x %y %w %y')" --stdout | wl-copy # bind = $mainMod CTRL, P, exec, wayshot -s "$(slurp -f '%x %y %w %y')" --stdout | wl-copy # bind = $mainMod, , exec, wayshot -f "$(HOME)/Pictures/screenshots/$(date + '%s.png')" bind = CTRL, PRINT, exec, hyprshot -m region bind = , PRINT, exec, hyprshot -m output bind = SHIFT, PRINT, exec, hyprshot -m window bind = $mainMod ALT, P, exec, hyprpicker -a # colorpicker # Control keybinds bindel = , XF86MonBrightnessUp, exec, doas brightnessctl set +2% # increase brightness by 2% bindel = , XF86MonBrightnessDown, exec, doas brightnessctl set 2%- # decrease brightness by 2% bindel = , XF86AudioRaiseVolume, exec, pulsemixer --change-volume +2 # increase volume by 2 bindel = , XF86AudioLowerVolume, exec, pulsemixer --change-volume -2 # decrease volume by 2 bindel = , XF86AudioMute, exec, pulsemixer --toggle-mute # mute volume bindel = , XF86AudioPlay, exec, playerctl -a play-pause # pause/play everything bindel = $mainMod, Space, exec, hyprlock bindl = , switch:Lid Switch, exec, hyprlock