CalyxOS (is coming to) is here for FP4!

  1. I would wait for 3.8.0 to be released as stable / factory images, which should happen any minute now. OTA updates have been completely flawless so far, so once the September update becomes available you can just upgrade.
  2. The two most important things to look out for is, as you said, checking get_unlock_ability and making sure you don’t install a ROM that has a patch level older then the one you were running before.
    I still wouldn’t recommend it, there’s still some risk involved, but if you do lock your bootloader, make sure you meet both requirements.
3 Likes

Thanks for the fast answer! I will not lock it then.

Good recommendation not to lock. Question: If I would lock any time later- what would happen? Are data deleted again? Hope not!

Yes, every time you lock / unlock the bootloader or the critical partitions, userdata gets wiped.

5 Likes

Just updated to CalyxOS 3.8.0 (from 3.7.2, locked bootloader, no root) without issues :raised_hands:

Love the option to disable constant fingerprint unlocking.

Settings: Allow user configurable fingerprint wake-and-unlock (for FP4)

My Phone would regularly unlock in my pockets (because I usually keep my hand there as well). Now I have the same behavior as under FPOS :ok_hand:

I love what Calyx has been doing for the FP4 so far! :star_struck:

4 Likes

So is it recommended to go for an OTA Update right now?

I did not yet get any notification about an update :face_with_monocle:. Maybe I disabled some setting but not sure what I configured differently. Maybe Afwall+ blocks something. At least “CalyxOS Update Client” is allowed to access the internet.

Also is there anything I need to prepare in regards of Magisk (install a new 3.8.0 patched boot.img ) or is the OTA way of upgrading still the same?

Are you on the stable release channel? :thinking:
It’s still in beta, and there were some potential bugs discovered, that might have moved the timeline a little.

Magisk reinstall should be business as usual :slightly_smiling_face:

You are right, I’m on stable channel. :man_facepalming:
Will change that and see what happens.

So do I have to pass a new patched boot image on step 3 or will Magisk just be installed (re-installed) by/via the Magisk app?

Nope, you don’t need to supply a boot.img, the Magisk app just patches the other slot (if you don’t reboot your system in between and loose root).

Ok, now (yesterday) 3.8.0 was marked as stable and the related issue was closed.

So my phone (still configured to stable channel) started downloading:

It is possible to show the Changelog by clicking on the Downloading notification

My system update settings are:

This morning it looks like this:

So it already installed the new version. Is this a problem, when the order is not 100% the same?
I mean you ( @hirnsushi ) described that Magisk should be uninstalled beforehand.

Or can I still do it now (still before reboot) and directly reinstall it to Inactive Slot?

Also is there a way to control this a bit more? Like download but not directly install?

My phone did the same thing:

If you want to controll it, try turning off Automatic System Updates in Developer Settings. We’ll have to wait for the next one to see if that actually works :man_shrugging:

1 Like

Thx.
Preparing another “full” backup according my “backup strategy” ^^ right now and will give it a try then.

Will report back the result.

Hi guys,
After my initial attempt (which resulted in a locked bootloader) I want to give it another shot.
I couldn’t find calyxos 3.8.0 for Fairphone. Do I need to install an older version and the latest update is OTA?
My security update is still July, should not be s problem.

Thanks in advance!

