]> git.ipfire.org Git - thirdparty/openwrt.git/commitdiff
base-files: sysupgrade: Add new option -s to perform upgrade on current partition
authorPaweł Owoc <frut3k7@gmail.com>
Sat, 24 Feb 2024 19:25:43 +0000 (20:25 +0100)
committerRobert Marko <robimarko@gmail.com>
Thu, 16 Oct 2025 09:47:19 +0000 (11:47 +0200)
Add new option to be able to perform upgrade on current partition for dual firmware devices:
  "-s           stay on current partition (for dual firmware devices)"

Signed-off-by: Paweł Owoc <frut3k7@gmail.com>
Link: https://github.com/openwrt/openwrt/pull/14720
Link: https://github.com/openwrt/openwrt/pull/20086
Signed-off-by: Robert Marko <robimarko@gmail.com>
package/base-files/files/sbin/sysupgrade

index 611d8830bfd1ffea4ee84d931cda1f3984885b96..f31c4bc2e98aa295fb385cc9c4608709382b60b7 100755 (executable)
@@ -20,6 +20,7 @@ CONF_IMAGE=
 CONF_BACKUP_LIST=0
 CONF_BACKUP=
 CONF_RESTORE=
+USE_CURR_PART=0
 NEED_IMAGE=
 HELP=0
 TEST=0
@@ -50,6 +51,7 @@ while [ -n "$1" ]; do
                -r|--restore-backup) CONF_RESTORE="$2" NEED_IMAGE=1; shift;;
                -l|--list-backup) CONF_BACKUP_LIST=1;;
                -f) CONF_IMAGE="$2"; shift;;
+               -s) USE_CURR_PART=1;;
                -F|--force) export FORCE=1;;
                -T|--test) TEST=1;;
                -h|--help) HELP=1; break;;
@@ -79,6 +81,7 @@ upgrade-option:
        -p           do not attempt to restore the partition table after flash.
        -k           include in backup a list of current installed packages at
                     $INSTALLED_PACKAGES
+       -s           stay on current partition (for dual firmware devices)
        -T | --test
                     Verify image and config .tar.gz but do not actually flash.
        -F | --force
@@ -416,6 +419,7 @@ else
        json_add_string command "$COMMAND"
        json_add_object options
        json_add_int save_partitions "$SAVE_PARTITIONS"
+       [ $USE_CURR_PART -eq 1 ] && json_add_boolean use_curr_part 1
        json_close_object
 
        ubus call system sysupgrade "$(json_dump)"