ghaerr / microwindows

The Nano-X Window System
Other
648 stars 91 forks source link

Nano-X on Openindiana illumos-based systems #40

Open lonnietc opened 3 years ago

lonnietc commented 3 years ago

Hello,

I am seeking a viable small footprint alternative to Xorg for a special project that will need to run just one application that is an RDP/VNC client and normally can run on X11 systems like Linux.

I am wondering if Nano-X has a small footprint when coupled with the X11 compability library NX11.

The Openindiana OS (https://www.openindiana.org/) is based on Solaris and can run many Linux applications that have been ported but currently uses Xorg and for my project, I need something significantly smaller than Xorg.

Any information or suggestions would be greatly appreciated.

ghaerr commented 3 years ago

Hi Lonnie,

I responded to your earlier email but it looks as though you didn't get it.

Nano-X does have a much smaller footprint than X11 when used with the X11 compatibility library NX11.

Having Microwindows replace X will depend primarily on the details of the two applications you intend to use, and which Xlib (and other) X routines are called. The Xlib to Nano-X conversion library, (NXLIB), allows in many cases unmodified X applications to run, but only core graphic routines are implemented, rather than the entire X libraries (keeping things small).

A quick initial determination could be made by compiling the two applications from source, then replacing the -lX11 link with -lNX11 from NXLIB, and looking for link errors. There is a function stubs file in src/nx11/stubs.c which show the majority of unimplemented X11 functions.

lonnietc commented 3 years ago

Hi Gregory,

Thanks for the reply and I had just not recalled seeing it.

The applications that I have been seeking to use is the Remmina (RDP/VNC) client namely because it supports RDP & VNC (https://remmina.org/), or if that is not possible then perhaps FreeRDP which supports just RDP (http://www.freerdp.com/)

My goal was to use Remmina if it would work as a first choice but did not know if either one would work on Nano-X.

Also, I am currently using an Ubuntu 20.04 (64-bit AMD) system to develop on, but the project and thus Nano-X would also have run on the Openindiana or OmniOS (illuminos-based "Solaris") OS systems. I have found that there are packages for Remmina and FreeRDP already on the Openindiana & OmniOS systems, but now just need to see what it might take to get Nano-X to compile and run on those systems if Nano-X is able to run them first, even on another platform like Linux, would be my first guess at how to maybe tackle this effort.

I will have to see if I can figure out how to compile them and maybe do the test that you mention on Linux first. Thanks again

lonnietc commented 3 years ago

Just a quick note on Remmina.

The deb package says that:


Remmina is a remote desktop client written in GTK+, aiming to be useful for system administrators and travellers, who need to work with lots of remote computers in front of either large monitors or tiny netbooks.

Remmina supports multiple network protocols in an integrated and consistent user interface.

Currently RDP, VNC, SPICE, WWW, NX, XDMCP, EXEC and SSH are supported. This package contains the common files.


Not sure how the GTK+ will affect it working with Nano-X

Cheers