<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/denial-wm-new-wayland-compositor-with-flutter-directly-embedded-jyohgznid" -->

---
title: Denial WM: New Wayland Compositor With Flutter Directly...
description: Denial is a new alpha-stage Wayland compositor that embeds the Flutter engine directly rather than running Flutter as an application on top of another...
canonical: https://daily.dev/posts/denial-wm-new-wayland-compositor-with-flutter-directly-embedded-jyohgznid
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: Denial WM: New Wayland Compositor With Flutter Directly Embedded | daily.dev
og:description: Denial is a new alpha-stage Wayland compositor that embeds the Flutter engine directly rather than running Flutter as an application on top of another...
og:url: https://daily.dev/posts/denial-wm-new-wayland-compositor-with-flutter-directly-embedded-jyohgznid
og:image: https://api.daily.dev/og/posts/jyohgznid.png
og:image:alt: Denial WM: New Wayland Compositor With Flutter Directly Embedded
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Denial WM: New Wayland Compositor With Flutter Directly Embedded

**[Phoronix](https://daily.dev/sources/phoronix)** · 2 min read · 4 upvotes · 0 comments

## Summary

Denial is a new alpha-stage Wayland compositor that embeds the Flutter engine directly rather than running Flutter as an application on top of another compositor. Built with Rust and the Smithay library, it handles Wayland protocol state, input, DMA-BUFs, and DRM/KMS presentation natively. Application buffers are imported as GPU textures via EGL_EXT_image_dma_buf_import with no CPU readback, and Flutter renders directly into GBM buffers for KMS presentation with no intermediate blit pass. It already supports native Wayland apps, XWayland, Steam/Proton games, multi-monitor setups, notifications, audio with per-window volume control, screen locking, screen sharing, and signed Arch Linux packages. Developers retain the standard Flutter workflow including hot reload, Flutter Inspector, and DevTools against the live desktop shell. The project uses customized Flutter Engine and Skia builds with compositor-specific optimizations targeting low and consistent frame times.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://www.phoronix.com/news/Denial-WM-Compositor>

## Questions this post answers

### How does the Denial Wayland compositor integrate Flutter without running it as a normal application?

Denial embeds the Flutter Engine directly into the compositor rather than running it as an app on top of another compositor. A Rust and Smithay backend manages Wayland protocol state, input, DMA-BUFs, and DRM/KMS presentation, while Wayland DMA-BUF application buffers are imported as GPU textures via EGL_EXT_image_dma_buf_import, avoiding CPU readback or pixel copies, and Flutter renders directly into GBM buffers for KMS presentation.

_Developers exploring compositor design tradeoffs can follow projects like Denial on daily.dev._

### What features and applications currently work on the Denial Wayland compositor?

As alpha software, Denial already supports native Wayland apps like Chromium, Firefox, Blender, and Discord, plus XWayland, Steam and demanding Proton games including Arknights: Endfield and Final Fantasy XIV, multi-monitor setups via a dedicated nwg-displays backend, notifications, per-window audio control, screen locking, DPMS, and OBS-tested screen sharing. It ships as signed Arch packages with CI/CD.

_Anyone evaluating alternative Wayland compositors can track Denial's progress on daily.dev._

## Similar posts on daily.dev

- [Making wl\_shm fast](https://daily.dev/posts/making-wl-shm-fast-xcwnnukrr) · Lobsters · 0 upvotes · 0 comments
- [Mir 2.29 Released With Additional Wayland Protocols](https://daily.dev/posts/mir-2-29-released-with-additional-wayland-protocols-ehfyvvf7x) · Phoronix · 0 upvotes · 0 comments
- [GitHub - J-x-Z/cocoa-way: Native macOS Wayland Compositor written in Rust using Smithay. Experience seamless Linux app streaming on macOS without XQuartz.](https://daily.dev/posts/github---j-x-z-cocoa-way-native-macos-wayland-compositor-written-in-rust-using-smithay-experience--dtohyh3ca) · Hacker News · 2 upvotes · 0 comments

---

Tags: [#linux](https://daily.dev/tags/linux), [#rust](https://daily.dev/tags/rust), [#flutter](https://daily.dev/tags/flutter)

[View this post on daily.dev](https://daily.dev/posts/denial-wm-new-wayland-compositor-with-flutter-directly-embedded-jyohgznid)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"Denial WM: New Wayland Compositor With Flutter Directly Embedded","url":"https://daily.dev/posts/denial-wm-new-wayland-compositor-with-flutter-directly-embedded-jyohgznid","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/denial-wm-new-wayland-compositor-with-flutter-directly-embedded-jyohgznid"},"datePublished":"2026-08-05T16:11:47.485Z","dateModified":"2026-09-14T06:04:45.364Z","description":"Denial is a new alpha-stage Wayland compositor that embeds the Flutter engine directly rather than running Flutter as an application on top of another...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/8842e99bcd7692209ab5bf87bbd3226d?_a=AQAEuop","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/8842e99bcd7692209ab5bf87bbd3226d?_a=AQAEuop","isAccessibleForFree":true,"articleSection":"Phoronix","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"Phoronix","logo":"https://media.daily.dev/image/upload/t_logo,f_auto/v1/logos/6a26ba379dd64932830aa0c9803dd7ee","url":"https://daily.dev/sources/phoronix"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/denial-wm-new-wayland-compositor-with-flutter-directly-embedded-jyohgznid","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":4},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"linux,rust,flutter","timeRequired":"PT2M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"Phoronix","item":"https://daily.dev/sources/phoronix"},{"@type":"ListItem","position":3,"name":"Denial WM: New Wayland Compositor With Flutter Directly Embedded"}]}
{"@context":"https://schema.org","@type":"FAQPage","@id":"https://daily.dev/posts/denial-wm-new-wayland-compositor-with-flutter-directly-embedded-jyohgznid#faq","mainEntity":[{"@type":"Question","name":"How does the Denial Wayland compositor integrate Flutter without running it as a normal application?","acceptedAnswer":{"@type":"Answer","text":"Denial embeds the Flutter Engine directly into the compositor rather than running it as an app on top of another compositor. A Rust and Smithay backend manages Wayland protocol state, input, DMA-BUFs, and DRM/KMS presentation, while Wayland DMA-BUF application buffers are imported as GPU textures via EGL_EXT_image_dma_buf_import, avoiding CPU readback or pixel copies, and Flutter renders directly into GBM buffers for KMS presentation. Developers exploring compositor design tradeoffs can follow projects like Denial on daily.dev."}},{"@type":"Question","name":"What features and applications currently work on the Denial Wayland compositor?","acceptedAnswer":{"@type":"Answer","text":"As alpha software, Denial already supports native Wayland apps like Chromium, Firefox, Blender, and Discord, plus XWayland, Steam and demanding Proton games including Arknights: Endfield and Final Fantasy XIV, multi-monitor setups via a dedicated nwg-displays backend, notifications, per-window audio control, screen locking, DPMS, and OBS-tested screen sharing. It ships as signed Arch packages with CI/CD. Anyone evaluating alternative Wayland compositors can track Denial's progress on daily.dev."}}]}
```

