diff --git a/v2/devices/FP4.yml b/v2/devices/FP4.yml index 1a005ea2..d1277520 100644 --- a/v2/devices/FP4.yml +++ b/v2/devices/FP4.yml @@ -9,12 +9,12 @@ user_actions: description: "Please check that your device is a Fairphone 4 (FP4)." confirm_os: title: "Confirm OS version" - description: "Your device must be running the Fairphone OS version of Android 11 before installing Ubuntu Touch. With a previously installed custom ROM, it won't work!" - link: "https://support.fairphone.com/hc/en-us/articles/4405858261777" + description: "Your device must be running the Fairphone OS version of Android 11 before installing another operating system. With a previously installed custom ROM, it won't work!" + link: "https://support.fairphone.com/hc/en-us/articles/18896094650513-Installing-Fairphone-OS-Manually" unlock_phone: title: "Unlock the bootloader" - description: "Before installing Ubuntu Touch you must unlock the bootloader of your phone manually. Follow the steps in the linked page if you haven't already." - link: "https://support.fairphone.com/hc/en-us/articles/10492476238865" + description: "Before installing another operating system you must unlock the bootloader of your phone manually. Follow the steps in the linked page if you haven't already." + link: "https://support.fairphone.com/hc/en-us/articles/10492476238865-Manage-the-Bootloader" bootloader: title: "Reboot to Bootloader" description: "With the device powered off, press and hold the VOLUME DOWN button and plug the device into your PC via USB. After some seconds you'll see the fastboot mode." @@ -217,12 +217,28 @@ operating_systems: postmarketos:interfaces: prerequisites: [] steps: + ### Ensure we always start in bootloader mode - actions: - adb:reboot: to_state: "bootloader" fallback: - core:user_action: action: "bootloader" + ### Ensure the bootloader has been unlocked already + - actions: + - fastboot:wait: + - actions: + - fastboot:assert_var: + variable: "unlocked" + value: "yes" + fallback: + - core:user_action: + action: "unlock_phone" + ### As this is an A/B device, force all future operations in "a" slot. + - actions: + - fastboot:set_active: + slot: "a" + ### Flash partitions - actions: - postmarketos:download: - fastboot:erase: