667 lines
12 KiB
Plaintext
667 lines
12 KiB
Plaintext
# HyprFlux — https://github.com/ahmad9059/HyprFlux
|
|
# For window rules and layerrules
|
|
# See https://wiki.hyprland.org/Configuring/Window-Rules/ for more
|
|
|
|
# NOTES: This is only for Hyprland > 0.48
|
|
|
|
# note for ja: This should NOT be implemented on Debian and Ubuntu
|
|
|
|
# windowrule - tags - add apps under appropriate tag to use the same settings
|
|
# browser tags
|
|
windowrule {
|
|
name = windowrule-1
|
|
tag = +browser
|
|
match:class = ^([Ff]irefox|org.mozilla.firefox|[Ff]irefox-esr|[Ff]irefox-bin)$
|
|
}
|
|
|
|
windowrule {
|
|
name = rustdesk
|
|
tag = +rustdesk
|
|
match:class = ^(rustdesk)$, xwayland
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-2
|
|
tag = +browser
|
|
match:class = ^([Gg]oogle-chrome(-beta|-dev|-unstable)?)$
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-3
|
|
tag = +browser
|
|
match:class = ^(chrome-.+-Default)$ # Chrome PWAs
|
|
}
|
|
|
|
# windowrule = tag +browser, class:^([Cc]hromium)$
|
|
windowrule {
|
|
name = windowrule-4
|
|
tag = +browser
|
|
match:class = ^([Mm]icrosoft-edge(-stable|-beta|-dev|-unstable))$
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-5
|
|
tag = +browser
|
|
match:class = ^(Brave-browser(-beta|-dev|-unstable)?)$
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-6
|
|
tag = +browser
|
|
match:class = ^([Tt]horium-browser|[Cc]achy-browser)$
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-7
|
|
tag = +browser
|
|
match:class = ^(zen-alpha|zen)$
|
|
}
|
|
|
|
|
|
# notif tags
|
|
windowrule {
|
|
name = windowrule-8
|
|
tag = +notif
|
|
match:class = ^(swaync-control-center|swaync-notification-window|swaync-client|class)$
|
|
}
|
|
|
|
|
|
# HyprFlux settings tag
|
|
windowrule {
|
|
name = windowrule-9
|
|
tag = +HyprFlux_Cheat
|
|
match:title = ^(HyprFlux Quick Cheat Sheet)$
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-10
|
|
tag = +HyprFlux_Settings
|
|
match:title = ^(HyprFlux Settings)$
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-11
|
|
tag = +HyprFlux-Settings
|
|
match:class = ^(nwg-displays|nwg-look)$
|
|
}
|
|
|
|
|
|
# terminal tags
|
|
windowrule {
|
|
name = windowrule-12
|
|
tag = +terminal
|
|
match:class = ^(Alacritty|kitty|kitty-dropterm)$
|
|
}
|
|
|
|
|
|
# email tags
|
|
windowrule {
|
|
name = windowrule-13
|
|
tag = +email
|
|
match:class = ^([Tt]hunderbird|org.gnome.Evolution)$
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-14
|
|
tag = +email
|
|
match:class = ^(eu.betterbird.Betterbird)$
|
|
}
|
|
|
|
|
|
# project tags
|
|
windowrule {
|
|
name = windowrule-15
|
|
tag = +projects
|
|
match:class = ^(codium|codium-url-handler|VSCodium)$
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-16
|
|
tag = +projects
|
|
match:class = ^(VSCode|code-url-handler)$
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-17
|
|
tag = +projects
|
|
match:class = ^(jetbrains-.+)$ # JetBrains IDEs
|
|
}
|
|
|
|
|
|
# screenshare tags
|
|
windowrule {
|
|
name = windowrule-18
|
|
tag = +screenshare
|
|
match:class = ^(com.obsproject.Studio)$
|
|
}
|
|
|
|
|
|
# IM tags
|
|
# windowrule = tag +im, class:^([Dd]iscord|[Ww]ebCord|[Vv]esktop)$
|
|
windowrule {
|
|
name = windowrule-19
|
|
tag = +im
|
|
center = on
|
|
float = on
|
|
size = (monitor_w*0.6) (monitor_h*0.7)
|
|
match:class = ^([Ff]erdium)$
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-20
|
|
tag = +im
|
|
match:class = ^([Ww]hatsapp-for-linux)$
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-21
|
|
tag = +im
|
|
match:class = ^(ZapZap|com.rtosta.zapzap)$
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-22
|
|
tag = +im
|
|
match:class = ^(org.telegram.desktop|io.github.tdesktop_x64.TDesktop)$
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-23
|
|
tag = +im
|
|
match:class = ^(teams-for-linux)$
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-24
|
|
tag = +im
|
|
match:class = ^(im.riot.Riot|Element)$ # Element Matrix client
|
|
}
|
|
|
|
|
|
# game tags
|
|
windowrule {
|
|
name = windowrule-25
|
|
tag = +games
|
|
match:class = ^(gamescope)$
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-26
|
|
tag = +games
|
|
match:class = ^(steam_app_\d+)$
|
|
}
|
|
|
|
|
|
# gamestore tags
|
|
windowrule {
|
|
name = windowrule-27
|
|
tag = +gamestore
|
|
match:class = ^([Ss]team)$
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-28
|
|
tag = +gamestore
|
|
match:title = ^([Ll]utris)$
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-29
|
|
tag = +gamestore
|
|
match:class = ^(com.heroicgameslauncher.hgl)$
|
|
}
|
|
|
|
|
|
# file-manager tags
|
|
windowrule {
|
|
name = windowrule-30
|
|
tag = +file-manager
|
|
match:class = ^([Tt]hunar|org.gnome.Nautilus|[Pp]cmanfm-qt)$
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-31
|
|
tag = +file-manager
|
|
match:class = ^(app.drey.Warp)$
|
|
}
|
|
|
|
|
|
# wallpaper tags
|
|
windowrule {
|
|
name = windowrule-32
|
|
tag = +wallpaper
|
|
match:class = ^([Ww]aytrogen)$
|
|
}
|
|
|
|
|
|
# multimedia tags
|
|
windowrule {
|
|
name = windowrule-33
|
|
tag = +multimedia
|
|
match:class = ^([Aa]udacious)$
|
|
}
|
|
|
|
|
|
# multimedia-video tags
|
|
windowrule {
|
|
name = windowrule-34
|
|
tag = +multimedia_video
|
|
match:class = ^([Mm]pv|vlc)$
|
|
}
|
|
|
|
|
|
# settings tags
|
|
windowrule {
|
|
name = windowrule-35
|
|
tag = +settings
|
|
center = on
|
|
match:title = ^(ROG Control)$
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-36
|
|
tag = +settings
|
|
match:class = ^(wihotspot(-gui)?)$ # wifi hotspot
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-37
|
|
tag = +settings
|
|
match:class = ^([Bb]aobab|org.gnome.[Bb]aobab)$ # Disk usage analyzer
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-38
|
|
tag = +settings
|
|
match:class = ^(gnome-disks|wihotspot(-gui)?)$
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-39
|
|
tag = +settings
|
|
match:title = (Kvantum Manager)
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-40
|
|
tag = +settings
|
|
match:class = ^(file-roller|org.gnome.FileRoller)$ # archive manager
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-41
|
|
tag = +settings
|
|
match:class = ^(nm-applet|nm-connection-editor|blueman-manager)$
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-42
|
|
tag = +settings
|
|
center = on
|
|
match:class = ^(pavucontrol|org.pulseaudio.pavucontrol|com.saivert.pwvucontrol)$
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-43
|
|
tag = +settings
|
|
match:class = ^(qt5ct|qt6ct|[Yy]ad)$
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-44
|
|
tag = +settings
|
|
match:class = (xdg-desktop-portal-gtk)
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-45
|
|
tag = +settings
|
|
match:class = ^(org.kde.polkit-kde-authentication-agent-1)$
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-46
|
|
tag = +settings
|
|
match:class = ^([Rr]ofi)$
|
|
}
|
|
|
|
# Custom rule
|
|
windowrule {
|
|
name = windowrule-47
|
|
tile = on
|
|
match:class = ^([Cc]hromium)$
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-48
|
|
size = (monitor_w*0.25) (monitor_h*0.55)
|
|
float = on
|
|
match:class = ^(com.network.manager)$
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-49
|
|
workspace = special:nyx
|
|
match:class = ^([Vv]esktop|[Dd]iscord|[Ss]potify)$
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-255
|
|
size = (monitor_w*0.75) (monitor_h*0.80)
|
|
float = on
|
|
match:class = ^([Bb]itwarden)$
|
|
}
|
|
|
|
# viewer tags
|
|
windowrule {
|
|
name = windowrule-50
|
|
tag = +viewer
|
|
match:class = ^(gnome-system-monitor|org.gnome.SystemMonitor|io.missioncenter.MissionCenter)$ # system monitor
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-51
|
|
tag = +viewer
|
|
match:class = ^(evince)$ # document viewer
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-52
|
|
tag = +viewer
|
|
match:class = ^(eog|org.gnome.Loupe)$ # image viewer
|
|
}
|
|
|
|
|
|
# Some special override rules
|
|
windowrule {
|
|
name = windowrule-53
|
|
no_blur = on
|
|
opacity = 1.0
|
|
match:tag = multimedia_video*
|
|
}
|
|
|
|
|
|
|
|
|
|
# POSITION
|
|
# windowrule = center,floating:1 # warning, it cause even the menu to float and center.
|
|
windowrule {
|
|
name = windowrule-54
|
|
center = on
|
|
float = on
|
|
size = (monitor_w*0.65) (monitor_h*0.9)
|
|
match:tag = HyprFlux_Cheat*
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-55
|
|
center = on
|
|
float = on
|
|
match:class = ([Tt]hunar)
|
|
match:title = negative:(.*[Tt]hunar.*)
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-56
|
|
center = on
|
|
float = on
|
|
match:tag = HyprFlux-Settings*
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-57
|
|
center = on
|
|
match:title = ^(Keybindings)$
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-58
|
|
center = on
|
|
size = (monitor_w*0.6) (monitor_h*0.7)
|
|
match:class = ^([Ww]hatsapp-for-linux|ZapZap|com.rtosta.zapzap)$
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-59
|
|
move = ((monitor_w*0.61)) ((monitor_h*0.07))
|
|
float = on
|
|
size = (monitor_w*0.38) (monitor_h*0.38)
|
|
pin = on
|
|
keep_aspect_ratio = on
|
|
match:title = ^(Picture-in-Picture)$
|
|
}
|
|
|
|
#windowrule = move 72% 7%,title:^(Firefox)$
|
|
|
|
# windowrule to avoid idle for fullscreen apps
|
|
#windowrule = idleinhibit fullscreen, class:^(*)$
|
|
#windowrule = idleinhibit fullscreen, title:^(*)$
|
|
windowrule {
|
|
name = windowrule-60
|
|
idle_inhibit = fullscreen
|
|
match:fullscreen = 1
|
|
}
|
|
|
|
# Discord to workspace 3
|
|
windowrule = match:class ^([Vv]esktop|[Dd]iscord|[Ss]potify|[Pp]lexamp)$, workspace 3
|
|
windowrule = match:class ^([Pp]lexamp), size 20% 20%
|
|
|
|
# FLOAT
|
|
windowrule {
|
|
name = windowrule-75
|
|
float = on
|
|
opacity = 0.9 0.7
|
|
size = (monitor_w*0.7) (monitor_h*0.7)
|
|
match:tag = wallpaper*
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-76
|
|
float = on
|
|
opacity = 0.8 0.7
|
|
size = (monitor_w*0.7) (monitor_h*0.7)
|
|
match:tag = settings*
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-77
|
|
float = on
|
|
match:tag = viewer*
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-78
|
|
float = on
|
|
match:class = ([Zz]oom|onedriver|onedriver-launcher)$
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-79
|
|
float = on
|
|
match:class = (org.gnome.Calculator)
|
|
match:title = (Calculator)
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-80
|
|
float = on
|
|
match:class = ^(mpv|com.github.rafostar.Clapper)$
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-81
|
|
float = on
|
|
match:class = ^([Qq]alculate-gtk)$
|
|
}
|
|
|
|
#windowrule = float, class:^([Ww]hatsapp-for-linux|ZapZap|com.rtosta.zapzap)$
|
|
#windowrule = float, title:^(Firefox)$
|
|
windowrule {
|
|
name = windowrule-82
|
|
float = on
|
|
match:class = ^(fdm|freedownloadmanager)$
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-83
|
|
float = on
|
|
match:class = ^(proton-authenticator)$
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-84
|
|
float = on
|
|
match:class = ^([Ww]indscribe)$
|
|
}
|
|
|
|
|
|
|
|
# windowrule - ######### float popups and dialogue #######
|
|
windowrule {
|
|
name = windowrule-85
|
|
float = on
|
|
center = on
|
|
match:title = ^(Authentication Required)$
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-86
|
|
float = on
|
|
match:class = (codium|codium-url-handler|VSCodium)
|
|
match:title = negative:(.*codium.*|.*VSCodium.*)
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-87
|
|
float = on
|
|
match:class = ^(com.heroicgameslauncher.hgl)$
|
|
match:title = negative:(Heroic Games Launcher)
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-88
|
|
float = on
|
|
match:class = ^([Ss]team)$
|
|
match:title = negative:^([Ss]team)$
|
|
}
|
|
|
|
|
|
windowrule {
|
|
name = windowrule-89
|
|
float = on
|
|
size = (monitor_w*0.7) (monitor_h*0.6)
|
|
center = on
|
|
match:title = ^(Add Folder to Workspace)$
|
|
}
|
|
|
|
|
|
windowrule {
|
|
name = windowrule-90
|
|
float = on
|
|
size = (monitor_w*0.7) (monitor_h*0.6)
|
|
center = on
|
|
match:title = ^(Save As)$
|
|
}
|
|
|
|
|
|
windowrule {
|
|
name = windowrule-91
|
|
float = on
|
|
size = (monitor_w*0.7) (monitor_h*0.6)
|
|
match:initial_title = (Open Files)
|
|
}
|
|
|
|
|
|
windowrule {
|
|
name = windowrule-92
|
|
float = on
|
|
center = on
|
|
size = (monitor_w*0.16) (monitor_h*0.12)
|
|
match:title = ^(SDDM Background)$ #HyprFlux YAD for setting SDDM background
|
|
}
|
|
|
|
# END of float popups and dialogue #######
|
|
|
|
# OPACITY
|
|
# windowrule = opacity 0.9 0.7, tag:browser*
|
|
# windowrule = opacity 0.9 0.8, tag:projects*
|
|
# windowrule = opacity 0.94 0.86, tag:im*
|
|
# windowrule = opacity 0.94 0.86, tag:multimedia*
|
|
# windowrule = opacity 0.9 0.8, tag:file-manager*
|
|
windowrule {
|
|
name = windowrule-93
|
|
opacity = 0.8 0.7
|
|
match:tag = terminal*
|
|
}
|
|
|
|
# windowrule = opacity 0.82 0.75, tag:viewer*
|
|
windowrule {
|
|
name = windowrule-94
|
|
opacity = 0.8 0.7
|
|
match:class = ^(gedit|org.gnome.TextEditor|mousepad)$
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-95
|
|
opacity = 0.9 0.8
|
|
match:class = ^(deluge)$
|
|
}
|
|
|
|
windowrule {
|
|
name = windowrule-96
|
|
opacity = 0.9 0.8
|
|
match:class = ^(seahorse)$ # gnome-keyring gui
|
|
}
|
|
|
|
# windowrule = opacity 0.95 0.75, title:^(Picture-in-Picture)$
|
|
|
|
# SIZE
|
|
|
|
#windowrule = size 25% 25%, title:^(Firefox)$
|
|
|
|
# PINNING
|
|
#windowrule = pin,title:^(Firefox)$
|
|
|
|
# windowrule - extras
|
|
|
|
# BLUR & FULLSCREEN
|
|
|
|
#windowrule = bordercolor rgb(EE4B55) rgb(880808), fullscreen:1
|
|
#windowrule = bordercolor rgb(282737) rgb(1E1D2D), floating:1
|
|
#windowrule = opacity 0.8 0.8, pinned:1
|
|
|
|
|
|
|
|
# LAYER RULES
|
|
layerrule {
|
|
name = layerrule-1
|
|
blur = on
|
|
ignore_alpha = 0
|
|
match:namespace = rofi
|
|
}
|
|
|
|
layerrule {
|
|
name = layerrule-2
|
|
blur = on
|
|
ignore_alpha = 0
|
|
match:namespace = notifications
|
|
}
|
|
|
|
layerrule {
|
|
name = layerrule-3
|
|
blur = on
|
|
ignore_alpha = 0.5
|
|
match:namespace = quickshell:overview
|
|
}
|
|
|
|
|
|
#layerrule = ignorealpha 0.5, tag:notif*
|
|
|
|
#layerrule = ignorezero, class:^([Rr]ofi)$
|
|
#layerrule = blur, class:^([Rr]ofi)$
|
|
#layerrule = unset,class:^([Rr]ofi)$
|
|
#layerrule = ignorezero, <rofi>
|
|
|
|
#layerrule = ignorezero, overview
|
|
#layerrule = blur, overview
|