<div dir="ltr">Hi pq,<div><br></div><div>Thanks so very much for the clarification as I am totally new to the Wayland world across all of the platforms. In the past, I have used a lot of Linux and other similar flavors, but for this particular project, I am jumping into the FreeBSD and illumos-based (i.e. OpenIndiana, OmniOS, and SmartOS) world to take advantage of some of the other builtin kernel features as well.</div><div><br></div><div>I will try to figure out a possible way to use Wayland with DRM KMS and to see what it will take to get running.</div><div><br></div><div>Thanks again and have a great weekend,</div><div>Lonnie</div><div><br></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Fri, Jul 31, 2020 at 9:59 AM Pekka Paalanen <<a href="mailto:ppaalanen@gmail.com">ppaalanen@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On Tue, 21 Jul 2020 13:17:25 -0400<br>
Lonnie Cumberland <<a href="mailto:lonnie@outstep.com" target="_blank">lonnie@outstep.com</a>> wrote:<br>
<br>
> Hi pq,<br>
> <br>
> Thanks for your question on my post and I am sorry that I was not clearer<br>
> on the information.<br>
> <br>
> Yes, you are correct in that the Direct Framebuffer approach that I am<br>
> thinking about is how it might be possible to compile Weston compositor of<br>
> the Wayland protocol to use the DirectFB (direct framebuffer) backend on<br>
> FreeBSD since I am looking for a possible Wayland solution that does not<br>
> use Xorg and is absolutely as small as possible just to display a single<br>
> application "wlfreerdp" which is the Wayland compiled RDP client from the<br>
> FreeRDP project.<br>
<br>
Hi,<br>
<br>
I think you should look into DRM KMS. I believe some of that has been<br>
ported to some BSDs from Linux, it is the display driver framework.<br>
Most Wayland compositors use KMS when running on bare hardware.<br>
DirectFB would be just an unnecessary layer in between.<br>
<br>
I didn't realize you wanted to save disk space foremost, so I explained<br>
things about the runtime memory usage instead.<br>
<br>
I would like to say that Wayland solutions never run on top of Xorg,<br>
but that is a bit of a lie. Some Wayland compositors have the<br>
capability to run nested, as a window, on Xorg. That mode of operation<br>
is not the usual one though, but merely a quick'n'dirty testing mode<br>
for developers whose production desktop is still on Xorg. The normal<br>
mode of operation is to run on bare hardware, talking "directly" to the<br>
kernel display drivers via DRM KMS API.<br>
<br>
<br>
Thanks,<br>
pq<br>
<br>
> <br>
> This is the basic goal that I am trying to achieve.<br>
> cheers,<br>
> Lonnie<br>
> <br>
> <br>
> On Mon, Jul 20, 2020 at 8:07 AM Pekka Paalanen <<a href="mailto:ppaalanen@gmail.com" target="_blank">ppaalanen@gmail.com</a>> wrote:<br>
> <br>
> > On Sun, 19 Jul 2020 19:55:01 -0400<br>
> > Lonnie Cumberland <<a href="mailto:lonnie@outstep.com" target="_blank">lonnie@outstep.com</a>> wrote:<br>
> >  <br>
> > > Hi All,<br>
> > ><br>
> > > I am working on a speciality project for a super ultra-thin distro that<br>
> > > will basically run just a single graphical application in a type of Kiosk<br>
> > > (fullscreen) mode and Xorg is just WAY too large for what I want to do.<br>
> > ><br>
> > > I am using FreeBSD and have started to look heavily into Direct  <br>
> > Framebuffer  <br>
> > > (DRM) approaches.  <br>
> ><br>
> > Hi,<br>
> ><br>
> > sorry, DRM stands for Direct Rendering Manager. Direct Framebuffer<br>
> > sounds more like DirectFB [1] which is something completely<br>
> > different.<br>
> ><br>
> > Are you really talking about Xorg alone, or are you perhaps<br>
> > thinking of some mainstream desktop environment when you say it's<br>
> > way too large? The difference between the two can be absolutely<br>
> > huge.<br>
> >  <br>
> > > With that in mind, I have just learned that Waylan may support Direct<br>
> > > Framebuffers and wanted to find out more about this if possible.  <br>
> ><br>
> > What do you mean by Direct Framebuffers?<br>
> >  <br>
> > > The application that I will be using on the OS is just an RDP (or VNC)<br>
> > > client and really nothing more.<br>
> > ><br>
> > > My questions are if Wayland can render to the Framebuffer and also how<br>
> > > large of a footprint are we talking about?  <br>
> ><br>
> > Think of Wayland as a design architecture. It's not an<br>
> > implementation. For an implementation of Wayland, you need a Wayland<br>
> > compositor and a Wayland client (e.g. an application using a<br>
> > Wayland-supporting toolkit).<br>
> ><br>
> > Wayland compares to X11; Xorg is a server implementation of X11.<br>
> ><br>
> > A part of Wayland design is that the display server is a<br>
> > compositor. This is unlike with Xorg where you have the option of<br>
> > running the display server without a compositor. Any correctly<br>
> > implemented Wayland stack will probably use more memory than a X11<br>
> > stack *without* compositing, because there is necessarily<br>
> > double-buffering for KMS to avoid graphical glitches.<br>
> ><br>
> > Traditional X11 architecture is fundamentally about drawing into<br>
> > the single framebuffer that is being scanned out (front-buffer<br>
> > rendering). This uses the minimum amount of memory possible with the<br>
> > caveat that you can see incomplete drawing on the screen at times.<br>
> ><br>
> > Wayland OTOH bans front-buffer rendering exactly because of the<br>
> > glitches, hence it needs at least one additional framebuffer<br>
> > compared to a minimal X11 setup.<br>
> ><br>
> > However, just because Wayland bans something does not mean that<br>
> > some implementation cannot do exactly that. They could, if they want<br>
> > to bring back the glitches that Wayland was designed to avoid.<br>
> >  <br>
> > > I started investigating DirectFB which can be loaded and am guessing that<br>
> > > Wayland (if it supports FB) would be loaded on top.  <br>
> ><br>
> > I am not aware of any Wayland compositor that would run on top of<br>
> > DirectFB. Most Wayland compositors use DRM/KMS instead along with<br>
> > some rendering API (OpenGL, Vulkan, Pixman, QtPainter(?), etc.).<br>
> ><br>
> > How much resources a Wayland-based stack consumes depends on the<br>
> > implementation and its details on the specific hardware platform.<br>
> ><br>
> > Some Wayland compositors: sway, weston, kwin, mutter,<br>
> > enlightenment, ...<br>
> ><br>
> > Some Wayland-spporting toolkits: Qt, GTK, SDL2, GLFW, ...<br>
> ><br>
> ><br>
> > [1] <a href="https://en.wikipedia.org/wiki/DirectFB" rel="noreferrer" target="_blank">https://en.wikipedia.org/wiki/DirectFB</a><br>
> ><br>
> > Thanks,<br>
> > pq<br>
> >  <br>
<br>
</blockquote></div>