Welcome to the latest release of the Greentea OS
Greentea OS is an alpha-stage GPL3 desktop OS from scratch that boots on x64 UEFI devices, and runs existing software unmodified (currently supports .exe files). The goal is to create a fast, lightweight OS that competes in the operating system space.
This release transitions GTOS from the pre-alpha to the alpha stage. Keep in mind that this system is being created from scratch on our own custom foundations.
Demo: https://www.youtube.com/watch?v=vh-icbJuQgg
Source Code
Most of the code is currently located in the two repos: Tofita and Caramel. The code will be refactored and evenly distributed across the repos in the later releases.
- Tofita Engine - custom kernel, made almost entirely in Hexa, provides a syscall interface that Caramel is using
- Caramel Win32 Layer - implements win32 .dlls like kernel32.dll and user32.dll, a compatibility layer for PE32 programs
Notable Changes
- This release features a huge compatibility milestone: Greentea OS is now capable of running some actual apps!
- Currently verified to (mostly) work: Minesweeper (FOSS), Solitaire (FOSS), Calculator (FOSS), Spider (FOSS), Minesweeper (XP)
Improvements
- Environment blocks initialization routines are heavily redesigned (required by Caramel compatibility layer)
- New custom icons (some made with AI, some by our professional designer)
- New wallpapers (mostly AI + further manual editing in the authoring tools)
- New themes and general improvements to the theming engine (HDR-tone mapping for proper UX/UI foreground-background elements contrast, chromatic aberration, etc)
- Lots and lots of API functions and syscalls
- Hexa was further tuned to handle GTOS devs needs well
- SMP (multicore) initial support (developed as a separate prototype, will be included and enabled by default in the upcoming releases)
- GTFS filesystem internal drafts are mostly ready for the Proof-of-Concept implementation soon, eliminating current system's immutability nature
Stability
- Nested (or often happening, like mouse quick move) interrupts are now handled properly without overriding each other
- Lots of calling convention corrections for 32-bit software and libraries
- PE32(+) loader fixes all currently known issues
- UEFI bootloader improvements on the real HW (currently not all of the planned changes have been done - they will be included in the next releases); thanks to all testers!
- It's recommended for the HW testers to wait for the next release which will include next-generation memory manager used by the bootloader, as current one does not support some modern hardware configurations (you may join testers/QA group here)
- Automatic UI/API testing is being drafted but not yet implemented
- GUI tweaks and fixes (join UX/UI group here)
Performance
- Copying on screen is now done with so called
movntdq
by default - Differential mouse cursor rendering
- We now always build everything with O3 (regressions are very uncommon due to Hexa)
- Scheduler is now using higher frequency (optimal value derived from the benchmarks)
- Bootloader optimizations
Tools
- libgen updated with a fix to a memory issue
- webui debugging tool completely redesigned
Mirror
Also download at https://t.me/greenteaos_official