Merge branch 'master' of https://gitlab.redox-os.org/redox-os/redox
This commit is contained in:
commit
45f7cb9369
62
README.md
62
README.md
|
@ -2,22 +2,27 @@
|
||||||
<img alt="Redox" width="346" src="https://gitlab.redox-os.org/redox-os/assets/raw/master/logos/redox/logo.png">
|
<img alt="Redox" width="346" src="https://gitlab.redox-os.org/redox-os/assets/raw/master/logos/redox/logo.png">
|
||||||
</p>
|
</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.
|
||||||
|
|
||||||
[](https://gitlab.redox-os.org/redox-os/redox/tags)
|
[](https://gitlab.redox-os.org/redox-os/redox/tags)
|
||||||
[](./LICENSE)
|
[](./LICENSE)
|
||||||
|
|
||||||
## Guide
|
## More Links
|
||||||
|
|
||||||
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:
|
|
||||||
|
|
||||||
- [Book](https://doc.redox-os.org/book/)
|
- [Book](https://doc.redox-os.org/book/)
|
||||||
- [Contribute](CONTRIBUTING.md)
|
- [Contribute](CONTRIBUTING.md)
|
||||||
- [Hardware Compatibility](HARDWARE.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)
|
- [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)
|
- [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)
|
- [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
|
## 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**
|
| [Kernel](https://gitlab.redox-os.org/redox-os/kernel) | **@jackpot51**
|
||||||
| [binutils](https://gitlab.redox-os.org/redox-os/binutils) | **@jackpot51**
|
| [RedoxFS (default filesystem)](https://gitlab.redox-os.org/redox-os/redoxfs) | **@jackpot51**
|
||||||
| [cookbook](https://gitlab.redox-os.org/redox-os/cookbook) | **@jackpot51** **@hatred_45** **@ids1024**
|
| [Drivers](https://gitlab.redox-os.org/redox-os/drivers) | **@jackpot51**
|
||||||
| [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**
|
|
||||||
| [Orbital (windowing and compositing system)](https://gitlab.redox-os.org/redox-os/orbital) | **@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**
|
| [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**
|
| [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**
|
| [netstack (protocol stack)](https://gitlab.redox-os.org/redox-os/netstack) | **@jackpot51**
|
||||||
| [syscall](https://gitlab.redox-os.org/redox-os/syscall) | **@jackpot51**
|
| [Ion (shell)](https://gitlab.redox-os.org/redox-os/ion) | **@jackpot51**
|
||||||
| [Sodium (Vim-inspired text editor)](https://gitlab.redox-os.org/redox-os/sodium) | **@jackpot51**
|
| [Termion (terminal library)](https://gitlab.redox-os.org/redox-os/termion) | **@jackpot51**
|
||||||
| [The Redox book](https://gitlab.redox-os.org/redox-os/book) | **@hatred_45**
|
| This repo - the root of the Build System | **@jackpot51**
|
||||||
| [userutils](https://gitlab.redox-os.org/redox-os/userutils) | **@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
|
## 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/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/redox running.jpeg">
|
||||||
<img alt="Redox" height="150" src="https://gitlab.redox-os.org/redox-os/assets/raw/master/screenshots/IMG_1460.PNG">
|
<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/Boot.png">
|
||||||
<img alt="Redox" height="150" src="https://gitlab.redox-os.org/redox-os/assets/raw/master/screenshots/IMG_1459.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.
|
|
13
bootstrap.sh
13
bootstrap.sh
|
@ -350,7 +350,8 @@ archLinux()
|
||||||
doxygen \
|
doxygen \
|
||||||
lua \
|
lua \
|
||||||
ant \
|
ant \
|
||||||
protobuf"
|
protobuf \
|
||||||
|
rsync"
|
||||||
|
|
||||||
if [ "$1" == "qemu" ]; then
|
if [ "$1" == "qemu" ]; then
|
||||||
packages="$packages qemu"
|
packages="$packages qemu"
|
||||||
|
@ -526,7 +527,7 @@ fedora()
|
||||||
echo "Unknown emulator: $1"
|
echo "Unknown emulator: $1"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Use rpm -q <package> to check if it's already installed
|
# Use rpm -q <package> to check if it's already installed
|
||||||
PKGS=$(for pkg in file \
|
PKGS=$(for pkg in file \
|
||||||
autoconf \
|
autoconf \
|
||||||
|
@ -668,13 +669,13 @@ suse()
|
||||||
echo "Unknown emulator: $1"
|
echo "Unknown emulator: $1"
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
|
|
||||||
echo "Installing necessary build tools..."
|
echo "Installing necessary build tools..."
|
||||||
|
|
||||||
# We could install all the packages in a single zypper command with:
|
# We could install all the packages in a single zypper command with:
|
||||||
#
|
#
|
||||||
# zypper install package1 package2 package3
|
# zypper install package1 package2 package3
|
||||||
#
|
#
|
||||||
# But there is an issue with this: zypper returns a success code if at
|
# 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
|
# least one of the packages was correctly installed, but we need it to fail
|
||||||
# if any of the packages is missing.
|
# if any of the packages is missing.
|
||||||
|
@ -687,14 +688,14 @@ suse()
|
||||||
if rpm -q "${p}" > /dev/null ; then
|
if rpm -q "${p}" > /dev/null ; then
|
||||||
echo "${p} is already installed"
|
echo "${p} is already installed"
|
||||||
else
|
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:
|
# --non-interactive and --no-confirm:
|
||||||
#
|
#
|
||||||
# 1 new package to install.
|
# 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.
|
# 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
|
# 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.
|
# when it was only a dry run.
|
||||||
# To avoid the confusion, we hide the output unless there was an
|
# To avoid the confusion, we hide the output unless there was an
|
||||||
# error.
|
# error.
|
||||||
|
|
Loading…
Reference in a new issue