Hyprland Window Manager ======================= Hyprland - a dynamic tiling Wayland compositor Date: February 7, 2026 [Hyprland](https://hyprland.org/) is a dynamic tiling Wayland compositor that doesn't sacrifice on its looks. It provides smooth animations, great functionality, and an easy-to-use configuration. ## Features - **Dynamic tiling** - Windows tile automatically with no manual layouts - **Wayland native** - Modern protocol, better performance - **Smooth animations** - Beautiful window transitions - **Layer shell** - Status bars and notifications work properly - **XWayland** - Run X11 applications seamlessly ## Setup ### Installation On Arch Linux: ```bash sudo pacman -S hyprland ``` On other distributions, see the [official installation guide](https://wiki.hyprland.org/Getting-Started/Installation/). ### Configuration Config files live in `~/.config/hypr/`: - `hyprland.conf` - Main configuration - `monitors.conf` - Monitor layouts and resolutions - `bindings.conf` - Key bindings - `autostart.conf` - Applications to start on launch ## Window Rules Applications automatically go to specific workspaces: ```bash # Workspace assignments windowrule = workspace 1, match:class ^(steam)$ windowrule = workspace 4, match:class ^(kitty)$ windowrule = workspace 5, match:class ^(firefox)$ windowrule = workspace 5, match:class ^(brave-browser)$ windowrule = workspace 6, match:class ^(signal)$ windowrule = workspace 8, match:class ^(brave-chat.openai.com__-Default)$ windowrule = workspace 9, match:class ^(org.prismlauncher.PrismLauncher)$ # Float certain windows windowrule = float on, match:class ^(org.pulseaudio.pavucontrol)$ windowrule = float on, match:class ^(xdg-desktop-portal-gtk)$ ``` ## Workspaces Workspaces are organized by function: | Workspace | Purpose | |-----------|---------| | 1 | Steam/Games | | 2 | Graphics (Krita) | | 3 | General | | 4 | Terminals | | 5 | Web Browsers | | 6 | Chat (Signal) | | 7 | Media | | 8 | Web Apps (ChatGPT, YouTube) | | 9 | Minecraft | | 10 | System | ## Default Key Bindings Hyprland uses a `SUPER` (Windows/Super) key modifier: ### Window Management | Key | Action | |-----|--------| | `SUPER+Q` | Close window | | `SUPER+Shift+Q` | Force kill window | | `SUPER+T` | Toggle floating | | `SUPER+F` | Toggle fullscreen | | `SUPER+J` | Toggle split direction | ### Navigation | Key | Action | |-----|--------| | `SUPER+arrow keys` | Change window focus | | `SUPER+Shift+arrow keys` | Move window | | `SUPER+1-0` | Switch to workspace | | `SUPER+Shift+1-0` | Move window to workspace | ### Mouse - `SUPER+LMB` - Move window - `SUPER+RMB` - Resize window ## Scripts Custom scripts in `~/.config/hypr/scripts/`: ### terminal.sh Launch terminal with specific rules: ```bash #!/usr/bin/env bash kitty --class=kitty ``` ### focus_or_launch.sh Focus a window if it exists, otherwise launch it: ```bash #!/usr/bin/env bash # Usage: focus_or_launch <class> <command> ``` ### toggle_waybar.sh Toggle the status bar visibility: ```bash #!/usr/bin/env bash killall -SIGUSR1 waybar ``` ## Autostart Applications started automatically: ```bash # From autostart.conf exec-once = waybar exec-once = hyprpaper exec-once = mako # Notification daemon ``` ## Environment Variables Wayland-specific settings: ```bash env = XDG_CURRENT_DESKTOP,Hyprland env = XDG_SESSION_TYPE,wayland env = XDG_SESSION_DESKTOP,Hyprland ``` ## Troubleshooting ### Applications won't launch Check if they're trying to use X11: ```bash # Force XWayland for problematic apps windowrule = xwayland, match:class ^(app-name)$ ``` ### Screen sharing not working Ensure xdg-desktop-portal-hyprland is installed: ```bash sudo pacman -S xdg-desktop-portal-hyprland ``` ## See Also <div class="embed-card"> <a href="/awesome/" class="embed-card-link"> <div class="embed-card-content"> <div class="embed-card-title">Awesome Window Manager</div> <div class="embed-card-description">Awesome WM - a highly configurable X11 window manager</div> <div class="embed-card-meta">Feb 7, 2026</div> </div> </a> </div> <div class="embed-card"> <a href="/waybar/" class="embed-card-link"> <div class="embed-card-content"> <div class="embed-card-title">Waybar</div> <div class="embed-card-description">Waybar - a highly customizable Wayland bar</div> <div class="embed-card-meta">Feb 7, 2026</div> </div> </a> </div> <div class="embed-card embed-card-external"> <a href="https://wiki.hyprland.org/" class="embed-card-link" target="_blank" rel="noopener noreferrer"> <div class="embed-card-content"> <div class="embed-card-title">Hyprland Wiki</div> <div class="embed-card-description">The documentation for Hyprland.</div> <div class="embed-card-meta">wiki.hyprland.org</div> </div> </a> </div>