hwreport writes one folder to the first read-write FAT mount, or mounts the first USB stick that takes vfat itself and unmounts it afterwards: summary.txt (machine, firmware, CPU, memory, every PCI and USB device with its driver or "-- no driver"), dmesg.txt, lspci.txt in the shape of lspci -nnk -xxx, lsusb.txt, dmi.txt, memmap.txt, the ACPI tables as raw .dat files iasl -d reads, and copies of /proc. Serials, the UUID and the MSDM/SLIC tables (a Windows licence key) are left out. It reads /sys, which is new: sysfs at Linux's paths and in Linux's formats -- /sys/bus/pci/devices with uevent, config and resource, /sys/bus/usb/devices, /sys/firmware/acpi/tables, dmi/tables, memmap and efi, /sys/class/dmi/id. toybox's lspci and lsusb work unmodified against it. The USB core now keeps a table of attached devices for it. The machine's name comes from SMBIOS (kernel/dev/dmi.c). The UEFI loader hands over the entry point from the configuration table, the kernel falls back to the 0xF0000 scan, and the log gets Linux's "DMI:" line. Two bugs found on the way: - The loader handed over at most 40 memory-map entries, in firmware order. A laptop's UEFI map is 60-150 descriptors with RAM above 4 GB listed last, so that is what was dropped. The entries now have their own area at 0x31000 with room for 256, are sorted before merging, and the kernel's 32 usable regions keep the largest when there are more. - MemTotal and sysinfo's totalram were PHYSTOP, an address, which counts the PCI hole: a 6 GB machine reported 8. Now the usable RAM, summed. usb.ids moves to /usr/share/hwdata, where lsusb looks for it, and pci.ids joins it (`make pci-ids`, BSD-3-Clause like usb.ids). Checked under QEMU q35: the report written to a FAT32 stick, fsck.fat clean, DSDT.dat disassembled by iasl on the host, lspci -k and lsusb showing names, 6 GB of RAM seen as 6137 MB. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01S1giNvrHTrPMPw7V6x1kQ4
246 lines
13 KiB
Text
246 lines
13 KiB
Text
SchOS
|
|
Copyright 2026 Nexoniarz
|
|
|
|
This product includes software developed as part of the SchOS project,
|
|
licensed under the GNU General Public License, version 2 or (at your option)
|
|
any later version. See LICENSE.
|
|
|
|
================================================================================
|
|
Third-party software
|
|
================================================================================
|
|
|
|
SchOS incorporates and redistributes software written by others. Their
|
|
licences apply to their code and are NOT superseded by the SchOS licence.
|
|
A built SchOS image contains binaries derived from all of the following.
|
|
|
|
--------------------------------------------------------------------------------
|
|
xv6-x86_64 / xv6 MIT License
|
|
--------------------------------------------------------------------------------
|
|
Copyright (c) 2006-2019 Frans Kaashoek, Robert Morris, Russ Cox,
|
|
Massachusetts Institute of Technology CSAIL
|
|
|
|
The SchIFT kernel is a derivative work of xv6. Substantial portions of
|
|
kernel/ -- notably the process, trap, virtual memory, buffer cache and v1
|
|
filesystem code -- descend from it, however heavily rewritten. The MIT licence
|
|
requires that this notice be preserved in all copies; see LICENSE.MIT.
|
|
|
|
--------------------------------------------------------------------------------
|
|
musl libc 1.2.5 MIT License
|
|
--------------------------------------------------------------------------------
|
|
Copyright (c) 2005-2020 Rich Felker and contributors
|
|
|
|
Built from ports/musl. Provides the C library every userland program links
|
|
against. See the extracted source's COPYRIGHT file for the full contributor
|
|
list, which the MIT terms require be carried along with binaries.
|
|
|
|
--------------------------------------------------------------------------------
|
|
toybox 0.8.12 Zero-Clause BSD (0BSD)
|
|
--------------------------------------------------------------------------------
|
|
Copyright (c) 2006-2024 Rob Landley and contributors
|
|
|
|
Built from ports/toybox. Supplies the standard command set in /bin -- 268
|
|
applets, which is defconfig's 236 plus a curated set from toys/pending/ (awk,
|
|
bc, diff and the rest); see ports/toybox/Makefile. 0BSD imposes no attribution
|
|
requirement at all; this entry is courtesy, not obligation.
|
|
|
|
--------------------------------------------------------------------------------
|
|
kilo (commit 323d93b) BSD 2-Clause
|
|
--------------------------------------------------------------------------------
|
|
Copyright (c) 2016 Salvatore Sanfilippo <antirez@gmail.com>
|
|
|
|
Built from ports/kilo. Supplies /bin/kilo and /bin/edit, the text editor. The
|
|
BSD 2-Clause terms require the copyright notice and disclaimer be retained in
|
|
binary distributions; the full text is installed at
|
|
/usr/share/licenses/kilo/LICENSE in every image.
|
|
|
|
--------------------------------------------------------------------------------
|
|
mksh R59c MirOS Licence
|
|
--------------------------------------------------------------------------------
|
|
Copyright (c) 2002-2023 Thorsten Glaser and contributors
|
|
Portions derived from the Public Domain Korn Shell (pdksh)
|
|
|
|
Built from ports/mksh. Supplies /bin/sh. The MirOS Licence is permissive and
|
|
requires the copyright notice be retained.
|
|
|
|
--------------------------------------------------------------------------------
|
|
zsh 5.9 MIT-like
|
|
--------------------------------------------------------------------------------
|
|
Copyright (c) 1992-2017 Paul Falstad, Richard Coleman, Zoltan Hidvegi,
|
|
Andrew Main, Peter Stephenson, Sven Wischnowsky, and others
|
|
|
|
Built from ports/zsh. Installed as /bin/zsh and used as the interactive shell;
|
|
/bin/sh remains mksh.
|
|
|
|
zsh's LICENCE notes that a few shell functions are licensed under the GNU
|
|
General Public Licence and states that, since no core function is affected,
|
|
those files may simply be omitted. They are. ports/zsh/Makefile removes four
|
|
files after extraction -- completions for darcs, qdbus, osc and zypper -- and
|
|
refuses to install if any of them is still present. No GPL-licensed file is
|
|
shipped in a SchOS image.
|
|
|
|
--------------------------------------------------------------------------------
|
|
ncurses 6.4 MIT License
|
|
--------------------------------------------------------------------------------
|
|
Copyright 2018-2022 Thomas E. Dickey
|
|
Copyright 1998-2018 Free Software Foundation, Inc.
|
|
|
|
Built from ports/ncurses. Linked into zsh so that its line editor can drive a
|
|
terminal, and into sysroot/bin/tinfotest. Built with --disable-database and
|
|
compiled-in fallbacks, so no terminfo files are installed.
|
|
|
|
--------------------------------------------------------------------------------
|
|
lwIP 2.2.0 BSD 3-Clause
|
|
--------------------------------------------------------------------------------
|
|
Copyright (c) 2001, 2002 Swedish Institute of Computer Science
|
|
All rights reserved.
|
|
|
|
Redistribution and use in source and binary forms, with or without
|
|
modification, are permitted provided that the following conditions are met:
|
|
|
|
1. Redistributions of source code must retain the above copyright notice,
|
|
this list of conditions and the following disclaimer.
|
|
2. Redistributions in binary form must reproduce the above copyright notice,
|
|
this list of conditions and the following disclaimer in the documentation
|
|
and/or other materials provided with the distribution.
|
|
3. The name of the author may not be used to endorse or promote products
|
|
derived from this software without specific prior written permission.
|
|
|
|
THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
|
|
WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
|
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
|
|
EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
|
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
|
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
|
|
OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
|
|
WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
|
|
OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
|
|
ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|
|
|
Fetched by ports/lwip and compiled into the kernel -- it is the TCP/IP stack,
|
|
not a userland library, so it is present in every built kernel image rather
|
|
than in a binary under /bin. The port layer written for SchOS
|
|
(kernel/net/lwip/) is GPL-2.0-or-later and is not part of lwIP; lwIP's own
|
|
sources are unmodified. Clause 3 is a no-endorsement term, not the four-clause
|
|
advertising requirement, so it combines with the GPL without difficulty.
|
|
|
|
--------------------------------------------------------------------------------
|
|
uACPI 6.1.1 MIT
|
|
--------------------------------------------------------------------------------
|
|
Copyright (c) 2022-2026 Daniil Tatianin
|
|
|
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
of this software and associated documentation files (the "Software"), to deal
|
|
in the Software without restriction, including without limitation the rights
|
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
copies of the Software, and to permit persons to whom the Software is
|
|
furnished to do so, subject to the following conditions:
|
|
|
|
The above copyright notice and this permission notice shall be included in all
|
|
copies or substantial portions of the Software.
|
|
|
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
SOFTWARE.
|
|
|
|
Fetched by ports/uacpi and compiled into the kernel: it is the ACPI AML
|
|
interpreter, used for PCI interrupt routing, the power button and power-off.
|
|
The host layer written for SchOS (kernel/acpi/) is GPL-2.0-or-later and is not
|
|
part of uACPI; uACPI's own sources are unmodified.
|
|
|
|
--------------------------------------------------------------------------------
|
|
Intel 8254x device identifiers BSD 3-Clause
|
|
--------------------------------------------------------------------------------
|
|
Copyright (c) 2001-2020, Intel Corporation
|
|
All rights reserved.
|
|
|
|
The PCI device IDs in include/e1000.h are transcribed from FreeBSD's
|
|
sys/dev/e1000/e1000_hw.h, which carries the Intel 3-clause BSD licence above
|
|
(verified: no advertising clause). Only the identifier constants are used --
|
|
data, not implementation. kernel/drivers/net/e1000/e1000.c is written from
|
|
Intel's public manual 317453 and contains no FreeBSD or Intel driver code.
|
|
|
|
Redistribution and use in source and binary forms, with or without
|
|
modification, are permitted provided that the conditions of the 3-clause BSD
|
|
licence are met, including retention of this notice and the disclaimer, and
|
|
that neither the name of Intel Corporation nor the names of its contributors
|
|
are used to endorse or promote products derived from this software without
|
|
specific prior written permission.
|
|
|
|
--------------------------------------------------------------------------------
|
|
usb.ids -- USB vendor and product database BSD 3-Clause (dual-licensed)
|
|
--------------------------------------------------------------------------------
|
|
Maintained by Stephen J. Gowdy <linux.usb.ids@gmail.com>
|
|
http://www.linux-usb.org/usb.ids
|
|
|
|
Distributed by its maintainer under the terms of *either* the GNU General
|
|
Public License version 2 or later, *or* the 3-clause BSD Licence. SchOS takes
|
|
the BSD option, which was chosen while SchOS was Apache-2.0; either option is
|
|
compatible now, and the BSD one is kept because it asks less of anyone.
|
|
|
|
Shipped verbatim as /usr/share/hwdata/usb.ids. Cached in dist/ and refreshed
|
|
with `make usb-ids`, never automatically -- the version and date are in the
|
|
file's own header, so what shipped is always knowable.
|
|
|
|
--------------------------------------------------------------------------------
|
|
pci.ids -- PCI vendor and device database BSD 3-Clause (dual-licensed)
|
|
--------------------------------------------------------------------------------
|
|
Maintained by Albert Pool, Martin Mares and the PCI ID Project volunteers
|
|
https://pci-ids.ucw.cz/
|
|
|
|
Distributed under the terms of *either* the GNU General Public License version
|
|
2 or later, *or* the 3-clause BSD Licence, as its header states. SchOS takes
|
|
the BSD option, as for usb.ids.
|
|
|
|
Shipped verbatim as /usr/share/hwdata/pci.ids. Cached in dist/ and refreshed
|
|
with `make pci-ids`, never automatically.
|
|
|
|
--------------------------------------------------------------------------------
|
|
Roboto Apache-2.0
|
|
--------------------------------------------------------------------------------
|
|
Copyright the Roboto Project Authors (https://github.com/googlefonts/roboto)
|
|
|
|
Shipped as /usr/share/fonts/Roboto-Regular.ttf, from ports/Roboto. Licensed
|
|
under Apache-2.0. It is a separate data file loaded at run time, not code
|
|
linked into SchOS, so it sits beside the GPL as an aggregate and keeps its own
|
|
licence; the obligation is this notice. Intended for the desktop, window
|
|
manager and compositor.
|
|
|
|
--------------------------------------------------------------------------------
|
|
JetBrains Mono SIL OFL 1.1
|
|
--------------------------------------------------------------------------------
|
|
Copyright 2020 The JetBrains Mono Project Authors
|
|
(https://github.com/JetBrains/JetBrainsMono)
|
|
|
|
Shipped as /usr/share/fonts/JetBrainsMono-Regular.ttf, from ports/JetBrains_Mono
|
|
(full licence text at ports/JetBrains_Mono/OFL.txt). Intended for the terminal
|
|
and TTY.
|
|
|
|
Under the SIL Open Font License 1.1 the font remains under OFL even inside this
|
|
GPL-licensed system -- that does not reach any other part of SchOS -- and it may
|
|
not be sold on its own. Bundling it with an operating system is expressly
|
|
permitted. JetBrains Mono declares no Reserved Font Name, so a modified version
|
|
(a pre-rasterised bitmap, for instance) may keep the name.
|
|
|
|
Distinct from xv6 itself (LICENSE.MIT), which this project in turn derives from.
|
|
|
|
================================================================================
|
|
|
|
The build downloads upstream tarballs into dist/ and applies the patches in
|
|
ports/<name>/patches/. Nothing in ports/ is SchOS code; do not add first-party
|
|
work there. See docs/layout.md.
|
|
|
|
Licence questions -- what may be copied in, what may never be, and how to check
|
|
a NetBSD file's clause before using it -- are worked through in
|
|
docs/licensing.md.
|
|
|
|
fastfetch MIT
|
|
https://github.com/fastfetch-cli/fastfetch
|
|
Copyright (c) 2022 Linus Dierheimer and contributors
|
|
|
|
Built from source by ports/fastfetch and installed as /bin/fastfetch.
|
|
Unpatched: see the note at the top of that Makefile about why what it
|
|
cannot detect becomes work in the kernel rather than a patch here.
|