This commit is contained in:
nub31
2025-05-07 19:20:06 +02:00
commit 7e1bfbfb2b
22 changed files with 1019 additions and 0 deletions

View File

@@ -0,0 +1,3 @@
exec-once = nm-applet &
exec-once = waybar &
exec-once = hyprpm reload -n

View File

@@ -0,0 +1,70 @@
# https://wiki.hyprland.org/Configuring/Binds/
$terminal = alacritty
$fileManager = dolphin
$menu = rofi -show drun -config "$HOME/.config/rofi/config.rasi"
$browser = librewolf
$code = code
$lock = hyprlock
$mainMod = SUPER
# Programs
bind = $mainMod, E, exec, $fileManager
bind = $mainMod, R, exec, $menu
bind = $mainMod, B, exec, $browser
bind = $mainMod, L, exec, $lock
bind = $mainMod, C, exec, $code
bind = $mainMod, RETURN, exec, $terminal
# Window control
bind = $mainMod, Q, killactive,
bind = $mainMod SHIFT, E, exit,
bind = $mainMod, W, togglefloating,
bind = $mainMod, F, fullscreen,
# Move focus with mainMod + arrow keys
bind = $mainMod, left, movefocus, l
bind = $mainMod, right, movefocus, r
bind = $mainMod, up, movefocus, u
bind = $mainMod, down, movefocus, d
# Independent workspaces per monitor
bind = $mainMod, 1, exec, hyprctl dispatch workspace $((`hyprctl monitors -j | jq -r ".[] | select(.focused==true).id"`))'01'
bind = $mainMod, 2, exec, hyprctl dispatch workspace $((`hyprctl monitors -j | jq -r ".[] | select(.focused==true).id"`))'02'
bind = $mainMod, 3, exec, hyprctl dispatch workspace $((`hyprctl monitors -j | jq -r ".[] | select(.focused==true).id"`))'03'
bind = $mainMod, 4, exec, hyprctl dispatch workspace $((`hyprctl monitors -j | jq -r ".[] | select(.focused==true).id"`))'04'
bind = $mainMod, 5, exec, hyprctl dispatch workspace $((`hyprctl monitors -j | jq -r ".[] | select(.focused==true).id"`))'05'
bind = $mainMod, 6, exec, hyprctl dispatch workspace $((`hyprctl monitors -j | jq -r ".[] | select(.focused==true).id"`))'06'
bind = $mainMod, 7, exec, hyprctl dispatch workspace $((`hyprctl monitors -j | jq -r ".[] | select(.focused==true).id"`))'07'
bind = $mainMod, 8, exec, hyprctl dispatch workspace $((`hyprctl monitors -j | jq -r ".[] | select(.focused==true).id"`))'08'
bind = $mainMod, 9, exec, hyprctl dispatch workspace $((`hyprctl monitors -j | jq -r ".[] | select(.focused==true).id"`))'09'
# Move apps between workspacer per monitor
bind = $mainMod SHIFT, 1, exec, hyprctl dispatch movetoworkspace $((`hyprctl monitors -j | jq -r ".[] | select(.focused==true).id"`))'01'
bind = $mainMod SHIFT, 2, exec, hyprctl dispatch movetoworkspace $((`hyprctl monitors -j | jq -r ".[] | select(.focused==true).id"`))'02'
bind = $mainMod SHIFT, 3, exec, hyprctl dispatch movetoworkspace $((`hyprctl monitors -j | jq -r ".[] | select(.focused==true).id"`))'03'
bind = $mainMod SHIFT, 4, exec, hyprctl dispatch movetoworkspace $((`hyprctl monitors -j | jq -r ".[] | select(.focused==true).id"`))'04'
bind = $mainMod SHIFT, 5, exec, hyprctl dispatch movetoworkspace $((`hyprctl monitors -j | jq -r ".[] | select(.focused==true).id"`))'05'
bind = $mainMod SHIFT, 6, exec, hyprctl dispatch movetoworkspace $((`hyprctl monitors -j | jq -r ".[] | select(.focused==true).id"`))'06'
bind = $mainMod SHIFT, 7, exec, hyprctl dispatch movetoworkspace $((`hyprctl monitors -j | jq -r ".[] | select(.focused==true).id"`))'07'
bind = $mainMod SHIFT, 8, exec, hyprctl dispatch movetoworkspace $((`hyprctl monitors -j | jq -r ".[] | select(.focused==true).id"`))'08'
bind = $mainMod SHIFT, 9, exec, hyprctl dispatch movetoworkspace $((`hyprctl monitors -j | jq -r ".[] | select(.focused==true).id"`))'09'
# Move/resize windows with mainMod + LMB/RMB and dragging
bindm = $mainMod, mouse:272, movewindow
bindm = $mainMod, mouse:273, resizewindow
# Laptop multimedia keys for volume and LCD brightness
bindel = ,XF86AudioRaiseVolume, exec, wpctl set-volume -l 1 @DEFAULT_AUDIO_SINK@ 5%+
bindel = ,XF86AudioLowerVolume, exec, wpctl set-volume @DEFAULT_AUDIO_SINK@ 5%-
bindel = ,XF86AudioMute, exec, wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle
bindel = ,XF86AudioMicMute, exec, wpctl set-mute @DEFAULT_AUDIO_SOURCE@ toggle
bindel = ,XF86MonBrightnessUp, exec, brightnessctl s 10%+
bindel = ,XF86MonBrightnessDown, exec, brightnessctl s 10%-
# Requires playerctl
bindl = , XF86AudioNext, exec, playerctl next
bindl = , XF86AudioPause, exec, playerctl play-pause
bindl = , XF86AudioPlay, exec, playerctl play-pause
bindl = , XF86AudioPrev, exec, playerctl previous

