docs: 1.0 is reached; Schcom stays; Linux's r8169 set ships

1.0: the acceptance test drops its reboot clause (a live system is the finish line) and passes. Schcom is kept with a
job: the installer's GUI first, SchDE on top later (roadmap section 5). The old 'LDLS ships no Linux code' policy is
gone from ldls/devices/licensing/Makefile/.gitignore/ldlsd; NOTICE records the r8169 modules (GPL-2.0-only) and the
Realtek firmware. The download button points at the v0.1.0 release asset; the stale 64 MB ISO under docs/Website is
removed. mkaroot.sh's -dumbSched comment no longer claims SchOS has no threads.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01EVRhxi9zpdW2uDUN4FVcao
This commit is contained in:
Nexoniarz 2026-10-26 08:23:20 +01:00
commit 59aff881ac
21 changed files with 175 additions and 141 deletions

View file

@ -50,20 +50,25 @@ Every one was a call that succeeded, returned zero, and did nothing.
Five, and everything else is an implementation of them.
### 1. Linux code may ship; so far the tree holds none
### 1. Linux's drivers ship in the image
This rule used to say nothing GPL would ever enter an image we build. It was a policy,
never a licence constraint — SchOS is GPL-2.0-or-later, and GPL-2.0-only code combines
with it — and the owner has overridden it: **Linux code and firmware blobs may be
shipped.** What survives of the rule is mechanical, not legal. The repository carries no
`*.ko` (`.gitignore` refuses them), and `make ldls-stage KO=…` / `make ldls-r8169` stage
modules into a *local* image from the Linux kernel on the build machine, because a module,
its dependencies and the BTF that describes them have to come from the same Linux build
and that kernel is the easiest place to get a matching set.
SchOS is GPL-2.0-or-later, and GPL-2.0-only code combines with it, so there is no
licensing reason to keep Linux's drivers out of an image. They are in: the **r8169 set**
(`mdio-bus`, `libphy`, `mdio_devres`, the Realtek PHY driver and `r8169`, unmodified) and
the RTL8168 PHY firmware are what the ISO carries for the laptop's network, with their
licence and corresponding source recorded in `NOTICE`
([../licensing.md](../licensing.md) §6).
Shipping one is therefore a decision about the release, not about the code: an ISO that
contains `r8169.ko` is a distribution of GPL-2.0-only code and carries the usual
obligation — its source goes with it — see [../licensing.md](../licensing.md) §6.
(An earlier version of this rule said the opposite — that LDLS would ship the layer and never
the thing it loads. That was written when SchOS was Apache-2.0 and the combination could not
be distributed; it stopped being true with the move to the GPL, and the owner has said Linux
code and blobs may be shipped.)
What is left is mechanical. The repository holds no `*.ko` — a binary does not belong in git, so
`.gitignore` refuses them — and `make ldls-r8169` (before `make iso`) stages the set from a
Linux build, together with its BTF, because a module, its dependencies and the BTF that
describes them have to come from the same build. `make ldls-stage KO=…` does the same for any
other module, which is then a distribution of *that* module's code, under its own licence.
### 2. It runs in a process, never in the kernel