linux

August 12, 2018 ยท View on GitHub

My take on a minimal Linux config, featuring musl and LLVM.

Components

Stage 0

Stage 1

Stage 2 (WIP)

Stage 3 (WIP)

Tarball (WIP)

Docker image (WIP)

Bootable system (WIP)

Caution

NEVER EXECUTE SCRIPTS YOU DO NOT UNDERSTAND!

THESE SCRIPTS INCLUDE sudo DIRECTIVES, GAINING SUPERUSER ACCESS AND THEREFORE THE ABILITY TO HARM YOUR SYSTEM!

chroot notes

Stages 1 and 2 use a chroot environment. Because of that, /dev and /proc will get mounted (once) at the chroot root. Be careful when experimenting with this environment and don't forget to u(n)mount these paths when finished. ./tool clean can attempt to do this for you, but there is guarantee it actually works.

Usage

This project is built using tool (a bash script):

./tool

    build tool

        usage: tool <command>

            available commands:
                preflight   - run preflight checks
                build       - build all
                clean       - delete downloads and cleans up chroots
                clean-build - delete build directory
                stage0      - build only stage0
                stage1      - build only stage1 (depends on stage0)
                stage2      - build only stage2 (depends on stage1)
                info        - show information regarding current configuration
                version     - show this tools version
                help        - show this help


What works

Currently, stages 0 and 1 work.

Resources