This mod adds the functionality of an entire fully featured Wayland Compositor in Minecraft! Launch apps and open windows completely within your Minecraft world. Drag and drop data from one window to another. Pin a video player to your hud. The choice is yours.
IMPORTANT: This mod only supports Linux! You can install it on MacOS and Windows but you won't have any of the features.
Also note: waylandcraft is client-side only (only you can see your own windows) but servers may install it to allow players to have their window items on the server.
For more information and common issue fixes check out the Github!

All Versions
+ Add Version## Detached cursor capture mode
The settings now have an option called "Detach cursor" which makes it such that when
you are in keyboard capture mode and hover over a window, your mouse cursor now detaches and you can move it over the window like in a normal desktop environment instead of it still turning your camera around in game. This is useful for a lot of FPS games that frequently lock and unlock the mouse.
## Single-axis window grabbing
When moving a window around by grabbing its title bar, you can now hold down CTRL to make it snap to only move it around horizontally or vertically on its plane. This is useful for aligning windows on a wall.
## Fixes
- The game no longer crashes when the render node could not be queried and now falls back to basic functionality (no dmabuf, only shared memory) instead
- Fixed potential texture memory leaks
- Fix updates being triggered too often when using mods that render multiple game views
## Technical changes (for nerds)
The graphics code for EGL has been rewritten from Rust to Java in a way that
is more extensible for different graphics APIs and backends.
- Full Changelog**: https://github.com/EVV1E/waylandcraft/compare/v2.0.3...v2.1.0
## Fix glitchy framebuffer issues
On some GPUs / drivers the earlier code sometimes produced weird artifacts. That is now fixed.
## Window antialiasing is now enabled by default
The setting is now removed in the settings menu. Unless Iris shaders are in use, antialiasing is always enabled.
## Fix items taken away after respawn
After a player died, an issue in the server code would permanently take away their window items. That is now fixed.
- Full Changelog**: https://github.com/EVV1E/waylandcraft/compare/v2.0.2...v2.0.3
## Iris shader support
The mod now supports Iris shaders! This means you can now see your windows within the world even while shaders are enabled.
Shaders in Minecraft change a ton of internal things about how the rendering process works. As such waylandcraft has to rely on existing Minecraft functionality for in-world windows. This also means that there are some downsides to the window rendering while shaders are enabled, namely anti-aliasing does not work which can make text in windows hard to read and you might notice black bars on the outside of the windows due to how the Minecraft cutout shaders work. Still, this is a relatively low cost if it means one can use the mod even with shaders enabled.
Note: I recommend you disable Temporal Anti-Aliasing (TAA) in your shader pack if it has that feature because it often tends to make the windows look like they have burn-in when something changes on-screen.
## Improved window to window snapping
When holding down CTRL while moving a window it snaps to other windows in the world. This functionality has had some quality of life improvements and now also allows you to snap a window to the corner of another, not just the edges.
## What's Changed
- Improve window snap by @EVV1E in https://github.com/EVV1E/waylandcraft/pull/173
- Iris shader support by @EVV1E in https://github.com/EVV1E/waylandcraft/pull/174
- Full Changelog**: https://github.com/EVV1E/waylandcraft/compare/v2.0.1...v2.0.2
## Fallback mode for non-Linux platforms
The mod still only fully supports Linux but with this hotpatch the game will now be able to launch on Windows or MacOS but with all of the features disabled. This means you can install the mod to play on servers that have this mod even if you are on an unsupported platform.
## New window grab snapping behavior
When holding ALT while moving a window it'll snap to walls like before but now it smoothly rotates when snapped against the floor or a ceiling. The CTRL+ALT snapping mode now snaps to half blocks instead of blocks meaning that you can snap windows to the corner or edges of blocks.
## Terminal apps from the app launcher
A new setting now exists in the settings menu where you can write your terminal executable of choice and when launching terminal apps with desktop entries they now get correctly started within your terminal.
## What's Changed
- Add support for directly launching terminal apps by @EVV1E in https://github.com/EVV1E/waylandcraft/pull/166
- Change window grab snapping behavior by @EVV1E in https://github.com/EVV1E/waylandcraft/pull/167
- Implement unsupported platform fallback mode by @EVV1E in https://github.com/EVV1E/waylandcraft/pull/171
- Full Changelog**: https://github.com/EVV1E/waylandcraft/compare/v2.0.0...v2.0.1
And here we are again! This release includes two major changes to the mod both internally and for users.
## Server items
Even though multiplayer is not supported, servers may now choose to install waylandcraft to allow players to use their own window items for themselves on the server just like in singleplayer.
## xwayland-satellite integration
The compositor now has integrated xwayland-satellite support. What this means is that if xwayland-satellite is installed, the compositor will automatically start it at game launch. All launched applications are now directly given the
DISPLAY environment variable and you can now start X11 apps like Steam directly from the app launcher!## What's Changed
- Support for items on servers by @EVV1E in https://github.com/EVV1E/waylandcraft/pull/160
- Add xwayland-satellite integration by @EVV1E in https://github.com/EVV1E/waylandcraft/pull/162
- Full Changelog**: https://github.com/EVV1E/waylandcraft/compare/v1.1.1...v2.0.0
This is a small hotfix release addressing some issues with inter-GPU pixel buffers (dmabuf)
Additionally there is now an option to automatically focus windows when hovered and a change to mouse scrolling in applications which should fix scrolling not working in some apps.
## What's Changed
- Implement focus on hover by @EVV1E in https://github.com/EVV1E/waylandcraft/pull/144
- Fix mouse scroll by @er2off in https://github.com/EVV1E/waylandcraft/pull/145
- Fix incorrect dmabuf access by @EVV1E in https://github.com/EVV1E/waylandcraft/pull/149
## New Contributors
- @er2off made their first contribution in https://github.com/EVV1E/waylandcraft/pull/145
- Full Changelog**: https://github.com/EVV1E/waylandcraft/compare/v1.1.0...v1.1.1
Here we are again. This has been an eventful time for waylandcraft. A lot has changed: Besides the **various bug fixes** there are also some **major changes to the internals** of the mod and **new features**.
New features include a lot more useful interactions when holding windows!
- You can now scroll while grabbing a window to change the distance from the camera
- When holding a window you can press Alt to snap to block surfaces, hold down both Alt and Control for block center snapping
- Or while holding a window only press Control and it will snap to the edges of other windows
Also new: A settings screen! Right now there are only two options but with many more on the way.
You can now toggle **Window Antialiasing** which makes text appear more readable and less glitchy from far away.
There is also now an option to **change the global scale of windows** by how many pixels there should be per block.
And for the (maybe three in total) arm users: The mod now also includes the native library for **arm64**. Feedback welcome!
Right now the mod is still built against Ubuntu 22.04 with glibc, so sorry to the musl users. Right now you'll still have to compile
the mod yourself.
## What's Changed
- Remove unused EGL config query by @EVV1E in https://github.com/EVV1E/waylandcraft/pull/59
- Implement grab window scrolling by @tinkoshk in https://github.com/EVV1E/waylandcraft/pull/56
- Fix render node query when missing EGL extension by @EVV1E in https://github.com/EVV1E/waylandcraft/pull/73
- Add translations for keybinds/keybinds category by @mafien0 in https://github.com/EVV1E/waylandcraft/pull/76
- Fix crash when adding particles by @EVV1E in https://github.com/EVV1E/waylandcraft/pull/89
- Fix game window desktop bleed-through by @EVV1E in https://github.com/EVV1E/waylandcraft/pull/93
- Fix dmabuf handling issues by @EVV1E in https://github.com/EVV1E/waylandcraft/pull/102
- Downgrade wl_seat global to 8, change key repeat delay by @EVV1E in https://github.com/EVV1E/waylandcraft/pull/106
- Fix some issues relating to wl object versioning by @EVV1E in https://github.com/EVV1E/waylandcraft/pull/108
- Implement settings screen by @EVV1E in https://github.com/EVV1E/waylandcraft/pull/90
- RGSS antialiasing by @tinkoshk in https://github.com/EVV1E/waylandcraft/pull/64
- Fix missing pointer frame event on relative motion by @EVV1E in https://github.com/EVV1E/waylandcraft/pull/115
- Item manager: Only remove item when toplevel gone by @EVV1E in https://github.com/EVV1E/waylandcraft/pull/116
- Add wm screen capture mode for fullscreen and ESC by @EVV1E in https://github.com/EVV1E/waylandcraft/pull/121
- Implement window world snapping by @EVV1E in https://github.com/EVV1E/waylandcraft/pull/125
- Implement window block center snapping by @EVV1E in https://github.com/EVV1E/waylandcraft/pull/131
- Implement window to window edge snapping by @EVV1E in https://github.com/EVV1E/waylandcraft/pull/134
- Add support for multiple native libraries in releases by @EVV1E in https://github.com/EVV1E/waylandcraft/pull/80
- Update
jnicrate to 0.22 by @Zorbatron in https://github.com/EVV1E/waylandcraft/pull/39 - Fix typo in README for xwayland-satellite command by @rodrgds in https://github.com/EVV1E/waylandcraft/pull/142
## New Contributors
- @mafien0 made their first contribution in https://github.com/EVV1E/waylandcraft/pull/76
- @Zorbatron made their first contribution in https://github.com/EVV1E/waylandcraft/pull/39
- @rodrgds made their first contribution in https://github.com/EVV1E/waylandcraft/pull/142
- Full Changelog**: https://github.com/EVV1E/waylandcraft/compare/v1.0.1...v1.1.0
This release fixes a lot of rendering related bugs.
Also: The release jar file is now compiled for Ubuntu 22.04. This should be compatible with most linux distros.
## Changes
- Adds GDK_BACKEND enviroment variable to fix some GTK applications by @Pre-Suffix in https://github.com/EVV1E/waylandcraft/pull/23
- Fix shm assuming tighly packed buffer
- Fix memory leak in WindowFramebuffer by @mysterymarshak in https://github.com/EVV1E/waylandcraft/pull/30
- add a simple build script by @Euro20179 in https://github.com/EVV1E/waylandcraft/pull/34
- Fix floating point precision jitter by @tinkoshk in https://github.com/EVV1E/waylandcraft/pull/38
- Full Changelog**: https://github.com/EVV1E/waylandcraft/compare/v1.0.0...v1.0.1