lua-lfs-hard
live-bootstrap
lua-lfs-hard | live-bootstrap | |
---|---|---|
3 | 30 | |
2 | 274 | |
- | - | |
1.8 | 9.4 | |
over 2 years ago | 3 days ago | |
Shell | Shell | |
BSD Zero Clause License | GNU General Public License v3.0 only |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
lua-lfs-hard
-
Bored? How about trying a Linux speedrun? (2020)
I created a Linux image that allows for this about a year ago:
> Linux "distro" that only includes a Lua interpreter and a Lua library to issue syscalls
https://github.com/FranchuFranchu/lua-lfs-hard
-
Here we go again…
Shameless plug: I've published lua-lfs-hard, which is like a challenge where you have to build a system using Lua only. It's a bit like LFS but you have to do everything from inside the system.
- lua-lfs-hard: Like LFS, but hard mode
live-bootstrap
-
Finding Out Where Syscalls Are Called From: Stack Traces with Strace
strace is a rather powerfull tool if you want to find out what a certain executable is doing. Which files it is opening, reading and writing and also which other executables it is executing. I personally have not used the '--stack-trace' option yet.
Earlier this year, I have used it to analyze what happens during the initial steps of live-bootstrap [1] and produce a web page with all the information [2]. For this, I wrote a C program to parse and process the output of strace.
[1] https://github.com/fosslinux/live-bootstrap
[2] https://fransfaase.github.io/Emulator/
- Automated Bootstrapping from Source
- Bored? How about trying a Linux speedrun? (2020)
-
SectorC: A C Compiler in 512 bytes
Not using this, but tangentially related is (full disclosure, i am a maintainer of this project) live-bootstrap, which uses about a KB of binary to do a full "Linux from scratch" style thing - read https://github.com/fosslinux/live-bootstrap/blob/master/part... for all 143 steps you have to go through to get there.
-
Saving Knowledge Post-Collapse
Actually you can skip a file system entirely if you do something like stage0 or live-bootstrap https://github.com/fosslinux/live-bootstrap
-
Every night
See https://github.com/fosslinux/live-bootstrap, and https://github.com/fosslinux/live-bootstrap/blob/master/parts.rst has all the steps we take.
- Goodbye to the C++ Implementation of Zig
-
what is the smallest linux system capable of building itself?
live-bootstrap builds a variety of intermediate systems, starting from a <1KB binary seed (kernel excluded). Check parts.rst for a description, it's kinda wild just how many C and C subset compilers get compiled... but the end result is a system with musl and GCC 4.7, from which building the latest GCC is 2 steps away.
-
Ken Thompson: Reflections on Trusting Trust (Turing Award Lecture)
There is also live-bootstrap which uses a similar bootstrap chain to Guix (stage0 -> Mes -> tcc -> gcc), but without needing Guile/guix-daemon binaries etc. The whole thing starts with just a 357-byte binary seed (source)!
- Collapsing Internet
What are some alternatives?
NodeOS - Lightweight operating system using Node.js as userspace
nix-ld - Run unpatched dynamic binaries on NixOS
guix - Read-only mirror of GNU Guix — pull requests are ignored, see https://guix.gnu.org/en/manual/en/guix.html#Submitting-Patches instead
mescc-tools-seed - A place for public review of the posix port of stage0
brainfuck-x86-64 - A brainfuck interpreter written in x86-64 assembly
M2-Planet - The PLAtform NEutral Transpiler
rizin - UNIX-like reverse engineering framework and command-line toolset.
zig-bootstrap - take off every zig
libds - A collection of data structures for C
sc - Common libraries and data structures for C.
chibicc - A small C compiler
bootstrap-seeds - The roots of trust for all architectures