Skip to content

freerdp, tigervnc, ratpoison + deps#159

Open
rhubert wants to merge 10 commits intoBobBuildTool:masterfrom
rhubert:graphics
Open

freerdp, tigervnc, ratpoison + deps#159
rhubert wants to merge 10 commits intoBobBuildTool:masterfrom
rhubert:graphics

Conversation

@rhubert
Copy link
Contributor

@rhubert rhubert commented Mar 5, 2026

No description provided.

@rhubert rhubert mentioned this pull request Mar 6, 2026
default.yaml Outdated
@@ -0,0 +1,2 @@
environment:
BASEMENT_X11: "${BASEMENT_X11:-0}" # set to 1 if components should use the X11 backend.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think this is a critical design decision. It implies that there is also a BASEMENT_WAYLAND switch, doesn't it? Do we support enabling both in the future? Or do we want to keep it simple by having a single BASEMENT_GRAPHICS_PLATFORM that can be "none", "wayland" or "x11"?

@sixtyfourktec Any opinion on this?

Instead of having a global default, how about defining a graphics::platform class like the init class? Every recipe that needs the switch would include the class and get a properly checked switch...

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am very in favor of having a class. I also think there is a use-case for having both systems enabled at the same time. E.g there is xwayland for components that doesn't support wayland. However, we could defer this to the point where we really need it. About the naming: this is not really graphics (that would be OpenGL/ES, vulkan, ...), it is about the windowing system. So I guess the name should reflect that.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I added a windowing class now with a minimum functionality.

I also think there is a use-case for having both systems enabled at the same time. E.g there is xwayland for components that doesn't support wayland.

I think components not supporting wayland do not need to use the WINDOWING_X11/WAYLAND? Instead they can just use the X-dependencies unconditional?

- libs::xorg::libXrender-dev
- libs::xorg::libXmu-dev

- libs::xorg::libXi-dev
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this X-related lib always needed or just an oversight and should be under BASEMENT_X11 actually?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

rhubert and others added 10 commits March 10, 2026 06:35
Some components need to know if the system uses X11 or wayland to
handle dependencies and configure options correctly. Add a windowing
class with WINDOWING_X11 and WINDOWING_WAYLAND config variables to be
used by such packages.
Fltk 1.3.x is required by tigervnc, ATM they are not ready for 1.4.
See TigerVNC/tigervnc#1949.
The latest itstool release failes to build, because the libxml2 python
package is deprecated and broken when linked static.

Use a not yet merged version of itstool using lxml instead.
See itstool/itstool#57
Co-authored-by: Ralf Hubert <ralf.hubert@secunet.com>
Minimum functional freerdp-client with optional X11 support.

Co-authored-by: Marc Kewitz <marc.kewitz@secunet.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants