Commit Graph
4 Commits
Author SHA1 Message Date
OpenIPC AI teamandGitHub c98adedbeb apfpv: stop writing outgoing.enabled, which majestic no longer has (#158)
`outgoing.enabled` was one switch for the whole list of places a camera
publishes to. Each destination has carried its own since
OpenIPC/majestic#701, and the section switch was removed rather than kept
as a second gate — so this line writes a key nothing reads. majestic
strips it from the tree on load and the next save drops it from the file.

The `.outgoing.server` line below it stays and is untouched: `cli` edits
majestic.yaml directly, majestic converts that address into a row of its
destination list on load, and the camera publishes exactly as before.
There is no way to write a list element through yaml-cli — its path
validator rejects the brackets — so the single-address spelling is the one
this script must keep using.
2026-09-14 12:28:45 +03:00
OpenIPC AI teamandGitHub a5882d5e80 package: stop selecting jsonfilter, mirroring firmware #2304 (#128)
OpenIPC/firmware dropped BR2_PACKAGE_JSONFILTER from every one of its
defconfigs in #2304, once the WebUI stopped calling it. builder's defconfigs are
its own files, so 97 of them kept selecting it. jsonfilter selects JSON_C and
LIBUBOX, and on a device that enables neither uqmi-openipc nor wifibroadcast-ng
nothing else selects libubox, so it and jsonfilter shipped for nothing.

That is what has had three devices over their rootfs cap:

    hi3518ev200_lite_switcam-hs303      rootfs 5124KB/5120KB   -4KB
    ssc333_lite_babysense-see-hd-ip206  rootfs 5124KB/5120KB   -4KB
    ssc333_lite_meari-speed-6s          rootfs 5128KB/5120KB   -8KB

all three red on the nightly, meari since 2026-08-24. Bisecting meari across
firmware revisions lands on #2301, which added 408 bytes to the comment-stripped
sysupgrade script -- these images had no headroom left at all, and 408 bytes of
a genuine bug fix was enough to push one over a 4KB padding step. The fix is to
give them headroom, not to give back the bug fix.

Measured on ssc333_lite_meari-speed-6s, built the way builder.sh builds it --
devices/<item>/ copied over a firmware checkout at master, clean tree both times:

    before   rootfs.squashfs 5128KB/5120KB   size exceeded by: 8KB
    after    rootfs.squashfs 5096KB/5120KB   24KB spare

-32KB, from /usr/bin/jsonfilter (18068 raw) and /usr/lib/libubox.so (30404 raw).
json-c does NOT go: majestic lists it in MAJESTIC_DEPENDENCIES, so buildroot
builds and installs it whether or not BR2_PACKAGE_JSON_C is set. Only the two
files above leave the image.

Two consumers genuinely need jsonfilter and both keep it:

  * devices/apfpv's own etc/init.d/S99msposd reads majestic's config.json
    through it, and ssc338q_apfpv and ssc378qe_apfpv do not enable
    wifibroadcast-ng. Those two keep the symbol, with the reason written above
    the line -- the same undeclared-runtime-dependency trap firmware #2305 had
    to fix, and the reason this is 95 defconfigs and not 97.

  * every other FPV device enables wifibroadcast-ng, whose Config.in selects
    BR2_PACKAGE_JSONFILTER (added by #2305) for the same script. They keep it
    without saying so.

LTE devices keep libubox through uqmi-openipc, which selects it independently.

Nothing else in this repository calls jsonfilter: grepping devices/ and
package/ finds only that one S99msposd line, and firmware's own tree has no
caller left outside wifibroadcast-ng.
2026-08-25 20:29:47 +03:00
viktorxda 42eea9633e temporarily exclude msposd from infinity6c 2025-10-31 00:35:39 +01:00
viktorxda 2f42252d35 merge apfpv builds 2025-08-05 17:44:10 +02:00