Giter Site home page Giter Site logo

raptix's Introduction

Raptix

An open-source operating system (OS) running a Linux kernel with a custom filesystem hierarchy.

The focus of this project is to develop an operating system using an alterntive to the Filesystem Hierarchy Standard (FHS). This was inspired by "build notes" of qLinux. To speed up the build, mussel tool chain will be used to initiate the building process.

S T A T U S : Underdevelopment (no finished bootable build yet)

Tested architectures:

  • x86-64: In progress, on Glibc host
  • i686: pending
  • aarm64: pending

OS Specifications

Custom Filesystem Hierarchy Goals

The filesystem hierarchy used by Raptix is defined in /FHS of this repo.

  • Establish a functional filesystem hierarchy from the ground up.
  • The /system directory will contain the 'base OS'. This will be a minimal system that can boot and launch a shell.
  • The /apps directory will contain all the software _not required_ for boot.

(Current) Issues

  • /etc still expected by bash to resolve users. "I have no name!" prompt.
  • /dev still expected to be present instead of /system/dev. Lots of scripts (i.e. configure of autotools) expect /dev/null.
  • Lots of software look for /apps/include instead of /apps/inc...I might just stick with /apps/include
  • GCC still expects /usr/include instead of /apps/inc or /apps/include.
  • "unknown terminal type." when clearing terminal. /system/data/terminfo is a "NetBSD Constant Database" instead of a directory of of files containing terminal definitions.
  • Musl libc wont compile in chroot. Make complains that "/bin/sh" does not exist. Yet executing 'failing' commands execute fine... just not by `make`.

Build Method

  1. Build mussel
  2. Use mussel to build enough software to chroot.
  3. Chroot and build the final system.

Requirements (to run mussel & build Raptix)

The following software should be installed. The first 25 can be checked via ./check.sh in the top-level of the mussel repo. Listed versions are the minimum version per LFS-11.2.x ... otherwise, use the latest versions available per your distro.

  • Bash 3.2
  • bc
  • binutils 2.13.1
  • bison 2.7
  • bzip2
  • ccache
  • coreutils 6.9
  • diffutils 2.8.1
  • findutils 4.2.31
  • gawk 4.0.1
  • GCC(C & C++ support) 4.8
  • git
  • glibc/musl
  • grep 2.5.1a
  • gzip 1.3.12
  • linux kernel 3.2
  • lzip
  • m4 1.4.10
  • make 3.8
  • patch 2.5.4
  • perl 5.8.8
  • rsync
  • sed 4.1.5
  • tar 1.22
  • texinfo 4.7
  • wget/cURL
  • xz 5.0.0
  • zstd

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.