I am setting up a NanoPi T1 Plus later for testing reasons and will check where to find the bootloader cmd line. I hope it is possible without the need to recompile some bootloader/initramfs parts or something, but perhaps there is a reason why DietPi-Drive_Manager currently only supports userdata moving for RPi and Odroids.
Okay just checked, although not fully tested. Please create a full backup of the SDcard first, so you can recover from external system, if it does not boot up.
Boot arguments can be adjusted within /boot/boot.cmd.
In the line setenv bootargs edit root=/dev/mmcblk0p2 to the new root partition.
Then run mkimage -C none -A arm -T script -d /boot/boot.cmd /boot/boot.scr to convert to uboot readable config.
mkimage might need to be installed first: apt-get install -y u-boot-tools
Also adjust /etc/fstab to mount the new root partition.
Note that the boot partition itself needs to stay on the SDcard, since this is AFAIK the hardcoded place where SBCs are trying to initially boot from (start bootloader).
So instead of dd if=/dev/mmcblk0 of=/dev/sda bs=1M, only copy the root partition, e.g.: dd if=/dev/mmcblk0p2 of=/dev/sda1 bs=1M (with target partition already created)
This seems to be consistent across NanoPi. So if this works well, we could implement into dietpi-drive_manager, as we already support it for RPi and Odroids. Only difference here is the mkimage command, since bootloader seems to not read /boot/boot.cmd directly, similar to x86 grub devices, where update-grub is required after editing the cmd line arguments.