Skip to content

Instantly share code, notes, and snippets.

@hydroxycarbamide
Created October 11, 2023 22:20
Show Gist options
  • Save hydroxycarbamide/dda15c11b183441c63eb892bd016d48d to your computer and use it in GitHub Desktop.
Save hydroxycarbamide/dda15c11b183441c63eb892bd016d48d to your computer and use it in GitHub Desktop.
hyprland.conf
#
# Refer to the wiki for more information.
#
# Please note not all available settings / options are set here.
# For a full list, see the wiki (basic and advanced configuring)
#
# Monitors
monitor = DP-3, 1920x1080@144, 0x0, 1
monitor = HDMI-A-1, 1920x1080, 1920x0, 1
workspace = 1, monitor:DP-3, default:true
workspace = 2, monitor:DP-3
workspace = 3, monitor:DP-3
workspace = 4, monitor:DP-3
workspace = 5, monitor:DP-3
workspace = 6, monitor:DP-3
workspace = 7, monitor:DP-3
workspace = 8, monitor:DP-3
workspace = 9, monitor:DP-3
workspace = name:0, monitor:HDMI-A-1, default:true
input {
kb_file =
kb_layout =
kb_variant =
kb_model =
kb_options = compose:ralt #,caps:escape
kb_rules =
repeat_delay = 300
repeat_rate = 50
follow_mouse = 1
touchpad {
natural_scroll = no
}
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
force_no_accel = true
}
general {
gaps_in = 4
gaps_out = 8
border_size = 2
col.active_border = 0xfff4dbd6
col.inactive_border = 0x001e1e2e
col.group_border = 0x33f4dbd6
col.group_border_active = 0xeef4dbd6
apply_sens_to_raw = 0 # whether to apply the sensitivity to raw input (e.g. used by games where you aim using your mouse)
layout = dwindle
}
decoration {
rounding = 10
blur {
enabled = true
xray = false
size = 12
passes = 4
new_optimizations = on
noise = 0.05
contrast = 1.3
brightness = 0.95
special = false
}
active_opacity = 1.00
inactive_opacity = 1.00
drop_shadow = 1
# shadow_range = 20
# shadow_render_power = 2
# shadow_ignore_window = 1
# shadow_offset = 8 8
# dim_inactive = true
dim_strength = 0.1
dim_special = 0
shadow_range = 10
shadow_render_power = 2
shadow_ignore_window = 1
col.shadow = 0x44000000
}
animations {
enabled = 1
bezier = overshot, 0.13, 0.99, 0.29, 1.1
bezier = strongOvershot, 0.13, 0.99, 0.29, 1.3
bezier = easeOutExpo, 0.16, 1, 0.3, 1
bezier = easeInOutBack, 0.68, -0.6, 0.32, 1.6
animation = windows, 1, 4, strongOvershot, popin
animation = border, 1, 4, easeOutExpo
animation = borderangle, 1, 8, default
animation = fadeIn, 1, 1, easeOutExpo
animation = fadeOut, 1, 1, easeOutExpo
animation = fadeSwitch, 1, 6, easeOutExpo
animation = fadeShadow, 1, 6, easeOutExpo
animation = fadeDim, 1, 6, easeOutExpo
animation = workspaces, 1, 6, overshot, slide
}
dwindle {
pseudotile = false # enable pseudotiling on dwindle
}
misc {
disable_hyprland_logo = true
disable_splash_rendering = true
force_hypr_chan = true
vrr = 1
vfr = false
groupbar_gradients = false
groupbar_text_color = 0xf4dbd6ff
render_titles_in_groupbar = false
layers_hog_keyboard_focus = true
# animate_mouse_windowdragging = true
mouse_move_enables_dpms = true
key_press_enables_dpms = true
enable_swallow = false
swallow_regex = ^(foot)$
}
# window rules
# for windows named/classed as abc and xyz
windowrulev2 = float, class:^(floating-foot)$
windowrulev2 = float, class:^(.*nextcloud.*)$
windowrulev2 = stayfocused, class:^(.*nextcloud.*)$
windowrulev2 = center, class:^(floating-foot)$
windowrulev2 = pin, class:^(floating-foot)$
windowrulev2 = float, title:^(Move files)$
windowrulev2 = center, title:^(Move files)$
# transparency
windowrulev2 = opacity 1.0 override 0.9 override, class:^(kitty|foot|floating-foot|VSCodium|Code)$
# 1 terminal
windowrulev2 = workspace 1, class:^(kitty|foot)$
# 2 browser
windowrulev2 = workspace 2, class:^(mullvadbrowser|floorp|firefox*|Pulse Browser|librewolf*|LibreWolf*|org.qutebrowser.qutebrowser|chromium|thorium*|brave*|vivaldi*)
# 3 files
windowrulev2 = workspace 3, class:^(thunar|org.qbittorrent.qBittorrent|org.kde.dolphin|pcmanfm-qt|deluge)$|^(org.gnome.Nautilus)$|^(org.gnome.NautilusDevel)$|^(nemo*)
windowrulev2 = workspace 3, title:^Syncplay*
# 4 code
windowrulev2 = workspace 4, class:^(VSCodium|org.remmina.Remmina|Code)$
# 5 office
windowrulev2 = workspace 4, class:^(Pixelorama)$
# 6 communication
windowrulev2 = workspace 6, class:^(WebCord|discord|org.telegram.desktop|Signal|teams-for-linux)$
# 7 media
windowrulev2 = workspace 7, class:^(mpv)$
# 8 games, gaming
windowrulev2 = workspace 8, class:^(osu\!|org.prismlauncher.PrismLauncher|steam_app_671860|com.usebottles.bottles|moe.launcher.an-anime-game-launcher|genshinimpact.exe|starrail.exe|trackma-*|csgo_linux64)$
# 9 settings
windowrulev2 = workspace 9, class:^(sc-controller|pavucontrol)$
# binds
$mod = SUPER
## mouse
bindm = $mod, mouse:272, movewindow
bindm = $mod, mouse:273, resizewindow
## hyprctl / misc dispatchers
bind = $mod SHIFT, R, exec, hyprctl reload
bind = $mod SHIFT, Q, exit,
bind = $mod, Q, exec, rofi -show power-menu -modi power-menu:rofi-power-menu
bind = $mod, C, killactive,
## screenshot
bind = $mod SHIFT, S, exec, hyprshot -m region
bind = $mod CONTROL SHIFT, S, exec, grim -g "$(slurp)" /tmp/grim.png && tesseract -l eng+fra+jpn+jpn_vert /tmp/grim.png - | wl-copy && wl-paste | xargs -I{} notify-send "Tesseract" "Copied '{}'"
bind = $mod, Print, exec, hyprshot -m window
## apps
bind = $mod, Return, exec, foot
bind = $mod SHIFT, Return, exec, foot -F -o 'font=FiraCode Nerd Font:size=13'
bind = $mod, E, exec, xdg-open .
bind = $mod, Space, togglefloating,
bind = $mod, T, exec, swaync-client --toggle-panel
bind = $mod SHIFT, D, exec, rofi -show drun -theme catppuccin-macchiato
bind = $mod, D, exec, anyrun
bind = $mod, W, exec, rofi -show window -theme catppuccin-macchiato
# bind = ALT_L, Tab, exec, rofi -show window -theme catppuccin-macchiato
# bind = ALT_L, Tab, exec, eww open overview
# bind = ALT_L, Tab, exec, killall -SIGUSR1 sfwbar
bind = $mod, P, pseudo, # dwindle only
# bind = $mod SHIFT, P, exec, hyprctl dispatch dpms off
bind = $mod SHIFT, L, exec, ~/.config/hypr/bsplock
bind = $mod, V, exec, cliphist list | rofi -dmenu | cliphist decode | wl-copy
bind = $mod, N, exec, networkmanager_dmenu
### Scratch pad
bind = $mod CONTROL, Return, exec, foot -a "floating-foot"
## audio
bind = , 123, exec, pactl set-sink-volume @DEFAULT_SINK@ +2%
bind = , 122, exec, pactl set-sink-volume @DEFAULT_SINK@ -2%
bind = , 121, exec, pactl set-sink-mute @DEFAULT_SINK@ toggle
bind = , 171, exec, playerctl next
bind = , 172, exec, playerctl play-pause
bind = , 173, exec, playerctl previous
## pass
bind = , mouse:275, pass, ^(discord|WebCord)$
## window
bind = $mod, U, focusurgentorlast,
bind = $mod CONTROL, Tab, movewindow, mon:+1
bind = $mod, Escape, cyclenext
bind = $mod, S, togglesplit
bind = $mod, F, fullscreen
bind = $mod SHIFT, F, fullscreen, 1
bind = $mod, M, fakefullscreen
bind = $mod, left, movefocus, l
bind = $mod, right, movefocus, r
bind = $mod, up, movefocus, u
bind = $mod, down, movefocus, d
bind = $mod SHIFT, left, movewindow, l
bind = $mod SHIFT, right, movewindow, r
bind = $mod SHIFT, up, movewindow, u
bind = $mod SHIFT, down, movewindow, d
bind = $mod, h, movefocus, l
bind = $mod, l, movefocus, r
bind = $mod, k, movefocus, u
bind = $mod, j, movefocus, d
### master layout
bind = $mod, x, layoutmsg, swapwithmaster
## workspace
bind = $mod, 1, workspace, 1
bind = $mod, 2, workspace, 2
bind = $mod, 3, workspace, 3
bind = $mod, 4, workspace, 4
bind = $mod, 5, workspace, 5
bind = $mod, 6, workspace, 6
bind = $mod, 7, workspace, 7
bind = $mod, 8, workspace, 8
bind = $mod, 9, workspace, 9
bind = $mod, 0, workspace, name:0
bind = $mod, A, togglespecialworkspace
bind = $mod SHIFT, A, movetoworkspace, special
bind = $mod SHIFT, 1, movetoworkspace, 1
bind = $mod SHIFT, 2, movetoworkspace, 2
bind = $mod SHIFT, 3, movetoworkspace, 3
bind = $mod SHIFT, 4, movetoworkspace, 4
bind = $mod SHIFT, 5, movetoworkspace, 5
bind = $mod SHIFT, 6, movetoworkspace, 6
bind = $mod SHIFT, 7, movetoworkspace, 7
bind = $mod SHIFT, 8, movetoworkspace, 8
bind = $mod SHIFT, 9, movetoworkspace, 9
bind = $mod SHIFT, 0, movetoworkspace, name:0
bind = $mod, B, exec, killall -SIGUSR1 waybar
bind = $mod, mouse_down, workspace, e-1
bind = $mod, mouse_up, workspace, e+1
bind = $mod, g, togglegroup
bind = $mod SHIFT, g, moveoutofgroup
bind = $mod, tab, changegroupactive
exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
exec-once = hyprpaper &
exec-once = waybar &
exec-once = swaync &
# exec-once = transmission-daemon
exec-once = fcitx5
exec-once = /usr/lib/kdeconnectd &
exec-once = kdeconnect-indicator &
# exec-once = eww daemon
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 = /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 &
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment