[Sync] adopt unified stow layout from the private repo
Mirrors the private dots tree at 900bdda: one shared base plus per-host overlays, replacing the old flat .config/ layout (last synced 2026-06-28). - packages: common/ gui/ wm/ lw/ fl/ + install.sh and bin/ tooling (dotsync, reconcile-hyde.sh) - new README (layout, deploy order, HyDE dependency), plus ToDo.md and HYDE-UPDATE.md - current HyDE waybar rig (layouts/, cava), pi agent extensions, claude/ config, tmux, presenterm, aichat roles - drops stale duplicates and generated cruft that should never have been tracked: the second top-level .pi/ copy, btop.log, zellij config.kdl.bak, fish_variables, nvim codecompanion.lua - .pi/agent/auth.json is gitignored now; auth.json.example ships instead - fl/ and wm/ hypr themes/ stay untracked (HyDE-generated per machine, per the root .gitignore)
This commit is contained in:
@@ -0,0 +1,145 @@
|
||||
|
||||
# █░█░█ █ █▄░█ █▀▄ █▀█ █░█░█ █▀█ █░█ █░░ █▀▀ █▀
|
||||
# ▀▄▀▄▀ █ █░▀█ █▄▀ █▄█ ▀▄▀▄▀ █▀▄ █▄█ █▄▄ ██▄ ▄█
|
||||
|
||||
# See https://wiki.hypr.land/Configuring/Window-Rules/
|
||||
|
||||
#? ------- WINDOWRULES_HYPRLAND_V_0_53 COMPATIBLE ----------------
|
||||
# This Config is compatible with windowrules changes in Hyprland v0.53+
|
||||
# Any future breaking changes disables this block and notifies the user to update.
|
||||
# User template files will be provided in $XDG_DATA_HOME/hyde/templates/hypr/windowrules.conf for manual update.
|
||||
|
||||
# hyprlang if WINDOWRULES_HYPRLAND_V_0_53
|
||||
|
||||
# idle_inhibit rules
|
||||
windowrule = idle_inhibit fullscreen, match:class ^(.*celluloid.*)$|^(.*mpv.*)$|^(.*vlc.*)$
|
||||
windowrule = idle_inhibit fullscreen, match:class ^(.*[Ss]potify.*)$
|
||||
windowrule = idle_inhibit fullscreen, match:class ^(.*LibreWolf.*)$|^(.*floorp.*)$|^(.*brave-browser.*)$|^(.*firefox.*)$|^(.*chromium.*)$|^(.*zen.*)$|^(.*vivaldi.*)$
|
||||
|
||||
# Picture-in-Picture
|
||||
windowrule {
|
||||
name = hyde_picture_in_picture
|
||||
match:title = ^([Pp]icture[-\s]?[Ii]n[-\s]?[Pp]icture)(.*)$
|
||||
tag = +picture-in-picture
|
||||
tag = +hyde_picture_in_picture
|
||||
float = true
|
||||
keep_aspect_ratio = true
|
||||
move = (monitor_w*0.73) (monitor_h*0.72)
|
||||
size = (monitor_w*0.25) (monitor_h*0.25)
|
||||
pin = true
|
||||
}
|
||||
|
||||
windowrule = opacity 0.90 $& 0.90 $& 1,match:class ^(firefox)$
|
||||
windowrule = opacity 0.90 $& 0.90 $& 1,match:class ^(zen)$
|
||||
windowrule = opacity 0.90 $& 0.90 $& 1,match:class ^(brave-browser)$
|
||||
windowrule = opacity 0.80 $& 0.80 $& 1,match:class ^(code-oss)$
|
||||
windowrule = opacity 0.80 $& 0.80 $& 1,match:class ^([Cc]ode)$
|
||||
windowrule = opacity 0.80 $& 0.80 $& 1,match:class ^(code-url-handler)$
|
||||
windowrule = opacity 0.80 $& 0.80 $& 1,match:class ^(code-insiders-url-handler)$
|
||||
windowrule = opacity 0.80 $& 0.80 $& 1,match:class ^(kitty)$
|
||||
windowrule = opacity 0.80 $& 0.80 $& 1,match:class ^(org.kde.dolphin)$
|
||||
windowrule = opacity 0.80 $& 0.80 $& 1,match:class ^(org.kde.ark)$
|
||||
windowrule = opacity 0.80 $& 0.80 $& 1,match:class ^(nwg-look)$
|
||||
windowrule = opacity 0.80 $& 0.80 $& 1,match:class ^(qt5ct)$
|
||||
windowrule = opacity 0.80 $& 0.80 $& 1,match:class ^(qt6ct)$
|
||||
windowrule = opacity 0.80 $& 0.80 $& 1,match:class ^(kvantummanager)$
|
||||
windowrule = opacity 0.80 $& 0.70 $& 1,match:class ^(org.pulseaudio.pavucontrol)$
|
||||
windowrule = opacity 0.80 $& 0.70 $& 1,match:class ^(blueman-manager)$
|
||||
windowrule = opacity 0.80 $& 0.70 $& 1,match:class ^(nm-applet)$
|
||||
windowrule = opacity 0.80 $& 0.70 $& 1,match:class ^(nm-connection-editor)$
|
||||
windowrule = opacity 0.80 $& 0.70 $& 1,match:class ^(hyprpolkitagent)$
|
||||
windowrule = opacity 0.80 $& 0.70 $& 1,match:class ^(org.freedesktop.impl.portal.desktop.gtk)$
|
||||
windowrule = opacity 0.80 $& 0.70 $& 1,match:class ^(org.freedesktop.impl.portal.desktop.hyprland)$
|
||||
windowrule = opacity 0.70 $& 0.70 $& 1,match:class ^([Ss]team)$
|
||||
windowrule = opacity 0.70 $& 0.70 $& 1,match:class ^(steamwebhelper)$
|
||||
windowrule = opacity 0.70 $& 0.70 $& 1,match:class ^([Ss]potify)$
|
||||
windowrule = opacity 0.70 $& 0.70 $& 1,match:initial_title ^(Spotify Free)$
|
||||
windowrule = opacity 0.70 $& 0.70 $& 1,match:initial_title ^(Spotify Premium)$
|
||||
windowrule = opacity 1.00 $& 1.00 $& 1,match:class ^(blender)$
|
||||
|
||||
windowrule = opacity 0.90 0.90,match:class ^(com.github.rafostar.Clapper)$ # Clapper-Gtk
|
||||
windowrule = opacity 0.80 0.80,match:class ^(com.github.tchx84.Flatseal)$ # Flatseal-Gtk
|
||||
windowrule = opacity 0.80 0.80,match:class ^(hu.kramo.Cartridges)$ # Cartridges-Gtk
|
||||
windowrule = opacity 0.80 0.80,match:class ^(com.obsproject.Studio)$ # Obs-Qt
|
||||
windowrule = opacity 0.80 0.80,match:class ^(gnome-boxes)$ # Boxes-Gtk
|
||||
windowrule = opacity 0.80 0.80,match:class ^(vesktop)$ # Vesktop
|
||||
windowrule = opacity 0.80 0.80,match:class ^(discord)$ # Discord-Electron
|
||||
windowrule = opacity 0.80 0.80,match:class ^(WebCord)$ # WebCord-Electron
|
||||
windowrule = opacity 0.80 0.80,match:class ^(ArmCord)$ # ArmCord-Electron
|
||||
windowrule = opacity 0.80 0.80,match:class ^(app.drey.Warp)$ # Warp-Gtk
|
||||
windowrule = opacity 0.80 0.80,match:class ^(net.davidotek.pupgui2)$ # ProtonUp-Qt
|
||||
windowrule = opacity 0.80 0.80,match:class ^(yad)$ # Protontricks-Gtk
|
||||
windowrule = opacity 0.80 0.80,match:class ^(Signal)$ # Signal-Gtk
|
||||
windowrule = opacity 0.80 0.80,match:class ^(io.github.alainm23.planify)$ # planify-Gtk
|
||||
windowrule = opacity 0.80 0.80,match:class ^(io.gitlab.theevilskeleton.Upscaler)$ # Upscaler-Gtk
|
||||
windowrule = opacity 0.80 0.80,match:class ^(com.github.unrud.VideoDownloader)$ # VideoDownloader-Gtk
|
||||
windowrule = opacity 0.80 0.80,match:class ^(io.gitlab.adhami3310.Impression)$ # Impression-Gtk
|
||||
windowrule = opacity 0.80 0.80,match:class ^(io.missioncenter.MissionCenter)$ # MissionCenter-Gtk
|
||||
windowrule = opacity 0.80 0.80,match:class ^(io.github.flattool.Warehouse)$ # Warehouse-Gtk
|
||||
|
||||
windowrule = float true,match:class ^(Signal)$ # Signal-Gtk
|
||||
windowrule = float true,match:class ^(com.github.rafostar.Clapper)$ # Clapper-Gtk
|
||||
windowrule = float true,match:class ^(app.drey.Warp)$ # Warp-Gtk
|
||||
windowrule = float true,match:class ^(net.davidotek.pupgui2)$ # ProtonUp-Qt
|
||||
windowrule = float true,match:class ^(yad)$ # Protontricks-Gtk
|
||||
windowrule = float true,match:class ^(eog)$ # Imageviewer-Gtk
|
||||
windowrule = float true,match:class ^(io.github.alainm23.planify)$ # planify-Gtk
|
||||
windowrule = float true,match:class ^(io.gitlab.theevilskeleton.Upscaler)$ # Upscaler-Gtk
|
||||
windowrule = float true,match:class ^(com.github.unrud.VideoDownloader)$ # VideoDownloader-Gkk
|
||||
windowrule = float true,match:class ^(io.gitlab.adhami3310.Impression)$ # Impression-Gtk
|
||||
windowrule = float true,match:class ^(io.missioncenter.MissionCenter)$ # MissionCenter-Gtk
|
||||
windowrule = float true,match:title ^(Friends List)$ # Steam Friends List
|
||||
windowrule = float true,match:title ^(Steam Settings)$ # Steam Settings
|
||||
windowrule = float true,match:initial_title ^(Image Editor)$,match:class ^(blender)$ # Blender Render
|
||||
windowrule = size (monitor_w*0.5) (monitor_h*0.5),match:initial_title ^(Image Editor)$,match:class ^(blender)$
|
||||
windowrule = float true, match:initial_title ^(Ghidra: NO ACTIVE PROJECT) #Ghidra Project manager
|
||||
|
||||
# workaround for jetbrains IDEs dropdowns/popups cause flickering
|
||||
windowrule = no_initial_focus true,match:class ^(.*jetbrains.*)$,match:title ^(win[0-9]+)$
|
||||
|
||||
# █░░ ▄▀█ █▄█ █▀▀ █▀█ █▀█ █░█ █░░ █▀▀ █▀
|
||||
# █▄▄ █▀█ ░█░ ██▄ █▀▄ █▀▄ █▄█ █▄▄ ██▄ ▄█
|
||||
|
||||
layerrule = blur true,match:namespace rofi
|
||||
layerrule = ignore_alpha 0,match:namespace rofi
|
||||
layerrule = blur true,match:namespace notifications
|
||||
layerrule = ignore_alpha 0,match:namespace notifications
|
||||
layerrule = blur true,match:namespace swaync-notification-window
|
||||
layerrule = ignore_alpha 0,match:namespace swaync-notification-window
|
||||
layerrule = blur true,match:namespace swaync-control-center
|
||||
layerrule = ignore_alpha 0,match:namespace swaync-control-center
|
||||
layerrule = blur true,match:namespace logout_dialog
|
||||
|
||||
# █▀▄ █▀█ ▀█▀ █▀ █▀▀ █░█ █▀ ▀█▀ █▀█ █▀▄▀█
|
||||
# █▄▀ █▄█ ░█░ ▄█ █▄▄ █▄█ ▄█ ░█░ █▄█ █░▀░█
|
||||
# dots-only rules preserved from the legacy windowrules.conf (converted to v0.53 syntax)
|
||||
|
||||
# float utility / settings / dialog windows
|
||||
windowrule = float true,match:class ^(org.kde.dolphin)$,match:title ^(Progress Dialog — Dolphin)$
|
||||
windowrule = float true,match:class ^(org.kde.dolphin)$,match:title ^(Copying — Dolphin)$
|
||||
windowrule = float true,match:title ^(About Mozilla Firefox)$
|
||||
windowrule = float true,match:class ^(firefox)$,match:title ^(Library)$
|
||||
windowrule = float true,match:class ^(kitty)$,match:title ^(top)$
|
||||
windowrule = float true,match:class ^(kitty)$,match:title ^(btop)$
|
||||
windowrule = float true,match:class ^(kitty)$,match:title ^(htop)$
|
||||
windowrule = float true,match:class ^(vlc)$
|
||||
windowrule = float true,match:class ^(kvantummanager)$
|
||||
windowrule = float true,match:class ^(qt5ct)$
|
||||
windowrule = float true,match:class ^(qt6ct)$
|
||||
windowrule = float true,match:class ^(nwg-look)$
|
||||
windowrule = float true,match:class ^(org.kde.ark)$
|
||||
windowrule = float true,match:class ^(org.pulseaudio.pavucontrol)$
|
||||
windowrule = float true,match:class ^(blueman-manager)$
|
||||
windowrule = float true,match:class ^(nm-applet)$
|
||||
windowrule = float true,match:class ^(nm-connection-editor)$
|
||||
windowrule = float true,match:class ^(org.kde.polkit-kde-authentication-agent-1)$
|
||||
windowrule = float true,match:class ^(xdg-desktop-portal-gtk)$
|
||||
|
||||
# common file-dialog modals
|
||||
windowrule = float true,match:title ^(Open)$
|
||||
windowrule = float true,match:title ^(Choose Files)$
|
||||
windowrule = float true,match:title ^(Save As)$
|
||||
windowrule = float true,match:title ^(Confirm to replace files)$
|
||||
windowrule = float true,match:title ^(File Operation Progress)$
|
||||
|
||||
# hyprlang endif
|
||||
Reference in New Issue
Block a user