This commit is contained in:
Jeremy Soller 2024-05-08 13:09:09 -06:00
commit 45f7cb9369
No known key found for this signature in database
GPG key ID: D02FD439211AF56F
2 changed files with 33 additions and 42 deletions

View file

@ -2,22 +2,27 @@
<img alt="Redox" width="346" src="https://gitlab.redox-os.org/redox-os/assets/raw/master/logos/redox/logo.png">
</p>
[Redox](https://www.redox-os.org) is an operating system written in Rust, a language with focus on safety, efficiency and high performance. Redox, following the microkernel design, aims to be reliable, secure, usable, correct and free. Redox is inspired by previous operating systems, such as seL4, MINIX, Plan 9, Linux and BSD.
This repository is the **Build System** for Redox OS. Redox is under active development by a vibrant community. Key links:
Redox _is not_ just a kernel, it's a **full-featured operating system**, providing components (memory allocator, file system, display manager, core utilities, etc.) that together make up a functional and convenient operating system. You can loosely think of it as the GNU or BSD ecosystem, but in a memory safe language and with modern technology.
- [The **main website** for Redox OS](https://www.redox-os.org).
- [The Redox Book](https://doc.redox-os.org/book/) and [Build Instructions](https://doc.redox-os.org/book/ch02-05-building-redox.html).
- [Redox Chat and Support](https://matrix.to/#/#redox-join:matrix.org).
- [Patreon](https://www.patreon.com/redox_os), [Donate](https://redox-os.org/donate/) and [Merch](https://redox-os.creator-spring.com/).
- Scroll down for a list of key Redox components and their repos.
[Redox](https://www.redox-os.org) is an operating system written in Rust, a language with focus on safety, efficiency and high performance. Redox uses a microkernel architecture, and aims to be reliable, secure, usable, correct, and free. Redox is inspired by previous operating systems, such as seL4, MINIX, Plan 9, Linux and BSD.
Redox _is not_ just a kernel, it's a **full-featured operating system**, providing components (file system, display manager, core utilities, etc.) that together make up a functional and convenient operating system. Redox uses the COSMIC desktop apps, and provides source code compatibility with many Rust, Linux and BSD programs.
[![Downloads](https://img.shields.io/github/downloads/redox-os/redox/total.svg)](https://gitlab.redox-os.org/redox-os/redox/tags)
[![MIT licensed](https://img.shields.io/badge/license-MIT-blue.svg)](./LICENSE)
## Guide
This is the main repository of the Redox GitLab where the build system files are stored, this README is used to guide new developers.
You can find the most important pages below:
## More Links
- [Book](https://doc.redox-os.org/book/)
- [Contribute](CONTRIBUTING.md)
- [Hardware Compatibility](HARDWARE.md)
- Run Redox in a [Virtual Machine](https://doc.redox-os.org/book/ch02-01-running-vm.html) or on [Real Hardware](https://doc.redox-os.org/book/ch02-02-real-hardware.html)
- [Trying Out Redox](https://doc.redox-os.org/book/ch02-04-trying-out-redox.html)
- [Building Redox](https://doc.redox-os.org/book/ch02-05-building-redox.html)
- [Build System Documentation](https://doc.redox-os.org/book/ch08-06-build-system-reference.html)
@ -26,42 +31,28 @@ You can find the most important pages below:
## Ecosystem
These are the most important repositories available on the Redox GitLab:
Some of the key repositories on the Redox GitLab:
| Name (lexicographic order) | Maintainer
| Essential Repos | Maintainer
|--------------------------------------------------------------------------------------|---------------------------
| [acid (kernel integration tests)](https://gitlab.redox-os.org/redox-os/acid) | **@jackpot51**
| [binutils](https://gitlab.redox-os.org/redox-os/binutils) | **@jackpot51**
| [cookbook](https://gitlab.redox-os.org/redox-os/cookbook) | **@jackpot51** **@hatred_45** **@ids1024**
| [coreutils](https://gitlab.redox-os.org/redox-os/coreutils) | **@jackpot51**
| [extrautils](https://gitlab.redox-os.org/redox-os/extrautils) | **@jackpot51**
| [games](https://gitlab.redox-os.org/redox-os/games) | **@fabiao**
| [Ion (shell)](https://gitlab.redox-os.org/redox-os/ion) | **@jackpot51**
| [ipcd](https://gitlab.redox-os.org/redox-os/ipcd) | **@jackpot51**
| [kernel](https://gitlab.redox-os.org/redox-os/kernel) | **@jackpot51**
| [libextra](https://gitlab.redox-os.org/redox-os/libextra) | **@jackpot51**
| [libpager](https://gitlab.redox-os.org/redox-os/libpager) | **@jackpot51**
| [netstack](https://gitlab.redox-os.org/redox-os/netstack) | **@jackpot51**
| [netutils](https://gitlab.redox-os.org/redox-os/netutils) | **@jackpot51**
| [orbclient (Orbital client)](https://gitlab.redox-os.org/redox-os/orbclient) | **@jackpot51** **@FloVanGH**
| [orbdata](https://gitlab.redox-os.org/redox-os/orbdata) | **@jackpot51**
| [orbgame (Orbital 2D game engine)](https://gitlab.redox-os.org/redox-os/orbgame) | **@FloVanGH**
| [Kernel](https://gitlab.redox-os.org/redox-os/kernel) | **@jackpot51**
| [RedoxFS (default filesystem)](https://gitlab.redox-os.org/redox-os/redoxfs) | **@jackpot51**
| [Drivers](https://gitlab.redox-os.org/redox-os/drivers) | **@jackpot51**
| [Orbital (windowing and compositing system)](https://gitlab.redox-os.org/redox-os/orbital) | **@jackpot51**
| [orbtk (Orbital toolkit)](https://gitlab.redox-os.org/redox-os/orbtk) | **@FloVanGH**
| [orbutils (Orbital utilities)](https://gitlab.redox-os.org/redox-os/orbutils) | **@jackpot51**
| [pkgutils (current package manager)](https://gitlab.redox-os.org/redox-os/pkgutils) | **@jackpot51**
| [ralloc](https://gitlab.redox-os.org/redox-os/ralloc) | **@jackpot51**
| [RANSID (Rust ANSI driver)](https://gitlab.redox-os.org/redox-os/ransid) | **@jackpot51**
| [redoxfs (default filesystem)](https://gitlab.redox-os.org/redox-os/redoxfs) | **@jackpot51**
| [relibc (C Library in Rust)](https://gitlab.redox-os.org/redox-os/relibc) | **@jackpot51**
| [small (stack String and other collections)](https://gitlab.redox-os.org/redox-os/small) | **@jackpot51**
| [syscall](https://gitlab.redox-os.org/redox-os/syscall) | **@jackpot51**
| [Sodium (Vim-inspired text editor)](https://gitlab.redox-os.org/redox-os/sodium) | **@jackpot51**
| [The Redox book](https://gitlab.redox-os.org/redox-os/book) | **@hatred_45**
| [userutils](https://gitlab.redox-os.org/redox-os/userutils) | **@jackpot51**
| [netstack (protocol stack)](https://gitlab.redox-os.org/redox-os/netstack) | **@jackpot51**
| [Ion (shell)](https://gitlab.redox-os.org/redox-os/ion) | **@jackpot51**
| [Termion (terminal library)](https://gitlab.redox-os.org/redox-os/termion) | **@jackpot51**
| This repo - the root of the Build System | **@jackpot51**
| [cookbook (Build System for components)](https://gitlab.redox-os.org/redox-os/cookbook) | **@jackpot51** **@hatred_45**
| [Redoxer (Build/Test for Redox compatibility verification)](https://gitlab.redox-os.org/redox-os/redoxer) | **@jackpot51**
| [The Redox Book](https://gitlab.redox-os.org/redox-os/book) | **@hatred_45**
## What it looks like
See [Redox in Action](https://www.redox-os.org/screens/) for photos and videos.
<img alt="Redox" height="150" src="https://gitlab.redox-os.org/redox-os/assets/raw/master/screenshots/Senza%20titolo.jpeg">
<img alt="Redox" height="150" src="https://gitlab.redox-os.org/redox-os/assets/raw/master/screenshots/redox running.jpeg">
<img alt="Redox" height="150" src="https://gitlab.redox-os.org/redox-os/assets/raw/master/screenshots/IMG_1460.PNG">
@ -70,4 +61,3 @@ These are the most important repositories available on the Redox GitLab:
<img alt="Redox" height="150" src="https://gitlab.redox-os.org/redox-os/assets/raw/master/screenshots/Boot.png">
<img alt="Redox" height="150" src="https://gitlab.redox-os.org/redox-os/assets/raw/master/screenshots/IMG_1459.PNG">
See [Redox in Action](https://www.redox-os.org/screens/) for photos and videos.

View file

@ -350,7 +350,8 @@ archLinux()
doxygen \
lua \
ant \
protobuf"
protobuf \
rsync"
if [ "$1" == "qemu" ]; then
packages="$packages qemu"
@ -526,7 +527,7 @@ fedora()
echo "Unknown emulator: $1"
exit 1
fi
# Use rpm -q <package> to check if it's already installed
PKGS=$(for pkg in file \
autoconf \
@ -668,13 +669,13 @@ suse()
echo "Unknown emulator: $1"
exit 1
fi
echo "Installing necessary build tools..."
# We could install all the packages in a single zypper command with:
#
# zypper install package1 package2 package3
#
#
# But there is an issue with this: zypper returns a success code if at
# least one of the packages was correctly installed, but we need it to fail
# if any of the packages is missing.
@ -687,14 +688,14 @@ suse()
if rpm -q "${p}" > /dev/null ; then
echo "${p} is already installed"
else
# Zypper shows a confirmation prompt and the "y" answer even with
# Zypper shows a confirmation prompt and the "y" answer even with
# --non-interactive and --no-confirm:
#
# 1 new package to install.
# Overall download size: 281.7 KiB. Already cached: 0 B. After the operation, additional 394.6 KiB will be used.
# Continue? [y/n/v/...? shows all options] (y): y
#
# That could make the user think that the package was installed,
# That could make the user think that the package was installed,
# when it was only a dry run.
# To avoid the confusion, we hide the output unless there was an
# error.