Update: The following works, after partitioning the NVMe drive:
root@mntreform:/dev# reform-migrate --help-full
Usage:
reform-migrate [--emmc] TARGET
Mounts TARGET and copies the currently running system to it using rsync. This will
overwrite all existing files in TARGET. At the end, reform-boot-config is run and
will set up the first partition of the SD-card or eMMC (depending on the --emmc
option) to load your newly copied rootfs and adjust /etc/fstab of TARGET accordingly.
Options:
--emmc Record boot preference on eMMC instead of SD card.
Examples:
reform-migrate --emmc /dev/nvme0n1p1
Mounts the first partition of an NVMe disk and mirrors your system to it.
Configures booting from the first partition on eMMC.
reform-migrate /dev/mapper/crypt
Mounts encrypted disk 'crypt' and mirrors your system to it.
The disk has to be unlocked first with: cryptsetup luksOpen /dev/nvme0n1p1 crypt
Configures booting from the first partition on the SD-card as --emmc option is missing.
root@mntreform:/dev# reform-migrate --emmc /dev/nvme0n1p2
/dev/mmcblk2p1 is still mounted somewhere.
Please unmount before running this script
root@mntreform:/dev# sudo umount /dev/mmcblk2p1
root@mntreform:/dev# reform-migrate --emmc /dev/nvme0n1p2
This script can copy your current OS and files to a different disk, such as an SSD installed in MNT Reform.
Warning: This will overwrite files on the target partition. Make sure you know what you're doing!
Before using this script, your target partition has to be formatted. You can use the gnome-disks program for that.
gnome-disks can also help you set up an encrypted disk. You can also run the following commands for one single
partition on NVMe:
parted /dev/nvme0n1 "mklabel msdos"
parted /dev/nvme0n1 "mkpart primary ext4 4MiB -1"
mkfs.ext4 /dev/nvme0n1p1
You can also setup an encrypted NVMe SSD by running reform-setup-encrypted-nvme
Running rsync to copy approximately 3G of data in about 210k files...
Trying to mount /dev/nvme0n1p2... (if this fails, format the disk/partition as explained above)
Target partition successfully mounted. The next step will copy all your files over to the target, overwriting existing files in the process.
Are you sure you want to proceed? [y/N] y
Starting the copy. This can take a while.
Files copied.
/dev/nvme0n1p2 unmounted.
Running reform-boot-config...
This script selects your preferred boot medium. It writes your choice to the file /etc/fstab
the /boot partition /dev/mmcblk2p1 referenced by the rootfs at /dev/nvme0n1p2 remains the same
commenting original /etc/fstab contents
update-initramfs: Generating /boot/initrd.img-6.9.12-mnt-reform-arm64
W: No zstd in /usr/bin:/sbin:/bin, using gzip
Using DTB: freescale/imx8mp-mnt-pocket-reform.dtb
Installing /usr/lib/linux-image-6.9.12-mnt-reform-arm64/freescale/imx8mp-mnt-pocket-reform.dtb into /boot/dtbs/6.9.12-mnt-reform-arm64/freescale/imx8mp-mnt-pocket-reform.dtb
Taking backup of imx8mp-mnt-pocket-reform.dtb.
Installing new imx8mp-mnt-pocket-reform.dtb.
Installing /usr/lib/linux-image-6.9.12-mnt-reform-arm64/freescale/imx8mp-mnt-pocket-reform.dtb into /boot/dtbs/6.9.12-mnt-reform-arm64/freescale/imx8mp-mnt-pocket-reform.dtb
Taking backup of imx8mp-mnt-pocket-reform.dtb.
Installing new imx8mp-mnt-pocket-reform.dtb.
flash-kernel: installing version 6.9.12-mnt-reform-arm64
Generating boot script u-boot image... done.
Taking backup of boot.scr.
Installing new boot.scr.
Your /boot partition is on emmc (/dev/mmcblk2p1).
Restart MNT Reform (type: reboot) after saving your work to activate the changes.
After rebooting:
voltagex@mntreform:~$ mount | grep ext4
/dev/nvme0n1p2 on / type ext4 (rw,relatime,errors=remount-ro)
/dev/mmcblk2p1 on /boot type ext4 (rw,relatime,errors=remount-ro)
Received my Pocket Reform today! Very exciting and it all seems to be working well, however, I’d rather boot from NVMe to save wearing out the eMMC.
$ sudo reform-boot-config --emmc nvme
This script selects your preferred boot medium. It writes your choice to the file /etc/fstab
lsblk: /dev/nvme0n1p1: not a block device
reform-boot-config FAILED to run
Edit: my mistake, thanks @andypiper
This script could definitely use a version number or perhaps a Debian package so I could check what I have via apt show.
I’ve run apt update && apt full-upgrade -y
as of the time of this post