- cross-posted to:
- rust@lemmit.online
- hackernews@lemmy.smeargle.fans
- cross-posted to:
- rust@lemmit.online
- hackernews@lemmy.smeargle.fans
Enter Maestro, a unix-like monolithic kernel that aims to be compatible with Linux in order to ensure wide compatibility. Interestingly, it is written in Rust. It includes Solfége, a boot system and daemon manager, maestro-utils, which is a collection of system utility commands, and blimp, a package manager. According to Luc, it’s creator, the following third-party software has been tested and is working on the OS: musl (C standard library), bash, Some GNU coreutils commands such as ls, cat, mkdir, rm, rmdir, uname, whoami, etc… neofetch (a patched version, since the original neofetch does not know about the OS). If you want to test it out, fire up a VM with at least 1 GB of ram.
Why?
Because someone decided to do it.
You don’t always need a good reason other than it might be cool/fun. Sometimes it’s just because you can.
You’re not forced to use it, so if it’s not your cup of tea, that’s fine.
When my wife asks me “why are you doing [insert weird thing of the moment in my homelab]?” most of the times I answer “because I can!”.
When my wife asks me “why are you doing [insert weird thing of the moment in my homelab]?” most of the times I answer “because I can!”.
Exactly!
He answers that in the project page. Just because there are kernels available, he can’t build his own and learn about kernel and computers in general (the answer for your question)
And …why?
Contributing to Linux can be extremely daunting. Refactoring can be as well. Rust makes both of those a LOT easier. If a project is written in Rust instead of C there will be many more potential contributors and flexibility.
And Rust has a restrictive trademark policy which could theoretically cause problems. Especially because of how full the source code of Rust is of the trademarks.
Just, why, Mozilla?
"In kernel development, debugging is very hard for several reasons:
All those issues are reasons for using a memory-safe language, to avoid them as much as possible.
Overall, the use of Rust in the kernel allowed for the implementation of a lot of safeguards. And I believe that it is, to this day, the best decision I have made for this project."