Graphics and Windowing
Drivers
vesad (VESA)
It's not really a driver, it writes to a framebuffer given by firmware (via UEFI or BIOS software interrupts).
Because we don't have GPU drivers yet, we rely on what firmware gives to us.
GPU drivers
On Linux/BSDs, the GPU communication with the kernel is done by the DRM system (Direct Renderig Manager, libdrm
library), that Mesa3D drivers use to work (Mesa3D implement OpenGL/Vulkan drivers, DRM expose the hardware interfaces).
Said this, on Redox the GPU driver needs to be an user-space daemon which use the system calls/schemes to talk with the hardware.
The last step is to adapt our Mesa3D fork/recipe to use these user-space daemons.
Accelerated Graphics
We don't have GPU drivers yet but LLVMpipe (OpenGL CPU emulation) and VirtIO (2D/3D accleration from/for a virtual machine) is working.
Orbital
The Orbital desktop environment provides a display server, window manager and compositor.
- The display server is more simple than Wayland, making the porting task more quick and easy.
Libraries
The programs written with these libraries can run on Orbital.
- SDL1.2
- SDL2
- winit
- softbuffer
- Slint (use winit/softbuffer)
- Iced (use winit/softbuffer)
- egui (can use winit or SDL2)
Features
- Custom Resolutions
- App Launcher (bottom bar)
- File Manager
- Text Editor
- Calculator
- Terminal Emulator
If you hold the Super key (generally the key with a Windows logo) it will show all keyboard shortcuts in a pop-up.