xtd icon indicating copy to clipboard operation
xtd copied to clipboard

[ENHANCEMENT] xtd - Haiku OS support

Open theokeist opened this issue 8 months ago • 7 comments

IS there plan for future GUI and Console support for HaikuOS?

Atm. I only found this library and my question is if it is possible to create fully runnable HaikuOS operating system support, now or in future? Or some guidance on doing that

theokeist avatar Apr 27 '25 15:04 theokeist

Hello Theokeist,

First of all, thank you for your interest in xtd.

There is no plan yet to support HaikuOS.

However, HaikuOS does support the gcc and clang compilers. So it's possible that xtd.core (console) and xtd.tunit (unit test) will be supported. xtd.core and xtd.tunit are based on gcc (10 or higher) and clang (10 or higher), which support C++17 or higher. Maybe there could also be an error for the sound library in linux it's gsound that's used. On Haiku, I don't know. But the installation scripts are able to disable sounds if they can't find a library for so.

For xtd.drawing and xtd:forms, I don't know, I'd have to investigate.

If you're familiar with HaikuOS, you might like to give it a try. You'll also need to install CMake for HaikuOS, as xtd projects are generated by CMake.

You'll probably have to adapt the xtd installation scripts. If you need any help, I'm here.

I hope you'll find my half answer helpful.

gammasoft71 avatar Apr 27 '25 16:04 gammasoft71

I'll install HaikuOs on a VM and see (in lazy mode) what happens...

That way, I'll have a small idea of the scope of the port as well as the feasibility.

gammasoft71 avatar Apr 27 '25 16:04 gammasoft71

Porting is underway.

The xtd.core and xtd.tunit libraries will be ported, but xtd.drawing and xtd.forms will not for the time being.

This means that console applications and unit tests will be supported on Haiku.

Note that the door is not closed to porting xtd.drawing and xtd.forms. xtd.drawing uses the API of xtd.drawing.native and xtd.forms uses the API of xtd.forms.native. We therefore need to write the xtd.drawing.native.haiku and xtd.forms.native.haiku libraries, which would use BeAPI to respond to the API of xtd.drawing.native and xtd.forms.native. Porting is not difficult, but it can be time-consuming. And for the moment I'm trying to concentrate on the most common platforms. If one or more contributors would like to get involved, their help would be most welcome, and I will of course be available to help them.

gammasoft71 avatar May 01 '25 10:05 gammasoft71

@gammasoft71 awesome news! Btw BeAPI if Im correct is for legacy apps only, if so it will need to be in HaikuAPI. Im on way to learn C++ so maybe I will help you.

theokeist avatar May 04 '25 08:05 theokeist

Hi @theokeist ,

you're right, it's HaikuAPI. We welcome your contributions.

gammasoft71 avatar May 04 '25 08:05 gammasoft71

If I will have time I will take a look on it 👍 in near time and give you some feedback

theokeist avatar Jul 02 '25 10:07 theokeist

Hi @theokeist,

You welcome. don't hesitate to send me your feedback.

G_

gammasoft71 avatar Jul 02 '25 20:07 gammasoft71