Redox is an operating system written in pure Rust, designed to be modular and secure. The development blog can be found at http://www.redox-os.org.
Documentation can be found here.
Please make sure you use the latest nightly of rustc
before building (for more troubleshooting, see "Help! Redox won't compile!").
- What it looks like
- Help! Redox won't compile
- Contributing to Redox
- Cloning, Building and running
- Quick Setup
- Manual Setup
Sometimes things go wrong when compiling. Try the following before opening an issue:
- Run
make clean
. - Run
git clean -X -f -d
. - Make sure you have the latest version of Rust nightly! (multirust is recommended for managing Rust versions).
- Update GNU Make, NASM and QEMU/VirtualBox.
- Pull the upstream master branch (
git remote add upstream git@github.com:redox-os/redox.git; git pull upstream master
).
and then rebuild!
If you're interested in this project, and you'd like to help us out, here is a list of ways you can do just that.
Redox is big (even compressed)! So cloning Redox takes a lot bandwidth, and (depending on your data plan) can be costly, so clone at your own risk!
$ cd path/to/your/projects/folder/
# Run bootstrap setup
$ curl -sf https://raw.githubusercontent.com/redox-os/redox/master/bootstrap.sh -o bootstrap.sh && bash -e bootstrap.sh
# Build Redox
$ make all
# Launch using QEMU
$ make qemu
# Launch using QEMU without using KVM (Kernel Virtual Machine). Try if QEMU gives an error.
$ make qemu kvm=no
To manually clone, build and run Redox using a Linux host, run the following commands (with exceptions, be sure to read the comments):
$ cd path/to/your/projects/folder/
# HTTPS
$ git clone https://github.com/redox-os/redox.git --origin upstream --recursive
# SSH
$ git clone git@github.com:redox-os/redox.git --origin upstream --recursive
$ cd redox/
# Install/update dependencies
$ sudo <your package manager> install make nasm qemu
# Install multirust
$ curl -sf https://raw.githubusercontent.com/brson/multirust/master/blastoff.sh | sh
# Set override toolchain to nightly build
$ multirust override nightly
# Build Redox
$ make all
# Launch using QEMU
$ make qemu
# Launch using QEMU without using KVM (Kernel Virtual Machine). Try if QEMU gives an error.
$ make qemu kvm=no