Based on my exploration of the GentleOS repository and related discussions, here's what I found about GentleOS and its retro GUI:
## What is GentleOS?
**GentleOS** is a hobby operating system designed specifically for vintage 32-bit PCs, created by developer "luke8086". It's a minimalist, self-contained OS that runs directly on older hardware without requiring modern dependencies.
## Key Characteristics:
- **Target Platform**: Vintage 32-bit x86 PCs with BIOS/legacy boot support
- **License**: GPL-2
- **Architecture**: 32-bit (with a separate 16-bit variant available)
- **Size**: Compact enough to run on minimal hardware
## The Retro GUI
The GUI in GentleOS is a custom-built windowing system with a distinctly retro aesthetic:
### Visual Style:
- **Color Scheme**: Inspired by BeOS with yellow and blue colors, adjusted to fit 16-color VGA palette
- **Window Design**: Classic window frames with title bars, borders, and close buttons
- **Widget System**: Custom-built widgets including buttons, title bars, and window controls
### GUI Components Found in Code:
- **Window Management**: `window.c` handles window creation, positioning, and interaction
- **Title Bars**: `title_bar.c` implements draggable title bars with active/inactive states
- **Widget System**: Custom widget framework with pointer event handling
- **Surface Rendering**: Framebuffer-based rendering system
### Applications Included:
The GUI includes several built-in applications:
- About, Clock, Calendar, Calculator
- Font viewer, Keyboard layout viewer, Color palette
- Games: Snake, Minesweeper, Tetris, Mahjong, Freecell, Klondike, Blackjack
## Technical Implementation:
The GUI is built from scratch in C with:
- Custom event handling system
- Framebuffer-based rendering
- Window manager with drag-and-drop support
- Widget system with pointer event propagation
- VGA-compatible 16-color palette support
## Community Reception:
The project has gained attention in retrocomputing circles, with users appreciating:
- Clean, understandable codebase
- Focus on stability rather than constant API changes
- Potential for running on actual vintage hardware
- Inspiration from classic operating systems like BeOS and GEOS
The retro GUI represents a deliberate return to simpler, more focused interface design, contrasting with modern complex UI systems while maintaining functionality for vintage hardware constraints.
1navigatehttps://github.com/luke8086/gentleos32
2get_text
3clickundefined
4clickundefined
5navigatehttps://github.com/luke8086/gentleos32/tree/main/gui
6clickundefined
7clickundefined
8navigatehttps://github.com/luke8086/gentleos32
9searchGentleOS retro GUI operating system
10clickundefined
11clickundefined
12navigatehttps://news.ycombinator.com/item?id=48458890
13get_text
14navigatehttps://github.com/luke8086/gentleos32/tree/main/gui
15clickundefined
16clickundefined
17navigatehttps://github.com/luke8086/gentleos32/blob/main/gui/window.c
18navigatehttps://github.com/luke8086/gentleos32/blob/main/gui/title_bar.c