X11 support for Haiku

Hello

I have several X11 applications that I would like to run on Haiku, however, as much as I understand, there isn’t any X11 server available for Haiku at the moment. It would be nice to see at least some kind of rootless X server for Haiku to run these applications without the need to port them manually.

Thanks,
Nikita

1 Like

Hey there, unfortunately, it’s not quite possible to swap out Tracker (basically Haiku’s version of X11) for X11. We do have lots of apps from Linux available on HaikuDepot, our software repository. We’ve ported apps like LibreOffice, VLC and also many KDE apps which should work fine. Porting is done through Haiku Ports, an organised porting system. If there is an app you wish to be ported to Haiku you can put a suggestion in the forums or you can learn how to port the apps yourself through Haiku Ports:

1 Like

OK. But Tracker actually isn’t Haiku X11.

Yeah, to clarify I meant that Tracker is similar, but not exactly the same as X11.

Hey, tracker has basically nothing to do with the stuff X11 would do, it’s “only” a client application, even if it is a big one, you can stop it with launch_roster and all your applications will still work basically.

The equivalent we have is app_server, the protocol is somewhat internal to haiku though and it’s not ment to be used directly by third party applications without using the application kit like X11 is.

We have some frameworks ported that many applications on linux use, or that some applications have as optional backends, those can be used for porting.
There is no X11 server on haiku as far as i know. (Unless you count booting linux in qemu)

3 Likes

There was a x11 port for beos in the past, but it does not run anymore iirc.

https://old.besly.de/menu/search/archiv/gfx/gimpinstall.html

3 Likes

rip x11 it’s too old

Thanks for the clarification - I’m not an expert on these sorts of things (as you can probably tell).

I have builded xsdl server but not tested yet

Xsdl (X.Org server with libsdl backend) port was available on TiltOS project (3-rd party package manager for Haiku before HPKG was introduced, no longer maintained).

Unfortunately libsdl backed was removed from X.Org tree.

I tried to recover Xsdl, but internal interfaces was changed and my attempt is not stable enough for now.

3 Likes

No. Haiku alternative to X.Org server is app_server. Alternative to xlib is libbe.so (app_server protocol client, set of common GUI controls and more).

Tracker is regular GUI application. Tracker code is actually located in libtracker.so (something like shell32.dll in Windows), Tracker executable just run code in libtracker.so.

2 Likes

Is it use X11 protocol directly or based on Motif toolkit? If not, it may be ported to Haiku directly without using X11.

screenshot39

11 Likes

What changes was made? What command was used for starting server?

I managed to compile Xsdl, but it open and immediately close window because it failed to create colormap. Then it show error “no screens found”.

My patch for https://github.com/pelya/xserver-xsdl - https://pastebin.com/WGzd1qee
Xsdl required xkbdcomp for start (builded without patches) and put xkbdcomp to ./data/usr/bin
Start command: ./Xsdl :0 -screen 640x480x24 -mouse mouse -keybd keyboard -nolock -fp ./data/

PS: you need set: export SECURE_STORAGE_DIR= to server data folder

2 Likes

screenshot40

screenshot41

20 Likes

Haiku has X11 support? Wow! :star_struck:

1 Like

Good day @3dEyes ,

What if each X11 window would render inside a Haiku window? X11 soft would look like Haiku soft… Would it need an X11 server instance for each window then?.. Just thinking aloud… :wink:

By the way, is that Motif?

Nice work!

Regards,
RR

It is called rootless X11 server and it requires more complex interaction with OS GUI subsystem. It will require to write a lot of Haiku-specific code at X.Org side.

1 Like

Good day @X512,

Thanks for the clarification. I presume it’s not worth it then :slightly_smiling_face:

Regards,
RR