workstation
builder-hex0
workstation | builder-hex0 | |
---|---|---|
2 | 6 | |
492 | 27 | |
0.2% | - | |
3.3 | 7.6 | |
2 months ago | 3 months ago | |
Python | C | |
MIT License | GNU General Public License v3.0 or later |
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.
workstation
-
NixOS Reproducible Builds: minimal ISO successfully independently rebuilt
I am on a similar journey
I built https://github.com/mikadosoftware/workstation
-
Docker as an Integrated Development Environment
I actually do do this - https://github.com/mikadosoftware/workstation
I like the idea of using k8s as suggested upthread. I just have not had much time to push changes / work on it recently. One thing worth thinking about is i have moved to podman - seems a lot slower to start up but is user space which seems sensibke
builder-hex0
- Builder-Hex0 – bootstrap compilers without a prebuilt binary
-
NixOS Reproducible Builds: minimal ISO successfully independently rebuilt
Isn't that what builder-hex0 does?
https://github.com/ironmeld/builder-hex0
-
Saving Knowledge Post-Collapse
They literally create a file system and whole operating system in 4KB of text and it is good enough to bootstrap GCC/Linux ( https://github.com/ironmeld/builder-hex0 )
- Builder-Hex0: kernel for bootstrapping compilers without trusting a binary
- Major breakthrough in bitcoin Trust
-
Writing a Simple Operating System – From Scratch [pdf]
"It is true: in our quest to make full use of the CPU, we must abandon all of those helpful routines provided by BIOS. As we will see when we look in more detail at the 32-bit protected mode switch-over, BIOS routines, having been coded to work only in 16-bit real mode, are no longer valid in 32-bit protected mode; indeed, attempting to use them would likely crash the machine.
"So what this means is that a 32-bit operating system must provide its own drivers for all hardware of the machine (e.g. the keybaord, screen, disk drives, mouse, etc). Actually, it is possible for a 32-bit protected mode operating system to switch temporarily back into 16-bit mode whereupon it may utilise BIOS, but this teachnique can be more trouble than it is worth, especially in terms of performance."
--
In the toy 32-bit OS I am currently writing, having easy disk access and text output was more important to me than performance, so I decided to implement this technique to access the disk and screen via the BIOS instead of writing an ATA disk driver.
Although I could not find any minimal yet complete working examples of dropping to 16 bit and later resuming 32 bit mode, I was able to piece it together and write assembly functions called enter_16bit_real and resume_32bit_mode. See https://github.com/ironmeld/builder-hex0/blob/main/builder-h.... Those routines are working well but beware the project is a volatile work in progress and is coded in hex for bootstrapping reasons.
What are some alternatives?
batect - (NOT MAINTAINED) Build And Testing Environments as Code Tool
uefi-rs - Rust wrapper for UEFI.
stage0-posix-x86
axiom-zig - A 64-bit kernel implemented in Zig
index - A PEP 503-compliant Python package index specifically providing wheels built for Alpine Linux
turning-polyglot-solutions-into-t
bootstrap-seeds - The roots of trust for all architectures
axiom - A 64-bit kernel implemented in Nim
nix-starter-configs - Simple and documented config templates to help you get started with NixOS + home-manager + flakes. All the boilerplate you need!
turning-polyglot-solutions-into-trusted-images