summaryrefslogtreecommitdiff
path: root/hypr
diff options
context:
space:
mode:
Diffstat (limited to 'hypr')
-rw-r--r--hypr/hypridle.conf37
-rw-r--r--hypr/hyprland.conf241
-rw-r--r--hypr/hyprlock.conf10
3 files changed, 186 insertions, 102 deletions
diff --git a/hypr/hypridle.conf b/hypr/hypridle.conf
index 9b6ea02..4d18296 100644
--- a/hypr/hypridle.conf
+++ b/hypr/hypridle.conf
@@ -1,13 +1,34 @@
general {
- lock_cmd = hyprlock # dbus/sysd lock command (loginctl lock-session)
- unlock_cmd = # same as above, but unlock
- before_sleep_cmd = swaylock # command ran before sleep
- after_sleep_cmd = # command ran after sleep
- ignore_dbus_inhibit = false # whether to ignore dbus-sent idle-inhibit requests (used by e.g. firefox or steam)
+ lock_cmd = pidof hyprlock || hyprlock # avoid starting multiple hyprlock instances.
+ before_sleep_cmd = loginctl lock-session # lock before suspend.
+ after_sleep_cmd = hyprctl dispatch dpms on # to avoid having to press a key twice to turn on the display.
}
listener {
- timeout = 600 # in seconds
- on-timeout = loginctl lock-session # command to run when timeout has passed
- on-resume = # command to run when activity is detected after timeout has fired.
+ timeout = 150 # 2.5min.
+ on-timeout = brightnessctl set 0 # set monitor backlight to minimum, avoid 0 on OLED monitor.
+ on-resume = brightnessctl -r # monitor backlight restore.
+}
+
+# turn off keyboard backlight, comment out this section if you dont have a keyboard backlight.
+listener {
+ timeout = 150 # 2.5min.
+ on-timeout = brightnessctl -sd led::kbd_backlight set 0 # turn off keyboard backlight.
+ on-resume = brightnessctl -rd led::kbd_backlight # turn on keyboard backlight.
+}
+
+listener {
+ timeout = 300 # 5min
+ on-timeout = loginctl lock-session # lock screen when timeout has passed
+}
+
+listener {
+ timeout = 330 # 5.5min
+ on-timeout = hyprctl dispatch dpms off # screen off when timeout has passed
+ on-resume = hyprctl dispatch dpms on # screen on when activity is detected after timeout has fired.
+}
+
+listener {
+ timeout = 1800 # 30min
+ on-timeout = systemctl suspend # suspend pc
}
diff --git a/hypr/hyprland.conf b/hypr/hyprland.conf
index 4824e6f..b9eba3a 100644
--- a/hypr/hyprland.conf
+++ b/hypr/hyprland.conf
@@ -1,8 +1,8 @@
# See https://wiki.hyprland.org/Configuring/Monitors/
#{{{ Monitor config
-monitor = , preferred, auto, 1
+monitor = DP-2, 1920x1080@75, 0x0, 1
monitor = HDMI-A-1, 1920x1080@75, 1920x0, 1
-monitor = DP-1, 1920x1080@60, 0x0, 1
+monitor = , preferred, auto, 1
#}}}
# See https://wiki.hyprland.org/Configuring/Keywords/ for more
@@ -13,24 +13,25 @@ monitor = DP-1, 1920x1080@60, 0x0, 1
exec-once = xdph
exec-once = hyprpm reload -n
exec-once = hyprpaper
-exec-once = hypridle
+#exec-once = hypridle
exec-once = waybar
exec-once = pypr
exec-once = lxqt-policykit-agent
-exec-once = systemctl --user start dunst
exec-once = import-gsettings gtk-theme 'Flat-Remix-GTK-Green-Darkest-Solid'
-exec-once = import-gsettings icon-theme 'Mint-X-Grey'
-exec-once = import-gsettings cursor-theme 'Breeze'
+exec-once = import-gsettings icon-theme 'COSMIC'
+exec-once = import-gsettings cursor-theme 'BreezeX-Black'
exec-once = xrdb -load "$XDG_CONFIG_HOME"/X11/xresources
exec-once = com.github.wwmm.easyeffects
-exec-once = mpd
-exec-once = systemctl --user import-environment DISPLAY
-exec-once = systemctl --user import-environment WAYLAND_DISPLAY
+#exec-once = systemctl --user start dunst
+#exec-once = systemctl --user start hypridle
+exec-once = dunst
+exec-once = hypridle
+#exec-once = mpd
#}}}
#{{{ env
# Environment variables set at launch
-env = HYPRCURSOR_THEME,BreezeHypr
+env = HYPRCURSOR_THEME,theme_BreezeX-Black
env = HYPRCURSOR_SIZE,32
env = XCURSOR_THEME,BreezeX-Black
env = XCURSOR_SIZE,32
@@ -41,8 +42,17 @@ env = XCURSOR_SIZE,32
# Debug {{{
debug {
- enable_stdout_logs = true
- disable_logs = false
+ enable_stdout_logs = false
+ disable_logs = true
+ full_cm_proto = true
+}
+# }}}
+
+# device {{{
+$LAPTOP_TP_ENABLED = true
+device {
+ name = synps/2-synaptics-touchpad
+ enabled = $LAPTOP_TP_ENABLED
}
# }}}
@@ -59,7 +69,13 @@ input {
follow_mouse = 1
mouse_refocus = false
touchpad {
- natural_scroll = no
+ disable_while_typing = true
+ natural_scroll = false
+ tap_button_map = "lrm"
+ clickfinger_behavior = true
+ tap-to-click = true
+ drag_lock = false
+ tap-and-drag = true
}
float_switch_override_focus = 0
sensitivity = 0 # -1.0 - 1.0, 0 means no modification.
@@ -77,7 +93,12 @@ general {
col.active_border = rgba(198844ee)
col.inactive_border = rgba(1b1d1cee)
layout = master
- no_cursor_warps = false
+}
+#}}}
+
+#{{{ cursor
+cursor {
+ no_warps = false
}
#}}}
@@ -87,9 +108,9 @@ misc {
disable_splash_rendering = true
enable_swallow = true
swallow_regex = ^(kitty)$
- swallow_exception_regex = ^(.*)(ueberzug)$
+ swallow_exception_regex = ^(wev|.*ueberzug|n?vi?m? .*)$
vfr = true
- vrr = 1
+ vrr = 3
}
#}}}
@@ -97,17 +118,21 @@ misc {
decoration {
# See https://wiki.hyprland.org/Configuring/Variables/ for more
rounding = 10
- drop_shadow = yes
- shadow_range = 4
- shadow_render_power = 3
- col.shadow = rgba(1a1a1aee)
#{{{ Blur options
blur {
enabled = true
size = 3
passes = 1
new_optimizations = true
- xray = true
+ xray = false
+ }
+ #}}}
+ #{{{ Shadow options
+ shadow {
+ enabled = false
+ range = 4
+ render_power = 3
+ color = 0xee1a1a1a
}
#}}}
}
@@ -142,11 +167,13 @@ master {
special_scale_factor = 0.55
mfact = 0.55
# See https://wiki.hyprland.org/Configuring/Master-Layout/ for more
- new_is_master = false
- new_on_top = true
- no_gaps_when_only = false
+ new_status = slave
+ new_on_top = false
+ new_on_active = before
+ #no_gaps_when_only = false
orientation = left
inherit_fullscreen = true
+ drop_at_cursor = true
}
#}}}
@@ -161,6 +188,7 @@ gestures {
plugin {
hyprsplit {
num_workspaces = 9
+ persistent_workspaces = true
}
}
#}}}
@@ -169,22 +197,16 @@ plugin {
# Example windowrule v1
# windowrule = float, ^(kitty)$
# Example windowrule v2
-# windowrulev2 = float, class:^(kitty)$, title:^(kitty)$
+# windowrule = float, class:^(kitty)$, title:^(kitty)$
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
-windowrule = windowdance, ^(oneshot)$
-windowrule = windowdance, title:^(UNDERTALE)$
-windowrule = fullscreen, ^(Xephyr)$
-windowrule = float, title:^(LibreWolf - Choose User Profile)$
-windowrule = float, ^(xdg-desktop-portal-gtk)
-windowrule = float, title:^(UNDERTALE)$
-windowrule = float, ^(Tk)$
-windowrule = float, ^(lxqt-policykit-agent)$
-windowrulev2 = stayfocused, title:^()$, class:^(steam)$
-windowrulev2 = minsize 1 1, title:^()$, class:^(steam)$
-windowrulev2 = tile, class:^(REAPER)$, title:^(.*REAPER v[0-9.]* - Licensed for personal/small business use)$
-windowrule = tile, ^(WebApp-Qobuz[0-9]*)$
-windowrulev2 = float, title:^(menu)$
-#windowrulev2 = forceinput, title:^(menu)$
+windowrulev2 = float, class:^(lxqt-policykit-agent)$
+windowrulev2 = tile, class:^(REAPER)$, title:^(REAPER v[0-9.]* - Registered to [A-Za-z ]* \(Licensed for personal/small business use\))$
+windowrulev2 = tile, class:^(REAPER)$, title:^(reaper)$
+windowrulev2 = tile, class:^(REAPER)$, title:^(Mixer)$
+windowrulev2 = move onscreen cursor -50% -50%, title:^(menu)$
+windowrulev2 = move cursor,class:REAPER,floating:1
+windowrulev2 = nofocus,class:REAPER,title:^(menu)$
+windowrulev2 = nofocus,class:REAPER,title:^$
#}}}
#{{{ Mods
@@ -224,6 +246,10 @@ bind = $mainMod, O, splitratio, exact 0.69 #MASTER
#bind = $mainMod CONTROL, K, moveintogroup, u
#}}}
+#{{{ Device binds
+bind = $mainMod, Backspace, exec, touchpad.sh
+#}}}
+
#{{{ WC binds
bind = $mainMod SHIFT, Q, killactive,
bind = $mainMod SHIFT, E, exit,
@@ -235,39 +261,75 @@ bind = $mainMod, N, exec, pypr toggle_special
bind = $mainMod SHIFT, N, togglespecialworkspace, minimized
#}}}
-#{{{ Workspace binds (using split-monitor-workspaces plugin!)
+#{{{ Workspace binds (using hyprsplit plugin!)
+## Switch workspaces with mainMod + [0-9]
+#bind = $mainMod, 1, split:workspace, 1
+#bind = $mainMod, 2, split:workspace, 2
+#bind = $mainMod, 3, split:workspace, 3
+#bind = $mainMod, 4, split:workspace, 4
+#bind = $mainMod, 5, split:workspace, 5
+#bind = $mainMod, 6, split:workspace, 6
+#bind = $mainMod, 7, split:workspace, 7
+#bind = $mainMod, 8, split:workspace, 8
+#bind = $mainMod, 9, split:workspace, 9
+## Move active window to a workspace with mainMod + SHIFT + [0-9]
+#bind = $mainMod SHIFT, 1, split:movetoworkspacesilent, 1
+#bind = $mainMod SHIFT, 2, split:movetoworkspacesilent, 2
+#bind = $mainMod SHIFT, 3, split:movetoworkspacesilent, 3
+#bind = $mainMod SHIFT, 4, split:movetoworkspacesilent, 4
+#bind = $mainMod SHIFT, 5, split:movetoworkspacesilent, 5
+#bind = $mainMod SHIFT, 6, split:movetoworkspacesilent, 6
+#bind = $mainMod SHIFT, 7, split:movetoworkspacesilent, 7
+#bind = $mainMod SHIFT, 8, split:movetoworkspacesilent, 8
+#bind = $mainMod SHIFT, 9, split:movetoworkspacesilent, 9
+#bind = $mainMod CONTROL SHIFT, 1, split:movetoworkspace, 1
+#bind = $mainMod CONTROL SHIFT, 2, split:movetoworkspace, 2
+#bind = $mainMod CONTROL SHIFT, 3, split:movetoworkspace, 3
+#bind = $mainMod CONTROL SHIFT, 4, split:movetoworkspace, 4
+#bind = $mainMod CONTROL SHIFT, 5, split:movetoworkspace, 5
+#bind = $mainMod CONTROL SHIFT, 6, split:movetoworkspace, 6
+#bind = $mainMod CONTROL SHIFT, 7, split:movetoworkspace, 7
+#bind = $mainMod CONTROL SHIFT, 8, split:movetoworkspace, 8
+#bind = $mainMod CONTROL SHIFT, 9, split:movetoworkspace, 9
+##bind = $mainMod, mouse_down, split:workspace, e+1
+##bind = $mainMod, mouse_up, split:workspace, e-1
+#bind = $mainMod, G, split:grabroguewindows
+#bind = $mainMod, comma, focusmonitor, -1
+#bind = $mainMod, period, focusmonitor, +1
+#bind = $mainMod SHIFT, comma, movewindow, mon:-1
+#bind = $mainMod SHIFT, period, movewindow, mon:+1
+#}}}
+
+#{{{ Workspace binds (not using hyprsplit plugin)
# Switch workspaces with mainMod + [0-9]
-bind = $mainMod, 1, split:workspace, 1
-bind = $mainMod, 2, split:workspace, 2
-bind = $mainMod, 3, split:workspace, 3
-bind = $mainMod, 4, split:workspace, 4
-bind = $mainMod, 5, split:workspace, 5
-bind = $mainMod, 6, split:workspace, 6
-bind = $mainMod, 7, split:workspace, 7
-bind = $mainMod, 8, split:workspace, 8
-bind = $mainMod, 9, split:workspace, 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
# Move active window to a workspace with mainMod + SHIFT + [0-9]
-bind = $mainMod SHIFT, 1, split:movetoworkspacesilent, 1
-bind = $mainMod SHIFT, 2, split:movetoworkspacesilent, 2
-bind = $mainMod SHIFT, 3, split:movetoworkspacesilent, 3
-bind = $mainMod SHIFT, 4, split:movetoworkspacesilent, 4
-bind = $mainMod SHIFT, 5, split:movetoworkspacesilent, 5
-bind = $mainMod SHIFT, 6, split:movetoworkspacesilent, 6
-bind = $mainMod SHIFT, 7, split:movetoworkspacesilent, 7
-bind = $mainMod SHIFT, 8, split:movetoworkspacesilent, 8
-bind = $mainMod SHIFT, 9, split:movetoworkspacesilent, 9
-bind = $mainMod CONTROL SHIFT, 1, split:movetoworkspace, 1
-bind = $mainMod CONTROL SHIFT, 2, split:movetoworkspace, 2
-bind = $mainMod CONTROL SHIFT, 3, split:movetoworkspace, 3
-bind = $mainMod CONTROL SHIFT, 4, split:movetoworkspace, 4
-bind = $mainMod CONTROL SHIFT, 5, split:movetoworkspace, 5
-bind = $mainMod CONTROL SHIFT, 6, split:movetoworkspace, 6
-bind = $mainMod CONTROL SHIFT, 7, split:movetoworkspace, 7
-bind = $mainMod CONTROL SHIFT, 8, split:movetoworkspace, 8
-bind = $mainMod CONTROL SHIFT, 9, split:movetoworkspace, 9
-#bind = $mainMod, mouse_down, split:workspace, e+1
-#bind = $mainMod, mouse_up, split:workspace, e-1
-bind = $mainMod, G, split:grabroguewindows
+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
+bind = $mainMod CONTROL SHIFT, 1, movetoworkspace, 1
+bind = $mainMod CONTROL SHIFT, 2, movetoworkspace, 2
+bind = $mainMod CONTROL SHIFT, 3, movetoworkspace, 3
+bind = $mainMod CONTROL SHIFT, 4, movetoworkspace, 4
+bind = $mainMod CONTROL SHIFT, 5, movetoworkspace, 5
+bind = $mainMod CONTROL SHIFT, 6, movetoworkspace, 6
+bind = $mainMod CONTROL SHIFT, 7, movetoworkspace, 7
+bind = $mainMod CONTROL SHIFT, 8, movetoworkspace, 8
+bind = $mainMod CONTROL SHIFT, 9, movetoworkspace, 9
bind = $mainMod, comma, focusmonitor, -1
bind = $mainMod, period, focusmonitor, +1
bind = $mainMod SHIFT, comma, movewindow, mon:-1
@@ -292,8 +354,8 @@ submap = reset
#}}}
#{{{ Menu bindings
-bind = $mainMod, R, exec, exec sh -c "$(tofi-drun -c ~/.config/tofi/themes/dmenu_vertical --prompt-text Run:)"
-bind = $mainMod, D, exec, exec sh -c "$(tofi-run -c ~/.config/tofi/themes/dmenu_vertical --prompt-text Run:)"
+bind = $mainMod, R, exec, sh -c "$(tofi-drun -c ~/.config/tofi/themes/dmenu_vertical --prompt-text Run:)"
+bind = $mainMod, D, exec, sh -c "$(tofi-run -c ~/.config/tofi/themes/dmenu_vertical --prompt-text Run:)"
bind = $mainMod $secdMod, Q, exec, qbc
bind = $mainMod $secdMod, W, exec, lwc
bind = $mainMod $secdMod, E, exec, mbc
@@ -314,80 +376,81 @@ bind = $mainMod, Q, exec, loginctl lock-session
bind = $mainMod $secdMod CONTROL, Q, exec, systemctl suspend
bind = $mainMod SHIFT, G, exec, get-app-id
bind = $mainMod Control, M, exec, volsv -m
+bind = $mainMod, Comma, exec, acpi-notify.sh
#bind = $mainMod CONTROL, R, exec, startx -- /usr/bin/Xephyr -screen 1920x1080 :1
#}}}
#{{{ Scratchpads
bind = $mainMod CONTROL, Z, exec, pypr toggle sphtop
-$sphtop = ^(sphtop)$
+$sphtop = class:^(sphtop)$
windowrule = float,$sphtop
windowrule = workspace special:sphtop silent,$sphtop
windowrule = size 50% 50%,$sphtop
windowrule = move 25% 25%,$sphtop
bind = $mainMod CONTROL, X, exec, pypr toggle spterm
-$spterm = ^(spterm)$
+$spterm = class:^(spterm)$
windowrule = float,$spterm
-windowrule = workspace special:spterm silent,$dropterm
+windowrule = workspace special:spterm silent,$spterm
windowrule = size 50% 50%,$spterm
windowrule = move 25% 25%,$spterm
bind = $mainMod CONTROL, C, exec, pypr toggle sppmxr
-$sppmxr = ^(sppmxr)$
+$sppmxr = class:^(sppmxr)$
windowrule = float,$sppmxr
windowrule = workspace special:sppmxr silent,$sppmxr
windowrule = size 50% 50%,$sppmxr
windowrule = move 25% 25%,$sppmxr
bind = $mainMod CONTROL, V, exec, pypr toggle spblue
-$spblue = ^(spblue)$
+$spblue = class:^(spblue)$
windowrule = float,$spblue
windowrule = workspace special:spblue silent,$spblue
windowrule = size 50% 50%,$spblue
windowrule = move 25% 25%,$spblue
bind = $mainMod CONTROL, B, exec, pypr toggle spncmp
-$spncmp = ^(spncmp)$
+$spncmp = class:^(spncmp)$
windowrule = float,$spncmp
windowrule = workspace special:spncmp silent,$spncmp
windowrule = size 50% 50%,$spncmp
windowrule = move 25% 25%,$spncmp
bind = $mainMod CONTROL, A, exec, pypr toggle spmutt
-$spmutt = ^(spmutt)$
+$spmutt = class:^(spmutt)$
windowrule = float,$spmutt
windowrule = workspace special:spmutt silent,$spmutt
windowrule = size 50% 50%,$spmutt
windowrule = move 25% 25%,$spmutt
bind = $mainMod CONTROL, S, exec, pypr toggle spprof
-$spprof = ^(spprof)$
+$spprof = class:^(spprof)$
windowrule = float,$spprof
windowrule = workspace special:spprof silent,$spprof
windowrule = size 50% 50%,$spprof
windowrule = move 25% 25%,$spprof
bind = $mainMod CONTROL, D, exec, pypr toggle spirss
-$spirss = ^(spirss)$
+$spirss = class:^(spirss)$
windowrule = float,$spirss
windowrule = workspace special:spirss silent,$spirss
windowrule = size 50% 50%,$spirss
windowrule = move 25% 25%,$spirss
bind = $mainMod CONTROL, F, exec, pypr toggle sptodo
-$sptodo = ^(sptodo)$
+$sptodo = class:^(sptodo)$
windowrule = float,$sptodo
windowrule = workspace special:sptodo silent,$sptodo
windowrule = size 50% 50%,$sptodo
windowrule = move 25% 25%,$sptodo
bind = $mainMod CONTROL, G, exec, pypr toggle sptrmc
-$sptrmc = ^(sptrmc)$
+$sptrmc = class:^(sptrmc)$
windowrule = float,$sptrmc
windowrule = workspace special:sptrmc silent,$sptrmc
windowrule = size 50% 50%,$sptrmc
windowrule = move 25% 25%,$sptrmc
bind = $mainMod CONTROL, Q, exec, pypr toggle qpwgraph
-$spqpwg = ^(org\.rncbc\.qpwgraph)$
+$spqpwg = class:^(org\.rncbc\.qpwgraph)$
windowrule = float,$spqpwg
windowrule = workspace special:spqpwg silent,$spqpwg
windowrule = size 50% 50%,$spqpwg
windowrule = move 25% 25%,$spqpwg
bind = $mainMod CONTROL, E, togglespecialworkspace, speasy
-$speasy = ^(com\.github\.wwmm\.easyeffects)$
+$speasy = class:^(com\.github\.wwmm\.easyeffects)$
windowrule = float,$speasy
windowrule = workspace special:speasy silent,$speasy
windowrule = size 50% 50%,$speasy
@@ -425,9 +488,9 @@ bind = , XF86AudioNext, exec, playerctl next
bind = , XF86AudioMute, exec, volsv -t
#bindl = , XF86AudioMicMute, exec, volsv -m
bind = , XF86AudioMicMute, exec, volsv -m
-bindel = , XF86MonBrightnessUp, exec, bl -i
-bindel = , XF86MonBrightnessDown, exec, bl -d
-bindl = $mainMod, XF86MonBrightnessUp, exec, bl -I 1
-bindl = $mainMod, XF86MonBrightnessDown, exec, bl -D 1
+bindel = , XF86MonBrightnessUp, exec, bl -x -i
+bindel = , XF86MonBrightnessDown, exec, bl -x -d
+bindl = $mainMod, XF86MonBrightnessUp, exec, bl -x -I 1
+bindl = $mainMod, XF86MonBrightnessDown, exec, bl -x -D 1
bind = , Print, exec, scrshot
#}}}
diff --git a/hypr/hyprlock.conf b/hypr/hyprlock.conf
index 84d08ae..dc05411 100644
--- a/hypr/hyprlock.conf
+++ b/hypr/hyprlock.conf
@@ -1,9 +1,9 @@
general {
- disable_loading_bar = false
- hide_cursor = false
- grace = 0
- no_fade_in = false
- no_fade_out = false
+ disable_loading_bar = true
+ hide_cursor = true
+ grace = 15
+ no_fade_in = true
+ no_fade_out = true
ignore_empty_input = false
}