4
.config/hypr/env.conf Normal file
View File

@@ -0,0 +1,4 @@
# https://wiki.hyprland.org/Configuring/Environment-variables
env = XCURSOR_SIZE,24
env = HYPRCURSOR_SIZE,24

View File

@@ -0,0 +1,97 @@
# https://wiki.hyprland.org/Configuring/
source = autostart.conf
source = bindings.conf
source = env.conf
source = input.conf
source = monitors.conf
source = rules.conf
source = workspaces.conf
general {
# https://wiki.hyprland.org/Configuring/Variables/#general
gaps_in = 5
gaps_out = 10
border_size = 2
# https://wiki.hyprland.org/Configuring/Variables/#variable-types for info about colors
col.active_border = rgba(33ccffee) rgba(00ff99ee) 45deg
col.inactive_border = rgba(595959aa)
# https://wiki.hyprland.org/Configuring/Tearing
allow_tearing = true
layout = dwindle
}
decoration {
# https://wiki.hyprland.org/Configuring/Variables/#decoration
rounding = 10
rounding_power = 2
active_opacity = 1.0
inactive_opacity = 1.0
# https://wiki.hyprland.org/Configuring/Variables/#shadow
shadow {
enabled = true
range = 4
render_power = 3
color = rgba(1a1a1aee)
}
# https://wiki.hyprland.org/Configuring/Variables/#blur
blur {
enabled = true
size = 3
passes = 1
vibrancy = 0.1696
}
}
animations {
# https://wiki.hyprland.org/Configuring/Variables/#animations
enabled = no, please :)
# https://wiki.hyprland.org/Configuring/Animations
bezier = easeOutQuint,0.23,1,0.32,1
bezier = easeInOutCubic,0.65,0.05,0.36,1
bezier = linear,0,0,1,1
bezier = almostLinear,0.5,0.5,0.75,1.0
bezier = quick,0.15,0,0.1,1
animation = global, 1, 10, default
animation = border, 1, 5.39, easeOutQuint
animation = windows, 1, 4.79, easeOutQuint
animation = windowsIn, 1, 4.1, easeOutQuint, popin 87%
animation = windowsOut, 1, 1.49, linear, popin 87%
animation = fadeIn, 1, 1.73, almostLinear
animation = fadeOut, 1, 1.46, almostLinear
animation = fade, 1, 3.03, quick
animation = layers, 1, 3.81, easeOutQuint
animation = layersIn, 1, 4, easeOutQuint, fade
animation = layersOut, 1, 1.5, linear, fade
animation = fadeLayersIn, 1, 1.79, almostLinear
animation = fadeLayersOut, 1, 1.39, almostLinear
animation = workspaces, 1, 1.94, almostLinear, fade
animation = workspacesIn, 1, 1.21, almostLinear, fade
animation = workspacesOut, 1, 1.94, almostLinear, fade
}
# https://wiki.hyprland.org/Configuring/Dwindle-Layout
dwindle {
pseudotile = true
preserve_split = true
}
# https://wiki.hyprland.org/Configuring/Master-Layout
master {
new_status = master
}
# https://wiki.hyprland.org/Configuring/Variables/#misc
misc {
force_default_wallpaper = 2 # Set to 0 or 1 to disable the anime mascot wallpapers
disable_hyprland_logo = false # If true disables the random hyprland logo / anime girl background. :(
}

