diff options
| author | zachir <zachir@librem.one> | 2026-01-11 19:26:22 -0600 |
|---|---|---|
| committer | zachir <zachir@librem.one> | 2026-01-11 19:26:22 -0600 |
| commit | 81eeb3aec382b8e912560082df8b7d4a67fdeb98 (patch) | |
| tree | 332d26447d7bcdf60d57f0ec33411551503930d9 /hypr | |
| parent | 10d59796b2525ab0b81a9efb4c5af447d279ce44 (diff) | |
| parent | 4dfae6cc2cae76d60e04ead74774b74b1432219c (diff) | |
Merge branch 'master' into cascas
Diffstat (limited to 'hypr')
| -rw-r--r-- | hypr/hyprland.conf | 102 | ||||
| -rw-r--r-- | hypr/hyprpaper.conf | 46 | ||||
| -rw-r--r-- | hypr/hyprscratch.conf | 16 | ||||
| -rw-r--r-- | hypr/pyprland.toml | 73 |
4 files changed, 160 insertions, 77 deletions
diff --git a/hypr/hyprland.conf b/hypr/hyprland.conf index 9a40ef8..e483049 100644 --- a/hypr/hyprland.conf +++ b/hypr/hyprland.conf @@ -9,8 +9,8 @@ monitor = , preferred, auto, 1 # See https://wiki.hypr.land/Configuring/Keywords/ for more #{{{ Plugins -plugin = /var/cache/hyprpm/zachir/hyprland-plugins/hyprscrolling.so -plugin = /var/cache/hyprpm/zachir/hyprsplit/hyprsplit.so +#plugin = /var/cache/hyprpm/zachir/hyprland-plugins/hyprscrolling.so +#plugin = /var/cache/hyprpm/zachir/hyprsplit/hyprsplit.so #}}} #{{{ Autostart @@ -22,7 +22,7 @@ exec-once = hyprpm reload -n exec-once = dinitctl start hyprpaper.user exec-once = waybar exec-once = pypr -exec-once = hyprscratch init +#exec-once = hyprscratch init exec-once = lxqt-policykit-agent exec-once = import-gsettings gtk-theme 'Flat-Remix-GTK-Green-Darkest' exec-once = import-gsettings icon-theme 'Papirus-Dark' @@ -150,7 +150,7 @@ decoration { #{{{ Animations options animations { - enabled = no + enabled = yes # Some default animations, see https://wiki.hypr.land/Configuring/Animations/ for more bezier = myBezier, 0.05, 0.9, 0.1, 1.05 animation = windows, 1, 7, myBezier @@ -181,7 +181,7 @@ master { new_on_active = before #no_gaps_when_only = false orientation = left - inherit_fullscreen = true + #inherit_fullscreen = true drop_at_cursor = true } #}}} @@ -216,43 +216,47 @@ plugin { # Example windowrule v2 # windowrule = float, class:^(kitty)$, title:^(kitty)$ # See https://wiki.hypr.land/Configuring/Window-Rules/ for more -windowrule = fullscreen, class:^(Xephyr)$ -windowrule = float, title:^(LibreWolf - Choose User Profile)$ -windowrule = float, class:^(xdg-desktop-portal-gtk) -windowrule = float, title:^(UNDERTALE)$ -windowrule = float, class:^(Tk)$ -windowrule = float, class:^(lxqt-policykit-agent)$ -windowrulev2 = stayfocused, title:^()$, class:^(steam)$ -windowrulev2 = minsize 1 1, title:^()$, class:^(steam)$ -windowrulev2 = stayfocused, title:^(menu)$,class:^(yabridge-host.exe.so)$ -windowrulev2 = minsize 1 1, title:^(menu)$,class:^(yabridge-host.exe.so)$ -windowrulev2 = float, class:^(yabridge-host.exe.so)$, title:^(menu)$ -windowrulev2 = float, floating:0, title:^(menu*) -windowrule = workspace 2, title:^(REAPER .*initializing.*)$ -windowrulev2 = tile, class:^(REAPER)$, title:^(.*REAPER v[0-9.]* - Licensed for personal/small business use)$ -windowrule = tile, class:^(WebApp-Qobuz[0-9]*)$ -windowrulev2 = float, title:^(menu)$ -windowrulev2 = move cursor -50% -50%, class:^(yabridge-host.exe.so)$, title:^(menu)$ -#windowrulev2 = nofocus, class:^(yabridge-host.exe.so)$, title:^(\s*)$ -#windowrulev2 = move cursor -50% -50%, class:^(REAPER)$, title:^(Snap/Grid Settings)$ -#windowrulev2 = move cursor -50% -50%, class:^(REAPER)$, title:^(Routing for track [0-9]*)$ -#windowrulev2 = move cursor -50% -50%, class:^(REAPER)$, title:^(Metronome and pre-roll settings)$ -#windowrulev2 = move cursor -50% -50%, class:^(yabridge-host.exe.so)$, title:^(menu)$ -#windowrulev2 = nofocus, class:^(yabridge-host.exe.so)$, title:^(\s*)$ -#windowrulev2 = move cursor -50% -50%, class:^(yabridge-host.exe.so)$, title:^(\s*)$ -#windowrulev2 = move cursor -50% -50%, class:^(REAPER)$, title:^(Snap/Grid Settings)$ -#windowrulev2 = move cursor -50% -50%, class:^(REAPER)$, title:^(Routing for track [0-9]*)$ -#windowrulev2 = float, floating:0, title:^(menu)$ -#windowrulev2 = forceinput, title:^(menu)$ -windowrulev2 = workspace special:easyeffects silent, class: ^(com\.github\.wwmm\.easyeffects)$ +windowrule = fullscreen on, match:class ^(Xephyr)$ +windowrule = float on, match:title ^(LibreWolf - Choose User Profile)$ +windowrule = float on, match:class ^(xdg-desktop-portal-gtk) +windowrule = float on, match:title ^(UNDERTALE)$ +windowrule = float on, match:class ^(Tk)$ +windowrule = float on, match:class ^(lxqt-policykit-agent)$ +windowrulev2 = stayfocused on, match:title ^()$, match:class ^(steam)$ +windowrulev2 = minsize 1 1, match:title ^()$, match:class ^(steam)$ +windowrulev2 = stayfocused on, match:title ^(menu)$, match:class ^(yabridge-host.exe.so)$ +windowrulev2 = minsize 1 1, match:title ^(menu)$, match:class ^(yabridge-host.exe.so)$ +windowrulev2 = float on, match:class ^(yabridge-host.exe.so)$, match:title ^(menu)$ +windowrulev2 = float on, match:floating 0, match:title ^(menu*) +windowrule = workspace 2, match:title ^(REAPER .*initializing.*)$ +windowrulev2 = tile on, match:class ^(REAPER)$, title:^(.*REAPER v[0-9.]* - Licensed for personal/small business use)$ +windowrule = tile on, match:class ^(WebApp-Qobuz[0-9]*)$ +windowrulev2 = float on, match:title ^(menu)$ +windowrulev2 = move cursor -50% -50%, match:class ^(yabridge-host.exe.so)$, match:title ^(menu)$ +windowrulev2 = workspace special:easyeffects silent, match: class ^(com\.github\.wwmm\.easyeffects)$ # Fix brave xray menus -windowrulev2 = xray 0, class: ^(\s*), title: ^(\s*)$ +windowrulev2 = xray 0, match:class ^(\s*), match:title ^(\s*)$ # Center floating XWayland windows -windowrule = center, xwayland: 1 +windowrule = center on, match:xwayland on, match:class negative:^(steam|REAPER)$ +# Make Steam Big Picture Mode fullscreen +windowrule = fullscreen on, match:class ^(steam)$, match:title ^(Steam Big Picture Mode)$ +# Fix scratchpad window spawn behavior +windowrule = workspace +0, match:workspace name:sphtop, match:title negative:sphtop +windowrule = workspace +0, match:workspace name:spterm, match:title negative:spterm +windowrule = workspace +0, match:workspace name:sppmxr, match:title negative:sppmxr +windowrule = workspace +0, match:workspace name:spblue, match:title negative:spblue +windowrule = workspace +0, match:workspace name:spncmp, match:title negative:spncmp +windowrule = workspace +0, match:workspace name:spmutt, match:title negative:spmutt +windowrule = workspace +0, match:workspace name:spprof, match:title negative:spprof +windowrule = workspace +0, match:workspace name:spirss, match:title negative:spirss +windowrule = workspace +0, match:workspace name:spvimw, match:title negative:spvimw +windowrule = workspace +0, match:workspace name:sptrmc, match:title negative:sptrmc +windowrule = workspace +0, match:workspace name:helvum, match:title negative:helvum +windowrule = workspace +0, match:workspace name:easyfx, match:title negative:easyfx #}}} #{{{ Layerrules -layerrule = blur, waybar +layerrule = blur on, match:namespace waybar #}}} #{{{ Mods @@ -450,18 +454,18 @@ bind = $mainMod Control, M, exec, volsv -m #}}} #{{{ Scratchpads -bind = $mainMod CONTROL, Z, exec, hyprscratch toggle sphtop -bind = $mainMod CONTROL, X, exec, hyprscratch toggle spterm -bind = $mainMod CONTROL, C, exec, hyprscratch toggle sppmxr -bind = $mainMod CONTROL, V, exec, hyprscratch toggle spblue -bind = $mainMod CONTROL, B, exec, hyprscratch toggle spncmp -bind = $mainMod CONTROL, A, exec, hyprscratch toggle spmutt -bind = $mainMod CONTROL, S, exec, hyprscratch toggle spprof -bind = $mainMod CONTROL, D, exec, hyprscratch toggle spirss -bind = $mainMod CONTROL, F, exec, hyprscratch toggle spvimw -bind = $mainMod CONTROL, G, exec, hyprscratch toggle sptrmc -bind = $mainMod CONTROL, Q, exec, hyprscratch toggle helvum -bind = $mainMod CONTROL, E, exec, hyprscratch toggle easyeffects +bind = $mainMod CONTROL, Z, exec, pypr toggle sphtop +bind = $mainMod CONTROL, X, exec, pypr toggle spterm +bind = $mainMod CONTROL, C, exec, pypr toggle sppmxr +bind = $mainMod CONTROL, V, exec, pypr toggle spblue +bind = $mainMod CONTROL, B, exec, pypr toggle spncmp +bind = $mainMod CONTROL, A, exec, pypr toggle spmutt +bind = $mainMod CONTROL, S, exec, pypr toggle spprof +bind = $mainMod CONTROL, D, exec, pypr toggle spirss +bind = $mainMod CONTROL, F, exec, pypr toggle spvimw +bind = $mainMod CONTROL, G, exec, pypr toggle sptrmc +bind = $mainMod CONTROL, Q, exec, pypr toggle helvum +bind = $mainMod CONTROL, E, exec, pypr toggle easyfx #}}} #{{{ OBS bindings diff --git a/hypr/hyprpaper.conf b/hypr/hyprpaper.conf index 728c00c..a11d6b0 100644 --- a/hypr/hyprpaper.conf +++ b/hypr/hyprpaper.conf @@ -1,15 +1,33 @@ -preload = ~/Pictures/background.png -#if more than one preload is desired then continue to preload other backgrounds -#preload = /path/to/next_image.png -# .. more preloads - -#set the default wallpaper(s) seen on inital workspace(s) --depending on the number of monitors used -wallpaper = eDP-1,~/Pictures/background.png -wallpaper = HDMI-A-1,~/Pictures/background.png -wallpaper = HDMI-A-2,~/Pictures/background.png -wallpaper = DP-1,~/Pictures/background.png -wallpaper = DP-2,~/Pictures/background.png -#if more than one monitor in use, can load a 2nd image -#wallpaper = monitor2,~/background.png -# .. more monitors +wallpaper { + monitor = eDP-1 + path = ~/Pictures/background.png + fit_mode = cover +} + +wallpaper { + monitor = HDMI-A-1 + path = ~/Pictures/background.png + fit_mode = cover +} + +wallpaper { + monitor = HDMI-A-2 + path = ~/Pictures/background.png + fit_mode = cover +} + +wallpaper { + monitor = DP-1 + path = ~/Pictures/background.png + fit_mode = cover +} + +wallpaper { + monitor = DP-2 + path = ~/Pictures/background.png + fit_mode = cover +} + +# Misc Options splash = false +ipc = true diff --git a/hypr/hyprscratch.conf b/hypr/hyprscratch.conf index 5964419..fe3cda6 100644 --- a/hypr/hyprscratch.conf +++ b/hypr/hyprscratch.conf @@ -1,8 +1,8 @@ # Optional globals that apply to all scratchpads daemon_options = clean -daemon_options = eager +daemon_options = spotless -global_rules = size 50% 50% +global_options = special sphtop { # Mandatory fields @@ -11,7 +11,6 @@ sphtop { # Optional fields options = lazy - options = special } spterm { @@ -21,7 +20,6 @@ spterm { # Optional fields options = lazy - options = special } sppmxr { @@ -31,7 +29,6 @@ sppmxr { # Optional fields options = lazy - options = special } spblue { @@ -41,7 +38,6 @@ spblue { # Optional fields options = lazy - options = special } spncmp { @@ -51,7 +47,6 @@ spncmp { # Optional fields options = lazy - options = special } spmutt { @@ -61,7 +56,6 @@ spmutt { # Optional fields options = lazy - options = special } spprof { @@ -71,7 +65,6 @@ spprof { # Optional fields options = lazy - options = special } spirss { @@ -81,7 +74,6 @@ spirss { # Optional fields options = lazy - options = special } spvimw { @@ -91,7 +83,6 @@ spvimw { # Optional fields options = lazy - options = special } sptrmc { @@ -101,7 +92,6 @@ sptrmc { # Optional fields options = lazy - options = special } helvum { @@ -111,7 +101,6 @@ helvum { # Optional fields options = lazy - options = special } easyeffects { @@ -121,6 +110,5 @@ easyeffects { # Optional fields options = lazy - options = special } diff --git a/hypr/pyprland.toml b/hypr/pyprland.toml index cacd7f1..3110ba5 100644 --- a/hypr/pyprland.toml +++ b/hypr/pyprland.toml @@ -1,5 +1,78 @@ [pyprland] plugins = [ "toggle_special", + "scratchpads", "expose" ] + +[scratchpads.sphtop] +animation = "fromBottom" +command = "kitty --class sphtop -e htop" +class = "sphtop" +size = "50% 50%" + +[scratchpads.spterm] +animation = "fromBottom" +command = "kitty --class spterm" +class = "spterm" +size = "50% 50%" + +[scratchpads.sppmxr] +animation = "fromBottom" +command = "kitty --class sppmxr -e pulsemixer" +class = "sppmxr" +size = "50% 50%" + +[scratchpads.spblue] +animation = "fromBottom" +command = "kitty --class spblue -e bluetoothctl" +class = "spblue" +size = "50% 50%" + +[scratchpads.spncmp] +animation = "fromBottom" +command = "kitty --class spncmp -e ncmpcpp" +class = "spncmp" +size = "50% 50%" + +[scratchpads.spmutt] +animation = "fromBottom" +command = "kitty --class spmutt -e neomutt" +class = "spmutt" +size = "50% 50%" + +[scratchpads.spprof] +animation = "fromBottom" +command = "kitty --class spprof -e profanity" +class = "spprof" +size = "50% 50%" + +[scratchpads.spirss] +animation = "fromBottom" +command = "kitty --class spirss -e irssi" +class = "spirss" +size = "50% 50%" + +[scratchpads.spvimw] +animation = "fromBottom" +command = "kitty --class spvimw -e vw" +class = "spvimw" +size = "50% 50%" + +[scratchpads.trmc] +animation = "fromBottom" +command = "kitty --class trmc -e tremc" +class = "trmc" +size = "50% 50%" + +[scratchpads.helvum] +animation = "fromBottom" +command = "helvum" +class = "org.pipewire.Helvum" +size = "50% 50%" + +[scratchpads.easyfx] +animation = "fromBottom" +command = "easyeffects" +class = "com.github.wwmm.easyeffects" +size = "50% 50%" |
