{ pkgs, ... }: { module.wm.hyprland = { autostart = [ "mako" ]; binds = let c = "--class"; pic = "$(xdg-user-dir PICTURES)/$(date +'scr_%d-%m-%y|%H:%M:%S.png')"; in with pkgs; [ # PROGRAMS "$m, $rt, exec, kitty" "$m $s, $rt, exec, kitty ${c}=termfloat" "$m, V, exec, telegram-desktop" "$m $s, V, exec, thunderbird" "$m, B, exec, zen" "$m $s, B, exec, qutebrowser" "$m $a, B, exec, floorp" "$m, N, exec, kitty yazi" "$m $s, N, exec, nemo" "$m, M, exec, spotify" "$m $s, M, exec, kitty ${c}=anicliru anicli-ru -q 1080" "$m $a, M, exec, onlyoffice" "$m, Z, exec, bottles" "$m $s, Z, exec, prismlauncher" "$m $a, Z, exec, qbittorrent" # SCREENSHOTTER & VIDEO ", $PR, exec, ${grimblast}/bin/grimblast copysave area ${pic}" "$s, $PR, exec, ${grimblast}/bin/grimblast copysave output ${pic}" ]; rules = let # titile & class cl = "class:^"; tt = "title:^"; il = "initialClass:^"; it = "initialTitle:^"; # regex x = class: win: type: "${type}, ${class}(${win})$"; in [ (x "${cl}" "firefox" "workspace 2 silent") (x "${cl}" "zen-alpha" "workspace 2 silent") (x "${cl}" "zen-beta" "workspace 2 silent") (x "${cl}" "spotify" "workspace 3 silent") (x "${il}" "spotify" "workspace 3 silent") (x "${it}" "Spotify" "workspace 3 silent") (x "${tt}" "Spotify Free" "workspace 3 silent") (x "${cl}" "com.ayugram" "workspace 4 silent") (x "${cl}" "io.github.tdesktop_x64.TDesktop" "workspace 4 silent") (x "${cl}" "vesktop" "workspace 4 silent") (x "${cl}" "obsidian" "workspace 5 silent") (x "${cl}" "anicli" "workspace 6 silent") (x "${cl}" "org.qbittorrent.qBittorrent" "workspace 9 silent") (x "${cl}" "mpv" "workspace magic silent") # term rules (x "${cl}" "termfloat" "float") (x "${cl}" "termfloat" "move center") (x "${cl}" "termfloat" "size 650 430") # file manager (x "${cl}" "tfm" "float") (x "${cl}" "tfm" "move center") (x "${cl}" "tfm" "size 800 350") # ayu & 64gram (x "${tt}" "com.ayugram" "minsize 540 680") (x "${tt}" "io.github.tdesktop_x64.TDesktop" "minsize 540 680") (x "${tt}" "Media viewer" "float") (x "${tt}" "Media viewer" "move center") (x "${tt}" "Media viewer" "size 670 540") (x "${tt}" "Media viewer" "noanim") (x "${tt}" "Media viewer" "fullscreen") (x "${tt}" "Choose Files" "float") (x "${tt}" "Choose Files" "move center") (x "${tt}" "Choose Files" "size 650 450") # xdg (x "${cl}" "xdg-desktop-portal-gtk" "float") (x "${cl}" "xdg-desktop-portal-gtk" "move center") (x "${cl}" "xdg-desktop-portal-gtk" "size 807 570") # mpv (x "${cl}" "mpv" "nodim") (x "${cl}" "anicliru" "float") (x "${cl}" "anicliru" "size 810 630") # torrent (x "${cl}" "org.qbittorrent.qBittorrent" "float") (x "${cl}" "org.qbittorrent.qBittorrent" "size 1020 740") (x "${cl}" "org.qbittorrent.qBittorrent" "pseudo") ]; }; }