forked from logan/dotfiles
200 lines
5.7 KiB
Text
200 lines
5.7 KiB
Text
# Hyprland Config
|
|
|
|
source=~/.config/hypr/conf.d/vars.conf.example # Import examples file first so that the variables have default values
|
|
source=~/.config/hypr/conf.d/vars.conf
|
|
|
|
monitor=,preferred,auto,1
|
|
|
|
input {
|
|
kb_file=
|
|
kb_layout=us,us(3l)
|
|
kb_variant=
|
|
kb_model=
|
|
kb_options=grp:ralt_rshift_toggle
|
|
kb_rules=
|
|
|
|
follow_mouse=1
|
|
|
|
touchpad {
|
|
natural_scroll=no
|
|
}
|
|
|
|
sensitivity=0 # -1.0 - 1.0, 0 means no modification.
|
|
|
|
repeat_rate=50
|
|
repeat_delay=250
|
|
}
|
|
|
|
general {
|
|
gaps_in=5
|
|
gaps_out=10
|
|
border_size=2
|
|
col.active_border=0x66ee1111
|
|
col.inactive_border=0x66333333
|
|
|
|
layout=dwindle
|
|
|
|
apply_sens_to_raw=0 # whether to apply the sensitivity to raw input (e.g. used by games where you aim using your mouse)
|
|
|
|
#damage_tracking=full # leave it on full unless you hate your GPU and want to make it suffer
|
|
}
|
|
|
|
decoration {
|
|
rounding=2
|
|
blur {
|
|
enabled=true
|
|
size=8
|
|
}
|
|
}
|
|
|
|
animations {
|
|
enabled=1
|
|
animation=windows,1,0.5,default
|
|
animation=border,1,0.5,default
|
|
animation=fade,1,0.5,default
|
|
animation=workspaces,1,0.5,default
|
|
}
|
|
|
|
dwindle {
|
|
pseudotile=0 # enable pseudotiling on dwindle
|
|
preserve_split=1
|
|
force_split=2
|
|
}
|
|
|
|
gestures {
|
|
workspace_swipe=no
|
|
}
|
|
|
|
misc {
|
|
enable_swallow=true
|
|
swallow_regex=^(alacritty|kitty|footclient)$
|
|
disable_hyprland_logo=true
|
|
vrr=true
|
|
#mouse_move_enables_dpms=true
|
|
#key_press_enables_dpms=true
|
|
}
|
|
|
|
# example window rules
|
|
# for windows named/classed as abc and xyz
|
|
#windowrule=move 69 420,abc
|
|
#windowrule=size 420 69,abc
|
|
#windowrule=tile,xyz
|
|
#windowrule=float,abc
|
|
#windowrule=pseudo,abc
|
|
#windowrule=monitor 0,xyz
|
|
|
|
$lockCMD = swaylock -e -F -f -i $lockBG
|
|
|
|
# ------------------- BINDS ----------------------- #
|
|
# some nice mouse binds
|
|
bindm=SUPER,mouse:272,movewindow
|
|
bindm=SUPER,mouse:273,resizewindow
|
|
|
|
# Launch programs
|
|
bind=SUPER,Return,exec,footclient
|
|
bind=SUPERCTRL,Q,exec,hyprctl kill
|
|
bind=SUPERSHIFT,c,exec,pkill waybar && waybar -c ~/.config/waybar/hyprland
|
|
bind=SUPERSHIFT,r,exec,hyprctl reload
|
|
bind=CTRLALT,l,exec,$lockCMD
|
|
bind=SUPER,D,exec,wofi --show drun --allow-images -G -i --define=drun-print_command=true | sed -e 's/%[A-Za-z0-9]*/ /g' | xargs hyprctl dispatch exec
|
|
bind=,Print,exec,grim -g "$(slurp)" - | swappy -f -
|
|
bind=SUPERSHIFT,E,exec,zenity --question --text='Do you wish to exit Hyprland?' --default-cancel && hyprctl dispatch exit
|
|
|
|
# Window properties
|
|
bind=SUPERSHIFT,P,pseudo,
|
|
bind=SUPER,P,pin,
|
|
bind=SUPER,f,fullscreen,0
|
|
bind=SUPER,m,fullscreen,1
|
|
bind=SUPER,w,togglegroup
|
|
bind=SUPERCTRL,w,moveoutofgroup
|
|
bind=SUPERALT,f,fakefullscreen,1
|
|
bind=SUPERSHIFT,Space,togglefloating,
|
|
bind=SUPERSHIFT,Q,killactive,
|
|
|
|
# Volume controls
|
|
bindle=,XF86AudioRaiseVolume, exec, wpctl set-volume -l 2.0 @DEFAULT_AUDIO_SINK@ 5%+
|
|
bindle=,XF86AudioLowerVolume, exec, wpctl set-volume -l 2.0 @DEFAULT_AUDIO_SINK@ 5%-
|
|
bindle=,XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
|
|
|
|
# Brightness
|
|
bind=,XF86MonBrightnessUp,exec,brightnessctl s +5%
|
|
bind=,XF86MonBrightnessDown,exec,brightnessctl s 5%-
|
|
|
|
# Media controls
|
|
bindle=,XF86AudioPlay, exec, ~/.config/i3/toggleplay.sh
|
|
bindle=,XF86AudioNext, exec, playerctl next
|
|
bindle=,XF86AudioPrev, exec, playerctl previous
|
|
|
|
# Notification controls
|
|
bind=SUPERALT,Space,exec,makoctl dismiss
|
|
bind=SUPERALT,Shift,exec,makoctl dismiss -a
|
|
bind=SUPERALT,Tab,exec,makoctl restore
|
|
bind=SUPERALT,Period,exec,makoctl menu wofi -dmenu
|
|
|
|
# Focus
|
|
bind=SUPER,left,movefocus,l
|
|
bind=SUPER,right,movefocus,r
|
|
bind=SUPER,up,movefocus,u
|
|
bind=SUPER,down,movefocus,d
|
|
|
|
# Switch workspaces
|
|
bind=SUPER,1,workspace,1
|
|
bind=SUPER,2,workspace,2
|
|
bind=SUPER,3,workspace,3
|
|
bind=SUPER,4,workspace,4
|
|
bind=SUPER,5,workspace,5
|
|
bind=SUPER,6,workspace,6
|
|
bind=SUPER,7,workspace,7
|
|
bind=SUPER,8,workspace,8
|
|
bind=SUPER,9,workspace,9
|
|
bind=SUPER,0,workspace,10
|
|
|
|
bind=SUPER,mouse_down,workspace,e+1
|
|
bind=SUPER,mouse_up,workspace,e-1
|
|
|
|
# Move window to workspace
|
|
bind=SUPERSHIFT,1,movetoworkspace,1
|
|
bind=SUPERSHIFT,2,movetoworkspace,2
|
|
bind=SUPERSHIFT,3,movetoworkspace,3
|
|
bind=SUPERSHIFT,4,movetoworkspace,4
|
|
bind=SUPERSHIFT,5,movetoworkspace,5
|
|
bind=SUPERSHIFT,6,movetoworkspace,6
|
|
bind=SUPERSHIFT,7,movetoworkspace,7
|
|
bind=SUPERSHIFT,8,movetoworkspace,8
|
|
bind=SUPERSHIFT,9,movetoworkspace,9
|
|
bind=SUPERSHIFT,0,movetoworkspace,10
|
|
|
|
# Move window in workspace
|
|
bind=SUPERSHIFT,Left,movewindow,l
|
|
bind=SUPERSHIFT,Right,movewindow,r
|
|
bind=SUPERSHIFT,Up,movewindow,u
|
|
bind=SUPERSHIFT,Down,movewindow,d
|
|
|
|
# Move workspace to monitor
|
|
bind=SUPERCTRL,Left,movecurrentworkspacetomonitor,l
|
|
bind=SUPERCTRL,Right,movecurrentworkspacetomonitor,r
|
|
bind=SUPERCTRL,Up,movecurrentworkspacetomonitor,u
|
|
bind=SUPERCTRL,Down,movecurrentworkspacetomonitor,d
|
|
|
|
# Move window into group
|
|
bind=SUPERALT,Left,moveintogroup,l
|
|
bind=SUPERALT,Right,moveintogroup,r
|
|
bind=SUPERALT,Up,moveintogroup,u
|
|
bind=SUPERALT,Down,moveintogroup,d
|
|
|
|
# ----------------------- STARTUP -------------------- #
|
|
exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
|
|
exec-once = systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
|
|
exec-once = foot -s
|
|
exec-once = mako
|
|
exec-once = kanshi
|
|
exec-once = waybar -c ~/.config/waybar/hyprland
|
|
exec-once = wl-paste --type text --watch cliphist store #Stores only text data
|
|
exec-once = wl-paste --type image --watch cliphist store #Stores only image data
|
|
exec-once = lxqt-policykit-agent
|
|
exec-once = hyprpaper
|
|
exec-once = swayidle -w timeout $idleLockTime '$lockCMD' timeout $idleScreenTime 'hyprctl dispatch dpms off' resume 'hyprctl dispatch dpms on' timeout $idleScreenTimeLocked "/bin/bash -c 'pgrep -x swaylock && hyprctl dispatch dpms off'" resume 'hyprctl dispatch dpms on' timeout $suspendTime '$suspendCMD' resume 'hyprctl dispatch dpms on' before-sleep "/bin/bash -c '$lockCMD && playerctl -a pause'"
|
|
|
|
exec = import-gsettings
|
|
|
|
source = ~/.config/hypr/conf.d/override.conf
|