Apollo is a small x86_64 kernel written in rust
Below is a list of things you need to run the kernel and some instructions. If you want to know the kernel dependencies please look at the Vagrantfile and Cargo.toml for now since they change so frequently at this stage in development.
You can also give different parameters to the build system
The architecture to build for. Currently only x86_64 is supported.
The build type (debug/release) passed to `nasm` and `cargo`
The target to use for compilers. Currently only linux is supported.
The semantic version of the build.
The name of the build. Should only be changed on major version changes.
# This example could be something used in the future
make iso name=upsilon version=2.3.12 build=release
git clone https://github.com/MaxMansfield/apollo.git # Get the kernel
cd apollo # Go to the kernel
vagrant up --provider=virtualBox # Get Dev Environment
vagrant ssh # Go to Dev Environment
cd /vagrant # Where the parent dir of the Vagrantfile is mapped
make clean # Don't forget to wash your hands before you eat!
make # Just builds the program
make iso # builds if needed and outputs an iso Image
make run # does all of the above and opens a qemu instance
make clean # Ready to commit!
If you would like to build this without vagrant
then take a look at the
the bottom of the Vagrantfile for the sh
instructions used to install dependencies and set rustup
to a default nightly
build.