mirror of
https://github.com/Klipper4FlashForge/firmware.git
synced 2026-10-23 13:52:16 -05:00
The mod replaces FlashForge's application outright, so the reasoning that still framed the web stack as coexisting with it was wrong on its own terms. * nginx and moonraker are documented as the only web stack on the printer. MOD_WEB=0 is a debugging switch that leaves ssh and the touchscreen, not a way back to stock -- that is a stock FlashForge package. The own-prefix rule stays, for the reason that is actually true: /usr/prog is the firmware partition and every FlashForge package reinstalls it, so a config written there is undone by the next stock flash. * Configs the mod ships now update when you have not edited them. A live file still byte-identical to the one the last package wrote is replaced; one you changed is kept and the new version lands beside it as .mod-new. $MODDIR/config-installed holds that last-written copy. Without this a config we own could only ever be written once: it exists on the second flash, so it would land as .mod-new forever and updates would never reach the printer. * Dropped the three dead /server/files/ alias blocks from nginx.conf. The regex location above them matches /server/ too and nginx gives regex locations precedence, so they never fired -- and had they fired, serving those paths from disk would 405 the DELETE and POST that Mainsail sends to the very same URLs. * Recorded what dies with firmwareExe, in docs/notes/25 and in the README: the :8898 REST API (FlashPrint, Orca's FlashForge profile, the mobile app) and the :8080 camera stream. The camera is the one that looks restorable and is not -- the MJPEG server is compiled into firmwareExe (its own accept loop, `GET /?action=stream`, boundarydonotcross) rather than being mjpg-streamer, so there is no daemon left to point a [webcam] at. assets/moonraker.conf carries the block, commented, for when a streamer is built for this board. Also in this change: the MOD_UI switch and the stock-UI path are gone, the chamber-heater model gate arrives with ff-model.cfg/ff-chamber.cfg, and the tests follow. make test: 32 passed, 1 failed. The failure is the probe end-to-end, which dies at "mount: failed to setup loop device for /stick.img" -- leaked loop devices on this build host, not the package. Probe installs nothing, and the default profile's install -> re-install -> boot passes in the same run. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
25 lines
981 B
Bash
25 lines
981 B
Bash
# THE DEFAULT PROFILE -- the actual firmware: everything, in one flash.
|
|
#
|
|
# Forked Klipper with toolchanger support, Mainsail/Moonraker, ssh, and
|
|
# HelixScreen driving the touchscreen in place of FlashForge's UI.
|
|
#
|
|
# Do not flash this until stage 0 (`make probe`) has come back clean on YOUR
|
|
# machine, and keep a USB stick with the STOCK FlashForge package within
|
|
# reach -- flashing that is the uninstall (proven by `make test-recovery`).
|
|
#
|
|
# FlashForge's firmwareExe is REPLACED, not kept: HelixScreen is the only UI.
|
|
# If it crash-loops, S80ui latches SAFE-MODE after 3 failed boots and the
|
|
# printer boots headless instead of looping. ssh and Mainsail are your
|
|
# recovery path if the screen is dark.
|
|
PROFILE_DESC="the firmware: forked Klipper + toolchanger + Mainsail + ssh + HelixScreen"
|
|
|
|
BUILD_REPORT=0 # the report dumps /etc + shadow to the stick: probe only
|
|
BUILD_APPLY=1
|
|
|
|
BUILD_KLIPPER=fork
|
|
BUILD_TOOLCHANGE=1
|
|
BUILD_MAINSAIL=1
|
|
BUILD_HELIX=1
|
|
MOD_SSH=1
|
|
MOD_WEB=1
|