From 187b478c5dcd8cef2bdc09261ecaa6df9557e24a Mon Sep 17 00:00:00 2001 From: mjallen18 Date: Sat, 31 Jan 2026 10:19:49 -0600 Subject: [PATCH] hyprland rules --- .../matt@macbook-pro-nixos/default.nix | 2 +- .../x86_64-linux/matt@matt-nixos/default.nix | 2 +- modules/home/programs/hyprland/default.nix | 118 +++++++++--------- .../x86_64-linux/matt-nixos/filesystems.nix | 33 ++--- 4 files changed, 77 insertions(+), 78 deletions(-) diff --git a/homes/aarch64-linux/matt@macbook-pro-nixos/default.nix b/homes/aarch64-linux/matt@macbook-pro-nixos/default.nix index 6a29bd0..84c62c6 100755 --- a/homes/aarch64-linux/matt@macbook-pro-nixos/default.nix +++ b/homes/aarch64-linux/matt@macbook-pro-nixos/default.nix @@ -51,7 +51,7 @@ in ]; windowRule = [ - "size 2160 3356, tag:horizonrdp" + # "size 2160 3356, tag:horizonrdp" ]; hyprpaper = { diff --git a/homes/x86_64-linux/matt@matt-nixos/default.nix b/homes/x86_64-linux/matt@matt-nixos/default.nix index f8c21f6..30eea21 100755 --- a/homes/x86_64-linux/matt@matt-nixos/default.nix +++ b/homes/x86_64-linux/matt@matt-nixos/default.nix @@ -75,7 +75,7 @@ in ]; windowRule = [ - "size 2160 7680, tag:horizonrdp" + "match:tag horizonrdp, size 2160 7680" ]; autostartCommands = [ diff --git a/modules/home/programs/hyprland/default.nix b/modules/home/programs/hyprland/default.nix index f5033be..bf7b298 100644 --- a/modules/home/programs/hyprland/default.nix +++ b/modules/home/programs/hyprland/default.nix @@ -176,7 +176,7 @@ in { monitor = ""; path = "/run/wallpaper.jpg"; # supports png, jpg, webp (no animations, though) - color = mkDefault "rgba(25, 20, 20, 1.0)"; + color = mkDefault "rgba(25, 20, 20, 1.0"; # all these options are taken from hyprland, see https://wiki.hyprland.org/Configuring/Variables/#blur for explanations blur_passes = mkDefault "3"; # 0 disables blurring @@ -253,7 +253,7 @@ in { monitor = cfg.primaryDisplay; size = "200, 50"; - color = "rgba(46, 52, 64, .25)"; + color = "rgba(46, 52, 64, .25"; rounding = -1; border_size = "0"; position = "0, 0"; @@ -526,80 +526,78 @@ in workspace = cfg.workspace; windowrule = [ - "float, title:(file_progress)" - "float, title:(.*[Cc]onfirm.*)" - "float, title:(.*[Dd]ialog.*)" - "float, title:(.*[Dd]ownload.*)" - "float, title:(.*[Nn]otification.*)" - "float, title:(.*[Ee]rror.*)" - "float, title:(.*[Ss]plash.*)" - "float, title:(.*[Cc]onfirmreset.*)" - "float, title:(.*[Ss]ign [Ii]n - .*)" - "float, title:(.*[Oo]pen [Ff]ile.*)" - "float, title:(.*branchdialog.*)" - "float, class:(.*pavucontrol.*)" - "move onscreen cursor 0% 0%, class:(.*pavucontrol.*)" - "float, class:(.*[Oo]verskride.*)" - "float, class:(.*FileRoller.*)" - "float, class:(.*wlogout.*)" - "idleinhibit stayfocused, title:(.*mpv.*)" + "match:title file_progress, float 1" + "match:title .*[Cc]onfirm.*, float 1" + "match:title .*[Dd]ialog.*, float 1" + "match:title .*[Dd]ownload.*, float 1" + "match:title .*[Nn]otification.*, float 1" + "match:title .*[Ee]rror.*, float 1" + "match:title .*[Ss]plash.*, float 1" + "match:title .*[Cc]onfirmreset.*, float 1" + "match:title .*[Ss]ign [Ii]n - .*, float 1" + "match:title .*[Oo]pen [Ff]ile.*, float 1" + "match:title .*branchdialog.*, float 1" + "match:class .*pavucontrol.*, float 1" + "match:class .*pavucontrol.*, move onscreen cursor 0% 0%" + "match:class .*[Oo]verskride.*, float 1" + "match:class .*FileRoller.*, float 1" + "match:class .*wlogout.*, float 1" + "match:title .*mpv.*, idle_inhibit stayfocused" - "float, class:(.*nm-connection-editor.*)" - "move onscreen cursor 0% 0%, class:(.*nm-connection-editor.*)" + "match:class .*nm-connection-editor.*, float 1" + "match:class .*nm-connection-editor.*, move onscreen cursor 0% 0%" - "float, title:(Media viewer)" - "float, class:(it.mijorus.smile),title:(Smile)" - "float, class:(.blueman-manager-wrapped)$,title:(Bluetooth Devices)" + "match:title Media viewer, float 1" + "match:class it.mijorus.smile),match:title Smile, float 1" + "match:class .blueman-manager-wrapped)$,match:title Bluetooth Devices, float 1" # Picture in picture windows - "float, title:(.*Picture-in-Picture.*)" - "pin, title::(.*Picture-in-Picture.*)" + "match:title .*Picture-in-Picture.*, float 1" + "match:title .*Picture-in-Picture.*, pin 1" # discord/vesktop - # "workspace: name:discord, class:(.*vesktop)" - # "float, class:(.*vesktop),title:(.*Discord Popout.*)" - # "pin, class:(.*vesktop),title:(.*Discord Popout.*)" + # "workspace: name:discord, match:class .*vesktop" + # "match:class .*vesktop),match:title .*Discord Popout.*, float 1" + # "pin, match:class .*vesktop),match:title .*Discord Popout.*" # Music - # "workspace: name:discord, class:(Apple Music.*)" + # "workspace: name:discord, match:class Apple Music.*" # Steam - "float, class:(.*[Ss]team), title:(.*[Ss]team.*)$" - "workspace name:steam silent, class:(.*[Ss]team), title:(.*[Ss]team.*)$" - "tile, class:(.*[Ss]team), title:(.*[Ss]team.*)$" - "float, class:(.*steam),title:(.*Friends List.*)" + "match:class .*[Ss]team, match:title .*[Ss]team.*, float 1" + "match:class .*[Ss]team, match:title .*[Ss]team.*, workspace name:steam silent" + "match:class .*[Ss]team, match:title .*[Ss]team.*, tile 1" + "match:class .*steam,match:title .*Friends List.*, float 1" # Code - "pin, class:(.*codium.*),title:(Save As)" - "float, class:(.*codium.*),title:(Save As)" - "float, class:(xdg-desktop-portal-gtk),title:(Open Workspace from File)" + "match:class .*codium.*, match:title Save As, pin 1" + "match:class .*codium.*, match:title Save As, float 1" + "match:class xdg-desktop-portal-gtk, match:title Open Workspace from File, float 1" # Game Tearing??? https://wiki.hypr.land/Configuring/Tearing/ - "immediate, class:(.*gamescope)" + "match:class .*gamescope.*, idle_inhibit fullscreen, content game, immediate 1" + "match:xdg_tag proton-game, idle_inhibit fullscreen, content game, immediate 1" + "match:class steam_app_.*, idle_inhibit fullscreen, content game, immediate 1" # vmware # this tag will set the below options to the vdi window # this will have it auto open as a 2160x7680 window # and makes multi-monitor work - "tag +horizonrdp, class:(.*[Hh]orizon-client),title:(USPS Next VDI)" + "match:class .*[Hh]orizon-client, match:title USPS Next VDI, tag +horizonrdp" - "noanim, tag:horizonrdp" - "noblur, tag:horizonrdp" - "norounding, tag:horizonrdp" - "noshadow, tag:horizonrdp" - "immediate, tag:horizonrdp" - "allowsinput, tag:horizonrdp" - "noborder, tag:horizonrdp" - "nodim, tag:horizonrdp" - "nomaxsize, tag:horizonrdp" - "renderunfocused, tag:horizonrdp" - "idleinhibit, tag:horizonrdp" - "float, tag:horizonrdp" + "match:tag horizonrdp, no_anim 1" + "match:tag horizonrdp, no_blur 1" + "match:tag horizonrdp, rounding 0" + "match:tag horizonrdp, no_shadow 1" + "match:tag horizonrdp, immediate 1" + "match:tag horizonrdp, allows_input 1" + "match:tag horizonrdp, border_size 0" + "match:tag horizonrdp, max_size 2160 7680" + "match:tag horizonrdp, min_size 1920 1080" + "match:tag horizonrdp, render_unfocused 1" + "match:tag horizonrdp, idle_inhibit 1" + "match:tag horizonrdp, float 1" # float the vmware window cause its annoying to use in fullscreen - "float, class:(.*[Hh]orizon-client),title:([Oo]mnissa [Hh]orizon [Cc]lient)" - - "tag +waydroid, class:([Ww]aydroid.*)" - "float, tag:waydroid" - "pin, tag:waydroid" + "match:class .*[Hh]orizon-client),match:title [Oo]mnissa [Hh]orizon [Cc]lient, float 1" ] ++ cfg.windowRule; @@ -694,12 +692,12 @@ in sensitivity = 0; # -1.0 - 1.0, 0 means no modification. }; - experimental = { - xx_color_management_v4 = true; - }; + # experimental = { + # xx_color_management_v4 = true; + # }; debug = { - full_cm_proto = cfg.debug.fullCmProto; + # full_cm_proto = cfg.debug.fullCmProto; disable_logs = cfg.debug.disableLogs; disable_scale_checks = cfg.debug.disableScaleChecks; }; diff --git a/systems/x86_64-linux/matt-nixos/filesystems.nix b/systems/x86_64-linux/matt-nixos/filesystems.nix index a55f9ac..5c8c1ce 100755 --- a/systems/x86_64-linux/matt-nixos/filesystems.nix +++ b/systems/x86_64-linux/matt-nixos/filesystems.nix @@ -22,6 +22,7 @@ let in { fileSystems = { + "/etc".neededForBoot = true; "/media/matt/data" = { device = "/dev/disk/by-uuid/f851d21e-27b3-4353-aa19-590d244db6e5"; fsType = "bcachefs"; @@ -31,23 +32,23 @@ in ++ defaultLocalOptions; }; - # Network shares - "/media/nas/backup" = { - device = "//10.0.1.3/Backup"; - fsType = "cifs"; - options = defaultNetworkShareOptions; - }; + # # Network shares + # "/media/nas/backup" = { + # device = "//10.0.1.3/Backup"; + # fsType = "cifs"; + # options = defaultNetworkShareOptions; + # }; - "/media/nas/isos" = { - device = "//10.0.1.3/isos"; - fsType = "cifs"; - options = defaultNetworkShareOptions; - }; + # "/media/nas/isos" = { + # device = "//10.0.1.3/isos"; + # fsType = "cifs"; + # options = defaultNetworkShareOptions; + # }; - "/media/nas/3d_printer" = { - device = "//10.0.1.3/3d_printer"; - fsType = "cifs"; - options = defaultNetworkShareOptions; - }; + # "/media/nas/3d_printer" = { + # device = "//10.0.1.3/3d_printer"; + # fsType = "cifs"; + # options = defaultNetworkShareOptions; + # }; }; }