feat: redesign installer on MTK toolkit with component selection
Rewrite the Installer app on the Montauk Toolkit (Canvas + gui/mtk widgets, theme, hover states, scrollbar) replacing the hand-rolled px_* renderer and bespoke TrueType usage. Add a new "Software" step: an expandable checkbox tree for optional components (Montauk SDK with gcc/g++, binutils, tcc, lua sub-items; Games; Office; Internet apps; Printing; experimental httpd and SDR). Unchecked components' paths are excluded from the install copy, with a longest-path ownership rule so e.g. sdk/tcc installs even when the rest of the SDK is deselected. The update flow refreshes only the components the target already has. Add tri-state checkbox and disclosure-arrow widgets to the MTK toolkit (anti-aliased, supersampled). Merge tcc and lua into 0:/sdk (0:/sdk/tcc, 0:/sdk/lua) and drop 0:/lib: update tcc config.h, lua luaconf.h, both Makefiles, the devkit clean scope, man pages and montaukos.org notices. Make printing optional: init skips printd when 0:/os/printd.elf is absent. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -89,7 +89,7 @@ TARGET := $(BINDIR)/tcc.elf
|
||||
# ---- CRT objects (staged from shared libc) ----
|
||||
|
||||
SHARED_CRT_DIR := $(LIBDIR)/libc
|
||||
CRT_DIR := ../../bin/lib/tcc/lib
|
||||
CRT_DIR := ../../bin/sdk/tcc/lib
|
||||
CRT_OBJS := $(CRT_DIR)/crt1.o $(CRT_DIR)/crti.o $(CRT_DIR)/crtn.o
|
||||
|
||||
# ---- Rules ----
|
||||
|
||||
@@ -16,10 +16,10 @@
|
||||
#undef CONFIG_TCC_BCHECK
|
||||
|
||||
/* Paths on MontaukOS ramdisk */
|
||||
#define CONFIG_TCCDIR "0:/lib/tcc"
|
||||
#define CONFIG_TCC_SYSINCLUDEPATHS "0:/lib/tcc/include"
|
||||
#define CONFIG_TCC_LIBPATHS "0:/lib/tcc/lib"
|
||||
#define CONFIG_TCC_CRTPREFIX "0:/lib/tcc/lib"
|
||||
#define CONFIG_TCCDIR "0:/sdk/tcc"
|
||||
#define CONFIG_TCC_SYSINCLUDEPATHS "0:/sdk/tcc/include"
|
||||
#define CONFIG_TCC_LIBPATHS "0:/sdk/tcc/lib"
|
||||
#define CONFIG_TCC_CRTPREFIX "0:/sdk/tcc/lib"
|
||||
#define CONFIG_TCC_ELFINTERP ""
|
||||
|
||||
/* We are not native -- no -run support */
|
||||
|
||||
Reference in New Issue
Block a user