ESALP / ESALP-1

The Endangered Soaring African Lynx-Pidgeon Operating System
MIT License
4 stars 1 forks source link
kernel rust

ESALP Build Status

Endangered Soaring African Lynx-Pidgeon is a work in progress OS by Calvin Lee and JJ Garzella

It is an implimentation of Phillipp Oppermann's Blog OS, go check out that repository and his blog for more details.

Project Goals

Features

Right now it doesn't do much, but more is added every day!

Current features:

How to Compile

  1. Install packages, ESALP requires xargo, nasm, grub-mkrescue, ld, and a unix environment to build. To run, use qemu.
  2. Use make all to build ESALP
  3. make run and you're done!

If you want to run regressions, use make test

Compilation on macOS

ESALP also supports compilation on macOS. As macOS uses mostly Apple's infrastructure rather than linux's, it requires a bit more setup.

Compile Assembly on macOS

  1. Homebrew
    • gcc
    • autoconf
    • xorriso
    • nasm
  2. MacPorts
    • libmpc
    • gmp
    • mpfr
    • 2.5. Optional: Compile libiconv
  3. Cross-compile Binutils
  4. Cross-compile GCC
  5. Compile grub
  6. Install rustup
  7. Get the proper nightly build in your folder
  8. Homebrew
    • cmake
    • openssl
  9. put a symlink to openssl in /usr/local/include
  10. Install xargo
    • "cargo install xargo"

      Running on macOS

    • Because we cross-compiled binutils earlier, we need to use make all cross=yes and make run cross=yes

Notes:

Licensing

This code is licensed under the MIT license. See LICENSE for more details.