A read-only mirror of https://github.com/hyprwm/Hyprland
Find a file
Nikolai Nechaev 45ffaee093
tests: Fix more tests failing on CI (#14159)
* tests: Relax color management requirements in the colors test

This continues the work from d4dd299 (#14142):
- Fixes a missed check assuming a fixed value for `colorManagementPreset`
- Stricten checks to require that the expected keywords are present as json keys

* tests: Refactor `Tests::getAttribute` (was `Tests::getWindowAttribute`)

- Improve ergonomics by consistently handling attribute name;
- Remove 'window' from the function name, since it is compatible with
  other responses too;
- Document the function.

* tests: Fix solitary test assuming it knows the complete set of blockers

The test was failing on the CI because new blockers appeared,
which were not expected by the text. Fix the test, so that it
just checks the set of expected blockers is a subset of actual
blockers
2026-04-29 18:32:06 +01:00
.github config/lua: init lua config manager, use lua if available (#13817) 2026-04-26 15:16:36 +01:00
assets meson: drop 2025-11-17 08:54:47 +02:00
debug-tools debug-tools: add flame 2026-04-04 08:50:36 -04:00
docs [gha] build man pages 2026-04-26 14:16:54 +00:00
example examples: fix missing permissions entry in lua example config (#14177) 2026-04-27 22:39:16 +01:00
hyprctl config/lua: init lua config manager, use lua if available (#13817) 2026-04-26 15:16:36 +01:00
hyprpm build: add glaze dependency with FetchContent fallback (#13666) 2026-03-16 00:53:28 +02:00
hyprtester tests: Fix more tests failing on CI (#14159) 2026-04-29 18:32:06 +01:00
meta meta/stubs: update gesture hints to match new fields (#14195) 2026-04-28 18:08:14 +01:00
nix config/lua: init lua config manager, use lua if available (#13817) 2026-04-26 15:16:36 +01:00
protocols render/cm: various updates, remove old protocols (#12693) 2025-12-27 18:01:46 +01:00
scripts renderer: shader variants refactor (#13434) 2026-03-06 21:05:10 +00:00
src config: refresh window states on border_size changes (#14201) 2026-04-29 13:44:43 +01:00
start internal: silence compiler warnings about unused return values (#13997) 2026-04-05 14:45:27 +01:00
subprojects subprojects: bump tracy 2026-01-05 12:57:40 +01:00
systemd desktop: Update Exec command for UWSM Hyprland desktop entry (#12580) 2025-12-07 17:48:14 +00:00
tests config/lua: add ExpressionVec2, allow using a table for vec2 rules (#14197) 2026-04-28 18:10:25 +01:00
.clang-format touch up the clang format and format all files 2022-12-20 02:18:47 +00:00
.clang-format-ignore style/ci: apply clang-format and verify it in ci (#4039) 2023-12-06 22:54:56 +00:00
.clang-tidy config/lua: init lua config manager, use lua if available (#13817) 2026-04-26 15:16:36 +01:00
.gitattributes Initial commit 2022-03-16 20:49:02 +01:00
.gitignore debug-tools: add flame 2026-04-04 08:50:36 -04:00
.gitmodules Core: Move to aquamarine (#6608) 2024-07-21 13:09:54 +02:00
CMakeLists.txt cmakelists: search for any possible lua package name (#14204) 2026-04-29 14:31:48 +01:00
CODE_OF_CONDUCT.md doc: Add a CoC (#3366) 2023-09-20 19:38:44 +01:00
flake.lock [gha] Nix: update inputs 2026-04-25 21:17:24 +00:00
flake.nix treewide: alejandra -> nixfmt 2026-03-02 21:03:44 +02:00
hyprland.pc.in hyprland.pc.in: add src include flag 2026-03-13 22:57:49 +02:00
LICENSE LICENSE: update year 2026-01-11 16:13:52 +01:00
Makefile config/lua: init lua config manager, use lua if available (#13817) 2026-04-26 15:16:36 +01:00
README.md README: add link to CI from badge (#11085) 2025-07-18 21:13:56 +03:00
SECURITY.md SECURITY: init security policy 2025-04-27 00:07:00 +02:00
VERSION version: bump to 0.54.0 2026-02-27 18:03:19 +00:00

banner

Badge Workflow Badge License Badge Language Badge Pull Requests Badge Issues Badge Hi Mom


Hyprland is a 100% independent, dynamic tiling Wayland compositor that doesn't sacrifice on its looks.

It provides the latest Wayland features, is highly customizable, has all the eyecandy, the most powerful plugins, easy IPC, much more QoL stuff than other compositors and more...



Install

Quick Start

Configure

Contribute



Features

  • All of the eyecandy: gradient borders, blur, animations, shadows and much more
  • A lot of customization
  • 100% independent, no wlroots, no libweston, no kwin, no mutter.
  • Custom bezier curves for the best animations
  • Powerful plugin support
  • Built-in plugin manager
  • Tearing support for better gaming performance
  • Easily expandable and readable codebase
  • Fast and active development
  • Not afraid to provide bleeding-edge features
  • Config reloaded instantly upon saving
  • Fully dynamic workspaces
  • Two built-in layouts and more available as plugins
  • Global keybinds passed to your apps of choice
  • Tiling/pseudotiling/floating/fullscreen windows
  • Special workspaces (scratchpads)
  • Window groups (tabbed mode)
  • Powerful window/monitor/layer rules
  • Socket-based IPC
  • Native IME and Input Panels Support
  • and much more...


Gallery


Preview A


Preview B


Preview C



Special Thanks


wlroots - For powering Hyprland in the past

tinywl - For showing how 2 do stuff

Sway - For showing how 2 do stuff the overkill way

Vivarium - For showing how 2 do stuff the simple way

dwl - For showing how 2 do stuff the hacky way

Wayfire - For showing how 2 do some graphics stuff