Dynamic tiling Wayland compositor – Highly customizable, performant, and animated Hyprland v0.45.0 (released Dec 2025): Kernel 6.12+ support, improved NVIDIA compatibility, new animations, and Rust-based plugins. Runs on Fedora Workstation/Server with Wayland. Install via COPR repo. Config in ~/.config/hypr/hyprland.conf. All commands run in terminal (Konsole on Fedora).
1. Installation on Fedora
Task Command / Action Enable COPR repo sudo dnf copr enable solopasha/hyprlandInstall Hyprland sudo dnf install hyprland hyprland-pluginsInstall dependencies (Wayland, audio, etc.) sudo dnf install wayland-devel mesa-libEGL-devel libseat-devel hwdata-devel libgbm-devel libsystemd-devel libdrm-devel mesa-libgbm-devel libxkbcommon-devel libxkbcommon-x11-devel pixman-devel libinput-devel libcap-devel libxml2-devel libpng-devel wayland-protocols-devel libliftoff-devel cairo-devel pango-devel vulkan-devel vulkan-validation-layers-devel mesa-vulkan-devel glslang-devel libdisplay-info-devel libdecor-devel pipewire-jack-audio-connection-kit-devel libva-devel ffmpeg-devel libvdpau-devel hwloc-devel mesa-libOpenCL-devel opencl-headers-devel mesa-libd3d-devel spirv-headers-devel spirv-tools-devel vulkan-headers-devel vulkan-loader-devel vulkan-tools-devel vulkan-validation-layers-devel glslang-devel libva-devel libvdpau-devel hwloc-devel libX11-devel libxcb-devel libXext-devel libXrender-devel xcb-proto-devel libXfixes-devel libxkbfile-devel libXfont2-devel libXres-devel libXtst-devel libXdamage-devel libXrandr-devel libXi-devel libXcomposite-devel libXcursor-devel libXmu-devel libXpm-devel libXt-devel libXaw-devel libXmuu-devel libXScrnSaver-devel libXv-devel libXinerama-devel libXxf86vm-devel libXvMC-devel libXdmcp-devel libXau-devel xorg-x11-proto-devel libICE-devel libSM-devel libXtst-devel libXScrnSaver-devel libXvMC-devel libXinerama-devel libXxf86vm-devel libXdmcp-devel libXau-devel xorg-x11-proto-devel libICE-devel libSM-devel libXtst-devel libXScrnSaver-devel libXvMC-devel libXinerama-devel libXxf86vm-devel (long, but essential for full features)Install extras (clipboard, portal) sudo dnf install wl-clipboard xdg-desktop-portal-hyprlandStart Hyprland Logout → Select “Hyprland” session in GDM/Sway login manager First run Hyprland auto-creates ~/.config/hypr/hyprland.conf – edit as needed
Note : For NVIDIA: Install proprietary drivers first (sudo dnf install akmod-nvidia). Fedora 43+ has better Wayland support. If issues, add exec-once = hyprctl setcursor Adwaita 24 to config.
2. Updating Hyprland
Task Command Update system & Hyprland sudo dnf upgrade --refresh (includes COPR packages)Check current version hyprctl versionRebuild if needed (plugins) sudo dnf reinstall hyprland-pluginsClean cache sudo dnf clean allRollback (if broken) sudo dnf history undo last
Pro Tip : Subscribe to COPR notifications or check GitHub releases. For bleeding-edge: Build from source (clone repo, sudo dnf install cmake gcc-c++ libstdc++-devel pkgconfig dbus-devel libevdev-devel libev-devel hidapi-devel libgbm-devel libxkbcommon-devel libGLESv2-devel vulkan-headers seatd-devel systemd-devel libdrm-devel wayland-devel wayland-protocols-devel cairo-devel pango-devel libjpeg-turbo-devel libwebp-devel, then make all && sudo make install).
3. Configuration Basics
Task Command / Action Edit config nano ~/.config/hypr/hyprland.conf (or vim/emacs)Reload config hyprctl reload (or Super + Shift + R)Set monitor Add to config: monitor=DP-1,1920x1080@144,0x0,1 (resolution@refresh,xpos ypos,scale) Set wallpaper Add: exec-once = hyprpaper & (install hyprpaper first) → Edit ~/.config/hypr/hyprpaper.conf Add keybind Example: bind = SUPER, T, exec, kitty Environment vars Add to config: env = XCURSOR_SIZE,24 (for cursor size) Gestures (touchpad) Add: gestures { workspace_swipe = on } Backup config cp ~/.config/hypr/hyprland.conf ~/hypr-backup.conf
Config Structure : Sections like general {}, input {}, binds {}, animations {}, decoration {}. Use # for comments. Full template on GitHub wiki.
4. Default Shortcuts (Super Key = Windows Key)
Window Management
Action Shortcut Open terminal Super + Return Close window Super + Q Toggle fullscreen Super + F Toggle floating Super + Space Move focus Super + Arrow Keys (or HJKL) Resize window Super + Ctrl + Arrow Keys Switch workspace Super + 1-0 (workspaces 1-10) Move window to workspace Super + Shift + 1-0 Cycle windows Super + Tab
System
Action Shortcut Reload config Super + Shift + R Lock screen Super + L (if hyprlock installed) Logout Super + Shift + E Screenshot (region) Super + Shift + S (with grim/slurp) Toggle touchpad Super + Shift + T
Mouse
Action Shortcut Move window Super + Left Click Drag Resize window Super + Right Click Drag
Customize : Edit binds {} in config. Example: bind = SUPER, P, exec, rofi -show drun for app launcher.
5. Adding Waybar (Status Bar)
Task Command / Action Install Waybar sudo dnf install waybarConfig Waybar mkdir -p ~/.config/waybar → cp /etc/xdg/waybar/* ~/.config/waybar/ → Edit ~/.config/waybar/config.jsonc and style.cssAuto-start in Hyprland Add to hyprland.conf: exec-once = waybar Reload Waybar pkill waybar && waybar &Modules (example) In config.jsonc: "modules-left": ["hyprland/workspaces", "cpu", "memory"] Themes Install fonts: sudo dnf install fontawesome-fonts → Customize CSS
Waybar Tips : For Hyprland integration, add "hyprland/window" module. Use waybar --bar main-bar for testing.
6. Plugins & Extensions
Action Command Install official plugins sudo dnf install hyprland-pluginsEnable plugin (e.g., hyprbars) Add to config: plugin { hyprbars { bar_height = 30 } } List loaded plugins hyprctl pluginsThird-party (Rust) Clone repo → cargo build --release → Add path to config: plugin = /path/to/libplugin.so
7. Troubleshooting
Issue Command No audio sudo dnf install pipewire-pulse → RestartCursor invisible Add to config: env = XCURSOR_THEME,Adwaita → env = XCURSOR_SIZE,24 NVIDIA flickering Add: env = WLR_NO_GPU,1 (disable hardware cursors) Log errors journalctl -u hyprland or Hyprland (debug mode)Reset config rm ~/.config/hypr/hyprland.conf → Restart
8. One-Liners
# Quick update
sudo dnf upgrade hyprland --refresh && hyprctl reload
# Backup & edit config
cp ~/.config/hypr/hyprland.conf{,.bak} && nano ~/.config/hypr/hyprland.conf
# Test Waybar
waybar -c ~/.config/waybar/config.jsonc -s ~/.config/waybar/style.css
# Screenshot full screen
grim ~/Pictures/screenshot-$(date +%Y%m%d-%H%M%S).png
# Toggle animations off
hyprctl keyword animations:enabled 0
9. Useful Tools to Install
sudo dnf install waybar hyprpaper hyprlock grim slurp rofi-wayland wl-clipboard pavucontrol
10. Hyprland Resources
Official Docs: https://wiki.hyprland.org GitHub: https://github.com/hyprwm/Hyprland Fedora COPR: https://copr.fedorainfracloud.org/coprs/solopasha/hyprland
# Check COPR status
dnf copr list | grep hyprland
Pro Tip : For Fedora, use xdg-desktop-portal-hyprland for screen sharing. Customize animations in animations {} for buttery smooth UX. Join r/hyprland for configs.