I also requested such an option in their GitLab: OTA update behaviour should be configurable (allow to disable / delay auto-updates) (#1161) · Issues · CalyxOS / calyxos · GitLab

Interesting, I don’t get a notification for the stable one, even after searching for updates?

Edit: Also clicking “Änderungsprotokoll” doesn’t show a protocol anymore, it did show one on sunday.

Edit 2: AFAIK you should have lost root because of the auto-installation and need to re-root?

You don’t loose root immediately, only after a reboot.
Just like when you fastboot boot a patched boot.img, that’s all running from RAM, modifying the boot partition only matters the next time you load it into RAM (reboot).

1 Like

I just checked and the naming inside the .zip

… is still weird.
But I compared it to the 3.7.2 version and the files did actually change, so I guess someone didn’t update the names :man_shrugging:

Even if it was the previous version, that’s still patch level July, so you can go ahead.
If you decide to lock the bootloader (which I still wouldn’t recommend), make absolutely sure to check fastboot flashing get_unlock_ability!

2 Likes

Ok, worked fine. :white_check_mark:
(from 3.7.2 via OTA - stable channel, unlocked bootloader [as well as unlocked critical partitions], rooted via Magisk)

@hirnsushi is right, as long as you don’t reboot, you can still install to inactive slot and you will not lose root.

Details


Hit “OK” and “LET’S GO”

Magisk Log
- Target slot: _b
- Target image: /dev/block/sde37
- Device platform: arm64-v8a
- Installing: 25.2 (25200)
- Unpacking boot image
Parsing boot image: [/dev/block/sde37]
HEADER_VER      [2]
KERNEL_SZ       [37589008]
RAMDISK_SZ      [1612253]
SECOND_SZ       [0]
RECOV_DTBO_SZ   [0]
DTB_SZ          [406880]
OS_VERSION      [12.0.0]
OS_PATCH_LEVEL  [2022-07]
PAGESIZE        [4096]
NAME            []
CMDLINE         [androidboot.hardware=qcom androidboot.console=ttyMSM0 androidboot.memcg=1 lpm_levels.sleep_disabled=1 video=vfb:640x400,bpp=32,memsize=3072000 msm_rtb.filter=0x237 service_locator.enable=1 androidboot.usbcontroller=a600000.dwc3 swiotlb=2048 cgroup.memory=nokmem,nosocket loop.max_part=7 buildvariant=user]
CHECKSUM        [3301dd2856b15a2ee49bd3304952b4e3aed8f041000000000000000000000000]
KERNEL_FMT      [raw]
RAMDISK_FMT     [gzip]
VBMETA

- Checking ramdisk status
Loading cpio: [ramdisk.cpio]

- Stock boot image detected

- Patching ramdisk
Loading cpio: [ramdisk.cpio]
Add entry [init] (0750)
Create directory [overlay.d] (0750)
Create directory [overlay.d/sbin] (0750)
Add entry [overlay.d/sbin/magisk32.xz] (0644)
Add entry [overlay.d/sbin/magisk64.xz] (0644)
Patch with flag KEEPVERITY=[true] KEEPFORCEENCRYPT=[true]
Loading cpio: [ramdisk.cpio.orig]
Backup mismatch entry: [init] -> [.backup/init]
Record new entry: [overlay.d] -> [.backup/.rmlist]
Record new entry: [overlay.d/sbin] -> [.backup/.rmlist]
Record new entry: [overlay.d/sbin/magisk32.xz] -> [.backup/.rmlist]
Record new entry: [overlay.d/sbin/magisk64.xz] -> [.backup/.rmlist]
Create directory [.backup] (0000)
Add entry [.backup/.magisk] (0000)
Dump cpio: [ramdisk.cpio]
Loading dtbs from [dtb]
Patch @ 01E4BA0F [736B69705F696E697472616D667300] -> [77616E745F696E697472616D667300]
Parsing boot image: [/dev/block/sde37]
- Repacking boot image
HEADER_VER      [2]
KERNEL_SZ       [37589008]
RAMDISK_SZ      [1612253]
SECOND_SZ       [0]
RECOV_DTBO_SZ   [0]
DTB_SZ          [406880]
OS_VERSION      [12.0.0]
OS_PATCH_LEVEL  [2022-07]
PAGESIZE        [4096]
NAME            []
CMDLINE         [androidboot.hardware=qcom androidboot.console=ttyMSM0 androidboot.memcg=1 lpm_levels.sleep_disabled=1 video=vfb:640x400,bpp=32,memsize=3072000 msm_rtb.filter=0x237 service_locator.enable=1 androidboot.usbcontroller=a600000.dwc3 swiotlb=2048 cgroup.memory=nokmem,nosocket loop.max_part=7 buildvariant=user]
CHECKSUM        [3301dd2856b15a2ee49bd3304952b4e3aed8f041000000000000000000000000]
KERNEL_FMT      [raw]
RAMDISK_FMT     [gzip]
VBMETA
Repack to boot image: [new-boot.img]
HEADER_VER      [2]
KERNEL_SZ       [37589008]
RAMDISK_SZ      [2045643]
SECOND_SZ       [0]
RECOV_DTBO_SZ   [0]
DTB_SZ          [406880]
OS_VERSION      [12.0.0]
OS_PATCH_LEVEL  [2022-07]
PAGESIZE        [4096]
NAME            []
CMDLINE         [androidboot.hardware=qcom androidboot.console=ttyMSM0 androidboot.memcg=1 lpm_levels.sleep_disabled=1 video=vfb:640x400,bpp=32,memsize=3072000 msm_rtb.filter=0x237 service_locator.enable=1 androidboot.usbcontroller=a600000.dwc3 swiotlb=2048 cgroup.memory=nokmem,nosocket loop.max_part=7 buildvariant=user]
CHECKSUM        [715cad56072bb5966ea5f6e4ceab503fd9307ada000000000000000000000000]
- Flashing new boot image
RULESDIR=/dev/or1OJ5/.magisk/mirror/./metadata/magisk
HAL Version: android.hardware.boot@1.1::IBootControl
***************************************
 Next reboot will boot to second slot!
***************************************
- All done!

→ Reboot


Version Details:

The L behind 12 is not shown, but I assume this is the case for all of you.

:partying_face:

I’m wondering what will happen, when I disable this.
How will it behave? Will there be an additional dialog which asked to install?

I will also check the issue @Singulus created about this.
Potentially the answer will be. “You should not root! ^^”

1 Like

@hirnsushi Is there any way to force an update from beta to stable? I really wonder, why I’m not offered the stable 3.8.0. You were on beta, too if I remember correctly.