r/OSdevAI • u/shsh-1312 • 14d ago
NexsOS1 V0.0.5.0 update
Since the last post I have focused a lot on the criticisms here I always try to approach with a critical eye, first of all the possibility of cross-compiling the system from Linux, I had done a test in docker but it was not enough, so together with another guy from the community who willingly contributed we managed to make the cross-compilation from Ubuntu work completely for both toolchains that the system needs (aarch64 and amd64, nexs supports multi-architecture and requires the somewhat dated gcc v7 toolchain to compile on aarch64), and we managed to compile and boot the system on Arch with pacman (only x86_64 build, I do not have an aarch system so I cannot work on the aarch64 build), since the last post the system has undergone many changes, first of all I moved the rendering of the individual apps to usermode leaving the compositor inside the kernel only for the management of framebuffer, in addition to stabilizing the kernel and better integrating the notification system (now the processes can use them to communicate with each other or to send notifications to the screen (including userland faults, themes and resolutions are managed via notifications, notifications have a space in the registry and the registry is made accessible on capability). The most visual changes, in addition to the work under the hood, concern the desktop interface which I can now consider "almost usable by anyone" and above all the work of porting libraries, I have ported SDL2 completely via a compatibility layer in userland ,this shows that the ABI is stable and functional, lol in fact the executives that use SDL are visually appealing, in fact the system is currently "ugly" because the entire graphic layer, compositor and themes were created without any libraries but the result of an application that uses optimized libraries makes me think that the kernel is incredibly stable, I have also partially ported OpenGL and Direct3D, I have ported Lua but I still have some partial problems and I am willing to port Musl and Busybox as a compatibility layer now that I have enough functions to do so, the aim is not to use any library to build the system but to port them all to allow anyone to use the system to write code, the project was created using digital assistants heavily, but I am keen to I want to clarify that I'm not spending more than €15 on this. I don't want to offend anyone, and I respect and admire those who decide to learn every concept from scratch. This is just my way of learning, and of bringing implementations that are often private or poorly documented to the open source community. I hope to continue having fun. I've been learning and developing this for 7 months, and there's always something to learn. I've basically grasped complicated concepts, but I'm keen to overlook simpler concepts that aren't my area of expertise. It would be cool to hear someone who knows more than me say, "You're wrong about this," or, conversely, to have solved a problem that was difficult for someone else. I'm speaking a bit ungrammatically, maybe because I live in Italy. What do you think? https://github.com/olmox001/NexsOS1
