How do I build a desktop environment for my OS project?
Asked by
CuriousCoder42
I'm currently working on an ambitious final year project where I have to build an operating system from scratch. I thought I could manage it, inspired by others like Terry Davis, but after months of struggle, I've realized it's not as easy as I hoped. Since I can't change my project now, I'm considering starting with a bare version of Arch Linux and then creating a desktop environment on top. My original idea was to implement a 'story mode' feature where the shell has a personality and engages users like a character in a narrative. So, I'm looking for help or suggestions on how to create this desktop environment efficiently. I've been thinking about using Electron.js to build a desktop app linked with a window manager, but I'm open to any better or simpler alternatives!
Answers
It sounds like you're setting yourself up for a tough time! If you're aiming for a project that actually works, maybe consider using Linux From Scratch (LFS). It's perfect for learning and has a detailed guide to help you through the process step-by-step. Creating an entire desktop environment by yourself might be too ambitious, so starting with LFS could impress your professors without overwhelming you.
Reply to this answer
You might want to downscale your project a bit! A complete OS from scratch is no small feat, but building on top of an existing system like Arch can make things easier. If your focus is on the 'story mode', perhaps create a graphical interface that uses existing libraries rather than starting from scratch. It could save you a lot of headaches!
Reply to this answer
Honestly, building a desktop environment is a huge leap from creating a minimal OS. Instead, look for existing window managers or even simpler environments. Maybe try integrating something like Xfce or LXQt instead, which could let you focus on your unique 'story mode' idea without getting bogged down in the complexities of a full OS.
Reply to this answer
Add your answer
Answers are reviewed before publication.
Related Discussions