This is based on Philipp Oppermann's excellent series of blog posts. It's purely a learning exercise, to see what Rust feels like on bare metal.
First, we need to check out the source and rebuild the Rust runtime using a bare-metal target and no hardware floating point support:
# Get our source code.
git clone https://github.com/emk/toyos-rs.git
cd toyos-rs
# Set up a Rust compiler.
curl https://sh.rustup.rs -sSf | sh
rustup update nightly-2016-09-16
rustup override set nightly-2016-09-16
# Get a copy of the Rust source code so we can rebuild core
# for a bare-metal target.
git submodule update --init
make runtime
From here, we should be able to build a kernel and run it using QEMU:
make run
You should be able to type.
Licensed under the Apache License, Version 2.0 or the MIT license, at your option.