Files
fedora-dotfiles/.config/hypr/hyprland.conf
T
2026-01-17 14:26:04 +01:00

255 lines
8.1 KiB
Plaintext

# Source Colors (von Matugen generiert)
source = ~/.config/hypr/colors.conf
# Monitore
monitor = DP-6, 5120x1440@239.761, 0x1440, 1
monitor = DP-5, 2560x1440@164.958, 1280x0, 1
# Workspaces
workspace = 1, monitor:DP-6, default:true
monitor= , preferred, auto, 1
# Variablen
$mainMod = SUPER
$terminal = alacritty
$filemanager = dolphin
$applauncher = rofi -show drun -no-custom
# Environment
env = XCURSOR_THEME,macOS-White
env = XCURSOR_SIZE,24
exec-once = hyprctl setcursor macOS-White 24
# Input
input {
kb_layout = de
kb_options = caps:escape
follow_mouse = 1
sensitivity = -0.7
touchpad {
natural_scroll = true
tap-to-click = true
clickfinger_behavior = true
}
}
# General
general {
gaps_in = 3
gaps_out = 5
border_size = 3
col.active_border = $primary
col.inactive_border = $surface_variant
layout = dwindle
}
# Decoration
decoration {
rounding = 10
shadow {
enabled = true
range = 15
render_power = 3
color = rgba(0,0,0,0.4)
color_inactive = rgba(0,0,0,0.2)
}
blur {
enabled = true
size = 10
passes = 3
noise = 0.12
contrast = 1.1
brightness = 0.8
new_optimizations = true
ignore_opacity = true
}
}
# Animations
animations {
enabled = true
bezier = overshot, 0.13, 0.99, 0.29, 1.1
bezier = smooth, 0.25, 1, 0.5, 1
bezier = snappy, 0.1, 1, 0.1, 1
animation = windowsIn, 1, 4, overshot, slide
animation = windowsOut, 1, 5, default, popin 80%
animation = border, 1, 5, default
animation = workspacesIn, 1, 6, snappy, slide
animation = workspacesOut, 1, 6, snappy, slidefade 80%
animation = specialWorkspace, 1, 6, snappy, slidevert
}
# Dwindle Layout
dwindle {
pseudotile = true
preserve_split = true
}
# Window Rules
windowrulev2 = opacity 0.9 0.8, class:^(Alacritty)$
windowrulev2 = float, size 800 600, center, class:^(org.pulseaudio.pavucontrol)$
windowrulev2 = float, class:^(waypaper)$
windowrulev2 = size 800 600, class:^(waypaper)$
windowrulev2 = center, class:^(waypaper)$
windowrulev2 = float, class:^(com.github.hluk.copyq)$
windowrulev2 = center, class:^(com.github.hluk.copyq)$
windowrulev2 = size 800 600, class:^(com.github.hluk.copyq)$
windowrulev2 = opacity 0.9 0.9, class:^(com.github.hluk.copyq)$
# Layer Rules
layerrule = blur, rofi
layerrule = ignorealpha 0.1, rofi
layerrule = blur, logout_dialog
layerrule = ignorealpha 0.1, logout_dialog
layerrule = ignorezero, logout_dialog
layerrule = blur, swaync-control-center
layerrule = blur, swaync-notification-window
layerrule = ignorealpha 0.5, swaync-control-center
layerrule = ignorealpha 0.5, swaync-notification-window
# Keybindings
bind = $mainMod, T, exec, $terminal
bind = $mainMod, E, exec, $filemanager
bind = $mainMod, Q, killactive
bind = $mainMod, V, exec, copyq show
bind = $mainMod, D, exec, $applauncher
bind = $mainMod, Tab, exec, rofi -show window
bind = $mainMod, Y, layoutmsg, togglesplit
bind = $mainMod, C, exec, hyprpicker -a
bind = $mainMod, F, fullscreen
bind = $mainMod, Escape, exec, pkill wlogout || wlogout
bind = $mainMod, Z, togglefloating
# Focus Movement
bind = $mainMod, H, movefocus, l
bind = $mainMod, J, movefocus, d
bind = $mainMod, K, movefocus, u
bind = $mainMod, L, movefocus, r
# Window Swapping
bind = $mainMod CTRL, H, swapwindow, l
bind = $mainMod CTRL, J, swapwindow, d
bind = $mainMod CTRL, K, swapwindow, u
bind = $mainMod CTRL, L, swapwindow, r
# Window Movement
bind = $mainMod SHIFT, H, movewindow, l
bind = $mainMod SHIFT, J, movewindow, d
bind = $mainMod SHIFT, K, movewindow, u
bind = $mainMod SHIFT, L, movewindow, r
# Special Workspace
bind = $mainMod, S, togglespecialworkspace, special
bind = $mainMod CTRL, S, movetoworkspace, special
bind = $mainMod SHIFT, S, movetoworkspace, e+0
# Monitor Focus
bind = $mainMod, left, focusmonitor, l
bind = $mainMod, right, focusmonitor, r
bind = $mainMod, up, focusmonitor, u
bind = $mainMod, down, focusmonitor, d
# Move Window to Monitor
bind = $mainMod SHIFT, left, movewindow, l
bind = $mainMod SHIFT, right, movewindow, r
bind = $mainMod SHIFT, up, movewindow, u
bind = $mainMod SHIFT, down, movewindow, d
# Workspaces 1-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 CTRL, 1, movetoworkspace, 1
bind = $mainMod CTRL, 2, movetoworkspace, 2
bind = $mainMod CTRL, 3, movetoworkspace, 3
bind = $mainMod CTRL, 4, movetoworkspace, 4
bind = $mainMod CTRL, 5, movetoworkspace, 5
bind = $mainMod CTRL, 6, movetoworkspace, 6
bind = $mainMod CTRL, 7, movetoworkspace, 7
bind = $mainMod CTRL, 8, movetoworkspace, 8
bind = $mainMod CTRL, 9, movetoworkspace, 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
binde = , XF86AudioRaiseVolume, exec, wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 5%+ && wpctl get-volume @DEFAULT_AUDIO_SINK@ | awk '{print $2*100}' > /tmp/wobpipe
binde = , XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%- && wpctl get-volume @DEFAULT_AUDIO_SINK@ | awk '{print $2*100}' > /tmp/wobpipe
bindl = , XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle && (wpctl get-volume @DEFAULT_AUDIO_SINK@ | grep -q MUTED && echo 0 > /tmp/wobpipe || wpctl get-volume @DEFAULT_AUDIO_SINK@ | awk '{print $2*100}' > /tmp/wobpipe)
bindl = , XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle
# Helligkeit (benötigt brightnessctl)
binde = , XF86MonBrightnessUp, exec, brightnessctl set 5%+ | sed -En 's/.*\(([0-9]+)%\).*/\1/p' > /tmp/wobpipe
binde = , XF86MonBrightnessDown, exec, brightnessctl set 5%- | sed -En 's/.*\(([0-9]+)%\).*/\1/p' > /tmp/wobpipe
# Mediensteuerung (Playerctl)
bindl = , XF86AudioPlay, exec, playerctl play-pause
bindl = , XF86AudioNext, exec, playerctl next
bindl = , XF86AudioPrev, exec, playerctl previous
# Mouse Binding
bindm = $mainMod, mouse:272, movewindow
bindm = $mainMod, mouse:273, resizewindow
# Screenshots
bind = , Print, exec, bash -c 'mkdir -p ~/Pictures/Screenshots && FILE=~/Pictures/Screenshots/Screenshot_$(date +%Y%m%d_%H%M%S).png && grim -g "$(slurp)" $FILE && wl-copy < $FILE'
bind = SHIFT, Print, exec, bash -c 'mkdir -p ~/Pictures/Screenshots && FILE=~/Pictures/Screenshots/Fullscreen_$(date +%Y%m%d_%H%M%S).png && grim $FILE && wl-copy < $FILE'
# Submap Resize
bind = $mainMod, R, submap, resize
submap = resize
binde = , l, resizeactive, 30 0
binde = , h, resizeactive, -30 0
binde = , j, resizeactive, 0 30
binde = , k, resizeactive, 0 -30
binde = SHIFT, l, resizeactive, -30 0
binde = SHIFT, h, resizeactive, 30 0
binde = SHIFT, j, resizeactive, 0 -30
binde = SHIFT, k, resizeactive, 0 30
binde = , plus, resizeactive, 20 20
binde = , minus, resizeactive, -20 -20
binde = SHIFT, plus, resizeactive, 0 20
binde = SHIFT, minus, resizeactive, 0 -20
bind = , escape, submap, reset
bind = , catchall, submap, reset
submap = reset
# Autostart
exec-once = sway-audio-idle-inhibit
exec-once = hyprctl dispatch focusmonitor DP-6
exec-once = waybar
exec-once = swaync
exec-once = pgrep copyq || copyq --start-server && copyq hide
exec-once = nextcloud --background
exec-once = /usr/libexec/kf6/polkit-kde-authentication-agent-1
exec-once = dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP=Hyprland
exec-once = /usr/libexec/pam_kwallet_init
exec-once = waypaper --restore
exec-once = hypridle
exec-once = swww-daemon
exec-once = rm -f /tmp/wobpipe && mkfifo /tmp/wobpipe && tail -f /tmp/wobpipe | wob
# Tablets
device {
name = wacom-intuos-pro-m-pen
output = DP-6
active_area_size = 224 63
active_area_position = 0 38.5
transform = 0
}