Coder Social home page Coder Social logo

n3rd-dude / redox Goto Github PK

View Code? Open in Web Editor NEW

This project forked from redox-os/redox

0.0 2.0 0.0 165.09 MB

Redox: A Rust Operating System

Home Page: https://www.redox-os.org

License: MIT License

Makefile 3.40% Rust 88.59% Assembly 4.41% C++ 0.24% Shell 2.93% TeX 0.44%

redox's Introduction

Redox

Redox is an operating system written in Rust, a language with focus on safety and high performance. Redox, following the microkernel design, aims to be secure, usable, and free. Redox is inspired by previous kernels and operating systems, such as SeL4, Minix, Plan 9, and BSD.

Redox is not just a kernel, it's a full-featured Operating System, providing packages (memory allocator, file system, display manager, core utilities, etc.) that together makes up a functional and convenient operating system. You can loosly think of it as the GNU or BSD ecosystem, but in a memory safe language and with modern technology. See this list for overview of the ecosystem.

The website can be found at https://www.redox-os.org.

Please make sure you use the latest nightly of rustc before building (for more troubleshooting, see "Help! Redox won't compile!").

Travis Build Status MIT licensed

Contents

Redox

Redox

Redox

Redox

Redox

Redox

The ecosystem and software Redox OS provides is listed below.

Name (lexicographic order) Maintainer
Ion (shell) @skylerberg & @jackpot51
RANSID @jackpot51
Sodium (editor) @ticki
Standard library @jackpot51
TFS (filesystem) @ticki
The Redox book @ticki
The old kernel abandoned
ZFS abandoned, superseded by TFS
acid tests @jackpot51 (co.: @ticki, **@nilset)
binutils @ticki
bots (other internal bots) @ticki
cookbook @jackpot51
coreutils @ticki (co.: @stratact)
extrautils @ticki
games @ticki
kernel @jackpot51
libextra @ticki
libpager @ticki
magnet (future package manager) @ticki
netutils @jackpot51
orbclient @jackpot51
orbdata @jackpot51
orbital @jackpot51
orbtk @stratact
orbutils @jackpot51
pkgutils (current package manager) @jackpot51
playbot (internal REPL bot) @ticki
ralloc @ticki
redoxfs (old filesystem) @jackpot51
syscall @jackpot51
userutils @jackpot51

Sometimes things go wrong when compiling. Try the following before opening an issue:

  1. Run make clean.
  2. Run git clean -X -f -d.
  3. Make sure you have the latest version of Rust nightly! (rustup.rs is recommended for managing Rust versions).
  4. Update GNU Make, NASM and QEMU/VirtualBox.
  5. Pull the upstream master branch (git remote add upstream [email protected]:redox-os/redox.git; git pull upstream master).
  6. Update submodules (git submodule update --recursive --init).

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 of 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

QEMU with KVM

To use QEMU with KVM (kernel-based virtual Machine), which is faster than without KVM, you need a CPU with Intel® Virtualization Technology (Intel® VT) or AMD Virtualization™ (AMD-V™) support. Most systems have this disabled in the BIOS by default, so you may need to reboot and enable the feature in the BIOS.

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 [email protected]:redox-os/redox.git --origin upstream --recursive

$ cd redox/

# Install/update dependencies
$ bash bootstrap.sh -d

# Install rustup.rs
$ curl https://sh.rustup.rs -sSf | sh

# Set override toolchain to nightly build
$ rustup override set nightly

# For successive builds start here. If this is your first build, just continue

# Update git submodules
$ git submodule update --recursive --init

# 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

redox's People

Contributors

genodeftest avatar glendc avatar hockeybuggy avatar jackpot51 avatar msehnout avatar mus0u avatar nilset avatar pythoneer avatar ticki avatar waylon531 avatar yoric avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.