Skip to content

leizongmin/newos

Repository files navigation

GitHub FOSSA Status Docker

newos

A Linux kernel based operating system.

Why this project

This is my testing ground for learning the operating system, and I want to implement it in a different way from the traditional.

I want this new OS to keep the following features:

  • As far as I know, Rust will be merged into the Linux kernel. In this operating system, it uses Rust as much as possible to develop core software.
  • All software will be statically compiled as much as possible to ensure that you can use the latest or very old version, no matter what the libc version is.
  • Use modern alternatives to essential command line tools as much as possible.
  • Use the latest software version whenever possible.

Development

Requirements:

  • Newer macOS or Linux operating system.
  • Newer Docker installed.
  • Newer Rust installed (will be installed automatically via the make setup command).

Run below commands:

# setup the development environment
make setup
# make all targets
make all

Try it with Docker

Build and run manually:

make docker-image && make docker-run

or use a pre-built version:

docker run -it --rm ghcr.io/leizongmin/newos:main

TODO

  • Core software:
  • Boot:
    • Build the Linux Kernel from source.
    • Use GRUB as the boot loader.
    • Start and develop with QEMU.
    • Text-based Installer.
  • GUI:
    • Wayland.
    • A window manager written in Rust.
  • Sandbox:
    • A container sandbox written in Rust. From this sandbox, applications can be run in the environment of other Linux distributions.

License

Under the terms of the MIT License.

FOSSA Status

About

A Linux kernel based operating system

Resources

License

Stars

Watchers

Forks

Releases

No releases published