mirror of
https://github.com/donovanglover/nix-config.git
synced 2025-02-14 08:49:44 +01:00
This fixes an issue where the cursor would occasionally show in fullscreen applications where the cursor was not expected to show. The cursor will still disappear when using kitty.
220 lines
6.9 KiB
Plaintext
220 lines
6.9 KiB
Plaintext
# Change the scale of the monitor
|
|
monitor=eDP-1,preferred,auto,1
|
|
|
|
# Make it easy to plug in other monitors
|
|
monitor=,preferred,auto,1
|
|
#monitor=,highrr,auto,1 # Use the highest refresh rate
|
|
#monitor=,highres,auto,1 # Use the highest resolution
|
|
|
|
# Execute your favorite apps at launch
|
|
exec-once = swaybg --mode fill --image "$(fd -d 1 wallpaper.png /nix/store/)"
|
|
exec-once = wpctl set-volume @DEFAULT_AUDIO_SINK@ 20%
|
|
exec-once = sleep 0.5 && waybar
|
|
exec-once = fcitx5 # Japanese input support
|
|
exec-once = mullvad-vpn
|
|
exec-once = wl-paste -p --watch wl-copy -pc # Disable middle click paste
|
|
exec-once = udiskie # Auto-mount drives
|
|
# exec-once = hyprland-autoname-workspaces --dedup
|
|
# exec-once = play ~/start.flac
|
|
|
|
# Some default env vars.
|
|
env = XCURSOR_SIZE,24
|
|
env = BROWSER,librewolf
|
|
env = GTK_IM_MODULE,fcitx
|
|
env = QT_IM_MODULE,fcitx
|
|
env = XMODIFIERS,@im=fcitx
|
|
env = SDL_IM_MODULE,fcitx
|
|
env = GLFW_IM_MODULE,ibus
|
|
|
|
input {
|
|
kb_layout = us
|
|
accel_profile = flat
|
|
|
|
follow_mouse = 1
|
|
|
|
touchpad {
|
|
natural_scroll = yes
|
|
disable_while_typing = no
|
|
}
|
|
|
|
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
|
|
}
|
|
|
|
general {
|
|
gaps_in = 0
|
|
gaps_out = 0
|
|
border_size = 1
|
|
col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg
|
|
col.inactive_border = rgba(595959aa)
|
|
layout = master
|
|
resize_on_border = yes
|
|
}
|
|
|
|
decoration {
|
|
rounding = 0
|
|
blur = yes
|
|
#inactive_opacity = 0.3
|
|
blur_size = 3
|
|
blur_passes = 1
|
|
blur_new_optimizations = yes
|
|
drop_shadow = yes
|
|
shadow_range = 4
|
|
shadow_render_power = 3
|
|
col.shadow = rgba(1a1a1aee)
|
|
}
|
|
|
|
animations {
|
|
enabled = yes
|
|
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 = borderangle, 1, 8, default
|
|
animation = fade, 1, 7, default
|
|
animation = workspaces, 1, 6, default
|
|
animation = specialWorkspace, 1, 6, default
|
|
}
|
|
|
|
dwindle {
|
|
preserve_split = yes
|
|
no_gaps_when_only = yes
|
|
special_scale_factor = 0.95
|
|
}
|
|
|
|
master {
|
|
new_is_master = yes
|
|
new_on_top = yes
|
|
mfact = 0.65
|
|
special_scale_factor = 0.95
|
|
no_gaps_when_only = yes
|
|
}
|
|
|
|
gestures {
|
|
workspace_swipe = yes
|
|
}
|
|
|
|
device:synps/2-synaptics-touchpad {
|
|
sensitivity = 0.75
|
|
accel_profile = flat
|
|
natural_scroll = yes
|
|
disable_while_typing = no
|
|
}
|
|
|
|
device:tpps/2-elan-trackpoint {
|
|
sensitivity = 0.5
|
|
accel_profile = flat
|
|
}
|
|
|
|
bind = SUPER, Z, exec, rofi -show
|
|
bind = SUPER_SHIFT, Z, workspace, empty
|
|
bind = SUPER_SHIFT, Z, exec, rofi -show
|
|
bind = SUPER_SHIFT, Return, exec, kitty
|
|
bind = SUPER, Tab, workspace, e+1
|
|
bind = SUPER_SHIFT, Tab, workspace, e-1
|
|
bind = SUPER, Q, killactive,
|
|
bind = SUPER, P, exec, grim -g "$(slurp)"
|
|
bind = , Print, exec, grim && dunstify Screenshot Captured.
|
|
bind = SUPER_ALT, delete, exit
|
|
bind = SUPER, V, togglefloating,
|
|
bind = SUPER, V, centerwindow,
|
|
bind = SUPER, O, exec, killall -SIGUSR1 .waybar-wrapped
|
|
bind = SUPER, X, pin
|
|
bind = SUPER, F, fullscreen, 1
|
|
bind = SUPER_SHIFT, F, fullscreen
|
|
bind = SUPER, bracketright, changegroupactive, f
|
|
bind = SUPER, bracketleft, changegroupactive, b
|
|
bind = SUPER, U, exec, ~/.config/hypr/toggle-layout.sh
|
|
bind = SUPER, S, togglespecialworkspace
|
|
bind = SUPER_SHIFT, S, movetoworkspace, special
|
|
bind = SUPER_SHIFT, S, togglespecialworkspace
|
|
|
|
bind = SUPER, Return, exec, ~/.config/hypr/swapmaster.sh
|
|
bind = SUPER, backslash, exec, ~/.config/hypr/focusmaster.sh
|
|
bind = SUPER, J, layoutmsg, cyclenext
|
|
bind = SUPER, K, layoutmsg, cycleprev
|
|
bind = SUPER_SHIFT, J, layoutmsg, swapnext
|
|
bind = SUPER_SHIFT, K, layoutmsg, swapprev
|
|
bind = SUPER, left, layoutmsg, orientationleft
|
|
bind = SUPER, right, layoutmsg, orientationright
|
|
bind = SUPER, up, layoutmsg, orientationtop
|
|
bind = SUPER, down, layoutmsg, orientationbottom
|
|
bind = SUPER, C, layoutmsg, orientationcenter
|
|
bind = SUPER, H, layoutmsg, addmaster
|
|
bind = SUPER, L, layoutmsg, removemaster
|
|
bind = SUPER_SHIFT, H, splitratio, -0.05
|
|
bind = SUPER_SHIFT, L, splitratio, +0.05
|
|
|
|
# Group keybinds with super+alt
|
|
bind = SUPER_ALT, Return, togglegroup
|
|
bind = SUPER_ALT, H, moveintogroup, l
|
|
bind = SUPER_ALT, L, moveintogroup, r
|
|
bind = SUPER_ALT, K, moveintogroup, u
|
|
bind = SUPER_ALT, J, moveintogroup, d
|
|
bind = SUPER_ALT, semicolon, moveoutofgroup
|
|
bind = SUPER_ALT, apostrophe, lockgroups, toggle
|
|
|
|
# Switch workspaces with super + [0-9]
|
|
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
|
|
|
|
# Move active window to a workspace with super + shift + [0-9]
|
|
bind = SUPER_SHIFT, 1, movetoworkspace, 1
|
|
bind = SUPER_SHIFT, 2, movetoworkspace, 2
|
|
bind = SUPER_SHIFT, 3, movetoworkspace, 3
|
|
bind = SUPER_SHIFT, 4, movetoworkspace, 4
|
|
bind = SUPER_SHIFT, 5, movetoworkspace, 5
|
|
bind = SUPER_SHIFT, 6, movetoworkspace, 6
|
|
bind = SUPER_SHIFT, 7, movetoworkspace, 7
|
|
bind = SUPER_SHIFT, 8, movetoworkspace, 8
|
|
bind = SUPER_SHIFT, 9, movetoworkspace, 9
|
|
bind = SUPER_SHIFT, 0, movetoworkspace, 10
|
|
|
|
# Toggle workspaces with super + ctrl + [0-9]
|
|
bind = SUPER_CTRL, 1, exec, ~/.config/hypr/tags.sh 1
|
|
bind = SUPER_CTRL, 2, exec, ~/.config/hypr/tags.sh 2
|
|
bind = SUPER_CTRL, 3, exec, ~/.config/hypr/tags.sh 3
|
|
bind = SUPER_CTRL, 4, exec, ~/.config/hypr/tags.sh 4
|
|
bind = SUPER_CTRL, 5, exec, ~/.config/hypr/tags.sh 5
|
|
bind = SUPER_CTRL, 6, exec, ~/.config/hypr/tags.sh 6
|
|
bind = SUPER_CTRL, 7, exec, ~/.config/hypr/tags.sh 7
|
|
bind = SUPER_CTRL, 8, exec, ~/.config/hypr/tags.sh 8
|
|
bind = SUPER_CTRL, 9, exec, ~/.config/hypr/tags.sh 9
|
|
bind = SUPER_CTRL, 0, exec, ~/.config/hypr/tags.sh 10
|
|
|
|
# TODO: Use 0 to show windows in all workspaces
|
|
layerrule = blur,panel
|
|
layerrule = blur,rofi
|
|
|
|
# Scroll through existing workspaces with super + scroll
|
|
bind = SUPER, mouse_down, workspace, e+1
|
|
bind = SUPER, mouse_up, workspace, e-1
|
|
|
|
# Move/resize windows with super + LMB/RMB and dragging
|
|
bindm = SUPER, mouse:272, movewindow
|
|
bindm = SUPER, mouse:273, resizewindow
|
|
|
|
# Change volume with keys
|
|
# TODO: Change notification once at 0/100%
|
|
bindl=, XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle && notify-send -t 2000 "Muted" "$(wpctl get-volume @DEFAULT_AUDIO_SINK@)"
|
|
bindl=, XF86AudioRaiseVolume, exec, wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 5%+ && notify-send -t 2000 "Raised volume to" "$(wpctl get-volume @DEFAULT_AUDIO_SINK@ | tail -c 3)%"
|
|
bindl=, XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%- && notify-send -t 2000 "Lowered volume to" "$(wpctl get-volume @DEFAULT_AUDIO_SINK@ | tail -c 3)%"
|
|
bindl=, XF86MonBrightnessDown, exec, brightnessctl set 5%- && notify-send -t 2000 "Decreased brightness to" "$(brightnessctl get)"
|
|
bindl=, XF86MonBrightnessUp, exec, brightnessctl set +5% && notify-send -t 2000 "Increased brightness to" "$(brightnessctl get)"
|
|
|
|
bind = WIN, F1, exec, ~/.config/hypr/gamemode.sh
|
|
|
|
misc {
|
|
disable_hyprland_logo = yes
|
|
animate_mouse_windowdragging = yes
|
|
}
|
|
|
|
# vim:syn=bash
|