dev log: BGCE
Published: 2025-12-05
I started a project to do a X11 replacement, just for fun and study, as always, I wanted the most basic implementation I could do, thus BGCE was born. What it does:- Creates a buffer mapped to DRM memory.
- Listens to clients connecting on a unix socket.
- Clients can request a buffer, so it creates a buffer for the client.
- It listens to input events and send them to the focused client.
- It handles moving and resizing clients as well as focusing them.
That's all for now, I think this is a good interface so clients can handle the events. And at the same time it is powerfull because clients can do whatever they want with their buffer.
The one thing I wanted from the beginning is that all of this to run without privileges so I can keep a solid security from the start.
This is a short video I made:
There is another one showing the toolkit I'm creating for it, it is able to click a button and change a text with the callback, but I'll post it next time. The next steps now are to create a toolkit so users can easily create applications for it; and add more features for the protocol, like requesting a resize and to move the client. I don't really know about the future of it, but it is so fun to code, and using AI is helping a lot too.
For anyone wanting to contribute the workflow uses mailing lists, as always, is on my git forge. Also if you want to check out the repository visit the BGCE project page. Thank you!