View File

@@ -0,0 +1,12 @@
# sample hyprlock.conf
# for more configuration options, refer https://wiki.hyprland.org/Hypr-Ecosystem/hyprlock
input-field {
monitor = DP-3
fade_on_empty = false
}
background {
color = #313244;
}

18
.config/hypr/input.conf Normal file
View File

@@ -0,0 +1,18 @@
# https://wiki.hyprland.org/Configuring/Variables/#input
input {
kb_layout = us
kb_variant =
kb_model =
kb_options =
kb_rules =
follow_mouse = 1
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
accel_profile = flat
touchpad {
natural_scroll = false
}
}

View File

@@ -0,0 +1,6 @@
# Generated by nwg-displays on 2025-04-02 at 12:49:35. Do not edit manually.
monitor=DP-1,3440x1440@165.0,3440x1080,1.0
monitor=DP-3,1920x1080@144.0,4960x0,1.0
monitor=HDMI-A-1,1920x1080@119.98,6880x360,1.0
monitor=HDMI-A-2,1920x1080@74.99,6880x1440,1.0

14
.config/hypr/rules.conf Normal file
View File

@@ -0,0 +1,14 @@
# https://wiki.hyprland.org/Configuring/Window-Rules
# https://wiki.hyprland.org/Configuring/Workspace-Rules
windowrulev2 = suppressevent maximize, class:.*
windowrulev2 = nofocus,class:^$,title:^$,xwayland:1,floating:1,fullscreen:0,pinned:0
# Fix odd behaviors in IntelliJ IDEs
windowrulev2 = center,class:^(jetbrains-.*)$,title:^(splash)$,floating:1
windowrulev2 = nofocus,class:^(jetbrains-.*)$,title:^(splash)$,floating:1
windowrulev2 = noborder,class:^(jetbrains-.*)$,title:^(splash)$,floating:1
windowrulev2 = center,class:^(jetbrains-.*)$,title:^( )$,floating:1
windowrulev2 = stayfocused,class:^(jetbrains-.*)$,title:^( )$,floating:1
windowrulev2 = noborder,class:^(jetbrains-.*)$,title:^( )$,floating:1
windowrulev2 = nofocus,class:^(jetbrains-.*)$,title:^(win.*)$,floating:1

View File

@@ -0,0 +1,11 @@
workspace = 001, monitor:DP-1, default:true
workspace = 002, monitor:DP-1
workspace = 003, monitor:DP-1
workspace = 101, monitor:DP-3, default:true
workspace = 102, monitor:DP-3
workspace = 103, monitor:DP-3
workspace = 201, monitor:HDMI-A-1, default:true
workspace = 202, monitor:HDMI-A-1
workspace = 203, monitor:HDMI-A-1