Skip to content

CoopsDaemon/MonkeOS

Repository files navigation

MonkeOS

MonkeOS logo

MonkeOS is an experimental x86_64 operating system built primarily in Rust, with an in-tree mlibc port for C userspace work. It boots through GRUB and Multiboot2, initializes its own kernel subsystems, and hands off into a shell-first environment with framebuffer-native applications layered on top.

This repository is a kernel and runtime engineering project. It is useful today for kernel bring-up, shell/runtime experiments, framebuffer app work, and libc/userspace porting. It is not yet a finished Linux-compatible desktop operating system.

Screenshots

MonkeOS screenshot 1

Note: these screenshots are taken from different versions of MonkeOS :)

warning Monke is still young. do not use monke for real devices or production until monke is adult.

What this is about

MonkeOS is a hobby no_std operating system project made for serious expermination with linux compatibility . while being fully developed in rust (and C). it can run some cool things like neofetch. OpenGL (with virtio acceleration.) . it is not yet ready to run on real hardware but you can build it and run it on qemu.

Building the MonkeOS

to build monke first. you need to install the following dependencies:

  • Rust
  • LLVM
  • ninja
  • meson

And grub dev tools. you can simply use the build scripts in the project root. if you are on linux . use the sh script . it will automatically build mlibc + monkeos and create the iso for you

as of windows users. you must have WSL installed and you must have the listed dependencies installed on the WSL machine. afterwards run the powershell script and it will automatically compile meson and monke os and create the iso through WSL.

Running The Monke

You can run MonkeOS iso which will be located in the root of the project using the following command :

qemu `
  -cdrom monkeos.iso `
  -m 512M `
  -serial mon:stdio `
  -audiodev dsound,id=snd0 `
  -device AC97,audiodev=snd0 `
  -nic user,model=virtio-net-pci `
  -display gtk,gl=off `
  -vga std `
  -device virtio-gpu-pci

The Monke is not yet very stable . it might get laggy freeze or halt randomly

Trying to run the Monke on Real Hardware

I strongly don't recommend running MonkeOS on real hardware, as its not tested in that field yet and issues might start to appear . but if you want to try . you can flash the iso on a usb using software like rufus and boot it on the hardware .

Want your code to be in The Monke ?

you can do that by contributing and opening a pull request. its suggested that you read and understand how the monke works before opening a pull request to avoid low quality pull requests !.

License

BSD . David Dull. All Rights Reserved

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors