Skip to content

cppLover0/Orange

Repository files navigation

Orange

Orange is my posix x86_64 os with microkernel features

GitHub top language GitHub license Codacy Badge GitHub contributors GitHub commit activity

Preview

fastfetch and lua

Devices which supported by orange

  • hpet
  • pvclock
  • ioapic
  • ps/2
  • ps/2 keyboard
  • ps/2 mouse
  • xhci
  • usb keyboard
  • usb mouse

Build

Build kernel

make all

Build initrd (You should build it before running os)

sh tar-initrd.sh

Build cross-compiler

sh build-cross.sh

Build kernel and run iso

make run

Dependencies

cmake meson (1.4.2) ninja gcc (13.3.0) libgmp3-dev libmpfr-dev libmpc-dev libglib2.0-dev-bin python3.13 python3.13-dev python3.13-venv python3.13-distutils gettext gperf rsync flex bison make nasm bash xsltproc docbook-xsl itstool zenity intltool

Host python dependencies

mako pyyaml

Also if you have custom python version you need to pass environment variable because python requires newest version

BUILDPYTHON=--with-build-python=python3.13 sh tar-initrd.sh

TODO

  • Move XHCI driver from old kernel to userspace
  • Implement IRQ userspace handling
  • Port lua, fastfetch, doomgeneric, nano and etc.
  • Improve XHCI driver
  • Port Xorg
  • Port twm
  • Port wine
  • Implement userspace disk drivers
  • Improve kernel path resolver (add symlink support when trying to access another filesystem)

About

posix x86_64 os

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published