Fix the boot logo source, and put /etc under version control

LOGO_SRC named "Assets/SchOS Small Logo.png", which no longer exists --
the small logo was replaced by the full logo, the same mark slightly
redrawn. `make logo` had been failing since. Points at the full logo now;
not the text logo, which is the wordmark and would be illegible scaled to
128 px. Verified by photographing the splash: the mark renders as the
circle with Sch over OS.

/etc lived only in sysroot/, which is generated and gitignored, so
/etc/passwd, /etc/group, /etc/profile, /etc/kshrc and /etc/motd would all
have been missing from a fresh clone -- and the machine boots to a shell
that reads them. They are tracked under etc/ now and installed by
etc-install alongside the schinit manifests.

/etc/motd still said "Schunix": the rename swept tracked files, and this
one was excluded from version control at the time. Fixed.

Noted while checking: sysroot/bin/sh still contains the symbol
__schunix_tp, so the staged mksh predates the rename of the musl TLS
patch to __schos_tp. Harmless -- it is an internal symbol -- but it
confirms the staged ports are older than the patches that produce them,
and they cannot be rebuilt on a Windows host. It resolves the next time
ports are built on Linux.
This commit is contained in:
Nexoniarz 2026-08-09 16:51:04 +02:00
commit 9b6106eab2
7 changed files with 399 additions and 376 deletions

View file

@ -693,11 +693,14 @@ $(MKFS): tools/mkfs.c include/fs.h include/stat.h include/param.h
# /etc/passwd and /etc/motd and should not become true of the boot
# configuration as well.
SCHINIT_JOBS = $(wildcard etc/schinit/*.job) etc/schinit/README
ETC_FILES = $(wildcard etc/*)
ETC_PLAIN = $(filter-out etc/schinit,$(ETC_FILES))
etc-install: $(SCHINIT_JOBS)
etc-install: $(SCHINIT_JOBS) $(ETC_PLAIN)
@mkdir -p $(SYSROOT)/etc/schinit
@cp $(ETC_PLAIN) $(SYSROOT)/etc/
@cp $(SCHINIT_JOBS) $(SYSROOT)/etc/schinit/
@echo "installed $(words $(SCHINIT_JOBS)) schinit manifest file(s)"
@echo "installed $(words $(ETC_PLAIN)) /etc file(s) and $(words $(SCHINIT_JOBS)) schinit manifest(s)"
sysroot-install: $(addprefix $(SYSROOT)/bin/, $(CMDS)) etc-install
ifdef WINHOST
@ -805,7 +808,10 @@ qemu-schfs: schos.img $(BUILD)/schfs.img
# derives from art that changes about never, and making it a build dependency
# would put Python on the critical path of every clean build for no benefit.
# Run this by hand after changing the art.
LOGO_SRC = Assets/SchOS Small Logo.png
# The mark, not the wordmark. "SchOS Text Logo.png" is the text form and would
# be illegible scaled to LOGO_PX; the small logo this used to name is gone,
# replaced by the full logo, which is the same mark slightly redrawn.
LOGO_SRC = Assets/SchOS Full Logo.png
LOGO_PX = 128
logo: