312 lines
7.6 KiB
Plaintext
312 lines
7.6 KiB
Plaintext
|
|
autogenerated = 0
|
||
|
|
|
||
|
|
# 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 ###
|
||
|
|
################
|
||
|
|
|
||
|
|
monitor=DP-2, 1920x1080@60, 0x0, 1
|
||
|
|
monitor=DP-3, 1920x1080@60, 1920x0, 1
|
||
|
|
|
||
|
|
###################
|
||
|
|
### MY PROGRAMS ###
|
||
|
|
###################
|
||
|
|
$terminal = alacritty
|
||
|
|
$fileManager = thunar
|
||
|
|
$menu = pkill wofi || wofi --show drun -i -I --term=alacritty
|
||
|
|
|
||
|
|
|
||
|
|
#################
|
||
|
|
### AUTOSTART ###
|
||
|
|
#################
|
||
|
|
|
||
|
|
exec-once = swaync &
|
||
|
|
exec-once = waybar & hyprpaper
|
||
|
|
exec-once = copyq --start-server
|
||
|
|
exec-once = discord --start-minimized
|
||
|
|
exec-once = steam -silent
|
||
|
|
|
||
|
|
exec-once = thunar --daemon
|
||
|
|
#exec-once = hyprpm reload -n
|
||
|
|
|
||
|
|
#############################
|
||
|
|
### ENVIRONMENT VARIABLES ###
|
||
|
|
#############################
|
||
|
|
|
||
|
|
env = XCURSOR_SIZE,24
|
||
|
|
env = HYPRCURSOR_SIZE,24
|
||
|
|
env = TERMINAL,alacritty
|
||
|
|
|
||
|
|
###################
|
||
|
|
### PERMISSIONS ###
|
||
|
|
###################
|
||
|
|
|
||
|
|
ecosystem {
|
||
|
|
enforce_permissions = 1
|
||
|
|
}
|
||
|
|
|
||
|
|
permission = /usr/(bin|local/bin)/grim, screencopy, allow
|
||
|
|
permission = /usr/(lib|libexec|lib64)/xdg-desktop-portal-hyprland, screencopy, allow
|
||
|
|
permission = ${lib.escapeRegex (lib.getExe config.programs.hyprlock.package)}, screencopy, allow
|
||
|
|
permission = /usr/(bin|local/bin)/hyprpm, plugin, allow
|
||
|
|
|
||
|
|
|
||
|
|
#####################
|
||
|
|
### LOOK AND FEEL ###
|
||
|
|
#####################
|
||
|
|
|
||
|
|
general {
|
||
|
|
gaps_in = 4
|
||
|
|
gaps_out = 4
|
||
|
|
|
||
|
|
border_size = 1
|
||
|
|
|
||
|
|
col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg
|
||
|
|
col.inactive_border = rgba(595959aa)
|
||
|
|
|
||
|
|
resize_on_border = false
|
||
|
|
|
||
|
|
allow_tearing = false
|
||
|
|
|
||
|
|
layout = dwindle
|
||
|
|
}
|
||
|
|
|
||
|
|
decoration {
|
||
|
|
rounding = 0
|
||
|
|
rounding_power = 2
|
||
|
|
|
||
|
|
active_opacity = 1.0
|
||
|
|
inactive_opacity = 1.0
|
||
|
|
|
||
|
|
shadow {
|
||
|
|
enabled = true
|
||
|
|
range = 4
|
||
|
|
render_power = 3
|
||
|
|
color = rgba(1a1a1aee)
|
||
|
|
}
|
||
|
|
|
||
|
|
blur {
|
||
|
|
enabled = true
|
||
|
|
size = 3
|
||
|
|
passes = 1
|
||
|
|
|
||
|
|
vibrancy = 0.1696
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
animations {
|
||
|
|
enabled = no
|
||
|
|
}
|
||
|
|
|
||
|
|
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
|
||
|
|
}
|
||
|
|
|
||
|
|
master {
|
||
|
|
new_status = master
|
||
|
|
}
|
||
|
|
|
||
|
|
misc {
|
||
|
|
force_default_wallpaper = 0
|
||
|
|
disable_hyprland_logo = true
|
||
|
|
}
|
||
|
|
|
||
|
|
#############
|
||
|
|
### INPUT ###
|
||
|
|
#############
|
||
|
|
|
||
|
|
input {
|
||
|
|
kb_layout = us, cz
|
||
|
|
kb_variant =
|
||
|
|
kb_model =
|
||
|
|
kb_options = grp:win_space_toggle
|
||
|
|
kb_rules =
|
||
|
|
|
||
|
|
follow_mouse = 1
|
||
|
|
|
||
|
|
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
|
||
|
|
|
||
|
|
touchpad {
|
||
|
|
natural_scroll = false
|
||
|
|
}
|
||
|
|
}
|
||
|
|
|
||
|
|
gesture = 3, horizontal, workspace
|
||
|
|
|
||
|
|
###################
|
||
|
|
### KEYBINDINGS ###
|
||
|
|
###################
|
||
|
|
|
||
|
|
$mainMod = SUPER # Sets "Windows" key as main modifier
|
||
|
|
|
||
|
|
#Opens terminal (allacrity)
|
||
|
|
bind = $mainMod, RETURN, exec, $terminal
|
||
|
|
#Kills active window
|
||
|
|
bind = $mainMod, Q, killactive,
|
||
|
|
#Exits hyprland
|
||
|
|
bind = $mainMod SHIFT, E, exec, pkill wofi || ~/.scripts/power.sh
|
||
|
|
#Opens file manager (Thunar)
|
||
|
|
bind = $mainMod, N, exec, $fileManager
|
||
|
|
#Togle floating mode
|
||
|
|
bind = $mainMod, G, togglefloating,
|
||
|
|
#Opens app picker
|
||
|
|
bind = $mainMod, P, exec, $menu
|
||
|
|
#Shows help menu
|
||
|
|
bind = $mainMod, H, exec, pkill wofi || ~/.scripts/hypr-help.sh
|
||
|
|
#Changes wallpaper
|
||
|
|
bind = $mainMod, U, exec, pkill wofi || ~/.scripts/wallpaper-picker.sh
|
||
|
|
#Toggles split
|
||
|
|
bind = $mainMod, J, togglesplit, # dwindle
|
||
|
|
#Toggles pseudo
|
||
|
|
bind = $mainMod, K, pseudo, # dwindle
|
||
|
|
#Toggle fullscreen
|
||
|
|
bind = $mainMod, F, fullscreen
|
||
|
|
#Reloads waybar
|
||
|
|
bind = $mainMod, R, exec, ~/.scripts/reload_waybar.sh
|
||
|
|
#Takes screenshot
|
||
|
|
bind = , Print, exec, ~/.scripts/screenshot.sh
|
||
|
|
#Opens emoji picker
|
||
|
|
bind = $mainMod, I, exec, pkill wofi || rofimoji
|
||
|
|
#Opens copypasta picker
|
||
|
|
bind = $mainMod, O, exec, pkill wofi || ~/.scripts/copy_pasta.sh
|
||
|
|
#Lock screen
|
||
|
|
bind = $mainMod, L, exec, hyprlock
|
||
|
|
|
||
|
|
# Move focus with mainMod + arrow keys
|
||
|
|
#Moves focus left
|
||
|
|
bind = $mainMod, left, movefocus, l
|
||
|
|
#Moves focus right
|
||
|
|
bind = $mainMod, right, movefocus, r
|
||
|
|
#Moves focus up
|
||
|
|
bind = $mainMod, up, movefocus, u
|
||
|
|
#Moves focus down
|
||
|
|
bind = $mainMod, down, movefocus, d
|
||
|
|
|
||
|
|
# Switch workspaces with mainMod + [0-9]
|
||
|
|
#Toggles to workspace 1 (Left Monitor)
|
||
|
|
bind = $mainMod, 1, workspace, 1
|
||
|
|
#Toggles to workspace 2 (Left Monitor)
|
||
|
|
bind = $mainMod, 2, workspace, 2
|
||
|
|
#Toggles to workspace 3 (Left Monitor)
|
||
|
|
bind = $mainMod, 3, workspace, 3
|
||
|
|
#Toggles to workspace 4 (Left Monitor)
|
||
|
|
bind = $mainMod, 4, workspace, 4
|
||
|
|
#Toggles to workspace 5 (Left Monitor)
|
||
|
|
bind = $mainMod, 5, workspace, 5
|
||
|
|
#Toggles to workspace 6 (Right Monitor)
|
||
|
|
bind = $mainMod, 6, workspace, 6
|
||
|
|
#Toggles to workspace 7 (Right Monitor)
|
||
|
|
bind = $mainMod, 7, workspace, 7
|
||
|
|
#Toggles to workspace 8 (Right Monitor)
|
||
|
|
bind = $mainMod, 8, workspace, 8
|
||
|
|
#Toggles to workspace 9 (Right Monitor)
|
||
|
|
bind = $mainMod, 9, workspace, 9
|
||
|
|
#Toggles to workspace 10 (Right Monitor)
|
||
|
|
bind = $mainMod, 0, workspace, 10
|
||
|
|
|
||
|
|
# Move active window to a workspace with mainMod + SHIFT + [0-9]
|
||
|
|
#Moves focused window to workspace 1 (Left Monitor)
|
||
|
|
bind = $mainMod SHIFT, 1, movetoworkspace, 1
|
||
|
|
#Moves focused window to workspace 2 (Left Monitor)
|
||
|
|
bind = $mainMod SHIFT, 2, movetoworkspace, 2
|
||
|
|
#Moves focused window to workspace 3 (Left Monitor)
|
||
|
|
bind = $mainMod SHIFT, 3, movetoworkspace, 3
|
||
|
|
#Moves focused window to workspace 4 (Left Monitor)
|
||
|
|
bind = $mainMod SHIFT, 4, movetoworkspace, 4
|
||
|
|
#Moves focused window to workspace 5 (Left Monitor)
|
||
|
|
bind = $mainMod SHIFT, 5, movetoworkspace, 5
|
||
|
|
#Moves focused window to workspace 6 (Right Monitor)
|
||
|
|
bind = $mainMod SHIFT, 6, movetoworkspace, 6
|
||
|
|
#Moves focused window to workspace 7 (Right Monitor)
|
||
|
|
bind = $mainMod SHIFT, 7, movetoworkspace, 7
|
||
|
|
#Moves focused window to workspace 8 (Right Monitor)
|
||
|
|
bind = $mainMod SHIFT, 8, movetoworkspace, 8
|
||
|
|
#Moves focused window to workspace 9 (Right Monitor)
|
||
|
|
bind = $mainMod SHIFT, 9, movetoworkspace, 9
|
||
|
|
#Moves focused window to workspace 10 (Right Monitor)
|
||
|
|
bind = $mainMod SHIFT, 0, movetoworkspace, 10
|
||
|
|
|
||
|
|
# Example special workspace (scratchpad)
|
||
|
|
#Togles to special front window workspace
|
||
|
|
bind = $mainMod, S, togglespecialworkspace, magic
|
||
|
|
#MOves focused window to special front focused mode
|
||
|
|
bind = $mainMod SHIFT, S, movetoworkspace, special:magic
|
||
|
|
|
||
|
|
# Scroll through existing workspaces with mainMod + scroll
|
||
|
|
#Scrolls trough workspaces with mouse (down)
|
||
|
|
bind = $mainMod, mouse_down, workspace, e+1
|
||
|
|
#Scrolls trough workspaces with up (down)
|
||
|
|
bind = $mainMod, mouse_up, workspace, e-1
|
||
|
|
|
||
|
|
# Move/resize windows with mainMod + LMB/RMB and dragging
|
||
|
|
#Drags window
|
||
|
|
bindm = $mainMod, mouse:272, movewindow
|
||
|
|
#Resizes window
|
||
|
|
bindm = $mainMod, mouse:273, resizewindow
|
||
|
|
|
||
|
|
# Requires playerctl
|
||
|
|
bindl = , XF86AudioNext, exec, playerctl next
|
||
|
|
bindl = , XF86AudioPause, exec, playerctl play-pause
|
||
|
|
bindl = , XF86AudioPlay, exec, playerctl play-pause
|
||
|
|
bindl = , XF86AudioPrev, exec, playerctl previous
|
||
|
|
|
||
|
|
##############################
|
||
|
|
### WINDOWS AND WORKSPACES ###
|
||
|
|
##############################
|
||
|
|
|
||
|
|
# Ignore maximize requests from apps. You'll probably like this.
|
||
|
|
windowrule {
|
||
|
|
name = windowrule-1
|
||
|
|
suppress_event = maximize
|
||
|
|
match:class = .*
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
# Fix some dragging issues with XWayland
|
||
|
|
windowrule {
|
||
|
|
name = windowrule-2
|
||
|
|
no_focus = on
|
||
|
|
match:class = ^$
|
||
|
|
match:title = ^$
|
||
|
|
match:xwayland = 1
|
||
|
|
match:float = 1
|
||
|
|
match:fullscreen = 0
|
||
|
|
match:pin = 0
|
||
|
|
}
|
||
|
|
|
||
|
|
|
||
|
|
#Rules for specific windows
|
||
|
|
windowrule {
|
||
|
|
name = windowrule-3
|
||
|
|
float = on
|
||
|
|
match:class = com.github.hluk.copyq
|
||
|
|
}
|
||
|
|
|
||
|
|
windowrule {
|
||
|
|
name = windowrule-4
|
||
|
|
float = on
|
||
|
|
match:class = org.pulseaudio.pavucontrol
|
||
|
|
}
|
||
|
|
|
||
|
|
######## WORKSPACE BIND ########
|
||
|
|
# Workspaces 1-5 on DP-2
|
||
|
|
workspace=1,monitor:DP-2
|
||
|
|
workspace=2,monitor:DP-2
|
||
|
|
workspace=3,monitor:DP-2
|
||
|
|
workspace=4,monitor:DP-2
|
||
|
|
workspace=5,monitor:DP-2
|
||
|
|
|
||
|
|
# Workspaces 6-10 on DP-3
|
||
|
|
workspace=6,monitor:DP-3
|
||
|
|
workspace=7,monitor:DP-3
|
||
|
|
workspace=8,monitor:DP-3
|
||
|
|
workspace=9,monitor:DP-3
|
||
|
|
workspace=10,monitor:DP-3
|
||
|
|
|
||
|
|
# Runs portal
|
||
|
|
exec-once=dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
|