WANTED: Developers to work on the /e/ easy installer

/e/ has released a graphical installer: The /e/OS Installer arrives!

At the moment it supports a handful of Samsung devices and runs as Snap package on Linux.

Now it’s up to the community to add more devices and support for Windows/Mac.
/e/ OS “easy” installer: how to help it support multiple devices!
/e/ OS “easy” installer: how to help packaging it to MacOS and Windows

These are rather general discussion topics. I have started one explicitly for developing the FP3 support
/e/ OS “easy” installer: development thread about adding new devices

So if anyone is willing to spend some time to get the FP3 supported (or work on Win/Mac support), head over there to help :wink:

10 Likes

Small progress :slight_smile:

One prerequisite for Windows support has been done. Improvements on the script files running the low-level commands like adb and fastboot are under way. And there are some ideas making the development process more easy for starters.

Looking at the concrete steps to do I think it would also be good to have someone good at graphics programs to provide instructional images like how to enter fastboot mode etc.

4 Likes

Today I pushed my work-in-progress for the FP3 to the /e/ gitlab instance.

Basically one has to do the following things

  • create two config files (YAML format)
    • one to call the actual flashing scripts with the right parameters
    • a second one to customize the screens with instructions and error messages matching the steps in the first file
  • add scripts to do the actual flashing if necessary

I’ve done that and tested the flashing scripts manually. Now I’m in the process of testing them as part of the installer.

At the moment I’m faced with one problem:
The currently supported Samsung models are flashed by a combination of download and recovery mode, but for the FP3 it’s done in fastboot mode all the time.
That means for now the step to flash the partitions starts too soon. It checks that the device is in fastboot mode, but it is always in fastboot mode after the OEM unlock step, even if the user has not confirmed the unlocking yet. That way the installer already starts flashing while the bootloader is still locked.

Two possible solutions come to mind

  • force the user to click ‘continue’ in the UI instead of continuing as soon as the correct mode is found
  • make the second time the phone is checked for fastboot mode also wait until the state of the bootloader is ‘unlocked’

I’ll keep a list of detailed todos at

4 Likes

Hi Ingo, while I myself am useless for contributing to this work here, let me just say that I very much like how you are helping with making it easier to install an alternative OS with less Google baggage. Just wanted to clarify you’re not posting into a nirvana here. :slight_smile:

6 Likes

BTW, I solved my problem by going for the second option.

And while testing the installer I found a few things here and there which are also fixed now.

In fact I was able to run the installer from my IDE and successfully flash the FP3.
On the first boot after relocking the bootloader I shortly saw the LOS recovery and another reboot.
So at the moment I’m not 100% sure the flashing was successful, because on the one hand /e/ boots, but then I already had it installed before and I haven’t checked if it not just booted the other slot already containing /e/ as well.

I should probably (learn to) reflash stock ROM and really try from scratch.

6 Likes

First working alpha (from sources, no binaries yet) available :slight_smile:

In order to not write it all twice: details at https://community.e.foundation/t/e-os-easy-installer-development-thread-about-adding-new-devices/15461/44?u=ingo_fp_angel

5 Likes

I’m somewhat stuck because of the unlock code mentioned in https://support.fairphone.com/hc/en-us/articles/360041655711-Unlock-the-bootloader-of-your-Fairphone-3

I’m one of the people who didn’t need that code, so the current version of the /e/ installer is not able to install on FP3s where this unlock code is needed.

Is there anybody who had to enter the unlock code on their FP3? I’m trying to find a way to determine if an FP3 needs the code or not.
Maybe the output of the following command would be help, but I need someone to run it on “the other type of FP3”:

fastboot flashing get_unlock_ability

For me it’s just this in locked state:

$ fastboot flashing get_unlock_ability
             (bootloader)         get_unlock_ability: 0

As requested this is my result upon DEVICE STATE - locked:
iMac:~ adrian$ fastboot flashing get_unlock_ability
(bootloader) get_unlock_ability: 1
OKAY [ 0.014s]
Finished. Total time: 0.015s

Thanks. It looks like it just shows if unlock is enabled or not. No hint if a code is needed or not.

Just a small heads up: I hope the FP3 support will soon be added to the /e/ easy installer: https://gitlab.e.foundation/e/tools/easy-installer/-/merge_requests/59

And while the installer at the moment only is tested and packaged for linux, today I integrated the two work-in-progress (WIP) branches of my FP3 and the windows support done by /e/ to check that flashing the FP3 will also work with windows. And in fact I was able to flash my FP3 on windows, too, with the WIP version of the installer :slight_smile:

8 Likes

How are you actually testing the installer? Do you have a 2nd FP3 for that?

Yes, exactly, I’m not doing these kinds of experiments with my daily driver.

And strictly speaking I’m not testing my changes as an end user would do. The official installer is provided as a snap package. But I don’t know how to create those. The build tools can automatically create a ZIP file that contains all binaries, so I’m using that.
Which could mean that there are still obstacles while creating/using the snap. But as I understood is something the /e/ team would handle if it came up.

Ok, got it. Just curious: Did they provide that 2nd phone?

No, I bought it myself. For the purpose of (beta) testing things (like getting new custom ROMs to support the FP3 even if I can’t do the porting myself or official Android 10 support later).

5 Likes

Small update: I’ve added FP2 support to the installer. Let’s see if my changes get accepted.

More info (plus binaries download link) at https://community.e.foundation/t/e-os-easy-installer-development-thread-about-adding-new-devices/15461/71?u=ingo_fp_angel

It would be nice if someone could test and report back. I’m especially interested if the detection of the phone works properly. The embedded adb seems to take some time for the adb devices -l step that doesn’t happen with the platform tools installed locally on my computer.

5 Likes

As the Easy Installer now seems to work with the FP3 as well, I wonder whether it also provides the unlocking of the bootloader or if that needs to be done on the FP3 before running the Easy Installer?

I was offline for a while but the /e/ devs continued working on the FP3 support.
I had a quick glance at the changes they did while I was away and it seems they’ve added a step that points to the official unlock instructions on the FP homepage.
But I’m not sure if they’re finished.

3 Likes

I actually tried the Easy Installer (via Windows 10) on the FP3 last night. Unfortunately, while it correctly identified the device as an FP3, it would regard it as “not supported” by /e/OS both when Fairphone OS Android 9 (A.0120) was installed on it as well as when Fairphone OS Android 10 (A.00045) was installed. I had previously succeeded to install /e/OS – using the step-by-step instructions – on the FP3 even when the latest Fairphone OS Android 10 was installed right before.

3 Likes

There seems to be a problem with the /e/ documentation (i.e. the device page): the work on the FP3 is not yet finished.
On the installer page https://doc.e.foundation/easy-installer you can actually not see the FP3 yet.

4 Likes

Thanks for the quick clarification :+1: