Home: - The hero stands on a light from the upper left and a pool of the accent, mixed from Niveus tokens so it follows the theme. The mark sits in an .nv-tile key under a slogan: "Every layer its own -- from the first instruction to the last pixel." - New section headings: "A teaching kernel that outgrew its lessons", "Measured, not marketed", "One ISO. One stick. Your disks untouched." - A Wallpapers section with the four new ones, each downloadable as a 4K JPEG or as SVG. The four-card grids are two across, so none is left alone on its row. Docs reader: - An index filter, a breadcrumb with reading time and source path, code blocks framed with a language strip and a Copy key, previous and next keys at the foot, a reading-progress hairline, and the contents entry lit for the section on screen. - The index lists the documents it was missing: scheduler, FAT, audio, LDLS, debugging and the hardware report. - On a phone the page is no longer wider than the screen (a pre block was sizing the grid's auto column), and the index folds away. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01S1giNvrHTrPMPw7V6x1kQ4
114 lines
4.5 KiB
HTML
114 lines
4.5 KiB
HTML
<!DOCTYPE html>
|
|
<html lang="en" data-theme="dark">
|
|
<head>
|
|
<meta charset="utf-8">
|
|
<meta name="viewport" content="width=device-width, initial-scale=1">
|
|
<title>Docs — SchOS</title>
|
|
<meta name="description" content="The SchOS documentation: architecture, guides, plans and the history of the bugs worth remembering.">
|
|
<link rel="icon" href="Assets/shift.svg" type="image/svg+xml">
|
|
|
|
<link rel="stylesheet" href="niveus/dist/niveus.css">
|
|
<script src="niveus/niveus/niveus.js" defer></script>
|
|
<link rel="stylesheet" href="app.css">
|
|
|
|
<script>
|
|
try {
|
|
var saved = localStorage.getItem("schos-theme");
|
|
if (saved === "system") document.documentElement.removeAttribute("data-theme");
|
|
else if (saved) document.documentElement.setAttribute("data-theme", saved);
|
|
} catch (e) { /* storage unavailable — keep the default */ }
|
|
</script>
|
|
|
|
<style>
|
|
:root { --nv-brand: #7C5CFF; }
|
|
</style>
|
|
</head>
|
|
|
|
<body>
|
|
|
|
<nav class="nv-nav" aria-label="Main" style="--nv-selection-name: nv-schos-nav">
|
|
<a class="nv-nav__brand" href="index.html">
|
|
<img class="nv-nav__icon" src="Assets/shift.svg" alt="">
|
|
SchOS
|
|
</a>
|
|
|
|
<ul class="nv-nav__list">
|
|
<li><a class="nv-nav__item" href="index.html">Home</a></li>
|
|
<li><a class="nv-nav__item" href="download.html">Download</a></li>
|
|
<li><a class="nv-nav__item" href="docs.html" aria-current="page">Docs</a></li>
|
|
</ul>
|
|
|
|
<span class="nv-nav__spacer"></span>
|
|
|
|
<a class="pride" href="#pride-note"
|
|
title="SchOS stands with the LGBTQIAP+ community — every month of the year">
|
|
<img src="Assets/pride.svg" alt="Progress Pride flag">
|
|
</a>
|
|
|
|
<div class="nv-button-group appearance" role="group" aria-label="Appearance">
|
|
<button class="nv-button nv-button--sm" data-nv-theme="light" aria-pressed="false">Light</button>
|
|
<button class="nv-button nv-button--sm" data-nv-theme="dark" aria-pressed="true">Dark</button>
|
|
<button class="nv-button nv-button--sm" data-nv-theme="system" aria-pressed="false">Auto</button>
|
|
</div>
|
|
</nav>
|
|
|
|
<div class="readbar" aria-hidden="true"><span id="readbar"></span></div>
|
|
|
|
<!-- Index, document, contents. Three columns that become one on a narrow
|
|
screen, in that order, because that is their order of importance when
|
|
there is only room for the middle one. -->
|
|
<div class="docshell">
|
|
<aside class="docshell__aside" aria-label="Documentation index">
|
|
<details class="nv-disclosure nv-disclosure--plain docindex" id="docindex" open>
|
|
<summary class="nv-button nv-button--sm nv-disclosure__summary">All documents</summary>
|
|
<div class="docfind">
|
|
<label class="nv-visually-hidden" for="docfilter">Filter documents</label>
|
|
<input class="nv-input nv-input--sm" id="docfilter" type="search"
|
|
placeholder="Filter documents…" autocomplete="off">
|
|
</div>
|
|
<nav class="nv-nav nv-nav--vertical nv-nav--static docnav" id="docnav"
|
|
style="--nv-selection-name: nv-docs-index"></nav>
|
|
</details>
|
|
</aside>
|
|
|
|
<main class="docshell__main">
|
|
<article class="nv-prose doc" id="doc" aria-live="polite">
|
|
<p class="nv-text-tertiary">Loading…</p>
|
|
</article>
|
|
</main>
|
|
|
|
<aside class="docshell__rail" aria-label="On this page">
|
|
<nav class="nv-nav nv-nav--vertical nv-nav--static docnav" id="toc"
|
|
style="--nv-selection-name: nv-docs-toc" hidden></nav>
|
|
</aside>
|
|
</div>
|
|
|
|
<footer class="shell site-footer">
|
|
<div class="nv-divider"></div>
|
|
<div class="site-footer__row">
|
|
<span class="nv-body">SchOS — kernel <b>SchIFT</b>, filesystem <b>SchFS</b>.</span>
|
|
<span class="nv-code nv-text-tertiary">GPL-2.0-or-later, with the xv6-derived core under MIT.</span>
|
|
</div>
|
|
|
|
<p class="nv-body nv-text-secondary pride-note" id="pride-note">
|
|
<img src="Assets/pride.svg" alt="">
|
|
Built by, and for, people of every orientation and gender identity.
|
|
The flag stays up all year.
|
|
</p>
|
|
|
|
<p class="nv-body nv-text-secondary nv-prose" id="ai-note">
|
|
<b class="nv-text-primary">On AI.</b>
|
|
Parts of SchOS were written with AI assistance, and that is not the measure
|
|
of anything. A project is good when the people building it understand what
|
|
was built, and bad when nobody does — whoever, or whatever, typed it. Vibe
|
|
your way through and you get something no one can fix. Stay in the loop and
|
|
you get a system you can explain line by line. The bug writeups in
|
|
<a href="docs.html?doc=history/kernel.md">history/</a> are where that gets
|
|
checked, including the wrong turns.
|
|
</p>
|
|
</footer>
|
|
|
|
<script src="docs.js"></script>
|
|
<script src="app.js"></script>
|
|
</body>
|
|
</html>
|