luci-app-advanced-reboot: update to 1.1.1
authorStan Grishin <stangri@melmac.ca>
Sun, 24 Aug 2025 02:11:28 +0000 (02:11 +0000)
committerStan Grishin <stangri@melmac.ca>
Tue, 6 Jan 2026 23:28:20 +0000 (23:28 +0000)
commit93b92f944a037d64ec0acaa56f55dd9af17cf231
tree72710720fec908134929b8a88163b90104787d8a
parent9c7e472edb207cb18a46fd191471dcdfc2645da0
luci-app-advanced-reboot: update to 1.1.1

This is a massive overwrite of the RPCD code from shell scrit to ucode
which in turn brought:
* update to the device json schema, which is now:
  * more structured
  * no weird names/object in json
  * customizable get, set, save commands per device (still need to be
    defined in ACL)
  * single partitions array now holding all data for
    toggling/labels/altMount
  * support for more than 2 bootable partition devices
* a _device_json_transform.jq file to translate schema from old format to
  new one for any WIP devices
* simplification of RPCD script as object can now be returned
* adjustments to the Javascript to parse new error messages and new RPCD
  reply structure
* integrate @systemcrash provided code/suggestions

I have tested both UBI volumes and dd-based information gathering on
alternative partition, I'd still welcome:
* tests on as many Linksys devices for actual partition toggling
  (rebooting to alternative)
* tests for both information gathering and partition toggling on:
  * "d-link,dgs-1210-28"
  * "mercusys,mr90x-v1"
  * "zyxel,nbg6817"

I also gladly welcome any code reviews for both updated javascript and
ucode.

Signed-off-by: Stan Grishin <stangri@melmac.ca>
56 files changed:
applications/luci-app-advanced-reboot/Makefile
applications/luci-app-advanced-reboot/htdocs/luci-static/resources/view/system/advanced-reboot.js [new file with mode: 0644]
applications/luci-app-advanced-reboot/htdocs/luci-static/resources/view/system/advanced_reboot.js [deleted file]
applications/luci-app-advanced-reboot/root/usr/libexec/rpcd/luci.advanced_reboot [deleted file]
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices.disabled/linksys-ea9500.json
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices.disabled/netgear-wac510.json
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices.disabled/xiaomi-ax3600.json [new file with mode: 0644]
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices.disabled/xiaomi-ax9000.json [new file with mode: 0644]
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices.json [new file with mode: 0644]
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices/_device_json_transform.jq [new file with mode: 0644]
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices/dlink-fgs1210-28.json
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices/linksys-e4200v2-ea4500.json
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices/linksys-e4200v2.json
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices/linksys-e7350.json
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices/linksys-ea3500.json
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices/linksys-ea4500.json
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices/linksys-ea6350v3.json
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices/linksys-ea6350v4.json
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices/linksys-ea7300v1.json
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices/linksys-ea7300v2.json
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices/linksys-ea7500v1.json
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices/linksys-ea7500v2.json
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices/linksys-ea8100v1.json
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices/linksys-ea8100v2.json
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices/linksys-ea8300.json
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices/linksys-ea8500.json
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices/linksys-mr5500.json
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices/linksys-mr7350.json
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices/linksys-mr7500.json
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices/linksys-mr8300.json
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices/linksys-mr9000.json [new file with mode: 0644]
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices/linksys-mx2000.json
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices/linksys-mx4200v1.json
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices/linksys-mx4200v2.json
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices/linksys-mx4300.json
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices/linksys-mx5300.json
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices/linksys-mx5500.json
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices/linksys-mx8500.json
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices/linksys-spnmx56.json
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices/linksys-whw01v1.json
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices/linksys-whw03.json
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices/linksys-whw03v2.json
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices/linksys-wrt1200ac.json
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices/linksys-wrt1900ac.json
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices/linksys-wrt1900acs.json
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices/linksys-wrt1900acv2.json
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices/linksys-wrt3200acm.json
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices/linksys-wrt32x.json
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices/mercusys-mr90xv1.json
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices/netgear-gs308t-v1.json [new file with mode: 0644]
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices/xiaomi-ax3600.json [deleted file]
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices/xiaomi-ax9000.json [deleted file]
applications/luci-app-advanced-reboot/root/usr/share/advanced-reboot/devices/zyxel-nbg6817.json
applications/luci-app-advanced-reboot/root/usr/share/luci/menu.d/luci-app-advanced-reboot.json
applications/luci-app-advanced-reboot/root/usr/share/rpcd/acl.d/luci-app-advanced-reboot.json
applications/luci-app-advanced-reboot/root/usr/share/rpcd/ucode/luci.advanced-reboot [new file with mode: 0644]