Add git sources, check-updates, repos submodule, improve docs

dpack features:
- Git source support: packages can specify [source].git for cloning
  instead of tarball download. Supports branch, tag, and commit pinning.
  SHA256 can be set to "SKIP" for git sources.
- check-updates command: queries upstream APIs (GitHub releases/tags)
  to find available updates. Packages set [source].update_check URL.
- CheckUpdates CLI subcommand wired into main.rs

Package changes:
- FreeCAD updated to weekly-2026.03.19 development builds
- dwl: added update_check URL and git source documentation
- src/repos extracted to standalone git repo (danny8632/repos.git)
  and added as git submodule

Documentation:
- All 7 README.md files updated with detailed requirements sections
  including which Linux distros are supported, exact package names
  for Arch/Ubuntu/Fedora, and clear notes about which components
  require Linux vs can be built on macOS
- dpack README: added git source and check-updates documentation

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
2026-03-19 11:58:23 +01:00
parent 029642ae5b
commit 5fb597e2d6
136 changed files with 509 additions and 2731 deletions

View File

@@ -14,20 +14,44 @@ The build produces a self-hosting chroot environment capable of compiling everyt
## Requirements
- A Linux host system (any recent distro)
- ~20GB free disk space
- Internet access (for downloading sources)
- Host tools: bash, gcc, g++, make, bison, gawk, m4, texinfo, xz, wget/curl
**Environment:** Any Linux distribution (x86_64). This does NOT run on macOS or Windows.
The toolchain bootstrap is a cross-compilation step that runs entirely on a Linux host and produces a self-contained chroot targeting the DarkForge hardware.
**Tested host distros:**
- Arch Linux (recommended)
- Ubuntu 22.04+, Debian 12+
- Fedora 38+
**Required packages:**
```bash
# Arch Linux
sudo pacman -S base-devel wget texinfo
# Ubuntu / Debian
sudo apt install build-essential bison gawk m4 texinfo xz-utils wget
# Fedora
sudo dnf groupinstall "Development Tools" && sudo dnf install texinfo wget
```
**Minimum versions:** GCC 12+, GNU Make 4.x, Bash 5.x, Python 3.10+
**Disk space:** ~20GB for the full toolchain build (sources + build artifacts)
**Dedicated partition:** You need a separate partition (or loopback image) mounted at `$LFS` (default: `/mnt/darkforge`). This becomes the root of the new system.
### Host System Verification
Check your host has the required tools:
```bash
# Verify essential tools are present
for cmd in bash gcc g++ make bison gawk m4 texinfo xz wget; do
command -v $cmd >/dev/null && echo "OK: $cmd" || echo "MISSING: $cmd"
done
# Check GCC version (need 12+ for znver4/znver5 support)
gcc --version | head -1
```
## Build Process